Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: jsonrainbow/json-schema
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 6.4.1
Choose a base ref
...
head repository: jsonrainbow/json-schema
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 6.5.1
Choose a head ref
  • 14 commits
  • 81 files changed
  • 5 contributors

Commits on Apr 11, 2025

  1. Fix objects are non unique despite key order (#819)

    As pointed out by the [bowtie
    report](https://bowtie.report/#/dialects/draft4?language=php) there
    where some issues when validating the uniqueness of values espec. when
    the order of the keys was different.
    DannyvdSluijs authored Apr 11, 2025
    Configuration menu
    Copy the full SHA
    0f69f0e View commit details
    Browse the repository at this point in the history

Commits on May 5, 2025

  1. Update UPGRADE-6.0.md (#823)

    Add missing breaking change to upgrade guide
    
    Fixes #822
    
    ---------
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    bbrala and Copilot authored May 5, 2025
    Configuration menu
    Copy the full SHA
    708a160 View commit details
    Browse the repository at this point in the history

Commits on May 6, 2025

  1. Update constraint class to PHP 7.2 language level (#824)

    This brings the `Constraint` class to PHP 7.2 language level and does
    some cleanup along the way.
    DannyvdSluijs authored May 6, 2025
    Configuration menu
    Copy the full SHA
    13c5e8d View commit details
    Browse the repository at this point in the history

Commits on May 7, 2025

  1. ci: add 32-bits ci workflow (#825)

    This pull request introduces a new GitHub Actions workflow for
    continuous integration on a 32-bit system. The workflow is configured to
    run tests using PHP 8.4 and includes steps for environment setup and
    test execution.
    
    ### New Continuous Integration Workflow:
    
    *
    [`.github/workflows/continuous-integration-32-bit.yml`](diffhunk://#diff-913f89970936b1231274367aff0161dfd9c5ca768783bdf9d1e1961b59aad86eR1-R38):
    Added a new workflow named "Continuous Integration" that triggers on
    `push` and `pull_request` events targeting the `master` branch. It runs
    on `ubuntu-latest` using a 32-bit container
    (`shivammathur/node:latest-i386`) and sets up PHP 8.4 with specific
    extensions, tools, and configuration before executing tests via
    `composer test`.
    
    Fixes #818
    DannyvdSluijs authored May 7, 2025
    Configuration menu
    Copy the full SHA
    95e5d61 View commit details
    Browse the repository at this point in the history
  2. refactor: update BaseConstraint.php to PHP 7.2 language level (#826)

    This pull request refactors the `BaseConstraint` class in the
    `JsonSchema` package to improve code readability, enforce immutability,
    and align with modern PHP practices. The changes include replacing
    anonymous functions with static closures, updating type casting, and
    removing outdated comments.
    
    ### Code modernization and immutability:
    
    * Replaced anonymous functions with `static` closures in methods like
    `addError`, `addErrors`, and `convertJsonPointerIntoPropertyPath` to
    enforce immutability and improve performance.
    [[1]](diffhunk://#diff-05cd63f6b003f185a215e10402525e33d94466ec4d83a685c5a6ccd1befcf921L53-R48)
    [[2]](diffhunk://#diff-05cd63f6b003f185a215e10402525e33d94466ec4d83a685c5a6ccd1befcf921L81-R75)
    [[3]](diffhunk://#diff-05cd63f6b003f185a215e10402525e33d94466ec4d83a685c5a6ccd1befcf921L167-R162)
    * Updated type casting for better readability and adherence to modern
    PHP conventions, e.g., `(string)` instead of `strval`.
    
    ### Code readability and cleanup:
    
    * Removed outdated docblock comments and unnecessary annotations, such
    as the `@return` tag in `convertJsonPointerIntoPropertyPath`.
    * Replaced `\JSON_ERROR_NONE` with the `JSON_ERROR_NONE` constant for
    consistency with the `use` statement.
    
    ### Other improvements:
    
    * Adjusted the `json_decode` call to explicitly set the `associative`
    parameter to `false` for clarity.
    DannyvdSluijs committed May 7, 2025
    Configuration menu
    Copy the full SHA
    b209eb8 View commit details
    Browse the repository at this point in the history

Commits on Jun 3, 2025

  1. Fix #827 (#828)

    This PR will:
    - Scan schemas that are being added for `id` properties and register
    them if valid schemas
    - Avoid altering the `id` for sibling `ref` properties
    - Don't register schema or expand refs when found in enum or const
    
    This will fix #827
    DannyvdSluijs authored Jun 3, 2025
    Configuration menu
    Copy the full SHA
    ac58d3f View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    ce1fd2d View commit details
    Browse the repository at this point in the history

Commits on Jun 10, 2025

  1. refactor: Update test case to current (PHP) standards (#831)

    This PR improves the test cases classes and addresses some small fixes
    of issues which exposed themselves.
    DannyvdSluijs authored Jun 10, 2025
    Configuration menu
    Copy the full SHA
    0b25270 View commit details
    Browse the repository at this point in the history

Commits on Jun 24, 2025

  1. Upgrade test suite to use generators (#834)

    This PR will:
    - Update all data providers to return `Generator` objects.
    - Remove file headers with a license reference in favour of the
    `LICENSE.md` at the root
    - Remove class docbocks which where defining unused attributes
    - Add `declare(strict_types=1);` to all test files
    - Replace class strings with their resp. `::class` constant.
    - More updates bringing test files to PHP 7.2 level using rector
    DannyvdSluijs authored Jun 24, 2025
    Configuration menu
    Copy the full SHA
    4118460 View commit details
    Browse the repository at this point in the history
  2. feat: update to latest json schema test suite (#821)

    This pull request updates the `json-schema/json-schema-test-suite`
    dependency to a newer version and introduces a new test suite for
    validating JSON schemas. The goal here is to have a quicker turnaround
    then just the bowtie reports. The most important changes are grouped
    below:
    
    ### Dependency Updates:
    * Updated `json-schema/json-schema-test-suite` dependency in
    `composer.json` from version `1.2.0` to `^23.2` and updated the package
    version and reference in the `repositories` section to match the new
    version.
    [[1]](diffhunk://#diff-d2ab9925cad7eac58e0ff4cc0d251a937ecf49e4b6bf57f8b95aab76648a9d34L36-R36)
    [[2]](diffhunk://#diff-d2ab9925cad7eac58e0ff4cc0d251a937ecf49e4b6bf57f8b95aab76648a9d34L62-R66)
    
    ### New Test Suite:
    * Added a new `JsonSchemaTestSuite` class in
    `tests/JsonSchemaTestSuite.php` to run validation tests using the
    `json-schema/json-schema-test-suite`. This includes:
      - A `testIt` method to validate test cases and assert results.
    - A `casesDataProvider` method to dynamically load test cases from the
    `json-schema-test-suite` repository, skipping certain drafts.
    - A `loadRemotesIntoStorage` helper method to load remote schemas into
    the schema storage.
    DannyvdSluijs authored Jun 24, 2025
    Configuration menu
    Copy the full SHA
    3763af1 View commit details
    Browse the repository at this point in the history

Commits on Aug 29, 2025

  1. Fix PHP 8.5 $http_response_header deprecation (#841)

    Replaces #840 (due to blocked write access on fork)
    
    ---------
    
    Co-authored-by: Andy Postnikov <apostnikov@gmail.com>
    DannyvdSluijs and andypost authored Aug 29, 2025
    Configuration menu
    Copy the full SHA
    b1562e4 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    3916d66 View commit details
    Browse the repository at this point in the history
  3. ci: Add PHP 8.5 to pipeline, ignoring dependencies and as experimental (

    #842)
    
    This PR will 
    - add PHP 8.5 to the continuous integration pipeline, ignoring platform
    dependencies
    - resolve deprecations for:
      -  Reflection*::setAccessible
      - curl_close
      - $http_response_header
    
    Fixes #798
    DannyvdSluijs authored Aug 29, 2025
    Configuration menu
    Copy the full SHA
    93e0ed7 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    b5ab21e View commit details
    Browse the repository at this point in the history
Loading