Skip to content

build(deps): bump schemars from 0.8.22 to 1.2.2 - #59

Open
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/cargo/schemars-1.2.2
Open

build(deps): bump schemars from 0.8.22 to 1.2.2#59
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/cargo/schemars-1.2.2

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Sep 9, 2026

Copy link
Copy Markdown
Contributor

Bumps schemars from 0.8.22 to 1.2.2.

Release notes

Sourced from schemars's releases.

v1.2.2

  • Update to syn 3 in schemars_derive

v1.2.1

Fixed

  • transform attributes are now applied after the schema is otherwise fully constructed. In particular, they're now applied after all other attributes are processed. (GREsau/schemars#505)

v1.2.0

🎅 Merry Christmas! 🎄

Added

Changed

  • Schemas generated for HashMap/BTreeMap with enum keys are now more specific (GREsau/schemars#452)

v1.1.0

Added

  • Public functions that have no side-effects are now marked with #[must_use] so that they report a lint warning when the returned value is unused, as this likely indicates a mistake.

Fixed

v1.0.5

Fixed

v1.0.4

Fixed

v1.0.3

Fixed

  • Fix compile error when a doc comment is set on both a transparent (or newtype) struct and its field (GREsau/schemars#446)
  • Fix json_schema!() macro compatibility when used from pre-2021 rust editions (GREsau/schemars#447)

v1.0.2

Fixed

... (truncated)

Changelog

Sourced from schemars's changelog.

[1.2.2] - 2026-07-27

  • Update to syn 3 in schemars_derive

[1.2.1] - 2026-02-01

Fixed

  • transform attributes are now applied after the schema is otherwise fully constructed. In particular, they're now applied after all other attributes are processed. (GREsau/schemars#505)

[1.2.0] - 2025-12-25 🎄

Added

Changed

  • Schemas generated for HashMap/BTreeMap with enum keys are now more specific (GREsau/schemars#452)

[1.1.0] - 2025-11-05

Added

  • Public functions that have no side-effects are now marked with #[must_use] so that they report a lint warning when the returned value is unused, as this likely indicates a mistake.

Fixed

[1.0.5] - 2025-11-02

Fixed

[1.0.4] - 2025-07-06

Fixed

[1.0.3] - 2025-06-28

Fixed

  • Fix compile error when a doc comment is set on both a transparent (or newtype) struct and its field (GREsau/schemars#446)
  • Fix json_schema!() macro compatibility when used from pre-2021 rust editions (GREsau/schemars#447)

... (truncated)

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 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 [schemars](https://github.com/GREsau/schemars) from 0.8.22 to 1.2.2.
- [Release notes](https://github.com/GREsau/schemars/releases)
- [Changelog](https://github.com/GREsau/schemars/blob/master/CHANGELOG.md)
- [Commits](GREsau/schemars@v0.8.22...v1.2.2)

---
updated-dependencies:
- dependency-name: schemars
  dependency-version: 1.2.2
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added area:build Build, dependencies, tests, and CI dependencies Pull requests that update a dependency file labels Sep 9, 2026
@dependabot
dependabot Bot requested a review from echobt as a code owner September 9, 2026 19:08
@greptile-apps

greptile-apps Bot commented Sep 9, 2026

Copy link
Copy Markdown

Greptile Summary

Summary

  • Updating schemars to 1.2.2 leaves the manual ConversationId schema implementation on APIs that no longer exist, preventing direct workspace consumers from compiling.
  • The generated-contract reference still identifies schemars 0.8.22 instead of the resolved 1.2.2 version.

The compilation failure must be resolved before merging. The documentation mismatch is non-blocking.

Confidence Score: 4/5

Not safe to merge until the manual schema implementation is migrated, because the affected workspace packages do not compile.

A before-and-after compilation check established that the dependency update introduces a reproducible build failure. A separate version comparison also confirmed the documentation mismatch.

Files Needing Attention: src/cortex-protocol/src/conversation_id.rs needs migration to the schemars 1.x API, and docs/reference/app-server.md needs its recorded schemars version updated.

T-Rex T-Rex Logs

What T-Rex did

  • T-Rex produced proofs for posted P1 and P2 findings and linked them to the corresponding review comments.
  • T-Rex documented upgrade validation results, showing pre-upgrade success and post-upgrade compilation failures due to schemars API changes, and recommended migrating ConversationId's JsonSchema to the 1.x API.
  • T-Rex validated the dependency bump schemars from 0.8.22 to 1.2.2 and confirmed the results; no repository changes were made beyond the validation script.

View all artifacts

T-Rex Ran code and verified through T-Rex

Comments Outside Diff (2)

  1. General comment

    P1 Migrate ConversationId JsonSchema implementation before upgrading schemars

    • Bug
      • The root dependency change at Cargo.toml:291 selects schemars 1.2.2, but direct workspace consumers cannot compile because cortex-protocol's ConversationId schema implementation uses schemars 0.8-only APIs.
    • Cause
      • src/cortex-protocol/src/conversation_id.rs:7-8 imports schemars::r#gen::SchemaGenerator and schemars::schema::{InstanceType, Schema, SchemaObject}; in schemars 1.2.2 r#gen is unavailable and schema is private. Its schema_name at line 18 also returns String, while the 1.2 trait requires Cow<'static, str>.
    • Fix
      • Update the manual implementation in src/cortex-protocol/src/conversation_id.rs to schemars 1.x public API and trait signatures, then rerun the targeted consumer check.

    T-Rex Ran code and verified through T-Rex

  2. General comment

    P2 Generated-contract documentation still names the pre-upgrade schemars version

    • Bug
      • docs/reference/app-server.md:33 says the OpenAPI contract is generated with schemars 0.8.22, but the workspace now declares schemars 1.2 at Cargo.toml:291 and the lockfile resolves 1.2.2 at Cargo.lock:5931.
    • Cause
      • The dependency bump from 0.8.22 to 1.2.2 did not update the version stated in the generated-contract documentation.
    • Fix
      • Update docs/reference/app-server.md:33 to identify schemars 1.2.2 (or omit the pinned implementation version if the documentation should not track dependency patch releases).

    T-Rex Ran code and verified through T-Rex

Reviews (1): Last reviewed commit: "build(deps): bump schemars from 0.8.22 t..." | Re-trigger Greptile

Comment thread Cargo.toml
# CLI - MCP
rmcp = { version = "0.13", default-features = false }
schemars = "0.8"
schemars = "1.2"

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Migrate schema implementation

This change selects schemars 1.2, but ConversationId still uses the removed 0.8 r#gen and schema APIs and the former schema_name() signature. The direct workspace consumer build now stops in cortex-protocol, so the CLI, app server, and other dependent packages cannot be built until that implementation is migrated to the schemars 1.x public API.

Artifacts

Evidence from the check

  • Authored script that runs the prescribed three-package Cargo check against the parent of the schemars upgrade, establishing the matching baseline.

Command output from the check

  • Complete output from the prescribed narrow Cargo check at the parent revision, ending successfully with `EXIT_CODE: 0`; the baseline compiles.

Evidence from the check

  • Authored script that runs the prescribed three-package Cargo check in the supplied upgraded workspace.

Command output from the check

  • Complete output from the prescribed narrow Cargo check after the schemars 1.2.2 upgrade, ending with `EXIT_CODE: 101` and the incompatible `ConversationId` schemars errors; the upgrade blocks compilation.

Evidence from the check

  • The authored Bash validation script reads the parent and current manifests, lockfile, and generated-contract documentation without changing repository source files; it provides the repeatable version comparison.

Command output from the check

  • The executed parent-revision comparison shows dependency constraint 0.8 and documented version 0.8.22, confirming the baseline documentation matched the prior dependency family.

Command output from the check

  • The executed validation script shows the current dependency constraint is 1.2, lockfile resolution is 1.2.2, and documentation remains 0.8.22; the takeaway is that the supplied finding is confirmed.

View artifacts

T-Rex Ran code and verified through T-Rex

Comment thread Cargo.toml
# CLI - MCP
rmcp = { version = "0.13", default-features = false }
schemars = "0.8"
schemars = "1.2"

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Update contract documentation

The generated-contract reference still says its OpenAPI contract uses schemars 0.8.22, while this change resolves schemars 1.2.2. This is a non-blocking documentation mismatch that can mislead maintainers about the generator used for the published contract.

Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

Artifacts

Evidence from the check

  • Authored script that runs the prescribed three-package Cargo check against the parent of the schemars upgrade, establishing the matching baseline.

Command output from the check

  • Complete output from the prescribed narrow Cargo check at the parent revision, ending successfully with `EXIT_CODE: 0`; the baseline compiles.

Evidence from the check

  • Authored script that runs the prescribed three-package Cargo check in the supplied upgraded workspace.

Command output from the check

  • Complete output from the prescribed narrow Cargo check after the schemars 1.2.2 upgrade, ending with `EXIT_CODE: 101` and the incompatible `ConversationId` schemars errors; the upgrade blocks compilation.

Evidence from the check

  • The authored Bash validation script reads the parent and current manifests, lockfile, and generated-contract documentation without changing repository source files; it provides the repeatable version comparison.

Command output from the check

  • The executed parent-revision comparison shows dependency constraint 0.8 and documented version 0.8.22, confirming the baseline documentation matched the prior dependency family.

Command output from the check

  • The executed validation script shows the current dependency constraint is 1.2, lockfile resolution is 1.2.2, and documentation remains 0.8.22; the takeaway is that the supplied finding is confirmed.

View artifacts

T-Rex Ran code and verified through T-Rex

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

Labels

area:build Build, dependencies, tests, and CI dependencies Pull requests that update a dependency file

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants