Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
160 changes: 80 additions & 80 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -34,123 +34,123 @@
"node-renderer": "node renderer/node-renderer.js"
},
"dependencies": {
"@babel/cli": "^7.21.0",
"@babel/core": "^7.21.0",
"@babel/plugin-transform-runtime": "^7.21.0",
"@babel/preset-env": "^7.20.2",
"@babel/runtime": "^7.17.9",
"@glennsl/rescript-fetch": "^0.2.0",
"@glennsl/rescript-json-combinators": "^1.2.1",
"@babel/cli": "^7.29.7",
"@babel/core": "^7.29.7",
"@babel/plugin-transform-runtime": "^7.29.7",
"@babel/preset-env": "^7.29.7",
"@babel/runtime": "^7.29.7",
"@glennsl/rescript-fetch": "^0.3.0",
"@glennsl/rescript-json-combinators": "^1.5.1",
"@hotwired/stimulus": "^3.2.1",
"@hotwired/stimulus-webpack-helpers": "^1.0.1",
"@hotwired/turbo-rails": "^7.3.0",
"@rails/actioncable": "7.0.5",
"@rescript/core": "^0.5.0",
"@rescript/react": "^0.11.0",
"@rspack/cli": "2.0.4",
"@rspack/core": "2.0.4",
"@swc/core": "^1.13.5",
"ajv": "^8.17.1",
"autoprefixer": "^10.4.14",
"axios": "^0.21.1",
"@hotwired/turbo-rails": "^8.0.23",
"@rails/actioncable": "8.1.300",
"@rescript/core": "^1.6.1",
"@rescript/react": "^0.15.0",
"@rspack/cli": "2.1.5",
"@rspack/core": "2.1.5",
"@swc/core": "^1.15.46",
"ajv": "^8.20.0",
"autoprefixer": "^10.5.4",
"axios": "^1.18.1",
"classnames": "^2.3.2",
"compression-webpack-plugin": "10.0.0",
"css-loader": "^6.8.1",
"css-minimizer-webpack-plugin": "^5.0.1",
"compression-webpack-plugin": "12.0.0",
"css-loader": "^7.1.4",
"css-minimizer-webpack-plugin": "^8.0.0",
"es5-shim": "^4.6.7",
"estraverse": "^5.3.0",
"expose-loader": "^4.0.0",
"expose-loader": "^5.0.1",
"file-loader": "^6.2.0",
"html-webpack-plugin": "^5.5.0",
"immutable": "^4.3.0",
"imports-loader": "^4.0.0",
"html-webpack-plugin": "^5.6.8",
"immutable": "^5.1.9",

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Keep Immutable on v4 or update default imports

When any comments bundle is built, this upgrade resolves Immutable 5, whose changelog says the default export was removed (https://github.com/immutable-js/immutable-js/blob/main/CHANGELOG.md#minor-bc-break-remove-default-export). The app still default-imports Immutable in reducers, stores, and components such as client/app/bundles/comments/reducers/commentsReducer.js:4, so webpack will fail on the missing default export before the comments UI can render. Either switch these call sites to named/namespace imports or keep Immutable on 4.x.

Useful? React with 👍 / 👎.

"imports-loader": "^5.0.0",
"intl": "^1.2.5",
"jquery": "^3.2.1",
"jquery": "^4.0.0",
"jquery-ujs": "^1.2.2",
"js-yaml": "^4.1.0",
"loader-utils": "^1.1.0",
"lodash": "^4.17.4",
"marked": "^5.1.0",
"marked-gfm-heading-id": "^3.0.5",
"marked-mangle": "^1.1.0",
"js-yaml": "^5.2.2",
"loader-utils": "^3.3.1",
"lodash": "^4.18.1",
"marked": "^18.0.7",
"marked-gfm-heading-id": "^4.1.4",
"marked-mangle": "^1.1.13",
"node-uuid": "^1.4.8",
"postcss": "^8.4.5",
"postcss-loader": "7.3.3",
"postcss-preset-env": "^8.5.0",
"postcss-loader": "8.2.1",
"postcss-preset-env": "^11.3.2",
"prop-types": "^15.8.1",
"react": "~19.2.7",
"react-dom": "~19.2.7",
"react-error-boundary": "^4.1.2",
"react-intl": "^6.4.4",
"react": "~19.2.8",
"react-dom": "~19.2.8",
"react-error-boundary": "^6.1.2",
"react-intl": "^10.1.18",

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Keep React Intl below v10 or replace injectIntl

When the comments packs compile, several components still import injectIntl (CommentForm, CommentBox, and SimpleCommentScreen), but React Intl v10 removed that HOC (formatjs/formatjs#6216). This bump therefore makes those imports fail instead of rendering the localized comments screens; migrate the components to the current API, such as useIntl/IntlProvider patterns, or pin React Intl below v10.

Useful? React with 👍 / 👎.

"react-on-rails-pro": "17.0.0",
"react-on-rails-pro-node-renderer": "17.0.0",
"react-on-rails-rsc": "19.2.1",
"react-redux": "^8.1.0",
"react-router": "^6.13.0",
"react-router-dom": "^6.13.0",
"react-redux": "^9.3.0",
"react-router": "^8.3.0",
"react-router-dom": "^7.18.1",
"react-router-redux": "^4.0.8",
"react-server-dom-webpack": "~19.2.7",
"react-server-dom-webpack": "~19.2.8",
"react-transition-group": "4.4.5",
"redux": "^4.2.1",
"redux-thunk": "^2.2.0",
"rescript": "^11.1.4",
"redux": "^5.0.1",
"redux-thunk": "^3.1.0",

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Update redux-thunk imports before bumping to v3

When the packs import the registered stores, both commentsStore.js and routerCommentsStore.js still use import thunkMiddleware from 'redux-thunk'. redux-thunk v3 removed the default export and exposes thunk as a named export, so this bump makes the store bundle fail with a missing default export or passes an undefined middleware into applyMiddleware. Update those imports to the v3 API or keep the dependency on v2.

Useful? React with 👍 / 👎.

"rescript": "^12.3.0",
"rescript-react-on-rails": "1.1.0",
"resolve-url-loader": "^2.2.0",
"sanitize-html": "^2.11.0",
"sass": "^1.58.3",
"sass-loader": "^13.3.2",
"resolve-url-loader": "^5.0.0",
"sanitize-html": "^2.17.6",
"sass": "^1.102.0",
"sass-loader": "^17.0.0",
"sass-resources-loader": "^2.2.5",
"shakapacker": "10.2.0",
"shakapacker": "10.3.0",
"stimulus": "^3.0.1",
"style-loader": "^3.3.1",
"swc-loader": "^0.2.6",
"tailwindcss": "^3.3.3",
"style-loader": "^4.0.0",
"swc-loader": "^0.2.7",
"tailwindcss": "^4.3.3",

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Keep Tailwind on v3 or migrate the PostCSS setup

This app still processes client/app/assets/styles/application.css through postcss.config.js, where PostCSS loads tailwindcss directly and the stylesheet uses the v3 tailwindcss/base, components, and utilities imports. Tailwind v4 moved the PostCSS plugin to @tailwindcss/postcss, but this bump does not add that package or migrate the CSS import, so any Shakapacker build that includes stimulus-bundle.js will fail during CSS processing. Pin Tailwind 3 or migrate the PostCSS config and CSS entrypoint together.

Useful? React with 👍 / 👎.

"terser-webpack-plugin": "5",
"turbolinks": "^5.2.0",
"url-loader": "^4.1.1",
"webpack": "5",
"webpack-assets-manifest": "5",
"webpack-cli": "5",
"webpack-merge": "5"
"webpack-assets-manifest": "6",
"webpack-cli": "7",
"webpack-merge": "6"
},
"devDependencies": {
"@babel/eslint-parser": "^7.16.5",
"@babel/preset-react": "^7.18.6",
"@babel/eslint-parser": "^7.29.7",
"@babel/preset-react": "^7.29.7",
"@rspack/dev-server": "^2.0.4",
"@rspack/plugin-react-refresh": "2.0.0",
"@tailwindcss/typography": "^0.5.10",
"@rspack/plugin-react-refresh": "2.0.2",
"@tailwindcss/typography": "^0.5.20",
"@testing-library/dom": "^10.4.1",
"@testing-library/jest-dom": "^6.9.1",
"@testing-library/react": "^16.3.0",
"@webpack-cli/serve": "^2.0.5",
"babel-jest": "^29.5.0",
"body-parser": "^1.20.2",
"eslint": "^8.35.0",
"eslint-config-prettier": "^8.6.0",
"@testing-library/jest-dom": "^7.0.0",
"@testing-library/react": "^16.3.2",
"@webpack-cli/serve": "^3.0.1",
"babel-jest": "^30.4.1",
"body-parser": "^2.3.0",
"eslint": "^10.8.0",

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Migrate ESLint config before bumping to v10

When yarn lint:eslint runs, ESLint 10 no longer honors legacy .eslintrc.* or .eslintignore files per the v10 release notes (https://eslint.org/blog/2026/02/eslint-v10.0.0-released/), and I found only .eslintrc/.eslintignore in this repo with no eslint.config.*. That means the lint script will fail or run without the repository rules after this dependency bump; add a flat eslint.config.* migration in the same change or keep ESLint on v8.

Useful? React with 👍 / 👎.

"eslint-config-prettier": "^10.1.8",
"eslint-config-shakacode": "^19.0.0",
"eslint-import-resolver-webpack": "^0.13.2",
"eslint-import-resolver-webpack": "^0.13.11",
"eslint-plugin-import": "^2.27.5",
"eslint-plugin-jest": "^27.2.2",
"eslint-plugin-jest": "^29.16.0",
"eslint-plugin-jsx-a11y": "^6.7.1",
"eslint-plugin-prettier": "^4.2.1",
"eslint-plugin-prettier": "^5.5.6",
"eslint-plugin-react": "^7.32.2",
"eslint-plugin-react-hooks": "^4.6.0",
"eslint-plugin-react-hooks": "^7.1.1",
"estraverse-fb": "^1.3.2",
"express": "^4.18.2",
"express": "^5.2.1",
"identity-obj-proxy": "^3.0.0",
"jest": "^29.5.0",
"jest-environment-jsdom": "^30.2.0",
"mini-css-extract-plugin": "^2.7.2",
"jest": "^30.4.2",
"jest-environment-jsdom": "^30.4.1",
"mini-css-extract-plugin": "^2.10.2",
"patch-package": "^8.0.0",
"preload-webpack-plugin": "^3.0.0-alpha.1",
"prettier": "^2.2.1",
"prettier-eslint-cli": "^7.1.0",
"react-refresh": "^0.14.0",
"prettier": "^3.9.6",
"prettier-eslint-cli": "^9.2.1",
"react-refresh": "^0.18.0",
"react-transform-hmr": "^1.0.4",
"regenerator-runtime": "^0.13.11",
"regenerator-runtime": "^0.14.1",
"rspack-manifest-plugin": "^5.2.2",
"typescript": "^5.1.3",
"webpack-dev-server": "^4.11.1"
"typescript": "^7.0.2",
"webpack-dev-server": "^6.0.0"
},
"browser": {
"fs": false
Expand Down
Loading
Loading