Metadata-Version: 2.4
Name: no_manylinux
Version: 2.0.0
Summary: Install this package to disable manylinux wheels when dowloading from pip.
Home-page: https://github.com/asottile/no-manylinux
Author: Anthony Sottile
Author-email: asottile@umich.edu
License: MIT
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Programming Language :: Python :: Implementation :: PyPy
Requires-Python: !=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,>=2.7
Description-Content-Type: text/markdown
License-File: LICENSE
Dynamic: license-file

[![Build Status](https://travis-ci.org/asottile/no-manylinux.svg?branch=master)](https://travis-ci.org/asottile/no-manylinux)

no-manylinux
============

Install this package to disable manylinux wheels when downloading from pip.

## Usage

```
# First install no-manylinux
pip install no-manylinux
# Now subsequent invocations of pip will ignore manylinux wheels
pip install ...
# To restore the original behaviour, simply `pip uninstall no-manylinux`
```

## Note

This package was previously called `no-manylinux1` but now addresses the
following manylinux standards:

- `manylinux1`
- `manylinux2010`
- `manylinux2014`

## What? Why?

The manylinux spec requires compliant packages to vendor binary dependencies
inside the wheel that is distributed.  Take for example a library which would
(prior to manylinux) dynamically link against `libssl`.  As `libssl` received
security patches, the system binaries would received updates from the OS's
package manager.  The python library which dynamically links would receive
these updates for free without need to recompile, reinstall, etc.  Under
manylinux, `libssl` is vendored inside the wheel.  To receive security
updates, you have to wait for the upstream to produce a new wheel and need to
know to install a new version of that library.  There's almost no visibility
about these vendored wheels which makes managing them at scale impossible.  As
such, some may choose to ignore this standard.

## Links

- https://stackoverflow.com/q/37231799/812183
- https://github.com/pypa/pip/issues/3689
- https://github.com/pypa/pip/issues/3689#issuecomment-219437150
