This issue has been created
 
 
Security Advisory Application / cid:jira-generated-image-avatar-02ae70da-ba4e-4e2a-9c1a-5108db330e6c SPAPP-38 Open

Use the real release date of the patched versions when no release note exists for the product

 
View issue   ยท   Add comment
 

Issue created

 
cid:jira-generated-image-avatar-2ed7bddf-d359-4c78-978f-b871b9f38843 Vincent Massol created this issue on 19/Oct/26 21:23
 
Summary: Use the real release date of the patched versions when no release note exists for the product
Issue Type: cid:jira-generated-image-avatar-02ae70da-ba4e-4e2a-9c1a-5108db330e6c Improvement
Affects Versions: 2.2.1
Assignee: Unassigned
Created: 19/Oct/26 21:23
Priority: cid:jira-generated-image-static-major-78d5cc75-02ed-42d7-a833-b2a2b14a30e7 Major
Reporter: Vincent Massol
Description:

The embargo date is computed from the release date of the patched versions. That date is read from the ReleaseNotes.Code.ReleaseNoteClass object of the product. When there is none, the code falls back to checking that the artifact exists in the extension repositories (SPAPP-21) and uses the current date as the release date (DefaultVersionReleasedManager#computeReleased).

This fallback applies to every xwiki-contrib extension:

  • only XWiki Standard and a few products have release notes in the Release Notes Application;
  • the product of an imported GitHub advisory is the repository name (e.g. application-antispam), which doesn't match the release notes product names anyway (e.g. ActivityPub vs application-activitypub).

As a consequence, the embargo of a contrib advisory starts when the "Automatic computation of advisories embargo dates" job first runs after the advisory is announced, not when the fix was released. For example, an advisory announced a few months after the release gets an embargo ending a few months too late, and the result also depends on when the job happens to run.

Suggested improvement: when no release note exists, use the actual release date of the patched version, e.g. the date of the artifact in the Maven repository it was resolved from.