Commit Graph

36 Commits

Author SHA1 Message Date
Florian Bruhin
7580473a43 Install pip by hand in virtualenv on Debian.
It seems Debian/Ubuntu don't have the ensurepip module, so Python's venv will
fail unless started with --without-pip and us installing pip by hand via
get-pip.py :(

Related bugs:

    https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=772730
    https://bugs.launchpad.net/ubuntu/+source/python3.4/+bug/1290847

See #463.
2015-01-23 14:30:14 +01:00
Florian Bruhin
2201ca600b Fix long lines in init_venv.py.
See #463.
2015-01-23 14:14:30 +01:00
Florian Bruhin
6f1facac60 Also get rid of system_site_packages on Windows.
We can't symlink, so we copy the files instead.
2015-01-23 13:47:27 +01:00
Florian Bruhin
b2646cb5c0 Check if venv already exists.
According to the documentation, Python should do that already:

    If the target directory already exists an error will be raised, unless the
    --clear or --upgrade option was provided.

However that doesn't seem to be the case: http://bugs.python.org/issue23202

We do this by hand to make sure the user doesn't accidentally overwrite
something.

See #463.
2015-01-23 13:23:33 +01:00
Florian Bruhin
b8c54b5f02 Don't use system_site_packages on non-Windows.
See #463.
2015-01-23 13:17:39 +01:00
Florian Bruhin
907440d12c Simplify option handling in create_venv().
See #463.
2015-01-23 13:17:18 +01:00
Florian Bruhin
2264b55e92 Simplify create_venv().
See #463.
2015-01-23 13:16:53 +01:00
Florian Bruhin
816fcf3a6c Fix whitespace at EOL.
See #463.
2015-01-23 13:15:50 +01:00
Patric Schmitz
2404c75012 Use venv API for building the venv instead of calling pyvenv 2015-01-23 13:15:27 +01:00
Patric Schmitz
7813d9a93d Add hidden --force option for backwards compatibility with existing scripts 2015-01-23 13:15:23 +01:00
Patric Schmitz
4eefc53ed0 Change init_venv to use python 3.x venv
--force was replaced in favor of --clear and --upgrade which
correspond to the respective pyvenv options. The pyvenv help is
not explicit on the behavior if --clear is not given but the path
exists. https://docs.python.org/3/library/venv.html states pyvenv
would fail in that case, but it does not with Python 3.4.2, which
I don't consider a problem however.
Added a newline here and there for better readability.
2015-01-23 13:15:18 +01:00
Florian Bruhin
f6d0907736 init_venv: Pass --upgrade to pip install.
On Windows, --system-site-packages is enabled, so pip didn't upgrade pylint
from the system-wide version as it was already installed.
2015-01-22 13:37:58 +01:00
Florian Bruhin
2a72d290a7 Revert "init_venv: Pass --no-clean to pip on Windows."
This reverts commit 28fe84944c.

It didn't really help and it's deprecated (and un-deprecated?!) in the recent
pip.
2015-01-22 10:44:03 +01:00
Florian Bruhin
2e45c2c063 Stop pinning pylint/astroid to 1.3.1/1.2.1. 2015-01-21 00:00:51 +01:00
Florian Bruhin
ddc4e7b309 Unset __PYVENV_LAUNCHER__ to fix init_venv on OS X.
For some weird reason, pip installed logilab.common into /usr/local when
launching it via subprocess, because __PYVENV_LAUNCHER__ was set...
2015-01-18 00:05:08 +01:00
Florian Bruhin
3ff28027de Make init_venv.py work with multiple sip .so files.
On my Debian jessie there's a sip.cpython-34m-x86_64-linux-gnu.so and a
sip.cpython-34dm-x86_64-linux-gnu.so.
2015-01-06 11:26:40 +01:00
Florian Bruhin
450d1ab70d Update copyright years 2015-01-03 15:51:31 +01:00
Florian Bruhin
5e4f3ed7c5 Revert "Use python -m to call virtualenv in init_venv."
This reverts commit 40781b163e.

Some platforms (e.g. Ubuntu Trusty) don't have a python3-virtualenv, so we
should instead adjust the documentation to use the python2 one.
2014-12-16 22:04:46 +01:00
Florian Bruhin
40781b163e Use python -m to call virtualenv in init_venv.
It seems python3-virtualenv on Debian Jessie doesn't contain
/usr/bin/virtualenv.
2014-12-16 17:24:00 +01:00
Florian Bruhin
28fe84944c init_venv: Pass --no-clean to pip on Windows.
Windows likes to fail deleting files for no reason, so we avoid deleting
stuff to avoid bogus build failures...
2014-12-09 22:01:19 +01:00
Florian Bruhin
f355ee6282 Don't depend on cx_Freeze for tests. 2014-12-05 12:55:20 +01:00
Florian Bruhin
58b5d97d2c init_venv: Fix beautifulsoup4 package name. 2014-12-05 12:50:57 +01:00
Florian Bruhin
653fbe81d0 pylint: Ignore distutils ImportError.
See https://bitbucket.org/logilab/pylint/issue/73/
2014-12-05 12:46:57 +01:00
Florian Bruhin
0cc95edce5 init_venv: Add more dev modules. 2014-12-05 12:46:39 +01:00
Florian Bruhin
84b22c3b93 init_venv: Check dev packages only with --dev 2014-12-05 12:10:59 +01:00
Florian Bruhin
1644bc47e3 init_venv: Use --system-site-packages on Windows. 2014-12-05 11:52:23 +01:00
Florian Bruhin
767d42009f init_venv: pin astroid version 2014-12-05 11:52:08 +01:00
Florian Bruhin
cda848855a init_venv: Change sip glob to include .pyd 2014-12-05 08:53:06 +01:00
Florian Bruhin
b209be5739 init_venv: Test all installed packages 2014-12-05 07:08:56 +01:00
Florian Bruhin
284516dfb7 init_venv: Don't check for pylint without --dev 2014-12-05 06:56:15 +01:00
Florian Bruhin
ee6e7d73e2 Fix sip globbing for real 2014-12-05 06:53:56 +01:00
Florian Bruhin
1dcf3ad885 init_venv: Use sys.executable for venv_python 2014-12-05 06:45:20 +01:00
Florian Bruhin
c89f0c339f init_venv: Add missing glob import 2014-12-05 06:40:36 +01:00
Florian Bruhin
ea9c1de2ba init_venv: Check if file exists before symlinking. 2014-12-05 06:38:32 +01:00
Florian Bruhin
1c22b9613b init_venv: Add glob for sip.so. 2014-12-05 06:38:22 +01:00
Florian Bruhin
a5da6dddc0 Add init_venv, script to initialize a virtualenv. 2014-12-04 21:35:40 +01:00