[egenix-users] Installing our Python packages with pip 1.5
mal at egenix.com
Tue Jan 14 13:55:54 CET 2014
the latest pip 1.5 made it really annoying to install packages
which are not hosted on PyPI, but instead are made available on
other servers - at least using the default settings in pip.
In pip 1.4.2 and earlier, it was possible to install the packages
pip install egenix-mx-base
With pip 1.5, the only way to download eGenix packages via PyPI
indirection is to use e.g.
pip install --allow-all-external --allow-unverified egenix-mx-base egenix-mx-base
Until we come up with a better solution, there are two simple
ways to make this more elegant:
pip install -i https://downloads.egenix.com/python/index/ucs2/ egenix-mx-base
or, download the .tar.gz file from our website and point pip directly
at the .tar.gz file:
pip install egenix-mx-base-3.2.7.tar.gz
Note that setuptools 2.1's easy_install still works as expected.
You may ask, why we don't simply upload everything to PyPI. These
are the reasons:
* PyPI uses terms which we find problematic.
In particular the fact that users of PyPI receive the same
irrevocable rights to host the uploaded as the PSF does.
In case, we are ever forced to take down a package upload from
PyPI, this would be easy to do with the PSF, but tracking down
all user hosted versions would be next to impossible.
* It currently doesn't fit our release process.
We are uploading around 66 files to our servers for each package
release. For egenix-mx-base, that's around 300 MB worth of
Uploads are done with rsync to easily resume failed uploads
or to apply last minute fixes. This is not possible with PyPI.
The PyPI servers are located in Oregon, USA. Our servers are
located in Germany, so uploads are generally faster.
In summary, using PyPI would delay the release process considerably.
* Uploading to PyPI means putting the packages under US jurisdiction
Some of our packages include crypto code. We'd like to avoid
having to deal with US export regulations and instead just focus
on the more export-friendly German regulations.
We'll work on a solution to make things easier for our users,
but it'll take some time.
One option we're considering is uploading a network installer to
PyPI which then automatically determines the right to download
and passes this to pip for processing. This would also allow us
to work around the many issues with platform detection in
Professional Python Services directly from the Source (#1, Jan 14 2014)
>>> Python Projects, Consulting and Support ... http://www.egenix.com/
>>> mxODBC.Zope/Plone.Database.Adapter ... http://zope.egenix.com/
>>> mxODBC, mxDateTime, mxTextTools ... http://python.egenix.com/
::::: Try our mxODBC.Connect Python Database Interface for free ! ::::::
eGenix.com Software, Skills and Services GmbH Pastor-Loeh-Str.48
D-40764 Langenfeld, Germany. CEO Dipl.-Math. Marc-Andre Lemburg
Registered at Amtsgericht Duesseldorf: HRB 46611
More information about the egenix-users