conda-press
Press conda packages into wheels.
The wheels created by conda-press are usable in a general Python setting, i.e. outside of a conda managed environment.
Quick start
Run the conda press command and point it at either an artifact
file or spec. For example:
# from artifact spec, produces single wheel, including all non-Python requirements
$ conda press --subdir linux-64 --skip-python --fatten scikit-image=0.15.0=py37hb3f55d8_2
# from artifact file, produces a single wheel
$ conda press numpy-1.14.6-py36he5ce36f_1201.tar.bz2
# from artifact spec, produces wheels for package and all requirements
$ conda press --subdir linux-64 xz=5.2.4=h14c3975_1001
# merge many wheels into a single wheel
$ conda press --merge *.whl --output scikit_image-0.15.0-2_py37hb3f55d8-cp37-cp37m-linux_x86_64.whl
What we are solving
conda-press allows us to build out a pip-usable package index which is ABI compatible with conda packages. This can help address the following issues / workflows:
Issue 1:
It can be very difficult to build wheels for packages that have C extensions. Also, the provenance of wheels with C extentions can be hard to know (who built it, how it was built, etc.). Conda-press enables community building of wheels, based on conda-forge provided packages. This should make it very easy to build a valid wheel.
Issue 2:
Many packages with compiled extensions do not have wheels available on one or more popular platforms (Windows, Mac, Linux). This is because building wheels can be very difficult. Conda has a lot of packages that are not available as wheels otherwise. Conda-press allows these packages to easily become generally usable wheels.
Issue 3: Some people want a package index built on newer ABIs than manylinux<N>
How to install
From conda:
conda install -c conda-forge conda-press
From the source code:
$ pip install --no-deps .
More technical details about what we are doing
What conda-press does is take an artifact or spec, and turn it into wheel(s). When using pip to install such a wheel, it shoves the root level of the artifact into site-packages. It then provides wrapper / proxy scripts that point to site-packages/bin so that you may run executables and scripts.
How to get involved
Please feel free to open up a PR or open an issue!
Metadata
Release files for conda-press 0.0.6
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| conda-press-0.0.6.tar.gz | 20.6 kB | Details |
Release files / conda-press-0.0.6.tar.gz
| Download URL | conda-press-0.0.6.tar.gz |
|---|---|
| Size | 20.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
ccbbc5251eb0d7da26644ee72470c84ed3671e5bc839353fdea53eabaacee7c4
|
|
BLAKE2b-256 checksum How to use checksums |
38620b73fb7264fb07ce3998549c85e44080da632c4f0d69e9f62803f0fac67b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.6.0.post20191101 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.7.3
|