diff --git a/.devcontainer/on-create-command.sh b/.devcontainer/on-create-command.sh index deffa37b..fdf77952 100755 --- a/.devcontainer/on-create-command.sh +++ b/.devcontainer/on-create-command.sh @@ -3,7 +3,7 @@ set -e python3 -m venv .venv . .venv/bin/activate -pip install -U pip setuptools wheel +pip install -U pip pip install -r requirements/dev.txt pip install -e . pre-commit install --install-hooks diff --git a/CHANGES.rst b/CHANGES.rst index 482d9a18..3264a25e 100644 --- a/CHANGES.rst +++ b/CHANGES.rst @@ -309,7 +309,7 @@ Released 2022-03-28 or ``AppContext.g`` instead. :issue:`3898` - ``copy_current_request_context`` can decorate async functions. :pr:`4303` -- The CLI uses ``importlib.metadata`` instead of ``setuptools`` to +- The CLI uses ``importlib.metadata`` instead of ``pkg_resources`` to load command entry points. :issue:`4419` - Overriding ``FlaskClient.open`` will not cause an error on redirect. :issue:`3396` diff --git a/CONTRIBUTING.rst b/CONTRIBUTING.rst index 24daa729..fed44978 100644 --- a/CONTRIBUTING.rst +++ b/CONTRIBUTING.rst @@ -127,7 +127,7 @@ First time setup in your local environment .. code-block:: text - $ python -m pip install -U pip setuptools wheel + $ python -m pip install -U pip $ pip install -r requirements/dev.txt && pip install -e . - Install the pre-commit hooks. diff --git a/docs/patterns/packages.rst b/docs/patterns/packages.rst index 239a3fa2..90fa8a8f 100644 --- a/docs/patterns/packages.rst +++ b/docs/patterns/packages.rst @@ -54,8 +54,8 @@ a big problem, just add a new file called :file:`pyproject.toml` next to the inn ] [build-system] - requires = ["setuptools"] - build-backend = "setuptools.build_meta" + requires = ["flit_core<4"] + build-backend = "flit_core.buildapi" Install your application so it is importable: diff --git a/docs/tutorial/install.rst b/docs/tutorial/install.rst index 9bb1234e..519b0678 100644 --- a/docs/tutorial/install.rst +++ b/docs/tutorial/install.rst @@ -40,30 +40,13 @@ The ``pyproject.toml`` file describes your project and how to build it. ] [build-system] - requires = ["setuptools"] - build-backend = "setuptools.build_meta" + requires = ["flit_core<4"] + build-backend = "flit_core.buildapi" - -The setuptools build backend needs another file named ``MANIFEST.in`` to tell it about -non-Python files to include. - -.. code-block:: none - :caption: ``MANIFEST.in`` - - include flaskr/schema.sql - graft flaskr/static - graft flaskr/templates - global-exclude *.pyc - -This tells the build to copy everything in the ``static`` and ``templates`` directories, -and the ``schema.sql`` file, but to exclude all bytecode files. - -See the official `Packaging tutorial `_ and -`detailed guide `_ for more explanation of the files -and options used. +See the official `Packaging tutorial `_ for more +explanation of the files and options used. .. _packaging tutorial: https://packaging.python.org/tutorials/packaging-projects/ -.. _packaging guide: https://packaging.python.org/guides/distributing-packages-using-setuptools/ Install the Project @@ -95,9 +78,7 @@ You can observe that the project is now installed with ``pip list``. Jinja2 2.10 MarkupSafe 1.0 pip 9.0.3 - setuptools 39.0.1 Werkzeug 0.14.1 - wheel 0.30.0 Nothing changes from how you've been running your project so far. ``--app`` is still set to ``flaskr`` and ``flask run`` still runs diff --git a/requirements/typing.in b/requirements/typing.in index 2c589ea0..d2313079 100644 --- a/requirements/typing.in +++ b/requirements/typing.in @@ -1,5 +1,4 @@ mypy types-contextvars types-dataclasses -types-setuptools cryptography diff --git a/requirements/typing.txt b/requirements/typing.txt index ede79887..bad6fb22 100644 --- a/requirements/typing.txt +++ b/requirements/typing.txt @@ -1,4 +1,4 @@ -# SHA1:7cc3f64d4e78db89d81680ac81503d5ac35d31a9 +# SHA1:6a354b832686fd3ec017455769a0270953a1e225 # # This file is autogenerated by pip-compile-multi # To update, run: @@ -19,7 +19,5 @@ types-contextvars==2.4.7.2 # via -r requirements/typing.in types-dataclasses==0.6.6 # via -r requirements/typing.in -types-setuptools==68.0.0.0 - # via -r requirements/typing.in typing-extensions==4.6.3 # via mypy