-
Notifications
You must be signed in to change notification settings - Fork 0
/
NEWS
5384 lines (3735 loc) · 233 KB
/
NEWS
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
Version 4.0.0 (December, 8th 2022)
------------------------------------------------------------------------
* Hide modemaintain "non-remembered login info" inside a toggle info
* Improve [ pure, bootstrap4, clean-blog ] themes using flexible viewpoint [%]
image max-width styles per default, combined with the responsive images
plugin, which adds size designed srcsets images to normal image tags.
NOTE: Styx, using the "internal" variation formats, does a better job by
file size, so you do not actually need the mentioned plugin for
image responsive sizes! Using both might lead to more issues.
* Improve [ pure ] theme comment body field display for current font
* Fix a serendipity_plugin_html_nugget non-production error mode thrown
visitor error for PHP 8.1+.
* Upgrade custom CKEBasic asset to 4.20.1 (b520aa2b40 revision)
https://ckeditor.com/cke4/release-notes
* Upgrade [b5] template assets to new Bootstrap v5.2.3 release.
See changelog at https://github.com/twbs/bootstrap/releases/tag/v5.2.3
and https://blog.getbootstrap.com/2022/11/22/bootstrap-5-2-3/
* Improve plugin html nugget areas for markupeditor/type assignments
* Improve entries list SQL query rtrim() handler for a non-working case
* Fix [ entryproperties ] plugin SQL conditions order for cache relations
Version 4.0-rc1 (November, 30th 2022)
------------------------------------------------------------------------
* Improve scope of [ bbcode ] plugin variables for [ staticpage ] entry forms
* Improve [ s9ymarkup, emoticate ] plugins for now better used consistency
of comment escape refactoring.
* Deny mixing of PLAIN TEXT editor default buttons in the entry forms when
used with markup editors like markdown or textile plugins.
PLEASE NOTE:
Set a manually added serendipity variable [*] into your local serendipity
config file user area, if you want to use the previous PLAINTEXT buttons in
your backend entry forms again for this case.
[*] $serendipity['strict_markup_editors'] = false;
* Improved _printComments() hooked comment-data for nl2br linebreaks
* Added comment data dismark (escape) flag to NL2BR markup parsing
Version 4.0-beta2 (November, 17th 2022)
------------------------------------------------------------------------
* Fix some PostgreSQL connection issues with the wordpress-pg importer
* Fix some spamblock plugin text log file + item preparations for PHP 8.1+
* Fix a logic bug in spamblock plugin trackback/pingback host/ip verification
* Fix spamblock plugin filter verification for htmlcomments
* Fix spamblock plugin text file log messaging
* Improve all core themes for the commentsearch plugin up from version 2.0.0;
Handing out comment search results on entries with no match.
* Fix and improve spamblock Captchas for the frontend since Styx 3.9.0, when
the backend uses the dark mode. Frontend Captchas are white-backgrounded
only, while the backend serves both.
* Fix non-PDO SQLite flavors for PHP 8.1 preg-regex with str_replace on NULL
* Catch PDO DB flavored PDOException to die() on re/connection() failures
* Improve both PostgreSQL DB db_schema_import() flavors for int(2) to int2
replacement. (Example: statistics event plugin table installation)
* Fix for known-to-fail (silent) SQL PDO selects on all supported databases,
while up from PHP 8.0 the default behaviour changed and set to EXCEPTIONS.
Now PDO mimics the MySQLi driver approach also for the backport setting.
* Improve SQLite and MySQL search entries SQL for [*] wildcard usage
* Fix for PostgreSQL ILIKE search entries SQL fallback in the entries API
* Fix PostgreSQL to_tsvector() SQL search queries in FRONT- and BACKend
* Regression fix in [ s9ymarkup, emoticate ] plugins for escape refactoring
(see below).
* Fix PostgreSQL LIMIT OFFSET settings before having enough entries for
pagination in comments vs entries lists.
* Improve comments SQL queries for PostgreSQL being picky on concatenated
'AND 1' fake additions.
* Improve the entries edit form with our RELOAD_THIS_PAGE notice for submits
of the freetag "remove all" checkbox action.
* Improve message catch of iMySQL thrown db connection issues
* Better die() on PostgreSQL db connection issues
* Improve serendipity_updateSingleMediaProperty() SQL query for PostgreSQL
since updating mediaproperties table fields that don't (yet) exist will
fail, so we need a explicit known-to-fail serendipity_db_query set here.
* Improve serendipity_fetchImagesByName() SQL query for PostgreSQL and fix
its naming doubles conditional return case checkup.
* Improve db/postgres.inc for PHP 8.1+ fixup, while using the (undeclared)
default connection is deprecated.
* Remove deprecated " $is_xhtml, $head_version " Smarty variable assigns.
Old themes [ bulletproof, photo ] were fixed for this.
Version 4.0-beta1 (November, 2cd 2022)
------------------------------------------------------------------------
* Fix searchquery regression of ep orderkey 'frontend_fetchentries' bugfix
* Raised minimum required PHP version to PHP 7.4 for installations, since
PHP 7.3 security End-Of-Life support ended in Dec 2021.
* Bugfix issue within backend comment answer, using a standard themes
fallback template file.
* Improve comment summary pagination styles in [ boot, b5blog, b46 ] themes
* Improve the spamblock plugin for PHP 8.2
* Refactor normal, plain text comment body escape parsing vs allowHtmlComment
configuration (true) and vice versa. Atom feed will follow this practice.
Also improves for hooked $eventData data (related to the (gr)avatar and
s9ymarkup plugins).
* Update serendipity entity mappers to current PHP requirement
* Better sanitize comments array item parts to avoid double encoding of HTML
ENTITIES. Fixes wrong behaviour when stored as entities.
* Fix & finish import class method getCharsets() to return sorted as advised
* Refactor WordPress importers [*] in special for the changed password hashing
since Serendipity 1.5 (and so forth) making it incompatible with WP password
storage. Now, NEW passwords are set for imported WP users.
[*] Fix an old copy&paste bug with adding space to key entry_id name
[*] Subject to reservation...
- Pushed a porting upgrade to
- b2Evolution ("rather vague !")
- phpBB ("shaky candidate !")
- Blogger API (giving up old_blogger)
- Geeklog
- Generic (WP) RSS
- SMF (Simple Machine Forum)
- TextPattern CMS
importers.
- Fixing up as End-Of-Life deprecation updates
- LiveJournal
- MoveableType
kept a little longer, to see if they can be used for a fresh version
upgrade. In the old days both had millions of users each, but their
companies were sold and monetized and then moved to products with
graduated license fees, with loss of their market relevance.
- Removed several importers whose ORIGINS were given up long ago:
- bblog, - bmachine (boastMachine),
- lifetype, - nucleus, - sunlog.
- Removed importers actually having successors, but were found too heavy
for an untested port:
- nuke [ phpNuke ] (OpenPHPNuke, PragmaMx, Xoops and Zikula)
- pmachine [ pMachine Pro] (ExpressionEngine).
- Removed importers which state of ORIGIN was unclear and in question
or whose "aged" necessities seemed too personal only for today:
- pivot [ from PivotTable by Microsoft ? ]
- voodoopad [VoodooPad from Primate Labs, owned by Apple;
A personal wiki application ? ]
Last state of removed importer files, in case anyone needs them as a copy
for future(s). Otherwise, recommended for lookups are those files that still
persist supported in Serendipity Styx.
In any case, please NOTE, additionally added state of status:
[-] marked files have no users migration!
[x] marked are those, which user import section is still wrong for today!
[+] the old_blogger.inc file that has a current user migration already set!
[-] https://github.com/ophian/styx/blob/0526213577536668365486c9b40e15b4a5f08c47/include/admin/importers/voodoopad.inc.php
[-] https://github.com/ophian/styx/blob/e836cb711e7839861e1a9f146ac0e88ae18492e2/include/admin/importers/pivot.inc.php
[x] https://github.com/ophian/styx/blob/c17fde42a4c58163069956efda983a6974f280a0/include/admin/importers/bblog.inc.php
[x] https://github.com/ophian/styx/blob/ed14b561271b0d11a9fa89dcb92ad680a7be365c/include/admin/importers/bmachine.inc.php
[x] https://github.com/ophian/styx/blob/cfac8737887a5b543751fbef95ea7580ab5505f5/include/admin/importers/lifetype.inc.php
[x] https://github.com/ophian/styx/blob/17768010f7919fc737a7a0cecf85a4647f04c341/include/admin/importers/nucleus.inc.php
[x] https://github.com/ophian/styx/blob/44f397ef6da13fe68f58247a51daeec522d0c14a/include/admin/importers/nuke.inc.php
[x] https://github.com/ophian/styx/blob/1f4226c23140af2fbdac602d5347cd304e2dc814/include/admin/importers/pmachine.inc.php
[x] https://github.com/ophian/styx/blob/16a12e7e502a191ea01298ff5344fe946998e7eb/include/admin/importers/sunlog.inc.php
[+] https://github.com/ophian/styx/blob/2d448d6aef4e190fd12bc9e98f61047c474b5b04/include/admin/importers/old_blogger.inc.php
* Improve and fix generic importer class for PHP 8.1 and silenced (known to
fail) native (MYSQLi) database query checkups.
* Add message "title" for DRAFT type entries backend previews via list
* Generate strong random & secure password suggestions for user forms
* Upgrade custom CKEBasic asset to 4.20.0 (cb4a59c665 revision)
https://ckeditor.com/cke4/release-notes
* Update bundled-libs/SimplePie to v.1.7.0 as a bundled single-compiled file,
including the Styx fixes. The previously used v.1.5.6 with multi files will
be completely removed on upgrade per upgrade task.
https://github.com/simplepie/simplepie/releases
* Update [ b5blog ] theme for new Bootstrap v5.2.2 release
* Upgrade [b5] template assets to new Bootstrap v5.2.2 release.
See changelog at https://github.com/twbs/bootstrap/releases/tag/v5.2.2
and https://blog.getbootstrap.com/2022/10/03/bootstrap-5-2-2/
* Fix serendipity fetchPrintEntries smarty API to initialize parameter
fallback sets for true, when calls of [full, joinauthors, joincategory,
skip_smarty_hooks] parameters were set to false, which never got caught.
Same for serendipity showCommentForm [showToolbar, moderate_comments]
parameters.
* Fix entryproperties plugin 'frontend_fetchentries' conditions for orderkey
mode calls including DRAFTs, as a regression Methusalem bugfix.
* Add/enable entries API missing $full parameter check in the _fetchEntry()
function and reduce redundant parameter calls in core. Plugins will follow.
* Improve backend entries list skipto_entry filter for keyboard ENTER submit
* Improve [ pure ] standard theme for custom permalinks add_footer and for
plugin calendar styles.
* Rename function _serendipity_send() for PING requests to serendipity_send().
No official plugins or other file cases were found that ever used it outside
its natural core incidence. So there should not really exist a breakage.
Assumingly this _Prefix was added in the very early days to make somehow
clear that serendipity functions following this scheme point out into the
wild, but it ended to be a lonesome traveler. Welcome back!
* Do not allow [ pure ] theme entries_footer hook in (full) archives/summary
pages w/o having a date range.
* Merge Smarty [Sync 4.2.1] release
* Add archives of category to the [ pure ] theme archives title, if in
* Add some [ pure ] theme .post_content table default styles - expanding the
head and body rows and cells equally.
* Upgrade [b5] template assets to new Bootstrap v5.2.1 release.
See changelog at https://github.com/twbs/bootstrap/releases/tag/v5.2.1
and https://blog.getbootstrap.com/2022/09/07/bootstrap-5-2-1/
* Add MediaLibrary picture container srcset filesize comparison to scale/
properties task page previews.
* Fix spamblock plugin filter(s) for regular expression matches
* Fix (backend) categories category image preview when not having a WebP
variation format
* Update templates assets jQuery lib to 3.6.1
https://blog.jquery.com/2022/08/26/jquery-3-6-1-maintenance-release/
* Improve entryproperties plugin (loop filter) for entryform disable_markup
selection by removing plugins without any or empty markup relation.
* Improve plugin installations for the odd "flash of unstyled content" using
a temporary stored $_SESSION variable for install-to-configuration success
messages.
* Fire new waitingspin "busy"-Icon toggle on Plugin install/update
* Remove outdated Internet Explorer IE class suffixes in [ next ] theme
* Add new function to convert strftime() date formats to the dateTime
Interface successor up from PHP 8.2. This PHP version requires the
intl/icu extension loaded.
* Upgrade to Smarty 4.2.0 library including all Serendipity Styx tweaks and
further improvements for PHP 8.1 / 8.2.
Version 3.9.1 (July, 31st 2022)
------------------------------------------------------------------------
* Fix an implemented type error bug with 3.9.0 resulting in a thrown MYSQL
EXCEPTION with certain PHP versions, when writing changed configuration
values to the database.
* Fix another Methusalem bug in the plugin API remove_plugin_value() method,
which probably never worked as desired since Plugin configuration name
items are most commonly single words. We now use this strict so the given
array name has to match.
Version 3.9.0 (July, 28th 2022)
------------------------------------------------------------------------
* Fire new waitingspin "busy"-Icon toggle on Plugin updates checks too
* Upgrade custom CKEBasic asset to 4.19.1 (445cf24ebd revision)
https://ckeditor.com/cke4/release-notes
* Upgrade [b5] template assets to new Bootstrap v5.2.0 release.
See changelog at https://github.com/twbs/bootstrap/releases/tag/v5.2.0
and https://blog.getbootstrap.com/2022/07/19/bootstrap-5-2-0/
* Upgrade [b4] template assets to new Bootstrap v4.6.2 release.
See changelog at https://github.com/twbs/bootstrap/releases/tag/v4.6.2
* Ajaxify the addVariations per item request and to fall back where started
* Removed MS Internet Explorer helpers in the backend javascript
* Refactor serendipity.deleteFromML js single media delete dialog actions
adding an additional front-end dialog before the image delete confirmation
to separate all image and image variation purges only. This allows us to
simply cleanup Variations per MediaLibrary item to be able to rebuild them
by the new conditional [+] icon afterwards. IN EXAMPLE, most of them have
WebP variation occurrences already, but you want them or singular items to
offer AVIF expressions too. (This makes the file system "handwork" note
down below in the [+] icon description obviously obsolete.)
* Add new image processing "busy"-Icon to [+] icon action too
* Refactor generating additional image variations by adding single image
variations directly from MediaLibrary image items toolbar by a [+] icon,
replacing the last [image-of] variation link icon in case.
This only is available, if:
- the image is not a webp/avif image itself,
- has no variation (like webp) already set,
- is not a hotlink (external) image file.
More fine-graining would make this approach way too complicated, since this
is for consistency or single image requirements only.
So - apart from upload case and some special syncs - we now have either the
- single image run OR
- the maintenance image section bulk conversions.
Since the latter - especially when including AVIF encoding - is NOT a task
for every server and its given resources, you can use additional AVIF
variations only for new image uploads OR when you personally remove that
specific image path set .v/***.webp variations (full/thumb) in the file
system yourself. In that case the reload of your MediaLibrary will add the
new [+] icon, mentioned above.
JUST NOTE:
If your blog has used WebP variations already and you then enable
additional AVIF for PHP 8.1/8.2, you can happily live without doing
any additional conversion on old data.
* Improve [ styx ]-theme media properties page CSS styles for EXIF data and
responsive fluids.
* Extend image configuration ENABLEAVIF_DESC by issue solve up from PHP 8.2
* Improve MediaLibrary media properties form submit by new "busy"-Icon too,
especially when doing media format changes.
* Improve MediaLibrary scale image form by new "busy"-Icon too
* Improve MediaLibrary image upload form by adding the new "busy"-Icon too,
in special for bulk uploads and slight longer AVIF compression wait time.
* Improve MediaLibrary image rotation (background action related) wait time
by a pulsating "being busy"-Icon.
* Restore and fix the reloadImage javascript function of the MediaLibrary
rotate image actions for the picture containers supported Variations usage.
REMEMBER: If using the additional AVIF image variation support this starts
fully working up from PHP 8.2, since PHP 8.1 (only) was limited
and rotation/scaling were restricted in use and therefore closed.
You need to be aware that these image manipulations take a little
longer with AVIF, so you need some more seconds of patience.
* Fix serendipity_scaleImg() where the (AVIF) workaround check accidentally
overwrote the new scaleTo dimensions since Styx 3.6.0.
* Drastically improve performance for generating the MediaLibrary image
displayList, when NOT having enabled the onTheFlySynch (image) configuration
option.
PLEASE: Read the enhanced description info of this option to get known why
and when.
* Improve users panel list by added entry count link for maintaining activity
* Improve Maintenance ML Sync case for Variation message returns
* Improve spamblock plugin backend preview Captcha for 'dark_mode' setting
* Fix and improve spamblock plugin backend preview Captcha on PHP 8.2
* Prepare bundled-libs/Smarty for PHP 8.2 deprecations of dynamic properties
and the HTML-ENTITIES flag.
* Convert utf8_encode/utf8_decode to mb_convert_encoding() for PHP 8.2 / 9.0
* Add missing LANG_CHARSET UTF-8 case to the decode method of the remoterss
sidebar plugin.
* Improve [dark-theme] for trackback details and comment_content text coloring
in the [ pure ] standard theme.
* Upgrade custom CKEBasic asset to 4.19.0 (c08cfedb60 revision)
https://ckeditor.com/cke4/release-notes
* Add some default [dark-theme] styles for the FAQ event plugin Q/A frontend
to the [ pure ] standard theme.
* Improved backend comment(s) list comment body toggle(s)
* Fix blank page issue with serendipity_admin_image_selector when missing
directory access permissions.
* Improve the plugin API and other core classes for PHP 8.2 deprecations of
dynamic plugin properties.
* Improve cores MediaLibrary mlorphans event plugin for the maintenance tasker
* Add another multi select value to the spamblock maintenance cleanspam reasons
* Improve changelog plugin debug log file purges
* Add maintenance page toggle info for column block sorting behaviour
* Fixup some last remaining and in PHP 8.2 deprecated set "${}" style string
interpolations in core files, scheduled for removal in PHP 9.0.
* Fix PHP 8 warning for erroneous plugin resources returning a bool type
* Fix shared installations for tokenized deployment installs
* Add PHP ready plugin_userprofile.tpl template file to [ default-php ] theme
* Improve UPGRADER version redirector for modemaintain and coloring
* Remove outdated Internet Explorer IE class suffixes in [ 2k11 ] theme
* Improved backend pinned entries to follow filtered entries and fixed pinned
assignment for multi pinned entries.
REMEMBER: Such actions react lazy!
Pinned entries are cookie stored values and always need a (page)
request to get written and at least a second to get read out.
* Add CSS depth indents for staticpage plaintext trees to the [ pure ] theme
for additionally added plugin_staticpage_sidebar.tpl template file.
Version 3.8.2 (April, 12th 2022)
------------------------------------------------------------------------
* Upgrade custom CKEBasic asset to 4.18.0 (5fe059002f3 revision)
https://ckeditor.com/cke4/release-notes
* Add RELOAD_THIS_PAGE notice to configuration submits
* Fix installers serendipity_check_rewrite() function to select mod_rewrite
when available as announced. It never did.
* Add "in category" C{n}-shortform to plugin_archives sidebar title, if in
* Improve entryproperties groups and users selection by ACL warning info
* Bugfix entryproperties groups and users entry access re-sets, not properly
resetting the access values for changed frontend access.
* [Sync S9y] - Bugfix entryproperties empty value issue with multi-authors
* Define a new permalink PATH_AUTHORS constant from permalinkAuthorsPath
serendipity global and/to fix multi-authors GET routing requests.
* Remove unused bootstrap sourceMappingURL in templates/_assets to avoid
browser notices.
Version 3.8.1 (March, 20th 2022)
------------------------------------------------------------------------
* Fix preview_iframe template for [ bootstrap4, clean-blog, skeleton ] themes
* Fix [ timeline ] theme for various issues
* Fix empty search term type change regression error for PHP 8
* Sync Smarty security fixes to Styx 3.1.39-dev-10
* Fix $serendipity['db_server_info'] for MariaDB prefix with PHP 8.0.16+,
to get the correct SQL template for install.
Also adds some extra conditioning for other table index key installs, ie.
for the spamblock plugin table.
* Improve s*_approveComment() for PHP 8.1 deprecation and PHP 9
* Fix PHP 8 warning on SQL back check for moderation set of 1st comment
* Fix DB SQL installation for ORACLE MySQL >= v.5.7.7 regarding InnoDB key
length to install the non-cut (keys) origin SQL file (#20).
* Fix MYSQLi DB installation changed 'storage_engine' variable for ORACLE
MySQL versions >= 5.7.5 and set InnoDB as used default engine (#20).
Version 3.8.0 (February, 28th 2022)
------------------------------------------------------------------------
* Fix trackback link URL regex matching for possible variation fallbacks,
since that IS the REAL (origin image) URL and should get referenced.
* Add UNIQUE INDEX over both authorgroups table fields to avoid duplicates.
Also added to upgrade tasks.
* Improve backend entries form to remove filters if no categories were defined
* Fix MediaLibrary synchronization by user action via Maintenance Image Sync
first and second option for generating fullFileVariation images when having
added new images to the uploads/ directory by hand (FTP).
* Fix configuration set automatic 'onTheFlySynch' MediaLibrary synchronization
* Upgrade custom CKEBasic asset to 4.17.2 to cb93181c83 revision
https://ckeditor.com/cke4/release-notes
* Use upload filenames uniquely named only, by the new s*y_fetchImagesByName()
function, when there already are "upcounted sibling" filenames, regardless
their MediaLibrary directory position. This fixes another Methusalem "bug"
allowing to have identical named media items by filename in different
directories, which could have destroyed certain image operations, synchron-
ization or moving/renaming tasks. Please, better check your images by the
MediaLibrary filter for possible duplicates and rename them uniquely via
the rename task tool. This also fixes and alerts into the media 'rename'
action to avoid possible duplicates.
* Fix and add MediaLibrary auto synchronization for manually added images,
not able to create the image Variation file types.
* Fix [ dude ] theme main blocks render expanding height in responsive views
* Fixed some variable defines and init checks in persian calendar for PHP 8
* Improve [ pure ] theme styles for post content iframes on mobiles
* Fix and improve /summary/ permalink by arguments - fixes and enables
/archives/summary.html
/archives/summary/P2.html [...]
/archives/2020/summary.html
/archives/2020/summary/P2.html [...]
/archives/2020/10/summary.html
alike entries summary pages.
The internal summary fetch limit for entries paging is hard set to 25 items
per page; Uses 24, if the configured entries fetchLimit already is set to
25, to be independently unique. [*]
This is different to the $serendipity['CBAfetchLimit'] global - introduced
in Styx 2.6 - which handles comments_by_author archive pages and can be set
to your preference.
This currently belongs to 'gregorian' calendar dates (checked) only, while
'persian' needs a "real life" check first.
All core themes [ 2k11, b46, b5blog, boot, bootstrap4, clean-blog, default,
default-php, next, pure, skeleton, sliver, timeline ] have been touched to
support this in their own "archives_summary.tpl" template file, while theme
{ default ] also works for themes running the fallback cascade.
(*) Same hardcoded core approach as the 99 item pagination break in freetag
(enabled) taglist summary entries up from v.3.67, which is different, since
it wants to show all entries in once, but needed a page break definition for
cases. Remember, the "pure" theme has it build-in, when enabled in freetag.
* Fix wrong description of /last_X/ URI argument for /comments/ summary pages,
which is last X days, NOT last X comments.
* Improve comment filters for strict 'approve', 'confirm' and 'hidden' set
search selects and for the list markers, including new lang constants.
* Improve [ styx ] backend theme [dark-theme] for link-out-to-frontent styles
* Improve [ pure ] theme styles for various plugin actions
* Add [ pure ] theme sub-category depth selector to category template
* Fix another Methusalem bug in routing a search request
* Add [ pure ] theme search search result styles
* Add on page/of page info to [ pure ] theme search result header message
* Add new PAGE language constant
* Improve [ pure ] theme _entryFooter for label item : value consistency and
for freetag taglist and its possible paging.
* Sync Smarty PHP 8 fix to Styx 3.1.39-dev-9
* Complete the [ pure ] theme, adding the special cased media_showitem template
file. Additionally added to [ b46 ] and the [ boot ] B5 pool theme too.
* Improve MediaLibrary back button link in image scaling page to not acciden-
tally upload image(s) again by using javascript history.
* Improve [ styx ] backend theme [dark-theme] staticpage navigation color styles
* Fix images API of _convertThumbs() to rename $oldthumbnail to $newThumbnail
* Fix [ pure ] theme default styles for DSGVO when not in 3-column mode
* Improve serendipity_die() page styles
* Add a warning removing the permalink %id% variable
* Simplify [ pure ] theme [dark-theme] conditionals and fix button preset
Version 3.7.1 (December, 31st 2021)
------------------------------------------------------------------------
* Add missing freetags/backlink footer assets for freetag Smarty extend case
to the [ pure ] themes entries.tpl file.
* Improve [ pure ] theme scrollbar style for webkit/moz switching the dark mode
* Bugfix backported MYSQLI_SQL_EXCEPTION regressions in PHP 7: "Incorrect integer
value: '' for column entry_id" in spamblock Plugin logging, preventing success
with contactform alike sent form calls.
Version 3.7.0 (December, 21st 2021)
------------------------------------------------------------------------
* Improve [ pure & ckebasic ] switching the light/dark mode on CKEbasic forms
related to browsers prefers-color-scheme: dark startup default settings and
the session stored chosen current mode.
* Remove [ pure ] theme defining js baseURL for CKEDITOR [dark-theme] related
internal path configurations.
* Workaround [ pure ] sticky mode coloring switching the light/dark mode on
CKEeditor textarea fields without a page reload.
* Change [ pure ] .dark-theme class selector prefix to the new data-attribute
for stringent simplification.
* Add [ pure ] dark-theme via data-attribute for scrollbar colors
* Improve [ pure ] dark-theme button for devices
* Improve [ pure ] dark-theme styles for better contrast and depending colors
* Improve [ pure ] dark-theme styles for buttons and some plugin colors
* Move [ pure ] theme dark mode scriptlet to pure.js
* Improve [ pure ] dark-theme styles for serendipity_date selector, comments
and comments summary pages, the social plugin shariff buttons and some more
code hljs selector highlight styles.
* Better check the not set new AVIF option variable on upgrade
* Fix non-initialized file hotlink array key in images API *_prepareMedia()
* Fix a pdo-sqlite PHP 8.1 Notice issue
* Fix minor encoding issue with 3.7-beta1 upgrade task notifier
Version 3.7-beta1 (December 6th 2021)
------------------------------------------------------------------------
* Fix [ b46, b5blog, boot, dude, psg, pure ] themes for Rich Text Editor
contactform textareas. PLEASE NOTE: Rename plugins "URL shorthand name"
option to "contactform" to make this work.
* Allow frontend Rich Text Editor dark mode for [ pure ] theme dark mode
* Add [ styx ] theme login page dark mode based on backend Personal Preferences
* Add a public dark-theme mode to the [ pure 2020 ] Standard theme
* Remove old postgres SQL db_query SET WITH OIDS support without update. So
use a more current version up from 10.
* Fix and improve AVIF for bigger images with GD library for the upraised PHP
memory_limits and for default quality settings with GD.
* Add new "enable AVIF" image configuration option to wisely "secure" AVIF
Variation usage on demand up from PHP 8.1. While being recommended to test
and to use this new feature, this may as well overwhelm some Servers given
resources for encoding. YOU play; YOU decide!
WebP Variations up from Styx 3.0 did not ask you, since that is a mainstream
feature today. AVIF - for the time being - will be the same. In the meantime
this is to be enabled per option. Read the options info description and the
related blog entry at
https://ophian.github.io/2021/11/26/Serendipity-Styx-AV1-Image-File-support/
* Trying to fix a rare case media_grid/theme_grid behaviour in the backend
doing nothing w/o reload.
* [Security] Upgrade custom CKEBasic asset to 4.17.1 to f6dd30807a revision
https://ckeditor.com/cke4/release-notes
* Remove outdated Series 1 Rich-Text-Editor checkups in serendipity_styx.js,
which were set deprecated with Serendipity 2.0 until Styx 3.0.
The only possible supported Rich-Text Editor other than the recommended
CK-Editor default(s) is a custom TinyMCE by plugin with some manual work.
* Add ckebasic asset HTML Quote Element to config.extraAllowedContent for ACF,
e.g. <div class=""unique">
... <q lang="de-ch">Sie sagte <q>es geht mir gut</q></q> ...
</div>
with CSS
.unique :lang(de-CH) {
quotes: "\00AB" "\00BB" "\2039" "\203A";
}
* Fix media_showitem.tpl template for PHP 8 in [ default, 2k11 ] themes
* Improve [ pure ] theme CSS media gallery img comment containers for cases
* Add all themes default overflow-wrap to image comment txt containers by
style_fallback.css
* Improve AVIF quality setting for bigger images to not error on color planes
failures.
* Set upload origin AVIF Variation curtailment at 14 MB for encoding times
* Improve reducing quality dimension range filesizes for WebP with ImageMagick
* Improve images API maintenance image tasker - to rebuild image variations
only when system is found ready for it.
Version 3.6.4 (November 10th 2021)
------------------------------------------------------------------------
* Bugfix backported MYSQLI_SQL_EXCEPTION regressions in PHP 7: "Incorrect integer
value: '' for column comments" in entries API.
* Changed CATEGORY_READ_WRITE_ACL_DESC to PERMISSION_READ_WRITE_ACL_DESC
* Additionally use CATEGORY_READ_WRITE_ACL_DESC info in media directories form
for ACL permission access restrictions.
* Fixed js error on backends commentform previews
* Add missing dark theme colors for PLAIN editor comment info fields
Version 3.6.3 (November 5th 2021)
------------------------------------------------------------------------
* Fix error in javascript snippet for codehiglight info tooltip
* Add new info CATEGORY_READ_WRITE_ACL_DESC to categories form for possible perm
access restrictions.
* Bugfix backported MYSQLI_SQL_EXCEPTION regressions in PHP 7: "Incorrect integer
value: '' for column artifact_id and groupid" in ACLGrant config API.
* Bugfix the 3.6.1 fix
Version 3.6.2 (November 4th 2021)
------------------------------------------------------------------------
* Bugfix backported MYSQLI_SQL_EXCEPTION regression in PHP 7: "Incorrect integer
value: '' for column exflag" in entries API.
* Bugfix backported MYSQLI_SQL_EXCEPTION regression in PHP 7: "Incorrect integer
value: '' for column parent_id" in comments SQL with not explicit set ternary
bracketing compile block in another set of braces.
* Bugfix backported MYSQLI_SQL_EXCEPTION regression in PHP 7: "Incorrect integer
value: '' for column last_modified" in the plugin API.
* PLEASE NOTE:
If you get "white pages of death" when saving entries/settings which have a SQL
relating dependency saving, please look inside the servers error log.
It probably is one of these exceptions we have to iron out!
Version 3.6.1 (November 4th 2021)
------------------------------------------------------------------------
* Bugfix backported MYSQLI_SQL_EXCEPTION regression in PHP 7: "Incorrect integer
value for authorid" thrown in themes set_config_vars.
Version 3.6.0 (November 4th 2021)
------------------------------------------------------------------------
* Fix media_choose POST Variation checkup values when choosing an ORIGIN AVIF
file as image. See LIMITATIONS.
[ 3.6-beta-3 ]
* Fix some image variation PHP 8.0 vs 8.1 compat regressions
[ 3.6-beta-2 ]
* Improve Styx OUTPUT ops for some possible image variation failures
[ 3.6-beta-1 ]
* Serendipity Styx AV1 Image File format groundwork
As already stated when developing the Styx 3.0 Series for WebP there is
another image format on the road.
This is the AV1 Image File or AVIF format, which offers extreme compression
by visually no image quality change compared to the traditional formats like
JPEG, PNG, and GIF, and even the relatively new WebP format.
A royalty-free, cross-platform format for media delivery, given support from
all big players (Alliance for Open Media), so it is likely to get adopted
much faster than the WebP format, which took almost ten years from launch
before being supported in Firefox.
* AV1 Image File support in browsers and apps
Chrome 85+ and Firefox up from 93+ already support the AVIF format by default.
The latest status for browsers supporting AVIF can be found here:
https://caniuse.com/avif
Sadly the Safari browser and Apple OS environments are behind, while Android
should already work.
* AVIF image format delivery
As you know already by working with Styx WebP Variations, uploaded files in
standard image formats are additionally stored as new format Variations.
So AVIF is yet another Variation stored in the MediaLibrary .v/ directories.
The Styx OUTPUT instrumentarium checks the image AVIF Variation compared
with the WebP Variation and always delivers the smaller in filesize.
If it is enclosed by the picture element container, the sourceset (srcset)
order will always be AVIF first, then WebP and for last as the < img >
element the origin file expression.
In case the WebP srcset image expression is smaller in filesize than the
AVIF one, the AVIF srcset is suppressed. This ensures that always the
smallest size is delivered.
Sending this prepared HTML markup, the users browser and environment
decides which image it is able to load and to display.
* CURRENT IMPORTANT DRAWBACKS of using AVIF format
While most of the things about AVIF are very promising and it is likely to
become the standard for media delivery in the future, there are some short-
comings that we should be aware of before migrating to AVIF.
The ABSOLUTE MAJOR BOTTLENECK is the encoding performance of AVIF images,
which is VERY SLOW compared to JPEG or WebP images. While the majority of
user devices should have no problem decoding AVIF images for display, it
can at times take over a minute to encode an image to AVIF.
As the format evolves, the encoding performance is likely to improve in
future.
* ENVIRONMENTAL ENCODING SUPPORT
Encoding support starts with PHP 8.1 by GD library with release at the end
of November 2021 and with ImageMagick up from 7.0.25+ versions.
Uploading files already in WebP or AVIF format was even possible before, but
resizes, read out and other actions do need support at least from some PHP
build-in methods. There still is work to do, like for getimagesize(), which
does not work for AVIF image sizes yet in PHP 8.1-RC5 out of the box.
We have to strongly remind you - when testing - to not upload more than one
image at time (!) to not crash your given server resources.
The time of encoding is depending on the origins file size. Sizes under
1 MB won't matter as much as when using images with several Megabytes.
PHP GD and ImageMagick encoding compression are slightly different and their
results often surprising comparing all formats.
* TEST INFORMATIONS
If you want to get known to AVIF without touching your current blog system,
there are third-party service providers like ImageKit with extensive image
processing networks to provide decent AVIF encoding performance in real-time
for your images. Or using the fascinating tool and conversion privacy of
<< https://avif.io/ >> which uses Rav1e, Rust and WASM to convert your
images clientside.
Styx 3.6 has not yet enabled AVIF support by default. It just states to be
groundwork ready for extreme testers and other Developers. See setting
$serendipity['useAvifFormat'] = true note in serendipity_config.inc.php
file at ~ Line 520. So by default enabled AVIF support is going to come
with next Styx 3.7 - and this probably already this year. ;-OpenPHPNuke, PragmaMx, Xoops and Zikula)
Also see some interesting external comparison pages for the new format:
<< https://www.gumlet.com/learn/avif-for-image-coding-everything-you-need-to-know/ >>
<< https://jakearchibald.com/2020/avif-has-landed/ >>
* POSSIBLE FAILURES
This base implementation is known to fail with certain Variation builds, in
special with ImageMagick conversions while developing. So any Variation file
with 0 bytes, or AVIF images with 252 bytes (0.25 KB) or 3389 bytes (3.4 KB)
or 34165 bytes (34 KB) are considered broken and conditionally excluded from
usage. Time will tell if this needs a review for different file systems or
just were rare issues while experimental development only.
FOR ANY TESTERS:
If you see outlined files with webp or avif extension not being displayed by
link or by picture container, please file an issue with extended information.
* LIMITATIONS
PLEASE NOTE, that ALL current PHP versions are not able to thumbsize an
image by readable image sizes, when you upload an AVIF image format.
The upcoming PHP 8.1 standard image format conversions in current Styx 3.6
state are only able to do so, since they take the same values as the WebP
expression as a stolen value copy. This is a current Styx PHP workaround
and upload limitation as long this isn't implemented to PHP without having
to use additional libraries.
This also implies to image scaling and rotate actions. So if an AVIF image
file or image AVIF Variation file exists - and/or is known broken by file-
size - scaling / rotating is prohibited for all formats as long this PHP
implementation loss is a matter. Rotate won't throw a message in this case.
* Note failed backend entry search by ID
* Update /b4/ template assets to bootstrap 4.6.1 release.
Changelog: << https://github.com/twbs/bootstrap/releases/tag/v4.6.1 >>
* Removed Spamblock configuration link from sidebar as already buttonized in
comments and available per Plugin config. The Times They Are A-Changin..!
* Changed the img_align radio form arrangement in the media choose action to
left inbound, top centered, right inbound order.
Be ATTENTIVE until you realize that this is the more catchy arrangement! ;-)
* Move media_choose link to input field to better expand on length
* Add new media choose img_align_top image to show it is top centered
* Improve full file variation WebP format copy using ImageMagick by decreasing
the quality by a range of given dimensions. Fixes (rare) WebP Expressions on
certain (big) sizes getting bigger than the origin.
* Fix ML_CREATEVARIATION debug log distinction of GD vs ImageMagick
* Add "imgsupport" javascript to templates assets for personal theme usage.
Insert script before any <link> tag to css files in your themes index.tpl:
<script src="templates/_assets/imgsupport.js"></script>
so you can deliver image formats by CSS and your visitors browser support.
READ ABOUT on << https://github.com/leechy/imgsupport >>
* Fixed a regression of a Styx 3.5 commit for theme configuration submit sets
* Prepare [ clean-blog, psg, timeline] themes for additional AVIF support
* Temporary prevent images API functions serendipity_rotateImg() and
serendipity_scaleImg() for the origin image and all variation types,
if the AVIF image file variation is considered broken.
* Fix spamblock CAPTCHA image for administrator (debug mode) by @silencing
nasty "Implicit conversion from float 1.2 to int loses precision" inbound
errors with PHP 8.1, destroying the image.
* Update /b5/ template assets to bootstrap 5.1.3 release.
Changelog: << https://github.com/twbs/bootstrap/releases/tag/v5.1.3 >>
<< https://github.com/twbs/bootstrap/releases/tag/v5.1.2 >>
* Move "User/Group Management" out of backend sidebar "Settings" section with
called by hook name 'backend_sidebar_users'. Additional Plugins as follows.
While being more precise as a bundled section, this additionally allows to
throw some current or temporary revocations of user-right related notices.
Plugins may use a new hook name called 'backend_sidebar_useralert' just for
thrown appendices.
* Fix [ default-php ] theme for several issues and some real odds, while not
having catched up with all the latest changes of the origin default theme.
* Improve personal preferences popup granular force 'comments' option, not
reacting on independency from 'images' as a "single cased" window popup.
* In PHP 8.1, the default error handling behavior of the MySQLi extension has
changed from silencing errors to throw an Exception on errors.
Therefore the Serendipity Styx MySQLi connector API was changed to make this
the default behavior in all PHP versions, in combination with our systems
custom errorhandler.
* Massively improved the personal preferences popup granular "force" option
description, so it can be made clear what is going to happen by writing or
removing certain list items. This also fixes the behaviour of not showing
the current set value state in the input field. Now all new users will
have this configuration set by default.