Skip to content

fix(deps): upgrade 23 outdated dependencies - #7019

Merged
serhalp merged 6 commits into
mainfrom
fix/upgrade-misc-deps-except-commander
Feb 6, 2025
Merged

fix(deps): upgrade 23 outdated dependencies#7019
serhalp merged 6 commits into
mainfrom
fix/upgrade-misc-deps-except-commander

Conversation

@serhalp

@serhalp serhalp commented Jan 31, 2025

Copy link
Copy Markdown
Member

Summary

(Pulling the commander upgrade out of #7008 as it's turning into a can of worms.)

I carefully reviewed all the release notes for all of these. Many of the major bumps are just dropping support for older versions of node.js we already don't support. For anything relatively easy, I made the necessary changes. I punted on the more involved upgrades.

@github-actions

github-actions Bot commented Jan 31, 2025

Copy link
Copy Markdown

📊 Benchmark results

Comparing with 8a51e34

  • Dependency count: 1,192 ⬆️ 1.85% increase vs. 8a51e34
  • Package size: 306 MB ⬇️ 3.09% decrease vs. 8a51e34
  • Number of ts-expect-error directives: 801 ⬇️ 0.37% decrease vs. 8a51e34

@serhalp
serhalp force-pushed the fix/upgrade-misc-deps-except-commander branch 3 times, most recently from 6413ed5 to a964464 Compare February 3, 2025 14:41
There's some sort of undocumented breaking visual change that's messing with snapshot tests.
@serhalp
serhalp force-pushed the fix/upgrade-misc-deps-except-commander branch from a964464 to 8da2278 Compare February 4, 2025 15:30
Comment thread package.json
},
"dependencies": {
"@bugsnag/js": "7.25.0",
"@bugsnag/js": "8.2.0",

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

Comment thread package.json
"@netlify/redirect-parser": "14.5.0",
"@netlify/zip-it-and-ship-it": "9.42.4",
"@octokit/rest": "20.1.1",
"@octokit/rest": "21.1.0",

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

Comment thread package.json
"backoff": "2.5.0",
"better-opn": "3.0.2",
"boxen": "7.1.1",
"boxen": "8.0.1",

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

Comment thread package.json
"commander": "10.0.1",
"comment-json": "4.2.5",
"configstore": "6.0.0",
"configstore": "7.0.0",

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

Comment thread package.json
"from2-array": "0.0.4",
"fuzzy": "0.1.3",
"get-port": "5.1.1",
"get-port": "7.1.0",

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

now requires node 18 (we require 18) and uses esm, plus irrelevant changes: https://github.com/sindresorhus/get-port/releases

Comment thread package.json Outdated
"https-proxy-agent": "7.0.6",
"inquirer": "6.5.2",
"inquirer-autocomplete-prompt": "1.4.0",
"inquirer": "9.1.0",

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

I had to pin to 9.0.0 because there were undocumented arguably-breaking changes to the output and updating our snapshot tests was turning into a can of worms.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

To be clear, the latest is 12. 10, 11, and 12 should be easy enough in theory, if we stick with inquirer:

Comment thread package.json Outdated
"inquirer": "6.5.2",
"inquirer-autocomplete-prompt": "1.4.0",
"inquirer": "9.1.0",
"inquirer-autocomplete-prompt": "3.0.1",

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

ugh, after going down a rat hole I ended backing out of the inquirer-autocomplete-prompt upgrade since I couldn't figure what was changing and why... which in turn forced me to downscale the inquirer upgrade to v8 😞

Comment thread package.json
"locate-path": "7.2.0",
"lodash": "4.17.21",
"log-symbols": "6.0.0",
"log-symbols": "7.0.0",

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

not really major, should just become smaller: https://github.com/sindresorhus/log-symbols/releases

Comment thread package.json
"prettyjson": "1.2.5",
"pump": "3.0.2",
"raw-body": "2.5.2",
"raw-body": "3.0.0",

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

lousy release notes but doesn't seem actually major... https://github.com/stream-utils/raw-body/blob/master/HISTORY.md

Comment thread package.json
"raw-body": "3.0.0",
"read-package-up": "11.0.0",
"readdirp": "3.6.0",
"readdirp": "4.1.1",

@serhalp serhalp Feb 4, 2025

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

requires node 14, removes glob support (we weren't using them), and changes some exports (I updated our imports): https://github.com/paulmillr/readdirp/releases/tag/4.0.0

Comment thread package.json
"unixify": "1.0.0",
"update-notifier": "7.3.1",
"uuid": "9.0.1",
"uuid": "11.0.5",

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

requires node 16, adds types (no longer need @types/uuid): https://github.com/uuidjs/uuid/blob/main/CHANGELOG.md

Comment thread package.json
"@types/ws": "8.5.14",
"@vitest/coverage-v8": "1.6.0",
"c8": "9.1.0",
"c8": "10.1.3",

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

Comment thread package.json
"husky": "8.0.3",
"is-ci": "3.0.1",
"fs-extra": "11.3.0",
"husky": "9.1.7",

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

requires node 18 (so do we), technically no other breaking changes but I updated to the new format: https://github.com/typicode/husky/releases/tag/v9.0.1

Comment thread package.json
"is-ci": "3.0.1",
"fs-extra": "11.3.0",
"husky": "9.1.7",
"is-ci": "4.1.0",

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

removes support for very minor CI platforms: https://github.com/watson/is-ci/releases/tag/v4.0.0

Comment thread package.json
"eslint-plugin-sort-destructure-keys": "2.0.0",
"eslint-plugin-workspace": "file:./tools/lint-rules",
"form-data": "4.0.1",
"fs-extra": "11.2.0",

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

unrelated but this was easy to get rid of so I did (just a dev dep, so won't help with package weight, but still)

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

pulled out into #7025

@serhalp
serhalp force-pushed the fix/upgrade-misc-deps-except-commander branch 2 times, most recently from 6f9ed61 to b4b7532 Compare February 4, 2025 20:03
It looks like there's some sort of change in inquirer-autocomplete-prompt and it's a can
of worms to troubleshoot. This in turn prevents upgrading inquirer past v8.
@serhalp
serhalp force-pushed the fix/upgrade-misc-deps-except-commander branch from b4b7532 to 2eb463a Compare February 4, 2025 20:56
Comment thread package.json
"http-proxy-middleware": "2.0.7",
"https-proxy-agent": "7.0.6",
"inquirer": "6.5.2",
"inquirer": "8.0.0",

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

GitHub hid the comments: #7019 (comment)

Comment thread package.json
"nock": "13.5.6",
"husky": "9.1.7",
"is-ci": "4.1.0",
"nock": "14.0.0",

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

@serhalp serhalp changed the title fix(deps): upgrade 19 outdated dependencies fix(deps): upgrade 23 outdated dependencies Feb 4, 2025
@serhalp
serhalp marked this pull request as ready for review February 4, 2025 23:14
@serhalp
serhalp requested a review from a team as a code owner February 4, 2025 23:14

@ndhoule ndhoule left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

clapping_futurama

@serhalp
serhalp merged commit f74c6c6 into main Feb 6, 2025
@serhalp
serhalp deleted the fix/upgrade-misc-deps-except-commander branch February 6, 2025 00:03
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.

2 participants