Skip to main content

Joinup 2.10.0 Switch to the latest release

Published on: 13/03/2026

New features

  • ISAICP-10351: Validation of publiccode.yml:
    • ISAICP-10304: [analysis] Validation of publiccode.yml
    • ISAICP-10318: Add publiccode-parser-php service
    • ISAICP-10319: Add Validation Form (optional)
    • ISAICP-10320: Add Validation Status Tracking
    • ISAICP-10321: Queue-Based Validation for Existing Solutions
    • ISAICP-10325: An issue occurred during creating the translation job
    • ISAICP-10326: Create 'OSS validator' role
    • ISAICP-10330: Integrate Validation into OSS Sync Process
    • ISAICP-10331: Update README.md
    • ISAICP-10393: Add modal displaying oss_validation_errors details
    • ISAICP-10439: Improve display of publiccode
    • ISAICP-10448: Merge OSS validation status and modal link of publiccode.yml errors
    • ISAICP-10473: OSS solutions without publiccode.yml
    • ISAICP-10474: Review validation errors
    • ISAICP-10496: Update publiccode-parser-php
    • ISAICP-10522: Reintroduce logos and screenshots for publiccode tests
    • ISAICP-10645: publiccode.yml Validation Alternatives
    • ISAICP-10646: Update EPIC-10351 with the latest code
    • ISAICP-10889: https://github.com/italia/publiccode-validator-api
    • ISAICP-10938: Integrate external publiccode.yml validation API into PublicCodeValidator
    • ISAICP-10946: Update endpoint URL
    • ISAICP-10950: Drop publiccode_yml.schema.yml
    • ISAICP-10952: external-checks param
    • ISAICP-10953: Validation errors
    • ISAICP-10957: Remove workarounds handling invalid publiccode.yml
    • ISAICP-11005: Merge latest code

Improvements

  • ISAICP-10596: Re-order the entries under the Solution Classification filter
  • ISAICP-10816: Update API (post) request examples
  • ISAICP-10818: Extend usage of rabbit_hole
  • ISAICP-10828: Switch to a stable version of drupal/flag
  • ISAICP-10877: Countries list enhancement in concerned public services of a Binding requirement
  • ISAICP-10905: Allow simple users to delete their own assessment reports
  • ISAICP-10936: Add European Union as a country option for Solution owners contact details
  • ISAICP-10944: Multiple solutions with the same name
  • ISAICP-10999: Update the label for the German catalogue
  • ISAICP-10977: Increase the upload file size for Solution distribution to 64MB
  • ISAICP-10976: Delete assets of deleted reports
  • ISAICP-10966: Select an interoperability solution option should not show archived solutions - API
  • ISAICP-10951: Select an interoperabilty solution option should not show archived solutions

Bug fixes

  • ISAICP-10833: 'Apply' button position
  • ISAICP-10835: Handle another type of exceptions in API
  • ISAICP-10838: EIF Perspective page
  • ISAICP-10852: Assessments sent from API do not appear in advanced search
  • ISAICP-10876: Assessment report needs correction
  • ISAICP-10885: Subscribers report
  • ISAICP-10886: Error: Call a member function isNew() on null
  • ISAICP-10969: QA and adopt https://www.drupal.org/i/3576074
  • ISAICP-10964: The Explore section is polluted by migrated solutions
  • ISAICP-10956: Handle exception for oauth/token
  • ISAICP-10939: Intermittent phpunit failures from AssessmentReportResourceTest::testValidPostDataAndStatus

Security, technical debt

  • ISAICP-10716: Theme Negotiation by Rules - Moderately critical - Cross-site request forgery - SA-CONTRIB-2026-012
  • ISAICP-10743: PHPUnit assertions inside Behat are not allowed
  • ISAICP-10745: PHPUnit supports attributes
  • ISAICP-10797: Refactor JoinupOssCatalogueImagecacheWarmerTest
  • ISAICP-10843: Finish tests in https://www.drupal.org/i/3303889
  • ISAICP-10943: Delete or update collection_content view
  • ISAICP-10947: Unnecessary hook implementations
  • ISAICP-11014: Replace references of old URLs from Gitlab