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

175 commits

Author SHA1 Message Date
Nick Coghlan 682cff7230 Fix #6163: Default to setuptools.build_meta:__legacy__
The main setuptools PEP 517 backend is intended for
explicit usage in `pyproject.toml`, when the project
authors can ensure that their `setup.py` runs without
that directory being implicitly on `sys.path`.

For implicit usage, setuptools now offers a separate
legacy backend that more closely mimics direct
execution of the `setup.py` script.
2019-02-06 20:57:57 +10:00
Chris Jerdonek d619aba150 Provide a better error message for a pyproject.toml editable install.
The message looks like this:

  File "setup.py" not found. Directory cannot be installed in editable
  mode: <absolute-dir-path>
  (A "pyproject.toml" file was found, but editable mode currently
  requires a setup.py based build.)
2019-01-26 07:00:22 -08:00
Xavier Fernandez 5e573df69c Add deprecate_python fixture to easily deprecate python versions
pip usually emits a warning and tests have to be adapted
2019-01-12 21:50:40 +01:00
Benoit Pierre 689f97c4ed fix failing tests 2018-10-29 23:33:21 +01:00
Paul Moore c0ed4381a6 Fix for test_install_no_binary_disables_building_wheels 2018-10-29 23:32:13 +01:00
Paul Moore a82b7ce5e7 Fix test_pep518_with_user_pip which was getting errors due to irrelevant changes in setuptools output 2018-10-29 23:32:13 +01:00
Paul Moore ab3e21635a Add a news file 2018-10-29 23:32:13 +01:00
Paul Moore 48e9cb693f Address test failures 2018-10-29 23:32:13 +01:00
Paul Moore 4de2915113 Update required setuptools version for PEP 517 2018-10-29 23:32:03 +01:00
Benoit Pierre 744b8cf96e improve build environment
- check build requirements for conflicts
- better isolation (ignore system site packages)
- support 2 prefixes: a "normal" one, and an "overlay" one
  (with higher priority over "normal")
2018-10-29 23:17:51 +01:00
Pradyun Gedam b47b2fa8e6
Merge pull request #5841 from benoit-pierre/fix_python_src/pip
fix support for invoking pip using `python src/pip ...`
2018-10-28 12:35:53 +00:00
Benoit Pierre add3801163 tests: rework tests virtual environment
- cleanup virtualenv creation code
- ensure all testing virtual environments use a recent version
  of setuptools / wheel, making it easier to switch to custom
  versions of those, as well as reducing network accesses
- reduce size of testing virtual environment, slightly speeding
  up the testsuite
2018-10-18 23:28:37 +02:00
Benoit Pierre 83b879b1ec Improve PEP 518 build isolation (#5824)
Handle .pth files, so namespace packages are correctly supported under Python 3.2 and earlier, and more.
2018-10-16 12:04:28 +05:30
Benoit Pierre 0a58159571 drop workaround for Python<=2.5 2018-10-07 14:26:34 +02:00
Benoit Pierre 464b2f30a8 fix support for invoking pip using python src/pip ...
Ensure the subprocess call to pip for installing the PEP 518
build dependencies is using the same version of pip.
2018-10-02 12:15:03 +02:00
Jon Dufresne 8136b410f7 Correct capitalization of PyPI
As spelled on https://pypi.org/.
2018-09-16 15:30:52 -07:00
Loren Carvalho cddcb1407f Open up plat/abi/impl options to install --target
* Move dist restriction options to be re-usable (between install/download)
* Make dist restriction options usable in `install` (exclusively with --target)
* Add a check_supported_wheels bool to RequiriementSet for non-resolved (full path) dependencies
2018-08-05 16:13:20 -05:00
Paul Moore dcc90c0e49 Fix test that expected a specific error message 2018-07-31 16:21:19 +01:00
Pradyun Gedam 1694a5f1bf
Move status_codes to pip._internal.cli 2018-07-30 09:43:53 +05:30
Pradyun Gedam 531be4f886
Merge pull request #5571 from bstrdsmkr/pep508_urls_as_deps
Allow PEP508 url dependencies in install_requires
2018-07-23 15:13:42 +05:30
Pradyun Gedam 9a076e73ab
Add test for rejecting pyproject.toml with empty build-system table 2018-07-21 16:23:59 +05:30
Pradyun Gedam c18f19a6a4
Don't warn if pyproject.toml does not contain build-system.requires 2018-07-21 12:58:27 +05:30
Pradyun Gedam 0bd01d9462
Merge pull request #5336 from benoit-pierre/src_build_reqs_in_pep518
PEP 518: enable source installs for build dependencies
2018-07-20 09:36:52 +05:30
Bstrdsmkr c71ac73102 Allow PEP508 url dependencies in install_requires 2018-07-11 08:23:49 -04:00
Pradyun Gedam e3b06f9e51
Isolate when pyproject.toml does not have build-system.requires 2018-07-09 07:48:36 +05:30
Benoit Pierre 06fb565f0c tests: drop package4 test data
No need for a wheel of `simple` now that build dependencies support source installs.
2018-06-26 10:40:23 +02:00
Benoit Pierre 43b8ed4945 detect fork-bombs during build dependencies installs 2018-06-26 10:40:23 +02:00
Pradyun Gedam 2b68c7983e
Only disable isolation when build-system.requires is skipped 2018-06-19 16:27:07 +05:30
Pradyun Gedam fdd5101128
Cleanup Tests 2018-06-19 16:27:07 +05:30
Pradyun Gedam a25cb53d02
Add tests to verify refusal of non PEP 518 compliant pyproject.toml 2018-06-19 16:27:07 +05:30
Pradyun Gedam 8cfed25602
Use python -m for pip modifying test 2018-05-30 15:57:48 +05:30
Benoit Pierre ca4e2ad6ad improve handling of PEP 518 build requirements
Offload more work to the underlying pip command used to install the
build requirements, so there's no need to duplicate code to handle
environment markers/extras. This is done by setting the correct options
from the finder passed in argument to `_install_build_reqs`.
2018-05-18 23:45:55 +02:00
Benoit Pierre 04874e24fd tests: improve PEP 518 tests
- avoid hitting the index: use `common_wheels`/`script.pip_install_local`
- use `script.pip(..., use_module=True)` to simplify some tests
- improve `test_pep518_uses_build_env` parametrization
- simplify `test_pep518_with_user_pip`: we only need to check build
  requirements can be installed, so no need for testing with both
  `install` and `wheel` command
- fix `test_pip_wheel_with_pep518_build_reqs_no_isolation`: building
  pep518-3.0 without isolation should fail if the build requirements
  are not installed.
2018-05-18 23:45:55 +02:00
Benoit Pierre 3de9bdb7f2 tests: tweak simplewheel test distribution
- change module name to prevent conflicts with other distributions
- add a `__version__` field for version checks
2018-05-18 23:40:15 +02:00
Donald Stufft 90b3db476f Drop support for Python 3.3 2018-05-17 13:34:48 -04:00
Benoit Pierre 02b678f557 fix PEP 518 support when pip is installed in the user site
Do not use the build environment isolation during the build dependencies installation.
2018-04-16 22:58:44 +02:00
Paul Moore 2ae420e8e9 Style checker line length 2018-04-10 18:30:07 +01:00
Paul Moore 22c8656b57 Don't warn about script locations if --target is specified 2018-04-10 18:07:53 +01:00
Benoit Pierre 6da1d9e47c fix PEP 518 support
* fix build environment handling when using PyPy
* do use the build environment for all build commands
* allow installing and building a wheel of a PEP 518 enabled
  package without prior installation of setuptools and/or wheels
* fix check for minimum supported requirements for PEP 518 support:
  - correctly handle complex requirements
  - both setuptools and wheels are needed
2018-04-08 14:06:11 +02:00
Pradyun Gedam 3d7fbb31a9
Merge branch 'master' into resolver/warn-after-resolution 2018-03-27 20:10:56 +05:30
Paul Moore 834c1f12d5 Remove test_basic_install_environment_markers.
This test relies on buggy setuptools behaviour (keeping
requirements with environment markers in install_requires,
rather than moving them to extras_require) which has been
fixed in recent setuptools versions.
2018-03-20 13:48:15 +00:00
Pradyun Gedam 851518b17a
Merge branch 'refactor/reduce-action-at-distance' into resolver/warn-after-resolution 2018-03-03 02:51:37 +05:30
Ed Morley 4b81388199 Use log level info when ignoring packages due to environment markers
The use of environment markers implies that the user expects the
packages to not be installed in some cases (eg depending on version
of Python), so the log output shouldn't be classed as a warning,
particularly since this results in it being sent to `stderr` rather
than `stdout`.

Fixes #4876.
2018-01-28 15:36:23 +00:00
Pradyun Gedam 045e244b7e
Run pip check in pip install
Also, add --no-warn-conflicts option to allow supressing the error messages generated.
2018-01-24 18:16:18 +05:30
Pradyun Gedam 4c147397ea
Merge branch 'master' into cache/ephem-wheel-cache 2018-01-24 02:15:21 +05:30
Pradyun Gedam e31d784b41
Rename a few tests to add the word "basic"
This essentially allows me to do an overall check general check by running the tests using pytest's `-k basic` syntax. Given that I like running tests often and that, in general, I make typos more often than changes that break core functionality, I think this will reduce cycle times for me.
2017-12-16 23:43:46 +05:30
Anthony Sottile e21e2d3f8f Upgrade syntax in ./tests
Changes were automated via https://github.com/asottile/pyupgrade

See #4921
2017-12-14 21:59:41 -08:00
Pradyun Gedam cd14240529
Merge branch 'master' into cache/ephem-wheel-cache 2017-12-01 19:16:27 +05:30
Pradyun Gedam 8f4f15a5a9
Merge pull request #4881 from pradyunsg/misc/trailing-commas-imports
isort: Include trailing commas
2017-11-24 07:34:14 +05:30
Pradyun Gedam 353a13ddff
isort: Include trailing commas 2017-11-21 13:23:59 +05:30