Skip to content

Upgrading build 0.10 to 1

Breaking0.10.0 → 1.6.1Security1Platform1New6Changed8Fixed25Other64

Fetching 18 releases from GitHub…13 / 18
BreakingUpgrade verdict

A platform requirement change and a security fix.

  • This version no longer runs on Python 3.8, so users on 3.8 must upgrade Python.
  • Closes a workflow security weakness where untrusted input could be injected into templates.
2 items need code or config changes

Python requirement changed in 1.5.0: >= 3.7 → >=3.10.

Security1
Avoids a template injection issue flagged by zizmor.
Platform1
Drops support for Python 3.8.

Generated by DepDelta from published Python source. Not mixed with prose notes.

  • removed: class BuildBackendException(Exception)
  • removed: class BuildException(Exception)
  • removed: class BuildSystemTableValidationError(BuildException)
  • removed: class FailedProcessError(Exception)
  • removed: class ProjectBuilder
  • removed: class TypoWarning(Warning)
  • removed: constructor BuildBackendException(exception: Exception, description: str | None=…, exc_info: _ExcInfoType=…) -> None
  • removed: constructor FailedProcessError(exception: subprocess.CalledProcessError, description: str) -> None
  • removed: constructor ProjectBuilder(srcdir: PathType, python_executable: str=…, scripts_dir: str | None=…, runner: RunnerType=…) -> None
  • removed: function check_dependency(req_string: str, ancestral_req_strings: tuple[str, ...]=…, parent_extras: Set[str]=…) -> Iterator[tuple[str, ...]]
  • removed: method ProjectBuilder.build(distribution: str, output_directory: PathType, config_settings: ConfigSettingsType | None=…, metadata_directory: str | None=…) -> str
  • removed: method ProjectBuilder.check_dependencies(distribution: str, config_settings: ConfigSettingsType | None=…) -> set[tuple[str, ...]]
  • removed: method ProjectBuilder.get_requires_for_build(distribution: str, config_settings: ConfigSettingsType | None=…) -> set[str]
  • removed: method ProjectBuilder.metadata_path(output_directory: PathType) -> str
  • removed: method ProjectBuilder.prepare(distribution: str, output_directory: PathType, config_settings: ConfigSettingsType | None=…) -> str | None
  • removed: property ProjectBuilder.build_system_requires -> set[str]
  • removed: property ProjectBuilder.python_executable -> str
  • removed: property ProjectBuilder.scripts_dir -> str | None
  • removed: property ProjectBuilder.srcdir -> str
  • removed: static method ProjectBuilder.log(message: str) -> None
  • removed: variable ConfigSettingsType
  • removed: variable RunnerType
  • added: export BuildBackendException
  • added: export BuildException
  • added: export BuildSystemTableValidationError
  • added: export ConfigSettingsType
  • added: export DistributionType
  • added: export FailedProcessError
  • added: export ProjectBuilder
  • added: export RunnerType
  • added: export TypoWarning
  • added: export check_dependency
  • removed: class IsolatedEnvBuilder
  • removed: constructor IsolatedEnvBuilder() -> None
  • removed: method IsolatedEnv.install(requirements: Collection[str]) -> None
  • removed: property IsolatedEnv.executable -> str
  • removed: property IsolatedEnv.scripts_dir -> str
  • removed: static method IsolatedEnvBuilder.log(message: str) -> None
  • changed: class IsolatedEnv → class IsolatedEnv(typing.Protocol)
  • added: class DefaultIsolatedEnv(IsolatedEnv)
  • added: constructor DefaultIsolatedEnv(*, installer: Installer=…, path: str | None=…) -> None
  • added: method DefaultIsolatedEnv.install(requirements: Collection[str], constraints: Collection[str]=…, *, _fresh: bool=…) -> None
  • added: method DefaultIsolatedEnv.installed_versions(requirements: Collection[str]) -> dict[str, str]
  • added: method DefaultIsolatedEnv.make_extra_environ() -> dict[str, str]
  • added: method IsolatedEnv.make_extra_environ() -> Mapping[str, str] | None
  • added: property DefaultIsolatedEnv.path -> str
  • added: property DefaultIsolatedEnv.python_executable -> str
  • added: property IsolatedEnv.python_executable -> str
  • changed: function project_wheel_metadata(srcdir: build.PathType, isolated: bool=…) -> importlib_metadata.PackageMetadata → function project_wheel_metadata(source_dir: StrPath, isolated: bool=…, *, runner: SubprocessRunner=…) -> importlib.metadata.PackageMetadata