From 040f758ace769fe0d4b5cf019d6ae8239b777775 Mon Sep 17 00:00:00 2001 From: layday Date: Sun, 24 Oct 2021 19:37:49 +0300 Subject: [PATCH 1/6] build: add `BuildSystemTableValidationError` to module exports --- src/build/__init__.py | 1 + 1 file changed, 1 insertion(+) diff --git a/src/build/__init__.py b/src/build/__init__.py index 93164f8e..e13803dd 100644 --- a/src/build/__init__.py +++ b/src/build/__init__.py @@ -509,6 +509,7 @@ def log(message: str) -> None: __all__ = [ '__version__', + 'BuildSystemTableValidationError', 'BuildBackendException', 'BuildException', 'ConfigSettingsType', From 4ceec5ebf94b102649c6800d7b6c1af9dcb8704b Mon Sep 17 00:00:00 2001 From: layday Date: Sun, 24 Oct 2021 19:39:46 +0300 Subject: [PATCH 2/6] multi: use same `__all__` style and placement in all modules --- src/build/__main__.py | 10 +++++++--- src/build/env.py | 4 ++-- src/build/util.py | 4 +++- 3 files changed, 12 insertions(+), 6 deletions(-) diff --git a/src/build/__main__.py b/src/build/__main__.py index df244cc9..4cf963e3 100644 --- a/src/build/__main__.py +++ b/src/build/__main__.py @@ -21,9 +21,6 @@ from build.env import IsolatedEnvBuilder -__all__ = ['build', 'main', 'main_parser'] - - _COLORS = { 'red': '\33[91m', 'green': '\33[92m', @@ -386,3 +383,10 @@ def entrypoint() -> None: if __name__ == '__main__': # pragma: no cover main(sys.argv[1:], 'python -m build') + + +__all__ = [ + 'build', + 'main', + 'main_parser', +] diff --git a/src/build/env.py b/src/build/env.py index 092cf76f..a1be2e19 100644 --- a/src/build/env.py +++ b/src/build/env.py @@ -330,7 +330,7 @@ def _find_executable_and_scripts(path: str) -> Tuple[str, str, str]: return executable, paths['scripts'], paths['purelib'] -__all__ = ( +__all__ = [ 'IsolatedEnvBuilder', 'IsolatedEnv', -) +] diff --git a/src/build/util.py b/src/build/util.py index cd7941ad..6c918ced 100644 --- a/src/build/util.py +++ b/src/build/util.py @@ -55,4 +55,6 @@ def project_wheel_metadata( return _project_wheel_metadata(builder) -__all__ = ('project_wheel_metadata',) +__all__ = [ + 'project_wheel_metadata', +] From 548217a4c753f6699de07d10f12bbc73dd2e7239 Mon Sep 17 00:00:00 2001 From: layday Date: Fri, 29 Oct 2021 18:28:34 +0300 Subject: [PATCH 3/6] main: remove redundant re-export "build" is the name of the package. --- src/build/__main__.py | 1 - 1 file changed, 1 deletion(-) diff --git a/src/build/__main__.py b/src/build/__main__.py index 4cf963e3..6e2ebf0b 100644 --- a/src/build/__main__.py +++ b/src/build/__main__.py @@ -386,7 +386,6 @@ def entrypoint() -> None: __all__ = [ - 'build', 'main', 'main_parser', ] From e4a7b4b343a1bca3c790e68ed6cd6b168f74c51a Mon Sep 17 00:00:00 2001 From: layday Date: Fri, 29 Oct 2021 18:30:18 +0300 Subject: [PATCH 4/6] multi: use module names for loggers DRY. --- src/build/env.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/build/env.py b/src/build/env.py index a1be2e19..b9e8f62b 100644 --- a/src/build/env.py +++ b/src/build/env.py @@ -29,7 +29,7 @@ virtualenv = None -_logger = logging.getLogger('build.env') +_logger = logging.getLogger(__name__) class IsolatedEnv(metaclass=abc.ABCMeta): From d9d24b9021606f68d1fa9f49c1f6150d917e855e Mon Sep 17 00:00:00 2001 From: layday Date: Mon, 25 Oct 2021 14:35:40 +0300 Subject: [PATCH 5/6] docs: remove API doc blurb There's three modules now which are listed on the sidebar. --- docs/api.rst | 2 -- 1 file changed, 2 deletions(-) diff --git a/docs/api.rst b/docs/api.rst index df3f4b0e..254db235 100644 --- a/docs/api.rst +++ b/docs/api.rst @@ -1,8 +1,6 @@ API Documentation ================= -This project exposes 2 modules: - ``build`` module ---------------- From 05c4cd7530f53e02fb8e95b3facd15e3ffd52a66 Mon Sep 17 00:00:00 2001 From: Henry Schreiner Date: Tue, 24 May 2022 05:30:40 -0400 Subject: [PATCH 6/6] build: make srcdir read-only Co-authored-by: layday Signed-off-by: Henry Schreiner --- src/build/__init__.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/build/__init__.py b/src/build/__init__.py index e13803dd..6985ed0a 100644 --- a/src/build/__init__.py +++ b/src/build/__init__.py @@ -279,7 +279,7 @@ def __init__( The default runner simply calls the backend hooks in a subprocess, writing backend output to stdout/stderr. """ - self.srcdir: str = os.path.abspath(srcdir) + self._srcdir: str = os.path.abspath(srcdir) _validate_source_directory(srcdir) spec_file = os.path.join(srcdir, 'pyproject.toml') @@ -319,6 +319,11 @@ def _runner( extra_environ['PATH'] = os.pathsep.join(paths) self._hook_runner(cmd, cwd, extra_environ) + @property + def srcdir(self) -> str: + """Project source directory.""" + return self._srcdir + @property def python_executable(self) -> str: """