Skip to content

Releases: HugoFara/lwt

2.5.0-fork: PHP 8+ and multi-words

08 Jul 14:04
Compare
Choose a tag to compare

This release brings compatibility with PHP 8.1+ and makes multi-words a thing again. This is an important release since it may be the last one solving issues with the merging of the official and the community versions of LWT.

Added

  • Compatibility with PHP 8+!
  • Updated with LWT 2.0.3, solving incompatibilities with PHP 8.1 throwing MySQLI errors.
  • Introducing the new class Term in edit_mword.php. This class is yet to be considered experimental, so expect important changes, but should gradually get used everywhere.
  • insert_expression_from_mecab in session_utility.php. Better name and behavior for insertExpressionFromMeCab (see deprecations).

Changed

  • Composer dependencies updated.
  • The Docker container now uses PHP 8.1 (instead of 7.4).

Fixed

  • For some user, the --secure-priv-file option was still required to be on. This was due to a conflict between PHP and MySQLI authorizations. Thanks to @rc-ops for signaling the successive issues!
  • When deleting a word, it was previously necessary to reload the page to see a visual change.
  • Multi-words insertion fixed (#21). Many thanks to @chaosarium and @Kit1205 for your help with this long, long issue!
  • "Show Sentences" button during words edition was broken since 2.3.0-fork.

Full Changelog

2.4.1: texts imports and statistics fixes

09 Jun 03:44
Compare
Choose a tag to compare

This regular bug fixing version crushes different bugs, especially for texts imports and text statistics. Hope things will run smoother!

Changed

  • Some function signature were not logical in edit_texts.php. These signatures remain untouched for backward compatibility, but the internals were changed.
  • Texts without tag do no longer display a "[]" string next to the title. Applies to both archived and active texts.

Fixed

  • A typo was breaking the feeds count in edit_languages.php, creating annoying notices as illustrated at #35.
  • The error "[1290] The MySQL server is running with the --secure-file-priv option" should no longer appear when trying to save Japanese texts. It was referenced here in issue #34.
  • The "Undefined index: trans in .../bulk_translate_word.php" notice fixed.
  • The "Undefined index: WoText in .../delete_word.php" notice fixed.
  • Repaired long_text_import.php for non-Japanese texts, it was broken since 2.4.0. Thanks to @rc-ops for this issue #33.
  • Text statistics were not displayed when there was more than one text since 2.2.2-fork.

Full Changelog

V2.4.0: fixes, Japanese parsing

23 May 13:21
Compare
Choose a tag to compare

This version 2.4.0 brings fixes to a bunch of annoying problems. Most of all, you should no longer see popups any time you leave a page, and Japanese parsing is now officially supported on Windows.

Added

  • The external dependency for Japanese parsing, MeCab, is now more easily detected on Windows and Linux.
  • Better integration of Docker.

Changed

  • You must not only include pgm.js to ask the user before exiting but also the new function ask_before_exiting.
  • splitCheckText was split into smaller functions.
  • Refactored edit_languages.php with functional paradigm.

Fixed

  • Many pages were asking before exiting while it was unnecessary.
  • Made bigger buttons and uniformed the presentation of edit_texts.php,
    edit_archivedtexts.php, long_text_import.php and do_feeds.php. It solves
    issue #29.
  • Japanese texts were ill parsed on Windows. The issue #23 is now solved!
    @rc-ops、ありがとう〜!
  • The number of texts, expressions and so on was always 0 in edit_languages.php.
  • On Windows, annoying notices were often displayed in edit_languages.php.

Removed

  • The HTML code documentation is no longer included in the dev branch.
  • The unnecessary JS files were removed since they were all merged in js/.

Full Changelog

Version 2.3.0: Docker, TTS, fixes

25 Apr 09:34
Compare
Choose a tag to compare

This release officially introduces a contained version, a new TTS system, and fixes many issues signaled.

Added

  • Commands included in Makefile where transcripted in composer.json.
  • Docker integration! It is done through Dockerfile, docker-compose.yml, .dockerignore and .env files.
  • You can click on a read icon in order to read a word.
  • Text-To-Speech (TTS) Settings!
    • Change the language rate, pitch, or local region for text-to-speech.
  • Early support of local videos, discussed in #9 with @chaosarium.

Changed

  • mbstring and mysqli extensions are now clearly asked for by Composer.
  • The "database update" part of check_update_db in inc/database_connect.php was moved to update_database.
  • Almost all JS goes in one file when minified. This has several reasons:
    • Better browser caching: JS code is downloaded once for all.
    • Easier maintaining: it was difficult to manage which php file was needing which JS script.
    • Consistency: scripts were calling functions that should be imported from other files, making the debugging difficult.
  • Feed wizard changes
    • The feed wizard got a little broken: the "next" button is always active, even if you did not select text and click "Get".
    • It's style was uniformized with your current theme.
  • tts.php becomes text_to_speech_settings.php. As this file was unnused, it is not considered as a breaking change.
  • Refactored all_words_wellknown.php, edit_texts.php. Those pages should load a bit faster.
  • We do no longer load pages in Almost Standards Mode. Unless you use some Netscape browser, it should not impact you.

Deprecated

  • Use clean-doc install of clean in Makefile because it was ambiguous with composer commands.

Fixed

  • Creating the database was sometimes impossible.
  • Database names containing special characters (hyphens, carets, etc...) was not possible.
  • The "I KNOW ALL" button calling all_words_wellknown.php created errors. This file was fixed. Thanks @nghiaphamtm (issue #26).
  • In edit_texts.php, it was not displayed in the barchart when knowing 1 word. Thanks @chaosarium for signaling it (issue #11).
  • Tags were breaking text modification. Issue #12, thanks @chaosarium.
  • In edit_texts.php, unknown words (with status 0), had no abbreviation display between parentheses. It was showing "Unknown ()".

Version 2.2.2, themes fixing

13 Feb 21:29
Compare
Choose a tag to compare

This version brings a lot of small bugs fixes. Themes were particularly affected.

Added

  • A contribution guide at docs/contribute.md.

Changed

  • Updated the jQuery deprecated events. It should have no consequence.
  • Slightly changed the behavior of the CSS/JS minifiers. The relative paths in the return string were different from the ones in the saved file.
  • Regenerated documentation.

Fixed

  • Some AJAX files could not work properly since 2.0.3-fork. It fixes issue #16
    • Refreshing the list of audio files in edit_texts.php works again.
    • Theme in info.html works now.
    • Some other problems may have been fixed.
  • With do_test?text=, the language name displayed instead of "[L2]" was often wrong.
  • $fixed_tbpref was never declared at global scope.
  • Fixed an incompatibility in database_connect.php, splitCheckText with PHP <7.4.
  • Impossible to start bulk_translate_new_words from do_text.php.
  • The audio player does no longer show at the end of the page (DOM node was not closed). Mentioned in #14 .
  • Relative paths in themes were often broken. For instance: no images in audio player. It solves #10 .
    • An explanation was also added on how to add custom images in your theme.
  • Very small errors corrected in some themes.

Deprecated

  • Deprecated a lot of camelCase functions in do_text_text.php to their snake_case counterpart. The behavior of the deprecated functions did not change.
    • camelCase to snake_case: getTextData to get_text_data, sentenceParser to sentence_parser, wordParser to word_parser and mainWordLoop to main_word_loop
    • Typo fixing: getLanguagesSettings to get_language_settings (use singular)
    • Signature changed: echoTerm to echo_term (no return value, no $hideuntil parameter)
    • Name uniformisation: prepareStyle to do_text_text_style and do_text_javascript to do_text_text_javascript.

Full Changelog

Not everyone is a Composer, quicker texts display

07 Feb 22:44
2a6a656
Compare
Choose a tag to compare

This version stops requiring composer for everyone (only for dev), and fix a serious issue causing very laggy texts.

Changed

  • Composer in no longer required for standard users (but is still required for contributing).
  • Updated README.md.
  • league/commonmark becomes a dev requirement (no longer required for everyone).
  • Re-minified jquery.tagit.css, it may have visual consequences.
  • Replaced some jQuery functions by their equivalents. It should have no consequence.

Fixed

  • Calling do_text.php?text= created a database error, it does no longer.
  • Long text were laggy in do_text_text.php since 2.0.3-fork. Some other issues may have been fixed at the same time. See #8
  • Possible insecure PHP string to JS string conversion in do_text_header.php, function browser_tts.

Deprecated

  • The is_mobile function now always returns false.
  • The wordProcessor (do_text_text.php) function was incorrect.
    • It now always return 0.
    • Please use wordParser, sentenceParser and some more code instead.

Removed

  • Removed unnecessary dependencies:
  • The components/ folder was also deleted. It was bundling JS code from composer.
    • It should have been git ignored at least.
    • Its content was unused. The files it was trying to use are duplicated.

Full Changelog

Revamped UI

04 Feb 18:49
Compare
Choose a tag to compare

This version brings a lot of visual changes, new interactions, and sounds!

Added

  • Sounds while testing terms! Related to #3 .
  • New minifier for themes: it is now very easy to create new themes.
  • JS files added to documentation.
  • export.md was imported and adapted from official documentation.

Changed

  • All the do_test*.php part do no longer use frames.
  • All the display_impr_text*.php part do no longer use frames.
  • It means LWT is now mobile-friendly!
  • Regenerated themes.
  • "do_text.php?text=..." is the official way to call texts. The "start" argument is still supported.
  • New and enhanced design for the welcome page (index.php)
  • Enhanced semantic for docs/info.html, and for docs/*.md files.
  • The Doxygen-generated content now uses LWT default style.

Fixed

  • Several database flaws fixed. Now the database should stop rotting with time. See #7
  • It is easier to close the right frames in do_text.php.
  • When viewing the maximum number of results per page (edit_text.php for instance),
    the maximum value was shown as a floating point value.

Removed

  • Floating Menu from JTricks.com was unused since 2.0.4-fork. It is now deleted.

Full Changelog

Get Ready for Download!

09 Jan 19:14
Compare
Choose a tag to compare

This is the first release considered as stable, meaning that security issues, visible bugs, or any misbehavior got fixed the best I could.

Added

  • Badges in the README.md providing up-to-date information on the state of the project.
  • When reading, right frames are hidden and will slide into screen when needed.

Changed

  • PHP >=7.4 is now the official PHP version.
  • Refactored the do_tests* pages.
  • Better CSS minification.
  • Code base inconsistencies and security issues fixed (level 5 and above psalm errors fixed).
  • Code is much more strongly typed (~80% of the code base). Level 4 psalm errors partially fixed.
  • GitHub continuous integration reviewed.
  • Regenerated documentation.

Fixed

  • composer.json is now working! Thanks @chaosarium for signaling this issue #4 !
  • Since 2.0.3-fork, it was difficult to get annotations. This is no longer the case.
  • tag-it, jquery-hoverintent, and jquery-xpath are now copied from raw code, and no longer integrated by composer.

Removed

  • Effectively dropped support for PHP <=7.

Full Changelog

Full-composer integration, read texts on mobile

03 Dec 14:57
Compare
Choose a tag to compare

This version brings a better composer compatibility, and starts revamping mobile compatibility.

Changed

  • Starting to refactor for 2021 HTML!
  • Much less iframes for reading texts.
  • Now you can read texts on mobile without the experimental mobile LWT.
  • Texts can be read using "focus mode" on most browsers.
  • Updated documentation (expanded and refactored).
  • Composer is now the recommended way to download lwt.
  • PHP_codesniffer is now recommended, and no longer dev-required.
  • Refactored many parts of the code, that gets easier to read.

Removed

  • composer.phar and composer.lock are now git ignored.

Full Changelog: v2.0.3-fork...v2.0.4-fork

v2.0.3-fork

26 Nov 15:47
Compare
Choose a tag to compare

Serious maintaining is back!

This version should be the stable merge between official v2.0.2 and community maintained 1.6.31-fork.

Added

  • Show Learning translation setting.
  • README.md.
  • Code documentation.
  • Automatic text-to-speech.
  • Integrating Composer to manage dependencies.
  • Issue templates for GitHub.
  • Markdown integration in PHP.
  • Video player for texts.
  • Makefile to simplify workflows.

Changed

  • MeCab is now the default way to learn Japanese.
  • JS and CSS are now minified.
  • Code liniting.
  • Important code refactors.

Full Changelog: v1.6.31-fork...v2.0.3-fork