Skip to content

Scripts that enforce consistent configuration of projects maintained by Robert Važan.

License

Notifications You must be signed in to change notification settings

robertvazan/rvscaffold

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Robert Važan's Project Scaffolding

This is project scaffolding tool somewhat similar to pyscaffold, but it supports a range of programming languages and it implements Robert Važan's personal conventions and policies. It can be executed repeatedly to keep generated files up to date.

If you come across one of my repositories that have project files generated by this tool, just edit the generated files by hand like you would in any other project and I will update scaffolding configuration in repository's scripts/configure.py after merge.

Usage

The following are notes to myself. To use this tool, create scripts/configure.py in the repository that looks like this:

import rvscaffold as scaffold

class Project(scaffold.Java):
    def script_path_text(self): return __file__
    def repository_name(self): return 'sourceafis-java'
    def pretty_name(self): return 'SourceAFIS for Java'
    def pom_name(self): return 'SourceAFIS'

    def dependencies(self):
        yield from super().dependencies()
        yield self.use('com.machinezoo.fingerprintio:fingerprintio:1.3.0')
        yield self.use_fastutil()
        yield self.use_commons_io()

Project().generate()

See real examples for supported languages:

There are lots of options for all supported languages. See source code of this tool. In addition to options specified in configure.py, there should be a standalone file scripts/version.txt that contains only one line with project version.

To run configure.py, make sure that PYTHONPATH includes src directory in checked out rvscaffold. This tool is not currently available from PyPI.

About

Scripts that enforce consistent configuration of projects maintained by Robert Važan.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Languages