python-ort 0.8.8__tar.gz → 0.8.10__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {python_ort-0.8.8 → python_ort-0.8.10}/PKG-INFO +1 -1
- {python_ort-0.8.8 → python_ort-0.8.10}/pyproject.toml +3 -3
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/config/license_finding_curation.py +10 -6
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/package_reference.py +10 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/LICENSE +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/README.md +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/__init__.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/__init__.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/advisor_capability.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/advisor_details.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/advisor_result.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/advisor_run.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/advisor_summary.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/analyzer_result.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/analyzer_run.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/base_run.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/config/__init__.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/config/advisor_configuration.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/config/analyzer_configuration.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/config/curations.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/config/excludes.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/config/file_archiver_configuration.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/config/file_list_storage_configuration.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/config/file_storage_configuration.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/config/http_file_storage_configuration.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/config/includes.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/config/issue_resolution.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/config/issue_resolution_reason.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/config/license_choices.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/config/license_finding_curation_reason.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/config/local_file_storage_configuration.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/config/package_configuration.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/config/package_manager_configuration.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/config/path_exclude.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/config/path_exclude_reason.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/config/path_include.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/config/path_include_reason.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/config/postgres_connection.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/config/provenance_storage_configuration.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/config/repository_analyzer_configuration.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/config/repository_configuration.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/config/resolutions.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/config/rule_violation_reason.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/config/rule_violation_resolution.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/config/s3_file_storage_configuration.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/config/scan_storage_configuration.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/config/scanner_configuration.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/config/scope_exclude.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/config/scope_exclude_reason.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/config/snippet/__init__.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/config/snippet/snippet_choice.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/config/snippet/snippet_choice_reason.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/config/snippet/snippet_choices.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/config/snippet/snippet_provenance.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/config/vcsmatcher.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/config/vulnerability_resolution.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/config/vulnerability_resolution_reason.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/copyright_finding.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/defect.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/dependency_graph.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/dependency_graph_edge.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/dependency_graph_node.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/dependency_reference.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/evaluator_run.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/file_list.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/hash.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/identifier.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/issue.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/license_finding.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/license_source.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/ort_result.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/package.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/package_curation.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/package_curation_data.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/package_linkage.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/project.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/provenance.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/provenance_resolution_result.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/remote_artifact.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/repository.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/resolutions.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/root_dependency_index.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/rule_violation.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/scan_result.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/scan_summary.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/scanner_details.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/scanner_run.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/scope.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/severity.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/snippet.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/snippet_finding.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/source_code_origin.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/text_location.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/vcsinfo.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/vcsinfo_curation_data.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/vcstype.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/vulnerabilities/__init__.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/vulnerabilities/cvss2_rating.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/vulnerabilities/cvss3_rating.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/vulnerabilities/cvss4_rating.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/vulnerabilities/vulnerability.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/vulnerabilities/vulnerability_reference.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/severity.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/types/__init__.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/types/purl_type.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/utils/__init__.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/utils/environment.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/utils/processed_declared_license.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/utils/spdx/__init__.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/utils/spdx/spdx_expression.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/utils/spdx/spdx_license_choice.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/utils/validated_enum.py +0 -0
- {python_ort-0.8.8 → python_ort-0.8.10}/src/ort/utils/yaml_loader.py +0 -0
|
@@ -4,7 +4,7 @@ build-backend = "uv_build"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "python-ort"
|
|
7
|
-
version = "0.8.
|
|
7
|
+
version = "0.8.10"
|
|
8
8
|
description = "A Python Ort model serialization library"
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
license = "MIT"
|
|
@@ -39,8 +39,8 @@ dev = [
|
|
|
39
39
|
"datamodel-code-generator[http]>=0.55.0",
|
|
40
40
|
"pytest>=9.0.2",
|
|
41
41
|
"rich>=14.3.3",
|
|
42
|
-
"ruff>=0.15.
|
|
43
|
-
"ty>=0.0.
|
|
42
|
+
"ruff>=0.15.7",
|
|
43
|
+
"ty>=0.0.24",
|
|
44
44
|
"types-pyyaml>=6.0.12.20250915",
|
|
45
45
|
]
|
|
46
46
|
|
|
@@ -34,7 +34,7 @@ class LicenseFindingCuration(BaseModel):
|
|
|
34
34
|
path: str = Field(
|
|
35
35
|
description="A glob to match the file path of a license finding.",
|
|
36
36
|
)
|
|
37
|
-
start_lines:
|
|
37
|
+
start_lines: str | None = Field(
|
|
38
38
|
default=None,
|
|
39
39
|
description="A matcher for the start line of a license finding, matches if the start line matches any of"
|
|
40
40
|
"[startLines] or if [startLines] is empty.",
|
|
@@ -64,14 +64,18 @@ class LicenseFindingCuration(BaseModel):
|
|
|
64
64
|
|
|
65
65
|
@field_validator("start_lines", mode="before")
|
|
66
66
|
@classmethod
|
|
67
|
-
def parse_start_lines(cls, value: Any) ->
|
|
67
|
+
def parse_start_lines(cls, value: Any) -> str | None:
|
|
68
68
|
if value is None or value == "":
|
|
69
69
|
return None
|
|
70
70
|
if isinstance(value, str):
|
|
71
71
|
# CSV style split
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
72
|
+
parts = value.split(",")
|
|
73
|
+
for part in parts:
|
|
74
|
+
if not part.strip().isdigit():
|
|
75
|
+
raise ValueError(
|
|
76
|
+
f"start_lines contains non-numeric value: '{part.strip()}'",
|
|
77
|
+
)
|
|
78
|
+
return value
|
|
75
79
|
if isinstance(value, int):
|
|
76
|
-
return
|
|
80
|
+
return str(value)
|
|
77
81
|
raise ValueError("start_lines must be a comma-separated string or a list of integers")
|
|
@@ -25,9 +25,19 @@ class PackageReference(BaseModel):
|
|
|
25
25
|
"also use that as the default value here to not blow up ORT result files.",
|
|
26
26
|
)
|
|
27
27
|
dependencies: set["PackageReference"] = Field(
|
|
28
|
+
default_factory=set,
|
|
28
29
|
description="The set of references to packages this package depends on. Note that this list depends on the "
|
|
29
30
|
"scope in which this package is referenced.",
|
|
30
31
|
)
|
|
31
32
|
issues: list[Issue] = Field(
|
|
33
|
+
default_factory=list,
|
|
32
34
|
description="A list of issues that occurred handling this PackageReference.",
|
|
33
35
|
)
|
|
36
|
+
|
|
37
|
+
def __hash__(self) -> int:
|
|
38
|
+
return hash(self.id)
|
|
39
|
+
|
|
40
|
+
def __eq__(self, other) -> bool:
|
|
41
|
+
if not isinstance(other, PackageReference):
|
|
42
|
+
return NotImplemented
|
|
43
|
+
return self.id == other.id
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/config/file_list_storage_configuration.py
RENAMED
|
File without changes
|
|
File without changes
|
{python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/config/http_file_storage_configuration.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/config/license_finding_curation_reason.py
RENAMED
|
File without changes
|
{python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/config/local_file_storage_configuration.py
RENAMED
|
File without changes
|
|
File without changes
|
{python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/config/package_manager_configuration.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/config/provenance_storage_configuration.py
RENAMED
|
File without changes
|
{python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/config/repository_analyzer_configuration.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/config/s3_file_storage_configuration.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/config/snippet/snippet_choice_reason.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/config/vulnerability_resolution_reason.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_ort-0.8.8 → python_ort-0.8.10}/src/ort/models/vulnerabilities/vulnerability_reference.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|