[xwiki-contrib/documentation] d03c3d: OP#105: Improve colors for the deprecated macro
Branch: refs/heads/confluence-multifields Home: https://github.com/xwiki-contrib/documentation Commit: d03c3d67fccddcfe6feebc624d868073f128bd04 https://github.com/xwiki-contrib/documentation/commit/d03c3d67fccddcfe6feebc... Author: Vincent Massol <[email protected]> Date: 2026-06-30 (Tue, 30 Jun 2026) Changed paths: M documentation-ui/src/main/resources/DocApp/Code/DeprecatedMacro.xml Log Message: ----------- OP#105: Improve colors for the deprecated macro Commit: 529fa8753013243fad4925ed4bed6c77549c0baf https://github.com/xwiki-contrib/documentation/commit/529fa8753013243fad4925... Author: Vincent Massol <[email protected]> Date: 2026-06-30 (Tue, 30 Jun 2026) Changed paths: M README.md A documentation-test/documentation-test-docker/pom.xml A documentation-test/documentation-test-docker/src/test/it/org/xwiki/contrib/documentation/test/docker/DocumentationIT.java A documentation-test/documentation-test-pageobjects/pom.xml A documentation-test/documentation-test-pageobjects/src/main/java/org/xwiki/contrib/documentation/test/po/DocumentationViewPage.java A documentation-test/pom.xml M documentation-ui/pom.xml M pom.xml Log Message: ----------- [Misc] Add some missing functional tests + fix missing dep + update minimal XWiki version to 17.10.x (since the code needs the #inlineWarning() macro introduced in 17.x) Commit: 6412a92a5e22ed188d189b5038b811f1427531b8 https://github.com/xwiki-contrib/documentation/commit/6412a92a5e22ed188d189b... Author: Vincent Massol <[email protected]> Date: 2026-07-01 (Wed, 01 Jul 2026) Changed paths: M documentation-test/documentation-test-docker/src/test/it/org/xwiki/contrib/documentation/test/docker/DocumentationIT.java M documentation-test/documentation-test-pageobjects/src/main/java/org/xwiki/contrib/documentation/test/po/DocumentationViewPage.java M documentation-ui/src/main/resources/DocApp/Code/DeprecatedMacro.xml Log Message: ----------- OP#107: Deprecated macro doesn't work when used inline Commit: 3f9c59b5f1992e2825620b00e507a63bb624e8c2 https://github.com/xwiki-contrib/documentation/commit/3f9c59b5f1992e2825620b... Author: Vincent Massol <[email protected]> Date: 2026-07-01 (Wed, 01 Jul 2026) Changed paths: M documentation-test/documentation-test-docker/src/test/it/org/xwiki/contrib/documentation/test/docker/DocumentationIT.java M documentation-ui/src/main/resources/DocApp/Code/DocumentationSheet.xml Log Message: ----------- OP#116: Having both a Documentation Class object and a Documentation UIXP object in a page doesn't display the fields of the Documentation Class object Commit: 8bd148b3745836b0dac18251cf99d521fa33e69f https://github.com/xwiki-contrib/documentation/commit/8bd148b3745836b0dac182... Author: Vincent Massol <[email protected]> Date: 2026-07-01 (Wed, 01 Jul 2026) Changed paths: M documentation-ui/src/main/resources/DocApp/Code/DocumentationClass.xml Log Message: ----------- OP#117: The type field of the Documentation Class shows "How-to" twice in the dropdown Commit: e8712cec42dff42e62420ec4d17516ae231be403 https://github.com/xwiki-contrib/documentation/commit/e8712cec42dff42e62420e... Author: Vincent Massol <[email protected]> Date: 2026-07-01 (Wed, 01 Jul 2026) Changed paths: M documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/AttachmentNameCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/VideoAttachmentCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/VideoMacroCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/VideoAttachmentCheckTest.java M documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/VideoMacroCheckTest.java Log Message: ----------- [Misc] Use Locale.ROOT for file extension case-folding in video/attachment checks Locale-sensitive toLowerCase() can fold an uppercase "I" to a dotless "ı" in Turkish/Azeri locales, causing extensions like ".AVI" to no longer match the lowercase VIDEO_EXTENSIONS set and silently skip the video checks. Commit: 5a881134767257608b7c7f7b650689e7b8abcba7 https://github.com/xwiki-contrib/documentation/commit/5a881134767257608b7c7f... Author: Vincent Massol <[email protected]> Date: 2026-07-01 (Wed, 01 Jul 2026) Changed paths: A documentation-api/src/test/java/org/xwiki/contrib/documentation/internal/DocumentationEventListenerTest.java Log Message: ----------- [Misc] Add unit tests for DocumentationEventListener onEvent guards Covers the three onEvent guards (DocumentationClass presence, the infinite-recursion protection via save comment, and the DocApp space exclusion) plus both DocumentCreatedEvent and DocumentUpdatedEvent. Commit: e0931d8bf7f2755d0209481b3d1e8a9b9d5c8520 https://github.com/xwiki-contrib/documentation/commit/e0931d8bf7f2755d020948... Author: Vincent Massol <[email protected]> Date: 2026-07-01 (Wed, 01 Jul 2026) Changed paths: A documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/SyntaxCheckTest.java Log Message: ----------- [Misc] Add missing unit test for SyntaxCheck SyntaxCheck was the only DocumentationCheck without a unit test. Commit: bf42835ecc9517be7197d9e5f64142bca2b76460 https://github.com/xwiki-contrib/documentation/commit/bf42835ecc9517be7197d9... Author: Vincent Massol <[email protected]> Date: 2026-07-01 (Wed, 01 Jul 2026) Changed paths: A documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/AbstractXDOMDocumentationCheckTest.java Log Message: ----------- [Misc] Add unit tests for AbstractXDOMDocumentationCheck uncovered branches Covers the FAQ parse failure warning, the skipMacroId skip, and macros whose content descriptor is not LIST_BLOCK_TYPE in checkInsideWikiMacros. A minimal concrete subclass is instantiated directly (its inject fields wired manually with mocks) since the base class is abstract and test-local @Component classes are not picked up by the component annotation scanner. Commit: 3bf93d3a27ff65bf99cab697273a5d451ad69e22 https://github.com/xwiki-contrib/documentation/commit/3bf93d3a27ff65bf99cab6... Author: Vincent Massol <[email protected]> Date: 2026-07-01 (Wed, 01 Jul 2026) Changed paths: M documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/ImageMacroAltCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/ImageMacroAltCheckTest.java Log Message: ----------- [Misc] Stop rendering the literal null in ImageMacroAltCheck violation context When an image macro has no alt and no reference parameter, the violation context previously read 'Image reference : null'; it now reads 'Image reference : ' instead. Commit: 152f541479a034b254ed081ec0e16ee2622b6344 https://github.com/xwiki-contrib/documentation/commit/152f541479a034b254ed08... Author: Vincent Massol <[email protected]> Date: 2026-07-01 (Wed, 01 Jul 2026) Changed paths: M documentation-api/pom.xml A documentation-api/src/main/java/org/xwiki/contrib/documentation/internal/ImageMacroRefactoring.java M documentation-api/src/main/resources/META-INF/components.txt A documentation-api/src/test/java/org/xwiki/contrib/documentation/internal/ImageMacroRefactoringTest.java Log Message: ----------- OP#112: Add a refactoring listener for the image macro's reference parameter Commit: 82323f90a171fd58265b90e0910882ad29bb8774 https://github.com/xwiki-contrib/documentation/commit/82323f90a171fd58265b90... Author: Vincent Massol <[email protected]> Date: 2026-07-01 (Wed, 01 Jul 2026) Changed paths: M documentation-ui/src/main/resources/DocApp/Code/DocumentationDocextra.xml Log Message: ----------- [Misc] Escape the violation message when rendering the documentation docextra tab Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]> Commit: 5a66affb5614881fd1f3007d3ddadd4df1acb994 https://github.com/xwiki-contrib/documentation/commit/5a66affb5614881fd1f300... Author: Vincent Massol <[email protected]> Date: 2026-07-03 (Fri, 03 Jul 2026) Changed paths: M documentation-api/pom.xml M documentation-test/documentation-test-docker/pom.xml M documentation-test/documentation-test-pageobjects/pom.xml M documentation-test/pom.xml M documentation-ui/pom.xml M documentation-xwikiorg/documentation-xwikiorg-api/pom.xml M documentation-xwikiorg/documentation-xwikiorg-ui/pom.xml M documentation-xwikiorg/pom.xml M pom.xml Log Message: ----------- [maven-release-plugin] prepare release documentation-1.14 Commit: e56ccc4ebf75f338256dbaed001ec2d04bf2f795 https://github.com/xwiki-contrib/documentation/commit/e56ccc4ebf75f338256dba... Author: Vincent Massol <[email protected]> Date: 2026-07-03 (Fri, 03 Jul 2026) Changed paths: M documentation-api/pom.xml M documentation-test/documentation-test-docker/pom.xml M documentation-test/documentation-test-pageobjects/pom.xml M documentation-test/pom.xml M documentation-ui/pom.xml M documentation-xwikiorg/documentation-xwikiorg-api/pom.xml M documentation-xwikiorg/documentation-xwikiorg-ui/pom.xml M documentation-xwikiorg/pom.xml M pom.xml Log Message: ----------- [maven-release-plugin] prepare for next development iteration Commit: 67dc3cd7ad345f6e8d1a69aaa35666027c559849 https://github.com/xwiki-contrib/documentation/commit/67dc3cd7ad345f6e8d1a69... Author: Thomas Mortagne <[email protected]> Date: 2026-08-28 (Fri, 28 Aug 2026) Changed paths: M pom.xml Log Message: ----------- Fix project name and description Commit: 4cb5d0922ea963385d9b0929398c79f111cf3a43 https://github.com/xwiki-contrib/documentation/commit/4cb5d0922ea963385d9b09... Author: Vincent Massol <[email protected]> Date: 2026-09-04 (Fri, 04 Sep 2026) Changed paths: M documentation-test/documentation-test-docker/src/test/it/org/xwiki/contrib/documentation/test/docker/DocumentationIT.java M documentation-test/documentation-test-pageobjects/src/main/java/org/xwiki/contrib/documentation/test/po/DocumentationViewPage.java M documentation-ui/src/main/resources/DocApp/Code/ImageMacro.xml Log Message: ----------- OP#126: {{image}} macro declares an "alt" parameter but never uses it — rendered images fall back to file name (WCAG 2.2 SC 1.1.1) (#13) * The Image macro now passes its declared "alt" parameter on to the image syntax it generates. It is escaped for the generated syntax with $services.rendering.escape: the alt text becomes a quoted image parameter, so an unescaped double quote or closing square bracket in it would end that parameter and silently truncate the text. * An absent or empty alt emits no parameter at all, so nothing changes for a page that sets none (the renderer keeps falling back to the file name, which ImageMacroAltCheck already reports). * DocumentationIT gains a regression guard on the rendered alt attribute, its fixture carrying both characters that need escaping, and DocumentationViewPage a getContentImageAlt() accessor. * Verified: documentation-ui builds (xar:format/xar:verify clean) and DocumentationIT is 9/9 green; reverting only the macro makes the new test fail with alt "foo.png", which is the reported bug. Co-authored-by: Claude Opus 5 (1M context) <[email protected]> Commit: 8b2b345b277375eab1a49d02d78bb80b812d5e03 https://github.com/xwiki-contrib/documentation/commit/8b2b345b277375eab1a49d... Author: Vincent Massol <[email protected]> Date: 2026-09-04 (Fri, 04 Sep 2026) Changed paths: M documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/AttachmentNameCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/KebabNameValidator.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/PageNameCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/AttachmentNameCheckTest.java M documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/KebabNameValidatorTest.java M documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/PageNameCheckTest.java Log Message: ----------- OP#127: The kebab-case check rejects valid names and proposes a name that means the opposite (#14) * Decide kebab-case validity with a pattern instead of round-tripping through toKebab(), so a name that is already lowercase and hyphen-separated is no longer reported as a kebab-case error just because it holds a stop word. The pattern also rejects the underscore, which toKebab() used to keep and which is not kebab-case. * Split the one check into three independent rules — kebab-case shape, stop words, documentation-type words — each with its own predicate, its own transformation and its own violation, so the proposed name only ever fixes the rule that was reported. Stop words are now a Warning of their own naming the words found, rather than an Error about kebab-case. * Remove the meaning-bearing words from STOP_WORDS: every negation ("no", "not", "cannot", …) and every direction or relation word ("above", "below", "before", "after", "up", "down", …). A name such as cannot-restore describes the opposite of restore, so no rule may ask an author to shorten one into the other. Co-authored-by: Claude Opus 5 (1M context) <[email protected]> Commit: 63cb2056ebdc5bd61db930237f16320dbaa833d6 https://github.com/xwiki-contrib/documentation/commit/63cb2056ebdc5bd61db930... Author: Vincent Massol <[email protected]> Date: 2026-10-06 (Tue, 06 Oct 2026) Changed paths: M documentation-test/documentation-test-docker/pom.xml M documentation-test/documentation-test-docker/src/test/it/org/xwiki/contrib/documentation/test/docker/DocumentationIT.java M documentation-xwikiorg/documentation-xwikiorg-api/pom.xml A documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/DocumentationConfigurationSource.java A documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/VersionMacroCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/resources/META-INF/components.txt A documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/DocumentationConfigurationSourceTest.java A documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/VersionMacroCheckTest.java M documentation-xwikiorg/documentation-xwikiorg-ui/pom.xml A documentation-xwikiorg/documentation-xwikiorg-ui/src/main/resources/DocApp/Code/DocumentationConfiguration.xml A documentation-xwikiorg/documentation-xwikiorg-ui/src/main/resources/DocApp/Code/DocumentationConfigurationClass.xml A documentation-xwikiorg/documentation-xwikiorg-ui/src/main/resources/DocApp/Code/XWikiOrgTranslations.xml Log Message: ----------- DA-96: Add a check for version macros older than the supported LTS cycle (#15) * DA-96: Add a check for version macros older than the supported LTS cycle * Add a `versionMacro` check reporting, as a Warning, every `{{version}}` macro without a `product` parameter whose `since` (or, when `since` is empty, `before`) versions are all older than the oldest supported XWiki version * Add a "Documentation" section to the wiki Administration (Other category), backed by the new `DocApp.Code.DocumentationConfigurationClass` and `DocApp.Code.DocumentationConfiguration` pages, to set that oldest supported version; do nothing when it is empty * Read it live through a new `documentation` configuration source based on `AbstractDocumentConfigurationSource`, whose cache is cleared when the configuration object changes, so no restart is needed * Look in the page content, the FAQ and inside macros whose content is wiki content (including other version macros) * Compare versions with the xwiki-commons extension `DefaultVersion`, already a transitive dependency * Add a functional test setting the version in the Administration and checking that the violation is then reported Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]> * DA-96: Add a check for version macros older than the supported LTS cycle * Also check version macros whose product parameter is explicitly set to XWiki (the macro's default product), case-insensitively; macros about any other product (e.g. extensions) are still ignored Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]> * DA-96: Add a check for version macros older than the supported LTS cycle * Declare the runtime dependency on xwiki-platform-administration-ui, needed by XWiki.ConfigurableClass to display the Documentation Administration section (it was missing from the functional test instance) * Fix the functional test to locate the Administration form by the page holding the ConfigurableClass object (DocApp.Code.DocumentationConfiguration), which is what ConfigurableClass uses for the form id, rather than by the configuration class Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]> --------- Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]> Commit: 65590f78b500ee22d4059b404f63429dc0c1c6a3 https://github.com/xwiki-contrib/documentation/commit/65590f78b500ee22d4059b... Author: Vincent Massol <[email protected]> Date: 2026-10-06 (Tue, 06 Oct 2026) Changed paths: A documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/LevelOneHeadingCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/resources/META-INF/components.txt A documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/LevelOneHeadingCheckTest.java Log Message: ----------- DA-86: Add a check for level 1 headings in the page content (#16) * Add the `levelOneHeading` check (`LevelOneHeadingCheck`), reporting every level 1 heading of the page content, including inside macros whose content is wiki content, as an Error with the heading text as context * Add `LevelOneHeadingCheckTest` Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]> Commit: 5c385ff6a41e5ce715600fc8003f7ff1efd55045 https://github.com/xwiki-contrib/documentation/commit/5c385ff6a41e5ce715600f... Author: Vincent Massol <[email protected]> Date: 2026-10-06 (Tue, 06 Oct 2026) Changed paths: M documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/ImageGalleryCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/ImageGalleryCheckTest.java Log Message: ----------- DA-75: The Gallery check reports an error for images that are not next to each other, and for images inside code examples (#17) * Rewrite ImageGalleryCheck on the parsed XDOM instead of a regex over the raw page source: report sibling images ([[image:...]]) and Image macros separated only by spaces, new lines or empty lines * Check the content, the FAQ and the macros whose content is wiki content (reusing AbstractXDOMDocumentationCheck), so images shown inside non-wiki content macros such as {{code}} are no longer reported; the content of the Gallery macro is not checked * Use "Image references : <ref1>, <ref2>, ..." as the violation context * Add tests for the reported reproduction cases, standalone macros, image syntax, wiki content macros, the Gallery macro and the FAQ Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]> Commit: cd4bed173b231bfba4eeaa072d0aa59c56736047 https://github.com/xwiki-contrib/documentation/commit/cd4bed173b231bfba4eeaa... Author: Vincent Massol <[email protected]> Date: 2026-10-06 (Tue, 06 Oct 2026) Changed paths: M documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/AbstractXDOMDocumentationCheck.java A documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/XWikiOrgURLLinkCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/resources/META-INF/components.txt A documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/XWikiOrgURLLinkCheckTest.java Log Message: ----------- DA-79: Add a check for URL links to xwiki.org pages instead of page references (#18) * Add the `xwikiOrgURLLink` check (`XWikiOrgURLLinkCheck`), reporting as an Error every link of type URL whose host is `xwiki.org` or a sub-domain of it and whose path starts with `/xwiki/bin/` or `/xwiki/wiki/`, with the URL as context * Look in the page content, the FAQ, Related and Highlights xproperties, and inside macros whose content is wiki content * Generalize the FAQ parsing of `AbstractXDOMDocumentationCheck` into `parseXPropertyXDOM()` so that the Related and Highlights xproperties can be parsed too * Add `XWikiOrgURLLinkCheckTest` Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]> Commit: cd967aaa2c41c4a28581c8d0fbebb63724403da4 https://github.com/xwiki-contrib/documentation/commit/cd967aaa2c41c4a28581c8... Author: Vincent Massol <[email protected]> Date: 2026-10-06 (Tue, 06 Oct 2026) Changed paths: A documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/CodeMacroLanguageCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/resources/META-INF/components.txt A documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/CodeMacroLanguageCheckTest.java Log Message: ----------- DA-78: Add a check that code macros specify the language parameter (#19) * Add the codeMacroLanguage check (CodeMacroLanguageCheck), which reports a Warning for every code macro without a language parameter or with a blank one, in the page content, the FAQ and inside macros whose content is wiki content. The context holds the first characters of the code macro content. * Add CodeMacroLanguageCheckTest. Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]> Commit: 8cac5fa8e7f7df5383433385d912f935affe40f5 https://github.com/xwiki-contrib/documentation/commit/8cac5fa8e7f7df53834333... Author: Vincent Massol <[email protected]> Date: 2026-10-06 (Tue, 06 Oct 2026) Changed paths: A documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/RelatedChildPageCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/resources/META-INF/components.txt A documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/RelatedChildPageCheckTest.java Log Message: ----------- DA-89: Add a check for child pages listed in the Related field (#20) * Add the relatedChildPage check, which parses the Related field of the DocumentationClass object (including the content of macros holding wiki content), resolves every link relative to the current page and reports, as an Error, the links pointing to a direct child of the current page, since child pages are already listed in the More section. * A link is a direct child link when the parent of the linked page in the nested page hierarchy is the current page; only links to pages (doc:, page:, space: and untyped links) are considered, so links to an attachment of a child page, URLs, mailto, etc. are ignored, and terminal pages are never checked since they cannot have children. * Parse the Related field with the shared parseXPropertyXDOM() helper. * Add RelatedChildPageCheckTest covering nested, terminal, relative, page: and space: child links, grandchildren, siblings, self links, external and attachment links, links inside macros and parse failures. Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]> Commit: 460e03db6a7481ca40902c99a149b7da78ef5bd5 https://github.com/xwiki-contrib/documentation/commit/460e03db6a7481ca40902c... Author: Vincent Massol <[email protected]> Date: 2026-10-06 (Tue, 06 Oct 2026) Changed paths: A documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/ImageAttachmentFormatCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/resources/META-INF/components.txt A documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/ImageAttachmentFormatCheckTest.java Log Message: ----------- DA-83: Add a check for image attachments that are not PNG (#21) * Add ImageAttachmentFormatCheck (imageAttachmentFormat), which reports as an Error every attachment whose extension (case-insensitive) is jpg, jpeg, gif, bmp, tif, tiff or webp; SVG is not reported * For a GIF, the message also says to replace animated GIFs with several PNGs Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]> Commit: a1b922de9b9bceea10415a02ba37889a13a7f160 https://github.com/xwiki-contrib/documentation/commit/a1b922de9b9bceea10415a... Author: Vincent Massol <[email protected]> Date: 2026-10-06 (Tue, 06 Oct 2026) Changed paths: M documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/VerbCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/VerbCheckTest.java Log Message: ----------- DA-76: The verb check never checks the page name of pages that have children (#22) * Use the last space name as the page name in VerbCheck when the document is a WebHome (non-terminal page), as PageNameCheck does * Add tests for How-To and Reference non-terminal pages Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]> Commit: 1145c73acf90b6b7f4fb0901e09026f21e0cec31 https://github.com/xwiki-contrib/documentation/commit/1145c73acf90b6b7f4fb09... Author: Vincent Massol <[email protected]> Date: 2026-10-07 (Wed, 07 Oct 2026) Changed paths: A documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/HTMLMacroCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/resources/META-INF/components.txt A documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/HTMLMacroCheckTest.java Log Message: ----------- DA-81: Add a check for usage of the HTML macro (#23) * Add the htmlMacro check (HTMLMacroCheck), which reports a Warning for every html macro in the page content, the FAQ and inside macros whose content is wiki content, since the Documentation Style asks to avoid HTML code and use XWiki Syntax instead. The context holds the first characters of the macro content. * Add HTMLMacroCheckTest. Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]> Commit: 385371b6976dc0c9357f4eb7084451132c7026ef https://github.com/xwiki-contrib/documentation/commit/385371b6976dc0c9357f4e... Author: Vincent Massol <[email protected]> Date: 2026-10-07 (Wed, 07 Oct 2026) Changed paths: A documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/FAQEntryHeadingCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/resources/META-INF/components.txt A documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/FAQEntryHeadingCheckTest.java Log Message: ----------- DA-87: Add a check that FAQ entries are level 2 headings phrased as questions (#24) * Add the `faqEntryHeading` check (`FAQEntryHeadingCheck`), reporting as a Warning every heading of the FAQ field that is not a level 2 heading, and every level 2 heading of the FAQ field that doesn't end with a question mark, with the heading text as context * Add `FAQEntryHeadingCheckTest` Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]> Commit: 714f93e2dd3bb8a9ce64dc1f068c165966d5d771 https://github.com/xwiki-contrib/documentation/commit/714f93e2dd3bb8a9ce64dc... Author: Vincent Massol <[email protected]> Date: 2026-10-07 (Wed, 07 Oct 2026) Changed paths: A documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/GitHubSCMLinkCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/resources/META-INF/components.txt A documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/GitHubSCMLinkCheckTest.java Log Message: ----------- DA-80: Add a check for links to files on GitHub that don't use the SCM macro (#25) * Add the `gitHubSCMLink` check (`GitHubSCMLinkCheck`), reporting as an Error every link of type URL to a file or directory of a repository of the `xwiki` or `xwiki-contrib` GitHub organizations (path `/<org>/<repo>/blob/...` or `/<org>/<repo>/tree/...`), with the URL as context * Look in the page content, the FAQ and Related xproperties, and inside macros whose content is wiki content * Parse the FAQ and Related xproperties with the shared `AbstractXDOMDocumentationCheck.parseXPropertyXDOM()` * Add `GitHubSCMLinkCheckTest` Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]> Commit: d8d8b8dae79c15bfb694b4c1c0539d4b58177f79 https://github.com/xwiki-contrib/documentation/commit/d8d8b8dae79c15bfb694b4... Author: Vincent Massol <[email protected]> Date: 2026-10-07 (Wed, 07 Oct 2026) Changed paths: A documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/PlantUMLThemeCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/resources/META-INF/components.txt A documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/PlantUMLThemeCheckTest.java Log Message: ----------- DA-93: Add a check that PlantUML diagrams use the bluegray theme (#27) * Add the plantUMLTheme check (PlantUMLThemeCheck), which reports an Error for every plantuml macro whose content has no "!theme bluegray" line, in the page content, the FAQ and inside macros whose content is wiki content. The context holds the first non-blank line of the diagram. * Add PlantUMLThemeCheckTest. Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]> Commit: a6c07c362364955d10622b7171c4b13009a4a4be https://github.com/xwiki-contrib/documentation/commit/a6c07c362364955d10622b... Author: Vincent Massol <[email protected]> Date: 2026-10-07 (Wed, 07 Oct 2026) Changed paths: M documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/KebabNameValidator.java M documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/KebabNameValidatorTest.java M documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/PageNameCheckTest.java M documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/PageTitleCheckTest.java Log Message: ----------- DA-77: Titles starting with "How to" are not reported as containing a documentation-type word (#28) * Treat the consecutive segments "how" and "to" of a kebab name as the "howto" reserved word in KebabNameValidator, so that "How to ..." and "How-to: ..." titles, and "how-to-..." page and attachment names, are reported * Remove both segments in removeReservedWords, so that the proposed name for "how-to-install-xwiki" is "install-xwiki" * Add tests for KebabNameValidator, PageTitleCheck and PageNameCheck Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]> Commit: 85364564d9816382ecf938d7fdf2ff193cdeb2b8 https://github.com/xwiki-contrib/documentation/commit/85364564d9816382ecf938... Author: Vincent Massol <[email protected]> Date: 2026-10-07 (Wed, 07 Oct 2026) Changed paths: A documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/HighlightsCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/resources/META-INF/components.txt A documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/HighlightsCheckTest.java Log Message: ----------- DA-88: Add checks for the number and the syntax of Highlights (#29) * Add the `highlights` check (`HighlightsCheck`), which parses the Highlights field of the DocumentationClass object and reports more than 6 first-level list items as an Error * Report as a Warning, with the item text as context, every first-level item without a link, and every first-level item without exactly one nested list item (its description) * Report nothing when the field is empty, and log a warning when it can't be parsed * Add `HighlightsCheckTest` Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]> Commit: 43b5e954c4716b3f9f04111401753a9eebe07786 https://github.com/xwiki-contrib/documentation/commit/43b5e954c4716b3f9f0411... Author: Vincent Massol <[email protected]> Date: 2026-10-07 (Wed, 07 Oct 2026) Changed paths: A documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/RelatedLinkLabelCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/resources/META-INF/components.txt A documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/RelatedLinkLabelCheckTest.java Log Message: ----------- DA-90: Add a check for the label format of links in the Related field (#30) * Add the relatedLinkLabel check, which parses the Related field of the DocumentationClass object (including the content of macros holding wiki content) and, for every link whose label contains "(for ", reports a Warning when the label is not exactly "<title> (for <target>)". * The expected title is the title of the linked page and the expected target is the audience of its DocumentationClass object (user, administrator, developer mapped to User, Administrator, Developer). The linked page is resolved relative to the current page and loaded through the XWikiContext. * When the linked page cannot be loaded, does not exist, or has no title or target, only what can be verified is checked: the label's own title is kept and the target must be one of User, Administrator or Developer. * Add RelatedLinkLabelCheckTest covering valid labels, wrong capitalization, invalid and mismatched targets, trailing text, missing or partial linked pages, external links, links inside macros, and parse and load failures. Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]> Commit: 96f708dbfc9345e153bfa01ce70a7a75eed78463 https://github.com/xwiki-contrib/documentation/commit/96f708dbfc9345e153bfa0... Author: Vincent Massol <[email protected]> Date: 2026-10-07 (Wed, 07 Oct 2026) Changed paths: M documentation-xwikiorg/documentation-xwikiorg-api/pom.xml A documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/ScriptMacroCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/resources/META-INF/components.txt A documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/ScriptMacroCheckTest.java Log Message: ----------- DA-95: Add a check for script macros in documentation pages (#31) * Add the scriptMacro check (ScriptMacroCheck), which reports a Warning for every script macro in the page content, the FAQ and inside macros whose content is wiki content, since an example result must be shown with a screenshot rather than generated. A macro is a script macro when its implementation is a ScriptMacro, so Velocity, Groovy, Python, Script and any other JSR-223 script macro are covered. Code shown inside a code macro is not reported. The context holds the macro id and the first characters of its content. * Depend on xwiki-platform-rendering-macro-script for the ScriptMacro interface. * Add ScriptMacroCheckTest. Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]> Commit: 42af26829b962567392e5a5837ae40a44157df8e https://github.com/xwiki-contrib/documentation/commit/42af26829b962567392e5a... Author: Vincent Massol <[email protected]> Date: 2026-10-07 (Wed, 07 Oct 2026) Changed paths: A documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/InlineStyleCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/resources/META-INF/components.txt A documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/InlineStyleCheckTest.java Log Message: ----------- DA-82: Add a check for inline styles in the content (#32) * Add the `inlineStyle` check (`InlineStyleCheck`), reporting as a Warning every block (paragraph, group, formatting, list, list item, table, table cell, heading, link, image, ...) that has a `style` parameter, with the style value as context * Ignore macro parameters (`MacroBlock` and `MacroMarkerBlock`) * Look in the page content, the FAQ, and inside macros whose content is wiki content * Add `InlineStyleCheckTest`, which parses real XWiki 2.1 markup Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]> Commit: 843e1f366541f6083ac85e164e29a5c5077c06eb https://github.com/xwiki-contrib/documentation/commit/843e1f366541f6083ac85e... Author: Vincent Massol <[email protected]> Date: 2026-10-07 (Wed, 07 Oct 2026) Changed paths: A documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/LocationCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/resources/META-INF/components.txt A documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/LocationCheckTest.java Log Message: ----------- DA-91: Add a check that documentation pages are in the right location (#33) * Add the location check, which reports an Error when a documentation page is not in the main wiki under documentation.xs.<audience> or documentation.extensions.<audience>, where <audience> is user, admin or dev (the audience page itself does not count as being under it). * Report a second Error when the page is in the documentation tree but the audience part of its location does not match the target of its DocumentationClass object (user -> user, administrator -> admin, developer -> dev). Pages with no target are only checked for the location. * The violation context gives the page reference, the target and the expected location prefix. * Add LocationCheckTest covering valid locations, a missing target, a mismatched audience, another wiki, the old Documentation space, invalid section and audience names, and pages located directly in a section or on the audience page itself. Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]> Commit: 68ba761804b648758dcb835d4c4f99db4afddac1 https://github.com/xwiki-contrib/documentation/commit/68ba761804b648758dcb83... Author: Vincent Massol <[email protected]> Date: 2026-10-07 (Wed, 07 Oct 2026) Changed paths: A documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/TopLevelPageCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/resources/META-INF/components.txt A documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/TopLevelPageCheckTest.java Log Message: ----------- DA-92: Add checks for top-level documentation pages (#34) * Add the topLevelPage check, which applies to the top-level documentation pages only, i.e. the pages documentation.<xs|extensions>.<user|admin|dev>.<page>.WebHome, listed first in the navigation. * Report an Error when a top-level page is not of Explanation type, when its title has more than 3 words, and when its title contains a parenthetical qualifier; each rule is reported on its own, with the type or the title as context. * Add TopLevelPageCheckTest covering valid pages, each broken rule alone and all together, a missing DocumentationClass object, an empty title, and pages that are not top-level ones. Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]> Commit: 3bcd621765e5b19a5c98704a3e90de322a4b6401 https://github.com/xwiki-contrib/documentation/commit/3bcd621765e5b19a5c9870... Author: Vincent Massol <[email protected]> Date: 2026-10-07 (Wed, 07 Oct 2026) Changed paths: A documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/ImageMacroCaptionVersionCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/resources/META-INF/components.txt A documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/ImageMacroCaptionVersionCheckTest.java Log Message: ----------- DA-94: Add a check for image captions that mention a version (#36) * Add ImageMacroCaptionVersionCheck (imageMacroCaptionVersion), which reports as a Warning every {{image}} macro whose 'caption' contains a version number (e.g. 17.10, 16.10.5, 18.0.0RC1, 17.10-SNAPSHOT) or the word XWiki followed by a number * Look in the page content, the FAQ and inside macros whose content is wiki content * The context gives the image reference and the caption Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]> Commit: 18ba201c05433626b2fc2b8b958f271f18511b3c https://github.com/xwiki-contrib/documentation/commit/18ba201c05433626b2fc2b... Author: Vincent Massol <[email protected]> Date: 2026-10-07 (Wed, 07 Oct 2026) Changed paths: M documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/AbstractXDOMDocumentationCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/CodeMacroLanguageCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/GalleryMacroAltCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/HTMLMacroCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/ImageGalleryCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/ImageMacroAltCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/ImageMacroCaptionVersionCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/ImageMacroCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/InlineStyleCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/PlantUMLThemeCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/ScriptMacroCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/VersionMacroCheck.java Log Message: ----------- [Misc] Fix the SonarQube regex and duplication issues of the Image Macro Caption Version check (#38) * Replace the single version pattern, with its lookbehind and lookahead, by a search for runs of word characters and dots, each of which is matched as a whole against a simpler version pattern with possessive quantifiers, so that the matching is linear in the length of the caption * Match "XWiki" followed by a number with its own pattern * The same captions are reported as before * Add `AbstractXDOMDocumentationCheck#checkContentAndFAQ()`, which checks the content and the FAQ field of a page and the wiki content of their macros, and use it instead of the same code repeated in 11 checks Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]> Commit: b474c5410b4bb5485253b67f29d94b1f4b5d94b2 https://github.com/xwiki-contrib/documentation/commit/b474c5410b4bb5485253b6... Author: Vincent Massol <[email protected]> Date: 2026-10-07 (Wed, 07 Oct 2026) Changed paths: M documentation-xwikiorg/documentation-xwikiorg-api/pom.xml M documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/HighlightsCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/RelatedLinkLabelCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/HighlightsCheckTest.java Log Message: ----------- [Misc] Use the shared XProperty parser in the Highlights and Related Link Label checks, and raise the coverage threshold (#37) * Replace the private copies of the Highlights and Related field parsers in `HighlightsCheck` and `RelatedLinkLabelCheck` with `AbstractXDOMDocumentationCheck#parseXPropertyXDOM()` * The Highlights parse-failure warning now reads "Ignoring Highlights check inside it.", like the other checks * Raise `xwiki.jacoco.instructionRatio` of documentation-xwikiorg-api from 0.95 to 0.98 (measured: 0.984) Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]> Commit: dfe5c59db01e7e1d5814721d5ed98ea90bf60bb2 https://github.com/xwiki-contrib/documentation/commit/dfe5c59db01e7e1d581472... Author: Vincent Massol <[email protected]> Date: 2026-10-07 (Wed, 07 Oct 2026) Changed paths: M documentation-test/documentation-test-docker/src/test/it/org/xwiki/contrib/documentation/test/docker/DocumentationIT.java Log Message: ----------- [Misc] Fix the DocumentationIT failures caused by the location check (#39) * Create the test pages under documentation.xs.user.documentation-it instead of the DocumentationIT space: since the location check (DA-91) reports documentation pages located outside documentation.xs and documentation.extensions as an error, every documentation page of the test got an extra error, which broke the tests asserting a warning box or no box Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]> Commit: 2b0bfe95b8165fcfda5d9b866d245db488069592 https://github.com/xwiki-contrib/documentation/commit/2b0bfe95b8165fcfda5d9b... Author: Vincent Massol <[email protected]> Date: 2026-10-07 (Wed, 07 Oct 2026) Changed paths: M documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/KebabNameValidator.java Log Message: ----------- [Misc] Fix the SonarQube issues of the kebab-case name validator (#40) * Rewrite the kebab-case validity pattern so that each repetition consumes a whole run of letters and digits, with possessive quantifiers: the previous pattern repeated an alternation once per character and overflowed the stack on long names. The same names are accepted as before * Use the concise \d character class in the validator's patterns * Use streams instead of loops to collect the stop and reserved words of a name, and to remove them Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]> Commit: 9eb70b5a59836c2236bd65f78726380ae1127416 https://github.com/xwiki-contrib/documentation/commit/9eb70b5a59836c2236bd65... Author: Vincent Massol <[email protected]> Date: 2026-10-07 (Wed, 07 Oct 2026) Changed paths: M documentation-test/documentation-test-pageobjects/src/main/java/org/xwiki/contrib/documentation/test/po/DocumentationViewPage.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/GitHubSCMLinkCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/HighlightsCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/ImageGalleryCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/InlineStyleCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/LevelOneHeadingCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/LocationCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/RelatedChildPageCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/RelatedLinkLabelCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/TopLevelPageCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/XWikiOrgURLLinkCheck.java Log Message: ----------- [Misc] Fix SonarQube issues in the production code of the documentation checks (#41) * java:S9397: use string concatenation instead of `String.format()` for the violation contexts and the expected location * java:S6201: use instanceof pattern matching instead of casts * java:S6204: use `Stream.toList()` for the space lists, which are only read * java:S1161: add the missing `@Override` on `DocumentationViewPage#hasRenderingError()` Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]> Commit: e52588bd3884b3a1d514c13123f7f2a4251c7044 https://github.com/xwiki-contrib/documentation/commit/e52588bd3884b3a1d514c1... Author: Vincent Massol <[email protected]> Date: 2026-10-07 (Wed, 07 Oct 2026) Changed paths: M documentation-test/documentation-test-docker/src/test/it/org/xwiki/contrib/documentation/test/docker/DocumentationIT.java M documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/AttachmentNameCheckTest.java M documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/FAQEntryHeadingCheckTest.java M documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/HighlightsCheckTest.java M documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/ImageGalleryCheckTest.java M documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/PageNameCheckTest.java M documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/PlantUMLThemeCheckTest.java M documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/ScriptMacroCheckTest.java M documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/VideoAttachmentCheckTest.java Log Message: ----------- [Misc] Fix SonarQube issues in the tests of the documentation checks (#42) * java:S5976: merge the tests that only differ by their input into parameterized tests (PlantUML theme, image gallery, video attachment, attachment name and page name checks) * java:S6126: use text blocks for the multi-line wiki and Velocity contents * java:S9397 and java:S3457: use string concatenation instead of `String.format()`, which also keeps the `\n` of the generated wiki content instead of a platform line separator Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]> Commit: 7c731cd8e31671571835f848441c80fcbdd4285d https://github.com/xwiki-contrib/documentation/commit/7c731cd8e31671571835f8... Author: Vincent Massol <[email protected]> Date: 2026-10-07 (Wed, 07 Oct 2026) Changed paths: M documentation-api/src/main/java/org/xwiki/contrib/documentation/internal/ImageMacroRefactoring.java Log Message: ----------- [Misc] Fix the SonarQube static access issues of ImageMacroRefactoring (#43) * java:S3252: import Apache Commons Lang's `StringUtils` instead of `org.xwiki.text.StringUtils`, since the class only uses `isEmpty()`, which the XWiki class inherits from it Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]> Commit: 355ebd4d89943968e77becda54f069e25a2f5288 https://github.com/xwiki-contrib/documentation/commit/355ebd4d89943968e77bec... Author: Vincent Massol <[email protected]> Date: 2026-10-07 (Wed, 07 Oct 2026) Changed paths: M documentation-test/documentation-test-docker/src/test/it/org/xwiki/contrib/documentation/test/docker/DocumentationIT.java M documentation-xwikiorg/documentation-xwikiorg-api/pom.xml M documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/HighlightsCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/HighlightsCheckTest.java Log Message: ----------- DA-98: Add a check that pages with many child pages provide Highlights (#44) * Extend the highlights check: when the Highlights field of a page is empty, count its direct child documentation pages (nested and terminal pages carrying a DocumentationClass object, translations excluded) with a single count query, and report a Warning when there are more than 15, with the number of child pages as context. * The threshold sits next to the maximum number of highlights. Terminal pages are not queried, and a query failure is logged as a warning. * Add unit tests for the threshold, a blank Highlights field, a filled one, terminal pages, pages without a DocumentationClass object and query failures. * Add a DocumentationIT step proving the query against a real database: a page with 15 child documentation pages and a non-documentation child gets no recommendation, and gets it once a 16th child documentation page is added. * Raise the coverage threshold of documentation-xwikiorg-api to 0.99. Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]> Commit: 49742b9dbd5df41af231915f3e2b7fb85fac3032 https://github.com/xwiki-contrib/documentation/commit/49742b9dbd5df41af23191... Author: Vincent Massol <[email protected]> Date: 2026-10-07 (Wed, 07 Oct 2026) Changed paths: M documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/RelatedChildPageCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/TopLevelPageCheck.java A documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/TopLevelRelatedLinksCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/resources/META-INF/components.txt A documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/TopLevelRelatedLinksCheckTest.java Log Message: ----------- DA-99: Add a check that a top-level page links to the same topic for the other target audiences (#45) * Add the topLevelRelatedLinks check, which applies to the top-level documentation pages only. For each other audience, when a top-level page with the same name exists in the same section (xs or extensions), it reports an Error if the Related field (including the content of macros holding wiki content) has no link to it, with the missing page as context. * Resolve the links relative to the current page, as the relatedChildPage check does, so that doc:, page: and relative references all match. Links to attachments and external URLs don't count. * Report nothing when the Related field can't be parsed or when the existence of a counterpart can't be checked (a warning is logged), to avoid false positives. * Reuse the top-level page detection and the audiences of TopLevelPageCheck, and the page link types of RelatedChildPageCheck. * Add TopLevelRelatedLinksCheckTest covering linked, missing and absent counterparts, an empty Related field, same-named pages in another section or deeper in the tree, links that don't target the counterpart, links inside macros, non top-level pages, and parse and existence check failures. Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]> Commit: 897624bebb420825c8f7015c96d2ca6e1bed555c https://github.com/xwiki-contrib/documentation/commit/897624bebb420825c8f701... Author: Vincent Massol <[email protected]> Date: 2026-10-07 (Wed, 07 Oct 2026) Changed paths: M documentation-api/pom.xml M documentation-test/documentation-test-docker/pom.xml M documentation-test/documentation-test-pageobjects/pom.xml M documentation-test/pom.xml M documentation-ui/pom.xml M documentation-xwikiorg/documentation-xwikiorg-api/pom.xml M documentation-xwikiorg/documentation-xwikiorg-ui/pom.xml M documentation-xwikiorg/pom.xml M pom.xml Log Message: ----------- [maven-release-plugin] prepare release documentation-1.15 Commit: 4fb86e4f555d02d0ff1b54d95e1eda5173b5bac6 https://github.com/xwiki-contrib/documentation/commit/4fb86e4f555d02d0ff1b54... Author: Vincent Massol <[email protected]> Date: 2026-10-07 (Wed, 07 Oct 2026) Changed paths: M documentation-api/pom.xml M documentation-test/documentation-test-docker/pom.xml M documentation-test/documentation-test-pageobjects/pom.xml M documentation-test/pom.xml M documentation-ui/pom.xml M documentation-xwikiorg/documentation-xwikiorg-api/pom.xml M documentation-xwikiorg/documentation-xwikiorg-ui/pom.xml M documentation-xwikiorg/pom.xml M pom.xml Log Message: ----------- [maven-release-plugin] prepare for next development iteration Commit: ee8d34548d2df2dc4a25621410cd4b152300cbb0 https://github.com/xwiki-contrib/documentation/commit/ee8d34548d2df2dc4a2562... Author: Vincent Massol <[email protected]> Date: 2026-10-08 (Thu, 08 Oct 2026) Changed paths: M documentation-api/pom.xml M documentation-api/src/main/java/org/xwiki/contrib/documentation/DocumentationManager.java A documentation-api/src/main/java/org/xwiki/contrib/documentation/internal/CheckAllPagesJob.java A documentation-api/src/main/java/org/xwiki/contrib/documentation/internal/CheckAllPagesJobStatus.java M documentation-api/src/main/java/org/xwiki/contrib/documentation/internal/DefaultDocumentationManager.java M documentation-api/src/main/java/org/xwiki/contrib/documentation/internal/DocumentationEventListener.java A documentation-api/src/main/java/org/xwiki/contrib/documentation/internal/DocumentationPages.java M documentation-api/src/main/java/org/xwiki/contrib/documentation/script/DocumentationScriptService.java M documentation-api/src/main/resources/META-INF/components.txt A documentation-api/src/test/java/org/xwiki/contrib/documentation/internal/CheckAllPagesJobTest.java A documentation-api/src/test/java/org/xwiki/contrib/documentation/script/DocumentationScriptServiceTest.java M documentation-api/src/test/java/org/xwiki/contrib/documentation/test/DefaultDocumentationManagerTest.java M documentation-test/documentation-test-docker/src/test/it/org/xwiki/contrib/documentation/test/docker/DocumentationIT.java M documentation-test/documentation-test-pageobjects/pom.xml A documentation-test/documentation-test-pageobjects/src/main/java/org/xwiki/contrib/documentation/test/po/DocumentationAdministrationSectionPage.java M documentation-ui/pom.xml A documentation-ui/src/main/resources/DocApp/Code/CheckAllPagesAdministration.xml M documentation-ui/src/main/resources/DocApp/Code/DocumentationSheet.xml M documentation-ui/src/main/resources/DocApp/Code/Translations.xml M documentation-xwikiorg/documentation-xwikiorg-ui/src/main/resources/DocApp/Code/DocumentationConfiguration.xml M documentation-xwikiorg/documentation-xwikiorg-ui/src/main/resources/DocApp/Code/XWikiOrgTranslations.xml Log Message: ----------- DA-102: Add an action in the Documentation administration to check all documentation pages for violations (#46) * Add a "Check all pages" block to the Documentation section of the wiki Administration, which runs every check on every documentation page of the wiki as a background job, shows its progress and the pages checked, updated and failed, and can be canceled * Restrict starting and canceling the check to the users with Admin right on the wiki, in the script service too * Share the selection of the documentation pages between the analysis on save and the analysis of all pages * Make `DocumentationManager#analyse()` return whether the violations changed, i.e. whether the page was saved * Hide the "Customize <page>:" headings that the Administration generates for the pages contributing to the Documentation section, as XWiki's WYSIWYG section does, and give the XWiki.org configuration block its own "Supported versions" heading Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]> Commit: 28dd75e03ea91dd6b72459971ed6220770cb65cc https://github.com/xwiki-contrib/documentation/commit/28dd75e03ea91dd6b72459... Author: Vincent Massol <[email protected]> Date: 2026-10-09 (Fri, 09 Oct 2026) Changed paths: M documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/VerbCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/VerbCheckTest.java Log Message: ----------- DA-104: The verb check reports Reference and Explanation pages whose title starts with a noun ending in "ing", such as "Rendering Macros" (#48) * Don't report the title or page name of a Reference or Explanation page that starts with an XWiki domain noun ending in "ing" (rendering, logging, caching, indexing, versioning, clustering, theming, licensing, monitoring, scheduling, networking) * Still report these words for How-To and Tutorial pages, which must start with an imperative verb Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]> Commit: d3aa91140afe58c66cf0f6b48a8cfd2a3077c157 https://github.com/xwiki-contrib/documentation/commit/d3aa91140afe58c66cf0f6... Author: Vincent Massol <[email protected]> Date: 2026-10-09 (Fri, 09 Oct 2026) Changed paths: M documentation-test/documentation-test-docker/src/test/it/org/xwiki/contrib/documentation/test/docker/DocumentationIT.java M documentation-test/documentation-test-pageobjects/src/main/java/org/xwiki/contrib/documentation/test/po/DocumentationViewPage.java A documentation-xwikiorg/documentation-xwikiorg-ui/src/main/resources/DocApp/Code/SCMMacro.xml Log Message: ----------- DA-101: Move the SCM macro from xwiki.org to the Documentation Application (#47) * Add the `{{scm}}` wiki macro to the XWiki.org UI module (`DocApp.Code.SCMMacro`), with the same id and parameters as the `Macros.SCM` page of xwiki.org, so that the app provides the macro recommended by the `gitHubSCMLink` check. * Generate `https://github.com` and `https://raw.githubusercontent.com` URLs instead of `http://www.github.com` and `http://raw.github.com`. * Type the `raw` parameter as a boolean, strip a leading slash from `path` and escape the URL in the generated link. * Add a step to `DocumentationIT` checking the links generated for the parameter combinations. Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]> Commit: 2ab5273c7f4eb7badb462ddb61c67e0b7cdb324b https://github.com/xwiki-contrib/documentation/commit/2ab5273c7f4eb7badb462d... Author: Vincent Massol <[email protected]> Date: 2026-10-09 (Fri, 09 Oct 2026) Changed paths: M documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/RelatedLinkLabelCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/RelatedLinkLabelCheckTest.java Log Message: ----------- DA-103: "relatedLinkLabel" check triggers violation when the Link Label in the Related field already covers the rule (#49) * When the title of the linked page already ends with its own target qualifier (e.g. "All Bundled Rendering Macros (for User)"), the expected Related link label is that title, instead of the title followed by a second qualifier. * A title whose qualifier doesn't match the target of the linked page still gets the right qualifier appended. Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]> Commit: 4367288c237ee292d1040e0afa437347027b0ba3 https://github.com/xwiki-contrib/documentation/commit/4367288c237ee292d1040e... Author: Vincent Massol <[email protected]> Date: 2026-10-10 (Sat, 10 Oct 2026) Changed paths: M documentation-api/pom.xml A documentation-api/src/main/java/org/xwiki/contrib/documentation/DocumentationViolationGroup.java M documentation-api/src/main/java/org/xwiki/contrib/documentation/internal/DefaultDocumentationManager.java M documentation-api/src/main/java/org/xwiki/contrib/documentation/internal/DocumentationEventListener.java M documentation-api/src/main/java/org/xwiki/contrib/documentation/internal/DocumentationPages.java A documentation-api/src/main/java/org/xwiki/contrib/documentation/internal/FalsePositives.java M documentation-api/src/main/java/org/xwiki/contrib/documentation/script/DocumentationScriptService.java M documentation-api/src/main/resources/META-INF/components.txt A documentation-api/src/test/java/org/xwiki/contrib/documentation/internal/FalsePositivesTest.java M documentation-api/src/test/java/org/xwiki/contrib/documentation/script/DocumentationScriptServiceTest.java M documentation-api/src/test/java/org/xwiki/contrib/documentation/test/DefaultDocumentationManagerTest.java M documentation-test/documentation-test-docker/src/test/it/org/xwiki/contrib/documentation/test/docker/DocumentationIT.java M documentation-test/documentation-test-pageobjects/src/main/java/org/xwiki/contrib/documentation/test/po/DocumentationAdministrationSectionPage.java M documentation-test/documentation-test-pageobjects/src/main/java/org/xwiki/contrib/documentation/test/po/DocumentationViewPage.java M documentation-ui/src/main/resources/DocApp/Code/CheckAllPagesAdministration.xml M documentation-ui/src/main/resources/DocApp/Code/DocumentationCSS.xml M documentation-ui/src/main/resources/DocApp/Code/DocumentationDocextra.xml M documentation-ui/src/main/resources/DocApp/Code/DocumentationLiveTableResults.xml M documentation-ui/src/main/resources/DocApp/Code/DocumentationSheet.xml M documentation-ui/src/main/resources/DocApp/Code/DocumentationViolationClass.xml A documentation-ui/src/main/resources/DocApp/Code/DocumentationViolationService.xml M documentation-ui/src/main/resources/DocApp/Code/Translations.xml M documentation-ui/src/main/resources/DocApp/WebHome.xml Log Message: ----------- DA-105: Allow admins to mark a documentation violation as a false positive (#50) * Record the check that reported each violation (new "check" property), and match a stored violation by check and context when its message or severity changes, so that a false positive mark survives re-checks and rewordings * Add the falsePositive, falsePositiveBy, falsePositiveDate and falsePositiveReason properties to the violation class * Add a "Mark as false positive" action (with an optional reason, and optionally for the violations of the same rule in the pages under the current page or one of its ancestors) and a "Reinstate" action to the Documentation tab, for wiki administrators only * Don't count nor report the violations marked as false positives: page warning/error box, tab count, list of violations of the Documentation Application home page, which gets a second list for them * Add to the Documentation administration section a page picker listing the violations of the picked page and of the pages under it, grouped by rule (check and message), each rule's violations being marked at once * Add the DocumentationViolationGroup API class and the canMarkFalsePositives, markFalsePositive, unmarkFalsePositive, getFalsePositiveScopes, getViolationGroups and markFalsePositives script service methods * Use a Live Data results query that doesn't require programming rights * Don't fail to display the Documentation tab count when there's no violation to count Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]> Commit: e083cf3174cec6b1e784e278a83aec8c17fe31c6 https://github.com/xwiki-contrib/documentation/commit/e083cf3174cec6b1e784e2... Author: Vincent Massol <[email protected]> Date: 2026-10-10 (Sat, 10 Oct 2026) Changed paths: M documentation-ui/src/main/resources/DocApp/Code/TypeBadge.xml Log Message: ----------- DA-106: The type badge fails to render when the Documentation Application pages don't have programming rights (#52) * Transform the type name with `$services.modelvalidation.transformName()`, which doesn't require programming rights, instead of going through `$services.modelvalidation.manager`, which returns null to scripts without programming rights. Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]> Commit: 468698b4c9f46c4ee29aeb1b11e7d5c6cf5bf606 https://github.com/xwiki-contrib/documentation/commit/468698b4c9f46c4ee29aeb... Author: Vincent Massol <[email protected]> Date: 2026-10-10 (Sat, 10 Oct 2026) Changed paths: M documentation-api/pom.xml A documentation-api/src/main/java/org/xwiki/contrib/documentation/internal/DocumentationContentDisplayer.java A documentation-api/src/main/java/org/xwiki/contrib/documentation/internal/DocumentationContentMacro.java A documentation-api/src/main/java/org/xwiki/contrib/documentation/internal/DocumentationContentMacroParameters.java A documentation-api/src/main/java/org/xwiki/contrib/documentation/internal/DocumentationFAQDisplayer.java M documentation-api/src/main/resources/META-INF/components.txt A documentation-api/src/test/java/org/xwiki/contrib/documentation/internal/DocumentationContentMacroTest.java M documentation-test/documentation-test-docker/src/test/it/org/xwiki/contrib/documentation/test/docker/DocumentationIT.java M documentation-test/documentation-test-pageobjects/src/main/java/org/xwiki/contrib/documentation/test/po/DocumentationViewPage.java M documentation-ui/src/main/resources/DocApp/Code/DocumentationSheet.xml Log Message: ----------- DA-51: The TOC should display sections coming from the main content or from the FAQ content (#53) * Add an internal `documentationContent` macro that displays the content or the FAQ of the current documentation page as blocks of the page instead of rendered HTML, so that the `toc` macro of the documentation sheet sees their headings. * Execute the content like `$services.display.content()` does (isolated execution context, with the rights of its content author) and the FAQ like `$doc.display('faq')` does (with the rights of the document author, restricted when the rendering, the document or the property is), so the macro grants no extra rights. * Make the ids of the displayed headings and images unique within the page, and display nothing when a field contains the macro displaying itself. * Use the macro in view mode in `DocApp.Code.DocumentationSheet`, keeping `$doc.display()` for edit mode. * Test the table of contents in the functional test, and give the Image macros of its fixtures a size, since the page content is now displayed in the test wiki, which doesn't have AppWithinMinutes installed. Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]> Commit: 875383dfce22160bb163fde8b9394cc0e665ae21 https://github.com/xwiki-contrib/documentation/commit/875383dfce22160bb163fd... Author: Vincent Massol <[email protected]> Date: 2026-10-12 (Mon, 12 Oct 2026) Changed paths: M documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/VerbCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/VerbCheckTest.java Log Message: ----------- DA-104: The verb check reports Reference and Explanation pages whose title starts with a noun ending in "ing", such as "Rendering Macros" (#55) * Don't report the title or page name of a Reference or Explanation page that starts with "Warning", such as the "Warning Macro" page, whose page name is warning-macro Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]> Commit: ed67b0209bd9176dd17db6f12077e7fc8569a62b https://github.com/xwiki-contrib/documentation/commit/ed67b0209bd9176dd17db6... Author: Vincent Massol <[email protected]> Date: 2026-10-12 (Mon, 12 Oct 2026) Changed paths: M documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/RelatedLinkLabelCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/RelatedLinkLabelCheckTest.java Log Message: ----------- DA-107: Align the code with the Doc Guide for having plural form for target audience in Related section for link labels (#56) * Expect the plural form of the target in the Related link labels: "(for Users)", "(for Administrators)" and "(for Developers)" * Use the title of the linked page as the full label when it already ends with its target qualifier in the plural form (e.g. "Keyboard Shortcuts Available when Viewing a Page (for Users)"), as it already was for the singular form Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]> Commit: f9c052fe6b672c81f9b224f0d558ed15c5fbdf7c https://github.com/xwiki-contrib/documentation/commit/f9c052fe6b672c81f9b224... Author: Vincent Massol <[email protected]> Date: 2026-10-14 (Wed, 14 Oct 2026) Changed paths: M documentation-api/pom.xml M documentation-test/documentation-test-docker/pom.xml M documentation-test/documentation-test-pageobjects/pom.xml M documentation-test/pom.xml M documentation-ui/pom.xml M documentation-xwikiorg/documentation-xwikiorg-api/pom.xml M documentation-xwikiorg/documentation-xwikiorg-ui/pom.xml M documentation-xwikiorg/pom.xml M pom.xml Log Message: ----------- [maven-release-plugin] prepare release documentation-1.16 Commit: 7474fe43141bfe5e2f8253fb6f1c9d142242cdf0 https://github.com/xwiki-contrib/documentation/commit/7474fe43141bfe5e2f8253... Author: Vincent Massol <[email protected]> Date: 2026-10-14 (Wed, 14 Oct 2026) Changed paths: M documentation-api/pom.xml M documentation-test/documentation-test-docker/pom.xml M documentation-test/documentation-test-pageobjects/pom.xml M documentation-test/pom.xml M documentation-ui/pom.xml M documentation-xwikiorg/documentation-xwikiorg-api/pom.xml M documentation-xwikiorg/documentation-xwikiorg-ui/pom.xml M documentation-xwikiorg/pom.xml M pom.xml Log Message: ----------- [maven-release-plugin] prepare for next development iteration Commit: d8afe49a71fcc49991bf0d9b44aad6e4953d2199 https://github.com/xwiki-contrib/documentation/commit/d8afe49a71fcc49991bf0d... Author: Vincent Massol <[email protected]> Date: 2026-10-14 (Wed, 14 Oct 2026) Changed paths: M documentation-api/pom.xml A documentation-api/src/main/java/org/xwiki/contrib/documentation/internal/livedata/ViolationsLiveDataConfigurationProvider.java A documentation-api/src/main/java/org/xwiki/contrib/documentation/internal/livedata/ViolationsLiveDataConfigurationResolver.java A documentation-api/src/main/java/org/xwiki/contrib/documentation/internal/livedata/ViolationsLiveDataEntryStore.java A documentation-api/src/main/java/org/xwiki/contrib/documentation/internal/livedata/ViolationsLiveDataPropertyDescriptorStore.java A documentation-api/src/main/java/org/xwiki/contrib/documentation/internal/livedata/ViolationsLiveDataQueryHelper.java A documentation-api/src/main/java/org/xwiki/contrib/documentation/internal/livedata/ViolationsLiveDataSource.java M documentation-api/src/main/resources/META-INF/components.txt A documentation-api/src/test/java/org/xwiki/contrib/documentation/internal/livedata/ViolationsLiveDataConfigurationProviderTest.java A documentation-api/src/test/java/org/xwiki/contrib/documentation/internal/livedata/ViolationsLiveDataEntryStoreTest.java A documentation-api/src/test/java/org/xwiki/contrib/documentation/internal/livedata/ViolationsLiveDataQueryHelperTest.java A documentation-api/src/test/java/org/xwiki/contrib/documentation/internal/livedata/ViolationsLiveDataSourceTest.java M documentation-test/documentation-test-docker/src/test/it/org/xwiki/contrib/documentation/test/docker/DocumentationIT.java M documentation-test/documentation-test-pageobjects/pom.xml A documentation-test/documentation-test-pageobjects/src/main/java/org/xwiki/contrib/documentation/test/po/DocumentationHomePage.java M documentation-ui/src/main/resources/DocApp/Code/DocumentationLiveTableResults.xml M documentation-ui/src/main/resources/DocApp/WebHome.xml Log Message: ----------- DA-108: The Documentation Violations Live Data displays the first violation of a page in all its rows, making its filters return wrong results (#57) * Add a "documentationViolations" Live Data source listing one entry per violation xobject, each entry holding the values of its own xobject, so that the column filters apply to what is displayed. Its "falsePositives=only" source parameter lists the violations marked as false positives instead. * Build the HQL query in Java from the Live Data filters (text: contains/startsWith/equals ignoring case, severity: equals among the xclass values, date: before/after/between), sort and pagination, honoring the hidden pages preference and showing no data for the pages the current user can't view. * Use the new source in the two violation Live Data of the Documentation Application home page and remove the now unused false positives support from DocumentationLiveTableResults. * Add a DocumentationHomePage page object and check the Live Data rows in DocumentationIT. Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]> Commit: da91c730cf6c6234e0e2315d22da6192728bf593 https://github.com/xwiki-contrib/documentation/commit/da91c730cf6c6234e0e231... Author: raphj <[email protected]> Date: 2026-10-15 (Thu, 15 Oct 2026) Changed paths: M README.md M documentation-api/pom.xml M documentation-api/src/main/java/org/xwiki/contrib/documentation/DocumentationManager.java A documentation-api/src/main/java/org/xwiki/contrib/documentation/DocumentationViolationGroup.java A documentation-api/src/main/java/org/xwiki/contrib/documentation/internal/CheckAllPagesJob.java A documentation-api/src/main/java/org/xwiki/contrib/documentation/internal/CheckAllPagesJobStatus.java M documentation-api/src/main/java/org/xwiki/contrib/documentation/internal/DefaultDocumentationManager.java A documentation-api/src/main/java/org/xwiki/contrib/documentation/internal/DocumentationContentDisplayer.java A documentation-api/src/main/java/org/xwiki/contrib/documentation/internal/DocumentationContentMacro.java A documentation-api/src/main/java/org/xwiki/contrib/documentation/internal/DocumentationContentMacroParameters.java M documentation-api/src/main/java/org/xwiki/contrib/documentation/internal/DocumentationEventListener.java A documentation-api/src/main/java/org/xwiki/contrib/documentation/internal/DocumentationFAQDisplayer.java A documentation-api/src/main/java/org/xwiki/contrib/documentation/internal/DocumentationPages.java A documentation-api/src/main/java/org/xwiki/contrib/documentation/internal/FalsePositives.java A documentation-api/src/main/java/org/xwiki/contrib/documentation/internal/ImageMacroRefactoring.java A documentation-api/src/main/java/org/xwiki/contrib/documentation/internal/livedata/ViolationsLiveDataConfigurationProvider.java A documentation-api/src/main/java/org/xwiki/contrib/documentation/internal/livedata/ViolationsLiveDataConfigurationResolver.java A documentation-api/src/main/java/org/xwiki/contrib/documentation/internal/livedata/ViolationsLiveDataEntryStore.java A documentation-api/src/main/java/org/xwiki/contrib/documentation/internal/livedata/ViolationsLiveDataPropertyDescriptorStore.java A documentation-api/src/main/java/org/xwiki/contrib/documentation/internal/livedata/ViolationsLiveDataQueryHelper.java A documentation-api/src/main/java/org/xwiki/contrib/documentation/internal/livedata/ViolationsLiveDataSource.java M documentation-api/src/main/java/org/xwiki/contrib/documentation/script/DocumentationScriptService.java M documentation-api/src/main/resources/META-INF/components.txt A documentation-api/src/test/java/org/xwiki/contrib/documentation/internal/CheckAllPagesJobTest.java A documentation-api/src/test/java/org/xwiki/contrib/documentation/internal/DocumentationContentMacroTest.java A documentation-api/src/test/java/org/xwiki/contrib/documentation/internal/DocumentationEventListenerTest.java A documentation-api/src/test/java/org/xwiki/contrib/documentation/internal/FalsePositivesTest.java A documentation-api/src/test/java/org/xwiki/contrib/documentation/internal/ImageMacroRefactoringTest.java A documentation-api/src/test/java/org/xwiki/contrib/documentation/internal/livedata/ViolationsLiveDataConfigurationProviderTest.java A documentation-api/src/test/java/org/xwiki/contrib/documentation/internal/livedata/ViolationsLiveDataEntryStoreTest.java A documentation-api/src/test/java/org/xwiki/contrib/documentation/internal/livedata/ViolationsLiveDataQueryHelperTest.java A documentation-api/src/test/java/org/xwiki/contrib/documentation/internal/livedata/ViolationsLiveDataSourceTest.java A documentation-api/src/test/java/org/xwiki/contrib/documentation/script/DocumentationScriptServiceTest.java M documentation-api/src/test/java/org/xwiki/contrib/documentation/test/DefaultDocumentationManagerTest.java A documentation-test/documentation-test-docker/pom.xml A documentation-test/documentation-test-docker/src/test/it/org/xwiki/contrib/documentation/test/docker/DocumentationIT.java A documentation-test/documentation-test-pageobjects/pom.xml A documentation-test/documentation-test-pageobjects/src/main/java/org/xwiki/contrib/documentation/test/po/DocumentationAdministrationSectionPage.java A documentation-test/documentation-test-pageobjects/src/main/java/org/xwiki/contrib/documentation/test/po/DocumentationHomePage.java A documentation-test/documentation-test-pageobjects/src/main/java/org/xwiki/contrib/documentation/test/po/DocumentationViewPage.java A documentation-test/pom.xml M documentation-ui/pom.xml A documentation-ui/src/main/resources/DocApp/Code/CheckAllPagesAdministration.xml M documentation-ui/src/main/resources/DocApp/Code/DeprecatedMacro.xml M documentation-ui/src/main/resources/DocApp/Code/DocumentationCSS.xml M documentation-ui/src/main/resources/DocApp/Code/DocumentationClass.xml M documentation-ui/src/main/resources/DocApp/Code/DocumentationDocextra.xml M documentation-ui/src/main/resources/DocApp/Code/DocumentationSheet.xml M documentation-ui/src/main/resources/DocApp/Code/DocumentationViolationClass.xml A documentation-ui/src/main/resources/DocApp/Code/DocumentationViolationService.xml M documentation-ui/src/main/resources/DocApp/Code/ImageMacro.xml M documentation-ui/src/main/resources/DocApp/Code/Translations.xml M documentation-ui/src/main/resources/DocApp/Code/TypeBadge.xml M documentation-ui/src/main/resources/DocApp/WebHome.xml M documentation-xwikiorg/documentation-xwikiorg-api/pom.xml M documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/AbstractXDOMDocumentationCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/AttachmentNameCheck.java A documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/CodeMacroLanguageCheck.java A documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/DocumentationConfigurationSource.java A documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/FAQEntryHeadingCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/GalleryMacroAltCheck.java A documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/GitHubSCMLinkCheck.java A documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/HTMLMacroCheck.java A documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/HighlightsCheck.java A documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/ImageAttachmentFormatCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/ImageGalleryCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/ImageMacroAltCheck.java A documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/ImageMacroCaptionVersionCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/ImageMacroCheck.java A documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/InlineStyleCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/KebabNameValidator.java A documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/LevelOneHeadingCheck.java A documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/LocationCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/PageNameCheck.java A documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/PlantUMLThemeCheck.java A documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/RelatedChildPageCheck.java A documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/RelatedLinkLabelCheck.java A documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/ScriptMacroCheck.java A documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/TopLevelPageCheck.java A documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/TopLevelRelatedLinksCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/VerbCheck.java A documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/VersionMacroCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/VideoAttachmentCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/VideoMacroCheck.java A documentation-xwikiorg/documentation-xwikiorg-api/src/main/java/org/xwiki/contrib/documentation/internal/xwikiorg/XWikiOrgURLLinkCheck.java M documentation-xwikiorg/documentation-xwikiorg-api/src/main/resources/META-INF/components.txt A documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/AbstractXDOMDocumentationCheckTest.java M documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/AttachmentNameCheckTest.java A documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/CodeMacroLanguageCheckTest.java A documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/DocumentationConfigurationSourceTest.java A documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/FAQEntryHeadingCheckTest.java A documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/GitHubSCMLinkCheckTest.java A documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/HTMLMacroCheckTest.java A documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/HighlightsCheckTest.java A documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/ImageAttachmentFormatCheckTest.java M documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/ImageGalleryCheckTest.java M documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/ImageMacroAltCheckTest.java A documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/ImageMacroCaptionVersionCheckTest.java A documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/InlineStyleCheckTest.java M documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/KebabNameValidatorTest.java A documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/LevelOneHeadingCheckTest.java A documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/LocationCheckTest.java M documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/PageNameCheckTest.java M documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/PageTitleCheckTest.java A documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/PlantUMLThemeCheckTest.java A documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/RelatedChildPageCheckTest.java A documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/RelatedLinkLabelCheckTest.java A documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/ScriptMacroCheckTest.java A documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/SyntaxCheckTest.java A documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/TopLevelPageCheckTest.java A documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/TopLevelRelatedLinksCheckTest.java M documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/VerbCheckTest.java A documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/VersionMacroCheckTest.java M documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/VideoAttachmentCheckTest.java M documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/VideoMacroCheckTest.java A documentation-xwikiorg/documentation-xwikiorg-api/src/test/java/org/xwiki/contrib/documentation/internal/xwikiorg/XWikiOrgURLLinkCheckTest.java M documentation-xwikiorg/documentation-xwikiorg-ui/pom.xml A documentation-xwikiorg/documentation-xwikiorg-ui/src/main/resources/DocApp/Code/DocumentationConfiguration.xml A documentation-xwikiorg/documentation-xwikiorg-ui/src/main/resources/DocApp/Code/DocumentationConfigurationClass.xml A documentation-xwikiorg/documentation-xwikiorg-ui/src/main/resources/DocApp/Code/SCMMacro.xml A documentation-xwikiorg/documentation-xwikiorg-ui/src/main/resources/DocApp/Code/XWikiOrgTranslations.xml M documentation-xwikiorg/pom.xml M pom.xml Log Message: ----------- Merge branch 'master' into confluence-multifields Compare: https://github.com/xwiki-contrib/documentation/compare/69da540f697d...da91c7... To unsubscribe from these emails, change your notification settings at https://github.com/xwiki-contrib/documentation/settings/notifications
participants (1)
-
XWiki Notifications