This is an automated email from the ASF dual-hosted git repository.

sbp pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/tooling-trusted-release.git


The following commit(s) were added to refs/heads/main by this push:
     new 073bf30  Remove unused code
073bf30 is described below

commit 073bf30ed8aa9e23ffa28a218e499fc50927069f
Author: Sean B. Palmer <[email protected]>
AuthorDate: Thu Sep 11 15:50:20 2025 +0100

    Remove unused code
---
 atr/routes/distribution.py | 110 ---------------------------------------------
 atr/routes/projects.py     |  27 -----------
 2 files changed, 137 deletions(-)

diff --git a/atr/routes/distribution.py b/atr/routes/distribution.py
index 0f13b5f..6c0c1b6 100644
--- a/atr/routes/distribution.py
+++ b/atr/routes/distribution.py
@@ -18,25 +18,21 @@
 from __future__ import annotations
 
 import dataclasses
-import datetime
 import json
 from typing import TYPE_CHECKING, Literal
 
-import aiohttp
 import htpy
 import quart
 
 import atr.db as db
 import atr.forms as forms
 import atr.htm as htm
-import atr.models.basic as basic
 import atr.models.distribution as distribution
 import atr.models.sql as sql
 import atr.routes as routes
 import atr.routes.compose as compose
 import atr.routes.finish as finish
 import atr.storage as storage
-import atr.storage.outcome as outcome
 import atr.template as template
 import atr.util as util
 
@@ -256,112 +252,6 @@ async def stage_post(session: routes.CommitterSession, 
project: str, version: st
     return await _record_form_page(fpv, staging=True)
 
 
-def _distribution_upload_date(  # noqa: C901
-    platform: sql.DistributionPlatform,
-    data: basic.JSON,
-    version: str,
-) -> datetime.datetime | None:
-    match platform:
-        case sql.DistributionPlatform.ARTIFACT_HUB:
-            if not (versions := 
distribution.ArtifactHubResponse.model_validate(data).available_versions):
-                return None
-            return datetime.datetime.fromtimestamp(versions[0].ts, 
tz=datetime.UTC)
-        case sql.DistributionPlatform.DOCKER_HUB:
-            if not (pushed_at := 
distribution.DockerResponse.model_validate(data).tag_last_pushed):
-                return None
-            return datetime.datetime.fromisoformat(pushed_at.rstrip("Z"))
-        # case sql.DistributionPlatform.GITHUB:
-        #     if not (published_at := 
GitHubResponse.model_validate(data).published_at):
-        #         return None
-        #     return datetime.datetime.fromisoformat(published_at.rstrip("Z"))
-        case sql.DistributionPlatform.MAVEN:
-            m = distribution.MavenResponse.model_validate(data)
-            docs = m.response.docs
-            if not docs:
-                return None
-            timestamp = docs[0].timestamp
-            if not timestamp:
-                return None
-            return datetime.datetime.fromtimestamp(timestamp / 1000, 
tz=datetime.UTC)
-        case sql.DistributionPlatform.NPM | 
sql.DistributionPlatform.NPM_SCOPED:
-            if not (times := 
distribution.NpmResponse.model_validate(data).time):
-                return None
-            # Versions can be in the form "1.2.3" or "v1.2.3", so we check for 
both
-            if not (upload_time := times.get(version) or 
times.get(f"v{version}")):
-                return None
-            return datetime.datetime.fromisoformat(upload_time.rstrip("Z"))
-        case sql.DistributionPlatform.PYPI:
-            if not (urls := 
distribution.PyPIResponse.model_validate(data).urls):
-                return None
-            if not (upload_time := urls[0].upload_time_iso_8601):
-                return None
-            return datetime.datetime.fromisoformat(upload_time.rstrip("Z"))
-    raise NotImplementedError(f"Platform {platform.name} is not yet supported")
-
-
-def _distribution_web_url(  # noqa: C901
-    platform: sql.DistributionPlatform,
-    data: basic.JSON,
-    version: str,
-) -> str | None:
-    match platform:
-        case sql.DistributionPlatform.ARTIFACT_HUB:
-            ah = distribution.ArtifactHubResponse.model_validate(data)
-            repo_name = ah.repository.name if ah.repository else None
-            pkg_name = ah.name
-            ver = ah.version
-            if repo_name and pkg_name:
-                if ver:
-                    return 
f"https://artifacthub.io/packages/helm/{repo_name}/{pkg_name}/{ver}";
-                return 
f"https://artifacthub.io/packages/helm/{repo_name}/{pkg_name}/{version}";
-            if ah.home_url:
-                return ah.home_url
-            for link in ah.links:
-                if link.url:
-                    return link.url
-            return None
-        case sql.DistributionPlatform.DOCKER_HUB:
-            # The best we can do on Docker Hub is:
-            # f"https://hub.docker.com/_/{package}";
-            return None
-        # case sql.DistributionPlatform.GITHUB:
-        #     gh = GitHubResponse.model_validate(data)
-        #     return gh.html_url
-        case sql.DistributionPlatform.MAVEN:
-            return None
-        case sql.DistributionPlatform.NPM:
-            nr = distribution.NpmResponse.model_validate(data)
-            # return nr.homepage
-            return f"https://www.npmjs.com/package/{nr.name}/v/{version}";
-        case sql.DistributionPlatform.NPM_SCOPED:
-            nr = distribution.NpmResponse.model_validate(data)
-            # TODO: This is not correct
-            return nr.homepage
-        case sql.DistributionPlatform.PYPI:
-            info = distribution.PyPIResponse.model_validate(data).info
-            return info.release_url or info.project_url
-    raise NotImplementedError(f"Platform {platform.name} is not yet supported")
-
-
-async def _json_from_distribution_platform(
-    api_url: str, platform: sql.DistributionPlatform, version: str
-) -> outcome.Outcome[basic.JSON]:
-    try:
-        async with aiohttp.ClientSession() as session:
-            async with session.get(api_url) as response:
-                response.raise_for_status()
-                response_json = await response.json()
-        result = basic.as_json(response_json)
-    except aiohttp.ClientError as e:
-        return outcome.Error(e)
-    match platform:
-        case sql.DistributionPlatform.NPM | 
sql.DistributionPlatform.NPM_SCOPED:
-            if version not in 
distribution.NpmResponse.model_validate(result).time:
-                e = RuntimeError(f"Version '{version}' not found")
-                return outcome.Error(e)
-    return outcome.Result(result)
-
-
 # TODO: Move this to an appropriate module
 def _html_nav(container: htm.Block, back_url: str, back_anchor: str, phase: 
Phase) -> None:
     classes = ".d-flex.justify-content-between.align-items-center"
diff --git a/atr/routes/projects.py b/atr/routes/projects.py
index f62b1cf..2f64131 100644
--- a/atr/routes/projects.py
+++ b/atr/routes/projects.py
@@ -438,27 +438,6 @@ async def view(session: routes.CommitterSession, name: 
str) -> response.Response
     )
 
 
-# def _form_append(obj: wtforms.Field, msg: str) -> None:
-#     if not isinstance(obj.errors, list):
-#         obj.errors = list(obj.errors)
-#     obj.errors.append(msg)
-
-
-# def _form_clear(obj: wtforms.Field) -> None:
-#     if not isinstance(obj.errors, list):
-#         obj.errors = list(obj.errors)
-#     obj.errors[:] = []
-
-
-# def _form_setdefault_append(obj: util.QuartFormTyped, key: str, default: 
list[str], msg: str) -> None:
-#     obj.errors.setdefault(key, default)
-#     errors = obj.errors[key]
-#     if isinstance(errors, list):
-#         errors.append(msg)
-#     else:
-#         obj.errors[key] = [repr(errors), msg]
-
-
 async def _metadata_category_edit(
     metadata_form: ProjectMetadataForm,
     project: sql.Project,
@@ -559,12 +538,6 @@ async def _metadata_edit(
     return False, metadata_form
 
 
-# def _parse_artifact_paths(artifact_paths: str) -> list[str]:
-#     if not artifact_paths:
-#         return []
-#     return [path.strip() for path in artifact_paths.split("\n") if 
path.strip()]
-
-
 async def _policy_edit(
     data: db.Session, project: sql.Project, form_data: dict[str, str]
 ) -> tuple[bool, ReleasePolicyForm]:


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to