331 lines
12 KiB
ReStructuredText
331 lines
12 KiB
ReStructuredText
+++++++++
|
|
Changelog
|
|
+++++++++
|
|
|
|
|
|
0.9.0 (2022-10-27)
|
|
==================
|
|
|
|
- Hide a Python 3.11.0 unavoidable warning with venv (`PR #527`_)
|
|
- Fix infinite recursion error in ``check_dependency`` with circular
|
|
dependencies (`PR #512`_, Fixes `#511`_)
|
|
- Only import colorama on Windows (`PR #494`_, Fixes `#493`_)
|
|
- Flush output more often to reduce interleaved output (`PR #494`_)
|
|
- Small API cleanup, like better ``__all__`` and srcdir being read only. (`PR #477`_)
|
|
- Only use ``importlib_metadata`` when needed (`PR #401`_)
|
|
- Clarify in printout when build dependencies are being installed (`PR #514`_)
|
|
|
|
.. _PR #401: https://github.com/pypa/build/pull/401
|
|
.. _PR #477: https://github.com/pypa/build/pull/477
|
|
.. _PR #494: https://github.com/pypa/build/pull/494
|
|
.. _PR #512: https://github.com/pypa/build/pull/512
|
|
.. _PR #514: https://github.com/pypa/build/pull/514
|
|
.. _PR #527: https://github.com/pypa/build/pull/527
|
|
.. _#493: https://github.com/pypa/build/issues/493
|
|
.. _#511: https://github.com/pypa/build/issues/511
|
|
|
|
|
|
0.8.0 (2022-05-22)
|
|
==================
|
|
|
|
- Accept ``os.PathLike[str]`` in addition to ``str`` for paths in public
|
|
API (`PR #392`_, Fixes `#372`_)
|
|
- Add schema validation for ``build-system`` table to check conformity
|
|
with PEP 517 and PEP 518 (`PR #365`_, Fixes `#364`_)
|
|
- Better support for Python 3.11 (sysconfig schemes `PR #434`_, `PR #463`_, tomllib `PR #443`_, warnings `PR #420`_)
|
|
- Improved error printouts (`PR #442`_)
|
|
- Avoid importing packaging unless needed (`PR #395`_, Fixes `#393`_)
|
|
|
|
|
|
Breaking Changes
|
|
----------------
|
|
|
|
- Failure to create a virtual environment in the ``build.env`` module now raises
|
|
``build.FailedProcessError`` (`PR #442`_)
|
|
|
|
.. _PR #365: https://github.com/pypa/build/pull/365
|
|
.. _PR #392: https://github.com/pypa/build/pull/392
|
|
.. _PR #395: https://github.com/pypa/build/pull/395
|
|
.. _PR #420: https://github.com/pypa/build/pull/420
|
|
.. _PR #434: https://github.com/pypa/build/pull/434
|
|
.. _PR #442: https://github.com/pypa/build/pull/442
|
|
.. _PR #443: https://github.com/pypa/build/pull/443
|
|
.. _PR #463: https://github.com/pypa/build/pull/463
|
|
.. _#364: https://github.com/pypa/build/issues/364
|
|
.. _#372: https://github.com/pypa/build/issues/372
|
|
.. _#393: https://github.com/pypa/build/pull/393
|
|
|
|
|
|
0.7.0 (2021-09-16)
|
|
==================
|
|
|
|
- Add ``build.util`` module with an high-level utility API (`PR #340`_)
|
|
|
|
.. _PR #340: https://github.com/pypa/build/pull/340
|
|
|
|
|
|
0.6.0.post1 (2021-08-05)
|
|
========================
|
|
|
|
- Fix compatibility with Python 3.6 and 3.7 (`PR #339`_, Fixes `#338`_)
|
|
|
|
.. _PR #339: https://github.com/pypa/build/pull/339
|
|
.. _#338: https://github.com/pypa/build/issues/338
|
|
|
|
|
|
|
|
0.6.0 (2021-08-02)
|
|
==================
|
|
|
|
- Improved output (`PR #333`_, Fixes `#142`_)
|
|
- The CLI now honors `NO_COLOR`_ (`PR #333`_)
|
|
- The CLI can now be forced to colorize the output by setting the ``FORCE_COLOR`` environment variable (`PR #335`_)
|
|
- Added logging to ``build`` and ``build.env`` (`PR #333`_)
|
|
- Switch to a TOML v1 compliant parser (`PR #336`_, Fixes `#308`_)
|
|
|
|
|
|
Breaking Changes
|
|
----------------
|
|
|
|
- Dropped support for Python 2 and 3.5.
|
|
|
|
.. _PR #333: https://github.com/pypa/build/pull/333
|
|
.. _PR #335: https://github.com/pypa/build/pull/335
|
|
.. _PR #336: https://github.com/pypa/build/pull/336
|
|
.. _#142: https://github.com/pypa/build/issues/142
|
|
.. _#308: https://github.com/pypa/build/issues/308
|
|
.. _NO_COLOR: https://no-color.org
|
|
|
|
|
|
|
|
0.5.1 (2021-06-22)
|
|
==================
|
|
|
|
- Fix invoking the backend on an inexistent output directory with multiple levels (`PR #318`_, Fixes `#316`_)
|
|
- When building wheels via sdists, use an isolated temporary directory (`PR #321`_, Fixes `#320`_)
|
|
|
|
.. _PR #318: https://github.com/pypa/build/pull/318
|
|
.. _PR #321: https://github.com/pypa/build/pull/321
|
|
.. _#316: https://github.com/pypa/build/issues/316
|
|
.. _#320: https://github.com/pypa/build/issues/320
|
|
|
|
|
|
|
|
0.5.0 (2021-06-19)
|
|
==================
|
|
|
|
- Add ``ProjectBuilder.metadata_path`` helper (`PR #303`_, Fixes `#301`_)
|
|
- Added a ``build.__main__.build_package_via_sdist`` method (`PR #304`_)
|
|
- Use appropriate installation scheme for Apple Python venvs (`PR #314`_, Fixes `#310`_)
|
|
|
|
Breaking Changes
|
|
----------------
|
|
|
|
- Binary distributions are now built via the sdist by default in the CLI (`PR #304`_, Fixes `#257`_)
|
|
- ``python -m build`` will now build a sdist, extract it, and build a wheel from the source
|
|
- As a side-effect of `PR #304`_, ``build.__main__.build_package`` no longer does CLI error handling (print nice message and exit the program)
|
|
- Importing ``build.__main__`` no longer has any side-effects, it no longer overrides ``warnings.showwarning`` or runs ``colorama.init`` on import (`PR #312`_)
|
|
|
|
.. _PR #303: https://github.com/pypa/build/pull/303
|
|
.. _PR #304: https://github.com/pypa/build/pull/304
|
|
.. _PR #312: https://github.com/pypa/build/pull/312
|
|
.. _PR #314: https://github.com/pypa/build/pull/314
|
|
.. _#257: https://github.com/pypa/build/issues/257
|
|
.. _#301: https://github.com/pypa/build/issues/301
|
|
.. _#310: https://github.com/pypa/build/issues/310
|
|
|
|
|
|
|
|
0.4.0 (2021-05-23)
|
|
==================
|
|
|
|
- Validate that the supplied source directory is valid (`PR #260`_, Fixes `#259`_)
|
|
- Set and test minimum versions of build's runtime dependencies (`PR #267`_, Fixes `#263`_)
|
|
- Use symlinks on creating venv's when available (`PR #274`_, Fixes `#271`_)
|
|
- Error sooner if pip upgrade is required and fails (`PR #288`_, Fixes `#256`_)
|
|
- Add a ``runner`` argument to ``ProjectBuilder`` (`PR #290`_, Fixes `#289`_)
|
|
- Hide irrelevant ``pep517`` error traceback and improve error messages (`PR #296`_)
|
|
- Try to use ``colorama`` to fix colors on Windows (`PR #300`_)
|
|
|
|
.. _PR #260: https://github.com/pypa/build/pull/260
|
|
.. _PR #267: https://github.com/pypa/build/pull/267
|
|
.. _PR #274: https://github.com/pypa/build/pull/274
|
|
.. _PR #288: https://github.com/pypa/build/pull/288
|
|
.. _PR #290: https://github.com/pypa/build/pull/290
|
|
.. _PR #296: https://github.com/pypa/build/pull/296
|
|
.. _PR #300: https://github.com/pypa/build/pull/300
|
|
.. _#256: https://github.com/pypa/build/issues/256
|
|
.. _#259: https://github.com/pypa/build/issues/259
|
|
.. _#263: https://github.com/pypa/build/issues/263
|
|
.. _#271: https://github.com/pypa/build/issues/271
|
|
.. _#289: https://github.com/pypa/build/issues/289
|
|
|
|
Breaking Changes
|
|
----------------
|
|
|
|
- As a side-effect of `PR #260`_, projects not containing either a ``pyproject.toml`` or ``setup.py`` will be reported as invalid. This affects projects specifying only a ``setup.cfg``, such projects are recommended to add a ``pyproject.toml``. The new behavior is on par with what pip currently does, so if you are affected by this, your project should not be pip installable.
|
|
- The ``--skip-dependencies`` option has been renamed to ``--skip-dependency-check`` (`PR #297`_)
|
|
- The ``skip_dependencies`` argument of ``build.__main__.build_package`` has been renamed to ``skip_dependency_check`` (`PR #297`_)
|
|
- ``build.ConfigSettings`` has been renamed to ``build.ConfigSettingsType`` (`PR #298`_)
|
|
- ``build.ProjectBuilder.build_dependencies`` to ``build.ProjectBuilder.build_system_requires`` (`PR #284`_, Fixes `#182`_)
|
|
- ``build.ProjectBuilder.get_dependencies`` to ``build.ProjectBuilder.get_requires_for_build`` (`PR #284`_, Fixes `#182`_)
|
|
|
|
.. _PR #284: https://github.com/pypa/build/pull/284
|
|
.. _PR #297: https://github.com/pypa/build/pull/297
|
|
.. _PR #298: https://github.com/pypa/build/pull/298
|
|
.. _#182: https://github.com/pypa/build/issues/182
|
|
|
|
|
|
|
|
0.3.1 (2021-03-09)
|
|
==================
|
|
|
|
- Support direct usage from pipx run in 0.16.1.0+ (`PR #247`_)
|
|
- Use UTF-8 encoding when reading pyproject.toml (`PR #251`_, Fixes `#250`_)
|
|
|
|
.. _PR #247: https://github.com/pypa/build/pull/247
|
|
.. _PR #251: https://github.com/pypa/build/pull/251
|
|
.. _#250: https://github.com/pypa/build/issues/250
|
|
|
|
|
|
|
|
0.3.0 (2021-02-19)
|
|
==================
|
|
|
|
- Upgrade pip based on venv pip version, avoids error on Debian Python 3.6.5-3.8 or issues installing wheels on Big Sur (`PR #229`_, `PR #230`_, Fixes `#228`_)
|
|
- Build dependencies in isolation, instead of in the build environment (`PR #232`_, Fixes `#231`_)
|
|
- Fallback on venv if virtualenv is too old (`PR #241`_)
|
|
- Add metadata preparation hook (`PR #217`_, Fixes `#130`_)
|
|
|
|
.. _PR #217: https://github.com/pypa/build/pull/217
|
|
.. _PR #229: https://github.com/pypa/build/pull/229
|
|
.. _PR #230: https://github.com/pypa/build/pull/230
|
|
.. _PR #232: https://github.com/pypa/build/pull/232
|
|
.. _PR #241: https://github.com/pypa/build/pull/241
|
|
.. _#130: https://github.com/pypa/build/issues/130
|
|
.. _#228: https://github.com/pypa/build/issues/228
|
|
.. _#231: https://github.com/pypa/build/issues/231
|
|
|
|
|
|
|
|
0.2.1 (2021-02-09)
|
|
==================
|
|
|
|
- Fix error from unrecognised pip flag on Python 3.6.0 to 3.6.5 (`PR #227`_, Fixes `#226`_)
|
|
|
|
.. _PR #227: https://github.com/pypa/build/pull/227
|
|
.. _#226: https://github.com/pypa/build/issues/226
|
|
|
|
|
|
|
|
0.2.0 (2021-02-07)
|
|
==================
|
|
|
|
- Check dependencies recursively (`PR #183`_, Fixes `#25`_)
|
|
- Build wheel and sdist distributions in separate environments, as they may have different dependencies (`PR #195`_, Fixes `#194`_)
|
|
- Add support for pre-releases in ``check_dependency`` (`PR #204`_, Fixes `#191`_)
|
|
- Fixes console scripts not being available during build (`PR #221`_, Fixes `#214`_)
|
|
- Do not add the default backend requirements to ``requires`` when no backend is specified (`PR #177`_, Fixes `#107`_)
|
|
- Return the sdist name in ``ProjectBuild.build`` (`PR #197`_)
|
|
- Improve documentation (`PR #178`_, `PR #203`_)
|
|
- Add changelog (`PR #219`_, Fixes `#169`_)
|
|
|
|
Breaking changes
|
|
----------------
|
|
|
|
- Move ``config_settings`` argument to the hook calls (`PR #218`_, Fixes `#216`_)
|
|
|
|
.. _PR #177: https://github.com/pypa/build/pull/177
|
|
.. _PR #178: https://github.com/pypa/build/pull/178
|
|
.. _PR #183: https://github.com/pypa/build/pull/183
|
|
.. _PR #195: https://github.com/pypa/build/pull/195
|
|
.. _PR #197: https://github.com/pypa/build/pull/197
|
|
.. _PR #203: https://github.com/pypa/build/pull/203
|
|
.. _PR #204: https://github.com/pypa/build/pull/204
|
|
.. _PR #218: https://github.com/pypa/build/pull/218
|
|
.. _PR #219: https://github.com/pypa/build/pull/219
|
|
.. _PR #221: https://github.com/pypa/build/pull/221
|
|
.. _#25: https://github.com/pypa/build/issues/25
|
|
.. _#107: https://github.com/pypa/build/issues/107
|
|
.. _#109: https://github.com/pypa/build/issues/109
|
|
.. _#169: https://github.com/pypa/build/issues/169
|
|
.. _#191: https://github.com/pypa/build/issues/191
|
|
.. _#194: https://github.com/pypa/build/issues/194
|
|
.. _#214: https://github.com/pypa/build/issues/214
|
|
.. _#216: https://github.com/pypa/build/issues/216
|
|
|
|
|
|
|
|
0.1.0 (2020-10-29)
|
|
==================
|
|
|
|
- Moved the upstream to PyPA
|
|
- Fixed building with isolation in a virtual environment
|
|
- Added env.IsolatedEnv abstract class
|
|
- Added env.IsolatedEnvBuilder (replaces env.IsolatedEnvironment usages)
|
|
- Added python_executable argument to the ProjectBuilder constructor
|
|
- Added --version/-V option to the CLI
|
|
- Added support for Python 3.9
|
|
- Added py.typed marker
|
|
- Various miscellaneous fixes in the virtual environment creation
|
|
- Many general improvements in the documentation
|
|
- Documentation moved to the furo theme
|
|
- Updated the CoC to the PSF CoC, which PyPA has adopted
|
|
|
|
Breaking changes
|
|
----------------
|
|
|
|
- Renamed the entrypoint script to pyproject-build
|
|
- Removed default arguments from all paths in ProjectBuilder
|
|
- Removed ProjectBuilder.hook
|
|
- Renamed __main__.build to __main__.build_package
|
|
- Changed the default outdir value to {srcdir}/dest
|
|
- Removed env.IsolatedEnvironment
|
|
|
|
|
|
|
|
0.0.4 (2020-09-08)
|
|
==================
|
|
|
|
- Packages are now built in isolation by default
|
|
- Added --no-isolation/-n flag to build in the current environment
|
|
- Add --config-setting/-C option to pass options to the backend
|
|
- Add IsolatedEnvironment class
|
|
- Fix creating the output directory if it doesn't exit
|
|
- Fix building with in-tree backends
|
|
- Fix broken entrypoint script (python-build)
|
|
- Add warning about incomplete verification when verifying extras
|
|
- Automatically detect typos in the build system table
|
|
- Minor documentation improvements
|
|
|
|
|
|
|
|
0.0.3.1 (2020-06-10)
|
|
====================
|
|
|
|
- Fix bug preventing the CLI from being invoked
|
|
- Improved documentation
|
|
|
|
|
|
|
|
0.0.3 (2020-06-09)
|
|
==================
|
|
|
|
- Misc improvements
|
|
- Added documentation
|
|
|
|
|
|
|
|
0.0.2 (2020-05-29)
|
|
==================
|
|
|
|
- Add setuptools as a default fallback backend
|
|
- Fix extras handling in requirement strings
|
|
|
|
|
|
|
|
0.0.1 (2020-05-17)
|
|
==================
|
|
|
|
- Initial release
|