Closed benoit-pierre closed 7 years ago
Merging #16 into master will not change coverage. The diff coverage is
n/a
.
@@ Coverage Diff @@
## master #16 +/- ##
=======================================
Coverage 98.66% 98.66%
=======================================
Files 9 9
Lines 523 523
=======================================
Hits 516 516
Misses 7 7
Continue to review full report at Codecov.
Legend - Click here to learn more
Δ = absolute <relative> (impact)
,ø = not affected
,? = missing data
Powered by Codecov. Last update a0ba14f...e3cf54c. Read the comment docs.
Can you share with me the usage of "bdist_wheel" in your perspective? I am afraid I am not a user of wheels yet.
The http://pythonwheels.com/ site sums it up nicely:
Advantages of wheels:
- Faster installation for pure python and native C extension packages.
- Avoids arbitrary code execution for installation. (Avoids setup.py)
- Installation of a C extension does not require a compiler on Windows or macOS.
- Allows better caching for testing and continuous integration.
- Creates .pyc files as part of installation to ensure they match the python interpreter used.
- More consistent installs across platforms and machines.
For Plover we cache wheels of our dependencies to reduce build times on Travis CI/AppVeyor. We're also going to use setuptools' entrypoints for plugins, and pip to install those plugins, so avoiding 2 and 3 is pretty critical:
setup.py
for installing a package can mean a completely different set of dependencies needs to be installed (setup_requires
), and they're going to be handled by a completely separate mechanism: setuptools' easy_install, with no sharing if multiple packages need the same dependencies, and no use of wheels (not supported by easy_install) (so you'll compile Cython 3 times if you have 3 packages that depend on it during their setup phase)Thanks for the sharing. I am starting to distribute wheels now.
Default to creating an universal wheel.