Skip to content

Conversation

@dependabot
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Feb 3, 2026

Bumps zoi from 0.16.1 to 0.17.0.

Release notes

Sourced from zoi's releases.

v0.17.0

What's Changed

  • add unrecognized_keys for Zoi.map/2, Zoi.object/2, Zoi.keyword/2, and Zoi.struct/3 by @​phcurado in phcurado/zoi#146 and phcurado/zoi#147 this new option supports:
    • :strip (default) - removes unrecognized keys from the output
    • :error - returns an error when unrecognized keys are present
    • :preserve - keeps unrecognized keys in the output without validation (not available for structs)
    • {:preserve, {key_schema, value_schema}} - preserves unrecognized keys and validates them against the given schemas (not available for structs)
  • Add deprecated option fot all types by @​phcurado in phcurado/zoi#146 and phcurado/zoi#148
  • Zoi.extend/3 now uses options from schema1 instead of merging options from both schemas by @​phcurado in phcurado/zoi#148
  • improve deprecated field stacktrace by @​phcurado in phcurado/zoi#149
  • add deprecation feature in json-schema by @​phcurado in phcurado/zoi#150
  • Improved Zoi.Describe.Encoder output format:
    • Enum now uses | separator instead of "one of"
    • Union now uses | separator instead of "or"
    • Tuple now uses {X, Y} format instead of "tuple of X, Y values"

Full Changelog: phcurado/zoi@v0.16.1...v0.17.0

Changelog

Sourced from zoi's changelog.

0.17.0 - 2026-01-30

Added

  • unrecognized_keys option for Zoi.map/2, Zoi.object/2, Zoi.keyword/2, and Zoi.struct/3 to control how unrecognized keys are handled:
    • :strip (default) - removes unrecognized keys from the output
    • :error - returns an error when unrecognized keys are present
    • :preserve - keeps unrecognized keys in the output without validation (not available for structs)
    • {:preserve, {key_schema, value_schema}} - preserves unrecognized keys and validates them against the given schemas (not available for structs)
  • deprecated option for all schema types to emit deprecation warnings during parsing. Zoi.describe/1 will also include the deprecation message in the generated documentation
  • Zoi.to_json_schema/1 now emits deprecated: true when a schema is marked as deprecated
  • Multi-line description support in Zoi.describe/1 with proper indentation

Changed

  • strict option is now deprecated in favor of unrecognized_keys. Use unrecognized_keys: :error instead of strict: true
  • Zoi.extend/3 now uses options from schema1 instead of merging options from both schemas
  • Improved Zoi.Describe.Encoder output format:
    • Enum now uses | separator instead of "one of"
    • Union now uses | separator instead of "or"
    • Tuple now uses {X, Y} format instead of "tuple of X, Y values"
Commits

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [zoi](https://github.com/phcurado/zoi) from 0.16.1 to 0.17.0.
- [Release notes](https://github.com/phcurado/zoi/releases)
- [Changelog](https://github.com/phcurado/zoi/blob/main/CHANGELOG.md)
- [Commits](phcurado/zoi@v0.16.1...v0.17.0)

---
updated-dependencies:
- dependency-name: zoi
  dependency-version: 0.17.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
@dependabot @github
Copy link
Contributor Author

dependabot bot commented on behalf of github Feb 3, 2026

Labels

The following labels could not be found: dependencies, elixir. Please create them before Dependabot can add them to a pull request.

Please fix the above issues or remove invalid values from dependabot.yml.

@mikehostetler mikehostetler merged commit 737ffa2 into main Feb 3, 2026
6 checks passed
@mikehostetler mikehostetler deleted the dependabot/hex/zoi-0.17.0 branch February 3, 2026 00:36
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.

1 participant