We are pleased to announce Kallithea 0.6.0, with as most important change the migration from Python 2 to Python 3.
In addition to migrating to Python 3, there has been a lot of (big) internal cleanup, improvements and fixes in several areas. Unavoidably, this also means a risk of having introduced new bugs or regressions.
Password hashing on Windows is now also done with
bcrypt like on Unix/Linux,
although the original
sha256 password hashes are still recognized.
Support for Mercurial 5.4 was added.
The Celery support code has been reworked to use version 4 instead of 3. Along
with that, the Celery configuration settings in the
.ini file have changed
The uWSGI configuration template has been tweaked.
Some internal caching functionality has been dropped. The caching was complex, had some overhead, and was not entirely reliable. Some performance benchmarks might have regressed, but overall performance should have improved in most real world setups with multiple worker processes and multiple repositories.
See 'Changes' below for a more detailed list of changes most relevant to users.
Upgrading from 0.5.x
Please refer to the upgrade instructions in the documentation for detailed steps: https://kallithea.readthedocs.io/en/stable/upgrade.html. Below are just some specific notes.
As mentioned in the upgrade instructions, generate a new configuration file and apply the necessary changes to fit your installation. There have been changes in the configuration file; starting from the old one would be a source of errors or confusion.
There are also some minor database migration steps.
Below are the most relevant changes between 0.5.2 and 0.6.0. Note that it is not a complete list: many changes are purely internal refactoring. Please refer to the source repository if you are interested in full details.
- better error logging for API usage errors - say which request failed to encode response cs
- also use safe password hashing on Windows using
- drop unused repo model cache cs
- drop problematic
sql_cache_shortbeaker cache and related code cs
- drop repository
long_term_filebeaker cache to store README and RSS cache on disk where it is reusable between processes - not in worker memory cs
- upgrade to Celery 4 cs
- fix logging from inside tasks cs
send_emailto work with JSON encoding (Issue #363) cs
- drop deprecated
- fix spelling of
config-create: show options used for generating
.ini, and list what alternative values are supported cs
- fix indexing of repos where last indexed revision has been stripped cs
Configuration file (ini)
- tweak template configuration for TurboGears2's handling of application errors cs
- drop AppEnlight from configuration template - it seems to be dead and disappeared cs
- uwsgi: slim down and tweak the default
[uwsgi]configuration section cs cs2
- uwsgi: drop unnecessary dependency of
httpmodule - just use
- uwsgi: clarify that
- better detection and logging of invalid configuration of 'issue patterns' cs cs2 cs3
- drop superfluous space in
UserGrouprelationship definition cs
- ssh: mention how to use multiple
- fix missing translation of titles and buttons cs
- fix page navigation/scrolling when toggling "Follow" status cs
- journal feed: don't include email in author name - avoid double data cs
- show toggleable "Follow" status in repo groups' repo list cs
- use fork icon for the fork option (Issue #356) cs
Version control systems support
- bump minimum Mercurial version to 5.1 cs
- support Mercurial 5.4 cs
- always show and run Mercurial hooks in alphabetical order (Issue #246) cs
- read everything from
hgrc, without config section whitelisting (Issue #246) cs
HGPLAINglobally to minimize potential impact from reading
- docs: fix
- i18n: update translations for French, German, Greek, Luxembourgish, Russian, Polish
- make error reporting by mail work with secure mail servers cs
- officially support Python 3 cs
- setup: various version bumps of external dependencies
- setup: install pip in virtualenv to make sure we have the latest version cs
- windows: fix import of posix-only
pwdmodule (Issue #367) cs
We would like to thank everyone that contributed to the Kallithea repository (directly or by updating translations in Weblate) since release 0.5.2 (the numbers are the amount of commits)...
339 Mads Kiilerich 23 Thomas De Schampheleire 3 Ross Thomas 3 J. Lavoie 2 Private 1 robertus 1 Dennis Fink 1 Asterios Dimitriou 1 Étienne Gilli
... as well as everyone contributing in other ways, e.g. by testing, reporting issues, discussing via mail or IRC, etc.