A library used for teaching computer science in the ISC degree programme, notably for the course 101.1 Imperative programming.
The documentation is available here. It is automatically built and published each time a new version tag is added to the repo.
This library has been developed orginally by P.-A. Mudry for the PImp
and inf1
courses given at the School of engineering HES-SO Valais//Wallis.
For releasing a new version, once everything has been tested, locally run
- UNIX-like (Linux, MacOS X, ...) :
./gradlew build
- Windows :
gradlew.bat build
results :
File | Description |
---|---|
build/fungraphics-dev.jar |
The latest build of the library, constant name, useful for testing. |
build/libs/fungraphics-VERSION.jar |
The same file with a versioned name. |
git commit
git tag -a MAJOR.MINOR.SUB -m "tag vMAJOR.MINOR.SUB"
git push origin MAJOR.MINOR.SUB
- This commits everyhing and tags it adequately.
- When this has been done, you can then build the corresponding
jar
file with./gradlew build
for having the correct version number built by Maven. You can then draft a new release and upload the correspondingjar
file from above in GitHub releases. Creating a tag triggers the documentation update. Voilà, you're all set !
The version numbering used in the file name and available using FunGraphics.version()
is
generated by inspecting the git state (see com.palantir.git-version
for details). However, the commit should be tagged accordingly.
Here is an example : 1.5.7-3-g2aabbbf.dirty
1.5.7
is the last tag-3-
we are 3 commits after the tagg2aabbbf
: git short hash.dirty
: some changes are not committed