Skip to content

Conversation

dependabot[bot]
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Oct 9, 2025

Bumps shakapacker from 9.0.0.beta.3 to 9.2.0.

Changelog

Sourced from shakapacker's changelog.

[v9.2.0] - October 9, 2025

Added

  • New config export utility for debugging webpack/rspack configurations [PR #647](shakacode/shakapacker#647) by justin808.
    • Adds bin/export-bundler-config utility with three modes:
      • Doctor mode (--doctor): Exports all configs (dev + prod, client + server) to shakapacker-config-exports/ directory - best for troubleshooting
      • Save mode (--save): Export current environment configs to files
      • Stdout mode (default): View configs in terminal
    • Output formats: YAML (with optional inline documentation), JSON, or Node.js inspect
    • Smart features:
      • Environment isolation ensures dev/prod configs are truly different
      • Auto-detects bundler from shakapacker.yml
      • Pretty-prints functions (up to 50 lines)
      • Validates bundler value and output paths
      • Sanitizes filenames to prevent path traversal
      • Helpful .gitignore suggestions
    • Usage: bin/export-bundler-config --doctor or bundle exec rake shakapacker:export_bundler_config
    • Works seamlessly with rake shakapacker:switch_bundler for comparing webpack vs rspack configs
    • Lays groundwork for future config diff feature (tracked in #667)

Fixed

  • Fixed NoMethodError when custom environment (e.g., staging) is not defined in shakapacker.yml. [PR #669](shakacode/shakapacker#669) by justin808.
    • When deploying to environments like Heroku staging with RAILS_ENV=staging, shakapacker would crash with undefined method 'deep_symbolize_keys' for nil:NilClass
    • Configuration fallback: Now properly falls back to production environment configuration (appropriate for staging)
    • NODE_ENV handling: bin/shakapacker now automatically sets NODE_ENV=production for custom environments (staging, etc.)
      • Previously: RAILS_ENV=staging would set NODE_ENV=development, breaking webpack optimizations
      • Now: RAILS_ENV in [development, test] uses that value for NODE_ENV, everything else uses production
    • Logs informational message when falling back to help with debugging
    • This ensures shakapacker works with any Rails environment even if not explicitly defined in shakapacker.yml
    • Fixes #663

[v9.1.0] - October 8, 2025

⚠️ IMPORTANT: This release includes a breaking change for SWC users. Please see the v9 Upgrade Guide - SWC Loose Mode Breaking Change for migration details.

⚠️ Breaking Changes

  • SWC default configuration now uses loose: false for spec-compliant transforms (#658)
    • Previously, Shakapacker set loose: true by default in SWC configuration, which caused:
      • Silent failures with Stimulus controllers
      • Incorrect behavior with spread operators on iterables (e.g., [...new Set()])
      • Deviation from both SWC and Babel upstream defaults
    • Now defaults to loose: false, matching SWC's default and fixing compatibility with Stimulus
    • This aligns with the previous fix to Babel configuration in [PR #107](shakacode/shakapacker#107)
    • Migration: Most projects need no changes as the new default provides spec-compliant behavior. Projects with Stimulus will benefit from this fix. See v9 Upgrade Guide - SWC Loose Mode for details
    • If you must restore the old behavior (not recommended), add to config/swc.config.js:
      module.exports = {

... (truncated)

Commits

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [shakapacker](https://github.com/shakacode/shakapacker) from 9.0.0.beta.3 to 9.2.0.
- [Changelog](https://github.com/shakacode/shakapacker/blob/main/CHANGELOG.md)
- [Commits](https://github.com/shakacode/shakapacker/commits/v9.2.0)

---
updated-dependencies:
- dependency-name: shakapacker
  dependency-version: 9.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
@dependabot dependabot bot added dependencies Pull requests that update a dependency file ruby Pull requests that update ruby code labels Oct 9, 2025
Copy link

coderabbitai bot commented Oct 9, 2025

Important

Review skipped

Bot user detected.

To trigger a single review, invoke the @coderabbitai review command.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.


Comment @coderabbitai help to get the list of available commands and usage tips.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file ruby Pull requests that update ruby code
Projects
None yet
Development

Successfully merging this pull request may close these issues.

0 participants