Skip to content

Releases: MerlijnW70/cu-profiler

v0.2.1

Choose a tag to compare

@MerlijnW70 MerlijnW70 released this 26 Jun 17:55

What's new

  • Reusable GitHub Actionuses: MerlijnW70/cu-profiler@v1 installs the CLI and runs cu-profiler ci (or any subcommand) in one line. No peer in the field ships one.
  • Actionable bench onboarding — when the Linux cu-profiler-bench executor is missing, the error now prints the exact install command instead of a vague hint. New docs/bench.md walkthrough.
  • Hardened test suite — zero-survivor mutation testing across cu-profiler-core/-report plus a dense float-clause property/law sweep.

All four crates (cu-profiler-core, -instrumentation, -report, -cli) published to crates.io at 0.2.1. No public API changes.

v0.2.0

Choose a tag to compare

@MerlijnW70 MerlijnW70 released this 21 Jun 14:51
df1df26

v0.2.0

Added

  • cu-profiler comment — post the Markdown report as a sticky PR comment (one per PR, updated in place; hidden-marker upsert over the GitHub REST API; --dry-run, --input, --pr, --repo, --marker). init --workflow scaffolds a render-and-comment step.
  • Multi-sample runs + varianceScenario.samples / --samples record a SampleStats distribution and fold the coefficient of variation into the confidence score (spec §12). Honestly gated: the deterministic recorded backend never fabricates a spread.
  • Turnkey real-CU pathcu-profiler bench validates a declarative bench.toml and measures real compute units by delegating to the Linux cu-profiler-bench executor; MolluskBackend::from_plan / run_plan in the detached cu-profiler-mollusk crate meter genuine CU via mollusk-svm. The main CLI stays Solana-free / Windows-buildable.

See CHANGELOG.md for full details.

v0.1.2

Choose a tag to compare

@MerlijnW70 MerlijnW70 released this 20 Jun 09:55

Security patch release.

Security

  • Path-traversal fix (high): scenario/--name validated before becoming a file path.
  • Deep-CPI-tree DoS fix: call-tree nesting capped (no stack overflow on adversarial logs).
  • Resource limits: 64 MiB cap on file reads, 32 MiB cap on RPC response bodies.

Added

  • import --signature <sig> --rpc <url> — fetch a transaction's logs live over rustls.

Changed

  • Honest placeholders: config mode defaults to recorded + validated; core backend stubs point to the integration crates.

CI green: build/test/clippy/fmt, MSRV 1.85, program-test, mollusk.

v0.1.1

Choose a tag to compare

@MerlijnW70 MerlijnW70 released this 20 Jun 06:26

Maintenance + UX release. Publishes the import command and the demo-data guard to crates.io.

Added

  • cu-profiler import <tx.json> — convert a real transaction's getTransaction logs into a profileable scenario (no live RPC or Solana toolchain). Name defaults to the file stem.

Changed

  • init's demo logs are marked DEMO_DATA_ONLY; run/ci warn (on stderr, keeping machine output clean) that demo numbers aren't a real measurement, pointing to real logs / the Mollusk backend.

Notes

  • Real metered CU is available via the detached integration/cu-profiler-mollusk (SBF) and integration/cu-profiler-program-test backends, verified on Linux CI.

CI green: build · test · clippy · fmt · MSRV 1.85 · program-test · mollusk.

🤖 Generated with Claude Code

v0.1.0-alpha

v0.1.0-alpha Pre-release
Pre-release

Choose a tag to compare

@MerlijnW70 MerlijnW70 released this 19 Jun 21:42

First public alpha of cu-profiler — compute-unit profiling, regression testing and budget enforcement for Solana programs (100% Rust).

What works

  • Solana log parser → CPI call tree, scope markers, compute-budget heuristics
  • Budget policy engine with stable, documented CI exit codes
  • Baselines with input fingerprinting + staleness detection
  • Confidence scoring and a Solana-specific diagnostic engine
  • Reports: table · JSON · Markdown · JUnit · HTML
  • Backends: RecordedLogsBackend (default) + live solana-program-test backend (Linux CI)
  • Optional Anchor IDL support (feature anchor)

Known limitations (honest, by design)

  • Real CU metering requires recorded logs or an SBF program; in-process native programs aren't metered yet.
  • Not yet published to crates.io (publish-ready; coming next).
  • No bundled runnable example program yet.

CI: build · test · clippy · fmt · MSRV 1.85 · Solana program-test — all green.

🤖 Generated with Claude Code

cu-profiler v0.1.0

cu-profiler v0.1.0 Pre-release
Pre-release

Choose a tag to compare

@MerlijnW70 MerlijnW70 released this 19 Jun 22:34

Initial public release of the high-performance Solana CU profiler.