Skip to content

Commit cd35cbe

Browse files
committed
Drop support for PyPy (refer to readme update for details)
1 parent 4f996c9 commit cd35cbe

File tree

4 files changed

+41
-11
lines changed

4 files changed

+41
-11
lines changed

.travis.yml

-4
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,3 @@
1-
# Note to self: PyPy is not included here because the installation of Bazaar
2-
# fails on Travis CI even though it works just fine on my local system?! (I'm
3-
# using PyPy from https://launchpad.net/~pypy/+archive/ubuntu/ppa)
4-
51
language: python
62
python:
73
- "2.6"

README.rst

+39-3
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,8 @@ vcs-repo-mgr: Version control repository manager
99

1010
The Python package `vcs-repo-mgr` provides a command line program and Python
1111
API to perform common operations (in the context of packaging/deployment) on
12-
`version control`_ repositories. It's currently tested on cPython 2.6, 2.7, 3.4
13-
and 3.5 and PyPy (2.7). Bazaar_, Mercurial_ and Git_ repositories are currently
14-
supported.
12+
`version control`_ repositories. It's currently tested on Python 2.6, 2.7, 3.4
13+
and 3.5. Bazaar_, Mercurial_ and Git_ repositories are supported.
1514

1615
.. contents::
1716
:local:
@@ -308,6 +307,43 @@ of these improvements, I'm just thinking out loud ;-).
308307
and Mercurial_ repositories. To be honest I'm not sure this is worth the
309308
effort, I find myself working with Bazaar repositories less and less.
310309
310+
Known issues
311+
------------
312+
313+
This section documents known issues that users may run into.
314+
315+
Problematic dependencies
316+
~~~~~~~~~~~~~~~~~~~~~~~~
317+
318+
Bazaar and Mercurial are both written in Python and available on PyPI and as
319+
such I included them in the installation requirements of `vcs-repo-mgr`,
320+
because I couldn't think of a good reason not to.
321+
322+
Adding support for Python 3 to `vcs-repo-mgr` made things more complicated
323+
because Bazaar and Mercurial didn't support Python 3, leading to installation
324+
errors. To cope with this problem the Bazaar and Mercurial requirements were
325+
made conditional on the Python version:
326+
327+
- On Python 2 the Bazaar and Mercurial packages would be installed together
328+
with `vcs-repo-mgr`.
329+
330+
- On Python 3 the user was instead responsible for making sure that Bazaar and
331+
Mercurial were installed (for example using system packages).
332+
333+
This works fine because `vcs-repo-mgr` only invokes Bazaar and Mercurial using
334+
the command line interfaces so it doesn't matter whether the version control
335+
system is using the same version of Python as `vcs-repo-mgr`.
336+
337+
Since then the installation of the Bazaar package has started failing on PyPy,
338+
unfortunately this time there is no reliable and backwards compatible way to
339+
make the Bazaar dependency optional in wheel distributions `due to bugs in
340+
setuptools <https://github.com/html5lib/html5lib-python/issues/231#issuecomment-224022399>`_.
341+
342+
When I investigated support for environment markers that match Python
343+
implementations (refer to the link above) I decided that instead of writing a
344+
setup script full of nasty and fragile hacks I'd rather just drop official
345+
(tested) support for PyPy, as silly as the reason for it may be.
346+
311347
Contact
312348
-------
313349

setup.py

+1-3
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
# Setup script for the `vcs-repo-mgr' package.
44
#
55
# Author: Peter Odding <peter@peterodding.com>
6-
# Last Change: August 4, 2016
6+
# Last Change: October 25, 2016
77
# URL: https://github.com/xolox/python-vcs-repo-mgr
88

99
"""
@@ -136,8 +136,6 @@ def have_environment_marker_support():
136136
'Programming Language :: Python :: 3',
137137
'Programming Language :: Python :: 3.4',
138138
'Programming Language :: Python :: 3.5',
139-
'Programming Language :: Python :: Implementation :: CPython',
140-
'Programming Language :: Python :: Implementation :: PyPy',
141139
'Topic :: Software Development :: Libraries :: Python Modules',
142140
'Topic :: Software Development :: Version Control',
143141
'Topic :: System :: Archiving :: Packaging',

tox.ini

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
# directory.
55

66
[tox]
7-
envlist = py26, py27, py34, py35, pypy
7+
envlist = py26, py27, py34, py35
88

99
[testenv]
1010
deps =

0 commit comments

Comments
 (0)