Michal Čihař - Blog Archives for phpMyAdmin

Weekly phpMyAdmin contributions 2016-W02

Last week was mostly focused on refactoring. I've completely rewritten user interface language selection and related metadata handling. The code is object based and fully covered by testsuite, what was impossible with previous one.

Besides that, there was usual amount of bug fixes and few improvements to the phpMyAdmin container for Docker.

All handled issues:

Weekly phpMyAdmin contributions 2016-W01

Going back to real weekly report, this time covering first week of 2016.

The biggest task was focused on codebase cleanup. As Microsoft is ending support for old Internet Explorer version, we've decided to do same thing for next major release. This allowed us to remove some compatibility code and also upgrade jQuery to 2.x branch, which removes support for older browsers as well.

To continue in the cleanup tasks, I've revisited most of array iterating places and removed not needed reset() calls or generally cleanup up related code.

Besides working directly on the code, I've improved our infrastructure a bit as well and we now have developer documentation online at https://develdocs.phpmyadmin.net/. It is generated using phpdox, but suggestions to improve it are welcome.

All handled issues:

Weekly phpMyAdmin contributions 2015-W52

Okay, this report is not weekly and is a bit late, but anyway here comes report covering last two weeks in 2015.

As you might expect there were some days off, but still quite some work has been done. I've focused on encoding conversions and usage of mb_* functions. One of results was cleanup PR and some opened questions. The PR is already merged meanwhile and we will probably make again the mbstring dependency options. Rest was pretty much just bug fixing.

Fixed issues:

Going to FOSDEM

It has become almost tradition for me, so yes, I'm attending FOSDEM 2016. It's probably the best conference in Europe to meet other free software guys and that was always motivation for me to come - to see people I meet on mailing lists for rest of the year.

This time it will be slightly different for me - I will be giving talk there for first time. Originally I wanted to do lightning talk only, but in the end I got persuaded and it's full length talk now. It will be in the Coding for Language Communities devroom and you might guess from the devroom topic that it will be about Weblate.

Weekly phpMyAdmin contributions 2015-W51

Again one week has passed and there has been some progress on phpMyAdmin.

This week the focus was on code cleanup and issue fixing. I've identified several pieces of dead code and removed that from our code base (the biggest removal being no longer used PMA_String class). The codebase is quite old and sometimes it's not easy to identify code which is not really being used, as it still might be referenced from some locations, but without actually invoking it.

On the issue fixing side, I'm really happy from improving user experience with fields marked as binary - so far phpMyAdmin has displayed them as hexadecimal dump in all cases. Now it will display them as text as long as the content is valid utf-8.

Bugs fixed:

PS: I will most likely skip report next week due to Christmas.

Weekly phpMyAdmin contributions 2015-W50

It has been already one week since last report and here comes next one. This week was half focused on fixing issues with Docker container for phpMyAdmin and on code cleanups.

The Docker container got support for more options, making it better suited for various use cases. I'm still thinking whether using PHP's built in server here is a good idea or we should switch to something like nginx + PHP FPM, what would make the container bigger, but it would perform better.

On the code cleanup and issues side, I started to work on two issues 11741 and 11731, which both pointed me to quite some code which could be removed or improved. Many of that was to support older PHP versions, which we no longer support. Anyway the work here is still in progress and both issues will take some time to resolve.

Weekly phpMyAdmin contributions 2015-W49

As announced earlier, I will try to publish weekly reports on contributing to the phpMyAdmin. Here comes the first one.

Last week I've focused on some pain points with deploying phpMyAdmin and improved these a bit. The installation using PHP Composer is now documented. It's far from being perfect (you have to add our repository), but it seems to work fine.

What was more challenging for me is Docker support. I've never really used it so far, so I had to learn some things about the filesystem layering (to avoid too big image), but now it's there. You can get the sources from GitHub, it's available on Docker Hub and of course it is covered by our documentation.

Bugs fixed:

Supporting Software Freedom Conservancy

Last week the Software Freedom Conservancy has launched fundraiser to be able to continue operation under new circumstances, where some sponsors left them after GPL enforcement activities.

I think Conservancy does quite a lot for free software ecosystem and GPL enforcement is something what has to be done, if we want to protect free software world. That's reason, why I've decided to become their supporter:

Become a Conservancy Supporter!

Time for change

It has been seven years since I've joined SUSE (for second time, but that's different story). As everything has to come to the end, I've decided to make a change in my life and leave safety net of being employed and go for new experience with freelancer life.

This will give me more time to spend on free software projects where I'm involved. Of course I need to earn some money to live, so many decisions about where to spend my time will be backed by money...

First of all I will work on phpMyAdmin, where I was chosen as a contractor (of two for this year). This will be half time job for me and you will see weekly reports in my blog, similar to what Madhura is doing.

Second priority will be Weblate, especially the hosting solution. I believe that this is something what can work quite well in the long term, but the tool needs some development to make it as great as I would like to have it. If you want me to extend hosting for free software projects, you can do it by money :-).

And nobody knows what projects come next. There is some work to be done on Gammu and Wammu, but given that I don't have any recent device to use it, it's sometimes hard to fix the bugs there. Of course this can change if I get some money to work on that.

PS: It's not that SUSE would be bad place to work. It's actually pretty great if you're looking for work with free software. You work there on free software, with great people and you get quite some freedom. As bonus once or twice in a year, there is Hackweek which you can spend on anything. And of course they have lot of open positions :-).

Weblate 2.4

Weblate 2.4 has been released today. It comes with extended support for various file formats, extended hook scripts, better keyboard shortcuts and dozen of bug fixes.

Full list of changes for 2.4:

  • Improved support for PHP files.
  • Ability to add ACL to anonymous user.
  • Improved configurability of import_project command.
  • Added CSV dump of history.
  • Avoid copy/paste errors with whitespace chars.
  • Added support for Bitbucket webhooks.
  • Tigher control on fuzzy strings on translation upload.
  • Several URLs have changed, you might have to update your bookmarks.
  • Hook scripts are executed with VCS root as current directory.
  • Hook scripts are executed with environment variables descriping current component.
  • Add management command to optimize fulltext index.
  • Added support for error reporting to Rollbar.
  • Projects now can have multiple owners.
  • Project owners can manage themselves.
  • Added support for javascript-format used in Gettext PO.
  • Support for adding new translations in XLIFF.
  • Improved file format autodetection.
  • Extended keyboard shortcuts.
  • Improved dictionary matching for several languages.
  • Improved layout of most of pages.
  • Support for adding words to dictionary while translating.
  • Added support for filtering languages to be managed by Weblate.
  • Added support for translating and importing CSV files.
  • Rewritten handling of static files.
  • Direct login/registration links to third party service if that's the only one.
  • Commit pending changes on account removal.
  • Add management command to change site name.
  • Add option to confiugure default committer.
  • Add hook after adding new translation.
  • Add option to specify multiple files to add to commit.

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

You can find more information about Weblate on http://weblate.org, 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.

Weblate is also being used https://hosted.weblate.org/ as official translating service for phpMyAdmin, Gammu, Weblate itself and other projects.

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.

Further development of Weblate would not be possible without people providing donations, thanks to everybody who have helped so far!

PS: 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.