September 27, 2016

Michal Čihař

Weekly phpMyAdmin contributions 2016-W38

Last week was again mostly spent on reviewing pull requests and screening issues. This little housecleaning work is sometimes surprisingly time consuming :-).

Besides that I've again reviewed potential security weaknesses in our process reported by Emanuel Bronshtein. This lead to various hardenings in our Docker container, Debian packages or our website. There are still places to improve, but we're getting better with every commit.

Additionally there was release for motranslator and SQL parser, both of these are now properly listed on GitHub releases page.

Handled issues:

Filed under: English phpMyAdmin | 0 comments

by Michal Čihař (michal@cihar.com) at September 27, 2016 10:00 AM

September 26, 2016

Deven Bansod

Weekly phpMyAdmin contributions 2016 – Week4

 

Last week, the focus of the work was again divided between the bugs in the main repository and the SQL parser.

Some bugs with Export of view definitions was fixed and later was found to be actually a bug in parser’s building of CREATE statement. We also moved to disabling the Drag-and-drop import on the Insert Rows page if the page has a file type input so that the users could use Chrome’s default drag-drop feature which allows them to drop files directly on the input.

Some refactoring work was also undertaken which mainly was regarding removal of unnecessary embedding token parameter and its value by default in the links in navigation. This was no longer needed since the team had previously decided to check for the token in only POST requests.

Next week would mostly again focus on SQL parser’s bugs which have been tracked in the main repository and I may also try and fix some long outstanding bugs in the main repository.

Handled issues:
* #12587 Enum Types are replaced with 0
* #12461 Can’t Execute SQL With Sub-Query Due To “LIMIT 0,25” Inserted At Wrong Place
* #12577 ‘Forgets’ current table after a custom SQL execution
* #12321 Wrong query in errormessage
* #12382 Bug in zoom search
* #12575 New index Confirm adds whitespace around the field name
* #12242 Edit routine detail dialog does not fill “Return length” field in mysql functions
* #12572 $cfg[‘AllowArbitraryServer’] = true has no effect
* #12298 View definitions not exported
* #12300 Export selective tables by-default dumps Events also
* #12487 Drag and drop import prevents file dropping to blob column file selector on the insert tab
* #12526 Remove ‘token’ parameter from Navigation links
* #12530 Function “Edit routine” crashes when the current user is not the definer, even if privileges are adequate
* #12554 Absence of scrolling makes it impossible to read longer text values in grid editing
* #12565 German Translation under Replication is wrong


Filed under: Contract Weekly Report, phpMyAdmin Tagged: Contract Developer, phpMyAdmin, Weekly Report

by Deven Bansod at September 26, 2016 07:04 AM

September 20, 2016

Michal Čihař

wlc 0.6

wlc 0.6, a command line utility for Weblate, has been just released. There have been some minor fixes, but the most important news is that Windows and OS X are now supported platforms as well.

Full list of changes:

  • Fixed error when invoked without command.
  • Tested on Windows and OS X (in addition to Linux).

wlc is built on API introduced in Weblate 2.6 and still being in development. Several commands from wlc will not work properly if executed against Weblate 2.6, first fully supported version is 2.7 (it is now running on both demo and hosting servers). You can usage examples in the wlc documentation.

Filed under: Debian English SUSE Weblate | 0 comments

by Michal Čihař (michal@cihar.com) at September 20, 2016 04:00 PM

Weekly phpMyAdmin contributions 2016-W37

Last week was heavily focused on reviewing incoming code, mostly on our SQL parser. Thanks to several contributions we have made it even better.

The SQL parser s releases now include list of changes, so you can easily see what has been changed. While touching the SQL parser code, I've added some missing bits in testsuite code coverage and we're now really close to 100%.

Another useful thing for our library users is API documentation which is now available at https://develdocs.phpmyadmin.net/. It covers all libraries we've recently released (motranslator, sql-parser and shapefile).

Handled issues:

Filed under: English phpMyAdmin | 0 comments

by Michal Čihař (michal@cihar.com) at September 20, 2016 12:00 PM

September 19, 2016

Deven Bansod

Weekly phpMyAdmin contributions 2016 – Week3

 

Like the previous two weeks, I focused on fixing issues with the SQL parser in the first part of the week, while the later part of the week was focused on bug-fixing in the phpMyAdmin repository.

Some PRs that I had made two weeks back in the SQL parser got merged last week after a few alterations. Michal realized there was a bug in parsing the syntax of INSERT INTO … SELECT … ON DUPLICATE KEY as the call to parse SELECT statement would not break on finding the ON DUPLICATE KEY keywords. A different condition check had to added for this special case in parsing of Select statement. Spatial extension support (for ex. POINT, GEOMETRY datatypes) was added to the SQL parser.

Some bugs related to bad export and bad SQL generated in copying the databases with Generated/Virtual columns were indirectly  related to the SQL parser and were fixed. There are some differences in MySQL and MariaDB regarding the implementation of virtual columns, but we chose an approach which would work fine with both the DBMSs.

Next week might be a little break from direct SQL parser’s issues and might focus on parser issues originating from the main repo along with other bugs that have not been attended in the main repository.

Handled issues:
* #12272 Adding a new row with default enum goes to no selection when you want to add more then 2 rows
* #12320 Copy a user does not copy user group
* #12221 Bad table export in case of generated columns
* #12518 Unable to copy database with virtual generated columns… / MySQL Error #3105
* #12558 Cannot redeclare pma_tableheader()
* #12473 Code can throw unhandled exception
* #12549 Action : copy table with new prefix doesn’t keep the auto increment value
* #11628 INSERT … ON DUPLICATE KEY
* #48 REPLACE INTO … SELECT … not implemented
* #78 INSERT … SELECT … ON DUPLICATE KEY UPDATE broken
* #59 Non-reserved keywords should be allowed as a field name
* #72 Query with keyword field name built wrong
* #73 INSERT … SELECT Syntax
* #50 Unrecognized keyword ON, DUPLICATE and KEY
* #74 SET NAMES … Syntax
* #51 SET statement not properly parsed
* #55 Missing spatial extension support


Filed under: Contract Weekly Report, phpMyAdmin Tagged: Contract Developer, phpMyAdmin, Weekly Report

by Deven Bansod at September 19, 2016 05:25 AM

September 13, 2016

Michal Čihař

Weekly phpMyAdmin contributions 2016-W36

by Michal Čihař (michal@cihar.com) at September 13, 2016 10:00 AM

September 12, 2016

Deven Bansod

Weekly phpMyAdmin contributions 2016 – Week2

Last week was a second in working towards my phpMyAdmin contract. It was mostly focused on fixing some issues with the SQL Parser. I also handled some bugs with the main repository which included #12545, which was actually fixed in SQL Parser’s repository as it was more of a parser issue in building of the CREATE statement.

Apart from the ones mentioned in the list below, I also worked on some other issues and have made the PRs #70, #71, #75 and #12544, #12548, which would fix a few more issues once merged.

Next week would have its focus divided on similar lines with major contributions towards the SQL Parser bug-fixing and some small fixes in the main repository as well.

Handled issues:
* #12551 Can’t set Decimal Places on Columns
* #12545 Partition export INNODB syntax error “MAXVALUEENGINE=,”
* #12546 can’t export all tables to .sql file
* #12531 Properly flag queries as DROP DATABASE
* #49 CREATE TABLE table_copy LIKE table;
* #53 ALTER TABLE table COMMENT=’Comment of table’;
* #10 ignore missed semicolons
* #65 Allow two indexes on same column
* #61 Add dependency on mbstring extension to composer file


Filed under: Contract Weekly Report, phpMyAdmin Tagged: Contract Developer, phpMyAdmin, Weekly Report

by Deven Bansod at September 12, 2016 04:21 AM

September 07, 2016

Michal Čihař

Improved Docker container for Weblate

In last days, the Weblate Docker container got several improvements to make it better fit for production setup. All changes are heavily based on pull request by Fred Cox.

What all does this change bring?

  • It now brings complete environment for Weblate including web server.
  • The preferred database engine is now PostgreSQL.
  • There is also memcached instance for better performance.
  • Much more things can be configured using environment variables (machine translation or social auth).

I think this makes Weblate deployment for you much simpler if you already use Docker. I think this can can be further extended to other services like Kubernetes, so patches are welcome :-).

Filed under: English Weblate | 0 comments

by Michal Čihař (michal@cihar.com) at September 07, 2016 04:00 AM

September 05, 2016

Michal Čihař

Enca 1.19

Last version of Enca has been released several months and now it's time for new release. There are various bug fixes which have been committed to the Git repository meanwhile.

If you don't know Enca, it is an Extremely Naive Charset Analyser. It detects character set and encoding of text files and can also convert them to other encodings using either a built-in converter or external libraries and tools like libiconv, librecode, or cstocs.

Full list of changes for 1.19 release:

  • fix possible memory leak
  • make utf-8 detection work even on one character

Still enca is in maintenance mode only and I have no intentions to write new features. However there is no limitation to other contributors, join the project at GitHub :-).

You can download from https://cihar.com/software/enca/.

Filed under: Enca English | 0 comments

by Michal Čihař (michal@cihar.com) at September 05, 2016 03:00 PM

Deven Bansod

Weekly phpMyAdmin contributions 2016 – Week1

This week (or rather a half-week since I started only on Thursday, 1st Sept) was the first as a part of my phpMyAdmin contractor position. This post describes the major contributions that I did over this week. I would be regularly posting (mostly on Mondays) about the work carried out as a part of the contract in the previous week.

Last week, I started out with some fixes in the main repository along with focusing on the SQL parser trying to understand the parser’s codebase as I was completely new to its development.

After the decision to not include the ‘Token’ parameter in the GET requests URLs was committed, some functionalities, which used AJAX requests, were broken as the token parameter was not passed in their POST request, leading to a ‘Token mismatch’ error. I fixed this by inspecting all the Ajax POST requests that the code makes and adding a ‘Token’ parameter, if it did not exist.

I worked on the SQL parser and tried to reproduce and fix some basic errors in parsing of statements. Since I was not very sure of the fixes, I have made a couple of PRs (#66 and #67) and I hope someone can help me by reviewing it before merging.

While trying to reproduce the issue related to incomplete flagging of DROP DATABASE statements in SQL parser, I realized that in fact the parser would identify those statements correctly but the flags wer not being used appropriately inside phpMyAdmin’s codebase. I have made a PR (#12532) to fix this as well.

Next week’s focus would be similar with divided focus on some bugs and refactoring issues from phpMyAdmin and on resolving some issues with the SQL parser. Hopefully more issues would be fixed once the PRs I have made are merged.

Handled issues:
* #12534 Option for the dropped column is not removed from ‘after_field’ select, after the column is dropped
* #12535 Decimals get removed when editing the field
* #12529 Error with ‘enum’ type fields
* #12523 Add ‘token’ Parameter in all POST requests (Fix ‘Token mismatch’ errors)
* #12474 Broken links in Setup forms Navigation
* #12494 Can’t add new user
* #12525 SQL Error while adding enum column
* #54 Properly flag queries as DROP DATABASE


Filed under: Contract Weekly Report, phpMyAdmin Tagged: Contract Developer, phpMyAdmin, Weekly Report

by Deven Bansod at September 05, 2016 09:05 AM

September 01, 2016

Deven Bansod

Accepted as phpMyAdmin Contract Developer!

I had taken a long break from posting, my last post being about my inclusion into the phpMyAdmin’s development team and its Project Leadership Committee (PLC).

I am writing this post to share a great news that I have been accepted for the position of Contract Developer at phpMyAdmin and would be starting the contract work from tomorrow i.e. September 1st, 2016.

The original notification that phpMyAdmin is looking to hire a contract developer for working on the project’s code was posted on June 9th, 2016. I had made an application for the position (I was temporarily removed from the phpmyadmin’s mail alias, so that the application process is completely fair for all applicants). I got a confirmation of my selection from Tony Sebro at Conservancy on June 15th.

The date of commencement of the contract is September 1st, 2016 and the contract spans for 1 year. My time would be divided amongst variety of tasks with major focus on bug-fixing and refactoring of the codebase, while I would occasionally deal with the security issues that are raised through our security team. I may also take up implementation of some small new features as and when the time permits. I would be posting weekly reports (as I did in my GSoC 2015) here on the blog describing my work during a particular week.

Madhura and Michal both have (Michal is currently working, too) previously worked as Contract developer’s at phpMyAdmin and they surely have set high standards of work. I would surely try to match their set standards.

I am excited and nervous to begin the journey. Wish me luck!🙂


Filed under: Contract Weekly Report, phpMyAdmin, Re-Start Tagged: Contract Developer, Excitement, phpMyAdmin

by Deven Bansod at September 01, 2016 05:10 AM

August 31, 2016

Michal Čihař

Weblate 2.8

Quite on schedule (just one day later), Weblate 2.7 is out today. This release brings Subversion support or improved zen mode.

Full list of changes:

  • Documentation improvements.
  • Translations.
  • Updated bundled javascript libraries.
  • Added list_translators management command.
  • Django 1.8 is no longer supported.
  • Fixed compatibility with Django 1.10.
  • Added Subversion support.
  • Separated XML validity check from XML mismatched tags.
  • Fixed API to honor HIDE_REPO_CREDENTIALS settings.
  • Show source change in zen mode.
  • Alt+PageUp/PageDown/Home/End now works in zen mode as well.
  • Add tooltip showing exact time of changes.
  • Add option to select filters and search from translation page.
  • Added UI for translation removal.
  • Improved behavior when inserting placeables.
  • Fixed auto locking issues in zen mode.

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. You can login there with demo account using demo password or register your own user. Weblate is also being used on https://hosted.weblate.org/ as official translating service for phpMyAdmin, OsmAnd, Aptoide, 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.

Filed under: Debian English Gammu phpMyAdmin SUSE Weblate | 0 comments

by Michal Čihař (michal@cihar.com) at August 31, 2016 09:30 AM

August 30, 2016

Michal Čihař

Weekly phpMyAdmin contributions 2016-W34

Last week was a bit calmer with bigger focus on bug fixing, so that phpMyAdmin 4.6.5 works better thatn 4.6.4, where we managed to screw up some functionality due to too strict hardening fixes.

This includes reporting of too short secret when one was autogenerated, broken browsing of mysql.user or mysql.db tables or breakage when editing ENUM fields. All these are now fixed in QA_4_6.

Another major topic last week was our Docker container, which got heavily improved. To name the most important thing it now uses proper web server (nginx) and PHP FPM instead of PHP built in server, which is not really suitable for production use.

Handled issues:

Filed under: English phpMyAdmin | 0 comments

by Michal Čihař (michal@cihar.com) at August 30, 2016 10:00 AM

August 29, 2016

Michal Čihař

motranslator 1.1

Four months after 1.0 release, motranslator 1.1 is out. If you happen to use it for untrusted data, this might be as well called security release, though this is still not good idea until we remove usage of eval() used to evaluate plural formula.

Full list of changes:

  • Improved handling of corrupted mo files
  • Minor performance improvements
  • Stricter validation of plural expression

The motranslator is a translation library used in current phpMyAdmin master (upcoming 4.7.0) with focus on speed and memory usage. It uses Gettext MO files to load the translations. It also comes with testsuite (100% coverage) and basic documentation.

Recommended way to install it is using composer from Packagist repository:

composer require phpmyadmin/motranslator

The Debian package will be available probably at point phpMyAdmin 4.7.0 will be out, but if you see need to have it earlier, just let me know.

Filed under: Debian English phpMyAdmin | 0 comments

by Michal Čihař (michal@cihar.com) at August 29, 2016 04:00 PM

Improving phpMyAdmin Docker container

Since I've created the phpMyAdmin container for Docker I've always felt strange about using PHP's built in web server there. It really made it poor choice for any production setup and probably was causing lot of problems users saw with this container. During the weekend, I've changed it to use more complex setup with Supervisor, nginx and PHP FPM.

As building this container is one of my first experiences with Docker (together with Weblate container), it was not as straightforward as I'd hope for, but in the end is seems to be working just fine. While touching the code, I've also improved testing of the Docker container to tests all supported setups and to better report in case of test fails.

The nice side effect of this is that the PHP code is no longer being executed under root in the container, so that should make it more sane for production use as well (honestly I never liked this approach that almost everything is executed as root in Docker containers).

Filed under: Debian English phpMyAdmin | 4 comments

by Michal Čihař (michal@cihar.com) at August 29, 2016 08:00 AM

August 26, 2016

Michal Čihař

CI coverage from Windows, Linux and OSX

Once I got CI working on multiple platforms the obvious next step was to be able to aggregate coverage reports across them. This should not be that hard, right? Well I've spent couple of hours on that during last few days.

On Linux and OSX it was pretty much straightforward. Both GCC and Clang do support coverage, so it's just matter of configuring them properly and collect the coverage reports. I've used own solution for that in past and that was really far from working well (somehow I never managed to get coverage fully uploaded to Codecov). Fortunately there exists CMake script called CMake-codecov which does all needed work and works out of the box on GCC and Clang (even on OSX). Well it works on Travis only once you update the compilers and install llvm-cov tool.

The Windows part on AppVeyor was much harder for me. This can be heavily accounted to lack of my experience with Windows and especially development on Windows in past ten years (probably even more). First challenge was to find something what can generate code coverage there.

After lot of googling I've settled down on OpenCppCoverage what seems to be the only free solution I was able to find. The good thing is that it can generate coverage in Cobertura format that Codecov undestands. There are also bad things that I've learned. First of all it's quite hard to integrate this with CTest. There is no support for wrapping test calls in custom commands, so I've misused the memory checks for that purpose. I've written small python script which pretends the valgrind interface and does call OpenCppCoverage in the background.

Now I had around 800 coverage files (one for each test case) and we need to deal with them somehow. The Codeconv command line client doesn't deal wit this out of the box so the obvious choice was to merge them before upload. There even seems to be script doing that, but unfortunately trying that on our coverage data make it nowhere near completion within hour, so that's not really good choice. Second thing I've tried was merging binary coverage in OpenCppCoverage and then exporting to Cobertura format. Obviously Gammu is special project as all I got from this attempt was crashing OpenCppCoverage (it did merge some of the coverages, but it failed in the end without indicating any error).

In the end I've settled down to uploading files in chunks to Codecov. This seems to work quite okay, though is a bit slow, mostly due to way how Codecov bash uploader prepares data to upload (but this will be hopefully fixed soon).

Anyway the goal has been reached, both Windows and Linux code shows in coverage reports.

Filed under: Debian English Gammu | 0 comments

by Michal Čihař (michal@cihar.com) at August 26, 2016 04:00 AM

August 24, 2016

Michal Čihař

Weekly phpMyAdmin contributions 2016-W33

Last week was finally a bit calmer on security issues side so I could look into other issues as well. I finally had time to review some of the pull requests and go through the newly opened issues, but still there is lot of work to do.

The biggest change was that we've launched new website. This was mostly finished some weeks ago, but now it is alive. Hopefully it looks better and cleaner as it was created with all current page content in mind and not continuously adding new things on the way. Anyway it feels a bit strange for me doing designer work when I'm not really good at it. Anyway this is probably fourth version of our website I've done...

One other thing worth mentioning is reintroduction of $cfg['PmaAbsoluteUri'] in upcoming 4.6.5 release. It turns out to be needed in some reverse proxy setups.

Handled issues:

Filed under: English phpMyAdmin | 0 comments

by Michal Čihař (michal@cihar.com) at August 24, 2016 10:00 AM

August 22, 2016

Michal Čihař

Continuous integration on multiple platforms

Over the weekend I've played with continuous integration for Gammu to make it run on more platforms. I had to remember many things from the Windows world on the way and the solution is not yet complete, but the basic build is working, the only problematic part are external dependencies.

First of all we already have Linux builds on Travis CI. These cover compilation with both GCC and Clang compilers, hopefully covering most of the possible problems.

Recently I've added OS X builds on Travis CI, what was pretty much painless and worked out of the box.

The next major architecture to support is Windows. Once I've discovered AppVeyor I thought it might be the way to go. The have free plans for open-source projects (though it has only one parallel build compared to four provided by Travis CI).

As our build system is cross platform based on CMake, it should work pretty much out of the box, right? Well almost, tweaking the basics took some time (unfortunately there is no CMake support on AppVeyor, so you have to script it a bit).

The most painful things on the way:

  • finding our correct way to invoke build and testsuite
  • our code was broken on Windows, making the testsuite to fail
  • how to work with power shell (no, I'm not going to like it)
  • how to download and install executable to PATH
  • test output integration with AppVeyor - done using XSLT transformation and uploading test results manually
  • 32-bit / 64-bit mess, CMake happily finds 32-bit libs during the 64-bit build and vice versa, what makes the build fail later when linking - fixed by trying if code can be built with given library
  • 64-bit code crashes in dummy driver, causing testsuite failures (this has to be something Windows specific as the code works fine on 64-bit Linux) - this seems to be caused by too big allocations on stack, moving them to heap will fix this

You can check our current appveyor.yml in case you're going to try something similar. Current build results are on AppVeyor.

As a nice side effect, we now have up to date Windows binaries for Gammu.

Filed under: Debian English Gammu | 0 comments

by Michal Čihař (michal@cihar.com) at August 22, 2016 10:00 AM

August 19, 2016

Michal Čihař

Wammu 0.42

Yesterday, I've released Wammu 0.42. There are no major updates, more likely it's usual localization and minor bugfixes release.

As usual up to date packages are now available in Debian sid, Gammu PPA for Ubuntu or openSUSE buildservice for various RPM based distros.

Want to support further Wammu development? Check our donation options or support Gammu team on BountySource Salt.

Filed under: Debian English Gammu | 0 comments

by Michal Čihař (michal@cihar.com) at August 19, 2016 04:00 AM

August 17, 2016

Michal Čihař

Weekly phpMyAdmin contributions 2016-W32

Tonight phpMyAdmin 4.0.10.17, 4.4.15.8, and 4.6.4 were released and you can probably see that there are quite some security issues fixed. Most of them are not really exploitable unless your PHP and webserver are poorly configured, but still it's good idea to upgrade.

If you are running Debian unstable, use our phpMyAdmin PPA for Ubuntu or use phpMyAdmin Docker image upgrading should be as simple as pulling new version.

Besides fixing security issues, we're generally hardening our infrastructure. I'm really grateful that Emanuel Bronshtein (@e3amn2l) is doing great review of all of our code and helps us in this area. This will really make our code and infrastructure much better.

Handled issues:

Filed under: Debian English phpMyAdmin | 0 comments

by Michal Čihař (michal@cihar.com) at August 17, 2016 10:00 AM

Revoking old PGP key

It has been already six years since I've moved to using RSA4096 PGP key. For various reasons, the old DSA key was still kept valid till today. This is no longer true and it has been revoked now.

The revoked key is DC3552E836E75604 and new one is 9C27B31342B7511D. In case you've signed the old one and not the new one (quite unlikely if you did not sign it more than six years ago), there has been migration document, where you can verify my new key being signed by the old one.

Filed under: Debian English | 0 comments

by Michal Čihař (michal@cihar.com) at August 17, 2016 08:00 AM

August 16, 2016

Michal Čihař

Gammu 1.37.4

It has been almost three months since last Gammu release and it's time to push fixes out to users. This time the amount of fixes is quite small, covering Huawei devices and text mode for sending SMS.

Full list of changes in 1.37.4:

  • Improved support for Huawei E3131.
  • Fixed SMS support for MULTIBAND 900E.
  • Fixed SMS created in text mode.

Would you like to see more features in Gammu? You an support further Gammu development at Bountysource salt or by direct donation.

Filed under: Debian English Gammu | 0 comments

by Michal Čihař (michal@cihar.com) at August 16, 2016 09:00 AM

August 09, 2016

Michal Čihař

Weekly phpMyAdmin contributions 2016-W31

Going back to more or less normal work mode, last week was again more focused on bug handling and improvements.

I've focused on our website, mostly due to some feedback we got from security reviews. It no longer lists MD5 checksums in favor for SHA1 and SHA256. The same change has been applied to themes as well. Besides that I've worked on making the website layout responsive, so that it works reasonably on small screens as well. In the end I've chosen to use Bootstrap for that. This work has been submitted as pull request for review. While working on the hashes, I've realized that we could do more to tell users to verify the downloaded version, so that ended up in second pull request, which adds post download popup showing information how to verify the download (preferring PGP if the release has been signed). Both changes are still pending, but will most likely be merged and put online this week.

Besides website, I've mostly spent time on reviewing pull requests, where we got quite some amount of them and were sitting in the tracker without any feedback. Many of them could be immediately merged, others have received feedback on how to improve them to make them ready for merge.

Handled issues:

Filed under: English phpMyAdmin | 0 comments

by Michal Čihař (michal@cihar.com) at August 09, 2016 04:00 AM

August 02, 2016

July 20, 2016

Michal Čihař

New projects on Hosted Weblate

For almost two months I found very little time to process requests to host free software on Hosted Weblate. Today the queue has been emptied, what means that you can find many new translations there.

To make it short, here is list of new projects:

PS: If you didn't receive reply for your hosting request today, it was probably lost, so don't hesitate to ask again.

Filed under: Debian English Weblate | 0 comments

by Michal Čihař (michal@cihar.com) at July 20, 2016 05:00 PM

July 13, 2016

Michal Čihař

Weekly phpMyAdmin contributions 2016-W26 and 2016-W27

I'm reporting two weeks at once as I had several days of and there was not that much of work done. Pretty much everything was bug screening, relaxing after previous security fixes and starting with new round of them.

Handled issues:

Filed under: English phpMyAdmin | 0 comments

by Michal Čihař (michal@cihar.com) at July 13, 2016 10:00 AM

July 10, 2016

Michal Čihař

Weblate 2.7

Slightly later than on monthly schedule but Weblate 2.7 is out today. This release brings improvements to the API and is first to officially support wlc a command line client for Weblate.

Full list of changes for 2.7:

  • Removed Google web translate machine translation.
  • Improved commit message when adding translation.
  • Fixed Google Translate API for Hebrew language.
  • Compatibility with Mercurial 3.8.
  • Added import_json management command.
  • Correct ordering of listed traslations.
  • Show full suggestion text, not only a diff.
  • Extend API (detailed repository status, statistics, ...).
  • Testsuite no longer requires network access to test repositories.

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. 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, OsmAnd, Aptoide, 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.

Filed under: Debian English SUSE Weblate | 0 comments

by Michal Čihař (michal@cihar.com) at July 10, 2016 09:00 AM

July 08, 2016

Michal Čihař

wlc 0.4

wlc 0.4, a command line utility for Weblate, has been just released. This release doesn't bring much changes, but still worth announcing.

The most important change is that development repository has been moved under WeblateOrg organization at GitHub, you can now find it at https://github.com/WeblateOrg/wlc. Another important news is that Debian package is currently waiting in NEW queue and will hopefully soon hit unstable.

wlc is built on API introduced in Weblate 2.6 and still being in development. Several commands from wlc will not work properly if executed against Weblate 2.6, first fully supported version will be 2.7 (current git is okay as well, it is now running on both demo and hosting servers). You can usage examples in the wlc documentation.

Filed under: Debian English SUSE Weblate | 0 comments

by Michal Čihař (michal@cihar.com) at July 08, 2016 10:00 AM

July 07, 2016

Michal Čihař

uTidylib 0.3

Several years ago I've complained about uTidylib not being maintained upstream. Since that time I've occasionally pushed some fixes to my GitHub repository with uTidylib code, but without any clear intentions to take it over.

Time has gone and there was still no progress and I started to consider becoming upstream maintainer as well. I quickly got approval from Cory Dodt, who was the original author of this code, unfortunately he is not owner of the PyPI entry and the claim request seems to have no response (if you know how to get in touch with "cntrlr" or how to take over PyPI module please let me know).

Anyway the amount of patches in my repository is big enough to warrant new release. Additionally Debian bug report about supporting new HTML tidy library came in and that made me push towards releasing 0.3 version of the uTidylib.

As you might guess, the amount of changes against original uTidylib is quite huge, to name the most important ones:

Anyway as I can not update PyPI entry, the downloads are currently available only on my website: https://cihar.com/software/utidylib/

Filed under: Debian English uTidylib | 0 comments

by Michal Čihař (michal@cihar.com) at July 07, 2016 04:00 PM

June 29, 2016

Michal Čihař

PHP shapefile library

Since quite a long time phpMyAdmin had embedded the bfShapeFiles library for import of geospatial data. Over the time we had to apply fixes to it to stay compatible with newer PHP versions, but there was really no development. Unfortunately, as it seems to be only usable PHP library which can read and write ESRI shapefiles.

With recent switch of phpMyAdmin to dependency handling using Composer I wondered if we should get rid of the last embedded PHP library, which was this one - bfShapeFiles. As I couldn't find alive library which would work well for us, I resisted that for quite long, until pull request to improve it came in. At that point I've realized that it's probably better to separate it and start to improve it outside our codebase.

That's when phpmyadmin/shapefile was started. The code is based on bfShapeFiles, applies all fixes which were used in phpMyAdmin and adds improvements from the pull request. On top of that it has brand new testsuite (the coverage is still much lower than I'd like to have) and while writing the tests several parsing issues have been discovered and fixed. Anyway you can now get the source from GitHub or install using Composer from Packagist.

PS: While fixing parser bugs I've looked at other parsers as well to see how they handle some situations unclear in the specs and I had to fix Python pyshp on the way as well :-).

Filed under: Debian English phpMyAdmin | 0 comments

by Michal Čihař (michal@cihar.com) at June 29, 2016 08:00 AM

June 28, 2016

Michal Čihař

Weekly phpMyAdmin contributions 2016-W25

As you could see from the release news it has been quite busy week in terms of fixing security issues. It has actually started just after announcement of security audit funded by Mozilla SOS Fund. It seems this is best way to attract attention security reviewers and we got really a lot of it.

So most of work in last two weeks was to deal with incoming security reports. Fortunately there is still nothing critical if you are not using ancient unpatched PHP version which is vulnerable to null termination of strings. This was quite hard work as immediately once we started to think about releasing version with fixes, new report came in and the process repeated several times. Fortunately we've made it to do three security releases (one for each supported branch) and it seems that we've not broken anything (at least there is no bug report indicating that).

Let's see what next weeks bring and how much security work will be there, but we definitely should focus on doing some reviews continuously rather than doing such one off actions.

On the other side in terms of handled public issues this week was really low volume:

Filed under: English phpMyAdmin | 0 comments

by Michal Čihař (michal@cihar.com) at June 28, 2016 04:00 AM

June 26, 2016

Michal Čihař

Troja bridge in Prague

I think it's time to renew tradition of photography posts on this blog. I will start with pictures taken few weeks ago on Troja bridge, which is the newest bridge over the Vltava river in Prague.

Filed under: Debian English Photography | 0 comments

by Michal Čihař (michal@cihar.com) at June 26, 2016 04:00 PM

June 21, 2016

Michal Čihař

Weekly phpMyAdmin contributions 2016-W24

Last week was again focused on code cleanup. The biggest part is splitting up the shapefile library out of our codebase. It's original upstream is not active for years and people started to use the library from our code instead, so separating it makes perfect sense.

While working on that, the library got some basic tests, but I'm still looking for more complex testcases to cover even situation we do not use in phpMyAdmin.

Besides this, there were some bug fixes in phpMyAdmin itself and it's Docker container. Additionally here was quite some security work after we've published information about passed security audit, but that will be described later.

Handled issues:

Filed under: English phpMyAdmin | 0 comments

by Michal Čihař (michal@cihar.com) at June 21, 2016 10:00 AM

June 14, 2016

Michal Čihař

Weekly phpMyAdmin contributions 2016-W23

Last week was a bit more focused on improving our Docker container. It's still not perfect, but it works way better than before. I'm also learning Docker on the way, so the progress is not as fast as it could be.

When speaking about learning I've again learned some new things about PHP - this time it was fact that the debug_backtrace function returns reference to actual interpreters backtrace, so if you change something there, you change the parameters in the code above in the stack. It was quite hard to figure out, but fortunately easy to fix afterwards. Anyway if you have not matching library and PHP MySQL module, you could not connect to MySQL server with phpMyAdmin because of this.

Rest of work was regular bug screening and fixing, nothing really outstanding.

Handled issues:

Filed under: English phpMyAdmin | 0 comments

by Michal Čihař (michal@cihar.com) at June 14, 2016 10:00 AM

June 09, 2016

Michal Čihař

Weekly phpMyAdmin contributions 2016-W22

Last week was a bit relaxed for me as I had few days off, so the amount of work was also quite limited.

Quite a lot of time was spent on investigating issue #12243, which in the end turned out to be problem in Fedora packaging as it's using outdated SQL parser library, which contains many bugs which have been fixed meanwhile. This is now reported in their bug tracker and hopefully get fixed soon. Anyway if you're running phpMyAdmin from Fedora / EPEL packages, you might be bitten by various bugs which are already fixed upstream.

Also if you're looking for free software job, you can join me in working on phpMyAdmin, we're looking for second developer!

Handled issues:

Filed under: English phpMyAdmin | 0 comments

by Michal Čihař (michal@cihar.com) at June 09, 2016 10:00 AM

May 31, 2016

Michal Čihař

Weekly phpMyAdmin contributions 2016-W21

Last week I found time to dig into some ancient issues and managed to fix them. There was some security work as well as we've managed to issue 3 security announcements (nothing really important, but still worth of fixing).

There was usual amount of bug fixing as well, but I'd say there is nothing noteworthy in the bugs, just there was quite a lot of them :-).

What is still ongoing is migration of content from wiki to our documentation. I've again moved dozen of pages and deleted some outdated, so the User guide looks better and better.

Handled issues:

Filed under: English phpMyAdmin | 0 comments

by Michal Čihař (michal@cihar.com) at May 31, 2016 04:00 AM

May 24, 2016

Michal Čihař

Gammu release day

There has been some silence on the Gammu release front and it's time to change that. Today all Gammu, python-gammu and Wammu have been released. As you might guess all are bugfix releases.

List of changes for Gammu 1.37.3:

  • Improved support for Huawei E398.
  • Improved support for Huawei/Vodafone K4505.
  • Fixed possible crash if SMSD used in library.
  • Improved support for Huawei E180.

List of changes for python-gammu 2.6:

  • Fixed error when creating new contact.
  • Fixed possible testsuite errors.

List of changes for Wammu 0.41:

  • Fixed crash with unicode home directory.
  • Fixed possible crashes in error handler.
  • Improved error handling when scanning for Bluetooth devices.

All updates are also on their way to Debian sid and Gammu PPA.

Would you like to see more features in Gammu family? You an support further Gammu development at Bountysource salt or by direct donation.

Filed under: Debian English Gammu python-gammu Wammu | 0 comments

by Michal Čihař (michal@cihar.com) at May 24, 2016 04:00 PM

Weekly phpMyAdmin contributions 2016-W20

Another week is over and it's time to report contributions from it. Issue wise not much things were fixed, but quite a lot of time was spent on reviewing reported issues.

Another continued effort was migrating content from wiki to our documentation. Unfortunately this is also not yet completed as some of the documents have diverged quite a lot and integrating them back is not as straightforward as I'd like it to be.

Handled issues:

Filed under: English phpMyAdmin | 0 comments

by Michal Čihař (michal@cihar.com) at May 24, 2016 04:00 AM

May 19, 2016

Michal Čihař

wlc 0.3

wlc 0.3, a command line utility for Weblate, has been just released. This is probably first release which is worth using so it's probably also worth of bigger announcement.

It is built on API introduced in Weblate 2.6 and still being in development. Several commands from wlc will not work properly if executed against Weblate 2.6, first fully supported version will be 2.7 (current git is okay as well, it is now running on both demo and hosting servers).

How to use it? First you will probably want to store the credentials, so that your requests are authenticated (you can do unauthenticated requests as well, but obviously only read only and on public objects), so lets create ~/.config/weblate:

[weblate]
url = https://hosted.weblate.org/api/

[keys]
https://hosted.weblate.org/api/ = APIKEY

Now you can do basic commands:

$ wlc show weblate/master/cs
...
last_author: Michal Čihař
last_change: 2016-05-13T15:59:25
revision: 62f038bb0bfe360494fb8dee30fd9d34133a8663
share_url: https://hosted.weblate.org/engage/weblate/cs/
total: 1361
total_words: 6144
translate_url: https://hosted.weblate.org/translate/weblate/master/cs/
translated: 1361
translated_percent: 100.0
translated_words: 6144
url: https://hosted.weblate.org/api/translations/weblate/master/cs/
web_url: https://hosted.weblate.org/projects/weblate/master/cs/

You can find more examples in wlc documentation.

Filed under: Debian English phpMyAdmin SUSE Weblate | 0 comments

by Michal Čihař (michal@cihar.com) at May 19, 2016 04:00 PM

May 17, 2016

May 14, 2016

Michal Čihař

Fifteen years with phpMyAdmin and free software

Today it's fifteen years from my first contribution to free software. I've changed several jobs since that time, all of them involved quite a lot of free software and now I'm fully working on free software.

The first contribution happened to be on phpMyAdmin and did consist of Czech translation:

Subject: Updated Czech translation of phpMyAdmin
From: Michal Cihar <cihar@email.cz>
To: swix@users.sourceforge.net
Date: Mon, 14 May 2001 11:23:36 +0200
X-Mailer: KMail [version 1.2]

Hi

I've updated (translated few added messages) Czech translation of phpMyAdmin. 
I send it to you in two encodings, because I thing that in distribution 
should be included version in ISO-8859-2 which is more standard than Windows 
1250.

Regards
    Michal Cihar

Many other contributions came afterwards, several projects died on the way, but it has been a great ride so far. To see some of these you can look at my software page which contains both current and past projects and also includes later opensourced tools I've created earlier (mostly for Windows).

These days you can find me being active on phpMyAdmin, Gammu, python-gammu and Wammu, Debian and Weblate.

Filed under: Debian English phpMyAdmin SUSE | 2 comments

by Michal Čihař (michal@cihar.com) at May 14, 2016 09:23 AM

May 12, 2016

Michal Čihař

Changed Debian repository signing key

After getting complains from apt and users, I've finally decided to upgrade signing key on my Debian repository to something more decent that DSA. If you are using that repository, you will now have to fetch new key to make it work again.

The old DSA key was there really because my laziness as I didn't want users to reimport the key, but I think it's really good that apt started to complain about it (it doesn't complain about DSA itself, but rather on using SHA1 signatures, which is most you can get out of DSA key).

Anyway the new key ID is DCE7B04E7C6E3CD9 and fingerprint is 4732 8C5E CD1A 3840 0419 1F24 DCE7 B04E 7C6E 3CD9. It's signed by my GPG key, so you can verify it this way. Of course instruction on my Debian repository page have been updated as well.

Filed under: Debian English | 2 comments

by Michal Čihař (michal@cihar.com) at May 12, 2016 07:10 AM

May 02, 2016

Michal Čihař

Weekly phpMyAdmin contributions 2016-W17

Last week was quite split into many smaller tasks - working on our libraries (both SQL parser and motranslator got new releases with bug fixes), fixing bugs for upcoming 4.6.1 and working on documentation.

From the libraries side, probably most visible is release of motranslator 1.0, just to claim it's now stable enough. Let's see if somebody else will pick it up as well or it will stay only for our use.

Most time was however spent on our documentation. We've agreed to move wiki from our server to GitHub wiki and reduce content available on the wiki. So far it's really mixture of user documentation, notes and developer documentation. The final shape should be that wiki will contain only developer documentation and all end user documentation will go to our documentation. So far I've gone through about half of user docs pages, deleted duplicated ones and moved content to our documentation. It is most visible on the user guide which now contains way more information and hopefully it will get more complete in near future.

Handled issues:

Filed under: English phpMyAdmin | 0 comments

by Michal Čihař (michal@cihar.com) at May 02, 2016 04:00 AM

April 28, 2016

Michal Čihař

Weblate 2.6

Going back to faster release cycle, Weblate 2.6 has been just released. There is improved support for Python 3 or brand new HTTP REST API.

Full list of changes for 2.6:

  • Fixed validation of subprojects with language filter.
  • Improved support for XLIFF files.
  • Fixed machine translation for non English sources.
  • Added REST API.
  • Django 1.10 compatibility.
  • Added categories to whiteboard messages.

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. 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, OsmAnd, Aptoide, 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.

Filed under: English phpMyAdmin SUSE Weblate | 0 comments

by Michal Čihař (michal@cihar.com) at April 28, 2016 04:00 PM

April 27, 2016

Michal Čihař

motranslator 1.0

After two months since it's announcement I think it's good time to release 1.0 version of motranslator. This release doesn't bring any major changes, it's more to indicate that the library is stable :-).

The motranslator is a translation library used in current phpMyAdmin master (upcoming 4.7.0) with focus on speed and memory usage. It uses Gettext MO files to load the translations. It also comes with testsuite (100% coverage) and basic documentation.

Recommended way to install it is using composer from Packagist repository:

composer require phpmyadmin/motranslator

The Debian package will be available probably at point phpMyAdmin 4.7.0 will be out, but if you see need to have it earlier, just let me know.

Filed under: English phpMyAdmin | 0 comments

by Michal Čihař (michal@cihar.com) at April 27, 2016 10:00 AM

April 26, 2016

Michal Čihař

Weekly phpMyAdmin contributions 2016-W16

Last week was again focused on bug fixing due to increased amount of received bug reports on 4.6.0 release. Fortunately most of the annoying bugs are already fixed in git and will be soon released as 4.6.1.

Another bigger task which was started last week was wiki migration. So far we've been using own wiki running MediaWiki and we're migrating it to GitHub wiki. The wiki on GitHub is way simpler, but it seems as better choice for us. During the migration all user documentation will be merged into our documentation, so that it's all in one place and wiki will be targeted on developers.

Handled issues:

Filed under: English phpMyAdmin | 2 comments

by Michal Čihař (michal@cihar.com) at April 26, 2016 04:00 PM

April 20, 2016

Michal Čihař

Testing Sphinx documentation with Jenkins

While reviewing comments on phpMyAdmin wiki (which we're shrinking down to developer documentation and moving end user documentation to proper documentation) I've noticed that people complained there on broken links in our documentation. Indeed there was quite some of them as this is something nobody really checks. It seems like obvious task to automate.

It seemed to me as obvious as somebody had to do it already. Unfortunately I have not found much, but at least there was Using Jenkins to parse sphinx warnings. This helps with the build warnings, but unfortunately I found no integration for the linkcheck builder. Fortunately it's quite easy with the Jenkins Warnings plugin to write custom parsers and to parse linkcheck output as well.

The Sphinx output parser based on above link can be configured like:

Regular Expression:

^(.*):(\d+): \((.*)\) (.*)

Mapping Script:

import hudson.plugins.warnings.parser.Warning

String fileName = matcher.group(1)
String lineNumber = matcher.group(2)
String category = matcher.group(3)
String message = matcher.group(4)

return new Warning(fileName, Integer.parseInt(lineNumber), "sphinx", category, message);

Example Log Message:

Percona-Server-1.0.2-3.rst:67: (WARNING/2) Inline literal start-string without end-string.

The Sphinx linkcheck output is quite similar:

Regular Expression:

^(.*):(\d+): \[([^\]]*)\] (.*)

Mapping Script:

import hudson.plugins.warnings.parser.Warning

String fileName = matcher.group(1)
String lineNumber = matcher.group(2)
String category = matcher.group(3)
String message = matcher.group(4)

return new Warning(fileName, Integer.parseInt(lineNumber), "sphinx-linkcheck", category, message);

Example Log Message:

faq.rst:793: [broken] http://www.hardened-php.net/: <urlopen error [Errno -3] Temporary failure in name resolution>

All you need to do now is to enable these in your Jenkins project, let the Sphinx parse output and the Sphinx linkcheck one file generated by linkcheck (usually _build/linkcheck/output.txt). The result can be found on the phpMyAdmin CI server.

Filed under: English phpMyAdmin | 0 comments

by Michal Čihař (michal@cihar.com) at April 20, 2016 10:00 AM

April 19, 2016

Michal Čihař

Weekly phpMyAdmin contributions 2016-W15

After weeks of bugfixing my focus has again shifted to refactoring and code cleanups.

One big area was charsets and collations, which were cached in the session data so far. This had bad effect of making the session data quite huge leading to performance loss on every page, while the cached information is needed only on few pages. I've removed this caching, cleaned up the code and everything seems to be behave faster, even the pages which used cached content in the past.

Second area was handling of file uploads. Historically we had two copies of code doing almost the same thing. I've tried to merge them and use File class for all the operations. However this code was built to handle lot of corner cases, so I'm a bit afraid of breaking some special setups.

Handled issues:

Filed under: English phpMyAdmin | 0 comments

by Michal Čihař (michal@cihar.com) at April 19, 2016 10:00 AM

April 14, 2016

Michal Čihař

Gammu 1.37.2

Yesterday, Gammu 1.37.1 and Gammu 1.37.2 have been released. As usual it collects bug fixes and minor improvements.

Full list of changes in 1.37.1:

  • Properly report errors in HEX encoded strings from SMSD SQL backends.
  • Configurable SMSD table names.
  • Improved support for Huawei E303.
  • Improved support for Vodafone K4511.
  • Improved support for Telit M2M modules.

Full list of changes in 1.37.2:

  • Fixed compilation of SMSD.

Would you like to see more features in Gammu? You an support further Gammu development at Bountysource salt or by direct donation.

Filed under: English Gammu python-gammu Wammu | 0 comments

by Michal Čihař (michal@cihar.com) at April 14, 2016 10:00 AM

April 08, 2016

Madhura Jayaratne

phpMyAdmin work during twenty fifth, twenty sixth and twenty eighth weeks

This is my final blog post reporting about the work I have carried out under the phpMyAdmn developer contract. However, I will continue to contribute to phpMyAdmin in a voluntary basis.

During the period, my focus was solely on bus fixes. This was mostly due to the continuous stream of bugs we were receiving and most of the bugs were related to the newly released 4.6 version. 

Following are the bugs fixes during the period.

issue #12092 Rename exported databases/tables doesn't seem to work
issue #12099 Undefined index: controllink
issue #12094 PHP Fatal error: Call to undefined function __()
issue #12116 Fulltext indexes are not copied when using copy database function
issue #12125 Cannot highlight a column if I scroll down from the top of the table
issue #12132 Can not open table with JSON field
issue #12143 Cannot login with certain password

Additionally, I attended to the following bugs.

issue #12088 Improper comment creation and escaping with Percona 5.7 (` instead of ', extra "AS")
issue #12091 Import file does not working when data have \' (4.6.0rc2)
issue #12101 Change or remove "Slave replication" "Reset slave"
issue #12104 Copy Database no longer working
issue #12115 Relations vs Orphans
issue #12139 Import Export error
issue #12130 Error for Browser when got error 500
issue #12149 Class 'PMA_Util' not found

Moreover, I attended to following pull requests as well.

issue #12113 Add new server variables
issue #12136 Fix offering JSON datatype in incompatible MySQL versions

by Madhura (noreply@blogger.com) at April 08, 2016 03:27 AM

April 06, 2016

Michal Čihař

API for Weblate

The long requested feature for Weblate is here - it now has API which you can use to control it. It's scope is currently limited, but it will expand in future releases. The API is currently available in Git, deployed on both Demo server and Hosted Weblate, our hosted solution. It will be also part of 2.6 release, which should be released by end of April.

Anyway the API now provides basic operations up to translation level - you can not edit individual translations, handle suggestions or other advanced features. However what you can do includes:

  • Manipulating with the underlaying VCS repository (commit, push, pull, reset)
  • Download or upload translation files
  • Get information about translations, components, projects and languages
  • Lock or unlock components for translation

As you can see this really covers the basic operations which were most frequently requested, more will come in future. You can see more detailed the Weblate API documentation.

Filed under: English phpMyAdmin SUSE Weblate | 0 comments

by Michal Čihař (michal@cihar.com) at April 06, 2016 10:00 AM

April 05, 2016

Michal Čihař

Weekly phpMyAdmin contributions 2016-W13

Last week was mostly vacation for me, so I'm publishing this report more for not missing one rather than to provide real report.

I've spent only little of time on last Tuesday on reviewing issues and there was no coding involved.

Handled issues:

Filed under: English phpMyAdmin | 0 comments

by Michal Čihař (michal@cihar.com) at April 05, 2016 10:00 AM

April 04, 2016

Michal Čihař

Ukolovnik 1.5

There were quite some translation and code fixes in the repository, so I guess it's time to release it as well. So here comes Ukolovnik 1.5, released almost four years since last release.

Full list of changes:

  • Translations update.
  • Changed licence to GPL 3 or later.
  • Various code cleanup.
  • Development moved to GitHub.

PS: I don't plan any further development of this tool, this is just to bring all (few) users to current code in git.

Filed under: English Ukolovnik | 0 comments

by Michal Čihař (michal@cihar.com) at April 04, 2016 07:30 AM

March 29, 2016

Michal Čihař

Weekly phpMyAdmin contributions 2016-W12

Last week we've finally released phpMyAdmin 4.6.0. That also means that 4.5.5 is out of maintenance now (however 4.4.15 and 4.0.10 are still supported if you're stuck with older PHP or MySQL versions for some reason).

The biggest focus was spent on handling incoming issues and checking if they are still present in 4.6.0 what in most cases proven not to be true.

Handled issues:

Filed under: English phpMyAdmin | 0 comments

by Michal Čihař (michal@cihar.com) at March 29, 2016 12:15 PM

March 24, 2016

Michal Čihař

stardicter 0.9

For quite some time I maintain set of scripts to convert some freely available dictionaries to StarDict format. I think it's time to make it easily available to others as well, so it has seen first release on PyPI after the code is almost 10 years old.

The project originally started for English - Czech dictionary, but over the time support for more sources have been introduced and you can generate StarDict dictionaries from many other sources. So we now have German - Czech dictionary as well. There is also support for dicts.info which provides many bilingual dictionaries, unfortunately it's license doesn't allow to distribute them.

Filed under: English StarDict | 0 comments

by Michal Čihař (michal@cihar.com) at March 24, 2016 09:20 AM

March 22, 2016

Michal Čihař

Weekly phpMyAdmin contributions 2016-W11

Last week was a bit less working for me as I had few days off. The 4.6.0 is about to be released in the time as this blog post will be published, so the focus was obviously on fixing bugs.

Most of annoying issues I've fixed were caused by our SQL Parser which we need to generate some export statements and which didn't properly understand some more complex syntax. Most of the export issues are now fixed, but there are still situations where it doesn't parse the query right, usually this is true for nested SELECT statements or some more complex constructs (CASE). Anyway it's being improved and works better with every release.

Handled issues:

Filed under: English phpMyAdmin | 0 comments

by Michal Čihař (michal@cihar.com) at March 22, 2016 05:00 PM

March 15, 2016

Michal Čihař

Weekly phpMyAdmin contributions 2016-W10

Last week was quite equally split between refactoring and bug fixing. As we're getting closer to 4.6.0 release more people give feedback on it and some corner case issues are being discovered.

However the biggest challenge was strange bug that was reported long time ago - it affected only Italian translation on Windows server. After lot of debugging, I've realized that trying to encode Cardinalità</td> to json (using json_encode) causes this problem. Obviously there have to be more conditions met as this string only doesn't cause it, however removing it or placing x between à and < fixes the problem. In the end I've workarounded it in our code and hopefully I will get to create proper bugreport for php so that it can be fixed upstream as well.

The refactoring was mostly focused on encoding conversion part which is now all embedded in the Encoding class. It was quite simplified and should also speed up pages a bit as it does the initialization only when needed not on every phpMyAdmin's page.

Handled issues:

Filed under: English phpMyAdmin | 0 comments

by Michal Čihař (michal@cihar.com) at March 15, 2016 05:00 AM

March 13, 2016

Madhura Jayaratne

phpMyAdmin work during twenty third and twenty fourth weeks

I  engaged in a mix of bug fixes and improvements (including refactoring) during the fortnight. The bugs fixed and attended are as follows.

Bugs fixed
issue #12073 Hide edit and delete buttons when the results are not related to a table
issue #12085 Like search strings being escaped incorrectly

Bugs attended
issue #12071 Syntax error in PMA, not at command line client
issue #12074 Invalid export
issue #12087 Add support for JSON data type (in MySQL 5.7)

I went on to refactor the code that handled bookmarks. I used object orientation and updated the existing unit tests to suit the refactored code. Moreover, I updated the metro theme to be compatible with the upcoming 4.6.0 version, so phpMyAdmin has, at least, one additional theme compatible with the new version.

Refactoring
Clean up dead code
Refactor bookmark handling code

Other improvements
Update metro theme to be compatible with 4.6.0

by Madhura (noreply@blogger.com) at March 13, 2016 02:21 AM

Subscriptions

Planet phpMyAdmin aggregates blogs of following phpMyAdmin contributors.

Last updated

September 28, 2016 06:30 AM
All times are UTC.

Feeds

[RSS 1.0 Feed] [RSS 2.0 Feed] [Atom Feed] [FOAF Subscriptions] [OPML Subscriptions] [Venus]

Planetarium