Skip to content

Sync with upstream open_api_spex (through v3.22.3)#4

Merged
luisgabrielroldan merged 73 commits into
masterfrom
sync-upstream-2026-05-21
May 21, 2026
Merged

Sync with upstream open_api_spex (through v3.22.3)#4
luisgabrielroldan merged 73 commits into
masterfrom
sync-upstream-2026-05-21

Conversation

@luisgabrielroldan
Copy link
Copy Markdown
Member

Summary

  • Merges 72 commits from the official open-api-spex/open_api_spex upstream, bringing this private fork up to v3.22.3
  • Resolved conflict in .github/workflows/elixir.yml: kept our SHA-pinned action versions (actions/checkout@de0f..., actions/cache@cdf6c1...) and accepted upstream OTP/Elixir version bumps in the test_examples job (24/1.13 → 26/1.16)

Notable upstream changes

  • v3.22.3: Relax decimal requirement
  • v3.22.2: Fix type warnings for Elixir 1.19
  • v3.22.1/v3.22.0: Elixir 1.19 + OTP-28 support fixes
  • v3.21.x: Various bug fixes (assert_operation_response/2, OTP-28, dialyzer)
  • v3.20.x–v3.18.x: Schema example resolution, reference improvements, plug/phoenix updates

Test plan

  • CI passes on merge
  • No regressions in private customizations (GHA action pinning, PR template)

Note: Changes on this private fork are intentionally not pushed to the official upstream.

thbar and others added 30 commits July 25, 2023 18:32
…open-api-spex#550)

* Fix deprecation warning on Elixir 1.15

* Stop testing against Elixir 1.10

* Require Elixir 1.11+ now

* Update CHANGELOG.md
…-api-spex#552)

Co-authored-by: Gianluca Nitti <gianluca.nitti@voismart.it>
…#545)

* feat: add assert_operation_response, assert_raw_schema

* make assert_operation_response pipeable

* fix return type

* automagically infer operationId in assertion

* don't need to resolve a %Schema{}

* ignore 204s

* use OpenApiSpex.OpenApi.json_encoder()

* rename test to match fn

* reorganize json_encoder check per feedback

* update json_encoder message for :jason or :poison

* use a regex to match json content types in validate_operation_response

* 💅 feedback - types, error message, module attrib for regex

* add doc for content_type_from_header

* remove no_return from spec
Co-authored-by: Alberto Sartori <alberto.sartori@hpe.com>
* Exclude empty paths from spec
* fix: assert_operation_response header lookup
…x#592)

* Add failing test

* Cast result of AllOf cast into a struct

* Shorter module name
…-spex#586)

* relax dependency on ymlr, and fix some tests

* test with more elixir versions
* Update Elixir version test matrix

* Fix map key order dependent test
…pex#593)

* Allow script and style nonces

* Allow nonces on the SwaggerUIOAuth2Redirect plug as well
…#606)

* fix: ensure operation_id is always set on conn.private when an operation is known
zorbash and others added 25 commits October 2, 2024 15:19
* Fix cast x-validate when decoded schema

* fix credo complain when using apply/3

---------

Co-authored-by: Giorgio Torres <giorgio.torres@hpe.com>
* Add mix spec.yaml tasks in example applications

* Update example application dependencies
* Fix Elixir 1.18 compilation warnings

* Test against 1.18
* Refactor: Update default parsers and schema pattern definitions

This commit introduces changes to `OpenApiSpex.CastParameters` and `OpenApiSpexTest.Schemas`.

- Moved `@default_parsers` to a private function `default_parsers/0` in `OpenApiSpex.CastParameters` to ensure it's evaluated at runtime, preventing potential compilation issues with `OpenApi.json_encoder()`.
- Updated the `pattern` definition in `OpenApiSpexTest.Schemas` to use a string literal instead of a regex literal for consistency and to avoid potential issues with regex compilation.

Fix: Adjust string pattern test assertion

Following the refactoring, a test in `OpenApiSpex.CastStringTest` failed due to a change in how regex patterns were handled. This fix corrects the assertion for string pattern matching to compare the `source` of the regex instead of the regex struct directly, resolving the test failure.

* Fix formatting

---------

Co-authored-by: Dimitris Zorbas <dimitrisplusplus@gmail.com>
* Support references in assert_operation_response/2

* fixup! Support references in assert_operation_response/2
A new release will be out soon, this will allow users to migrate if desired.
The new version is compatible with OpenAPISpex.
@luisgabrielroldan luisgabrielroldan self-assigned this May 21, 2026
@luisgabrielroldan luisgabrielroldan merged commit 1047c32 into master May 21, 2026
9 checks passed
@luisgabrielroldan luisgabrielroldan deleted the sync-upstream-2026-05-21 branch May 21, 2026 18:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.