May 09, 2019

Michal Čihař

Weblate blog moved

I've been publishing updates about Weblate on my blog for past seven years. Now the project has grown up enough to deserve own space to publish posts. Please update your bookmarks and RSS readers to new location directly on Weblate website.

The Weblate website will receive another updates in upcoming weeks, I'm really looking forward to these.

New address for Weblate blog is https://weblate.org/news/.

New address for the RSS feed is https://weblate.org/feed/.

Filed under: Debian English SUSE Weblate

by Michal Čihař (michal@cihar.com) at May 09, 2019 12:21 PM

April 26, 2019

Michal Čihař

Weblate 3.6.1

Weblate 3.6.1 has been released today. It is a bugfix release fixing several issues reported after the 3.6 release.

Full list of changes:

  • Improved handling of monolingual Xliff files.
  • Fixed digest notifications in some corner cases.
  • Fixed addon script error alert.
  • Fixed generating MO file for monolingual PO files.
  • Fixed display of uninstalled checks.
  • Indicate administered projects on project listing.
  • Allow update to recover from missing VCS repository.

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.

Filed under: Debian English SUSE Weblate

by Michal Čihař (michal@cihar.com) at April 26, 2019 07:23 PM

April 20, 2019

Michal Čihař

Weblate 3.6

Weblate 3.6 has been released today. It brings rewritten notifications, user data download and several other improvements. It also sets depreciation timeline for Python 2 installations - after April 2020 Weblate will only support Python 3.

Full list of changes:

  • Add support for downloading user data.
  • Addons are now automatically triggered upon installation.
  • Improved instructions for resolving merge conflicts.
  • Cleanup addon is now compatible with app store metadata translations.
  • Configurable language code syntax when adding new translations.
  • Warn about using Python 2 with planned termination of support in April 2020.
  • Extract special chars from the source string for visual keyboard.
  • Extended contributor stats to reflect both source and target counts.
  • Admins and consistency addons can now add translations even if disabled for users.
  • Fixed description of toggle disabling Language-Team header manipulation.
  • Notify users mentioned in comments.
  • Removed file format autodetection from component setup.
  • Fixed generating MO file for monolingual PO files.
  • Added digest notifications.
  • Added support for muting component notifications.
  • Added notifications for new alerts, whiteboard messages or components.
  • Notifications for administered projects can now be configured.
  • Improved handling of three letter language codes.

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.

Filed under: Debian English SUSE Weblate

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

March 20, 2019

Michal Čihař

translation-finder 1.1

The translation-finder module has been released in version 1.1. It is used by Weblate to detect translatable files in the repository making setup of translation components in Weblate much easier. This release brings lot of improvements based on feedback from our users, making the detection more reliable and accurate.

Full list of changes:

  • Improved detection of translation with full language code.
  • Improved detection of language code in directory and file name.
  • Improved detection of language code separated by full stop.
  • Added detection for app store metadata files.
  • Added detection for JSON files.
  • Ignore symlinks during discovery.
  • Improved detection of matching pot files in several corner cases.
  • Improved detection of monolingual Gettext.

Filed under: Debian English SUSE Weblate

by Michal Čihař (michal@cihar.com) at March 20, 2019 01:40 PM

March 10, 2019

Michal Čihař

Weblate 3.5.1

Weblate 3.5.1 has been released today. Compared to the 3.5 release it brings several bug fixes and performance improvements.

Full list of changes:

  • Fixed Celery systemd unit example.
  • Fixed notifications from http repositories with login.
  • Fixed race condition in editing source string for monolingual translations.
  • Include output of failed addon execution in the logs.
  • Improved validation of choices for adding new language.
  • Allow to edit file format in component settings.
  • Update installation instructions to prefer Python 3.
  • Performance and consistency improvements for loading translations.
  • Make Microsoft Terminology service compatible with current zeep releases.
  • Localization updates.

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.

Filed under: Debian English SUSE Weblate

by Michal Čihař (michal@cihar.com) at March 10, 2019 02:59 PM

March 03, 2019

Michal Čihař

Weblate 3.5

Weblate 3.5 has been released today. It includes improvements in the translation memory, addons or alerting.

Full list of changes:

  • Improved performance of built in translation memory.
  • Added interface to manage global translation memory.
  • Improved alerting on bad component state.
  • Added user interface to manage whiteboard messages.
  • Addon commit message now can be configured.
  • Reduce number of commits when updating upstream repository.
  • Fixed possible metadata loss when moving component between projects.
  • Improved navigation in the zen mode.
  • Added several new quality checks (Markdown related and URL).
  • Added support for app store metadata files.
  • Added support for toggling GitHub or Gerrit integration.
  • Added check for Kashida letters.
  • Added option to squash commits based on authors.
  • Improved support for xlsx file format.
  • Compatibility with tesseract 4.0.
  • Billing addon now removes projects for unpaid billings after 45 days.

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.

Filed under: Debian English SUSE Weblate

by Michal Čihař (michal@cihar.com) at March 03, 2019 04:00 PM

January 31, 2019

Michal Čihař

wlc 1.0

wlc 1.0, a command line utility for Weblate, has been just released. The most important change is marking this stable and releasing actual 1.0. It has been around long enough to indicate it's stability.

Full list of changes:

  • Marked as stable release.
  • Added support for more parameters on file upload.

wlc is built on top of Weblate API, you can use it on Weblate 2.10 or newer, though some features might require more recent version. Of course you use it on our hosting offering. Usage examples can be found in the wlc documentation.

Filed under: Debian English SUSE Weblate

by Michal Čihař (michal@cihar.com) at January 31, 2019 11:26 AM

January 22, 2019

Michal Čihař

Weblate 3.4

Weblate 3.4 has been released today. The most visible new feature are guided translation component setup or performance improvements, but there are several other improvements as well.

Full list of changes:

  • Added support for XLIFF placeholders.
  • Celery can now utilize multiple task queues.
  • Added support for renaming and moving projects and components.
  • Include chars counts in reports.
  • Added guided adding of translation components with automatic detection of translation files.
  • Customizable merge commit messages for Git.
  • Added visual indication of component alerts in navigation.
  • Improved performance of loading translation files.
  • New addon to squash commits prior to push.
  • Improved displaying of translation changes.
  • Changed default merge style to rebase and made that configurable.
  • Better handle private use subtags in language code.
  • Improved performance of fulltext index updates.
  • Extended file upload API to support more parameters.

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.

Filed under: Debian English SUSE Weblate

by Michal Čihař (michal@cihar.com) at January 22, 2019 03:30 PM

January 09, 2019

Saksham Gupta

Hi Varsha, feel free to contact me on LinkedIn.

Hi Varsha, feel free to contact me on LinkedIn.

https://www.linkedin.com/in/saksham9

by Saksham Gupta at January 09, 2019 09:03 PM

November 30, 2018

Michal Čihař

Weblate 3.3

Weblate 3.3 has been released today. The most visible new feature are component alerts, but there are several other improvements as well.

Full list of changes:

  • Added support for component and project removal.
  • Improved performance for some monolingual translations.
  • Added translation component alerts to highlight problems with a translation.
  • Expose XLIFF unit resname as context when available.
  • Added support for XLIFF states.
  • Added check for non writable files in DATA_DIR.
  • Improved CSV export for 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.

Filed under: Debian English SUSE Weblate

by Michal Čihař (michal@cihar.com) at November 30, 2018 02:00 PM

November 14, 2018

Michal Čihař

Alerts in Weblate to indicate problems with translations

Upcoming Weblate 3.3 will bring new feature called alerts. This is one place location where you will see problems in your translations. Right now it mostly covers Weblate integration issues, but it will be extended in the future for deeper translation wide diagnostics.

This will help users to better integrate Weblate into the development process giving integration hints or highlighting problems Weblate has found in the translation. It will identify typical problems like not merged git repositories, parse errors in files or duplicate translation files. You can read more on this feature in the Weblate documentation.

Alerts in Weblate

You can enjoy this feature on Hosted Weblate right now, it will be part of upcoming 3.3 release.

Filed under: Debian English SUSE Weblate

by Michal Čihař (michal@cihar.com) at November 14, 2018 01:14 PM

October 20, 2018

Michal Čihař

Weblate 3.2.2

Weblate 3.2.2 has been released today. It's a second bugfix release for 3.2 fixing several minor issues which appeared in the release.

Full list of changes:

  • Remove no longer needed Babel dependency.
  • Updated language definitions.
  • Improve documentation for addons, LDAP and Celery.
  • Fixed enabling new dos-eol and auto-java-messageformat flags.
  • Fixed running setup.py test from PyPI package.
  • Improved plurals handling.
  • Fixed translation upload API failure in some corner cases.
  • Fixed updating Git configuration in case it was changed manually.

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.

Filed under: Debian English SUSE Weblate

by Michal Čihař (michal@cihar.com) at October 20, 2018 10:58 AM

October 19, 2018

Michal Čihař

translation-finder 0.1

Setting up translation components in Weblate can be tricky in some cases, especially if you lack knowledge of the translation format you are using. Also this is something we wanted to automate from the very beginning, but there were always more pressing things to implement. But now the time is coming as I've just made first beta release of translation-finder, tool to help with this.

The translation-finder will look at filesystem (eg. checked out repository) and tries to find translatable files. So far the heuristics is pretty simple, but still it detects just fine most of the projects currently hosted on our hosted localization platform. Still if you find issue with that, you're welcome to provide feedback in our issue tracker.

The integration into Weblate will come in next weeks and will be able to enjoy this new feature in the 3.3 release.

Filed under: Debian English SUSE Weblate

by Michal Čihař (michal@cihar.com) at October 19, 2018 02:26 PM

October 17, 2018

Michal Čihař

wlc 0.9

wlc 0.9, a command line utility for Weblate, has been just released. There are several new commands like translation file upload or repository cleanup. The codebase has been also migrated to use requests instead of urllib.

Full list of changes:

  • Switched to requests
  • Added support for cleanup command.
  • Added support for upload command.

wlc is built on API introduced in Weblate 2.6 and still being in development, you need at least Weblate 2.10 (or use on our hosting offering). You can find usage examples in the wlc documentation.

Filed under: Debian English SUSE Weblate

by Michal Čihař (michal@cihar.com) at October 17, 2018 02:49 PM

October 15, 2018

Michal Čihař

uTidylib 0.4

Two years ago, I've taken over uTidylib maintainership. Two years has passed without any bigger contribution, but today there is a new version with support for recent html-tidy and Python 3.

The release still can't be uploaded to PyPI (see https://github.com/pypa/warehouse/issues/4860), but it's available for download from my website or tagged in the GitHub repository.

Full list of changes is quite small:

  • Compatibility with html-tidy 5.6.0.
  • Added support for Python 3.

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 SUSE uTidylib

by Michal Čihař (michal@cihar.com) at October 15, 2018 02:16 PM

October 10, 2018

Michal Čihař

Weblate 3.2.1

Weblate 3.2.1 has been released today. It's a bugfix release for 3.2 fixing several minor issues which appeared in the release.

Full list of changes:

  • Document dependency on backports.csv on Python 2.7.
  • Fix running tests under root.
  • Improved error handling in gitexport module.
  • Fixed progress reporting for newly added languages.
  • Correctly report Celery worker errors to Sentry.
  • Fixed creating new translations with Qt Linguist.
  • Fixed occasional fulltext index update failures.
  • Improved validation when creating new components.
  • Added support for cleanup of old suggestions.

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.

Filed under: Debian English SUSE Weblate

by Michal Čihař (michal@cihar.com) at October 10, 2018 11:00 AM

October 06, 2018

Michal Čihař

Weblate 3.2

Weblate 3.2 has been released today. It's fiftieth release of Weblate and also it's release with most fixed issues on GitHub. The most important change is in the background - introduction of Celery to process background tasks. The biggest user visible change is extended translation memory.

Full list of changes:

  • Add install_addon management command for automated addon installation.
  • Allow more fine grained ratelimit settings.
  • Added support for export and import of Excel files.
  • Improve component cleanup in case of multiple component discovery addons.
  • Rewritten Microsoft Terminology machine translation backend.
  • Weblate now uses Celery to offload some processing.
  • Improved search capabilities and added regular expression search.
  • Added support for Youdao Zhiyun API machine translation.
  • Added support for Baidu API machine translation.
  • Integrated maintenance and cleanup tasks using Celery.
  • Improved performance of loading translations by almost 25%.
  • Removed support for merging headers on upload.
  • Removed support for custom commit messages.
  • Configurable editing mode (zen/full).
  • Added support for error reporting to Sentry.
  • Added support for automated daily update of repositories.
  • Added support for creating projects and components by users.
  • Built in translation memory now automatically stores translations done.
  • Users and projects can import their existing translation memories.
  • Better management of related strings for screenshots.
  • Added support for checking Java MessageFormat.

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.

Filed under: Debian English SUSE Weblate

by Michal Čihař (michal@cihar.com) at October 06, 2018 01:00 PM

August 13, 2018

Leonardo Strozzi

GSoC 2018 contributions documentation

As the end of this year’s Google Summer of Code approaches, this issue summarizes the work done during my project.

During my project’s development, I’ve refactored the existing Twig templates, my main strategy, when it was possible, was to reorganize the functions by putting all the logical part at the beginning, and the view’s at bottom, then I created a new template, and merged all of the templates that were being used in that function, this reduced a lot the number of templates. Another thing that was done was the refactor of Twig’s extensions, I’ve removed unnecessary functions, some were logic, others just returned a template and were replaced by an include statement, the extensions were named by following the following pattern Class_function_name, after talking with my mentor, we agreed to rename all of them to just function_name. I've fixed some bug as well.

Pull requests & commits:

  • Fix central columns in-line edit bug #14286
  • dce39bb: Fix central columns in-line edit bug.
  • Remove md5 twig extension #14305
  • 927fed7: Remove md5 twig extension.
  • Extension removal #14317
  • 5d0fd81: Remove Twig php function extensions.
  • Fix bug reported on pull request #14305 #14341
  • c021125: Fix bug reported on pull request #14305.
  • Refactor db central columns templates #14353
  • be673f9: Refactor db central columns templates.
  • Refactor db designer templates #14372
  • 0d26cfb: Finish db designer refactor.
  • Refactor database templates #14415
  • 9950681: Refactor db search templates.
  • 414c197: Change search test.
  • c032147: Refactor Database Structure templates.
  • 326151a: Fix Qbe casting error.
  • Refactor db_tracking templates #14428
  • f0eab56: Fix code sniffer ServerDatabasesController error.
  • 491ce9a: Refactor db_tracking templates.
  • Fix server databases statistics #14429
  • 05cff7e: Fix server databases statistics.
  • Refactor server templates #14442
  • 15ae8d7: Refactor server_databases templates.
  • 217a0db: Refactor server_variables templates.
  • 28d890f: Refactor server_plugins templates.
  • 36ceaee: Refactor server_engines templates.
  • 7dc44b2: Fix tests for server_engine.
  • Refactor tables’ tamplates #14471
  • bcad25a: Refactor table_tracking main tamplates.
  • e955052: Adapt table tracking main tests.
  • 3b87465: Fix php code sniffer errors.
  • Refactor table search templates #14480
  • 4e81d3f: Refactor table search templates.
  • 108f445: Merge table structure tamplates.
  • Refactor table secondary tabs tamplate #14483
  • 6b08a7c: Refactor table secondary tabs tamplate.
  • Refactor table relation’s templates #14490
  • 7ac2224: Fix secondary tabs bug.
  • a017a8e: Refactor table relation’s templates.
  • 4d31aa5 : Fix phpstan error report mentioned on pr#14483.
  • Refactor server privileges templates #14528
  • 685ccaf: Move privileges’ template dir to server’s.
  • d3dfdbc: Merge template files.
  • Refactor extensions #14541
  • 8333a99: Rename charsets Twig extensions.
  • 04890c3: Rename core Twig’s extension.
  • aee045f: Remove index Twig extensions.
  • 00aea88: Rename message Twig extensions.
  • 76ad22c: Remove partition Twig extensions.
  • 9464cbc: Rename plugins Twig extensions.
  • 78c1d9e: Rename relations Twig extensions.
  • d13a636: Rename ServerPrivileges Twig extension.
  • eddbbeb: Rename StorageEngine Twig extensions.
  • e7d36c2: Rename table Twig extension.
  • 0ba17c6: Rename tracker Twig extension.
  • ed8aadd: Rename Transformation Twig extensions.
  • b65ede4: Refactor Url Twig extensions.
  • 1037b1d: Refactor Util Twig extensions.
  • ad3334c: Refactor Sanitize Twig extensions.
  • 7aaaafc: Addapt for master merge.
  • Remove get_div_for_slider_effect twig extension #14557
  • fc9ccff: Remove get_div_for_slider_effect twig extension.

Highlights

The biggest contribution added by this project was to set a development pattern for the Twig templates that are used in phpMyAdmin.

By setting a directory structure pattern, removing unnecessary extensions and refactoring the existing templates, it will be easier to detach the front-end from the back-end, what will be done in the future, since there’s still a lot of html inside the php code.

by Leonardo Strozzi at August 13, 2018 09:09 PM

August 12, 2018

Piyush Vijay

GSoC Final Blog for Code Submission

Through this blog post, I’d like to comprehensively document all of my work done through the Google Summer of Code 2018. This involves links to all the blog posts, repositories, discussions and code merges. A huge token of thanks for all the support extended by mentors Deven Bansod and Maurício Meneghini Fauth and the entire phpMyAdmin community for their suggestions and discussions.

Some Important Links:

  1. Github: https://github.com/Piyush3079
  2. phpMyAdmin Home: https://www.phpmyadmin.net/
  3. phpMyAdmin Github: https://github.com/phpmyadmin/phpmyadmin
  4. Proposal Link: Link.
  5. Project Link: https://summerofcode.withgoogle.com/projects/#5118590865375232

The changes done in the code were not merged in master branch. Instead a new branch was created and all the pull requests were merged in that branch.

Link to base branch: gsoc-js-refactoring

The following pull requests were created:

  1. Mod_Js_Config [ Merged ]
  2. Mod_Js_Server_Privileges [ Merged ]
  3. Mod_Js_Console [ Meged ]
  4. Mod_Js_Server_Status [Merged ]
  5. Mod_Js_Navigation [ Merged ]
  6. Mod_Js_Import_Export [ Merged ]
  7. Mod_Js_Config_Js [ Merged ]
  8. Mod_Js_Structuring_1 [ Merged ]
  9. Mod_Js_Sql_Js [ Not Merged ]
  10. Mod_Js_Sql_Profiling [ Not Merged ]
  11. Mod_Js_Db_Structure [ Not Merged ]
  12. Mod_Js_Tbl_Stucture [ Not Merged ]

Features Implemented:

  1. Webpack as a bundler to bundle the static javascript files.
  2. Babel to allow support for module import and export and also to compile ES6 code to ES5.
  3. Package.json as the package manager and yarn as dependency installer.
  4. Dynamic imports to allow code splitting and lazy loading of JavaScript files as modules.
  5. Reduce eslint warning and error in the modular code.
  6. Jsdoc to document the javascript code.

Accomplishments and Leftovers:
A large amount of codebase has been revamped till now. Major parts which are remaining are:

  1. Some of the pages were giving error so they were not revamped like “Query By Example” page for databases and tables.
  2. Database Designer is not revamped yet.
  3. Gis Editor is remaining to be revamped.
  4. RTE related pages are remaining to be revamped.
  5. Error reporting for JavaScript files is not fully functional (Still working on it).

The code is functional now as the php code is edited in such a way to make sure the working of both old code and new code. Once complete code get revamped, then code cleanup for php files can be done to remove functions required for workability of old code.

Blog Posts During the GSoC Period:

Mailing list discussion (phpMyAdmin):

by Piyush Vijay at August 12, 2018 11:44 PM

August 07, 2018

Saksham Gupta

Wrapping up GSoC ’18 with phpMyAdmin

As every good thing comes to an end, the summer vacations have ended and so did the journey of GSoC. GSoC helped me to spend my summers in a productive way.

I have almost completed project with a few remaining fixes and tests. One major problem faced recently was that many people use phpMyAdmin in /var/www/ folder which needs root access thus it doesn’t directly allows theme generator to create files without giving adequate permissions to the theme folder . So for now we have made a notification indicating the users to correct user permissions before proceeding. Another idea was to create downloadable files so that the user could manually add the custom theme to the theme folder. But this was quite a big task in itself, thus it’s been left as a later project.

After GSoC

The code hasn’t been merged yet as it still needs to be reviewed. As per the reviews of the users we could then improve the UI as for now we haven’t thought about UI much.

by Saksham Gupta at August 07, 2018 08:27 PM

August 03, 2018

Lakshay Arora

Integrate storing user preferences in browser local storage, Lakshay Arora | GSoC 2018 with phpmyadmin

Integrate storing user preferences in browser local storage

Post 2

Submitted pull request for the final feature feature.

Plans for this week-

  1. Review the code for all the features submitted.
  2. Work on tests and documentation for all the features.
  3. Work on code final submission.

August 03, 2018 12:00 AM

August 02, 2018

Piyush Vijay

Final Coding Week of GSoC With phpMyAdmin

It has been more than two and a half months since working with phpMyAdmin under GSoC 2018. This week is the final coding week of GSoC. This blog post is a brief jouney about what has been done till now and what is remaining.

A substantial amount of code has been revamped and converted into modular code. Although it seems quite clear that the whole JavaScript code-base cannot be modularized before the coding period ends, as there are already some issues related to php which needs to be taken care before the starting of revamping the JavaScript files related to those php files so that the new code can be tested at least once in development.

Progress till now

Almost 70% of the code base has been converted into modular code. During the initial phase of the project, the created pull request became very complex to review ,suggest changes and to test for individual functionality, so the pull request was broken up into several continuous pull requests based on the individual functionality or file change.
But these pull requests were in continuation, so at that time it was not sure that merging these pull requests will break something or not so I proposed to create a new branch in the main repository to merge all these continuous pull request and once the revamped code is tested on this branch, this branch could be merged into master to make sure that nothing is breaking into the master.

After this change in the review technique, several pull requests were merged and many new pull requests were created for merge into the new branch. Some of the pull requests are:
Mod_Js_Config (Merged), Mod_Js_Server_Privileges (Merged), Mod_Js_Console (Merged), Mod_Js_Server_Status (Merged), Mod_Js_Navigation (Merged), Mod_Js_Import_Export (Merged)

The prefix Mod_Js is for differentiating these pull requests from rest of the pull requests. All these pull requests were successfully merged into the gsoc-js-refactoring branch with some functionality break (mentioned in the individual pull request itself).

Plan for this week

The plan for this week is to revamp some of the files related to table into modular code. Apart from that, I am working on some build scripts so that the new code can be used in the production release. The code is being tested in production mode to make sure that nothing is breaking. I will also try to implement jsdoc to create documentation of the JavaScript code.

Plan for next week

The next week is the documentation week for the work that has been done during the Google Summer of Code coding period. So the main focus will be towards documenting everything according to the guidelines mentioned by Google.

If jsdoc is implemented without errors and within the duration of the coding period, I’ll work on implementing better documentation of the functions, classes, and modules which can be hosted on phpMyAdmin developer page.

What’s remaining

The designer part of the phpMyAdmin is yet to be revamped. Apart from that some of the files related to the database like Routines, Triggers, Events, Query By Example are remaining. Some of the files related to the table are also remaining although I am working to revamp them.

Code cleaning, naming and renaming of files correctly are also few of the major tasks remaining.
Old js files has not been deleted yet as the anticipatory changes made in all these old files will be considered after merging this gsoc-js-refactoring pull requests into master.

by Piyush Vijay at August 02, 2018 11:34 AM

July 27, 2018

Michal Čihař

Weblate 3.1

Weblate 3.1 has been released today. It contains mostly bug fixes, but there are some new feature as well, for example support for Amazon Translate.

Full list of changes:

  • Upgrades from older version than 3.0.1 are not supported.
  • Allow to override default commit messages from settings.
  • Improve webhooks compatibility with self hosted environments.
  • Added support for Amazon Translate.
  • Compatibility with Django 2.1.
  • Django system checks are now used to diagnose problems with installation.
  • Removed support for soon shutdown libravatar service.
  • New addon to mark unchanged translations as needing edit.
  • Add support for jumping to specific location while translating.
  • Downloaded translations can now be customized.
  • Improved calculation of string similarity in translation memory matches.
  • Added support by signing Git commits by GnuPG.

Update:

Weblate 3.1.1 was released as well fixing test suite failure on some setups:

  • Fix testsuite failure on some setup.

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.

Filed under: Debian English SUSE Weblate

by Michal Čihař (michal@cihar.com) at July 27, 2018 01:25 PM

July 23, 2018

Lakshay Arora

Integrate storing user preferences in browser local storage, Lakshay Arora | GSoC 2018 with phpmyadmin

Integrate storing user preferences in browser local storage

Post 1

This is my favorite feature request because of its importance and the challanges it imposes. The data about add on features is stored in the configuration storage, when it is not configured, the data doesn’t persist over session. In those cases the data should be saved in browser local storage.

  1. All this data(stored on client side) will be needed by the server, so we’ll need to pass the data to the server during login.
  2. Whenever user makes some changes in the data, after processing it on the server side, it can be passed on to the client using ajax request and updated in browser local storage.

Plans for this week-

Automatically load settings from local storage at login time.

July 23, 2018 12:00 AM

July 17, 2018

Lakshay Arora

Add Support for CHECK Constraints, Lakshay Arora | GSoC 2018 with phpmyadmin

Add Support for CHECK Constraints

Post 2

This feature request is divided in three parts -

  1. Implement an interface for interacting with these constraints
  2. Update parser to understand this syntax
  3. Update the export interface to allow including these in an export

Mysql does not provide any way to alter the definition of a constraint. The main idea is to add support for a constraint and additionally build a feature seperate from mysql to alter a constraint.

I’ve submitted the PR for the first part of the feature. I’m currently working on the sql-parser.(The second part)

Work done -

  1. SQL parser now recognizes CHECK statements in alter table commands.

Plans for this week-

  1. Make sql parse fully aware of the CHECK statements.
  2. Update the export interface to allow including these in an export.

July 17, 2018 12:00 AM

July 09, 2018

Lakshay Arora

Add Support for CHECK Constraints, Lakshay Arora | GSoC 2018 with phpmyadmin

Add Support for CHECK Constraints

Post 1

This feature request is divided in three parts -

  1. Implement an interface for interacting with these constraints
  2. Update parser to understand this syntax
  3. Update the export interface to allow including these in an export

Mysql does not provide any way to alter the definition of a constraint. The main idea is to add support for a constraint and additionally build a feature seperate from mysql to alter a constraint.

I’m currenlty working on the interface to build, edit and drop check constraints.(The first part) Work done -

  1. Implemented UI to add a check constraint during table creation. UI to add CHECK

  2. Implemented UI to show defined constraints on a table in table structure.

Plans for this week-

  1. Finish the functionality to add/drop/alter constraints(first part).
  2. Update parser to understand syntax(second part).

July 09, 2018 12:00 AM

July 07, 2018

Saksham Gupta

GSoC work report before 2nd evaluation

As the second evaluations are starting from 9th July, I would explain all the work I’ve done between first and second evaluation. The first task I did was to create a feature so that the contrast ratio between the text colour and background colour is good enough. Detailed explanation about it is present in the previous post. The next work was to create Preview Panels and integrating them with the theme generator. Initially the plan was to create sample panels for every decided element, but I had to change the plan and decided to create preview panels for only Table and Group element. Every other style is applied on the already present elements (navigation panel, background, headers etc.). The two main reasons for it were

  1. To prevent unnecessary clutter.
  2. The already present elements were interfering with the sample elements, thus becoming a tedious and unnecessary job.

I’ve also written some documentation and will be writing some tests in a day or two.

by Saksham Gupta at July 07, 2018 05:44 PM

July 03, 2018

Leonardo Strozzi

phpMyAdmin GSoC contributions

I’m finishing the refactor in the directories that are already in the right structure, only the table directory is not ready.

I’ve been working on the databases templates directories, which I’ve finished a couple of weeks ago, and the server templates which I’ve finished last week, during this last one, I spent some reasonable time changing the tests for ServerEnginesController, to make it work with the new structure. There was a problem, at the test for the single engine show page, that the engine used for test is not so common nowadays, and I had replaced a function call for its code in the indexAction function, and where this function tests if the engine ‘Pbxt’ isValid(), which always returned false, because the engine pbxt is not installed. The old test bypassed this conditional by calling directly the getHtml function for pbxt engine. After a lot of failed tests, I’ve realized that the best thing to do for now was to keep the getHtml function.

Now all of my efforts are focused on finishing the tables directory, this is the directory with the biggest number of templates, 45 in total.

by Leonardo Strozzi at July 03, 2018 02:05 AM

June 28, 2018

Lakshay Arora

Sixth feature submitted, GSoC 2018 with phpmyadmin

Sixth feature submitted

I’ve submitted a PR for the sixth feature. Adds features discussed in #13023

  1. Show ajax errors at the bottom of the page, instead of showing them in a popup.
  2. Add copy query button for errors in processing sql queries.

Plans for next week-

The next feature(#7) that I’ll be working on is- Add warning for default user/password usage Don’t use the controluser ‘pma’ if it does not yet exist and don’t use ‘pmapass’ as password. consider testing if pma:pmapass is used, and warn about it?

June 28, 2018 12:00 AM

June 24, 2018

Saksham Gupta

Automating text color for good contrast ratio

As my sixth week of GSoC with phpMyAdmin has come to an end, I going to explain the problems faced and how I tackled them. The biggest problem I faced was calculating text colours with contrast ratio greater than 4.5 , while keeping in mind the colour scheme used. First I tried to use mix-blend-mode but it didn’t work out because I would have to add a span class for every text, which wasn’t feasible. So I created a new function which takes the background colour and compares with the calculated colour . If the contrast ratio is less than 4.5 it tweaks saturation and brightness till the required contrast ratio is achieved. This colour is achieved with a maximum iteration of 10. Now I have started creating Preview panels and would complete it this week, hopefully.

by Saksham Gupta at June 24, 2018 11:25 PM

June 23, 2018

Lakshay Arora

Working on fifth feature, GSoC 2018 with phpmyadmin

Working on fifth feature

I’m currently working on the fifth feature- This is one of the most requested features in my features’ list Till now I’ve done the following-

  1. Added a configuration directive in config.default.php as $cfg[‘Import’][‘enable_drag_drop_import’]
  2. Added a checkbox in the settings page to toggle this config on or off.
  3. Disabled the handler at the server side if config is set to disabled.

TODO:

  1. Test on multiple servers.
  2. Disable drag drop handlers in javascript.

June 23, 2018 12:00 AM

June 21, 2018

Piyush Vijay

GSoC Week 4 and Week 5

It’s been 5 weeks now working with phpMyAdmin under the Google Summer of Codes 2018 program. I have successfully passed the first evaluation.

During these two weeks and including this week also, my main objective was to modularize the Navigation, Error Report, PMA Console, Import and Export and the configuration file so that the configuration of these pages can be checked and settings can be changed with the modular code.

Right now I am working on inline javascript coming from the php classes containing the the configuration of the particular page which were injected in the container showing the body of html. These configurations need to be imported in the module from window of document and then used in the modular code so that any change in the setting of the page or any saved setting can be compared with new changed or setting user is going to made on the settings page and on PMA Navigation.

Regarding the Feedback from Mentor:

As per the feedback, the mentors had given, I will try to push the quality code on the pull request by the end of this week or by the mid of the coming week after making successful changes and testing of the above mentioned files,which can be reviewed.

by Piyush Vijay at June 21, 2018 12:43 PM

Lakshay Arora

Fourth feature submitted, GSoC 2018 with phpmyadmin

Fourth feature submitted

I’ve submitted a PR for the fourth feature. The following new functionalities have been added-

  1. Automatically add PRIMARY KEY on column edit page when user tries to set AUTO INCREMENT.
  2. Disable popup when user clicks on the A_I checkbox in column insert and new table page and automatically set default index to PRIMARY with defaults.

Plans for next week-

The next feature(#5) that I’ll be working on is- Add a configuration option to disable drag drop files completely This is one of the most requested features among the ones in my proposal.

  1. I’ll be adding a setting among other settings where user can disable the checkbox to disable drag/drop file functionality.
  2. This setting will directly interact with the configuration file(just like how other configuration settings work). There are some workarounds suggested by the users in the feature request page, I still have to figure out the safest and best among them, or, I’ll be finding out a workaround of my own.

June 21, 2018 12:00 AM

June 19, 2018

Lakshay Arora

Working on fourth feature, GSoC 2018 with phpmyadmin

Working on fourth feature

I’m currently working on the fourth feature- Before starting, I was thinking about showing a popup to add index when user tries to add AUTO_INCREMENT to an existing column. But in our conversations, Isaac and I decided to -

  1. Automatically add PRIMARY KEY instead of showing a popup to add index.
  2. Disable popup when user clicks on the A_I checkbox in column insert and new table page.

Issues I’m currently working on-

  1. Fatal javascript error while adding index to a new column, #14402

June 19, 2018 12:00 AM

June 10, 2018

Michal Čihař

Weblate 3.0.1

Weblate 3.0.1 has been released today. It contains several bug fixes, most importantly possible migration issue on users when migrating from 2.20. There was no data corruption, just some of the foreign keys were possibly not properly migrated. Upgrading from 3.0 to 3.0.1 will fix this as well as going directly from 2.20 to 3.0.1.

Full list of changes:

  • Fixed possible migration issue from 2.20.
  • Localization updates.
  • Removed obsolete hook examples.
  • Improved caching documentation.
  • Fixed displaying of admin documentation.
  • Improved handling of long language names.

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.

Filed under: Debian English SUSE Weblate

by Michal Čihař (michal@cihar.com) at June 10, 2018 08:10 PM

Lakshay Arora

Third enhancement, GSoC 2018 with phpmyadmin

Third enhancement submitted

I’ve submitted a PR for the third feature - Have set the default width for varchar fields in the insert page to cover the whole width of page. I assigned a class to the “value” th element in the table, and styled it to cover the whole page. Varchar and char textareas were also assigned a class to cover 95% of their parent elements.(width style overrides col attribute) I have set the minimum number of rows to 7. It doesn’t need any relative value, as the height of this table mostly overflows the page.

Among all the enhancements in my list, the third one was the most minor one, all the others require relatively a lot more work and testing.

Plans for next weak.

Mentor evaluation starts 11th June. I will be scrutinizing my work until now to test for bugs and for code optimization whereever possible and will be working on some issues.

June 10, 2018 12:00 AM

June 09, 2018

Maurício Meneghini Fauth

Weekly phpMyAdmin contributions 2018-W22

This week I updated the code style to fit some of the PSR-2 rules, refactored some files and upgraded to Twig 2, in addition to helping the GSoC students.

Issues:

The post Weekly phpMyAdmin contributions 2018-W22 appeared first on mauriciofauth.com.

by Maurício Meneghini Fauth at June 09, 2018 05:57 PM

Weekly phpMyAdmin contributions 2018-W21

This week I made up for the additional hours I worked on in the previous weeks. I removed the $dbi global variable from several classes, in addition to helping the GSoC students.

Issues:

The post Weekly phpMyAdmin contributions 2018-W21 appeared first on mauriciofauth.com.

by Maurício Meneghini Fauth at June 09, 2018 05:54 PM

Weekly phpMyAdmin contributions 2018-W18

by Maurício Meneghini Fauth at June 09, 2018 05:42 PM

Weekly phpMyAdmin contributions 2018-W17

This week I added type declarations to some classes, refactored the PhpMyAdmin\Dbi\DbiMysqli class to use the mysqli class and fixed some bugs.

Issues:

The post Weekly phpMyAdmin contributions 2018-W17 appeared first on mauriciofauth.com.

by Maurício Meneghini Fauth at June 09, 2018 05:37 PM

June 08, 2018

Maurício Meneghini Fauth

Weekly phpMyAdmin contributions 2018-W15

This week the phpMyAdmin began to require PHP 7.1 in the master branch. So I updated the dependencies and removed some PHP 5 code. I also refactored some classes by replacing the static methods with instance methods.

Issues:

The post Weekly phpMyAdmin contributions 2018-W15 appeared first on mauriciofauth.com.

by Maurício Meneghini Fauth at June 08, 2018 10:14 AM

June 05, 2018

Piyush Vijay

Week3 GSoC with phpMyAdmin

Completed 3 weeks of Google Summer of Codes with phpMyAdmin. Major task for the week was to revamp the ajax handler so that it will be compatible with the new webpack generated bundle and there should not be any need of appending the files in the head of the document as it is there in the project right now. Webpack will take care of it.

Here is the major change in the AJAX add script function. There are some more changes by I am showing only this major change.

The new function introduced import() is a function which returns a promise resolution of which contains all the exported modules.

This function will take care of the appending of script in the head tag by generating chunks for modules needed by the dynamically imported module.

This function needs some edits to make it workable for all the files rather than the two files in the array.

The snapshots of the generated webpack profile with two different configurations are as below. Both the configuration have same output size both in development and production mode.

1). When vendor files like jQuery, Codemirror are not build in a separate chunk. The size of various chunks are also shown in the next snapshot

Webpack generated output

2). Second configuration when vendor files are placed in a separate bundle and included in the Header class for loading it each time with index_new.js

The reproducible pr is already made on github.

Major task for this week would be to work on optimising the webpack bundle and working on ajax handler to revamp it further and try to create multiple entry points for separate files and the compare the output with single entry point.

by Piyush Vijay at June 05, 2018 08:39 AM

June 04, 2018

Leonardo Strozzi

Weekly phpMyAdmin contributions — GSoC 2nd & 3rd Weeks

It’s been three weeks since the beginning of my project. It’s been a real challenge.

2nd week

During my second week I removed all of the php functions Twig extensions. Some of this extensions required a lot of effort because they were used on a template deep in the includes tree.

3rd week

Last week I started to deal with the templates. After defining the directory structure of the templates, I began with the directories that are already in this structure, database, server and table. I finished refactoring the db_central_columns.php file, by melding all getHtml function calls into a new function called getHtmlForMain, and all of its templates, which reduced the number of templates from 5 to 2 templates files, reducing a lot the calls to Template::get() at CentralColumns.php.

This week I’ll continue to refactor the templates on database dir.

by Leonardo Strozzi at June 04, 2018 05:33 PM

Saksham Gupta

Why Text Colour plays a major role in site visibility

It’s my third week of GSoC and I’ve been working on automatically creating CSS files for automated theme generator. While creating different background colours some text colours were more visible than others. After some search I came to know it’s being caused by contrast ratio .

The following image has a contrast ratio of 1.07 so it’s hard to read.

Greater ratio means greater visibility a minimum ratio of 4.5:1 is required because it compensates for the loss in contrast sensitivity usually experienced by users with vision loss and ratios greater than 7:1 is great for users with colour blindness or low visibility. So as I am coming to an end for creating Automated colour backgrounds, I’ll focus on keeping texts with high contrast ratio and also work on creating test cases.

by Saksham Gupta at June 04, 2018 11:05 AM

June 01, 2018

Michal Čihař

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.

Filed under: Debian English phpMyAdmin SUSE Weblate

by Michal Čihař (michal@cihar.com) at June 01, 2018 12:00 PM

May 29, 2018

Piyush Vijay

Week 2 GSoC with phpMyAdmin

Completed 2 weeks of Google Summer of Codes with phpMyAdmin. My main task for the first two weeks was to implement webpack and babel configuration and converting some functions which are globally available into modules which can be imported at times of need. I have changed some of the files with modular structure, now I need to work on making this new structure compatible with existing code.

Major task for this week is to convert the AJAX global object into a module with a global scope in the application so that its instance can be used in different modules and files and making some part of new structure compatible.

Apart from that raised solved one issue regarding Edit Variable in Variables page in this pr.

by Piyush Vijay at May 29, 2018 05:50 AM

Michal Čihař

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.

Filed under: Debian English SUSE Weblate

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

May 28, 2018

Michal Čihař

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.

Filed under: Debian English SUSE Weblate

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

May 27, 2018

Saksham Gupta

Using AJAX to send front-end data to back-end

I’ve completed my second week of GSoC and the main task for this week was to create a form which could send palette data to the back-end to create CSS files which would be used in t he new theme. The main problem was that palette data was in HTML and was being generated dynamically by using javascript.

So I solved this problem by adding hidden input in the form when Submit button is pressed and send that using AJAX. Now my main focus is to assign different colours of colour palette to various elements.

by Saksham Gupta at May 27, 2018 02:01 PM

May 24, 2018

Piyush Vijay

Week1 GSoC 2018 with phpMyAdmin

Sorry for posting the blog this much late. Actually I got stuck in some major problems (errors to be more precise due to some changes) in the code-base so didn’t get enough time to make a blog post.

My major goal for the first two weeks was to transform some of the code-base in the ES6 format but as soon as I started to write the code in ES6 I realised that it is necessary to make some configuration files for webpack and babel so that the trans compiled code can be tested for functionality.

So in the first week I just implemented the basic configuration files for babel and webpack and try to find out what can be the possible new directory structure for js files so that the development and compiled production build files can be placed separately and some find out some basic syntax and standards of ES6 that can be implemented in the revamped code.

Apart from that I was working on this issue in changing the theme raised by me only.

Plans for 2nd week: Understanding the flow of adding js files using php code (existing one) and what changes has to be made for new code and transforming some of the files in ES6.

by Piyush Vijay at May 24, 2018 04:09 PM

May 23, 2018

Leonardo Strozzi

Weekly phpMyAdmin contributions — GSoC 1st Week

I’m posting this a little bit late, because I’m not used to report my work this way, hopefully I’ll get used to it fast.

This week my main goal was to remove Twig extensions that were extending php functions, there were 10 extensions, and by now I was able to remove 6 of them. I’m doing this to prevent that it’s used on future contributions that port the front-end to Twig templates.

During this work, I found some TypeErrors due to the automatic casting removal, and fixed them.

by Leonardo Strozzi at May 23, 2018 09:17 PM

May 22, 2018

Lakshay Arora

Working on second enhancement, week 3, GSoC 2018 with phpmyadmin

Week 3

I’m currently working on the second enhancement,

Importing table from a CSV file

When a table is imported from a CSV file, the default table name is Table ## and default names for the columns are COL ##. Default table and column names

Enhancement-

Set the imported table name to the name of the imported file and column names to the titles of each column in the csv file OR ask the user to enter table and column names.

I was planning to add the feature of setting column names of the table imported from a csv file from the title of all the different columns, but this feature is already present. Now, I’ll be working on some other feature(currently discussing with mentor).

I’m also working on some issues in the issue tracker.

  1. Query > Submit query : Error 500

I’ve found an issue and I’m trying to work on it side by side.

May 22, 2018 12:00 AM

Second enhancement, week 3, GSoC 2018 with phpmyadmin

End of Week 3

I’ve submitted a PR for the second feature - Following new features have been added to the csv import plugin-

  1. For a new import, user can now directly enter the table or database name at the time of import.
  2. Partial import. User can enter how many rows they want to import.
  3. Show table structure edit form when the import is successful(undecided).

I’m also working on some issues in the issue tracker.

  1. (Issue in Changing theme)[https://github.com/phpmyadmin/phpmyadmin/issues/14295]
  2. (preg_match error when clicking Insert or Search tabs)[https://github.com/phpmyadmin/phpmyadmin/issues/14315]

Plans for next weak.

As stated in my proposal, my end sems have started and I won’t be able to work for the next 10 days. From 1st. I’ll be working on the 3rd enhancement.

​(Increase input field width for varchar(255))[https://github.com/phpmyadmin/phpmyadmin/issues/13627]

Enhancement-

In the insert row page, the dimensions of varchar textareas are small, which could be increased. As suggested in a ​comment​, the user appreciated presence of this feature in the earlier version and thus can be re-considered in the current version for a better user-experience.

May 22, 2018 12:00 AM

May 21, 2018

Lakshay Arora

Work done in week 2, GSoC 2018 with phpmyadmin

Week 2

Since my end sems are approaching fast and I’ve been really busy with college projects, It has been really difficult to give 6-7 hours everyday for GSoC.

I’ve implemented the login modal and submitted a PR for review. Although, I’ve added comments at appropriate places to make the review and understanding easier. I’ll be explaining the code in detail.

I’m also working on some issues in the issue tracker.

  1. getRealSize should expect also literals, not only integers This issue seems to be a question which I am discussing in the issue page.

  2. Query > Submit query : Error 500

May 21, 2018 12:00 AM

May 19, 2018

Saksham Gupta

How I am creating automated colour palettes using Colour Theory

It’s been a week since I’ve been working on my Google Summer of Code project with phpMyAdmin and my work for this week was to create a separate page for the tool and add/remove functions in a preexisting colour picker tool. The existing tool was creating some palettes but they were not using colour theory to create palettes usable that could be used directly on websites. I have been focusing on four types four types of colour palettes, Monochromatic, Complementary, Analogous and Triadic.

The most difficulties were faced in Monochromatic and Analogous, in the monochromatic theme the main thing was how the palette should be managed if the hue value remains same and saturation and brightness changes of the base colour. I solved it by taking a range of saturation and brightness keeping the average of them equal to that of base colour. Also the values of saturation and brightness were in opposite orders for further contrast. In Analogous theme the problem was how further should the hue difference be set from base colour for optimal colours , I was quite satisfied with 45 degrees in the end. So in the end of this week I have completed all the colour palettes, the next step would be to start integrating the colour picker tool with back end.

by Saksham Gupta at May 19, 2018 06:08 PM

May 16, 2018

Piyush Vijay

Google Summer of Code with phpMyAdmin — Introducing modern JS features and tools

I’m very happy to announce that I’ve been working with phpMyAdmin this summer under Google Summer of Code program and my project for the same is “Introducing modern JS features and tools” into phpMyAdmin’s code base. The duration of project will be nearly four months (starting April, 23 to August 14).

The project involves introducing package manager for managing modules so that the modules can be updated easily, introducing ES6 into the code base, babel for compiling ES6 to ES5 which the browsers support, webpack for creating minified files which can be served in production mode and eslint for code linting to find out problematic patterns or code that doesn’t adhere to certain style guidelines.

phpMyAdmin’s javascript code is written very well in terms of logic and best practices and very well documented but there are some problems with the current code, many of the variables are globally exposed and the external libraries like jquery are used as a downloaded library. So every time a new release is there, these files need to be replaced with the new files manually.

The global variables can be reduced by using some modern javascript ES6 features like module import and export, block scoped variables and using classes and closures for interdependent files which is not there right now.

The problem of manually updating files can be removed by using a package manager like npm or yarn, which have commands like “npm update” to update the existing modules.

As the javascript code base of phpMyAdmin is very large, it might not be possible to revamp the whole code base in three months, so my major focus will be on bringing the new code with new features in such state that the existing code and the new code can me compiled together and can be used in production.

By the end of GSoC program, I expect to implement the aforementioned tools and features without breaking the build status and consistency of the code base and convert as much of ES5 code to ES6, as possible.

For future(not part of the program): There can be some other features which can be implemented like unit testing of the functions and type check of various variables which will help in reducing and easily identifying errors related to type check.

by Piyush Vijay at May 16, 2018 02:32 PM

Subscriptions

Planet phpMyAdmin aggregates blogs of following phpMyAdmin contributors.

Last updated

May 19, 2019 11:00 PM
All times are UTC.

Feeds

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

Planetarium