Aller au contenu principal
Jahia Store
FR

Content Integrity

community
Télécharger 3.34

Informations

Identifiant du module
content-integrity
Identifiant de groupe
org.jahia.modules
Statut
community
Catégorie
Admin Features
Auteur
system
Site web du développeur
http://www.jahia.com
Nécessite Jahia
8.0.2.0
Mis à jour
2026-07-09
Source
scm:git:git@github.com:Jahia/content-integrity
Étiquettes
  • integrity

Jahia module that provides an extensible service to test the integrity of the content

Versions

  • Framework
    • Added some factory methods to easily track execution errors from a check
  • UI
    • Results screen: display the number of matching errors even on the filters which are already in use
    • Results screen: automatically switch to the results of the last scan
    • [bugfix] Do not escape/unescape non string objects
Nécessite Jahia 8.0.2.0Mis à jour 2025-03-21
  • Framework
    • When a java error occur, create a framework level error to have it tracked in the report
  • UI
    • Results screen: display the number of matching errors next to each filter
    • Results screen: when the selected value for a filter is not available for the current results set, add it to the filter option list
    • Results screen: display all the filter options, even if there's no matching error with the currently applied filters
    • Results screen: Add the site to the error details popup
    • [bugfix] Jahia 8: do not display the admin panel in the navigation if the current user is not allowed to browse it
    • [bugfix] Escape the content that can embed some HTML reserved characters
  • AceSanityCheck
    • Detect the missing members in the site-privileged groups
    • Detect the sites with a high number of ACE nodes
Nécessite Jahia 8.0.2.0Mis à jour 2025-03-06
  • UndeclaredNodeTypesCheck
    • Added the detection of the definitions which have been removed but are still present in the NodeTypeRegistry
Nécessite Jahia 8.0.2.0Mis à jour 2025-02-17
  • Implemented a new check to detect types / properties / property values which are valid as per the definitions, but are unexpected in a specific workspace, and have an impact on the import feature: WorkspaceSpecificDefinitionsCheck
  • UI
    • Configurable checks: always display the configurations in their declaration order
Nécessite Jahia 8.0.2.0Mis à jour 2024-12-27
  • Framework
    • Dispatch the reports under intermediate folders based on the scan date
    • [bugfix] Ignore null scan results
  • AceSanityCheck
    • Detect the duplicated references to the same source ACE
  • PublicationSanityLiveCheck
    • Flag NO_DEFAULT_NODE errors (non UGC live nodes without default node) as impacting the import
  • VersionHistoryCheck
    • Track in the error object if the node is auto-published
Nécessite Jahia 8.0.2.0Mis à jour 2024-10-02
  • Compatibility with Jahia 8.2
  • Implemented a new check to detect the pages which use an invalid template: PagesSanityCheck
  • Framework
    • Log the module version when starting/finishing a scan
    • Flagged the errors which make the XML import fail, and log at the end of a scan the compatibility withthe XML import
    • Added the impact on the XML import to the reports (new column)
    • [bugfix] When scanning the 2 workspaces, merge the results even if not uploading the results
    • [bugfix] Fixed the calculation of the node existence in live
  • UI
    • Added a column to filter the errors which have an impact on the XML import
    • [bugfix] Fixed the label of the filters
  • PublicationSanityDefaultCheck
    • PATH_CONFLICT errors: add the conflicted live node primary type to the report
    • PATH_CONFLICT errors: add the path of the conflicted node in the default workspace to the report
    • Detect the nodes which have a different primary type in the default and live workspaces
  • NodeNameInfoSanityCheck
    • [bugfix] When the node has no last publication related metadata, assume that its live path is correct
  • JCRLanguagePropertyCheck
    • Add the parent node type to the report
  • ChildNodeDefinitionsSanityCheck
    • Add the parent node type to the report
Nécessite Jahia 8.0.2.0Mis à jour 2024-09-17
  • PropertyDefinitionsSanityCheck
    • [bugfix] JCRNodeValidator check: execute the JCRNodeValidator with the correct locale
    • [bugfix] Avoid logging an error when the node does not exist in the specified language
    • [bugfix] Fixed the Locale conversion to String when using a regional variant
Nécessite Jahia 8.0.2.0Mis à jour 2024-06-12
  • Framework
    • Track the Jahia version in the report metadata
    • Reduced the memory footprint
    • [bugfix] Do not limit the size of the extra message
  • PropertyDefinitionsSanityCheck
    • Execute the JCRNodeValidator (only the JCR constraints were checked)

 

Nécessite Jahia 8.0.2.0Mis à jour 2024-05-13
  • Framework
    • Reduce the priority of the thread which executes the scan
  • PublicationSanityDefaultCheck
    • Detect the conflicts between 2 nodes that use the same path (one in default, the other one in live)
    • Improved the documentation
    • [bugfix] Do not check the external nodes, what was generating a lot of false positives
  • StaticInternalLinksCheck
    • Added the possibility to ignore localhost
    • Do not scan the properties if there's no domain to scan
Nécessite Jahia 8.0.2.0Mis à jour 2024-05-02
  • Framework
    • When too many errors are identified, split the reports into several files to avoid OOM
  • AceSanityCheck
    • Added the detection of ACE nodes with an invalid node name
  • PublicationSanityDefaultCheck
    • Detect the module technical nodes which are missing in live
  • PublicationSanityLiveCheck
    • Avoid false positives on UGC ACE nodes: since they are not tracked as UGC nodes, they can't beconsidered as non UGC and raise an error because of no node with same uuid in the default workspace
Nécessite Jahia 8.0.2.0Mis à jour 2024-03-18
  • Framework
    • Track the content-integrity version used in the logs and on the report in the JCR
    • Track the scan summary data only once on the folder instead of on each report file node
  • UI
    • Added a prefix to the log lines where the server logs contain a stacktrace
  • AceSanityCheck
    • Error ACE_NON_GRANT_WITH_EXTERNAL_ACE : add the role names as error extra info to ease the report analysis
    • Sort the role names when added as error extra info to ease the errors aggregation in the report
    • [bugfix] Moved the external ace path from extra info to specific extra infos as it breaks the errors aggregation in the report
  • StaticInternalLinksCheck
    • Track the locale when the property is found on a translation node
  • VersionHistoryCheck
    • [bugfix] Moved the exact count from extra info to specific extra infos as it breaks the errors aggregation in the report
  • PublicationSanityLiveCheck
    • [bugfix] Fixed the calculation of the locale on jnt:referenceInField nodes related to a non i18n property
    • [bugfix] Skip technical sub-nodes related to a locale for which the translation node is missing
Nécessite Jahia 8.0.2.0Mis à jour 2023-07-13
  • Framework
    • [bugfix] Do not start the scan if the root node does not exist in the workspace
    • Improved the method to calculate the publication status so that it can be calculated for a technical Jahia node
  • UI
    • When more than one workspace is scanned, print the number of errors per workspace in the logs when logging the total number of errors
    • [bugfix] Avoid error in the server logs when downloading the scan logs over GraphQL
  • PublicationSanityLiveCheck
    • [bugfix] Improved the handling of the technical sub nodes (ex: an internal link is deleted from a richtext. The technical node holding the reference is immediately deleted from the default workspace, but will be deleted as well in the live workspace only when the content node is published. The technical node was reported as missing in default, and this was a false positive)
  • LockSanityCheck
    • [bugfix] Avoid errors on translation nodes with lock related properties but no j:lockTypes property
  • ReferencesSanityCheck
    • Reduced the memory footprint
Nécessite Jahia 8.0.2.0Mis à jour 2023-05-24
  • Framework
    • Added the possibility to send additional errors during the finalization phase
    • Removed the possibility to generate a CSV file without header since the report is not limited to the CSV file anymore
    • Avoid storing too long texts in the errors extra infos
    • When merging error lists, return a new list instead of modifying a provided one
  • UI
    • Report UI: display the uuid as a link to the JCR browser
Nécessite Jahia 8.0.2.0Mis à jour 2023-05-01
  • Implemented a new check to detect the invalid references: ReferencesSanityCheck
  • Framework
    • [bugfix] Fixed the calculation of the count ranges (used to aggregate errors returning a similar number, such as the number of versions)
    • [bugfix] Excel report: avoid crashing when the scan has identified more than 32767 errors
    • [bugfix] Improved the reset of the JCR sessions between 2 executions
Nécessite Jahia 8.0.2.0Mis à jour 2023-04-17
  • Framework
    • Added the possibility to generate several report files
    • Added the generation of an Excel report, with a sheet containing the errors data, and a sheet with a predefined pivot table for errors analysis
    • Errors related to a module (under /modules) are now showing the module name in the "site" column of the reports
    • [bugfix] Avoid crashing when an error occurs while loading the next child node of a node (during the scan itself or during the calculation of the size of the tree)
  • NodeNameInfoSanityCheck
    • Disabled the check of the fullpath by default, with the possibility to enable it back by configuration
  • PublicationSanityDefaultCheck
    • Added the detection of the auto-published nodes which are missing from the live workspace
Nécessite Jahia 8.0.2.0Mis à jour 2023-03-22
  • UI
    • Added a panel to analyze the errors raised by the past scans
    • Increased the size of the logs area in the scan panel
    • Log the intermediate errors count in the UI logs as well
  • Framework
    • Increased the scan results cache duration to 5 weeks (time to idle)
    • Limited the size of the logs sent over GQL
    • [bugfix] Skip the nodes which do not have a correct path according to their node name and parent node path, to avoid StackOverflowError errors
    • [bugfix] Keep the declaration order of the check configurations, so that the order is the same in the UI when a check holds multiple configurations
  • BinaryPropertiesSanityCheck
    • Added the possibility to consider the valid binaries with a length of zero byte as errors
    • Fully read the binary and compare it to its size when using the download-stream strategy
  • NodeNameInfoSanityCheck
    • Improved the detection of the real errors
    • Excluded some false positives
    • The check is now active by default, since the error detection is finalized
  • Implemented a new check to detect the hardcoded internal links: StaticInternalLinksCheck
Nécessite Jahia 8.0.2.0Mis à jour 2023-02-08
  • Framework
    • Added a Site column in the generated CSV reports
    • Excluded paths are now tracked in the logs
    • Add the mixin jmix:nolive to the reports uploaded in the JCR, to avoid unwanted publications (this doesn't apply to the already uploaded reports)
    • Implemented the possibility to check if the conditions of an integrityCheck are reachable during a scan, and exclude those for which they are not
    • Do not start the scan if no integrity check can be run
    • [bugfix] Prevent scanning when starting a scan from a node in the subtree of an excluded path
  • PublicationSanityLiveCheck
    • When different mixins are found on a published node in the 2 workspaces, add the mixin names to error data
    • Excluded some properties from the comparison to avoid false positives
  • AceSanityCheck
    • [bugfix] Avoid false positives when processing an external ACE defined for a scope declared not by the role itself, but inherited from its parent role
Nécessite Jahia 8.0.2.0Mis à jour 2022-12-30
  • UI
    • [bugfix] Do not generate a link to the documentation for the custom checks
    • [bugfix] When selecting no check, a scan was run using every active check
    • When receiving additional logs, keep the current position if not scrolled to the bottom
    • [bugfix] When scanning the 2 workspaces, do not start scanning the second workspace when stopping the process during the scan of the first one
  • Framework
    • Separate in the CSV file the extra information which can be used for grouping purpose from those which are specific to the current error
Nécessite Jahia 8.0.2.0Mis à jour 2022-12-01
  • Framework
    • [bugfix] Fixed the execution of disabled checks when running a scan with a list of checks to execute
  • UndeployedModulesReferencesCheck
    • Removed the site name from the errors to generate the same text for the same missing module
  • AceSanityCheck
    • [bugfix] ACE_NON_GRANT_WITH_EXTERNAL_ACE : fixed the description of the error
  • Script scanRefsToSiteContent
    • Added the possibility to track the external references in the references keeper
Nécessite Jahia 8.0.2.0Mis à jour 2022-11-09
  • Implemented a new check on the properties defined by the mixin jmix:nodenameInfo: NodeNameInfoSanityCheck
  • PublicationSanityLiveCheck
    • [bugfix] Avoid false positives related to the mixin jmix:deletedChildren
Nécessite Jahia 8.0.2.0Mis à jour 2022-09-28
  • Framework
    • Execution duration summary: log the duration of the initial nodes count
    • Execution duration summary: improved the calculation of the duration of the scan of the tree
    • Execution duration summary: improved the formatting
    • Added the possibility to exclude the virtual nodes
  • UI
    • Added a configuration to exclude the virtual nodes
    • Added a link to the documentation of each check
  • Command jcr:integrity-configureCheck
    • Added a configuration to exclude the virtual nodes
  • AceSanityCheck
    • Detect the ACE which are not of type GRANT but are referenced by an external ACE
  • UndeployedModulesReferencesCheck
    • Improved the performances
Nécessite Jahia 8.0.2.0Mis à jour 2022-09-27
  • Framework
    • Write the execution summary and some other information related to the scan on the report file node in the JCR
    • Execution duration summary: log the number of scanned nodes
    • Execution duration summary: log the number of errors found
    • Improved the formatting of the generated CSV file to ease the parsing by Excel (we miss you Greg :) )
  • BinaryPropertiesSanityCheck
    • Reduced the duration of the check by default, using a light strategy. The former strategy can be enabled back by configuration
  • PropertyDefinitionsSanityCheck
    • [bugfix] Fixed the validation of the properties declared as unstructured, which were wrongly reported as undeclared
Nécessite Jahia 8.0.2.0Mis à jour 2022-09-15
  • Framework
    • [bugfix] Fixed the automated disabling of a check which throws too many errors
  • PropertyDefinitionsSanityCheck
    • [bugfix] Fixed NPE
Nécessite Jahia 8.0.2.0Mis à jour 2022-09-12
3.11brouillonTélécharger
  • Implemented a new check to detect child nodes not allowed by their parent node definition: ChildNodeDefinitionsSanityCheck
  • Framework
    • Added the possibility to disable a check for the rest of the duration of the scan
  • PropertyDefinitionsSanityCheck
    • [bugfix] Fixed the detection of the i18n properties written on the main node (now reported as undeclared)
    • Performance improvement
  • JCRLanguagePropertyCheck
    • Embed in the error the value of the jcr:language property when detected as inconsistent with the node name
Nécessite Jahia 8.0.2.0Mis à jour 2022-09-12
  • Implemented a new check on the user accounts: UserAccountSanityCheck
    • Detect the cased when the user is not granted the role owner on his own account
Nécessite Jahia 8.0.2.0Mis à jour 2022-08-22
  • [bugfix] Fixed the UI when not running Jahia under the ROOT context
Nécessite Jahia 8.0.2.0Mis à jour 2022-08-18

AceSanityCheck

  • [bugfix] Avoid false positives with external ACE defined for a path that ends with a slash
Nécessite Jahia 8.0.2.0Mis à jour 2022-06-27

UI

  • When refreshing the logs, scroll to the bottom
  • Added the possibility to exclude some paths from the scan
Nécessite Jahia 8.0.2.0Mis à jour 2022-06-23

UI

  • [bugfix] Fixed the save of the configurations
Nécessite Jahia 8.0.2.0Mis à jour 2022-05-13
  • UI
    • Moved the UI under system-health
    • Display the description of the configurations
    • Display a link to download the report at the end of a scan
    • [bugfix] Do not crash when an invalid root path is specified
    • [bugfix] Fixed the label in the navigation
Nécessite Jahia 8.0.2.0Mis à jour 2022-05-12
  • Implemented a UI (server settings)
  • Implemented a GraphQL API
  • [bugfix] Prevent concurrent executions
  • [bugfix] Catch any error thrown when scanning the children nodes, to let the scan continue properly
Nécessite Jahia 8.0.2.0Mis à jour 2022-05-10
  • Command jcr:integrity-printTestResults
    • Added the possibility to upload the report in the JCR
  • Command jcr:integrity-check
    • [bugfix] Do not skip the disabled checks when they are explicitly specified in the list of checks to execute
  • PublicationSanityDefaultCheck
    • [bugfix] When the scan is not run from the root of the JCR, and a different path in default & live is identified on the root node of the scan, do not log an error on each sub-node
  • PublicationSanityLiveCheck
    • Implemented a comparison on the property values between the workspaces default and live, on the nodes without pending modifications
  • Implemented a groovy script to detect the references from outside from a site
  • Improved the output of the errors list in the shell
  • Refactored the check ID to use a string instead of a number
  • Implemented a completer on the check ID
Nécessite Jahia 8.0.2.0Mis à jour 2022-04-22
  • Implemented a new execution condition, based on some properties defined on the node
  • SiteLevelSystemGroupsCheck
    • [bugfix] If the privileged group is missing, log it only once, instead of one time per scanned site
  • WipSanityCheck
    • [bugfix] Fixed the execution conditions
  • PublicationSanityDefaultCheck
    • When the scan is not run from the root of the JCR, and a different path in default & live is identified on the root node of the scan, consider the possibility that it is an inherited consequence from a parent node outside from the scope of the scan
  • HomePageDeclarationCheck
    • When no page is flagged as the home page, but a sub-node of the site is named home, generate a different error depending on if this node is a page or not
  • LockSanityCheck
    • Added the detection of the deletion locks remaining on a translation node after an undeletion
  • ConfigureCheckCommand
    • Added a completer on the parameter name option (-p)
Nécessite Jahia 8.0.2.0Mis à jour 2022-02-11
  • AceSanityCheck
    • Improved the detection of external ACE having a wrong path
    • [bugfix] Avoid false positives with external ACE defined for an ACE stored outside from a site and granting permissions on the current site
    • [bugfix] Avoid logging twice the external ACE defined for an ACE not of type GRANT
  • VersionHistoryCheck
    • Reduced the scan duration in the live workspace. Only the UGC nodes will be considered when scanning this workspace, the other nodes will be skipped since they can be checked while scanning the default workspace
Nécessite Jahia 8.0.2.0Mis à jour 2022-01-13
  • First version for the Jahia 8.x family
  • Equivalent to content-integrity 2.20
Nécessite Jahia 8.0.2.0Mis à jour 2021-12-27
  • Framework
    • Added some factory methods to easily track execution errors from a check
  • UI
    • Results screen: display the number of matching errors even on the filters which are already in use
    • Results screen: automatically switch to the results of the last scan
    • [bugfix] Do not escape/unescape non string objects
Nécessite Jahia 7.3.1.0Mis à jour 2025-03-21
  • Framework
    • When a java error occur, create a framework level error to have it tracked in the report
  • UI
    • Results screen: display the number of matching errors next to each filter
    • Results screen: when the selected value for a filter is not available for the current results set, add it to the filter option list
    • Results screen: display all the filter options, even if there's no matching error with the currently applied filters
    • Results screen: Add the site to the error details popup
    • [bugfix] Jahia 8: do not display the admin panel in the navigation if the current user is not allowed to browse it
    • [bugfix] Escape the content that can embed some HTML reserved characters
  • AceSanityCheck
    • Detect the missing members in the site-privileged groups
    • Detect the sites with a high number of ACE nodes
Nécessite Jahia 7.3.1.0Mis à jour 2025-03-06
  • UndeclaredNodeTypesCheck
    • Added the detection of the definitions which have been removed but are still present in the NodeTypeRegistry
Nécessite Jahia 7.3.1.0Mis à jour 2025-02-17
  • Implemented a new check to detect types / properties / property values which are valid as per the definitions, but are unexpected in a specific workspace, and have an impact on the import feature: WorkspaceSpecificDefinitionsCheck
  • UI
    • Configurable checks: always display the configurations in their declaration order
Nécessite Jahia 7.3.1.0Mis à jour 2024-12-27
  • Framework
    • Dispatch the reports under intermediate folders based on the scan date
    • [bugfix] Ignore null scan results
  • AceSanityCheck
    • Detect the duplicated references to the same source ACE
  • PublicationSanityLiveCheck
    • Flag NO_DEFAULT_NODE errors (non UGC live nodes without default node) as impacting the import
  • VersionHistoryCheck
    • Track in the error object if the node is auto-published
Nécessite Jahia 7.3.1.0Mis à jour 2024-10-02
  • Compatibility with Jahia 8.2
  • Implemented a new check to detect the pages which use an invalid template: PagesSanityCheck
  • Framework
    • Log the module version when starting/finishing a scan
    • Flagged the errors which make the XML import fail, and log at the end of a scan the compatibility withthe XML import
    • Added the impact on the XML import to the reports (new column)
    • [bugfix] When scanning the 2 workspaces, merge the results even if not uploading the results
    • [bugfix] Fixed the calculation of the node existence in live
  • UI
    • Added a column to filter the errors which have an impact on the XML import
    • [bugfix] Fixed the label of the filters
  • PublicationSanityDefaultCheck
    • PATH_CONFLICT errors: add the conflicted live node primary type to the report
    • PATH_CONFLICT errors: add the path of the conflicted node in the default workspace to the report
    • Detect the nodes which have a different primary type in the default and live workspaces
  • NodeNameInfoSanityCheck
    • [bugfix] When the node has no last publication related metadata, assume that its live path is correct
  • JCRLanguagePropertyCheck
    • Add the parent node type to the report
  • ChildNodeDefinitionsSanityCheck
    • Add the parent node type to the report
Nécessite Jahia 7.3.1.0Mis à jour 2024-09-17
  • PropertyDefinitionsSanityCheck
    • [bugfix] JCRNodeValidator check: execute the JCRNodeValidator with the correct locale
    • [bugfix] Avoid logging an error when the node does not exist in the specified language
    • [bugfix] Fixed the Locale conversion to String when using a regional variant
Nécessite Jahia 7.3.1.0Mis à jour 2024-05-29
  • Framework
    • Track the Jahia version in the report metadata
    • Reduced the memory footprint
    • [bugfix] Do not limit the size of the extra message
  • PropertyDefinitionsSanityCheck
    • Execute the JCRNodeValidator (only the JCR constraints were checked)
Nécessite Jahia 7.3.1.0Mis à jour 2024-05-13
  • Framework
    • Reduce the priority of the thread which executes the scan
  • PublicationSanityDefaultCheck
    • Detect the conflicts between 2 nodes that use the same path (one in default, the other one in live)
    • Improved the documentation
    • [bugfix] Do not check the external nodes, what was generating a lot of false positives
  • StaticInternalLinksCheck
    • Added the possibility to ignore localhost
    • Do not scan the properties if there's no domain to scan
Nécessite Jahia 7.3.1.0Mis à jour 2024-05-02
  • Framework
    • When too many errors are identified, split the reports into several files to avoid OOM
  • AceSanityCheck
    • Added the detection of ACE nodes with an invalid node name
  • PublicationSanityDefaultCheck
    • Detect the module technical nodes which are missing in live
  • PublicationSanityLiveCheck
    • Avoid false positives on UGC ACE nodes: since they are not tracked as UGC nodes, they can't beconsidered as non UGC and raise an error because of no node with same uuid in the default workspace
Nécessite Jahia 7.3.1.0Mis à jour 2024-03-18
  • Framework
    • Track the content-integrity version used in the logs and on the report in the JCR
    • Track the scan summary data only once on the folder instead of on each report file node
  • UI
    • Added a prefix to the log lines where the server logs contain a stacktrace
  • AceSanityCheck
    • Error ACE_NON_GRANT_WITH_EXTERNAL_ACE : add the role names as error extra info to ease the report analysis
    • Sort the role names when added as error extra info to ease the errors aggregation in the report
    • [bugfix] Moved the external ace path from extra info to specific extra infos as it breaks the errors aggregation in the report
  • StaticInternalLinksCheck
    • Track the locale when the property is found on a translation node
  • VersionHistoryCheck
    • [bugfix] Moved the exact count from extra info to specific extra infos as it breaks the errors aggregation in the report
  • PublicationSanityLiveCheck
    • [bugfix] Fixed the calculation of the locale on jnt:referenceInField nodes related to a non i18n property
    • [bugfix] Skip technical sub-nodes related to a locale for which the translation node is missing
Nécessite Jahia 7.3.1.0Mis à jour 2023-07-13
  • Framework
    • [bugfix] Do not start the scan if the root node does not exist in the workspace
    • Improved the method to calculate the publication status so that it can be calculated for a technical Jahia node
  • UI
    • When more than one workspace is scanned, print the number of errors per workspace in the logs when logging the total number of errors
    • [bugfix] Avoid error in the server logs when downloading the scan logs over GraphQL
  • PublicationSanityLiveCheck
    • [bugfix] Improved the handling of the technical sub nodes (ex: an internal link is deleted from a richtext. The technical node holding the reference is immediately deleted from the default workspace, but will be deleted as well in the live workspace only when the content node is published. The technical node was reported as missing in default, and this was a false positive)
  • LockSanityCheck
    • [bugfix] Avoid errors on translation nodes with lock related properties but no j:lockTypes property
  • ReferencesSanityCheck
    • Reduced the memory footprint
Nécessite Jahia 7.3.1.0Mis à jour 2023-05-24
  • Framework
    • Added the possibility to send additional errors during the finalization phase
    • Removed the possibility to generate a CSV file without header since the report is not limited to the CSV file anymore
    • Avoid storing too long texts in the errors extra infos
    • When merging error lists, return a new list instead of modifying a provided one
  • UI
    • Report UI: display the uuid as a link to the JCR browser
Nécessite Jahia 7.3.1.0Mis à jour 2023-05-01
  • Implemented a new check to detect the invalid references: ReferencesSanityCheck
  • Framework
    • [bugfix] Fixed the calculation of the count ranges (used to aggregate errors returning a similar number, such as the number of versions)
    • [bugfix] Excel report: avoid crashing when the scan has identified more than 32767 errors
    • [bugfix] Improved the reset of the JCR sessions between 2 executions
Nécessite Jahia 7.3.1.0Mis à jour 2023-04-17
  • Framework
    • Added the possibility to generate several report files
    • Added the generation of an Excel report, with a sheet containing the errors data, and a sheet with a predefined pivot table for errors analysis
    • Errors related to a module (under /modules) are now showing the module name in the "site" column of the reports
    • [bugfix] Avoid crashing when an error occurs while loading the next child node of a node (during the scan itself or during the calculation of the size of the tree)
  • NodeNameInfoSanityCheck
    • Disabled the check of the fullpath by default, with the possibility to enable it back by configuration
  • PublicationSanityDefaultCheck
    • Added the detection of the auto-published nodes which are missing from the live workspace
Nécessite Jahia 7.3.1.0Mis à jour 2023-03-22
  • UI
    • Added a panel to analyze the errors raised by the past scans
    • Increased the size of the logs area in the scan panel
    • Log the intermediate errors count in the UI logs as well
  • Framework
    • Increased the scan results cache duration to 5 weeks (time to idle)
    • Limited the size of the logs sent over GQL
    • [bugfix] Skip the nodes which do not have a correct path according to their node name and parent node path, to avoid StackOverflowError errors
    • [bugfix] Keep the declaration order of the check configurations, so that the order is the same in the UI when a check holds multiple configurations
  • BinaryPropertiesSanityCheck
    • Added the possibility to consider the valid binaries with a length of zero byte as errors
    • Fully read the binary and compare it to its size when using the download-stream strategy
  • NodeNameInfoSanityCheck
    • Improved the detection of the real errors
    • Excluded some false positives
    • The check is now active by default, since the error detection is finalized
  • Implemented a new check to detect the hardcoded internal links: StaticInternalLinksCheck
Nécessite Jahia 7.3.1.0Mis à jour 2023-02-08
  • Framework
    • Added a Site column in the generated CSV reports
    • Excluded paths are now tracked in the logs
    • Add the mixin jmix:nolive to the reports uploaded in the JCR, to avoid unwanted publications (this doesn't apply to the already uploaded reports)
    • Implemented the possibility to check if the conditions of an integrityCheck are reachable during a scan, and exclude those for which they are not
    • Do not start the scan if no integrity check can be run
    • [bugfix] Prevent scanning when starting a scan from a node in the subtree of an excluded path
  • PublicationSanityLiveCheck
    • When different mixins are found on a published node in the 2 workspaces, add the mixin names to error data
    • Excluded some properties from the comparison to avoid false positives
  • AceSanityCheck
    • [bugfix] Avoid false positives when processing an external ACE defined for a scope declared not by the role itself, but inherited from its parent role
Nécessite Jahia 7.3.1.0Mis à jour 2022-12-30
  • UI
    • [bugfix] Do not generate a link to the documentation for the custom checks
    • [bugfix] When selecting no check, a scan was run using every active check
    • When receiving additional logs, keep the current position if not scrolled to the bottom
    • [bugfix] When scanning the 2 workspaces, do not start scanning the second workspace when stopping the process during the scan of the first one
  • Framework
    • Separate in the CSV file the extra information which can be used for grouping purpose from those which are specific to the current error
Nécessite Jahia 7.3.1.0Mis à jour 2022-12-01
  • Framework
    • [bugfix] Fixed the execution of disabled checks when running a scan with a list of checks to execute
  • UndeployedModulesReferencesCheck
    • Removed the site name from the errors to generate the same text for the same missing module
  • AceSanityCheck
    • [bugfix] ACE_NON_GRANT_WITH_EXTERNAL_ACE : fixed the description of the error
  • Script scanRefsToSiteContent
    • Added the possibility to track the external references in the references keeper
Nécessite Jahia 7.3.1.0Mis à jour 2022-11-09
  • Implemented a new check on the properties defined by the mixin jmix:nodenameInfo: NodeNameInfoSanityCheck
  • UI
    • [bugfix] Fixed GraphQL errors making the UI unresponsive
  • PublicationSanityLiveCheck
    • [bugfix] Avoid false positives related to the mixin jmix:deletedChildren
Nécessite Jahia 7.3.1.0Mis à jour 2022-09-28
2.34brouillonTélécharger
  • Framework
    • Execution duration summary: log the duration of the initial nodes count
    • Execution duration summary: improved the calculation of the duration of the scan of the tree
    • Execution duration summary: improved the formatting
    • Added the possibility to exclude the virtual nodes
  • UI
    • Added a configuration to exclude the virtual nodes
    • Added a link to the documentation of each check
  • Command jcr:integrity-configureCheck
    • Added a configuration to exclude the virtual nodes
  • AceSanityCheck
    • Detect the ACE which are not of type GRANT but are referenced by an external ACE
  • UndeployedModulesReferencesCheck
    • Improved the performances
Nécessite Jahia 7.3.1.0Mis à jour 2022-09-27
  • Framework
    • Write the execution summary and some other information related to the scan on the report file node in the JCR
    • Execution duration summary: log the number of scanned nodes
    • Execution duration summary: log the number of errors found
    • Improved the formatting of the generated CSV file to ease the parsing by Excel (we miss you Greg :) )
  • BinaryPropertiesSanityCheck
    • Reduced the duration of the check by default, using a light strategy. The former strategy can be enabled back by configuration
  • PropertyDefinitionsSanityCheck
    • [bugfix] Fixed the validation of the properties declared as unstructured, which were wrongly reported as undeclared
Nécessite Jahia 7.3.1.0Mis à jour 2022-09-15
  • Framework
    • [bugfix] Fixed the automated disabling of a check which throws too many errors
  • PropertyDefinitionsSanityCheck
    • [bugfix] Fixed NPE
Nécessite Jahia 7.3.1.0Mis à jour 2022-09-12
2.31brouillonTélécharger
  • Implemented a new check to detect child nodes not allowed by their parent node definition: ChildNodeDefinitionsSanityCheck
  • Framework
    • Added the possibility to disable a check for the rest of the duration of the scan
  • PropertyDefinitionsSanityCheck
    • [bugfix] Fixed the detection of the i18n properties written on the main node (now reported as undeclared)
    • Performance improvement
  • JCRLanguagePropertyCheck
    • Embed in the error the value of the jcr:language property when detected as inconsistent with the node name
Nécessite Jahia 7.3.1.0Mis à jour 2022-09-12
  • Implemented a new check on the user accounts: UserAccountSanityCheck
    • Detect the cased when the user is not granted the role owner on his own account
Nécessite Jahia 7.3.1.0Mis à jour 2022-08-22

[bugfix] Fixed the UI when not running Jahia under the ROOT context

Nécessite Jahia 7.3.1.0Mis à jour 2022-08-18

AceSanityCheck

  • [bugfix] Avoid false positives with external ACE defined for a path that ends with a slash
Nécessite Jahia 7.3.1.0Mis à jour 2022-06-27

UI

  • When refreshing the logs, scroll to the bottom
  • Added the possibility to exclude some paths from the scan
Nécessite Jahia 7.3.1.0Mis à jour 2022-06-23

UI

  • [bugfix] Fixed the save of the configurations
Nécessite Jahia 7.3.1.0Mis à jour 2022-05-13
  • UI
    • Moved the UI under system-health
    • Display the description of the configurations
    • Display a link to download the report at the end of a scan
    • [bugfix] Do not crash when an invalid root path is specified
Nécessite Jahia 7.3.1.0Mis à jour 2022-05-12
  • Implemented a UI (server settings)
  • Implemented a GraphQL API
  • [bugfix] Prevent concurrent executions
  • [bugfix] Catch any error thrown when scanning the children nodes, to let the scan continue properly
Nécessite Jahia 7.3.1.0Mis à jour 2022-05-10
  • Command jcr:integrity-printTestResults
    • Added the possibility to upload the report in the JCR
  • Command jcr:integrity-check
    • [bugfix] Do not skip the disabled checks when they are explicitly specified in the list of checks to execute
  • PublicationSanityDefaultCheck
    • [bugfix] When the scan is not run from the root of the JCR, and a different path in default & live is identified on the root node of the scan, do not log an error on each sub-node
  • PublicationSanityLiveCheck
    • Implemented a comparison on the property values between the workspaces default and live, on the nodes without pending modifications
  • Implemented a groovy script to detect the references from outside from a site
  • Improved the output of the errors list in the shell
  • Refactored the check ID to use a string instead of a number
  • Implemented a completer on the check ID
Nécessite Jahia 7.3.0.0Mis à jour 2022-04-22
  • Implemented a new execution condition, based on some properties defined on the node
  • SiteLevelSystemGroupsCheck
    • [bugfix] If the privileged group is missing, log it only once, instead of one time per scanned site
  • WipSanityCheck
    • [bugfix] Fixed the execution conditions
  • PublicationSanityDefaultCheck
    • When the scan is not run from the root of the JCR, and a different path in default & live is identified on the root node of the scan, consider the possibility that it is an inherited consequence from a parent node outside from the scope of the scan
  • HomePageDeclarationCheck
    • When no page is flagged as the home page, but a sub-node of the site is named home, generate a different error depending on if this node is a page or not
  • LockSanityCheck
    • Added the detection of the deletion locks remaining on a translation node after an undeletion
  • ConfigureCheckCommand
    • Added a completer on the parameter name option (-p)
Nécessite Jahia 7.3.0.0Mis à jour 2022-02-11
  • AceSanityCheck
    • Improved the detection of external ACE having a wrong path
    • [bugfix] Avoid false positives with external ACE defined for an ACE stored outside from a site and granting permissions on the current site
    • [bugfix] Avoid logging twice the external ACE defined for an ACE not of type GRANT
  • VersionHistoryCheck
    • Reduced the scan duration in the live workspace. Only the UGC nodes will be considered when scanning this workspace, the other nodes will be skipped since they can be checked while scanning the default workspace
Nécessite Jahia 7.3.0.0Mis à jour 2022-01-13
  • Command jcr:integrity-check
    • Added the possibility to specify the checks to execute
    • Added the possibility to specify some checks to skip
    • Added the possibility to interrupt a scan before its end
    • [bugfix] Calculation of the number of nodes to scan: do not crash on non JCR exceptions
  • WipSanityCheck
    • Detect nodes with an invalid value in j:workInProgressStatus
    • [bugfix] Fixed invalid error messages
Nécessite Jahia 7.3.0.0Mis à jour 2021-12-27
  • Implemented a check to detect nodes based on a missing type
  • Reduce the memory footprint of the scan
  • [bugfix] Fixed NPE when the error has no extra infos
  • [bugfix] Avoid NPE on null errors
Nécessite Jahia 7.3.0.0Mis à jour 2021-11-11
  • PropertyDefinitionsSanityCheck:
    • [bugfix] consider Reference and Weakreference as the same type when comparing the value type with the property type
  • AceSanityCheck:
    • Added some more info to explain & ease toubleshoot the "invalid principal" errors
Nécessite Jahia 7.3.0.0Mis à jour 2021-09-28
  • Refactored the test results ID to embed the workspace name
  • Log the intermediate counts while counting the nodes to be scanned
  • Unified the output of the errors
  • [bugfix] Fixed the calculation of the number of nodes to scan when there's an error while iterating the JCR
  • PropertyDefinitionsSanityCheck
    • [bugfix] Fixed the calculation of the fact that the external permission path is relative to the current site
    • [bugfix] Fixed the creation of errors when an ACE and its related currentSite external ACE are in different sites
    • [bugfix] When calculating the effective type of the values of a multi-valued property, return weakreference instead of undefined when the values are a mix of weakreference and reference
  • PublicationSanityLiveCheck
    • [bugfix] Fixed the execution condition to catch every node having the property j:originWS
Nécessite Jahia 7.3.0.0Mis à jour 2021-08-13
  • Implemented a check on the property definitions
    • detection of the missing mandatory properties
    • detection of the properties having their value not matching the declared constraint
    • detection of the properties having their value not matching the declared type
    • detection of the properties having a single-valued value and declared as multi-valued
    • detection of the properties having a multi-valued value and declared as single-valued
    • detection of the non declared properties
  • Implemented a command to print out some extended information about an error
  • Sum up of the check durations at the end of the scan: sort the checks by duration
Nécessite Jahia 7.3.0.0Mis à jour 2021-08-05
  • AceSanityCheck: detect the external ACE defined for a role which does not exist
  • AceSanityCheck: detect the external ACE defined for external permissions which are not declared by the role
  • [bugfix] VersionHistoryCheck : when the version history can't be loaded for a node, log the full stacktrace only when the log level is set to debug
  • [bugfix] VersionHistoryCheck : skip the external nodes with a custom decorator
Nécessite Jahia 7.3.0.0Mis à jour 2021-07-16
  • AceSanityCheck: detect ACE / external ACE without ACE type
  • AceSanityCheck: detect external ACE with a type different from 'GRANT'
  • AceSanityCheck: detect external ACE with a reference to a source ACE having a type different from 'GRANT'
  • AceSanityCheck: detect the ACE having a type different from 'GRANT' and being referenced by an external ACE
  • [bugfix] AceSanityCheck: do not check the consistency of the external ACE for the ACE having a type different from 'GRANT'
Nécessite Jahia 7.3.0.0Mis à jour 2021-07-16
  • [bugfix] AceSanityCheck: fixed the detection of ACE which are not in the same site as their related external ACE
  • [bugfix] AceSanityCheck: fixed the calculation of the false positives when dealing with a broken reference to a source ACE in live
Nécessite Jahia 7.3.0.0Mis à jour 2021-07-16
  • AceSanityCheck: log external ACE with a property j:sourceAce having no value
  • [bugfix] AceSanityCheck: fixed the detection of ACE which are not in the same site as their related external ACE
Nécessite Jahia 7.3.0.0Mis à jour 2021-07-16
  • [bugfix] Fixed the comparison of the roles between an ACE and a related externalACE
  • UndeployedModulesReferencesCheck : return one error per missing module
  • [bugfix] do not report errors for nodes having a different path between default and live when the node is not the root of the move operation
Nécessite Jahia 7.3.0.0Mis à jour 2021-06-25

Improved the sanity check on the ACE nodes

Nécessite Jahia 7.3.0.0Mis à jour 2021-06-24
  • Implemented a sanity check on the ACE nodes, in order to detect ACE related to deleted users or groups
  • Implemented a factory method to create an empty errors list
  • [bugfix] Fixed the calculation of the number of nodes to scan when scanning the whole repository
  • [bugfix] Fixed the time calculation in case of error
Nécessite Jahia 7.3.0.0Mis à jour 2021-05-19
  • Implemented a sanity check on the ACE nodes, in order to detect ACE related to deleted users or groups
  • [bugfix] Fixed the calculation of the number of nodes to scan when scanning the whole repository
Nécessite Jahia 7.3.0.0Mis à jour 2021-01-13
  • Minimum Jahia version is now 7.3.0.0
  • Added the possibility to configure some integrity checks
  • Implemented a sanity check to detect nodes with too many versions
Nécessite Jahia 7.3.0.0Mis à jour 2020-12-10
  • [bugfix] Move operation that can't be published: do not test on the translation nodes
  • Added an optional header to the CSV dump (generated by default)
Nécessite Jahia 7.2.0.0Mis à jour 2020-11-24

Implemented an option to exclude a subtree from the scan
Implemented an "estimated time of arrival".

Nécessite Jahia 7.2.0.0Mis à jour 2019-08-14

Implemented a sanity check on the system groups

Nécessite Jahia 7.2.0.0Mis à jour 2019-07-22

Implemented a sanity check for the "work in progress" related properties
Implemented the possibility to define a minimum DX version for an integrity check
Fixed the execution conditions on MarkedForDeletionCheck

Nécessite Jahia 7.2.0.0Mis à jour 2019-03-01

Implemented TemplatesIndexationCheck

Nécessite Jahia 7.2.0.0Mis à jour 2018-12-12

Implemented BinaryPropertiesSanityCheck

Nécessite Jahia 7.2.0.0Mis à jour 2018-10-10
Nécessite Jahia 7.2.0.0Mis à jour 2018-07-31