Skip to main content
Joinup 2.15.0
Latest release
Published on: 27/07/2026
New features
- ISAICP-11232: Archive Collections:
- ISAICP-11137: [analysis] Archive Collections
- ISAICP-11225: Allow to unarchive collection
- ISAICP-11226: Display archived status
- ISAICP-11227: Drop request archival notification
- ISAICP-11231: Merge tests for archive feature
- ISAICP-11234: Cascade archive state to collection sub-content
- ISAICP-11239: Impact of new moderator "Archive Collection" action on the existing "Request Archival" process
- ISAICP-11307: Prevent archiving a collection with active solutions
- ISAICP-11308: Send notifications when a collection is archived
- ISAICP-11309: Add direct moderator archive transition to the collection workflow
- ISAICP-11361: Should not be possible to unarchive a solution whose collection is archived
- ISAICP-11368: Draft solution inside archived collection
- ISAICP-11591: Download all published assessment PDFs
Improvements
- ISAICP-11468: Assessments counter in Solutions metadata info
- ISAICP-11469: New action button in Solutions banner linking to the Reuse form
- ISAICP-11485: Creation of a new document subtype 'Solution use cases'
- ISAICP-11502: Re-enable the manual Translate button on all pages
- ISAICP-11538: Enable revision purge for all node types
- ISAICP-11540: Upgrade replicate actions to the latest major version
- ISAICP-11561: Masquerade as a specific Portal user
Bug fixes
- ISAICP-11250: Wrong view of Affected Stakeholders in the binding requirements
- ISAICP-11405: joinup_core.field_more_in_modal route
- ISAICP-11406: Contact form URL field is weird
- ISAICP-11407: Archived entries are missed from production SPARQL endpoint
- ISAICP-11508: Re-saving a discussion triggers the 'new content published' notification
- ISAICP-11510: Review RDF vocab imports
- ISAICP-11517: Deprecated function: ArrayIterator::__construct(): Using an object as a backing array for ArrayIterator is deprecated,
- ISAICP-11518: Private message has 2 times the email sign-off
- ISAICP-11528: Incorrect underlining with Discussion and Glossary pages
- ISAICP-11543: The view oauth_client_request do not check access in display user_requests
- ISAICP-11546: Fix rdf.settings route
- ISAICP-11558: Modal with publiccode errors is not displayed
- ISAICP-11559: EU OSS Catalogue Administration displays wrong links
- ISAICP-11567: Intermittent behat failure from related_solution.feature:23
- ISAICP-11569: Error in FieldWidget\PluginReferenceSelectWidget
- ISAICP-11573: 'Show archived' facet jumps to the left if there are only archived content at a group
- ISAICP-11577: Error when manually adding a translation
- ISAICP-11585: Analyze and fix aborted job items
- ISAICP-11586: Path alias translation looks wrong
Performance
- ISAICP-11393: [Performance] MetaEntity::loadOrCreateHelper
- ISAICP-11395: [Performance] Tagify loads hundreds of entities
- ISAICP-11535: [Performance] The 'report' display from 'assessments_rest' view is not cached
- ISAICP-11536: [Performance] Query results of upcoming_event view are not cached
- ISAICP-11555: [performance] Hit from OG permission compilation
- ISAICP-11593: [performance] OSOR collection page very slow for editing:
- ISAICP-11600: Reduce cost of customising LP component add button
- ISAICP-11601: Optimise how components are loaded in LayoutParagraphsLayout
Operations, technical debt, security
- ISAICP-11220: Update node/npm version (20 > 24)
- ISAICP-11242: Telegram is not recommended by EU
- ISAICP-11348: Release 2.14.0
- ISAICP-11413: remove publiccode-editor instance
- ISAICP-11416: Tool to create MySQL snapshot using my dumper
- ISAICP-11437: Dead code: DisableEiraTermsSolutionWorker
- ISAICP-11467: Drop cached_computed_field module
- ISAICP-11479: Release 2.14.1
- ISAICP-11507: Release 2.14.2
- ISAICP-11542: Module default_content is in PROD but not used
- ISAICP-11552: Cleanup backup tables
- ISAICP-11562: Release 2.14.3
- ISAICP-11592: SA-CORE-2026