Comments (4)
Hi Michele and thanks for the feedback! During the development of the first prototype of pip-accel
we did play around with wheels for a day or two, because they seemed like the ideal solution. Unfortunately I think binary distributions are currently better suited because:
- The last time I checked wheels were only supported by a
pip
beta release; - IIRC wheels as implemented by pip bundle all dependencies which does not match my use case (it's the wrong granularity level). I could process the wheels to split things up again, but before it comes to that I would simply go with binary distributions because they're supported everywhere.
If things mature a bit and there is a way around issue 2 I could see pip-accel
using wheels in the future.
from pip-accel.
AFAIK wheels are a binary distribution.
- I think that the situation is the same (I don't know exactly what progress is being made on the pip front). Here however: http://www.pip-installer.org/en/wheel/usage.html it seems that wheel-related commands will be included in the next major pip version (1.4).
- Every wheel contains a single package and are more similar to the setuptools eggs than to pip bundles. Dependencies are not included and you have one wheel per package, which means dependencies will get each one a separated wheel. This makes things faster (e.g. when you don't want to download deps, &c.).
from pip-accel.
Of course, you're right, wheels are a binary distribution! With binary distribution I was specifically referring to the archive format created by python setup.py bdist_dumb
but that was very implicit indeed. About every wheel containing a single package: That's good to hear, I guess I was confusing wheels and bundles.
It seems like in the future wheels can completely replace binary distribution archives created with bdist_dumb
so I think I will prepare pip-accel
to add support for wheels, make it optional, collect as much feedback as possible and then change the default binary distribution format to wheels, at which point I should be able to remove the nasty preprocessing of binary distribution archives created with bdist_dumb
:-)
By the way, if features like this are accepted into mainline pip I wonder if there remains a place for pip-accel
at all... Oh well, as long as we get reproducible environments that are fast to create I don't care (that much) which tool is used to do it.
from pip-accel.
pip now uses wheels by default, perhaps we don't need this anymore?
from pip-accel.
Related Issues (20)
- pip-accel not updating package HOT 3
- Doesn't work with pip 7+ HOT 2
- Add option for terse logging. HOT 5
- Windows / Appveyor - same version of cached file - invalidated and built again HOT 5
- is_wheel fails when source_directory is None HOT 6
- Not able to use pip-accel both globally and inside a virtual environment HOT 4
- Support custom pip command HOT 7
- Upgrade to pip 8 HOT 4
- Disabling S3CacheBackend because it failed HOT 2
- pip-accel does not support running as a module HOT 6
- Is there any way to use pip-accel without installing to virtualenv?
- pip-accel is not compatible with `-e` editable installs of packages that use `setuptools_scm` HOT 2
- Why does `pip-accel` make an sdist (?) archive when I `pip-accel install -e .`? HOT 3
- pip-accel doesn't support the newest pip? HOT 4
- Not compatible with alternative install locations, e.g. `--user`? HOT 2
- [need advice] Do not cache development versions
- Failed to install some packages
- pip-accel should honor settings in pip.conf
- Is this project still alive? HOT 2
- Trying to install pip-accel, it insists on downgrading pip to 2.7. How can I get it to respect the current version, 21.1.2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from pip-accel.