| f2bbffb5 | 05-Apr-2026 |
Andreas Gohr <andi@splitbrain.org> |
SearchIndex: extract Collection base class hierarchy
Introduce AbstractCollection as the shared base for all index collections, with FrequencyCollection and LookupCollection as the two abstract subc
SearchIndex: extract Collection base class hierarchy
Introduce AbstractCollection as the shared base for all index collections, with FrequencyCollection and LookupCollection as the two abstract subclasses differing only in how tokens are counted (frequency vs dedup).
Key design decisions: - splitByLength is a constructor parameter on AbstractCollection controlling whether token/frequency indexes use length-based file splitting. This is independent of the collection type. - The reverse index format is self-describing: entries with * have a group prefix (split), entries without don't (non-split). No branching needed in parse/format methods. - addEntity, resolveTokens, updateIndexes, and reverse index handling all live in AbstractCollection. Subclasses only implement countTokens().
Concrete collections: PageFulltextCollection (frequency, split), MediaCollection and ReferencesCollection (lookup, non-split).
Renames FulltextCollection -> PageFulltextCollection and FulltextCollectionSearch -> FrequencyCollectionSearch.
show more ...
|
| 6ebc01d8 | 23-Mar-2026 |
Matt Van Horn <455140+mvanhorn@users.noreply.github.com> |
feat: add diff to disableactions config option
Add 'diff' as a checkbox option in the disableactions configuration setting, allowing admins to disable the diff action separately from other actions l
feat: add diff to disableactions config option
Add 'diff' as a checkbox option in the disableactions configuration setting, allowing admins to disable the diff action separately from other actions like revisions or edit.
When diff is disabled, diff icon links in revision lists and recent changes are hidden, and the "compare" submit button on page and media revision pages is removed.
Fixes #4504
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
show more ...
|
| f5a0dcac | 22-Mar-2026 |
Eduardo Mozart de Oliveira <eduardomozart182@gmail.com> |
Translation update (pt-br) |
| e4b0c5a0 | 22-Mar-2026 |
Andreas Gohr <andi@splitbrain.org> |
strict value comparison in auth session check. fixes #4602 |
| c046a97e | 19-Mar-2026 |
Eduardo Mozart de Oliveira <eduardomozart182@gmail.com> |
Translation update (pt-br) |
| 093fe67e | 07-Mar-2026 |
Andreas Gohr <andi@splitbrain.org> |
updated rector and applied it |
| 85c88efa | 07-Mar-2026 |
Andreas Gohr <andi@splitbrain.org> |
removed another php 7.4 workaround |
| 2114d546 | 07-Mar-2026 |
Andreas Gohr <andi@splitbrain.org> |
removed an old PHP 5 workaround in HTTPClient |
| 8c831647 | 07-Mar-2026 |
Andreas Gohr <andi@splitbrain.org> |
remove checks for mbstring.func_overload
This ini setting no longer exists in PHP8, so we don't need to check for it. |
| 766251f0 | 07-Mar-2026 |
Andreas Gohr <andi@splitbrain.org> |
removed php 8 polyfills |
| 445afc78 | 07-Mar-2026 |
Andreas Gohr <andi@splitbrain.org> |
declare PrefCookie constant visibility |
| d41f5a8f | 07-Mar-2026 |
Andreas Gohr <andi@splitbrain.org> |
fix destructuring false returns from changelog functions
The changelog functions can return false when lines are unparsable or don't exist. The result can no longer be destructured then in newer PHP
fix destructuring false returns from changelog functions
The changelog functions can return false when lines are unparsable or don't exist. The result can no longer be destructured then in newer PHP versions. This adds the necessary checks.
It should also handle corrupt lines within a changelog better.
show more ...
|
| 2082444c | 07-Mar-2026 |
Andreas Gohr <andi@splitbrain.org> |
avoid using null as cache key
Sometime null is passed as revision to wikiFN. This should not happen but we're not very strict about the type here. Any falsy value is the current revision. But using
avoid using null as cache key
Sometime null is passed as revision to wikiFN. This should not happen but we're not very strict about the type here. Any falsy value is the current revision. But using null as an array key is deprecated. Also using different falsy values would also result in different caches, even though the same revision is meant. So this casts all revisions to integer and falsy values will be 0 now, solving both issues.
show more ...
|
| dc63e34d | 07-Mar-2026 |
Andreas Gohr <andi@splitbrain.org> |
Fix deprecation warning in UTF8/Conversion
Original message:
PHP Deprecated: ord(): Providing a string that is not one byte long is deprecated. Use ord($str[0]) instead |
| 8e88a29b | 07-Mar-2026 |
Andreas Gohr <andi@splitbrain.org> |
update minimum requirement to PHP 8.2
According to https://stitcher.io/blog/php-version-stats-june-2025 most people are running a newer version anyway. 8.2 still receives security support til the en
update minimum requirement to PHP 8.2
According to https://stitcher.io/blog/php-version-stats-june-2025 most people are running a newer version anyway. 8.2 still receives security support til the end of the year and is the version included in Debian old-stable (Bookworm).
This patch only increases the minumum version and updates the composer dependencies. No code has been changed yet.
show more ...
|
| 2b2e0eb4 | 07-Mar-2026 |
splitbrain <86426+splitbrain@users.noreply.github.com> |
Rector and PHPCS fixes |
| ce55bf2b | 06-Mar-2026 |
Tobias Bengfort <tobias.bengfort@posteo.de> |
editor a11y: remove tabindex
these do more harm then good |
| 26d34d69 | 27-Feb-2026 |
Tobias Bengfort <tobias.bengfort@posteo.de> |
add alt texts for size ctl images |
| 9d1b6472 | 06-Mar-2026 |
Eduardo Mozart de Oliveira <2974895+eduardomozart@users.noreply.github.com> |
Update session validation checks in auth.php
Refactor session validation to check for user and pass existence. |
| 254a09b3 | 03-Mar-2026 |
smocap <smocap@gmail.com> |
Translation update (es) |
| 9cdd189d | 25-Feb-2026 |
Andreas Gohr <gohr@cosmocode.de> |
make JWT available in session
When a token authentication was successful, the token is now added to the user session. This allows other plugins (like twofactor) make use of it. |
| 31003314 | 02-Feb-2026 |
Andreas Gohr <gohr@cosmocode.de> |
TreeBuilder: skip invalid pages and namespaces
This will hide namespace templates or weird folders from listings. Can be disabled with a flag if needed. |
| eb4caac3 | 27-Jan-2026 |
Andreas Gohr <andi@splitbrain.org> |
reuse bcrypt default difficulty #2093
Instead of hardcoding our own default, we can use PHP's constant |
| 2b760c9f | 15-Jan-2026 |
Alexander Lehmann <alexlehm@gmail.com> |
add custom client_ip_header |
| 984279ed | 09-Dec-2025 |
Andreas Gohr <gohr@cosmocode.de> |
set explicit referrer-policy
This emits a referrer policy header. It will instruct browsers to send an abbreviated (host name only) referrer header on cross-origin requests.
This fixes issues with
set explicit referrer-policy
This emits a referrer policy header. It will instruct browsers to send an abbreviated (host name only) referrer header on cross-origin requests.
This fixes issues with YouTube embeds reported at splitbrain/dokuwiki-plugin-vshare#154
This setting is the default in many browsers, so it doesn't change behavior for most people.
More info at:
* https://github.com/splitbrain/dokuwiki-plugin-vshare/issues/154 * https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/Headers/Referrer-Policy
show more ...
|