1
1
Fork 0
mirror of https://github.com/pypa/pip synced 2023-12-13 21:30:23 +01:00
Commit graph

85 commits

Author SHA1 Message Date
Donald Stufft
cc7f416378 Merge pull request #3037 from ianw/no-reset-platlib
Don't reset purelib/platlib when install-dir not set
2015-08-19 17:27:21 -04:00
Ian Wienand
d871bcd1bb Don't reset purelib/platlib when install-dir not set
Change 3affcaa2b8 attempts to reset
purelib & platlib to any "install-dir" specified by the user in
setup.cfg.  This code is used when we are installing wheels.

The problem with this is that distutils is *always* setting
"i.install_lib" -- even when the user specifies nothing.  This has the
result of unconditionally setting purelib == platlib.

On some systems this results in .so's from the wheel getting installed
into /usr/lib/python2.7 (purelib) rather than /usr/lib64/python
(platlib).  Because distribution-packaged libraries have installed
their .so into platlib, we can now have a situation where the new
pip-installed library is picking up an old .so from the distro package
... with predictably bad results.

This takes the approach of checking the configuration to see if the
user has overridden install-dir and only resetting the paths if they
have.  The override case is covered by existing test-cases.

Closes #2940
2015-08-19 14:56:53 +10:00
James Polley
b227c45a7b Ignore distutils prefix when using --user
Fixes bug #2683

There are two changes here; one to fix the using-wheels codepath and one
to fix the no-wheels codepath. Two tests are introduced, one to test
each codepath.
2015-06-26 19:08:45 +10:00
Donald Stufft
7288475118 We no longer need to handle a static build directory 2015-04-07 04:20:51 -04:00
Ionel Cristian Mărieș
ae41fe2866 Fix import so exception module is accesible. With the previous import pip module wouldn't have any exceptions attribute as it's __init__ doesn't actually import it. Fixes the confusing error message from #2067. 2014-12-22 16:53:16 -05:00
Donald Stufft
5b817f960b --isolated should isolate from ~/.pydistutils.cfg as well 2014-12-11 11:51:06 -05:00
Xavier Fernandez
b713e96df2 cleanup: use "with open()" to open files 2014-10-18 20:41:18 +02:00
Donald Stufft
f63d1e3abb Implement platform specific user config locations 2014-09-10 11:43:34 -04:00
Donald Stufft
8e0ec8d293 Move appdirs from pip.appdirs to pip.utils.appdirs 2014-09-10 10:40:22 -04:00
Donald Stufft
767d11e49c Switch to using the stdlib logger instead of pip.log 2014-09-10 09:36:09 -04:00
Donald Stufft
89fc318113 Merge pull request #1897 from paweljasinski/ironpython
detect windows when running under IronPython
2014-08-30 13:48:45 -04:00
Matthew Einhorn
4baca82181 Replaces spaces in username.
Conflicts:
	pip/locations.py
2014-08-29 21:12:04 -04:00
Richard Jones
aedca3c842 Implement site-wide configuration settings
* add site_config_dirs() to appdirs to determine locations across OSes
* add system_config_files to locations.py
* add system_config_files to get_config_files() and re-order files entries to correct precedence
* document changes to configuration files in user guide

Closes #309
2014-08-22 14:26:41 +10:00
Pawel Jasinski
6e1abb91aa detect windows when running under IronPython 2014-08-12 02:26:24 +02:00
Donald Stufft
4a8173c4ed Fix #1680 - Use System SSL Certificates if Available 2014-06-12 23:10:00 -04:00
Matthew Iversen
dcb0ee0702 Move backwardcompat package to compat module 2014-05-14 13:10:06 +10:00
Donald Stufft
52ca02608e Use CacheControl instead of custom cache code
* Deprecates the --download-cache option & removes the download
  cache code.
* Removes the in memory page cache on the index
* Uses CacheControl to cache all cacheable HTTP requests to the
  filesystem.
  * Properly handles CacheControl headers for unconditional
    caching.
  * Will use ETag and Last-Modified headers to attempt to do a
    conditional HTTP request to speed up cache misses and turn
    them into cache hits.
  * Removes some concurrency unsafe code in the download cache
    accesses.
  * Uses a Cache-Control request header to limit the maximum
    length of time a cache is valid for.
* Adds pip.appdirs to handle platform specific application
  directories such as cache, config, data, etc.
2014-05-09 18:28:20 -04:00
Matthew Iversen
5d30c43fff Add back user_site for locations and util 2014-04-16 07:59:56 +10:00
Matthew Iversen
bcc1a4018c Move site.USER_SITE and sysconfig out of backwardcompat
2.6 always has these now :D
2014-04-16 06:13:08 +10:00
Donald Stufft
5a76a47d3b Fix code to handle the latest flake8 2014-03-26 18:24:19 -04:00
schlamar
3affcaa2b8 install_lib should take precedence when reading distutils config. 2014-03-13 20:19:26 +01:00
Donald Stufft
95035fc5c4 Turn on everything in flake8
flake8 ignores some errors by default, these ignored by defaults
change sometimes. This will make things stabler by selecting
everything.
2014-02-24 16:52:23 -05:00
Donald Stufft
2743768b7b Fix the style of the code base to better match pep8 2014-01-27 14:11:29 -05:00
Donald Stufft
e68986c734 Find the virtual environments created by Python3.3 2013-12-19 23:42:32 -05:00
Marcus Smith
f53befcd99 merge from 1.5.X 2013-12-08 15:24:42 -08:00
Paul Moore
884861f390 Added a virtualenv-specific configuration file 2013-12-04 13:04:54 +00:00
Marcus Smith
861023bc0d uninstalling --user dists should leave global scripts alone 2013-11-29 17:08:43 -08:00
Marcus Smith
1d1aaa9058 fix for certain platforms/versions not having os.O_NOFOLLOW 2013-11-24 15:26:22 -08:00
Marcus Smith
ab21c1de32 pip.locations.distutils_scheme should read distutils config files 2013-11-04 23:40:26 -08:00
Donald Stufft
00c11deb25 Ensure that --root continues to work with Wheels 2013-10-31 08:49:23 -04:00
Donald Stufft
97507f8931 Make Wheel respect --root 2013-10-30 08:19:39 -04:00
Donald Stufft
ff2854a855 Use requests instead of urllib2 2013-09-24 23:32:03 -04:00
Marcus Smith
1afdc665ae don't override distutils scripts location using pip's legacy logic 2013-08-31 15:28:44 -07:00
Marcus Smith
a3109c17c6 changing global build dir name; see https://github.com/pypa/pip/issues/1078#issuecomment-21469936 2013-07-24 01:25:59 -07:00
david
267c79df2e Fix #982 by using the effective user id on unix systems instead of depending on
getpass.getuser(). This is required because on some systems 'LOGNAME'
is not updated by sudo.
Signed-off-by: david <db@d1b.org>
2013-06-15 13:17:45 +10:00
Marcus Smith
66d8e7b8c7 write pip delete marker into global build dir upon creation 2013-05-18 18:05:25 -07:00
Marcus Smith
6e2bfe8323 remove python 2.5 logic 2013-04-17 22:50:22 -07:00
Marcus Smith
00fa9bea96 merge with develop 2013-03-15 23:46:46 -07:00
Marcus Smith
0ed73a03c5 os.path.realpath for build_prefix globally and in virtualenvs 2013-02-21 21:36:26 -08:00
Marcus Smith
84964064a3 --cert-path and --no-ssl options 2013-02-06 23:27:53 -08:00
Marcus Smith
7e20fd83a2 move cert_path to locations module 2013-02-06 00:55:17 -08:00
Marcus Smith
cabd1d5f80 merge with pypa/pip/develop 2013-02-02 22:40:30 -08:00
David
dc3a359671 In the os.open call to get the fd to check if the user specific build directory
is in fact owned by another user - add the os.O_NOFOLLOW flag to not follow symbolic links.

Signed-off-by: David <db@d1b.org>
2013-01-25 23:12:24 +11:00
David
61c444e491 Update the code _get_build_prefix to raise an exception instead of sys.exit()'ing and also document that on windows user temp directories are already isolated.
Signed-off-by: David <db@d1b.org>
2013-01-25 23:12:24 +11:00
David
e7bf29e239 Clean up the _get_build_prefix code - close the open fd and print the error message if the fd could not be opened (denied).
Signed-off-by: David <db@d1b.org>
2013-01-25 23:12:23 +11:00
David
eeaa64d25d Fix #725 and #729.
Signed-off-by: David <db@d1b.org>
2013-01-25 23:12:23 +11:00
Marcus Smith
e76ae0821c using realpath since tmp dirs on OSX can be symlinks 2013-01-15 23:18:23 -08:00
Marcus Smith
1ea772f51d revert xdg compliance 2012-12-27 09:51:14 -08:00
Marcus Smith
6bbf963fc6 no need to override purelib/platlib in virtualenvs 2012-11-15 20:23:21 -08:00
Marcus Smith
fa1b104266 no user scheme until python 2.6 2012-11-14 17:33:16 -08:00