Prepare use-quant 0.2.0-beta.1 release#8
Open
CloudBranch wants to merge 17 commits into
Open
Conversation
Refines the use-quant 0.2.0 beta publish-readiness flow so focused crates can be prepared before all sibling versions are live on crates.io, while keeping the facade dry run strict for registry-ready validation. ci: refine use-quant publish readiness checks - Update publish readiness behavior for focused crate dry runs - Keep facade publish validation separate for registry-ready checks - Align Makefile release-readiness targets with staged crates.io publishing - Update facade publish readiness workflow for post-focused-crate validation
release: bump use-quant workspace to 0.2.0 * Update workspace package version from 0.1.0 to 0.2.0 * Update all workspace dependency versions to 0.2.0 * Align focused crates and facade crate versions for the 0.2.0 release * Refresh Cargo.lock for the release version bump
chore: remove unused proptest dependency from use-quant Remove unused proptest dependency from the use-quant manifest Resolve cargo-machete advisory in publish readiness checks Keep release dependencies limited to crates used by the facade
chore: remove unused use-quant dev dependency - Remove unused proptest dev-dependency from crates/use-quant/Cargo.toml - Refresh Cargo.lock after pruning the unused dependency - Resolve cargo-machete advisory for the facade crate
ci: verify focused crate versions before facade dry run - Check matching focused-crate versions on crates.io before facade validation - Keep use-quant publish dry run strict after registry readiness is confirmed - Preserve manual registry-ready gate for facade publish readiness
ci: avoid focused-crate publish dry runs before registry release - Replace focused-crate publish dry runs with package content checks - Avoid crates.io dependency resolution for unpublished sibling 0.2.0 crates - Keep strict facade publish validation in the registry-ready workflow
ci: configure release-plz trusted publishing - Add crates-io environment to the release-plz publish workflow - Keep release publishing on OIDC trusted publishing without a crates.io token - Pin release-plz workflows to the Ubuntu 24.04 runner - Preserve manual post-initial-release guard for automated crates.io publishing
Update the use-quant package description to align with RustUse facade terminology and the use-* utilities naming model.
Refactor `use-bar` into focused modules and expand its market bar utility surface. Changes: * Split `use-bar` internals into `error`, `interval`, `ohlc`, `ohlcv`, `time`, `volume`, and `prelude` modules. * Added typed `BarVolume` and `BarVolumeError` validation for finite, non-negative volume values. * Added `BarIntervalError` and `BarTimeError` exports for clearer typed error handling. * Added unified `BarError` variants and conversions for time, price, and volume construction failures. * Updated `OhlcvBar` to compose `OhlcBar` plus `BarVolume`. * Added direct `OhlcvBar` forwarding accessors for time, interval, open, high, low, close, range, body, midpoint, typical price, and direction helpers. * Added `OhlcBar` helper methods for range, body, up/down/flat detection, midpoint, and typical price. * Updated the `use-bar` prelude to expose the new public bar types and errors. * Updated README copy and examples to match the new API and RustUse utility terminology. * Kept `use-quant` facade compatibility through the existing feature-gated `use_bar` re-export. * Verified with `cargo fmt`, `cargo clippy --all-targets --all-features -- -D warnings`, and `cargo build`.
Promote use-quant facade to root package workspace * Move the `use-quant` facade package from `crates/use-quant` to the repository root. * Convert the root `Cargo.toml` into the canonical facade package + workspace manifest. * Add root `src/lib.rs` with feature-gated child crate module aliases. * Add root `src/prelude.rs` with feature-gated facade module re-exports. * Move facade examples from `crates/use-quant/examples` to root `examples`. * Merge the facade README into the root README so it serves as both repo and crate documentation. * Add docs.rs feature metadata, `docsrs` cfg handling, package include rules, and root default workspace member configuration. * Update examples to use module-qualified facade paths through `use_quant::prelude::*`. * Remove the old nested `crates/use-quant` facade package. * Refresh `Cargo.lock` for the root-package facade layout. * Validate with `cargo fmt`, `cargo build`, `cargo test --workspace --all-features`, and `cargo clippy --workspace --all-features --all-targets -- -D warnings`.
Remove Makefile and add canonical license notice Deletes the hand-maintained Makefile so `use-quant` can follow the canonical RustUse facade shape without a separate task-alias maintenance surface. The removed Makefile duplicated Cargo, GitHub Actions, and future `rustuse-cli` responsibilities, including focused-crate lists and release/readiness commands that are better discovered and managed by tooling. Adds a root `LICENSE` notice declaring the workspace as dual-licensed under `MIT OR Apache-2.0`, alongside the existing full `LICENSE-MIT` and `LICENSE-APACHE` texts. This keeps `use-quant` aligned with the intended RustUse standard: * Cargo owns Rust build behavior * GitHub Actions owns CI/CD execution * `rustuse-cli` will own RustUse convention checks and generated repository surfaces * root license metadata is explicit and scanner-friendly
Remove tracked scripts and refine repo lint config Deletes the tracked `scripts/` directory so `use-quant` follows the canonical RustUse facade direction: repeated repository automation should live in `rustuse-cli` or GitHub Actions instead of being duplicated across each facade. Updates ignore configuration so local helper scripts and generated/local artifacts stay out of version control. Refines `.clippy.toml` to keep RustUse library code strict while allowing practical test ergonomics for assertions, debugging, output, and simple test setup. This reduces per-repository maintenance surface and keeps `use-quant` aligned with the long-term RustUse model: * Cargo owns Rust build behavior * GitHub Actions owns CI/CD execution * `rustuse-cli` owns shared RustUse repository automation * facade repositories avoid hand-maintained scripts and task wrappers
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
use-quant0.2.0-beta.1 release.use-quantfacade package to the repository root.crates/use-quantfacade package.Affected set or crate
use-quantuse-baruse-drawdownuse-factoruse-market-priceuse-portfolio-weightuse-price-seriesuse-returnuse-riskuse-signal-scoreuse-tickuse-volatilityType of change
Validation
cargo fmtcargo buildcargo test --workspace --all-featurescargo clippy --workspace --all-features --all-targets -- -D warningsNotes for reviewers
use-quantfacade crate.crates/*.src/lib.rsandsrc/prelude.rs.examples/.cargo package -p use-quantstill depends on child0.2.0crates existing on crates.io, so full facade package validation should happen after focused crates are published.