History log of /dokuwiki/_test/ (Results 101 – 125 of 1080)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
ede4646606-Apr-2026 Andreas Gohr <andi@splitbrain.org>

SearchIndex: reorganize and expand test suite

Move all Search tests from _test/tests/inc/Search/ to _test/tests/Search/
to match the dokuwiki\test autoloader convention. Fix namespaces from
tests\*

SearchIndex: reorganize and expand test suite

Move all Search tests from _test/tests/inc/Search/ to _test/tests/Search/
to match the dokuwiki\test autoloader convention. Fix namespaces from
tests\* to dokuwiki\test\* so all tests work in isolation.

Extract inline test helpers into separate autoloadable mock files:
TestDirectCollection → MockDirectCollection, TestLookupCollection →
MockLookupCollection, TestFrequencyCollection → MockFrequencyCollection.

Rename AbstractIndexTest → AbstractIndexTestCase to fix PHPUnit warning
about abstract classes with Test suffix.

Replace dead xxxRealWord() with proper testWildcardSearch() verifying
exact token matches and frequencies for all three wildcard types.
Add testTokenizedPageSearch() using a dedicated test data file. Add
testNoMatchReturnsEmptyFrequencies() which exposed a bug in Term where
uninitialized $tokens/$frequencies caused crashes on zero-match terms.

Replace fulltext_query.test.php with modern QueryParserTest in the
Search\Query namespace.

Add new test files:
- LockTest: acquire/release, reference counting, stale lock override,
foreign lock rejection, releaseAll, independent locks
- NamespacePredicateTest: filter/exclude, sub-namespaces, partial prefix
safety, empty sets, score preservation
- PageSetTest: intersect, unite, subtract, isEmpty
- QueryEvaluatorTest: word lookups, AND/OR/NOT, namespace filtering,
combined queries, partial namespace prefix safety

Fix Term.php: initialize $tokens and $frequencies to [] instead of null.

show more ...

83b3accc06-Apr-2026 Andreas Gohr <andi@splitbrain.org>

SearchIndex: rewrite Indexer to use Collection classes

Replace the intermediate #2943 classes (FulltextIndex, MetadataIndex)
with the new Collection-based architecture. The Indexer is now a thin
sta

SearchIndex: rewrite Indexer to use Collection classes

Replace the intermediate #2943 classes (FulltextIndex, MetadataIndex)
with the new Collection-based architecture. The Indexer is now a thin
stateless orchestrator that delegates all index work to collections.

Key changes:
- Indexer no longer extends AbstractIndex; page name passed to methods
- addPage/deletePage/clear use PageTitleCollection,
PageFulltextCollection, and PageMetaCollection
- New PageMetaCollection replaces separate ReferencesCollection and
MediaCollection with a single class that handles arbitrary metadata
keys dynamically
- Shared writable FileIndex('page') passed to all collections
- Logger callback replaces verbose parameter
- Methods return void instead of bool
- Index classes implement IteratorAggregate for clean data access
- Indexer tests consolidated into namespaced IndexerTest.php
- All callers updated to new stateless API

show more ...

c66b5ec605-Apr-2026 Andreas Gohr <andi@splitbrain.org>

SearchIndex: rewrite Lock as static registry with reference counting

Replace the instance-based Lock class with a static registry that
tracks held locks per-process with reference counting. This sol

SearchIndex: rewrite Lock as static registry with reference counting

Replace the instance-based Lock class with a static registry that
tracks held locks per-process with reference counting. This solves
three problems:

- Split indexes (w3, w4, ...) share a single lock name and now
coordinate naturally via the registry
- Multiple callers can acquire the same lock without conflict
- Indexes enforce their own writability through lock()/unlock()
methods on AbstractIndex

The Lock registry manages both the filesystem lock (mkdir) and the
in-process tracking. The first acquire creates the directory, subsequent
acquires increment the refcount. Release decrements, and only removes
the directory when the count reaches zero.

Note: I am not sure if implementing this as a static object is a great
idea or if we should pass an instance through the collection to the
indexes...

show more ...

d92c078c05-Apr-2026 Andreas Gohr <andi@splitbrain.org>

SearchIndex: add DirectCollection for 1:1 entity-token mappings

Introduce DirectCollection as a third collection type alongside
FrequencyCollection and LookupCollection. Direct collections store
exa

SearchIndex: add DirectCollection for 1:1 entity-token mappings

Introduce DirectCollection as a third collection type alongside
FrequencyCollection and LookupCollection. Direct collections store
exactly one token per entity at the entity's position in the token
index (entity.RID === token.RID), with no frequency or reverse indexes.

AbstractCollection now accepts optional frequency/reverse index names
(default to '') and skips locking empty index names.

Adds PageTitleCollection as the first concrete direct collection
for the page -> title mapping.

show more ...

f2bbffb505-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 ...

093fe67e07-Mar-2026 Andreas Gohr <andi@splitbrain.org>

updated rector and applied it


composer.json
composer.lock
rector.php
/dokuwiki/bin/gittool.php
/dokuwiki/bin/wantedpages.php
/dokuwiki/inc/Action/Redirect.php
/dokuwiki/inc/Action/Search.php
/dokuwiki/inc/Action/Subscribe.php
/dokuwiki/inc/ActionRouter.php
/dokuwiki/inc/Ajax.php
/dokuwiki/inc/Cache/Cache.php
/dokuwiki/inc/Debug/PropertyDeprecationHelper.php
/dokuwiki/inc/ErrorHandler.php
/dokuwiki/inc/Extension/Event.php
/dokuwiki/inc/Extension/PluginController.php
/dokuwiki/inc/Extension/PluginTrait.php
/dokuwiki/inc/Extension/RemotePlugin.php
/dokuwiki/inc/Extension/SyntaxPlugin.php
/dokuwiki/inc/Feed/FeedCreator.php
/dokuwiki/inc/Feed/FeedMediaProcessor.php
/dokuwiki/inc/Feed/FeedPageProcessor.php
/dokuwiki/inc/File/PageResolver.php
/dokuwiki/inc/File/Resolver.php
/dokuwiki/inc/Form/Element.php
/dokuwiki/inc/HTTP/DokuHTTPClient.php
/dokuwiki/inc/HTTP/HTTPClient.php
/dokuwiki/inc/HTTP/Headers.php
/dokuwiki/inc/Ip.php
/dokuwiki/inc/JWT.php
/dokuwiki/inc/Logger.php
/dokuwiki/inc/Mailer.class.php
/dokuwiki/inc/Menu/AbstractMenu.php
/dokuwiki/inc/Menu/Item/AbstractItem.php
/dokuwiki/inc/Parsing/Handler/Lists.php
/dokuwiki/inc/Parsing/Parser.php
/dokuwiki/inc/Parsing/ParserMode/Acronym.php
/dokuwiki/inc/Parsing/ParserMode/Entity.php
/dokuwiki/inc/Parsing/ParserMode/Smiley.php
/dokuwiki/inc/Parsing/ParserMode/Wordblock.php
/dokuwiki/inc/PassHash.php
/dokuwiki/inc/Remote/Api.php
/dokuwiki/inc/Remote/ApiCore.php
/dokuwiki/inc/Remote/JsonRpcServer.php
/dokuwiki/inc/Remote/LegacyApiCore.php
/dokuwiki/inc/Remote/OpenApiDoc/ClassResolver.php
/dokuwiki/inc/Remote/OpenApiDoc/DocBlockMethod.php
/dokuwiki/inc/Remote/OpenApiDoc/DocBlockProperty.php
/dokuwiki/inc/Remote/OpenApiDoc/OpenAPIGenerator.php
/dokuwiki/inc/Remote/OpenApiDoc/Type.php
/dokuwiki/inc/Remote/Response/ApiResponse.php
/dokuwiki/inc/Remote/Response/Link.php
/dokuwiki/inc/Remote/Response/Media.php
/dokuwiki/inc/Remote/Response/MediaChange.php
/dokuwiki/inc/Remote/Response/Page.php
/dokuwiki/inc/Remote/Response/PageChange.php
/dokuwiki/inc/Remote/Response/User.php
/dokuwiki/inc/Remote/XmlRpcServer.php
/dokuwiki/inc/SafeFN.class.php
/dokuwiki/inc/StyleUtils.php
/dokuwiki/inc/Subscriptions/SubscriberManager.php
/dokuwiki/inc/Subscriptions/SubscriberRegexBuilder.php
/dokuwiki/inc/TreeBuilder/AbstractBuilder.php
/dokuwiki/inc/TreeBuilder/Node/AbstractNode.php
/dokuwiki/inc/Ui/Admin.php
/dokuwiki/inc/Ui/Editor.php
/dokuwiki/inc/Ui/Index.php
/dokuwiki/inc/Ui/MediaDiff.php
/dokuwiki/inc/Ui/PageView.php
/dokuwiki/inc/Utf8/Conversion.php
/dokuwiki/inc/Utf8/Sort.php
/dokuwiki/inc/auth.php
/dokuwiki/inc/changelog.php
/dokuwiki/inc/common.php
/dokuwiki/inc/compatibility.php
/dokuwiki/inc/confutils.php
/dokuwiki/inc/fulltext.php
/dokuwiki/inc/html.php
/dokuwiki/inc/infoutils.php
/dokuwiki/inc/init.php
/dokuwiki/inc/lang/ar/lang.php
/dokuwiki/inc/lang/be/lang.php
/dokuwiki/inc/lang/bg/lang.php
/dokuwiki/inc/lang/ca/lang.php
/dokuwiki/inc/lang/ckb/lang.php
/dokuwiki/inc/lang/cs/lang.php
/dokuwiki/inc/lang/cy/lang.php
/dokuwiki/inc/lang/da/lang.php
/dokuwiki/inc/lang/de-informal/lang.php
/dokuwiki/inc/lang/de/lang.php
/dokuwiki/inc/lang/el/lang.php
/dokuwiki/inc/lang/en/lang.php
/dokuwiki/inc/lang/eo/lang.php
/dokuwiki/inc/lang/es/lang.php
/dokuwiki/inc/lang/fa/lang.php
/dokuwiki/inc/lang/fi/lang.php
/dokuwiki/inc/lang/fr/lang.php
/dokuwiki/inc/lang/he/lang.php
/dokuwiki/inc/lang/hr/lang.php
/dokuwiki/inc/lang/hu-formal/lang.php
/dokuwiki/inc/lang/hu/lang.php
/dokuwiki/inc/lang/it/lang.php
/dokuwiki/inc/lang/ja/lang.php
/dokuwiki/inc/lang/ko/lang.php
/dokuwiki/inc/lang/lt/lang.php
/dokuwiki/inc/lang/lv/lang.php
/dokuwiki/inc/lang/nl/lang.php
/dokuwiki/inc/lang/no/lang.php
/dokuwiki/inc/lang/pl/lang.php
/dokuwiki/inc/lang/pt-br/lang.php
/dokuwiki/inc/lang/pt/lang.php
/dokuwiki/inc/lang/ro/lang.php
/dokuwiki/inc/lang/ru/lang.php
/dokuwiki/inc/lang/sk/lang.php
/dokuwiki/inc/lang/sr/lang.php
/dokuwiki/inc/lang/sv/lang.php
/dokuwiki/inc/lang/tr/lang.php
/dokuwiki/inc/lang/uk/lang.php
/dokuwiki/inc/lang/vi/lang.php
/dokuwiki/inc/lang/zh/lang.php
/dokuwiki/inc/load.php
/dokuwiki/inc/mail.php
/dokuwiki/inc/media.php
/dokuwiki/inc/pageutils.php
/dokuwiki/inc/parser/code.php
/dokuwiki/inc/parser/handler.php
/dokuwiki/inc/parser/renderer.php
/dokuwiki/inc/parser/xhtml.php
/dokuwiki/inc/parserutils.php
/dokuwiki/inc/search.php
/dokuwiki/inc/template.php
/dokuwiki/install.php
/dokuwiki/lib/exe/ajax.php
/dokuwiki/lib/exe/css.php
/dokuwiki/lib/exe/js.php
/dokuwiki/lib/exe/mediamanager.php
/dokuwiki/lib/plugins/acl/admin.php
/dokuwiki/lib/plugins/authad/auth.php
/dokuwiki/lib/plugins/authpdo/auth.php
/dokuwiki/lib/plugins/config/admin.php
/dokuwiki/lib/plugins/config/core/Setting/Setting.php
/dokuwiki/lib/plugins/config/core/Setting/SettingArray.php
/dokuwiki/lib/plugins/config/core/Setting/SettingEmail.php
/dokuwiki/lib/plugins/extension/Extension.php
/dokuwiki/lib/plugins/extension/ExtensionApiResponse.php
/dokuwiki/lib/plugins/extension/GuiAdmin.php
/dokuwiki/lib/plugins/extension/GuiExtension.php
/dokuwiki/lib/plugins/extension/Installer.php
/dokuwiki/lib/plugins/extension/Manager.php
/dokuwiki/lib/plugins/extension/Repository.php
/dokuwiki/lib/plugins/extension/cli.php
/dokuwiki/lib/plugins/info/syntax.php
/dokuwiki/lib/plugins/popularity/helper.php
/dokuwiki/lib/plugins/revert/admin.php
/dokuwiki/lib/plugins/safefnrecode/action.php
/dokuwiki/lib/plugins/styling/action.php
/dokuwiki/lib/plugins/usermanager/admin.php
/dokuwiki/lib/plugins/usermanager/cli.php
/dokuwiki/lib/plugins/usermanager/remote.php
db97c5ae07-Mar-2026 Andreas Gohr <andi@splitbrain.org>

ignore HTML validation issue with skipped headline levels

It's debatable if this is an error. I'd say it's more like a warning.

e7a87ee207-Mar-2026 Andreas Gohr <andi@splitbrain.org>

fix http tests

The response at httpbingo has changed, tests needed updates

da1e6c6b07-Mar-2026 Andreas Gohr <andi@splitbrain.org>

updated tests for PHP 8.2

* now using DomWrapper 3.0 which removes a bunch of deprecation messages
* fixed class name throwing a warning
* fixed deprecated reflection use

8e88a29b07-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 ...


/dokuwiki/.github/workflows/autoFix.yml
/dokuwiki/.github/workflows/deletedFiles.yml
/dokuwiki/.github/workflows/phpCS.yml
/dokuwiki/.github/workflows/release-build.yml
/dokuwiki/.github/workflows/testLinux.yml
/dokuwiki/.github/workflows/testWindows.yml
/dokuwiki/.github/workflows/todoChecker.yml
composer.json
composer.lock
/dokuwiki/composer.json
/dokuwiki/composer.lock
/dokuwiki/inc/PassHash.php
/dokuwiki/inc/Ui/Editor.php
/dokuwiki/inc/actions.php
/dokuwiki/inc/auth.php
/dokuwiki/inc/infoutils.php
/dokuwiki/inc/lang/de/lang.php
/dokuwiki/inc/lang/en/lang.php
/dokuwiki/inc/lang/es/lang.php
/dokuwiki/install.php
/dokuwiki/lib/plugins/extension/lang/en/lang.php
/dokuwiki/lib/scripts/editor.js
/dokuwiki/lib/tpl/dokuwiki/css/_edit.css
/dokuwiki/vendor/composer/autoload_static.php
/dokuwiki/vendor/composer/installed.json
/dokuwiki/vendor/composer/installed.php
/dokuwiki/vendor/composer/platform_check.php
/dokuwiki/vendor/paragonie/constant_time_encoding/README.md
/dokuwiki/vendor/paragonie/constant_time_encoding/composer.json
/dokuwiki/vendor/paragonie/constant_time_encoding/src/Base32.php
/dokuwiki/vendor/paragonie/constant_time_encoding/src/Base32Hex.php
/dokuwiki/vendor/paragonie/constant_time_encoding/src/Base64.php
/dokuwiki/vendor/paragonie/constant_time_encoding/src/Base64DotSlash.php
/dokuwiki/vendor/paragonie/constant_time_encoding/src/Base64DotSlashOrdered.php
/dokuwiki/vendor/paragonie/constant_time_encoding/src/Base64UrlSafe.php
/dokuwiki/vendor/paragonie/constant_time_encoding/src/Binary.php
/dokuwiki/vendor/paragonie/constant_time_encoding/src/EncoderInterface.php
/dokuwiki/vendor/paragonie/constant_time_encoding/src/Encoding.php
/dokuwiki/vendor/paragonie/constant_time_encoding/src/Hex.php
/dokuwiki/vendor/paragonie/constant_time_encoding/src/RFC4648.php
/dokuwiki/vendor/phpseclib/phpseclib/BACKERS.md
/dokuwiki/vendor/phpseclib/phpseclib/README.md
/dokuwiki/vendor/phpseclib/phpseclib/SECURITY.md
/dokuwiki/vendor/phpseclib/phpseclib/phpseclib/Common/Functions/Strings.php
/dokuwiki/vendor/phpseclib/phpseclib/phpseclib/Crypt/Blowfish.php
/dokuwiki/vendor/phpseclib/phpseclib/phpseclib/Crypt/Common/Formats/Keys/JWK.php
/dokuwiki/vendor/phpseclib/phpseclib/phpseclib/Crypt/Common/Formats/Keys/OpenSSH.php
/dokuwiki/vendor/phpseclib/phpseclib/phpseclib/Crypt/Common/Formats/Keys/PKCS8.php
/dokuwiki/vendor/phpseclib/phpseclib/phpseclib/Crypt/Common/Formats/Keys/PuTTY.php
/dokuwiki/vendor/phpseclib/phpseclib/phpseclib/Crypt/Common/StreamCipher.php
/dokuwiki/vendor/phpseclib/phpseclib/phpseclib/Crypt/DES.php
/dokuwiki/vendor/phpseclib/phpseclib/phpseclib/Crypt/DSA/Formats/Keys/PKCS1.php
/dokuwiki/vendor/phpseclib/phpseclib/phpseclib/Crypt/DSA/Formats/Keys/PuTTY.php
/dokuwiki/vendor/phpseclib/phpseclib/phpseclib/Crypt/DSA/PrivateKey.php
/dokuwiki/vendor/phpseclib/phpseclib/phpseclib/Crypt/DSA/PublicKey.php
/dokuwiki/vendor/phpseclib/phpseclib/phpseclib/Crypt/EC/BaseCurves/Montgomery.php
/dokuwiki/vendor/phpseclib/phpseclib/phpseclib/Crypt/EC/BaseCurves/Prime.php
/dokuwiki/vendor/phpseclib/phpseclib/phpseclib/Crypt/EC/BaseCurves/TwistedEdwards.php
/dokuwiki/vendor/phpseclib/phpseclib/phpseclib/Crypt/EC/Formats/Keys/XML.php
/dokuwiki/vendor/phpseclib/phpseclib/phpseclib/Crypt/EC/PrivateKey.php
/dokuwiki/vendor/phpseclib/phpseclib/phpseclib/Crypt/EC/PublicKey.php
/dokuwiki/vendor/phpseclib/phpseclib/phpseclib/Crypt/Hash.php
/dokuwiki/vendor/phpseclib/phpseclib/phpseclib/Crypt/PublicKeyLoader.php
/dokuwiki/vendor/phpseclib/phpseclib/phpseclib/Crypt/RC2.php
/dokuwiki/vendor/phpseclib/phpseclib/phpseclib/Crypt/RC4.php
/dokuwiki/vendor/phpseclib/phpseclib/phpseclib/Crypt/RSA.php
/dokuwiki/vendor/phpseclib/phpseclib/phpseclib/Crypt/RSA/Formats/Keys/MSBLOB.php
/dokuwiki/vendor/phpseclib/phpseclib/phpseclib/Crypt/RSA/Formats/Keys/PKCS1.php
/dokuwiki/vendor/phpseclib/phpseclib/phpseclib/Crypt/RSA/Formats/Keys/PSS.php
/dokuwiki/vendor/phpseclib/phpseclib/phpseclib/Crypt/RSA/Formats/Keys/PuTTY.php
/dokuwiki/vendor/phpseclib/phpseclib/phpseclib/Crypt/RSA/PrivateKey.php
/dokuwiki/vendor/phpseclib/phpseclib/phpseclib/Crypt/RSA/PublicKey.php
/dokuwiki/vendor/phpseclib/phpseclib/phpseclib/Crypt/Rijndael.php
/dokuwiki/vendor/phpseclib/phpseclib/phpseclib/Crypt/TripleDES.php
/dokuwiki/vendor/phpseclib/phpseclib/phpseclib/Crypt/Twofish.php
/dokuwiki/vendor/phpseclib/phpseclib/phpseclib/File/ASN1.php
/dokuwiki/vendor/phpseclib/phpseclib/phpseclib/File/X509.php
/dokuwiki/vendor/phpseclib/phpseclib/phpseclib/Math/BigInteger.php
/dokuwiki/vendor/phpseclib/phpseclib/phpseclib/Math/BigInteger/Engines/BCMath.php
/dokuwiki/vendor/phpseclib/phpseclib/phpseclib/Math/BigInteger/Engines/BCMath/Base.php
/dokuwiki/vendor/phpseclib/phpseclib/phpseclib/Math/BigInteger/Engines/BCMath/BuiltIn.php
/dokuwiki/vendor/phpseclib/phpseclib/phpseclib/Math/BigInteger/Engines/BCMath/Reductions/Barrett.php
/dokuwiki/vendor/phpseclib/phpseclib/phpseclib/Math/BigInteger/Engines/BCMath/Reductions/EvalBarrett.php
/dokuwiki/vendor/phpseclib/phpseclib/phpseclib/Math/BigInteger/Engines/Engine.php
/dokuwiki/vendor/phpseclib/phpseclib/phpseclib/Math/BigInteger/Engines/GMP.php
/dokuwiki/vendor/phpseclib/phpseclib/phpseclib/Math/BigInteger/Engines/PHP.php
/dokuwiki/vendor/phpseclib/phpseclib/phpseclib/Math/BigInteger/Engines/PHP/Reductions/Barrett.php
/dokuwiki/vendor/phpseclib/phpseclib/phpseclib/Math/PrimeField/Integer.php
/dokuwiki/vendor/phpseclib/phpseclib/phpseclib/Net/SCP.php
/dokuwiki/vendor/phpseclib/phpseclib/phpseclib/Net/SFTP.php
/dokuwiki/vendor/phpseclib/phpseclib/phpseclib/Net/SFTP/Stream.php
/dokuwiki/vendor/phpseclib/phpseclib/phpseclib/Net/SSH2.php
/dokuwiki/vendor/simplepie/simplepie/CHANGELOG.md
/dokuwiki/vendor/simplepie/simplepie/LICENSES/BSD-3-Clause.txt
/dokuwiki/vendor/simplepie/simplepie/LICENSES/MIT.txt
/dokuwiki/vendor/simplepie/simplepie/README.markdown
/dokuwiki/vendor/simplepie/simplepie/autoloader.php
/dokuwiki/vendor/simplepie/simplepie/composer.json
/dokuwiki/vendor/simplepie/simplepie/library/SimplePie.php
/dokuwiki/vendor/simplepie/simplepie/library/SimplePie/Author.php
/dokuwiki/vendor/simplepie/simplepie/library/SimplePie/Cache.php
/dokuwiki/vendor/simplepie/simplepie/library/SimplePie/Cache/Base.php
/dokuwiki/vendor/simplepie/simplepie/library/SimplePie/Cache/DB.php
/dokuwiki/vendor/simplepie/simplepie/library/SimplePie/Cache/File.php
/dokuwiki/vendor/simplepie/simplepie/library/SimplePie/Cache/Memcache.php
/dokuwiki/vendor/simplepie/simplepie/library/SimplePie/Cache/Memcached.php
/dokuwiki/vendor/simplepie/simplepie/library/SimplePie/Cache/MySQL.php
/dokuwiki/vendor/simplepie/simplepie/library/SimplePie/Cache/Redis.php
/dokuwiki/vendor/simplepie/simplepie/library/SimplePie/Caption.php
/dokuwiki/vendor/simplepie/simplepie/library/SimplePie/Category.php
/dokuwiki/vendor/simplepie/simplepie/library/SimplePie/Content/Type/Sniffer.php
/dokuwiki/vendor/simplepie/simplepie/library/SimplePie/Copyright.php
/dokuwiki/vendor/simplepie/simplepie/library/SimplePie/Core.php
/dokuwiki/vendor/simplepie/simplepie/library/SimplePie/Credit.php
/dokuwiki/vendor/simplepie/simplepie/library/SimplePie/Decode/HTML/Entities.php
/dokuwiki/vendor/simplepie/simplepie/library/SimplePie/Enclosure.php
/dokuwiki/vendor/simplepie/simplepie/library/SimplePie/Exception.php
/dokuwiki/vendor/simplepie/simplepie/library/SimplePie/File.php
/dokuwiki/vendor/simplepie/simplepie/library/SimplePie/HTTP/Parser.php
/dokuwiki/vendor/simplepie/simplepie/library/SimplePie/IRI.php
/dokuwiki/vendor/simplepie/simplepie/library/SimplePie/Item.php
/dokuwiki/vendor/simplepie/simplepie/library/SimplePie/Locator.php
/dokuwiki/vendor/simplepie/simplepie/library/SimplePie/Misc.php
/dokuwiki/vendor/simplepie/simplepie/library/SimplePie/Net/IPv6.php
/dokuwiki/vendor/simplepie/simplepie/library/SimplePie/Parse/Date.php
/dokuwiki/vendor/simplepie/simplepie/library/SimplePie/Parser.php
/dokuwiki/vendor/simplepie/simplepie/library/SimplePie/Rating.php
/dokuwiki/vendor/simplepie/simplepie/library/SimplePie/Registry.php
/dokuwiki/vendor/simplepie/simplepie/library/SimplePie/Restriction.php
/dokuwiki/vendor/simplepie/simplepie/library/SimplePie/Sanitize.php
/dokuwiki/vendor/simplepie/simplepie/library/SimplePie/Source.php
/dokuwiki/vendor/simplepie/simplepie/library/SimplePie/XML/Declaration/Parser.php
/dokuwiki/vendor/simplepie/simplepie/library/SimplePie/gzdecode.php
/dokuwiki/vendor/simplepie/simplepie/phpstan.dist.neon
/dokuwiki/vendor/simplepie/simplepie/src/Author.php
/dokuwiki/vendor/simplepie/simplepie/src/Cache.php
/dokuwiki/vendor/simplepie/simplepie/src/Cache/Base.php
/dokuwiki/vendor/simplepie/simplepie/src/Cache/BaseDataCache.php
/dokuwiki/vendor/simplepie/simplepie/src/Cache/CallableNameFilter.php
/dokuwiki/vendor/simplepie/simplepie/src/Cache/DB.php
/dokuwiki/vendor/simplepie/simplepie/src/Cache/DataCache.php
/dokuwiki/vendor/simplepie/simplepie/src/Cache/File.php
/dokuwiki/vendor/simplepie/simplepie/src/Cache/Memcache.php
/dokuwiki/vendor/simplepie/simplepie/src/Cache/Memcached.php
/dokuwiki/vendor/simplepie/simplepie/src/Cache/MySQL.php
/dokuwiki/vendor/simplepie/simplepie/src/Cache/NameFilter.php
/dokuwiki/vendor/simplepie/simplepie/src/Cache/Psr16.php
/dokuwiki/vendor/simplepie/simplepie/src/Cache/Redis.php
/dokuwiki/vendor/simplepie/simplepie/src/Caption.php
/dokuwiki/vendor/simplepie/simplepie/src/Category.php
/dokuwiki/vendor/simplepie/simplepie/src/Content/Type/Sniffer.php
/dokuwiki/vendor/simplepie/simplepie/src/Copyright.php
/dokuwiki/vendor/simplepie/simplepie/src/Credit.php
/dokuwiki/vendor/simplepie/simplepie/src/Enclosure.php
/dokuwiki/vendor/simplepie/simplepie/src/Exception.php
/dokuwiki/vendor/simplepie/simplepie/src/File.php
/dokuwiki/vendor/simplepie/simplepie/src/Gzdecode.php
/dokuwiki/vendor/simplepie/simplepie/src/HTTP/Client.php
/dokuwiki/vendor/simplepie/simplepie/src/HTTP/ClientException.php
/dokuwiki/vendor/simplepie/simplepie/src/HTTP/FileClient.php
/dokuwiki/vendor/simplepie/simplepie/src/HTTP/Parser.php
/dokuwiki/vendor/simplepie/simplepie/src/HTTP/Psr18Client.php
/dokuwiki/vendor/simplepie/simplepie/src/HTTP/Psr7Response.php
/dokuwiki/vendor/simplepie/simplepie/src/HTTP/RawTextResponse.php
/dokuwiki/vendor/simplepie/simplepie/src/HTTP/Response.php
/dokuwiki/vendor/simplepie/simplepie/src/IRI.php
/dokuwiki/vendor/simplepie/simplepie/src/Item.php
/dokuwiki/vendor/simplepie/simplepie/src/Locator.php
/dokuwiki/vendor/simplepie/simplepie/src/Misc.php
/dokuwiki/vendor/simplepie/simplepie/src/Net/IPv6.php
/dokuwiki/vendor/simplepie/simplepie/src/Parse/Date.php
/dokuwiki/vendor/simplepie/simplepie/src/Parser.php
/dokuwiki/vendor/simplepie/simplepie/src/Rating.php
/dokuwiki/vendor/simplepie/simplepie/src/Registry.php
/dokuwiki/vendor/simplepie/simplepie/src/RegistryAware.php
/dokuwiki/vendor/simplepie/simplepie/src/Restriction.php
/dokuwiki/vendor/simplepie/simplepie/src/Sanitize.php
/dokuwiki/vendor/simplepie/simplepie/src/SimplePie.php
/dokuwiki/vendor/simplepie/simplepie/src/Source.php
/dokuwiki/vendor/simplepie/simplepie/src/XML/Declaration/Parser.php
/dokuwiki/vendor/simplepie/simplepie/utils/PHPStan/README.md
/dokuwiki/vendor/simplepie/simplepie/utils/PHPStan/RegistryCallMethodReturnTypeExtension.php
/dokuwiki/vendor/simplepie/simplepie/utils/PHPStan/extension.neon
/dokuwiki/vendor/splitbrain/php-archive/src/Tar.php
/dokuwiki/vendor/splitbrain/php-cli/src/Options.php
3100331402-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.

8f178b7019-Jan-2026 Alexander Lehmann <alexlehm@gmail.com>

convert tests to data provider

6f0cf24e17-Jan-2026 Alexander Lehmann <alexlehm@gmail.com>

add comment to the real-ip test

2b760c9f15-Jan-2026 Alexander Lehmann <alexlehm@gmail.com>

add custom client_ip_header

2f70db9004-Dec-2025 WillForan <willforan@gmail.com>

fix: 32bit IP tests w/string of decimal representation, overflows

Math in PHP is hard!
sprintf("%.0f",0x7FFFFFFFFFFFFFFF) == sprintf("%.0f",0x7FFFFFFFFFFFFF00)

Changes
* 32bit gets own version o

fix: 32bit IP tests w/string of decimal representation, overflows

Math in PHP is hard!
sprintf("%.0f",0x7FFFFFFFFFFFFFFF) == sprintf("%.0f",0x7FFFFFFFFFFFFF00)

Changes
* 32bit gets own version of tests where expected values are strings
* decimalToBinary32 to replace `sprintf("%032b%032b"...)`, avoids overflow
* overflow check in ipv4 too
* refactor
* partsTo64 for 32bit parts into dec value as str (bcmath)
* Ip32::$b32 as class constant
* condition always PHP_INT_SIZE == 4 for 32bit (instead of == 8 for 64)

show more ...

a060f5a004-Dec-2025 WillForan <willforan@gmail.com>

refactor(ip): PSR-12 functions

bitmask64_32 -> bitmask64On32
make_bitmask_32 -> makeBitmaskOn32
ipv6_upper_lower_32 -> ipv6UpperLowerOn32

also
* uncomment working 7FFF ipv6 test a

refactor(ip): PSR-12 functions

bitmask64_32 -> bitmask64On32
make_bitmask_32 -> makeBitmaskOn32
ipv6_upper_lower_32 -> ipv6UpperLowerOn32

also
* uncomment working 7FFF ipv6 test and
* fix README suggested podman to use `docker://wpstaging`

show more ...

ce8ae75e03-Dec-2025 Andreas Gohr <gohr@cosmocode.de>

allow underscore methods in renderers #4554


phpcs.xml
/dokuwiki/bin/gittool.php
/dokuwiki/bin/indexer.php
/dokuwiki/inc/PrefCookie.php
/dokuwiki/inc/Ui/Login.php
/dokuwiki/inc/auth.php
/dokuwiki/inc/fulltext.php
/dokuwiki/inc/init.php
/dokuwiki/inc/lang/ca/lang.php
/dokuwiki/inc/lang/en/install.html
/dokuwiki/inc/lang/es/denied.txt
/dokuwiki/inc/lang/es/edit.txt
/dokuwiki/inc/lang/es/editrev.txt
/dokuwiki/inc/lang/es/lang.php
/dokuwiki/inc/lang/es/register.txt
/dokuwiki/inc/lang/it/lang.php
/dokuwiki/lib/exe/js.php
/dokuwiki/lib/plugins/acl/lang/es/help.txt
/dokuwiki/lib/plugins/acl/lang/es/lang.php
/dokuwiki/lib/plugins/authad/lang/es/lang.php
/dokuwiki/lib/plugins/authad/lang/es/settings.php
/dokuwiki/lib/plugins/authldap/lang/ca/settings.php
/dokuwiki/lib/plugins/authldap/lang/es/settings.php
/dokuwiki/lib/plugins/authldap/lang/it/settings.php
/dokuwiki/lib/plugins/authldap/lang/pt-br/settings.php
/dokuwiki/lib/plugins/authpdo/lang/ca/settings.php
/dokuwiki/lib/plugins/config/lang/es/intro.txt
/dokuwiki/lib/plugins/config/lang/es/lang.php
/dokuwiki/lib/plugins/config/lang/it/lang.php
/dokuwiki/lib/plugins/extension/Extension.php
/dokuwiki/lib/plugins/extension/Installer.php
/dokuwiki/lib/plugins/extension/_test/InstallerTest.php
/dokuwiki/lib/plugins/extension/_test/testdata/plugin3/syntax.php
/dokuwiki/lib/plugins/extension/cli.php
/dokuwiki/lib/plugins/extension/lang/ca/lang.php
/dokuwiki/lib/plugins/extension/lang/es/intro_install.txt
/dokuwiki/lib/plugins/extension/lang/es/intro_search.txt
/dokuwiki/lib/plugins/extension/lang/es/intro_templates.txt
/dokuwiki/lib/plugins/extension/lang/es/lang.php
/dokuwiki/lib/plugins/extension/lang/it/lang.php
/dokuwiki/lib/plugins/logviewer/lang/it/intro.txt
/dokuwiki/lib/plugins/logviewer/lang/it/lang.php
/dokuwiki/lib/plugins/logviewer/lang/it/nolog.txt
/dokuwiki/lib/plugins/popularity/lang/es/intro.txt
/dokuwiki/lib/plugins/styling/lang/es/lang.php
/dokuwiki/lib/plugins/usermanager/lang/de/lang.php
/dokuwiki/lib/plugins/usermanager/lang/es/lang.php
/dokuwiki/lib/plugins/usermanager/lang/it/lang.php
3152848f30-Oct-2025 Andreas Gohr <gohr@cosmocode.de>

updated fulltextCollectionTest for new tuple format

frequency of 1 is now written without a count

f439e74630-Oct-2025 Andreas Gohr <gohr@cosmocode.de>

updated assertion

e05998d530-Oct-2025 Andreas Gohr <gohr@cosmocode.de>

SearchIndex: more Term tests

bc997a9d30-Oct-2025 Andreas Gohr <gohr@cosmocode.de>

SearchIndex: TupleOps now work with frequencies of 1

We have indexes where we simply track that a relation between entity and
token exists, but there is no frequency. The frequency is always 1.
For

SearchIndex: TupleOps now work with frequencies of 1

We have indexes where we simply track that a relation between entity and
token exists, but there is no frequency. The frequency is always 1.
For those indexes we do not store *1 as frequency but omit it
completely.

The TupleOps class now can work with such indexes and will also store
frequencies of 1 like this.

show more ...

3f108b3723-Oct-2025 Andreas Gohr <gohr@cosmocode.de>

refactor preference cookie handling. fixes #4544

This refactors the DOKU_PREF cookie handling on the PHP side into a
class. It makes encoding/decoding more explicit and easier to
understand.

The ne

refactor preference cookie handling. fixes #4544

This refactors the DOKU_PREF cookie handling on the PHP side into a
class. It makes encoding/decoding more explicit and easier to
understand.

The new class is used in set_doku_pref() and get_doku_pref() which have
not been deprecated for now.

show more ...


tests/inc/common_dokupref.test.php
/dokuwiki/inc/Manifest.php
/dokuwiki/inc/PrefCookie.php
/dokuwiki/inc/Ui/Search.php
/dokuwiki/inc/common.php
/dokuwiki/inc/lang/es/editrev.txt
/dokuwiki/inc/lang/es/index.txt
/dokuwiki/inc/lang/es/lang.php
/dokuwiki/inc/lang/es/login.txt
/dokuwiki/inc/lang/es/pwconfirm.txt
/dokuwiki/inc/lang/es/resendpwd.txt
/dokuwiki/inc/lang/hu-formal/admin.txt
/dokuwiki/inc/lang/hu-formal/backlinks.txt
/dokuwiki/inc/lang/hu-formal/conflict.txt
/dokuwiki/inc/lang/hu-formal/denied.txt
/dokuwiki/inc/lang/hu-formal/diff.txt
/dokuwiki/inc/lang/hu-formal/draft.txt
/dokuwiki/inc/lang/hu-formal/edit.txt
/dokuwiki/inc/lang/hu-formal/editrev.txt
/dokuwiki/inc/lang/hu-formal/index.txt
/dokuwiki/inc/lang/hu-formal/install.html
/dokuwiki/inc/lang/hu-formal/jquery.ui.datepicker.js
/dokuwiki/inc/lang/hu-formal/lang.php
/dokuwiki/inc/lang/hu-formal/locked.txt
/dokuwiki/inc/lang/hu-formal/login.txt
/dokuwiki/inc/lang/hu-formal/mailtext.txt
/dokuwiki/inc/lang/hu-formal/mailwrap.html
/dokuwiki/inc/lang/hu-formal/newpage.txt
/dokuwiki/inc/lang/hu-formal/norev.txt
/dokuwiki/inc/lang/hu-formal/onceexisted.txt
/dokuwiki/inc/lang/hu-formal/password.txt
/dokuwiki/inc/lang/hu-formal/preview.txt
/dokuwiki/inc/lang/hu-formal/pwconfirm.txt
/dokuwiki/inc/lang/hu-formal/read.txt
/dokuwiki/inc/lang/hu-formal/recent.txt
/dokuwiki/inc/lang/hu-formal/register.txt
/dokuwiki/inc/lang/hu-formal/registermail.txt
/dokuwiki/inc/lang/hu-formal/resendpwd.txt
/dokuwiki/inc/lang/hu-formal/resetpwd.txt
/dokuwiki/inc/lang/hu-formal/revisions.txt
/dokuwiki/inc/lang/hu-formal/searchpage.txt
/dokuwiki/inc/lang/hu-formal/showrev.txt
/dokuwiki/inc/lang/hu-formal/stopwords.txt
/dokuwiki/inc/lang/hu-formal/subscr_digest.txt
/dokuwiki/inc/lang/hu-formal/subscr_form.txt
/dokuwiki/inc/lang/hu-formal/subscr_list.txt
/dokuwiki/inc/lang/hu-formal/subscr_single.txt
/dokuwiki/inc/lang/hu-formal/updateprofile.txt
/dokuwiki/inc/lang/hu-formal/uploadmail.txt
/dokuwiki/inc/lang/hu/admin.txt
/dokuwiki/inc/lang/hu/backlinks.txt
/dokuwiki/inc/lang/hu/conflict.txt
/dokuwiki/inc/lang/hu/denied.txt
/dokuwiki/inc/lang/hu/diff.txt
/dokuwiki/inc/lang/hu/draft.txt
/dokuwiki/inc/lang/hu/edit.txt
/dokuwiki/inc/lang/hu/editrev.txt
/dokuwiki/inc/lang/hu/index.txt
/dokuwiki/inc/lang/hu/install.html
/dokuwiki/inc/lang/hu/jquery.ui.datepicker.js
/dokuwiki/inc/lang/hu/lang.php
/dokuwiki/inc/lang/hu/locked.txt
/dokuwiki/inc/lang/hu/login.txt
/dokuwiki/inc/lang/hu/mailtext.txt
/dokuwiki/inc/lang/hu/newpage.txt
/dokuwiki/inc/lang/hu/onceexisted.txt
/dokuwiki/inc/lang/hu/password.txt
/dokuwiki/inc/lang/hu/preview.txt
/dokuwiki/inc/lang/hu/pwconfirm.txt
/dokuwiki/inc/lang/hu/read.txt
/dokuwiki/inc/lang/hu/recent.txt
/dokuwiki/inc/lang/hu/register.txt
/dokuwiki/inc/lang/hu/registermail.txt
/dokuwiki/inc/lang/hu/resendpwd.txt
/dokuwiki/inc/lang/hu/resetpwd.txt
/dokuwiki/inc/lang/hu/revisions.txt
/dokuwiki/inc/lang/hu/searchpage.txt
/dokuwiki/inc/lang/hu/subscr_digest.txt
/dokuwiki/inc/lang/hu/subscr_list.txt
/dokuwiki/inc/lang/hu/subscr_single.txt
/dokuwiki/inc/lang/hu/updateprofile.txt
/dokuwiki/inc/lang/hu/uploadmail.txt
/dokuwiki/lib/plugins/acl/lang/es/help.txt
/dokuwiki/lib/plugins/authad/lang/es/lang.php
/dokuwiki/lib/plugins/authad/lang/es/settings.php
/dokuwiki/lib/plugins/authldap/lang/es/settings.php
/dokuwiki/lib/plugins/config/lang/es/lang.php
/dokuwiki/lib/plugins/extension/lang/es/intro_plugins.txt
/dokuwiki/lib/plugins/extension/lang/es/intro_search.txt
/dokuwiki/lib/plugins/extension/lang/es/lang.php
/dokuwiki/lib/plugins/extension/lang/zh/lang.php
/dokuwiki/lib/plugins/popularity/lang/es/lang.php
/dokuwiki/lib/plugins/popularity/lang/es/submitted.txt
/dokuwiki/lib/plugins/usermanager/admin.php
/dokuwiki/lib/plugins/usermanager/lang/en/lang.php
/dokuwiki/lib/plugins/usermanager/lang/es/lang.php
/dokuwiki/lib/plugins/usermanager/lang/fr/lang.php
/dokuwiki/lib/plugins/usermanager/lang/pl/lang.php
/dokuwiki/lib/plugins/usermanager/lang/pt-br/lang.php
/dokuwiki/lib/plugins/usermanager/lang/pt/lang.php
/dokuwiki/lib/plugins/usermanager/lang/zh/lang.php
/dokuwiki/lib/tpl/dokuwiki/lang/es/style.txt
25a70af920-Sep-2025 WillForan <willforan@gmail.com>

fix(inc/Ip): 32bit arch compatible range check

* added docs about running tests on 32bit w/ podman.
* Updated tests to use string instead of int for comparison when 32bit.
* added `make_bitmask_3

fix(inc/Ip): 32bit arch compatible range check

* added docs about running tests on 32bit w/ podman.
* Updated tests to use string instead of int for comparison when 32bit.
* added `make_bitmask_32` and `bitmask64_32`. updated `ipInRange` to
use them.

Test failing for `test_ip_to_number`
```
podman run -v $PWD/..:/dokuwiki \
--workdir /dokuwiki/_test -it \
docker://wpstaging/php:8.3-32bit \
./vendor/bin/phpunit --verbose --stderr --filter ip_test
```

```

1) ip_test::test_ip_to_number with data set #3 ('38AF:3033:AA39:CDE3:1A46:094C...D:5300', 6, 4.084536385505709E+18, 1.8932109165344407E+18)
Failed asserting that two strings are identical.
--- Expected
+++ Actual
@@ @@
-'4084536385505709056'
+'4084536381210742243'

/dokuwiki/_test/tests/inc/Ip.test.php:52

2) ip_test::test_ip_to_number with data set #5 ('193.53.125.7', 4, 0, 3241508103)
Failed asserting that -1053459193 is identical to 3241508103.

```

show more ...


/dokuwiki/.htaccess.dist
/dokuwiki/README
README
tests/inc/Ip.test.php
/dokuwiki/bin/dwpage.php
/dokuwiki/composer.lock
/dokuwiki/doku.php
/dokuwiki/inc/Debug/DebugHelper.php
/dokuwiki/inc/Extension/PluginController.php
/dokuwiki/inc/Ip.php
/dokuwiki/inc/Menu/AbstractMenu.php
/dokuwiki/inc/Menu/Item/AbstractItem.php
/dokuwiki/inc/Menu/Item/Admin.php
/dokuwiki/inc/infoutils.php
/dokuwiki/inc/lang/de-informal/lang.php
/dokuwiki/inc/lang/de/backlinks.txt
/dokuwiki/inc/lang/de/draft.txt
/dokuwiki/inc/lang/de/edit.txt
/dokuwiki/inc/lang/de/index.txt
/dokuwiki/inc/lang/de/lang.php
/dokuwiki/inc/lang/es/lang.php
/dokuwiki/inc/lang/he/lang.php
/dokuwiki/inc/lang/he/onceexisted.txt
/dokuwiki/inc/lang/ko/lang.php
/dokuwiki/inc/lang/pl/lang.php
/dokuwiki/inc/media.php
/dokuwiki/lib/exe/detail.php
/dokuwiki/lib/exe/openapi.php
/dokuwiki/lib/images/smileys/biggrin.svg
/dokuwiki/lib/images/smileys/confused.svg
/dokuwiki/lib/images/smileys/cool.svg
/dokuwiki/lib/images/smileys/deleteme.svg
/dokuwiki/lib/images/smileys/doubt.svg
/dokuwiki/lib/images/smileys/doubt2.svg
/dokuwiki/lib/images/smileys/eek.svg
/dokuwiki/lib/images/smileys/exclaim.svg
/dokuwiki/lib/images/smileys/facepalm.svg
/dokuwiki/lib/images/smileys/fixme.svg
/dokuwiki/lib/images/smileys/fun.svg
/dokuwiki/lib/images/smileys/lol.svg
/dokuwiki/lib/images/smileys/neutral.svg
/dokuwiki/lib/images/smileys/question.svg
/dokuwiki/lib/images/smileys/razz.svg
/dokuwiki/lib/images/smileys/sad.svg
/dokuwiki/lib/images/smileys/silenced.svg
/dokuwiki/lib/images/smileys/smile.svg
/dokuwiki/lib/images/smileys/smile2.svg
/dokuwiki/lib/images/smileys/surprised.svg
/dokuwiki/lib/images/smileys/wink.svg
/dokuwiki/lib/plugins/authldap/lang/cs/settings.php
/dokuwiki/lib/plugins/authldap/lang/pt-br/settings.php
/dokuwiki/lib/plugins/authldap/lang/pt/settings.php
/dokuwiki/lib/plugins/authldap/lang/ru/settings.php
/dokuwiki/lib/plugins/authldap/lang/zh/settings.php
/dokuwiki/lib/plugins/config/lang/cs/lang.php
/dokuwiki/lib/plugins/config/lang/de-informal/lang.php
/dokuwiki/lib/plugins/config/lang/de/lang.php
/dokuwiki/lib/plugins/config/lang/es/lang.php
/dokuwiki/lib/plugins/config/lang/pt-br/lang.php
/dokuwiki/lib/plugins/config/lang/pt/lang.php
/dokuwiki/lib/plugins/config/lang/ru/lang.php
/dokuwiki/lib/plugins/config/lang/zh/lang.php
/dokuwiki/lib/plugins/extension/Extension.php
/dokuwiki/lib/plugins/extension/ExtensionApiResponse.php
/dokuwiki/lib/plugins/extension/GuiExtension.php
/dokuwiki/lib/plugins/extension/Installer.php
/dokuwiki/lib/plugins/extension/admin.php
/dokuwiki/lib/plugins/extension/lang/cs/lang.php
/dokuwiki/lib/plugins/extension/lang/de-informal/lang.php
/dokuwiki/lib/plugins/extension/lang/de/lang.php
/dokuwiki/lib/plugins/extension/lang/es/lang.php
/dokuwiki/lib/plugins/extension/lang/fr/lang.php
/dokuwiki/lib/plugins/extension/lang/he/lang.php
/dokuwiki/lib/plugins/extension/lang/ko/lang.php
/dokuwiki/lib/plugins/extension/lang/pt-br/lang.php
/dokuwiki/lib/plugins/extension/lang/pt/lang.php
/dokuwiki/lib/plugins/extension/lang/ru/lang.php
/dokuwiki/lib/plugins/extension/lang/zh/lang.php
/dokuwiki/lib/plugins/extension/remote.php
/dokuwiki/lib/plugins/extension/style.less
/dokuwiki/lib/plugins/logviewer/lang/de-informal/intro.txt
/dokuwiki/lib/plugins/logviewer/lang/de-informal/lang.php
/dokuwiki/lib/plugins/logviewer/lang/de-informal/nolog.txt
/dokuwiki/lib/plugins/logviewer/lang/es/lang.php
/dokuwiki/lib/plugins/popularity/helper.php
/dokuwiki/lib/styles/screen.css
/dokuwiki/lib/tpl/dokuwiki/lang/de-informal/lang.php
/dokuwiki/vendor/autoload.php
/dokuwiki/vendor/composer/InstalledVersions.php
/dokuwiki/vendor/composer/installed.json
/dokuwiki/vendor/composer/installed.php
/dokuwiki/vendor/kissifrot/php-ixr/README.md
/dokuwiki/vendor/kissifrot/php-ixr/src/Client/Client.php
/dokuwiki/vendor/kissifrot/php-ixr/src/Client/ClientSSL.php
/dokuwiki/vendor/kissifrot/php-ixr/src/DataType/Value.php
/dokuwiki/vendor/kissifrot/php-ixr/src/Message/Message.php
/dokuwiki/vendor/kissifrot/php-ixr/src/Server/ClassServer.php
/dokuwiki/vendor/kissifrot/php-ixr/src/Server/Server.php
/dokuwiki/vendor/php81_bc/strftime/.gitignore
/dokuwiki/vendor/php81_bc/strftime/src/IntlLocaleFormatter.php
/dokuwiki/vendor/php81_bc/strftime/src/php-8.1-strftime.php
2e0b7f7402-Sep-2025 Andreas Gohr <gohr@cosmocode.de>

set DOKU_INC in rector

I had several cases where rector failed to work on plugins without this.
I'm not 100% sure why, but it doesn't hurt to set this early.

7caad01204-Jun-2025 Andreas Gohr <gohr@cosmocode.de>

extend tests, fix issues with new Ip methods


/dokuwiki/.htaccess.dist
/dokuwiki/README
tests/inc/IpTest.php
/dokuwiki/composer.lock
/dokuwiki/doku.php
/dokuwiki/inc/Ip.php
/dokuwiki/inc/Menu/AbstractMenu.php
/dokuwiki/inc/Menu/Item/Admin.php
/dokuwiki/inc/auth.php
/dokuwiki/inc/common.php
/dokuwiki/inc/infoutils.php
/dokuwiki/inc/init.php
/dokuwiki/inc/lang/de-informal/lang.php
/dokuwiki/inc/lang/de/backlinks.txt
/dokuwiki/inc/lang/de/draft.txt
/dokuwiki/inc/lang/de/edit.txt
/dokuwiki/inc/lang/de/index.txt
/dokuwiki/inc/lang/de/lang.php
/dokuwiki/inc/lang/es/lang.php
/dokuwiki/inc/lang/ko/lang.php
/dokuwiki/lib/exe/detail.php
/dokuwiki/lib/exe/js.php
/dokuwiki/lib/images/smileys/biggrin.svg
/dokuwiki/lib/images/smileys/confused.svg
/dokuwiki/lib/images/smileys/cool.svg
/dokuwiki/lib/images/smileys/deleteme.svg
/dokuwiki/lib/images/smileys/doubt.svg
/dokuwiki/lib/images/smileys/doubt2.svg
/dokuwiki/lib/images/smileys/eek.svg
/dokuwiki/lib/images/smileys/exclaim.svg
/dokuwiki/lib/images/smileys/facepalm.svg
/dokuwiki/lib/images/smileys/fixme.svg
/dokuwiki/lib/images/smileys/fun.svg
/dokuwiki/lib/images/smileys/lol.svg
/dokuwiki/lib/images/smileys/neutral.svg
/dokuwiki/lib/images/smileys/question.svg
/dokuwiki/lib/images/smileys/razz.svg
/dokuwiki/lib/images/smileys/sad.svg
/dokuwiki/lib/images/smileys/silenced.svg
/dokuwiki/lib/images/smileys/smile.svg
/dokuwiki/lib/images/smileys/smile2.svg
/dokuwiki/lib/images/smileys/surprised.svg
/dokuwiki/lib/images/smileys/wink.svg
/dokuwiki/lib/plugins/authldap/lang/pt/settings.php
/dokuwiki/lib/plugins/authldap/lang/ru/settings.php
/dokuwiki/lib/plugins/config/lang/de-informal/lang.php
/dokuwiki/lib/plugins/config/lang/de/lang.php
/dokuwiki/lib/plugins/config/lang/es/lang.php
/dokuwiki/lib/plugins/config/lang/pt/lang.php
/dokuwiki/lib/plugins/config/lang/ru/lang.php
/dokuwiki/lib/plugins/extension/ExtensionApiResponse.php
/dokuwiki/lib/plugins/extension/GuiExtension.php
/dokuwiki/lib/plugins/extension/Installer.php
/dokuwiki/lib/plugins/extension/lang/de-informal/lang.php
/dokuwiki/lib/plugins/extension/lang/de/lang.php
/dokuwiki/lib/plugins/extension/lang/es/lang.php
/dokuwiki/lib/plugins/extension/lang/ko/lang.php
/dokuwiki/lib/plugins/extension/lang/pt/lang.php
/dokuwiki/lib/plugins/extension/lang/ru/lang.php
/dokuwiki/lib/plugins/extension/remote.php
/dokuwiki/lib/plugins/extension/style.less
/dokuwiki/lib/plugins/logviewer/lang/de-informal/intro.txt
/dokuwiki/lib/plugins/logviewer/lang/de-informal/lang.php
/dokuwiki/lib/plugins/logviewer/lang/de-informal/nolog.txt
/dokuwiki/lib/plugins/logviewer/lang/es/lang.php
/dokuwiki/lib/styles/screen.css
/dokuwiki/lib/tpl/dokuwiki/lang/de-informal/lang.php
/dokuwiki/vendor/autoload.php
/dokuwiki/vendor/composer/InstalledVersions.php
/dokuwiki/vendor/composer/installed.json
/dokuwiki/vendor/composer/installed.php
/dokuwiki/vendor/kissifrot/php-ixr/README.md
/dokuwiki/vendor/kissifrot/php-ixr/src/Client/Client.php
/dokuwiki/vendor/kissifrot/php-ixr/src/Client/ClientSSL.php
/dokuwiki/vendor/kissifrot/php-ixr/src/DataType/Value.php
/dokuwiki/vendor/kissifrot/php-ixr/src/Message/Message.php
/dokuwiki/vendor/kissifrot/php-ixr/src/Server/ClassServer.php
/dokuwiki/vendor/kissifrot/php-ixr/src/Server/Server.php
/dokuwiki/vendor/php81_bc/strftime/.gitignore
/dokuwiki/vendor/php81_bc/strftime/src/IntlLocaleFormatter.php
/dokuwiki/vendor/php81_bc/strftime/src/php-8.1-strftime.php

12345678910>>...44