Annif 0.56
This release introduces a new spaCy analyzer and takes care of many maintenance tasks. The CLI usage is improved by shortening the startup time of some commands, the Docker images are now easier to customize, there are improvements to the eval command, and minor bugs are fixed.
The spaCy analyzer enables support for some new languages and can improve subject suggestion results. The spaCy analyzer and the language-specific models need to be installed separately. The Docker image distributed via quay.io includes the spaCy analyzer and the English language model, but no other languages.
The maintenance tasks include upgrading many dependencies, notably Omikuji to v0.4. The Omikuji upgrade brings faster training and predictions as well as reduced memory usage, but the Annif projects using the omikuji backend need to be retrained. The projects using other backends should not require retraining, although warnings may be shown in some cases.
The support for Python 3.6 is removed, which is necessitated by the dependency upgrades.
This release also removes the Maui and vw_multi (Vowpal Wabbit) backends.
New features:
#374/#527/#563 spaCy analyzer
Improvements:
#514/#544 Optimize startup time using local & lazy imports
#548 Allow selecting installed optional dependencies in Docker build
#545/#558 Select metrics for eval command using an option
#546/#557 Output eval metrics as a JSON file compatible with DVC
Bug fixes:
#552/#554 LMDB can overflow (credit: @mo-fu)
#562 Add missing import of annif.eval in MLLM backend
Maintenance:
#549 Update dependencies for v0.56
#550 Drop Python 3.6 support
#541 Remove Maui and Vowpal Wabbit multi backends
#551 Remove swagger-tester dependency
#542/#555 Add CITATION.cff file
#553 Update Scrutinizer config
#561 Set a 10 minute timeout for GitHub Actions CI jobs
#565 Avoid coverage 6.3 as it causes some tests to hang