-
Notifications
You must be signed in to change notification settings - Fork 365
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Optimize package footprint by removing unnecessary deps #1077
Comments
Removable
Not removable
|
Btw. I used sorted containers here: even though it is not explicitly mentioned in the requirements (due to |
Please add it to the dependencies, you never know when transitive dependencies will change 🙂 |
Here it goes #1083 |
Description
The current installation of the Crawlee package, when combined with all its direct and transitive dependencies, occupies ~75 MB. For context, Scrapy occupies ~88.4 MB.
The large size is primarily due to several dependencies that may not be strictly necessary for the core functionality. Below is a detailed breakdown of the dependency tree, individual package sizes, and the summed sizes of Crawlee's direct dependencies.
Dependency tree
Package sizes
Extracted via:
Total size per direct dependency
httpx[brotli, http2, zstd]
: 32.732Mpydantic‑settings
: 6.944Mpydantic
: 6.756Mrich
: 6.412Myarl
: 2.692Mdocutils:
2.4Mtldextract:
2.260Mpsutil:
1.0Mapify‑fingerprint‑datapoints
: 836Kbrowserforge
: 488Kmore‑itertools
: 228Kpyee
: 184Ksortedcollections
: 152Ktyping‑extensions
: 132Kcolorama
: 80Kcachetools
: 36Keval‑type‑backport
: 16KGoal
The goal is to identify and potentially remove or replace dependencies that contribute significantly to the overall package size without compromising its functionality.
The text was updated successfully, but these errors were encountered: