Hi all,
Florian Schulze just released several devpi package maintenance updates
to PyPI, see the changelogs below for details. Upgrading is considered
safe and does not require an export/import cycle on the server side.
Note that the "devpi" metapackage is discontinued, please rather use::
pip install devpi-server devpi-client
if you want to install both server and client. You can also install
devpi-web if you want more web UI including search.
Docs for devpi are here, including quickstart tutorials :
http://doc.devpi.net
have fun,
holger
devpi-client-2.0.5
------------------
- fix issue209: argument default handling changed in argparse in Python 2.7.9.
- fix issue163: use PIP_CONFIG_FILE environment variable if set.
- fix issue191: provide return code !=0 for failures during push
devpi-server-2.1.4
------------------
- fix issue214: the whitelisting code stopped inheritance too early.
- fix regression: easy_install went to the full simple project list for a
non existing project.
- When uploading an existing version to a non-volatile index, it's now a
no op instead of an error if the content is identical. If the content is
different, it's still an error.
- Uploading documentation to non-volatile indexes is now protected the same
way as packages.
- added code to allow filtering on packages with stable version numbers.
- Change nginx template to set the X-outside-url header based on the
requested URL. This makes it possible to connect by IP address when
the server name is not in DNS.
devpi-web-2.2.3
---------------
- fix issue207: added documentation url for latest stable release of a package.
devpi-common-2.0.5
------------------
- added code to allow filtering on stable version numbers.
Hi
I'm trying to replace our existing PyPi style server with DevPi.
I am trying to upload using setuptools but I get an error. Is DevPi
supposed to support a setuptools upload or should I be using devpi for this?
The command:
python setup.py egg_info --tag-build=-r100 bdist_egg --exclude-source-files
upload -r pypi
Where pypi points to the devpi repo in our .pypirc
And the error:
Submitting dist/libutil-1.0.post1-py2.7.egg to
http://pypiregistry.company:81/company/dev/
Upload failed (400): no project named u'libutil' was ever registered
Is there a way to have projects "automatically" register?
Thanks
Andy
Hi
I'm having trouble using pypi_whitelist on devpi-server 2.1.3, and I'm not
even sure that I'm using it correctly.
I have a local devpi server at http://pypi, with several indexes on it.
root/pypi is a mirror of https://pypi.python.org/ and root/prod is the
production server for my company. root/prod inherits from root/pypi, as
well storing our internally developed Python apps and libraries.
root/prod also stores pre-compiled Wheels for Windows packages where they
are not available on the main PyPI repository (usually sourced from here:
http://www.lfd.uci.edu/~gohlke/pythonlibs/), as I can't rely on C compilers
being available on target Windows machines. On Linux, I can expect C
compilers to be present, so I'm happy to install from the .tar.gz file
available on PyPI.
We run a mixed Windows and Linux environment, and I'd like to be able to
install from devpi using the same interface: pip install --index-url
http://pypi/root/prod --use-wheel <package-name>
I have a problem however, in situations where root/prod holds a Windows
Wheel, but not corresponding Linux package, I can't install that package on
Linux.
For example:
root/prod/+simple:
root/prod mercurial-3.2.4-cp27-none-win_amd64.whl
root/prod mercurial-3.2.4-cp27-none-win32.whl
root/pypi/+simple:
root/pypi mercurial-3.3.tar.gz
root/pypi mercurial-3.2.4.tar.gz
root/pypi mercurial-3.2.3.tar.gz
On Windows, this works as I would like:
PS C:\Users\blaffoy\> pip install --index-url http://pypi/root/prod --use-wheel
mercurial
Collecting mercurial
Downloading
http://pypi/root/prod/+f/4a5/c7c65b8e4c6f3/mercurial-3.2.4-cp27-none-win32.…
(1.1MB)
100% |################################| 1.1MB 13.7MB/s ta 0:00:01
Installing collected packages: mercurial
Successfully installed mercurial-3.2.4
However, on Linux:
blaffoy@ubuntu2:~$ sudo pip install --index-url http://pypi/root/prod
--use-wheel mercurial
Downloading/unpacking mercurial
Could not find any downloads that satisfy the requirement mercurial
Cleaning up...
No distributions at all found for mercurial
Storing debug log for failure in /home/blaffoy/.pip/pip.log
With the following in pip.log:
------------------------------------------------------------
/usr/local/bin/pip run on Tue Feb 3 09:43:01 2015
Downloading/unpacking mercurial
Getting page http://pypi/root/prod/mercurial/
URLs to search for versions for mercurial:
* http://pypi/root/prod/mercurial/http://pypi/root/prod/mercurial/ uses an insecure transport scheme
(http). Consider using https if pypi has it available
Analyzing links from page http://pypi/root/prod/+simple/Mercurial
Skipping
http://pypi/root/prod/+f/1c9/46e79eba3324c/mercurial-3.2.4-cp27-none-win_am…
(from http://pypi/root/prod/+simple/Mercurial) because it is not compatible
with this Python
Skipping
http://pypi/root/prod/+f/4a5/c7c65b8e4c6f3/mercurial-3.2.4-cp27-none-win32.…
(from http://pypi/root/prod/+simple/Mercurial) because it is not compatible
with this Python
Could not find any downloads that satisfy the requirement mercurial
Cleaning up...
Removing temporary dir /tmp/pip_build_root...
No distributions at all found for mercurial
Exception information:
Traceback (most recent call last):
File
"/usr/local/lib/python2.7/dist-packages/pip-1.5.6-py2.7.egg/pip/basecommand.py",
line 122, in main
status = self.run(options, args)
File
"/usr/local/lib/python2.7/dist-packages/pip-1.5.6-py2.7.egg/pip/commands/install.py",
line 278, in run
requirement_set.prepare_files(finder, force_root_egg_info=self.bundle,
bundle=self.bundle)
File
"/usr/local/lib/python2.7/dist-packages/pip-1.5.6-py2.7.egg/pip/req.py",
line 1177, in prepare_files
url = finder.find_requirement(req_to_install, upgrade=self.upgrade)
File
"/usr/local/lib/python2.7/dist-packages/pip-1.5.6-py2.7.egg/pip/index.py",
line 277, in find_requirement
raise DistributionNotFound('No distributions at all found for %s' % req)
DistributionNotFound: No distributions at all found for mercurial
So, pip looks for mercurial under root/prod, finds two packages but
identifies that neither of them are for this OS. At that point, pip gives
up, but what I would like to have happen is for the Linux compatible
root/pypi packages to appear alongside the Windows packages on root/prod.
If I've understood the documentation (and I probably haven't), this
scenario is what the pypi_whitelist option exists to address. But, I see
this issue even when I have `mercurial` in the pypi_whitelist of root/prod:
PS C:\Users\blaffoy\> devpi index
http://pypi/root/prod:
type=stage
bases=root/pypi
volatile=False
uploadtrigger_jenkins=None
acl_upload=blaffoy
pypi_whitelist=wheel,setuptools,pip,hgtools,tornado,apscheduler,mercurial
Have I misunderstood what pypi_whitelist is for, and if so, is there any
way to achieve the behaviour I'm looking for?
Thanks for any help
Barry