* Check point progress on moving tests to pypiserver.
* Allow other indexes to mimic the pypi json API for package hashes.
* Fix these tests that run on lower python versions only.
* Try adding the pypiserver to the github actions to only run once.
* Expand the scope of fixtures for pypiserver.
* try to accomedate microsoft runner.
* Windows networking troubles.
* Remove running as a background job.
* Try to condtionally invoke different start pypi-server commands
* Try to condtionally invoke different start pypi-server commands
* Try to condtionally invoke different start pypi-server commands
* Try to condtionally invoke different start pypi-server commands
* Try to condtionally invoke different start pypi-server commands
* Try to condtionally invoke different start pypi-server commands
* Try to condtionally invoke different start pypi-server commands
* Try to introduce pypi as the root index because setuptools-scm is not in our pypi artifacts.
* see if the windows tests run faster (and the other tests) by supplying waitress.
* Only use waitress on windows because the others are fast on the default. Fix requests pollution.
* Supply a suitable Pipfile instead for these two failing tests.
* More requests resolver cross test contamination cleanup.
* remove problematic tests because even on my version of python 3.8.12 this does not work due to AttributeError: 'HTMLParser' object has no attribute 'unescape'
* fix mirror install test.
* Fix Pipfile.
* Fix Pipfile for real
* Fix tests
* Cleanup test naming and more test enhancements.
* Save this optimization for a subsequent PR.
* Cleanup the TemporaryDirectory between tests.
* resolve merge conflict.
* Cleanup path initalization -- it hsould always be a TemporaryDirectory for tests that gets cleanedup.
* Cleanup path initalization -- it hsould always be a TemporaryDirectory for tests that gets cleanedup.
* tableflip on those requests tests that read the setup metadata in reqlib from other tests.
* Update developer documentation for running tests.
* add news fragment.
* Try gunicorn perfoormance for linux/mac
* Only use gunicorn on linux based on the results of last run.
* Reduce the amount of calls to pip and the number of temp files in batch_install.
* Add logic to read the progress of the install in realtime from pip and stop using progress bar.
* refactor based on PR feedback.
* Add test, ensure dev lock use default packages as constraints.
* Use default packages as constraints when locking develop packages.
* Add test, ensure installing dev-packages use default packages as constraints. (#4371) (#2987)
* Use default packages as constraints when installing provided dev packages.
* change vistir.path.normalize_path to pipenv.utils.shell.normalize_path
* Add function that get contraints from packages.
* Add test for get_constraints_from_deps function
* Use get_constraints_from_deps to get constraints
* Use @cached_property instead of @property
* Use standalone utility to write constraints file
* prepare_constraint_file use precomputed constraints.
* Add news fragment.
* Restore this message as stderr because it affects requirements.txt generation.
* Only load the dotenv file when it's a real file, and thus only print the message when it's present.
* Add news fragment.
- Fix how `use_pep517` and `build_isolation` are read from the
environment -- introduce a new environment helper to detect
`<PREFIX>_<SETTING>` and `<PREFIX>_NO_<SETTING>`, check for booleans
and return appropriately boolean, str, or None types
- Check for `False` values when adding `--no-use-pep517` and
`--no-build-isolation` during resolution rather than falsey values
- Change environment variable name from `PIP_PYTHON_VERSION` to
`PIPENV_REQUESTED_PYTHON_VERSION` to avoid causing `pip` to fail due
to accidentally percieving the `python_version` flag as being set --
this is an artifact from attempting to resolve outside of the
virtualenv
- Add `pipenv` to the path of patched `notpip.__main__` to accommodate
updated import fully qualified module names
- Update `pip` and `piptools` patches
- Add test packages for each of two known failure modes: outdated
`setuptools` with a missing `build-backend` (which `pip` forces to
`build_meta:__legacy__` & which doesn't exist before `40.8`), and
`import Cython` statements in `setup.py` in packages with properly
defined `pyproject.toml` `build-backend` lines.
- Fixes#4231
- Replaces, includes, and closes#4242
Signed-off-by: Dan Ryan <dan.ryan@canonical.com>
Add integration tests for #4231
Signed-off-by: Dan Ryan <dan.ryan@canonical.com>
- Recursively resolve PEP 508 URLs in subdependencies
- Fix `piptools` cache storage of VCS dependencies as results
- Avoid saving VCS dependency versions to `Pipfile.lock`
- Fixes#3396
- Fixes#4217
Signed-off-by: Dan Ryan <dan.ryan@canonical.com>