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: hey-api/openapi-ts
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: main
Choose a base ref
...
head repository: MaxwellAt/openapi-ts
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: main
Choose a head ref
Checking mergeability… Don’t worry, you can still create the pull request.
  • 5 commits
  • 10 files changed
  • 1 contributor

Commits on Aug 4, 2025

  1. feat: add inAllOf flag to SchemaState interface

    Technical explanation:
    - Added optional boolean flag inAllOf to SchemaState interface
    - This flag tracks when a schema is being processed within an allOf composition
    - Purpose: prevents generation of [key: string]: never index signatures for
      empty objects with additionalProperties: false inside allOf contexts
    - The flag is used to avoid overriding inherited properties from other schemas
      in the composition, which would break TypeScript intersection types
    - Shared across all OpenAPI parser versions (2.0.x, 3.0.x, 3.1.x) for consistency
    
    Impact: Core type definition change that enables the allOf additionalProperties fix
    Mxwllas committed Aug 4, 2025
    Configuration menu
    Copy the full SHA
    ae9b099 View commit details
    Browse the repository at this point in the history
  2. fix(parser-2.0.x): prevent [key: string]: never in allOf with additio…

    …nalProperties: false
    
    Modified parseObject to detect empty objects with additionalProperties: false
    inside allOf compositions and skip generating never index signature.
    Updated parseAllOf to propagate inAllOf flag to child schemas while preserving
    \ handling for reusable components.
    Mxwllas committed Aug 4, 2025
    Configuration menu
    Copy the full SHA
    53e56a6 View commit details
    Browse the repository at this point in the history
  3. fix(parser-3.0.x): prevent [key: string]: never in allOf with additio…

    …nalProperties: false
    
    Applies same fix as 2.0.x parser - detects empty objects with additionalProperties: false
    inside allOf compositions and skips never index signature generation.
    Ensures consistent behavior across all OpenAPI parser versions.
    Mxwllas committed Aug 4, 2025
    Configuration menu
    Copy the full SHA
    6b58014 View commit details
    Browse the repository at this point in the history
  4. fix(parser-3.1.x): prevent [key: string]: never in allOf with additio…

    …nalProperties: false
    
    Applies same fix as 2.0.x/3.0.x parsers - detects empty objects with additionalProperties: false
    inside allOf compositions and skips never index signature generation.
    Completes the fix implementation across all three OpenAPI specification parser versions.
    Mxwllas committed Aug 4, 2025
    Configuration menu
    Copy the full SHA
    e90af4f View commit details
    Browse the repository at this point in the history
  5. test(allOf): add comprehensive tests for allOf additionalProperties: …

    …false fix
    
    - Add OpenAPI 2.0 test specification with allOf + additionalProperties: false schema
    - Add 2.0.x test case to validate fix behavior across all parser versions
    - Update snapshots for all parsers showing clean intersection types (Foo & {})
    - Validates that empty objects with additionalProperties: false in allOf no longer generate [key: string]: never signatures
    Mxwllas committed Aug 4, 2025
    Configuration menu
    Copy the full SHA
    89b0f13 View commit details
    Browse the repository at this point in the history
Loading