Michal Čihař - Blog Archives for SUSE

Weblate 1.6 in SUSE Studio

Finally, Weblate 1.6 is available as ready to use appliance in SUSE Studio.

This took quite long as openSUSE 12.3 does not work as expected inside SUSE Studio and I was too lazy to find all necessary tweaks earlier. The same problem actually prevented from Weblate 1.5 being there at all.

The biggest obstacle was MySQL setup - after enabling "Set up MySQL" in studio, you end up with MySQL database with empty mysql.users table, which obviously can not authenticate anybody. As I've found out, the only way around is manual setup.

Once this was figured out, the appliance only needed minor tweaking and is now ready to use in SUSE Gallery in all formats used for virtualization.

Weblate 1.5

Weblate 1.5 has been released today. It comes with lot of improvements, especially in performance, reporting and support for machine translations.

Full list of changes for 1.5:

  • Please check manual for upgrade instructions.
  • Added public user pages.
  • Better naming of plural forms.
  • Added support for TBX export of glossary.
  • Added support for Bitbucket notifications.
  • Activity charts are now available for each translation, language or user.
  • Extended options of import_project admin command.
  • Compatible with Django 1.5.
  • Avatars are now shown using libravatar.
  • Added possibility to pretty print JSON export.
  • Various performance improvements.
  • Indicate failing checks or fuzzy strings in progress bars for projects or languages as well.
  • Added support for custom pre-commit hooks and commiting additional files.
  • Rewritten search for better performance and user experience.
  • New interface for machine translations.
  • Added support for monolingual po files.
  • Extend amount of cached metadata to improve speed of various searches.
  • Now shows word counts as well.

You can find more information about Weblate on it's website, the code is hosted on Github. If you are curious how it looks, you can try it out on demo server. You can login there with demo account using demo password or register your own user. Ready to run appliances will be soon available in SUSE Studio Gallery.

Weblate is also being used https://l10n.cihar.com/ as official translating service for phpMyAdmin, Gammu, Weblate itself and others.

If you are free software project which would like to use Weblate, I'm happy to help you with set up or even host Weblate for you.

Hackweek 9 is over

Hackweek 9 is over and it's time to share what I've done on Weblate during that.

I think everything went quite well and Weblate is now ready for 1.5 release. I'm slowly deploying it on my installations (unfortunately this release migration will need some noticeable downtime for bigger installations) and everything seems to work fine so far. I believe this is possible thanks to massive test coverage - all important code is covered by testcases.

So what you can expect in 1.5 release? The most visible change is probably new machine translation support, providing support for way more backends and allow you to plug in own services as well. The other changes include word counting (what might give you more idea how much work is remaining) or fancy progress bars in all places (they used to be available for translations only).

From the other side, Weblate can now run custom scripts to pre-process translations before commit, what can be used for various things from generating byte compiled files to sorting or cleaning up the translation files.

Also Weblate should be now much faster - there were dozen of optimizations done, leading to much lower press on database server.

If you want to see more detailed work progress, check Hackweek project page or Weblate changelog.

PS: In case no problems appear, Weblate 1.5 should be released on Sunday.

Weblate and Hackweek 9

You might have already noticed that there is Hackweek 9 coming next week. At SUSE we will get pizzas, icecream and other nice stuff, but most importantly we can spend the week on hacking anything we want.

Same as last year, I want to spend most of my Hackweek on Weblate, nice crowdsourcing tool for translations. The major goal is to finish 1.5 release, what should not be that hard. The most challenging bits for new machine translation interface are already implemented, and the rest is pretty much only tweaking of existing code.

Another thing we want to explore is possibility of using Weblate for openSUSE translations. Currently they are mostly kept in SVN, what is blocker for using Weblate, but we will see what can be done there.

FOSDEM 2013 summary (Sunday)

FOSDEM 2013 is over and it's time to look what interesting I have seen there on Sunday.

Sunday was supposed to start for me with L20N, but it was postponed to 13:00 as the presenters weren't on time. I could have used one more hour of sleep, but at least I spent some time on coding.

Detect merge conflicts in realtime was quite interesting talk, though I was pretty surprised that the conflict detecting does not at all care about underlying version control system, but does purely file based guesses.

The Hardening MySQL talk pretty much described why security in MySQL sucks and what you should do to make it secure. Quite good introduction to the topic, but not much new information for me.

Introduction of Firefox OS, was quite nice demo showing they have something working, though it had some problems with flaky network on FOSDEM. Looking forward to see phone being sold, though it will probably not be something I'd buy.

To add some fun, I've stayed on systemd, Two Years Later presentation, which gave some summary of what is currently in systemd and where it wants to go. Still it did not move systemd from category of "I don't care as long as it works".

Now followed delayed L20N talk - it showed new Mozilla's effort for localization. Which is quite powerful and has nice features, on the other side it put's quite more load to translators - now they would have to understand some basics of programming as well to be able to use the new features (or not so new ones as plurals). Their motivation is to remove localization effort from developers, but I'm not really convinced it will work nicely.

After some meetings and lunch, I went to LibreOffice: cleaning and re-factoring a giant code-base, which showed some challenges LibreOffice has to take and how they dealt with that. I think it's pretty great job done and I'm looking forward to new releases.

Being GNOME user, I could not skip Has the GNOME community gone crazy?. It of course tried to tell that they did not :-).

Last, but not least my friend Dieter from phpMyAdmin had talk Present and future of phpMyAdmin. He listed some of the new features, demoed 3.5 and 4.0 version (of course the demo of 4.0 version broke due to some caching). Even when the talk had quite unpleasant timing, it has attracted some people and they even asked few questions.

This years FOSDEM was again great and looking forward to be there next year.

FOSDEM 2013 summary (Saturday)

FOSDEM 2013 is over and it's time to look what interesting I have seen there on Saturday.

First of all the most important for me is to meet people. As usual, I came with SUSE folks, but it's not that unusual to meet people from company where you work :-). I've met some current and former phpMyAdmin developers and surprisingly I've met few Weblate users or people who consider using it on their project. This gave me some important feedback and one of first thing you will see in near future is remade Weblate website to give more information about some of it's unique features. As for the talks, I think I've managed to visit quite lot of them.

How we made the Jenkins community explained some ways Jenkins has used to build good community - mostly focused on extensibility of the code and having everything as an extension, but with some focus on social things as well (and important thing that with Git people are not that motivated to join the team).

Better software through user research was about various way to gather information of what your users hate on the software. It was pretty interesting, though many of that can not easily be used on small scale free software product.

OSS code goes in and never comes out talk focused about licensing issues of various software as a service platforms. As I've never used Amazon cloud or such, it was quite surprising how these behave in relation to GPL and actually made me thing more about AGPL and attend related panel discussion later.

An Integrated Localization Environment is Mozilla approach to online translation, quite different than anything we have before, but mostly for reasons which were explained later on Sunday talk on l20n. Maybe reverse ordering of these would make it easier to understand the motivation.

Scale your Jenkins build pipeline automatically to minimize test time was not that useful as I thought - increasing test speed by buying EC2 instances and pushing part of the work to them is not something what will help me in near future.

Trends in Open Source Security explained what is going on in distributions security, mostly focused on Redhat (but touching Debian as well). It has some interesting thoughts about sharing the information between vendors, so let's see if it will really work in future.

QML’s many faces showed some other ways to use QML besides using QtQuick. Some uses were quite interesting, though I'm not really fan of creating yet another buildsystem based on it.

Panel Discussion: GNU Affero General Public License, version 3 was last thing I've visited on Sunday and it was really interesting to listen all that opinions on AGPL. Still I was not confirmed to consider switching to this license.

Weblate 1.4

Weblate 1.4 has been released today. It comes with lot of improvements, especially in configurability, admin interface and usability.

Full list of changes for 1.4:

  • Fixed deleting of checks/comments on unit deletion.
  • Added option to disable automatic propagation of translations.
  • Added option to subscribe for merge failures.
  • Correctly import on projects which needs custom ttkit loader.
  • Added sitemaps to allow easier access by crawlers.
  • Provide direct links to string in notification emails or feeds.
  • Various improvements to admin interface.
  • Provide hints for production setup in admin interface.
  • Added per language widgets and engage page.
  • Improved translation locking handling.
  • Show code snippets for widgets in more variants.
  • Indicate failing checks or fuzzy strings in progressbars.
  • More options for formatting commit message.
  • Fixed error handling with machine translation services.
  • Improved automatic translation locking behaviour.
  • Support for showing changes from previous source string.
  • Added support for substring search.
  • Various quality checks improvements.
  • Support for per project ACL.
  • Basic unit tests coverage.

You can find more information about Weblate on it's website, the code is hosted on Github. If you are curious how it looks, you can try it out on demo server. You can login there with demo account using demo password or register your own user. Ready to run appliances will be soon available in SUSE Studio Gallery.

Weblate is also being used https://l10n.cihar.com/ as official translating service for phpMyAdmin, Gammu, Weblate itself and others.

If you are free software project which would like to use Weblate, I'm happy to help you with set up or even host Weblate for you (this will be decided case by case as my hosting space is limited).

Roadmap for Weblate 1.4 and 1.5

As usual, I've changed my plans for Weblate 1.4. Simply before I got to implementing features I wanted to have there, I've already implemented bunch of other things, which are worth releasing.

So my plan is to release Weblate 1.4 next week with current feature set (you can check list of fixed issues) and focus on 1.5 development then.

Some major features which will be available in Weblate 1.4:

  • Added various configuration options to allow more customization.
  • Added sitemaps to allow easier access by crawlers.
  • Improved notification emails (added links and HTML version with colored diff).
  • Provide hints for production setup in admin interface.
  • Indicate failing checks or fuzzy strings in progressbars.
  • Support for per project ACL.

As a clear consequence, some of the big features were moved to 1.5, but I've added also some other things I'd like to implement, see 1.5 milestone on GitHub.

Going to FOSDEM 2013

I've just confirmed my flight and hotel bookings for FOSDEM 2013, so I'm looking to meet all great people there again.

This year my schedule is not that packed as I have no talks (Weblate lightning talk was not accepted) and also there will be no big phpMyAdmin team meeting, so get in touch if you want to discuss anything with me.

As most of the rooms still don't have a schedule, I can't give you hint where I will be present, but I definitely won't miss Friday beer event and Dieter's talk about phpMyAdmin in MySQL room. The rest pretty much depends on who I will meet :-).