Skip to content

Version Packages - #2904

Merged
srod merged 1 commit into
mainfrom
changeset-release/main
Sep 2, 2026
Merged

Version Packages#2904
srod merged 1 commit into
mainfrom
changeset-release/main

Conversation

@github-actions

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

Copy link
Copy Markdown
Contributor

This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated.

Releases

@node-minify/core@11.0.0

Major Changes

  • 1a1be73: v11: cleanup major release.

    Breaking changes

    • Minimum Node.js is now 22: engines.node moved from >=20.0.0 to >=22.0.0 across all packages. Node 20 reached end-of-life on 2026-04-30 and is no longer covered by CI (the test matrix runs 22.x and 24.x). Upgrade to Node 22 or later.
    • Removed 5 deprecated compressor packages: @node-minify/babel-minify, @node-minify/uglify-es, @node-minify/yui, @node-minify/sqwish, @node-minify/crass. Use the recommended replacements (terser/oxc/swc/esbuild for JS, lightningcss/cssnano for CSS).
    • Removed @node-minify/run: internal Java/process-spawn helper, no longer used by any compressor.
    • Removed deprecated type aliases from @node-minify/types: CompressorReturnType (use CompressorResult) and MinifyOptions (use Settings).
    • Google Closure Compiler now uses the google-closure-compiler npm API instead of invoking the Java JAR through @node-minify/run. Same flags and output. Note: the npm package still bundles google-closure-compiler-java, so Java may still be invoked under the hood — this change removes node-minify's custom Java plumbing, not Java itself.

    New features

    • Compressor support tiers: shared status registry in @node-minify/utils (recommended / supported / legacy / removed), surfaced in CLI help and the GitHub Action.
    • node-minify doctor: read-only CLI command covering every v11 break. Scans package.json, source imports, compressor: values and workflow YAML for removed/legacy compressors, the removed @node-minify/run package, the removed CompressorReturnType/MinifyOptions type aliases, and engines.node ranges that still allow Node below 22. Exits non-zero on errors so it can gate CI.
    • CLI and Action fail early when a removed compressor is requested, pointing at the replacement.
    • GCC runtime controls: configurable buffer limit (kills the child process when stdout/stderr exceeds it) plus hardened process/timeout/error handling.

    Migration

    See the v11 migration guide, or run npx --package=@node-minify/cli -- node-minify doctor in your project.

Patch Changes

  • @node-minify/utils@11.0.0

@node-minify/benchmark@11.0.0

Patch Changes

  • Updated dependencies [1a1be73]
    • @node-minify/core@11.0.0
    • @node-minify/utils@11.0.0

@node-minify/clean-css@11.0.0

Patch Changes

  • @node-minify/utils@11.0.0

@node-minify/cli@11.0.0

Patch Changes

  • Updated dependencies [1a1be73]
    • @node-minify/core@11.0.0
    • @node-minify/benchmark@11.0.0
    • @node-minify/utils@11.0.0

@node-minify/cssnano@11.0.0

Patch Changes

  • @node-minify/utils@11.0.0

@node-minify/csso@11.0.0

Patch Changes

  • @node-minify/utils@11.0.0

@node-minify/esbuild@11.0.0

Patch Changes

  • @node-minify/utils@11.0.0

@node-minify/google-closure-compiler@11.0.0

Patch Changes

  • @node-minify/utils@11.0.0

@node-minify/html-minifier@11.0.0

Patch Changes

  • @node-minify/utils@11.0.0

@node-minify/imagemin@11.0.0

Patch Changes

  • Updated dependencies [1a1be73]
    • @node-minify/core@11.0.0
    • @node-minify/utils@11.0.0

@node-minify/jsonminify@11.0.0

Patch Changes

  • @node-minify/utils@11.0.0

@node-minify/lightningcss@11.0.0

Patch Changes

  • @node-minify/utils@11.0.0

@node-minify/minify-html@11.0.0

Patch Changes

  • 0ec8a94: Fix minify-html throwing minifyHtmlLib.minify is not a function at runtime.

    @minify-html/node is a CommonJS native addon, so under Node's ESM loader its exports are reachable only through the default export. The compressor called minify off the namespace object, which is always undefined there, making the package fail on every input when consumed from real Node.

    The bug was masked in CI: the error test mocked @minify-html/node with a flat { minify } shape that does not match the real module, and Vitest's CommonJS interop resolved the namespace differently than Node does. The mock now mirrors the real default-export shape, and a regression test asserts the interop directly.

    • @node-minify/utils@11.0.0

@node-minify/no-compress@11.0.0

Patch Changes

  • @node-minify/utils@11.0.0

@node-minify/oxc@11.0.0

Patch Changes

  • @node-minify/utils@11.0.0

@node-minify/sharp@11.0.0

Patch Changes

  • Updated dependencies [1a1be73]
    • @node-minify/core@11.0.0
    • @node-minify/utils@11.0.0

@node-minify/svgo@11.0.0

Patch Changes

  • @node-minify/utils@11.0.0

@node-minify/swc@11.0.0

Patch Changes

  • @node-minify/utils@11.0.0

@node-minify/terser@11.0.0

Patch Changes

  • @node-minify/utils@11.0.0

@node-minify/uglify-js@11.0.0

Patch Changes

  • @node-minify/utils@11.0.0

@node-minify/types@11.0.0

@node-minify/utils@11.0.0

@node-minify/examples@11.0.0

Patch Changes

  • Updated dependencies [1a1be73]
    • @node-minify/core@11.0.0
    • @node-minify/imagemin@11.0.0
    • @node-minify/sharp@11.0.0
    • @node-minify/clean-css@11.0.0
    • @node-minify/cssnano@11.0.0
    • @node-minify/csso@11.0.0
    • @node-minify/esbuild@11.0.0
    • @node-minify/google-closure-compiler@11.0.0
    • @node-minify/html-minifier@11.0.0
    • @node-minify/jsonminify@11.0.0
    • @node-minify/lightningcss@11.0.0
    • @node-minify/no-compress@11.0.0
    • @node-minify/oxc@11.0.0
    • @node-minify/svgo@11.0.0
    • @node-minify/swc@11.0.0
    • @node-minify/terser@11.0.0
    • @node-minify/uglify-js@11.0.0

@node-minify/action@11.0.0

Patch Changes

  • Updated dependencies [1a1be73]
    • @node-minify/core@11.0.0
    • @node-minify/benchmark@11.0.0
    • @node-minify/esbuild@11.0.0
    • @node-minify/oxc@11.0.0
    • @node-minify/swc@11.0.0
    • @node-minify/terser@11.0.0
    • @node-minify/utils@11.0.0

@node-minify/docs@11.0.0

@github-actions
github-actions Bot force-pushed the changeset-release/main branch from 0bd95d5 to c8f2a7b Compare September 2, 2026 13:26
@codecov

codecov Bot commented Sep 2, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 99.64%. Comparing base (22d062f) to head (c8f2a7b).

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #2904   +/-   ##
=======================================
  Coverage   99.64%   99.64%           
=======================================
  Files          69       69           
  Lines        1961     1961           
  Branches      599      599           
=======================================
  Hits         1954     1954           
  Misses          7        7           

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@srod
srod merged commit f1746f1 into main Sep 2, 2026
14 checks passed
@srod
srod deleted the changeset-release/main branch September 2, 2026 13:35
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