Skip to content

chore(deps): remove unused dependencies - #4207

Merged
B4nan merged 2 commits into
masterfrom
chore/unused-deps
Oct 6, 2026
Merged

B4nan merged 2 commits into
masterfrom
chore/unused-deps

Conversation

@B4nan

@B4nan B4nan commented Oct 5, 2026

Copy link
Copy Markdown
Member

Removes dependencies that nothing imports any more. Each one was checked against the sources, and for the published packages also against the built dist (including the type declarations).

Published packages:

  • @crawlee/utils: @apify/ps-tree (core has its own implementation now)
  • @crawlee/http: @apify/utilities, @crawlee/core
  • @crawlee/stagehand: @apify/timeout
  • @crawlee/browser, @crawlee/playwright: type-fest
  • crawlee: @crawlee/browser-pool, which the meta-package never imports. @crawlee/impit-client stays, since it is detected and enabled when installed.

Root dev dependencies: deep-equal, vite-tsconfig-paths, commitlint and @commitlint/config-conventional (there has never been a commitlint config or a commit-msg hook in this repo), and the type packages @types/deep-equal, @types/lodash.isequal, @types/inquirer, @types/proper-lockfile, @types/ps-tree and @types/rimraf.

got goes too. Its last use was one API call in test/e2e/tools.mjs that starts an actor run, now done with fetch. The retry options there never applied, because got does not retry POST requests by default, so the behavior is the same. This makes #4205 obsolete.

Website: @apify/utilities, axios, buffer, crypto-browserify, process, prop-types, react-lite-youtube-embed, stream-browserify, @apify/tsconfig, fs-extra and path-browserify. Nothing in the site sources, config or docs content references them, and there is no webpack fallback configured for the polyfills.

Drops dependencies that nothing imports any more, across the packages, the root and the website, and replaces the one remaining use of got (starting an actor run in the E2E tools) with fetch.
@B4nan B4nan added adhoc Ad-hoc unplanned task added during the sprint. t-tooling Issues with this label are in the ownership of the tooling team. labels Oct 5, 2026
@apify-service-account apify-service-account added the tested Temporary label used only programatically for some analytics. label Oct 5, 2026
@B4nan
B4nan requested a review from barjin October 5, 2026 18:36

@barjin barjin left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

🎉 🎉 🎉

@janbuchar

Copy link
Copy Markdown
Contributor
  • crawlee: @crawlee/browser-pool, which the meta-package never imports. @crawlee/impit-client stays, since it is detected and enabled when installed.

Correct me if I'm wrong, but shouldn't crawlee re-export the package?

@B4nan

B4nan commented Oct 6, 2026

Copy link
Copy Markdown
Member Author

I believe it did, and (I think) you removed that as part of making it (rather) internal, no? Let me check the history, I don't mind exposing it.

@B4nan

B4nan commented Oct 6, 2026 •

Copy link
Copy Markdown
Member Author

It stopped re-exporting it in #4060, and the upgrading guide covers that ("Add @crawlee/browser-pool to your dependencies and import them from there"). The *BrowserPool() factories live in the crawler packages, so nothing in crawlee reaches it any more.


So it was on purpose, now the question is if we should revert that or keep it.

@B4nan

B4nan commented Oct 6, 2026

Copy link
Copy Markdown
Member Author

@janbuchar I'll merge this in, if we want to re-expose the browser pool, let's make it in a separate PR.

@B4nan
B4nan merged commit 9e8f9be into master Oct 6, 2026
10 checks passed
@B4nan
B4nan deleted the chore/unused-deps branch October 6, 2026 09:53
@janbuchar

Copy link
Copy Markdown
Contributor

@B4nan I was just contemplating this... Let's keep it hidden and see where that leads.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

adhoc Ad-hoc unplanned task added during the sprint. t-tooling Issues with this label are in the ownership of the tooling team. tested Temporary label used only programatically for some analytics.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants