Skip to content

feat(docker-api): bump docker api schema version to v1.54#258

Merged
Fahl-Design merged 5 commits intomainfrom
feat/bump-api-version-to-v1_54
Apr 28, 2026
Merged

feat(docker-api): bump docker api schema version to v1.54#258
Fahl-Design merged 5 commits intomainfrom
feat/bump-api-version-to-v1_54

Conversation

@Fahl-Design
Copy link
Copy Markdown
Member

@Fahl-Design Fahl-Design commented Apr 28, 2026

Summary by CodeRabbit

Release Notes

  • Chores
    • Updated development dependencies and code generation tooling to latest versions
    • Enhanced build script configuration with improved diagnostic output for development environments

Hand-fix v1.54-patched.yaml so generated client survives real
Docker API responses. Same class of fixes the v1.51 spec carries.

- Convert nullable: true to OpenAPI 3.1 `type: [orig, 'null']`
  union. jane open-api-3-1 ignores nullable: true; only honors
  the type-array form.
- Walk components.schemas and add 'null' to every non-required
  scalar/array property. Skip type:object with $ref
  additionalProperties (e.g. NetworkSettings.Networks) — making
  those nullable triggers a jane codegen bug where
  isOnlyNumericKeys short-circuits the denormalize loop.
- Mark HostConfig and PortMap nullable at schema level.
- Rename `format: date-time` to `format: dateTime`. jane parses
  date-time as `Y-m-d\TH:i:sP` which fails on Docker's
  nano-precision timestamps; the typo lets the field stay as a
  plain string (matches v1.51 hand-fix).

`bin/docker-api docker:list -vv` now succeeds end-to-end against
a live socket. composer test 7/7 green.
Codify the v1.54 spec hand-fixes so future Docker API bumps don't
have to rediscover them. Also keeps patch logic out of ad-hoc
shell snippets.

- spec/patch.py: idempotent ruamel.yaml-based patcher. Renames
  `format: date-time` → `dateTime`, converts `nullable: true` to
  OpenAPI 3.1 type-arrays, walks schemas for non-required
  scalar/array/safe-object props, and marks HostConfig + PortMap
  schema-level nullable. Skips object+$ref-additionalProperties
  to avoid jane open-api-3-1 codegen bug.
- spec/UPDATE.md: insert post-conversion patch step plus a
  "known traps" section covering date-time, nullable, and the
  jane object-map codegen bug.
@Fahl-Design Fahl-Design self-assigned this Apr 28, 2026
@Fahl-Design Fahl-Design added the enhancement New feature or request label Apr 28, 2026
@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Apr 28, 2026

Warning

Rate limit exceeded

@Fahl-Design has exceeded the limit for the number of commits that can be reviewed per hour. Please wait 36 minutes and 39 seconds before requesting another review.

To keep reviews running without waiting, you can enable usage-based add-on for your organization. This allows additional reviews beyond the hourly cap. Account admins can enable it under billing.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 04e1ba02-3672-4c67-a5fa-2b3bb53909d9

📥 Commits

Reviewing files that changed from the base of the PR and between 55dd330 and 8205f26.

📒 Files selected for processing (1)
  • .php-version
📝 Walkthrough

Walkthrough

The pull request updates the OpenAPI generator configuration to target Docker OpenAPI spec version v1.54 and adds PHP OpenAPI 3.1 support dependencies to the project while enhancing the code generation script with increased verbosity logging.

Changes

Cohort / File(s) Summary
Build Configuration
.jane-openapi
Updated target Docker OpenAPI spec version from v1.51 to v1.54, changing the input schema file path used for code generation.
Dependency and Script Updates
composer.json
Added jane-php/open-api-3-1 and phpstan/extension-installer to require-dev dependencies; enhanced the generate script with -vvv flag for verbose output during code generation.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Poem

🐰 We hop to version fifty-four so fine,
With OpenAPI schemas that now align,
Jane gets her extensions, tools to explore,
Verbosity blooms with -vvv galore! ✨

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title directly reflects the main change: bumping the Docker API schema version from v1.51 to v1.54 in the .jane-openapi configuration file.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat/bump-api-version-to-v1_54

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@Fahl-Design Fahl-Design merged commit 2be9f38 into main Apr 28, 2026
6 of 7 checks passed
@Fahl-Design Fahl-Design deleted the feat/bump-api-version-to-v1_54 branch April 28, 2026 19:00
@webproject-bot
Copy link
Copy Markdown

🎉 This PR is included in version 1.4.0 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request released

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant