From 29326dcb0b3e5a4052dd023f93bbe9234294b422 Mon Sep 17 00:00:00 2001 From: Bartosz Sokorski Date: Thu, 3 Oct 2024 12:12:39 +0200 Subject: [PATCH] Align with core exceptions name changes --- poetry.lock | 16 ++++++++-------- pyproject.toml | 2 +- src/poetry/console/commands/config.py | 4 ++-- src/poetry/console/commands/init.py | 4 ++-- src/poetry/console/commands/install.py | 4 ++-- src/poetry/console/commands/version.py | 4 ++-- src/poetry/inspection/info.py | 8 ++++---- src/poetry/packages/locker.py | 4 ++-- src/poetry/repositories/link_sources/base.py | 4 ++-- src/poetry/repositories/pypi_repository.py | 4 ++-- src/poetry/toml/exceptions.py | 4 ++-- tests/console/commands/test_config.py | 4 ++-- tests/console/commands/test_install.py | 4 ++-- tests/pyproject/test_pyproject_toml_file.py | 4 ++-- 14 files changed, 35 insertions(+), 35 deletions(-) diff --git a/poetry.lock b/poetry.lock index 38cf588c08e..1fcfc567d26 100644 --- a/poetry.lock +++ b/poetry.lock @@ -20,7 +20,7 @@ name = "build" version = "1.2.2" description = "A simple, correct Python build frontend" optional = false -python-versions = ">= 3.8" +python-versions = ">=3.8" files = [ {file = "build-1.2.2-py3-none-any.whl", hash = "sha256:277ccc71619d98afdd841a0e96ac9fe1593b823af481d3b0cea748e8894e0613"}, {file = "build-1.2.2.tar.gz", hash = "sha256:119b2fb462adef986483438377a13b2f42064a2a3a4161f24a0cca698a07ac8c"}, @@ -884,7 +884,7 @@ name = "nodeenv" version = "1.9.1" description = "Node.js virtual environment builder" optional = false -python-versions = ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*" +python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*,>=2.7" files = [ {file = "nodeenv-1.9.1-py2.py3-none-any.whl", hash = "sha256:ba11c9782d29c27c70ffbdda2d7415098754709be8a7056d79a737cd901155c9"}, {file = "nodeenv-1.9.1.tar.gz", hash = "sha256:6ec12890a2dab7946721edbfbcd91f3319c6ccc9aec47be7c7e6b7011ee6645f"}, @@ -985,16 +985,16 @@ develop = false [package.source] type = "git" -url = "https://github.com/python-poetry/poetry-core.git" -reference = "main" -resolved_reference = "b57e32c1bc558031dbae371ec85894e941bf039e" +url = "https://github.com/secrus/poetry-core.git" +reference = "error-names" +resolved_reference = "4db93f43dea2029270a1d50c27b074306a7334d5" [[package]] name = "poetry-plugin-export" version = "1.8.0" description = "Poetry plugin to export the dependencies to various formats" optional = false -python-versions = ">=3.8,<4.0" +python-versions = "<4.0,>=3.8" files = [ {file = "poetry_plugin_export-1.8.0-py3-none-any.whl", hash = "sha256:adbe232cfa0cc04991ea3680c865cf748bff27593b9abcb1f35fb50ed7ba2c22"}, {file = "poetry_plugin_export-1.8.0.tar.gz", hash = "sha256:1fa6168a85d59395d835ca564bc19862a7c76061e60c3e7dfaec70d50937fc61"}, @@ -1027,7 +1027,7 @@ name = "psutil" version = "6.0.0" description = "Cross-platform lib for process and system monitoring in Python." optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" +python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,>=2.7" files = [ {file = "psutil-6.0.0-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:a021da3e881cd935e64a3d0a20983bda0bb4cf80e4f74fa9bfcb1bc5785360c6"}, {file = "psutil-6.0.0-cp27-cp27m-manylinux2010_i686.whl", hash = "sha256:1287c2b95f1c0a364d23bc6f2ea2365a8d4d9b726a3be7294296ff7ba97c17f0"}, @@ -1630,4 +1630,4 @@ test = ["big-O", "importlib-resources", "jaraco.functools", "jaraco.itertools", [metadata] lock-version = "2.0" python-versions = "^3.8" -content-hash = "816bcb3532fd7484005946146373ddb848e7405a72f10a8dc345b9e4596427f7" +content-hash = "d118cc7ab4ea2f90298e173f6a1e36b17fae3ed6e700999b7e49dc7890cf9ef4" diff --git a/pyproject.toml b/pyproject.toml index 30cbc165f93..fee2ea1f541 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -31,7 +31,7 @@ Changelog = "https://python-poetry.org/history/" [tool.poetry.dependencies] python = "^3.8" -poetry-core = { git = "https://github.com/python-poetry/poetry-core.git", branch = "main" } +poetry-core = { git = "https://github.com/secrus/poetry-core.git", branch = "error-names" } poetry-plugin-export = "^1.8.0" build = "^1.2.1" cachecontrol = { version = "^0.14.0", extras = ["filecache"] } diff --git a/src/poetry/console/commands/config.py b/src/poetry/console/commands/config.py index 2bc524bed41..1a8a8e1307c 100644 --- a/src/poetry/console/commands/config.py +++ b/src/poetry/console/commands/config.py @@ -91,7 +91,7 @@ def unique_config_values(self) -> dict[str, tuple[Any, Any]]: def handle(self) -> int: from pathlib import Path - from poetry.core.pyproject.exceptions import PyProjectException + from poetry.core.pyproject.exceptions import PyProjectError from poetry.config.config import Config from poetry.config.file_config_source import FileConfigSource @@ -105,7 +105,7 @@ def handle(self) -> int: local_config_file = TOMLFile(self.poetry.file.path.parent / "poetry.toml") if local_config_file.exists(): config.merge(local_config_file.read()) - except (RuntimeError, PyProjectException): + except (RuntimeError, PyProjectError): local_config_file = TOMLFile(Path.cwd() / "poetry.toml") if self.option("local"): diff --git a/src/poetry/console/commands/init.py b/src/poetry/console/commands/init.py index 9cc330e6d67..e7fbf13109f 100644 --- a/src/poetry/console/commands/init.py +++ b/src/poetry/console/commands/init.py @@ -459,12 +459,12 @@ def _find_best_version_for_package( return package.pretty_name, f"^{version.to_string()}" def _parse_requirements(self, requirements: list[str]) -> list[dict[str, Any]]: - from poetry.core.pyproject.exceptions import PyProjectException + from poetry.core.pyproject.exceptions import PyProjectError try: cwd = self.poetry.file.path.parent artifact_cache = self.poetry.pool.artifact_cache - except (PyProjectException, RuntimeError): + except (PyProjectError, RuntimeError): cwd = Path.cwd() artifact_cache = self._get_pool().artifact_cache diff --git a/src/poetry/console/commands/install.py b/src/poetry/console/commands/install.py index b33892568ba..ed1076a0a50 100644 --- a/src/poetry/console/commands/install.py +++ b/src/poetry/console/commands/install.py @@ -100,7 +100,7 @@ def activated_groups(self) -> set[str]: return super().activated_groups def handle(self) -> int: - from poetry.core.masonry.utils.module import ModuleOrPackageNotFound + from poetry.core.masonry.utils.module import ModuleOrPackageNotFoundError from poetry.masonry.builders.editable import EditableBuilder @@ -189,7 +189,7 @@ def handle(self) -> int: try: builder = EditableBuilder(self.poetry, self.env, self.io) builder.build() - except (ModuleOrPackageNotFound, FileNotFoundError) as e: + except (ModuleOrPackageNotFoundError, FileNotFoundError) as e: # This is likely due to the fact that the project is an application # not following the structure expected by Poetry. # No need for an editable install in this case. diff --git a/src/poetry/console/commands/version.py b/src/poetry/console/commands/version.py index 85c97d4c28c..8bf7d61b428 100644 --- a/src/poetry/console/commands/version.py +++ b/src/poetry/console/commands/version.py @@ -6,7 +6,7 @@ from cleo.helpers import argument from cleo.helpers import option -from poetry.core.version.exceptions import InvalidVersion +from poetry.core.version.exceptions import InvalidVersionError from tomlkit.toml_document import TOMLDocument from poetry.console.commands.command import Command @@ -96,7 +96,7 @@ def increment_version( try: parsed = Version.parse(version) - except InvalidVersion: + except InvalidVersionError: raise ValueError("The project's version doesn't seem to follow semver") if rule in {"major", "premajor"}: diff --git a/src/poetry/inspection/info.py b/src/poetry/inspection/info.py index 457fc97555f..e260818164d 100644 --- a/src/poetry/inspection/info.py +++ b/src/poetry/inspection/info.py @@ -22,8 +22,8 @@ from poetry.core.pyproject.toml import PyProjectTOML from poetry.core.utils.helpers import parse_requires from poetry.core.utils.helpers import temporary_directory -from poetry.core.version.markers import InvalidMarker -from poetry.core.version.requirements import InvalidRequirement +from poetry.core.version.markers import InvalidMarkerError +from poetry.core.version.requirements import InvalidRequirementError from poetry.utils.helpers import extractall from poetry.utils.isolated_build import isolated_builder @@ -178,7 +178,7 @@ def to_package( try: # Attempt to parse the PEP-508 requirement string dependency = Dependency.create_from_pep_508(req, relative_to=root_dir) - except InvalidMarker: + except InvalidMarkerError: # Invalid marker, We strip the markers hoping for the best logger.warning( "Stripping invalid marker (%s) found in %s-%s dependencies", @@ -188,7 +188,7 @@ def to_package( ) req = req.split(";")[0] dependency = Dependency.create_from_pep_508(req, relative_to=root_dir) - except InvalidRequirement: + except InvalidRequirementError: # Unable to parse requirement so we skip it logger.warning( "Invalid requirement (%s) found in %s-%s dependencies, skipping", diff --git a/src/poetry/packages/locker.py b/src/poetry/packages/locker.py index 5d40c782921..245a89e97cd 100644 --- a/src/poetry/packages/locker.py +++ b/src/poetry/packages/locker.py @@ -18,7 +18,7 @@ from poetry.core.constraints.version import parse_constraint from poetry.core.packages.dependency import Dependency from poetry.core.packages.package import Package -from poetry.core.version.requirements import InvalidRequirement +from poetry.core.version.requirements import InvalidRequirementError from tomlkit import array from tomlkit import comment from tomlkit import document @@ -194,7 +194,7 @@ def locked_repository(self) -> LockfileRepository: for dep in deps: try: dependency = Dependency.create_from_pep_508(dep) - except InvalidRequirement: + except InvalidRequirementError: # handle lock files with invalid PEP 508 m = re.match(r"^(.+?)(?:\[(.+?)])?(?:\s+\((.+)\))?$", dep) if not m: diff --git a/src/poetry/repositories/link_sources/base.py b/src/poetry/repositories/link_sources/base.py index 9948ec8cd35..53bf073c523 100644 --- a/src/poetry/repositories/link_sources/base.py +++ b/src/poetry/repositories/link_sources/base.py @@ -11,7 +11,7 @@ from poetry.core.constraints.version import Version from poetry.core.packages.package import Package -from poetry.core.version.exceptions import InvalidVersion +from poetry.core.version.exceptions import InvalidVersionError from poetry.utils.patterns import sdist_file_re from poetry.utils.patterns import wheel_file_re @@ -86,7 +86,7 @@ def link_package_data(cls, link: Link) -> Package | None: if version_string: try: version = Version.parse(version_string) - except InvalidVersion: + except InvalidVersionError: logger.debug( "Skipping url (%s) due to invalid version (%s)", link.url, version ) diff --git a/src/poetry/repositories/pypi_repository.py b/src/poetry/repositories/pypi_repository.py index eeabbcf2689..5e47047b1c3 100644 --- a/src/poetry/repositories/pypi_repository.py +++ b/src/poetry/repositories/pypi_repository.py @@ -11,7 +11,7 @@ from cachecontrol.controller import logger as cache_control_logger from poetry.core.packages.package import Package from poetry.core.packages.utils.link import Link -from poetry.core.version.exceptions import InvalidVersion +from poetry.core.version.exceptions import InvalidVersionError from poetry.repositories.exceptions import PackageNotFoundError from poetry.repositories.http_repository import HTTPRepository @@ -64,7 +64,7 @@ def search(self, query: str) -> list[Package]: package = Package(result.name, result.version) package.description = result.description.strip() results.append(package) - except InvalidVersion: + except InvalidVersionError: self._log( f'Unable to parse version "{result.version}" for the' f" {result.name} package, skipping", diff --git a/src/poetry/toml/exceptions.py b/src/poetry/toml/exceptions.py index 66fcec0063b..176dbb95263 100644 --- a/src/poetry/toml/exceptions.py +++ b/src/poetry/toml/exceptions.py @@ -1,8 +1,8 @@ from __future__ import annotations -from poetry.core.exceptions import PoetryCoreException +from poetry.core.exceptions import PoetryCoreError from tomlkit.exceptions import TOMLKitError -class TOMLError(TOMLKitError, PoetryCoreException): +class TOMLError(TOMLKitError, PoetryCoreError): pass diff --git a/tests/console/commands/test_config.py b/tests/console/commands/test_config.py index e064b5392fe..0572c2c12a7 100644 --- a/tests/console/commands/test_config.py +++ b/tests/console/commands/test_config.py @@ -8,7 +8,7 @@ import pytest from deepdiff import DeepDiff -from poetry.core.pyproject.exceptions import PyProjectException +from poetry.core.pyproject.exceptions import PyProjectError from poetry.config.config_source import ConfigSource from poetry.console.commands.install import InstallCommand @@ -39,7 +39,7 @@ def test_show_config_with_local_config_file_empty( ) -> None: mocker.patch( "poetry.factory.Factory.create_poetry", - side_effect=PyProjectException("[tool.poetry] section not found"), + side_effect=PyProjectError("[tool.poetry] section not found"), ) tester.execute() diff --git a/tests/console/commands/test_install.py b/tests/console/commands/test_install.py index 2cc5f7a29a5..c94f3c84bd7 100644 --- a/tests/console/commands/test_install.py +++ b/tests/console/commands/test_install.py @@ -6,7 +6,7 @@ import pytest -from poetry.core.masonry.utils.module import ModuleOrPackageNotFound +from poetry.core.masonry.utils.module import ModuleOrPackageNotFoundError from poetry.core.packages.dependency_group import MAIN_GROUP from poetry.console.commands.installer_command import InstallerCommand @@ -128,7 +128,7 @@ def test_group_options_are_passed_to_the_installer( mocker.patch.object(tester.command.installer, "run", return_value=0) editable_builder_mock = mocker.patch( "poetry.masonry.builders.editable.EditableBuilder", - side_effect=ModuleOrPackageNotFound(), + side_effect=ModuleOrPackageNotFoundError(), ) if not with_root: diff --git a/tests/pyproject/test_pyproject_toml_file.py b/tests/pyproject/test_pyproject_toml_file.py index e8fea9000ec..f8cb40f2845 100644 --- a/tests/pyproject/test_pyproject_toml_file.py +++ b/tests/pyproject/test_pyproject_toml_file.py @@ -4,7 +4,7 @@ import pytest -from poetry.core.exceptions import PoetryCoreException +from poetry.core.exceptions import PoetryCoreError from poetry.toml import TOMLFile @@ -17,7 +17,7 @@ def test_pyproject_toml_file_invalid(pyproject_toml: Path) -> None: with pyproject_toml.open(mode="a", encoding="utf-8") as f: f.write("<<<<<<<<<<<") - with pytest.raises(PoetryCoreException) as excval: + with pytest.raises(PoetryCoreError) as excval: _ = TOMLFile(pyproject_toml).read() assert f"Invalid TOML file {pyproject_toml.as_posix()}" in str(excval.value)