Skip to content

RELEASE_NOTES:

Choose a tag to compare

@tobrien tobrien released this 31 Dec 01:16
· 2 commits to working since this release
47b7115

{
"title": "Release 1.0.4 — finalize package release and revert benchmark workflow release trigger",
"body": "Summary

This release finalizes the 1.0.4 package (removing the -dev suffix) and reverts an earlier CI change that caused the AsyncLocalStorage benchmark workflow to run on GitHub Release publish events. The changes are small and focused: a package version bump and a CI workflow trigger adjustment. There are no functional or API changes to the benchmarking code itself.

Highlights

  • Package version bumped from 1.0.3 → 1.0.4 (removes the -dev pre-release suffix introduced by dev tagging). Commit: a062a0d (Tim O'Brien, 2025-12-30).
  • Reverted a previously-added release event trigger in the benchmark workflow so the AsyncLocalStorage benchmark only runs on pushes to main and the scheduled weekly cron again (no automatic runs on release publishes). Commit: f135b75 (Tim O'Brien, 2025-12-30).

What changed (file-level)

  • package.json

    • version: "1.0.3" → "1.0.4" (line change in package.json). This is a standard release version bump; package metadata otherwise unchanged.
    • Scripts, dependencies, engines and other metadata remain the same; the package.json confirms the project continues to be a Node.js >=16 benchmark tool with the same CLI scripts and entry points.
  • .github/workflows/benchmark.yml

    • Removed the release: types: [published] trigger from the workflow 'on:' section.\ Prior triggers: push (main), schedule (weekly cron), release (published). New triggers: push (main), schedule (weekly cron), workflow_dispatch.
    • No other workflow logic was altered; the benchmark job matrix, artifact upload, result processing and create-release job remain intact. The workflow still contains logic to create a release (create-release job) when running on main but will not be invoked automatically by publishing a GitHub Release.

Scope and rationale

  • Version bump: This commit finalizes a pre-release/dev tag series and publishes a stable package.json version 1.0.4. The repository history shows a short sequence of dev tags (e.g., v1.0.4-dev.0) followed by this release; the bump removes the pre-release suffix so package managers and consumers see the canonical stable version.

  • CI trigger revert: A change that added a release: published trigger caused the benchmark workflow to run whenever a GitHub Release was published. That behavior was reverted so the workflow returns to the intended behavior: running on (1) push to main and (2) the scheduled weekly cron, plus manual runs via workflow_dispatch. The revert reduces duplication and avoids automatically re-running expensive benchmark jobs on release publish events, which can be wasteful (compute cost and noisy artifacts) and may have been introduced accidentally.

Implications for users and developers

For users (consuming the package or benchmark outputs):

  • The package version has increased to 1.0.4. This is a patch/stability release (no code changes to benchmarks or public APIs). Users who pin exact versions should update if they want the canonical stable tag; semver users will treat this as a patch.
  • No changes to benchmark results output formats, artifact structure, or scripts are included in this release.

For maintainers / CI owners:

  • The AsyncLocalStorage benchmark workflow will no longer run automatically when a GitHub Release is published. It will only run on pushes to main, the configured weekly cron, or when manually triggered.
  • If your process previously relied on benchmarks being generated automatically on release publishes, you must either re-enable the release trigger in .github/workflows/benchmark.yml or trigger the workflow manually (workflow_dispatch) when you publish a release.
  • Reverting the release trigger reduces unnecessary runs and GitHub Actions usage; it also eliminates a potential source of duplicated benchmark result uploads linked to release events.

Relation to previous releases and project evolution

  • The tag history shows a sequence of dev tags (v1.0.x-dev.0) followed by corresponding finalized versions (v1.0.x). This release continues that pattern: experimental/dev tagging followed by a final, canonical package.json bump to a stable version.
  • The changes in this release are administrative/operational rather than feature-driven: focused on release hygiene (removing a -dev suffix) and CI behavior correction.

Breaking changes / risks

  • No breaking changes were introduced. Code for benchmarks and the public scripts remain unchanged. get_breaking_changes analysis detected no API or signature changes.
  • Risk is low but operational: teams relying on automatic benchmark runs on GitHub Release publishes will no longer see that behavior. That's an intended revert (restoring previous behavior), but it is an operational change that should be noted.

Details from commits

  • a062a0d — chore(release): bump package version to 1.0.4

    • Finalizes the release by removing the -dev pre-release suffix from package.json (1.0.4-dev.0 → 1.0.4).
    • Affects package.json only (version field).
  • f135b75 — chore(ci): remove release trigger from benchmark workflow

    • Reverts the release: types: [published] trigger in .github/workflows/benchmark.yml so the AsyncLocalStorage benchmark only runs on pushes to main and the scheduled weekly cron; removes automatic runs on release publishes.
    • Affects .github/workflows/benchmark.yml (top-level 'on' triggers).
  • 2a21f0a — (tag/release metadata) 1.0.4-dev.0

    • Part of the dev-tagging sequence that preceded this finalized release.

Release metrics

  • Total commits included in this release: 3 (all by Tim O'Brien).
  • Files changed: package.json, package-lock.json (lockfile updates as part of release), and .github/workflows/benchmark.yml.
  • Net changes: version bump and two-line removal in the workflow trigger.

Recommended notes for the project (for inclusion in changelog)

  • 1.0.4 — 2025-12-30
    • chore: finalize release — package version set to 1.0.4 (remove -dev pre-release suffix)
    • ci: revert benchmark workflow release trigger — benchmark runs restored to push-to-main, weekly schedule, and manual dispatch (no longer runs on release publishes)

Acknowledgments

  • Changes authored and committed by Tim O'Brien.

Concluding technical summary

This release is an operational cleanup: it publishes a stable package version (1.0.4) and restores the benchmark workflow's intended triggers to avoid automatic runs on GitHub Release publishes. There are no runtime, API, or output-format changes to the benchmark tooling — the impact is limited to package versioning and CI behavior. If you depend on automatic benchmark runs on release events, reintroduce the release trigger; otherwise no action is required."
}