2.6.0: a last stand
This is and will be probably my biggest LWT release. It fixes many different topics, so please take your time looking at it. Once again, great thanks to @jzohrab for it's incredible support toward this release!
Added
- Frames resizing is back! The text reading and test interfaces updated in several ways. Based on several suggestions such as #60.
- The desktop interface is now much similar to what it was before 2.2.1-fork.
- The mobile interface for texts unchanged (2.2.1-fork to 2.5.3-fork).
- You can resize frames on desktop.
- Many new functions officially introduced in PHP and JS. Some of these function were already present in the code but undocumented.
Changed
- UX: Faster testing: you do no longer need to enter "Space" first for speed testing, except for status down and change. Related to #71.
- UI:
- Do no longer show "[]" near words when they are no tags.
getWordTagList
behavior changed (inc/session_utility.php
). - Tests have a better general aspect thanks to CSS cleanning.
- Do no longer show "[]" near words when they are no tags.
- PHP:
do_test.php
,edit_texts.php
,edit_words.php
andset_test_status.php
now explicitly require a running session. They were silently failing before this release.save_setting_redirect.php
moved toinc/save_setting_redirect.php
.- Psalm static code analysis of all PHP files.
- We use "EOP" for end-of-paragraph markers instead of misleading "EOS" (MeCab).
- Slightly changed how a connection is established with SQL. It makes messages more relevant when SQL is not running.
- Not Japanese texts now always use the PHP parser. The SQL parser is no longer used.
- JS: Some deprecated functions
escape
andunescape
were replaced by modern equivalentsencodeURIcomponent
anddecodeURIcomponent
. This may lead to changes in cookies, notably making them work better. - DB: the NO_ZERO_DATE mode is no longer required, see #78.
- In the
words
table, replaced the default timestamp0000-00-00 00:00:00
by0000-00-00 00:00:01
. - The demo database underwent the same change.
- In the
- Updated
composer.lock
. - Docker: more default options, documentation updated.
Deprecated
do_test_test_css
indo_test_test.php
is deprecated since it was causing display issues. Its CSS rules were trimmed.
Removed
- The ability to use a dictionary with a specific encoding, introduced in 1.0.2, is being removed. It was making things overwhelmingly complex and caused issues, as signaled in #58. Adapted from PR #59.
Fixed
- Docker:
- Docker integration repaired (#37)! Huge thanks to @hakuro-jp for the initial help and @darkone23 for the final solution. Without you two I would have long given up with Docker.
- Docker continuous integration is back as well due to a rewrite of the workflow.
- Texts:
- The audio player was no longer working since 2.1.0-fork since the play button was hidden.
- Save text position (
inc/ajax_save_text_position.php
) was broken for all texts. This is fixed. - Right frames should hide automatically but they often don't #61. Merged PR #62.
- Japanese parsing is now better, and uses PHP only (the local_infile SQL functionality is no longer used). Related to PR #43.
- One-word not-Japanese texts do no longer result in a crash (#80), whoever uses them.
- Tests:
- JS:
- You should no longer see annoying console messages of "cClick" crashing on "obj is null".
- PHP:
- Type fixes thanks to psalm:
get_first_value
documentation updated since it was also returningfloat
andint
.get_similar_terms
insimterms.php
officially returns int.
- Inconsistent option in
inc/ajax_save_setting.php
.
- Type fixes thanks to psalm:
- UI
- Audio in
edit_texts.php
was never shown. - When adding text, the user was ask to create a
media
folder in...
, corrected to..
.
- Audio in
- DB:
- For some users it was impossible to install the default database due to the use of a ZERO date (#78).
- Deleted wrong database instructions
ADD DROP INDEX TiTextLC
alteringtemptextitems
inupdate_database
ofdatabase_connect.php
.