Thanks to visit codestin.com
Credit goes to github.com

Skip to content

[codex] Vendor CI workflows into this repository#212

Merged
joshka merged 1 commit into
mainfrom
joshka/vendor-ci-workflows
Apr 2, 2026
Merged

[codex] Vendor CI workflows into this repository#212
joshka merged 1 commit into
mainfrom
joshka/vendor-ci-workflows

Conversation

@joshka
Copy link
Copy Markdown
Member

@joshka joshka commented Apr 1, 2026

Summary

Move the main CI workflows into this repository instead of reusing joshka/github-workflows.

This inlines the check and test jobs so the CI behavior is defined locally and follows this repo's intended toolchain split:

  • format runs on nightly with rustfmt installed explicitly
  • clippy, coverage, minimal-versions, and README checks run on stable
  • docs run on nightly
  • MSRV remains a dedicated Rust 1.88.0 check

The minimal-versions job installs cargo-minimal-versions and cargo-hack via taiki-e/install-action and runs cargo minimal-versions check --direct --lib.

The README job no longer uses the Rust cache. It installs cargo-rdme with cargo-binstall and checks the generated README content directly.

Regenerated READMEs were also committed where the new in-repo check correctly detected drift:

  • tui-scrollbar/README.md
  • tui-scrollview/README.md

Validation

  • Parsed workflow YAML locally with Ruby YAML.load_file
  • Ran cargo +nightly fmt --all -- --check locally
  • Ran cargo-rdme --check locally and regenerated the out-of-date READMEs

Notes

This remains a draft until the updated GitHub Actions runs complete on the PR.

@joshka joshka force-pushed the joshka/vendor-ci-workflows branch 6 times, most recently from a6009a9 to f695643 Compare April 1, 2026 23:55
@joshka joshka marked this pull request as ready for review April 1, 2026 23:57
@joshka joshka force-pushed the joshka/vendor-ci-workflows branch 3 times, most recently from 30b2784 to b19c7ff Compare April 2, 2026 00:02
Keep CI configuration in this repository instead of delegating to
joshka/github-workflows. This makes the workflow behavior explicit
here and removes the external workflow dependency.
@joshka joshka force-pushed the joshka/vendor-ci-workflows branch from b19c7ff to 6accacc Compare April 2, 2026 00:03
@joshka joshka merged commit a659ffd into main Apr 2, 2026
12 checks passed
@joshka joshka deleted the joshka/vendor-ci-workflows branch April 2, 2026 00:04
joshka pushed a commit that referenced this pull request Apr 4, 2026
## 🤖 New release

* `tui-scrollbar`: 0.2.3 -> 0.2.4 (✓ API compatible changes)

<details><summary><i><b>Changelog</b></i></summary><p>

<blockquote>

## [0.2.4] - 2026-04-04

### Other

- [codex] Vendor CI workflows into this repository
([#212](#212))
</blockquote>


</p></details>

---
This PR was generated with
[release-plz](https://github.com/release-plz/release-plz/).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
joshka pushed a commit that referenced this pull request Apr 4, 2026
## 🤖 New release

* `tui-prompts`: 0.6.2 -> 0.6.3 (✓ API compatible changes)

<details><summary><i><b>Changelog</b></i></summary><p>

<blockquote>

## [0.6.3] - 2026-04-04

### ⚙️ Miscellaneous Tasks

- *(deps)* Lower dependency floors and reduce dependabot noise
([#211](#211))
  > ## Summary
  >
> - lower direct dependency requirements to the broadest semver ranges
the
  > workspace actually supports
> - keep `Cargo.lock` on current compatible releases, including the
direct
> `clap`, `tokio`, `futures`, and `rand` updates that fit this PR's
scope
> - configure Dependabot to group Cargo and GitHub Actions updates and
use
  > `increase-if-necessary` to reduce manifest churn
  >
  > ## Details
  >
> This change validates dependency floors with `cargo minimal-versions`
in
  > `--direct` mode so the library manifests reflect honest direct
  > requirements instead of transitive minimum noise.
  >
  > Notable outcomes:
  >
> - broadened requirements such as `clap = "4"` and `tokio = "1"` after
> verifying the workspace still compiles and tests against their
earliest
  > compatible direct versions
  > - kept real floors where required, such as `crossterm = "0.29"`,
  > `document-features = "0.2.11"`, and `derive_setters = "0.1.9"`
  > - kept the direct `rand` update to `0.10` and adjusted the
> `tui-bar-graph` examples to generate random `Vec<f64>` values in a
`rand
  > 0.10`-compatible way
> - kept transitive duplicate major versions where they are still
required
  > by downstream crates like the Ratatui stack or `lipsum`
  >
> Dependabot should now produce less noise because grouped update PRs
can
> primarily refresh `Cargo.lock` while leaving `Cargo.toml` alone unless
a
  > broader range is truly needed.
  >
  > ## Validation
  >
  > - `cargo minimal-versions check --workspace --direct`
  > - `cargo check --all-features --workspace`
  > - `cargo test --all-features --workspace`
  > - `cargo minimal-versions test --workspace --all-features --direct`
  > - `cargo outdated --workspace --root-deps-only`
  > - `cargo test -p tui-bar-graph --all-features --examples`
  >
  > ## Supersedes
  >
> This PR should supersede and allow closing the related Dependabot PRs:

### Other

- [codex] Vendor CI workflows into this repository
([#212](#212))
</blockquote>


</p></details>

---
This PR was generated with
[release-plz](https://github.com/release-plz/release-plz/).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
joshka pushed a commit that referenced this pull request Apr 4, 2026
## 🤖 New release

* `tui-big-text`: 0.8.3 -> 0.8.4 (✓ API compatible changes)

<details><summary><i><b>Changelog</b></i></summary><p>

<blockquote>

## [0.8.4] - 2026-04-04

### ⚙️ Miscellaneous Tasks

- *(deps)* Lower dependency floors and reduce dependabot noise
([#211](#211))
  > ## Summary
  >
> - lower direct dependency requirements to the broadest semver ranges
the
  > workspace actually supports
> - keep `Cargo.lock` on current compatible releases, including the
direct
> `clap`, `tokio`, `futures`, and `rand` updates that fit this PR's
scope
> - configure Dependabot to group Cargo and GitHub Actions updates and
use
  > `increase-if-necessary` to reduce manifest churn
  >
  > ## Details
  >
> This change validates dependency floors with `cargo minimal-versions`
in
  > `--direct` mode so the library manifests reflect honest direct
  > requirements instead of transitive minimum noise.
  >
  > Notable outcomes:
  >
> - broadened requirements such as `clap = "4"` and `tokio = "1"` after
> verifying the workspace still compiles and tests against their
earliest
  > compatible direct versions
  > - kept real floors where required, such as `crossterm = "0.29"`,
  > `document-features = "0.2.11"`, and `derive_setters = "0.1.9"`
  > - kept the direct `rand` update to `0.10` and adjusted the
> `tui-bar-graph` examples to generate random `Vec<f64>` values in a
`rand
  > 0.10`-compatible way
> - kept transitive duplicate major versions where they are still
required
  > by downstream crates like the Ratatui stack or `lipsum`
  >
> Dependabot should now produce less noise because grouped update PRs
can
> primarily refresh `Cargo.lock` while leaving `Cargo.toml` alone unless
a
  > broader range is truly needed.
  >
  > ## Validation
  >
  > - `cargo minimal-versions check --workspace --direct`
  > - `cargo check --all-features --workspace`
  > - `cargo test --all-features --workspace`
  > - `cargo minimal-versions test --workspace --all-features --direct`
  > - `cargo outdated --workspace --root-deps-only`
  > - `cargo test -p tui-bar-graph --all-features --examples`
  >
  > ## Supersedes
  >
> This PR should supersede and allow closing the related Dependabot PRs:

### Other

- [codex] Vendor CI workflows into this repository
([#212](#212))
</blockquote>


</p></details>

---
This PR was generated with
[release-plz](https://github.com/release-plz/release-plz/).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
joshka pushed a commit that referenced this pull request Apr 4, 2026
## 🤖 New release

* `tui-scrollview`: 0.6.3 -> 0.6.4 (✓ API compatible changes)

<details><summary><i><b>Changelog</b></i></summary><p>

<blockquote>

## [0.6.4] - 2026-04-04

### Other

- [codex] Vendor CI workflows into this repository
([#212](#212))
</blockquote>


</p></details>

---
This PR was generated with
[release-plz](https://github.com/release-plz/release-plz/).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
joshka pushed a commit that referenced this pull request Apr 4, 2026
## 🤖 New release

* `tui-widgets`: 0.7.1 -> 0.7.2 (✓ API compatible changes)

<details><summary><i><b>Changelog</b></i></summary><p>

<blockquote>

## [0.7.2] - 2026-04-04

### ⚙️ Miscellaneous Tasks

- *(deps)* Lower dependency floors and reduce dependabot noise
([#211](#211))
  > ## Summary
  >
> - lower direct dependency requirements to the broadest semver ranges
the
  > workspace actually supports
> - keep `Cargo.lock` on current compatible releases, including the
direct
> `clap`, `tokio`, `futures`, and `rand` updates that fit this PR's
scope
> - configure Dependabot to group Cargo and GitHub Actions updates and
use
  > `increase-if-necessary` to reduce manifest churn
  >
  > ## Details
  >
> This change validates dependency floors with `cargo minimal-versions`
in
  > `--direct` mode so the library manifests reflect honest direct
  > requirements instead of transitive minimum noise.
  >
  > Notable outcomes:
  >
> - broadened requirements such as `clap = "4"` and `tokio = "1"` after
> verifying the workspace still compiles and tests against their
earliest
  > compatible direct versions
  > - kept real floors where required, such as `crossterm = "0.29"`,
  > `document-features = "0.2.11"`, and `derive_setters = "0.1.9"`
  > - kept the direct `rand` update to `0.10` and adjusted the
> `tui-bar-graph` examples to generate random `Vec<f64>` values in a
`rand
  > 0.10`-compatible way
> - kept transitive duplicate major versions where they are still
required
  > by downstream crates like the Ratatui stack or `lipsum`
  >
> Dependabot should now produce less noise because grouped update PRs
can
> primarily refresh `Cargo.lock` while leaving `Cargo.toml` alone unless
a
  > broader range is truly needed.
  >
  > ## Validation
  >
  > - `cargo minimal-versions check --workspace --direct`
  > - `cargo check --all-features --workspace`
  > - `cargo test --all-features --workspace`
  > - `cargo minimal-versions test --workspace --all-features --direct`
  > - `cargo outdated --workspace --root-deps-only`
  > - `cargo test -p tui-bar-graph --all-features --examples`
  >
  > ## Supersedes
  >
> This PR should supersede and allow closing the related Dependabot PRs:

- *(deps)* Support strum 0.28
([#224](#224))
  > ## Summary
  >
  > This PR fixes the `strum 0.28` dependency bump proposed in
  > [#210](#210) and adds
> explicit `cargo check --all-targets --all-features --workspace`
coverage
> so example-target compile failures are caught directly in CI instead
of
  > being missed by the existing workspace check.
  >
  > ## Root Cause
  >
> The failure came from the `tui-bar-graph` example, where clap derives
a
  > parser for `BarStyle`.
  >
  > `BarStyle` still derives `FromStr`, and this was not caused by the
  > `#[strum(default)]` behavior change from [strum PR
> #476](Peternator7/strum#476). The actual issue
  > was dependency resolution plus feature unification.
  >
  > Before the bump, `tui-bar-graph` and `ratatui-core` both used `strum
> 0.27`, so Cargo unified them and `ratatui-core`'s `strum/std`
activation
  > effectively carried `std` into the `strum` instance used by
  > `tui-bar-graph`. After
> [#210](#210),
`tui-bar-graph`
> used `strum 0.28` while `ratatui-core` still used `strum 0.27`, so the
  > graph split into separate `strum` packages.
  >
  > At that point, `tui-bar-graph`'s own `strum 0.28` was built with
> `default-features = false`, which meant `strum::ParseError` no longer
  > implemented `std::error::Error` in that context. That was enough to
  > break clap's inferred parser for `BarStyle`.
  >
  > ## Code Changes
  >
> `tui-bar-graph` now declares an explicit `std` feature and uses it to
  > enable `strum/std`. `std` remains enabled by default, so the crate's
  > normal ergonomics do not change.
  >
> The interactive example is marked with `required-features = ["std"]`
so
> its compile requirements are explicit instead of depending on
accidental
  > transitive feature behavior.
  >
  > `colorgrad` now uses `default-features = false`.
  >
  > ## Why Only `strum/std`
  >
  > `strum/std` matters here because it affects trait-based downstream
  > integration on a public enum type. `BarStyle` derives traits whose
> interaction with clap depends on the trait set of `strum::ParseError`.
  >
> `colorgrad/std` does not play the same role in this crate today, so
the
  > `std` feature does not forward `colorgrad/std`.
  >
  > ## Docs
  >
  > The crate now uses `document-features` so the feature contract is
  > rendered in generated docs and on docs.rs.
  >
  > ## CI
  >
  > The issue exposed by
  > [#210](#210) was a normal
  > compile failure in a non-lib target.
  >
> The workspace already ran `cargo check --all-features --workspace`,
but
> that does not compile examples and other non-lib targets. `cargo check
  > --all-targets --all-features --workspace` reproduces the failure
  > directly.
  >
  > This PR adds explicit all-targets compile coverage so example-target
  > breakage is caught as a normal build/check failure.
  >
  > ## Verification
  >
  > ```shell
  > cargo check --all-targets --all-features --workspace
  > cargo clippy --all-targets --all-features --workspace -- -D warnings
  > cargo check -p tui-bar-graph --lib --no-default-features
  > cargo doc -p tui-bar-graph --all-features
  > cargo rdme --check --manifest-path tui-bar-graph/Cargo.toml
  > ```
  >
  > ## Follow-up
  >
> A broader `no_std` audit of the other widget crates was done during
this
  > work and recorded separately on
  > [#102](#102).

- *(tui-scrollbar)* Release v0.2.4
([#213](#213))
  > ## 🤖 New release
  >
  > * `tui-scrollbar`: 0.2.3 -> 0.2.4 (✓ API compatible changes)
  >
  > <details><summary><i><b>Changelog</b></i></summary><p>
  >
  > <blockquote>
  >
  > ## [0.2.4] - 2026-04-04
  >
  > ### Other
  >
  > - [codex] Vendor CI workflows into this repository
  > ([#212](#212))
  > </blockquote>
  >
  >
  > </p></details>
  >
  > ---
  > This PR was generated with
  > [release-plz](https://github.com/release-plz/release-plz/).

- *(tui-prompts)* Release v0.6.3
([#214](#214))
  > ## 🤖 New release
  >
  > * `tui-prompts`: 0.6.2 -> 0.6.3 (✓ API compatible changes)
  >
  > <details><summary><i><b>Changelog</b></i></summary><p>
  >
  > <blockquote>
  >
  > ## [0.6.3] - 2026-04-04
  >
  > ### ⚙️ Miscellaneous Tasks
  >
  > - *(deps)* Lower dependency floors and reduce dependabot noise
  > ([#211](#211))
  >   > ## Summary
  >   >
> > - lower direct dependency requirements to the broadest semver ranges
  > the
  >   > workspace actually supports
  > > - keep `Cargo.lock` on current compatible releases, including the
  > direct
  > > `clap`, `tokio`, `futures`, and `rand` updates that fit this PR's
  > scope
> > - configure Dependabot to group Cargo and GitHub Actions updates and
  > use
  >   > `increase-if-necessary` to reduce manifest churn
  >   >
  >   > ## Details
  >   >
> > This change validates dependency floors with `cargo
minimal-versions`
  > in
  >   > `--direct` mode so the library manifests reflect honest direct
  >   > requirements instead of transitive minimum noise.
  >   >
  >   > Notable outcomes:
  >   >
> > - broadened requirements such as `clap = "4"` and `tokio = "1"`
after
  > > verifying the workspace still compiles and tests against their
  > earliest
  >   > compatible direct versions
  >   > - kept real floors where required, such as `crossterm = "0.29"`,
  >   > `document-features = "0.2.11"`, and `derive_setters = "0.1.9"`
  >   > - kept the direct `rand` update to `0.10` and adjusted the
  > > `tui-bar-graph` examples to generate random `Vec<f64>` values in a
  > `rand
  >   > 0.10`-compatible way
  > > - kept transitive duplicate major versions where they are still
  > required
  >   > by downstream crates like the Ratatui stack or `lipsum`
  >   >
> > Dependabot should now produce less noise because grouped update PRs
  > can
> > primarily refresh `Cargo.lock` while leaving `Cargo.toml` alone
unless
  > a
  >   > broader range is truly needed.
  >   >
  >   > ## Validation
  >   >
  >   > - `cargo minimal-versions check --workspace --direct`
  >   > - `cargo check --all-features --workspace`
  >   > - `cargo test --all-features --workspace`
> > - `cargo minimal-versions test --workspace --all-features --direct`
  >   > - `cargo outdated --workspace --root-deps-only`
  >   > - `cargo test -p tui-bar-graph --all-features --examples`
  >   >
  >   > ## Supersedes
  >   >
> > This PR should supersede and allow closing the related Dependabot
PRs:
  >
  > ### Other
  >
  > - [codex] Vendor CI workflows into this repository
  > ([#212](#212))
  > </blockquote>
  >
  >
  > </p></details>
  >
  > ---
  > This PR was generated with
  > [release-plz](https://github.com/release-plz/release-plz/).

- *(tui-big-text)* Release v0.8.4
([#215](#215))
  > ## 🤖 New release
  >
  > * `tui-big-text`: 0.8.3 -> 0.8.4 (✓ API compatible changes)
  >
  > <details><summary><i><b>Changelog</b></i></summary><p>
  >
  > <blockquote>
  >
  > ## [0.8.4] - 2026-04-04
  >
  > ### ⚙️ Miscellaneous Tasks
  >
  > - *(deps)* Lower dependency floors and reduce dependabot noise
  > ([#211](#211))
  >   > ## Summary
  >   >
> > - lower direct dependency requirements to the broadest semver ranges
  > the
  >   > workspace actually supports
  > > - keep `Cargo.lock` on current compatible releases, including the
  > direct
  > > `clap`, `tokio`, `futures`, and `rand` updates that fit this PR's
  > scope
> > - configure Dependabot to group Cargo and GitHub Actions updates and
  > use
  >   > `increase-if-necessary` to reduce manifest churn
  >   >
  >   > ## Details
  >   >
> > This change validates dependency floors with `cargo
minimal-versions`
  > in
  >   > `--direct` mode so the library manifests reflect honest direct
  >   > requirements instead of transitive minimum noise.
  >   >
  >   > Notable outcomes:
  >   >
> > - broadened requirements such as `clap = "4"` and `tokio = "1"`
after
  > > verifying the workspace still compiles and tests against their
  > earliest
  >   > compatible direct versions
  >   > - kept real floors where required, such as `crossterm = "0.29"`,
  >   > `document-features = "0.2.11"`, and `derive_setters = "0.1.9"`
  >   > - kept the direct `rand` update to `0.10` and adjusted the
  > > `tui-bar-graph` examples to generate random `Vec<f64>` values in a
  > `rand
  >   > 0.10`-compatible way
  > > - kept transitive duplicate major versions where they are still
  > required
  >   > by downstream crates like the Ratatui stack or `lipsum`
  >   >
> > Dependabot should now produce less noise because grouped update PRs
  > can
> > primarily refresh `Cargo.lock` while leaving `Cargo.toml` alone
unless
  > a
  >   > broader range is truly needed.
  >   >
  >   > ## Validation
  >   >
  >   > - `cargo minimal-versions check --workspace --direct`
  >   > - `cargo check --all-features --workspace`
  >   > - `cargo test --all-features --workspace`
> > - `cargo minimal-versions test --workspace --all-features --direct`
  >   > - `cargo outdated --workspace --root-deps-only`
  >   > - `cargo test -p tui-bar-graph --all-features --examples`
  >   >
  >   > ## Supersedes
  >   >
> > This PR should supersede and allow closing the related Dependabot
PRs:
  >
  > ### Other
  >
  > - [codex] Vendor CI workflows into this repository
  > ([#212](#212))
  > </blockquote>
  >
  >
  > </p></details>
  >
  > ---
  > This PR was generated with
  > [release-plz](https://github.com/release-plz/release-plz/).

- *(tui-scrollview)* Release v0.6.4
([#216](#216))
  > ## 🤖 New release
  >
  > * `tui-scrollview`: 0.6.3 -> 0.6.4 (✓ API compatible changes)
  >
  > <details><summary><i><b>Changelog</b></i></summary><p>
  >
  > <blockquote>
  >
  > ## [0.6.4] - 2026-04-04
  >
  > ### Other
  >
  > - [codex] Vendor CI workflows into this repository
  > ([#212](#212))
  > </blockquote>
  >
  >
  > </p></details>
  >
  > ---
  > This PR was generated with
  > [release-plz](https://github.com/release-plz/release-plz/).

- *(tui-qrcode)* Release v0.2.4
([#219](#219))
  > ## 🤖 New release
  >
  > * `tui-qrcode`: 0.2.3 -> 0.2.4 (✓ API compatible changes)
  >
  > <details><summary><i><b>Changelog</b></i></summary><p>
  >
  > <blockquote>
  >
  > ## [0.2.4] - 2026-04-04
  >
  > ### ⚙️ Miscellaneous Tasks
  >
  > - *(deps)* Lower dependency floors and reduce dependabot noise
  > ([#211](#211))
  >   > ## Summary
  >   >
> > - lower direct dependency requirements to the broadest semver ranges
  > the
  >   > workspace actually supports
  > > - keep `Cargo.lock` on current compatible releases, including the
  > direct
  > > `clap`, `tokio`, `futures`, and `rand` updates that fit this PR's
  > scope
> > - configure Dependabot to group Cargo and GitHub Actions updates and
  > use
  >   > `increase-if-necessary` to reduce manifest churn
  >   >
  >   > ## Details
  >   >
> > This change validates dependency floors with `cargo
minimal-versions`
  > in
  >   > `--direct` mode so the library manifests reflect honest direct
  >   > requirements instead of transitive minimum noise.
  >   >
  >   > Notable outcomes:
  >   >
> > - broadened requirements such as `clap = "4"` and `tokio = "1"`
after
  > > verifying the workspace still compiles and tests against their
  > earliest
  >   > compatible direct versions
  >   > - kept real floors where required, such as `crossterm = "0.29"`,
  >   > `document-features = "0.2.11"`, and `derive_setters = "0.1.9"`
  >   > - kept the direct `rand` update to `0.10` and adjusted the
  > > `tui-bar-graph` examples to generate random `Vec<f64>` values in a
  > `rand
  >   > 0.10`-compatible way
  > > - kept transitive duplicate major versions where they are still
  > required
  >   > by downstream crates like the Ratatui stack or `lipsum`
  >   >
> > Dependabot should now produce less noise because grouped update PRs
  > can
> > primarily refresh `Cargo.lock` while leaving `Cargo.toml` alone
unless
  > a
  >   > broader range is truly needed.
  >   >
  >   > ## Validation
  >   >
  >   > - `cargo minimal-versions check --workspace --direct`
  >   > - `cargo check --all-features --workspace`
  >   > - `cargo test --all-features --workspace`
> > - `cargo minimal-versions test --workspace --all-features --direct`
  >   > - `cargo outdated --workspace --root-deps-only`
  >   > - `cargo test -p tui-bar-graph --all-features --examples`
  >   >
  >   > ## Supersedes
  >   >
> > This PR should supersede and allow closing the related Dependabot
PRs:
  > </blockquote>
  >
  >
  > </p></details>
  >
  > ---
  > This PR was generated with
  > [release-plz](https://github.com/release-plz/release-plz/).

- *(tui-popup)* Release v0.7.4
([#220](#220))
  > ## 🤖 New release
  >
  > * `tui-popup`: 0.7.3 -> 0.7.4 (✓ API compatible changes)
  >
  > <details><summary><i><b>Changelog</b></i></summary><p>
  >
  > <blockquote>
  >
  > ## [0.7.4] - 2026-04-04
  >
  > ### ⚙️ Miscellaneous Tasks
  >
  > - Update Cargo.toml dependencies
  > </blockquote>
  >
  >
  > </p></details>
  >
  > ---
  > This PR was generated with
  > [release-plz](https://github.com/release-plz/release-plz/).

- *(tui-box-text)* Release v0.3.3
([#221](#221))
  > ## 🤖 New release
  >
  > * `tui-box-text`: 0.3.2 -> 0.3.3 (✓ API compatible changes)
  >
  > <details><summary><i><b>Changelog</b></i></summary><p>
  >
  > <blockquote>
  >
  > ## [0.3.3] - 2026-04-04
  >
  > ### ⚙️ Miscellaneous Tasks
  >
  > - Update Cargo.toml dependencies
  > </blockquote>
  >
  >
  > </p></details>
  >
  > ---
  > This PR was generated with
  > [release-plz](https://github.com/release-plz/release-plz/).

- *(tui-cards)* Release v0.3.3
([#222](#222))
  > ## 🤖 New release
  >
  > * `tui-cards`: 0.3.2 -> 0.3.3 (✓ API compatible changes)
  >
  > <details><summary><i><b>Changelog</b></i></summary><p>
  >
  > <blockquote>
  >
  > ## [0.3.3] - 2026-04-04
  >
  > ### ⚙️ Miscellaneous Tasks
  >
  > - Update Cargo.toml dependencies
  > </blockquote>
  >
  >
  > </p></details>
  >
  > ---
  > This PR was generated with
  > [release-plz](https://github.com/release-plz/release-plz/).

- *(tui-bar-graph)* Release v0.3.3
([#223](#223))
  > ## 🤖 New release
  >
  > * `tui-bar-graph`: 0.3.2 -> 0.3.3 (✓ API compatible changes)
  >
  > <details><summary><i><b>Changelog</b></i></summary><p>
  >
  > <blockquote>
  >
  > ## [0.3.3] - 2026-04-04
  >
  > ### ⚙️ Miscellaneous Tasks
  >
  > - *(deps)* Lower dependency floors and reduce dependabot noise
  > ([#211](#211))
  >   > ## Summary
  >   >
> > - lower direct dependency requirements to the broadest semver ranges
  > the
  >   > workspace actually supports
  > > - keep `Cargo.lock` on current compatible releases, including the
  > direct
  > > `clap`, `tokio`, `futures`, and `rand` updates that fit this PR's
  > scope
> > - configure Dependabot to group Cargo and GitHub Actions updates and
  > use
  >   > `increase-if-necessary` to reduce manifest churn
  >   >
  >   > ## Details
  >   >
> > This change validates dependency floors with `cargo
minimal-versions`
  > in
  >   > `--direct` mode so the library manifests reflect honest direct
  >   > requirements instead of transitive minimum noise.
  >   >
  >   > Notable outcomes:
  >   >
> > - broadened requirements such as `clap = "4"` and `tokio = "1"`
after
  > > verifying the workspace still compiles and tests against their
  > earliest
  >   > compatible direct versions
  >   > - kept real floors where required, such as `crossterm = "0.29"`,
  >   > `document-features = "0.2.11"`, and `derive_setters = "0.1.9"`
  >   > - kept the direct `rand` update to `0.10` and adjusted the
  > > `tui-bar-graph` examples to generate random `Vec<f64>` values in a
  > `rand
  >   > 0.10`-compatible way
  > > - kept transitive duplicate major versions where they are still
  > required
  >   > by downstream crates like the Ratatui stack or `lipsum`
  >   >
> > Dependabot should now produce less noise because grouped update PRs
  > can
> > primarily refresh `Cargo.lock` while leaving `Cargo.toml` alone
unless
  > a
  >   > broader range is truly needed.
  >   >
  >   > ## Validation
  >   >
  >   > - `cargo minimal-versions check --workspace --direct`
  >   > - `cargo check --all-features --workspace`
  >   > - `cargo test --all-features --workspace`
> > - `cargo minimal-versions test --workspace --all-features --direct`
  >   > - `cargo outdated --workspace --root-deps-only`
  >   > - `cargo test -p tui-bar-graph --all-features --examples`
  >   >
  >   > ## Supersedes
  >   >
> > This PR should supersede and allow closing the related Dependabot
PRs:
  >
  > - *(deps)* Support strum 0.28
  > ([#224](#224))
  >   > ## Summary
  >   >
  >   > This PR fixes the `strum 0.28` dependency bump proposed in
  >   > [#210](#210) and adds
  > > explicit `cargo check --all-targets --all-features --workspace`
  > coverage
> > so example-target compile failures are caught directly in CI instead
  > of
  >   > being missed by the existing workspace check.
  >   >
  >   > ## Root Cause
  >   >
> > The failure came from the `tui-bar-graph` example, where clap
derives
  > a
  >   > parser for `BarStyle`.
  >   >
> > `BarStyle` still derives `FromStr`, and this was not caused by the
  >   > `#[strum(default)]` behavior change from [strum PR
> > #476](Peternator7/strum#476). The actual
issue
  >   > was dependency resolution plus feature unification.
  >   >
> > Before the bump, `tui-bar-graph` and `ratatui-core` both used `strum
  > > 0.27`, so Cargo unified them and `ratatui-core`'s `strum/std`
  > activation
  >   > effectively carried `std` into the `strum` instance used by
  >   > `tui-bar-graph`. After
  > > [#210](#210),
  > `tui-bar-graph`
> > used `strum 0.28` while `ratatui-core` still used `strum 0.27`, so
the
  >   > graph split into separate `strum` packages.
  >   >
  >   > At that point, `tui-bar-graph`'s own `strum 0.28` was built with
> > `default-features = false`, which meant `strum::ParseError` no
longer
> > implemented `std::error::Error` in that context. That was enough to
  >   > break clap's inferred parser for `BarStyle`.
  >   >
  >   > ## Code Changes
  >   >
> > `tui-bar-graph` now declares an explicit `std` feature and uses it
to
> > enable `strum/std`. `std` remains enabled by default, so the crate's
  >   > normal ergonomics do not change.
  >   >
> > The interactive example is marked with `required-features = ["std"]`
  > so
  > > its compile requirements are explicit instead of depending on
  > accidental
  >   > transitive feature behavior.
  >   >
  >   > `colorgrad` now uses `default-features = false`.
  >   >
  >   > ## Why Only `strum/std`
  >   >
> > `strum/std` matters here because it affects trait-based downstream
> > integration on a public enum type. `BarStyle` derives traits whose
> > interaction with clap depends on the trait set of
`strum::ParseError`.
  >   >
> > `colorgrad/std` does not play the same role in this crate today, so
  > the
  >   > `std` feature does not forward `colorgrad/std`.
  >   >
  >   > ## Docs
  >   >
> > The crate now uses `document-features` so the feature contract is
  >   > rendered in generated docs and on docs.rs.
  >   >
  >   > ## CI
  >   >
  >   > The issue exposed by
> > [#210](#210) was a normal
  >   > compile failure in a non-lib target.
  >   >
> > The workspace already ran `cargo check --all-features --workspace`,
  > but
> > that does not compile examples and other non-lib targets. `cargo
check
  >   > --all-targets --all-features --workspace` reproduces the failure
  >   > directly.
  >   >
> > This PR adds explicit all-targets compile coverage so example-target
  >   > breakage is caught as a normal build/check failure.
  >   >
  >   > ## Verification
  >   >
  >   > ```shell
  >   > cargo check --all-targets --all-features --workspace
> > cargo clippy --all-targets --all-features --workspace -- -D warnings
  >   > cargo check -p tui-bar-graph --lib --no-default-features
  >   > cargo doc -p tui-bar-graph --all-features
  >   > cargo rdme --check --manifest-path tui-bar-graph/Cargo.toml
  >   > ```
  >   >
  >   > ## Follow-up
  >   >
> > A broader `no_std` audit of the other widget crates was done during
  > this
  >   > work and recorded separately on
  >   > [#102](#102).
  > </blockquote>
  >
  >
  > </p></details>
  >
  > ---
  > This PR was generated with
  > [release-plz](https://github.com/release-plz/release-plz/).

### Other

- [codex] Vendor CI workflows into this repository
([#212](#212))

- [codex] fix(ci): avoid direct secret check in workflow
([#218](#218))
</blockquote>


</p></details>

---
This PR was generated with
[release-plz](https://github.com/release-plz/release-plz/).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@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.

1 participant