Speller release procedure
- Create a branch from the codebase you want to use after testing the codebase
- … or add bug fixes to an existing release branch
- build and upload the speller
Build a bug fix release
- check out the branch for which you want to release a bug fix, e.g.:
https://gtsvn.uit.no/langtech/branches/sma-speller/4.0 sma-speller-4.0 - cd into the branch, then
giella-core ./autogen.sh && ./configureexport GTCORE=pwd`` - to set the branch-specificgiella-coreas the Giella core to usecd ../$GIELLALANG/./autogen.sh && ./configure- Remember proper speller release configurations! Will vary a bit from language to language, but typically something like:
./configure --without-xfst --with-hfst --enable-spellers --disable-syntax --disable-transcriptors --disable-analysers --disable-generators --enable-alignment
Merge your changes as needed, e.g. to merge a single file, do as follows:
svn merge \
^/trunk/langs/smj/am-shared/tools-spellcheckers-fstbased-desktop-hfst_prods_n_upload-dir-include.am \
am-shared/tools-spellcheckers-fstbased-hfst_prods_n_upload-dir-include.am
In case you get conflicts, review and resolve them.
You can also specify the revisions you want to merge, to pick only the changes you are interested in:
svn merge --revision 126367:128639 \
^/trunk/langs/smj/am-shared/tools-spellcheckers-fstbased-desktop-hfst-dir-include.am \
am-shared/tools-spellcheckers-fstbased-hfst-dir-include.am
Then build and test the spellers:
time make -j- test etc. (see next section)
- if everything is ok, upload:
cd tools/spellcheckers/fstbased/[desktop/]hfst/; make upload
You can also upload just some of the packages, if the update is only relevant for a subset:
make [uploadoxt | uploadxpi | uploadzip ]( uploadzhfst)
Release
To finish the release:
- create a new tag for the release
- update version info page
- add note to main speller page about the new release, check that the documentation is up-to-date
- Update web site
- announce the release on FB, G+, e-mail
Testing
- technical testing:
- download the spellers, install them and use them on some document
- run some basic command line spelling process, check that the output is ok
- linguistic testing:
- forthcoming, but involves several larger tasks to ensure we have no regressions and decent performance
- only required if there have been linguistic changes (ie technical bug fixes usually do not require this type of testing)