PasDoc » ReleaseMaking
Release making process:
Change version number
Change version of all packages in pasdoc/source/packages/ dir. Right now this means changing
all Delphi packages
change VERSION in pasdoc/Makefile
change PASDOC_VERSION and PASDOC_DATE in pasdoc/source/components/PasDoc_Versions.pas
Make sure you have nice entry in https://github.com/pasdoc/pasdoc/blob/master/ChangeLog file in pasdoc sources.
We try to write the ChangeLog entry while developing PasDoc (each time someone does something significant, it’s immediately added to the ChangeLog). So at this point, mainly review and finalize (write new verion number and release date) ChangeLog entry.
Remove from the documentation text
Note that this feature is not available in latest released pasdoc version, x.y.z. You must download and compile pasdoc yourself or use DevelopmentSnapshots to use this feature.
(where x.y.z is version number of previous release) placed at the beginning of some pages. This is easily done by doing a full-text search in the wiki for the phrase Note that this feature is not available in latest released pasdoc version. (For GitHub wiki, you can clone it and then just grep locally.)
Note: This step is in practice automated now, using Castle Game Engine Jenkins infrastructure to automatically test and build PasDoc. The commands performed by Jenkins are configured in
Jenkinsfile in the PasDoc repository.
Make sure you have the latest stable FPC and Lazarus versions.
Run all the tests by
There are various comments inside
tests/run_all_tests.shabout what is really happening. It runs various other tests we have prepared, it even compares the output with some "designated correct" output.
To be sure, you should run these tests on all targets.
To build for the current platform (OS and architecture) call this:
make clean build-fpc-default
Note that it’s important to call
build-…, otherwise you risk that some units were left as compiled with debug options.
To build for an indicated platform:
make clean build-fpc-<os/arch>
To build for indicated platform and package to zip/tar.gz (this will call
clean build-fpc-<os/arch>as first steps):
make dist-…will automatically compile and include
lazbuildto compile Lazarus package and project in batch mode). But you can also compile it manually:
lazbuild source/packages/lazarus/pasdoc_package.lpk lazbuild source/gui/pasdoc_gui.lpi
For basic test of pasdoc_gui, open the project with pasdoc’s autodoc source/autodoc/autodoc.pds and hit "Generate".
It’s a good idea to upload PasDocAutoDoc at this time, like this:
cd pasdoc/source/autodoc/ make clean public upload cd ../../../pasdoc.github.io/ git commit -m "Updated autodoc" git push
Submit news item PasDoc x.y.z released
Announce new release on http://freshcode.club/projects/pasdoc.
Announce new release on Lazarus forum.
Send an update to FSF directory.
Prepare for next release: ChangeLog.md file should start with line
[Next release -- release date and new version number unknown yet...]
Really, really large and significant improvements may be signalled by changing the project’s description: