Michal Čihař - Blog Archives for English

Weblate 3.0

Weblate 3.0 has been released today. It contains brand new access control module and 61 fixed isssues.

Full list of changes:

  • Rewritten access control.
  • Several code cleanups that lead to moved and renamed modules.
  • New addon for automatic component discovery.
  • The import_project management command has now slightly different parameters.
  • Added basic support for Windows RC files.
  • New addon to store contributor names in PO file headers.
  • The per component hook scripts are removed, use addons instead.
  • Add support for collecting contributor agreements.
  • Access control changes are now tracked in history.
  • New addon to ensure all components in a project have same translations.
  • Support for more variables in commit message templates.
  • Add support for providing additional textual context.

If you are upgrading from older version, please follow our upgrading instructions, the upgrade is more complex this time.

You can find more information about Weblate on https://weblate.org, the code is hosted on Github. If you are curious how it looks, you can try it out on demo server. Weblate is also being used on https://hosted.weblate.org/ as official translating service for phpMyAdmin, OsmAnd, Turris, FreedomBox, Weblate itself and many other projects.

Should you be looking for hosting of translations for your project, I'm happy to host them for you or help with setting it up on your infrastructure.

Further development of Weblate would not be possible without people providing donations, thanks to everybody who have helped so far! The roadmap for next release is just being prepared, you can influence this by expressing support for individual issues either by comments or by providing bounty for them.

Improved Docker container for Weblate

The Docker container for Weblate got several improvements in past days and if you're using it, it might be worth reviewing your setup.

It has been upgraded to Python 3 and Django 2. This should cause no problems as Weblate itself supports both for quite some time, but if you were extending Weblate somehow, you might have to update these extensions to make them compatible.

The default cache backend is now redis. It will be required in future for some features, so you will have to switch at some point anyway. The memcached support is still there in case you want to stick with current setup.

Cron jobs have been integrated into the main container. So you no longer need to trigger them externally. This save quite some pain with offloaded indexing and another features which rely on regular execution.

Another important change is in logging - all logs are now go to the standard output, so you will get them by docker-compose logs and other Docker management commands. This will make debugging easier.

New projects on Hosted Weblate

Hosted Weblate provides also free hosting for free software projects. The hosting requests queue has grown too long and waited for more than month, so it's time to process it and include new projects. I hope that gives you have good motivation to spend Christmas break by translating free software.

This time, the newly hosted projects include:

  • ASS Danmaku - firefox extension for downloading danmaku
  • KeePass DX - KeePass implementation for Android
  • Liberapay Everywhere - the official Liberapay browser extension
  • Offline QR Code Generator - browser add-on allowing you to quickly generate a QR code
  • Guake - drop-down terminal for GNOME
  • Planner - Project and Task manager designed for elementary OS
  • EasySSH - The SSH connection manager to make your life easier.
  • Misskey - A Twitter-like SNS
  • Starke Verben - Android Application to learn your strong verbs
  • FMIT - Free Music Instrument Tuner
  • Crappy Firetitle - A firefox extension allowing customisation of windows' title
  • Piano Booster - a MIDI file player that displays the musical notes AND teaches you how to play the piano

If you want to support this effort, please donate to Weblate, especially recurring donations are welcome to make this service alive. You can do that easily on Liberapay or Bountysource.

What's being cooked for Weblate 3.0

Next release on Weblate roadmap is called 3.0 and will bring some important changes. Some of these are already present in the Git repository and deployed on Hosted Weblate, but more of that will follow.

Component discovery

Component discovery is useful feature if you have several translation components in one repository. Previously import_project management command was the only way to help you, however it had to be executed manually on any change. Now you can use Component discovery addon which does quite similar thing, however is triggered on VCS update, so it can be used to follow structure of your project without any manual interaction. This feature is already available in Git and on Hosted Weblate, though you have to ask for initial setup there.

Code cleanups

Over the years (first Weblate release was more than six years ago) the code structure is far from optimal. There are several code cleanups scheduled and some of them are already present in Git repository. This will make Weblate easier to maintain and extend (eg. with third party file format drivers).

User management

Since the beginning Weblate has relied on user management and permissions as provided by Django. This is really not a good fit for language / project matrix permissions which most people need so we've come with Group ACL to extend this. This worked quite well for some use cases, but it turned out to be problematic for others. It is also quite hard to setup properly. For Weblate 3.0 this will be dropped and replaced by access control which fits more use cases. This is still being finalized in our issue tracker, so if you have any comments to this, please share them.

Migration path

Due to above mentioned massive changes, migrations across 3.0 will not be supported. You will always have to upgrade to 3.0 first and then upgrade to further versions. The code cleanups will also lead to some changes in the configuration, so take care when upgrading and follow upgrading instructions.

New projects on Hosted Weblate

Hosted Weblate provides also free hosting for free software projects. The hosting requests queue has grown too long and waited for more than month, so it's time to process it and include new projects. I hope that gives you have good motivation to spend Christmas break by translating free software.

This time, the newly hosted projects include:

If you want to support this effort, please donate to Weblate, especially recurring donations are welcome to make this service alive. You can do that easily on Liberapay or Bountysource.

Weblate 2.20

Weblate 2.20 has been released today. There are several performance improvements, new features and bug fixes.

Full list of changes:

  • Improved speed of cloning subversion repositories.
  • Changed repository locking to use third party library.
  • Added support for downloading only strings needing action.
  • Added support for searching in several languages at once.
  • New addon to configure Gettext output wrapping.
  • New addon to configure JSON formatting.
  • Added support for authentication in API using RFC 6750 compatible Bearer authentication.
  • Added support for automatic translation using machine translation services.
  • Added support for HTML markup in whiteboard messages.
  • Added support for mass changing state of strings.
  • Translate-toolkit at least 2.3.0 is now required, older versions are no longer supported.
  • Added built in translation memory.
  • Added componentlists overview to dashboard and per component list overview pages.
  • Added support for DeepL machine translation service.
  • Machine translation results are now cached inside Weblate.
  • Added support for reordering commited changes.

If you are upgrading from older version, please follow our upgrading instructions.

You can find more information about Weblate on https://weblate.org, the code is hosted on Github. If you are curious how it looks, you can try it out on demo server. Weblate is also being used on https://hosted.weblate.org/ as official translating service for phpMyAdmin, OsmAnd, Turris, FreedomBox, Weblate itself and many other projects.

Should you be looking for hosting of translations for your project, I'm happy to host them for you or help with setting it up on your infrastructure.

Further development of Weblate would not be possible without people providing donations, thanks to everybody who have helped so far! The roadmap for next release is just being prepared, you can influence this by expressing support for individual issues either by comments or by providing bounty for them.

Weekly phpMyAdmin contributions 2018-W11

Last week was pretty quiet. The most interesting part was licensing issue with two factor authentication library we use. In the end the library was relicensed to MIT, what makes it compatible with pretty much anything.

I've spent some time on the Debian packages as well, I'm getting closer to make them work again, but there are still some issues to overcome.

Handled issues:

Weekly phpMyAdmin contributions 2018-W10

Last week was a bit quiet, I've spend some time on our infrastructure and doing reviews. There is still big pending task to update Debian packages and I will hopefully get to it this week.

Handled issues:

Weekly phpMyAdmin contributions 2018-W09

Last week I've continued on reviewing incoming pull requests and issues without coding much myself. It seems that amount of incoming issues is still quite big.

Handled issues:

Weekly phpMyAdmin contributions 2018-W08

Last week was mostly spent on reviewing pull requests. There is quite a lot them coming in and I always feel bad when we're not able to review incoming code in timely manner, but unfortunately it happens time to time.

Handled issues: