Joinup 2.3.0 Switch to the latest release
Published on: 20/06/2025
New features
- ISAICP-9495: Expose data about each EU OSS Catalogue. Includes:
- ISAICP-9496: Extend OSS provider plugin definitions
- ISAICP-9501: Adapt UI for new hosting_platform config entity properties
- ISAICP-9502: Controller & route for OSS catalogue source page
- ISAICP-9503: Open catalogue page in modal in search
- ISAICP-9504: Open catalogue page in modal in solution page
- ISAICP-9505: Block listing a table with catalogues
- ISAICP-9506: Frontend tasks
- ISAICP-9549: Update title logic for modal
- ISAICP-9550: Updates to OSS catalogue sources table
- ISAICP-9468: Create a solution modal window for when users subscribe to a solution
Improvements
- ISAICP-9359: Join a collection modal to be updated
- ISAICP-9560: Update the banner on homepage
- ISAICP-9561: Make collections & solutions moderated by default
- ISAICP-9449: Collection notification for IOP assessments
- ISAICP-9471: Add a new action button in the home page
- ISAICP-9467: Delete the 'published on' date field for documents that are saved as draft
- ISAICP-9493: Set a maximum duration of 2 weeks on events on the Portal
- ISAICP-9491: Cannot use the video component in the layout editor of dashboard custom landing pages
- ISAICP-9563: Remove News/Events tabs from 'Explore' section
- ISAICP-8824: [Performance] Avoids rendering variables multiple times (e.g., during emptiness checks). Includes also:
- ISAICP-9499: Apply twig_field_value where possible
- ISAICP-9188: Change the "cancelled user" policy
Accessibility
- ISAICP-9038: Accessibility - Success Criterion 1.4.3 Contrast (Minimum)
- ISAICP-9529: OSS Catalogue accessibility issue. Includes also:
- ISAICP-9567: [Frontend] OSS accessibility issu
Bug fixes
- ISAICP-8943: Message digest gets the wrong publication date for nodes
- ISAICP-9429: Incorrect search functionality when using topics
- ISAICP-9462: Stage file proxy settings gone after executing behat
- ISAICP-9463: Webform assessment submissions are removed during a sanitization process
- ISAICP-9511: The translation button is partially obscured.
- ISAICP-9524: Reporting Statistics per group leads to error
- ISAICP-9534: Wrong char encoding/escaping in digest emails
- ISAICP-9538: Event 'Upcoming month event' is NOT visible in the calendar as expected.
- ISAICP-9551: Event 'Dummy upcoming month event' is NOT visible
- ISAICP-9552: Error with undefined array key '#webform_key'
- ISAICP-9565: Failure in tests about joining as anonymous
- ISAICP-9579: Invalid callback in ProfileForm
- ISAICP-9580: Cannot initialize readonly property
- ISAICP-9584: Group admin and Group statistics export override each other cache
Technical debt
- Adapting code to modern patterns and best practices. Includes:
- ISAICP-9371: Autowire ContainerInjectionInterface classes
- ISAICP-9404: Use PHP attributes for trusted callbacks
- ISAICP-9405: Replace all Block annotations with attributes
- ISAICP-9406: Make all PHPUnit test data providers static
- ISAICP-9408: Add attributes alternative for RdfUriGenerator
- ISAICP-9409: Add attributes alternative for ServiceMock
- ISAICP-9410: Replace all Condition annotations with attributes
- ISAICP-9411: Replace all FieldFormatter annotations with attributes
- ISAICP-9412: Replace all Filter annotations with attributes
- ISAICP-9414: Replace all Constraint annotations with attributes
- ISAICP-9415: Replace all QueueWorker annotations with attributes
- ISAICP-9416: Replace all FieldWidget annotations with attributes
- ISAICP-9417: Replace all FieldType annotations with attributes
- ISAICP-9418: Replace all LanguageNegotiation annotations with attributes
- ISAICP-9419: Replace all ViewsAccess annotations with attributes
- ISAICP-9420: Replace all Action annotations with attributes
- ISAICP-9421: Replace all PageDisplayVariant annotations with attributes
- ISAICP-9423: Convert JoinupLicenceCompatibilityRule annotation into attribute
- ISAICP-9424: Convert ArbitraryFacet annotation into attribute
- ISAICP-9425: Convert SearchApiFieldFilter annotation into attribute
- ISAICP-9426: Replace all ViewsStyle annotations with attributes
- ISAICP-9432: Call to deprecated method loadRevision()
- ISAICP-9481: Evaluate if topic.vocabulary_manager service is still needed
- ISAICP-9490: Unpin drupal/flag
- ISAICP-9545: Limit the number of Behat steps used to edit a node.
- ISAICP-9546: Optimise ContactFormMailTest
- ISAICP-9547: Optimise ProfileOverviewTest
- ISAICP-9555: Optimise GroupContentUpdateUrlAliasTest
- ISAICP-9553: Update Selenium to the latest stable version
- ISAICP-9558: Drush 13 runs with XDebug disabled
- ISAICP-9569: Apply updated core patches for comments
- ISAICP-9581: Behat: sort execution times report
- ISAICP-9590: Wrong mapping in CollectionContext
Security
- Update Drupal to 10.4.5 (SA-CORE-2025-004)
User management
- ISAICP-9450: Delete users that have been inactive for more than 3 years