diff --git a/.dockerignore b/.dockerignore deleted file mode 100644 index c9efdaeab1..0000000000 --- a/.dockerignore +++ /dev/null @@ -1,11 +0,0 @@ -./examples -./tests -./docs -./news -./pipenv -./.git -./.buildkite -./peeps -./.github -./tasks -./.azure-pipelines diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 332423f86a..b9eec2c591 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -29,7 +29,7 @@ General Guidelines Pipenv has one very important rule governing all forms of contribution, including reporting bugs or requesting features. This golden rule is \"[be cordial or be on your -way](https://www.kennethreitz.org/essays/be-cordial-or-be-on-your-way)\". +way](https://kennethreitz.org/essays/2013/01/27/be-cordial-or-be-on-your-way)\". **All contributions are welcome**, as long as everyone involved is treated with respect. @@ -87,7 +87,7 @@ When contributing code, you\'ll want to follow this checklist: 6. Make your change. 7. Run the entire test suite again, confirming that all tests pass *including the ones you just added*. -8. Send a GitHub Pull Request to the main repository\'s `master` +8. Send a GitHub Pull Request to the main repository\'s `main` branch. GitHub Pull Requests are the expected method of code collaboration on this project. @@ -115,13 +115,9 @@ details. ### Testing -Tests are written in `pytest` style and can be run very simply: +Tests are written in `pytest` style. -``` {.sh} -pytest -``` - -This will run all Pipenv tests, which can take awhile. To run a subset +Running all tests can take awhile. To run a subset of the tests, the standard pytest filters are available, such as: - provide a directory or file: `pytest tests/unit` or @@ -220,8 +216,8 @@ Run the tests Three ways of running the tests are as follows: -1. `make test` (which uses `docker`) 2. `./run-tests.sh` or `run-tests.bat` + - NOTE: `./run-tests.sh` is not working right now due to [this issue](https://github.com/pypa/pip/issues/7953#issuecomment-611928262). 3. Using pipenv: ``` {.console} diff --git a/Dockerfile b/Dockerfile deleted file mode 100644 index 96ecfdeb67..0000000000 --- a/Dockerfile +++ /dev/null @@ -1,39 +0,0 @@ -FROM heroku/heroku:18-build - -ENV DEBIAN_FRONTEND noninteractive -ENV LC_ALL C.UTF-8 -ENV LANG C.UTF-8 -# Python, don't write bytecode! -ENV PYTHONDONTWRITEBYTECODE 1 - -# -- Install Pipenv: -RUN apt update && apt install python3.7-dev libffi-dev -y -RUN curl --silent https://bootstrap.pypa.io/get-pip.py | python3.7 - -# Backwards compatility. -RUN rm -fr /usr/bin/python3 && ln /usr/bin/python3.7 /usr/bin/python3 - -RUN pip3 install pipenv - -# -- Install Application into container: -RUN set -ex && mkdir /app - -WORKDIR /app - -# -- Adding Pipfiles -ONBUILD COPY Pipfile Pipfile -ONBUILD COPY Pipfile.lock Pipfile.lock - -# -- Install dependencies: -ONBUILD RUN set -ex && pipenv install --deploy --system - -# -------------------- -# - Using This File: - -# -------------------- - -# FROM kennethreitz/pipenv - -# COPY . /app - -# -- Replace with the correct path to your app's main executable -# CMD python3 main.py diff --git a/MANIFEST.in b/MANIFEST.in index bea07b5d19..75fc739c1a 100644 --- a/MANIFEST.in +++ b/MANIFEST.in @@ -1,5 +1,5 @@ include LICENSE README.md CONTRIBUTING.md CHANGELOG.rst NOTICES HISTORY.txt -include Makefile pyproject.toml get-pipenv.py .dockerignore *.yml +include Makefile pyproject.toml get-pipenv.py *.yml include examples/Pipfil* include *.md recursive-include pipenv LICENSE LICENSE* *LICENSE* *COPYING* t32.exe t64.exe w32.exe w64.exe cacert.pem @@ -20,7 +20,6 @@ include pipenv/pipenv.1 exclude .gitmodules exclude .editorconfig .travis.yml .env appveyor.yml tox.ini pytest.ini exclude Pipfile* CHANGELOG.draft.rst -exclude docker-compose.yml Dockerfile exclude run-tests.sh run-tests.bat recursive-include docs Makefile *.rst *.py *.bat diff --git a/Makefile b/Makefile index 0d8ecfe96a..eb0220c381 100644 --- a/Makefile +++ b/Makefile @@ -23,8 +23,6 @@ piptools-checkout-dir = $(get_checkout_dir)/patch-piptools format: black pipenv/*.py -test: - docker-compose up .PHONY: install install: diff --git a/docker-compose.yml b/docker-compose.yml deleted file mode 100644 index 1fede25aae..0000000000 --- a/docker-compose.yml +++ /dev/null @@ -1,7 +0,0 @@ -version: '3' -services: - pipenv-tests: - image: kennethreitz/pipenv-tests - command: bash /pipenv/run-tests.sh - volumes: - - .:/pipenv diff --git a/pipenv/core.py b/pipenv/core.py index 6ce17bf315..420dbf5684 100644 --- a/pipenv/core.py +++ b/pipenv/core.py @@ -2496,6 +2496,8 @@ def do_run(project, command, args, three=None, python=False, pypi_mirror=None): click.echo("Can't run script {0!r}-it's empty?", err=True) run_args = [project, script] run_kwargs = {'env': env} + # We're using `do_run_nt` on CI (even if we're running on a non-nt machine) + # as a workaround for https://github.com/pypa/pipenv/issues/4909. if os.name == "nt" or environments.PIPENV_IS_CI: run_fn = do_run_nt else: diff --git a/tests/conftest.py b/tests/conftest.py index fc75b6b572..a07377194a 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -1,4 +1,9 @@ import pytest +import os + +def pytest_sessionstart(session): + # CI=1 is necessary as a workaround for https://github.com/pypa/pipenv/issues/4909 + os.environ['CI'] = '1' @pytest.fixture()