Skip to content

chore: release - #401

Merged
leongdl merged 1 commit into
mainfrom
release-plz-2026-09-16T00-21-36Z
Sep 18, 2026
Merged

leongdl merged 1 commit into
mainfrom
release-plz-2026-09-16T00-21-36Z

Conversation

@github-actions

@github-actions github-actions Bot commented Sep 16, 2026

Copy link
Copy Markdown
Contributor

🤖 New release

  • openjd-expr: 0.8.0 -> 0.9.0 (⚠ API breaking changes)
  • openjd-model: 0.8.0 -> 0.9.0 (⚠ API breaking changes)
  • openjd-sessions: 0.6.0 -> 0.7.0 (⚠ API breaking changes)
  • openjd-cli: 0.1.18 -> 0.2.0
  • openjd-snapshots: 0.1.10 -> 0.2.0 (✓ API compatible changes)

openjd-expr breaking changes

--- failure method_parameter_count_changed: pub method parameter count changed ---

Description:
A publicly-visible method now takes a different number of parameters, not counting the receiver (self) parameter.
        ref: https://doc.rust-lang.org/cargo/reference/semver.html#fn-change-arity
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/method_parameter_count_changed.ron

Failed in:
  openjd_expr::format_string::FormatString::validate_expressions takes 3 parameters in /tmp/.tmptlkbFo/openjd-expr/src/format_string.rs:249, but now takes 2 parameters in /tmp/.tmpDhMxPX/openjd-rs/crates/openjd-expr/src/format_string.rs:280
  openjd_expr::FormatString::validate_expressions takes 3 parameters in /tmp/.tmptlkbFo/openjd-expr/src/format_string.rs:249, but now takes 2 parameters in /tmp/.tmpDhMxPX/openjd-rs/crates/openjd-expr/src/format_string.rs:280

openjd-model breaking changes

--- failure constructible_struct_adds_field: struct exhaustively constructible through public API adds field ---

Description:
A pub struct that could be exhaustively constructed with a literal using only public API has a new pub field, breaking existing exhaustive literals.
        ref: https://doc.rust-lang.org/reference/expressions/struct-expr.html
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/constructible_struct_adds_field.ron

Failed in:
  field CallerLimits.max_resolved_arg_len in /tmp/.tmpDhMxPX/openjd-rs/crates/openjd-model/src/types.rs:451
  field CallerLimits.max_resolved_data_len in /tmp/.tmpDhMxPX/openjd-rs/crates/openjd-model/src/types.rs:456
  field CallerLimits.max_eval_memory_bytes in /tmp/.tmpDhMxPX/openjd-rs/crates/openjd-model/src/types.rs:465
  field CallerLimits.max_eval_operations in /tmp/.tmpDhMxPX/openjd-rs/crates/openjd-model/src/types.rs:470
  field CallerLimits.max_resolved_arg_len in /tmp/.tmpDhMxPX/openjd-rs/crates/openjd-model/src/types.rs:451
  field CallerLimits.max_resolved_data_len in /tmp/.tmpDhMxPX/openjd-rs/crates/openjd-model/src/types.rs:456
  field CallerLimits.max_eval_memory_bytes in /tmp/.tmpDhMxPX/openjd-rs/crates/openjd-model/src/types.rs:465
  field CallerLimits.max_eval_operations in /tmp/.tmpDhMxPX/openjd-rs/crates/openjd-model/src/types.rs:470

--- failure function_parameter_count_changed: pub fn parameter count changed ---

Description:
A publicly-visible function now takes a different number of parameters.
        ref: https://doc.rust-lang.org/cargo/reference/semver.html#fn-change-arity
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/function_parameter_count_changed.ron

Failed in:
  openjd_model::job::create_job::evaluate_let_bindings now takes 6 parameters instead of 4, in /tmp/.tmpDhMxPX/openjd-rs/crates/openjd-model/src/job/create_job/instantiate.rs:732
  openjd_model::create_job::evaluate_let_bindings now takes 6 parameters instead of 4, in /tmp/.tmpDhMxPX/openjd-rs/crates/openjd-model/src/job/create_job/instantiate.rs:732
  openjd_model::evaluate_let_bindings now takes 6 parameters instead of 4, in /tmp/.tmpDhMxPX/openjd-rs/crates/openjd-model/src/job/create_job/instantiate.rs:732
  openjd_model::template::parse::decode_environment_template now takes 3 parameters instead of 2, in /tmp/.tmpDhMxPX/openjd-rs/crates/openjd-model/src/template/parse.rs:362
  openjd_model::decode_environment_template now takes 3 parameters instead of 2, in /tmp/.tmpDhMxPX/openjd-rs/crates/openjd-model/src/template/parse.rs:362

openjd-sessions breaking changes

--- failure constructible_struct_adds_field: struct exhaustively constructible through public API adds field ---

Description:
A pub struct that could be exhaustively constructed with a literal using only public API has a new pub field, breaking existing exhaustive literals.
        ref: https://doc.rust-lang.org/reference/expressions/struct-expr.html
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.50.0/src/lints/constructible_struct_adds_field.ron

Failed in:
  field SessionConfig.limits in /tmp/.tmpDhMxPX/openjd-rs/crates/openjd-sessions/src/session.rs:162
  field SessionConfig.limits in /tmp/.tmpDhMxPX/openjd-rs/crates/openjd-sessions/src/session.rs:162
Changelog

openjd-expr

0.9.0 - 2026-09-18

Features

  • [breaking] Opt-in resolved-value caps and evaluation-budget plumbing (#399)

Miscellaneous

  • [breaking] Raise MSRV to 1.96.0; dep sweep (ruff 0.16, rusqlite 0.40) (#403)

openjd-model

0.9.0 - 2026-09-18

Features

  • Enforce resolved-value checks on carried-forward fields in create_job (#404)

  • [breaking] Opt-in resolved-value caps and evaluation-budget plumbing (#399)

Miscellaneous

  • [breaking] Raise MSRV to 1.96.0; dep sweep (ruff 0.16, rusqlite 0.40) (#403)

openjd-sessions

0.7.0 - 2026-09-18

Features

  • [breaking] Opt-in resolved-value caps and evaluation-budget plumbing (#399)

Miscellaneous

  • [breaking] Raise MSRV to 1.96.0; dep sweep (ruff 0.16, rusqlite 0.40) (#403)

openjd-cli

0.2.0 - 2026-09-18

Features

  • [breaking] Opt-in resolved-value caps and evaluation-budget plumbing (#399)

Miscellaneous

  • [breaking] Raise MSRV to 1.96.0; dep sweep (ruff 0.16, rusqlite 0.40) (#403)

openjd-snapshots

0.2.0 - 2026-09-18

Miscellaneous

  • [breaking] Raise MSRV to 1.96.0; dep sweep (ruff 0.16, rusqlite 0.40) (#403)


This PR was generated with release-plz.

@github-actions
github-actions Bot requested a review from a team as a code owner September 16, 2026 00:21
@github-actions github-actions Bot changed the title chore(openjd-snapshots): release v0.1.11 chore: release Sep 16, 2026
@github-actions
github-actions Bot force-pushed the release-plz-2026-09-16T00-21-36Z branch 2 times, most recently from 1dd46ac to ad04306 Compare September 17, 2026 17:50
@github-actions
github-actions Bot force-pushed the release-plz-2026-09-16T00-21-36Z branch from ad04306 to 2f34592 Compare September 18, 2026 00:03
@leongdl
leongdl merged commit 70cd40b into main Sep 18, 2026
22 checks passed
@leongdl
leongdl deleted the release-plz-2026-09-16T00-21-36Z branch September 18, 2026 17:13
leongdl added a commit to OpenJobDescription/openjd-model-for-python that referenced this pull request Sep 18, 2026
openjd-rs released on 2026-09-18: openjd-expr 0.9.0, openjd-model 0.9.0,
openjd-sessions 0.7.0 (OpenJobDescription/openjd-rs#401). The release is
one feature plumbed through all three crates -- opt-in resolved-value caps
and evaluation budgets (#399) -- plus a job-creation re-check on
carried-forward fields (#404) and an MSRV/dependency sweep (#403).

Four breaking signature changes reach this package's bindings:
FormatString::validate_expressions now takes a FormatStringOptions,
decode_environment_template takes CallerLimits, evaluate_let_bindings takes
the two budgets, and CallerLimits / SessionConfig gained fields.

CallerLimits grows from six fields to ten, and the four new ones are
threaded to every entry point upstream threads them to: the environment
template decoders, evaluate_let_bindings, and Session, which is the run-time
enforcement boundary for the resolved-value caps.

Separately, max_template_size was inert in this package. It is checked only
inside document_string_to_object, and the parse_string helper passed a
default CallerLimits, so a caller asking for a byte ceiling on
decode_job_template_str got none. parse_string now takes the caller's own
limits. Found while documenting the field.

Cargo.lock moved the three crates plus the #403 sweep; THIRD-PARTY-LICENSES
regenerated to match. Verified: 6139 passed / 24 skipped / 3 xfailed,
coverage 94.16%; ruff, black, mypy, cargo fmt and clippy clean. Six mutants
covering each piece of new plumbing were each caught by the new tests.

Signed-off-by: David Leong <116610336+leongdl@users.noreply.github.com>
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.

3 participants