You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tooling.apache.org by sb...@apache.org on 2026/05/26 15:16:41 UTC

(tooling-trusted-releases) branch tertia updated (6480a621 -> 3eabb86e)

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

sbp pushed a change to branch tertia
in repository https://gitbox.apache.org/repos/asf/tooling-trusted-releases.git


 discard 6480a621 Fix function order
     add c5ef97d1 Reject individually uploaded signing keys without a known ASF UID
     add ca2d2bd7 Fix function order
     add 1611dfe4 Hide the check ignores feature in the UI, without removing the code
     add 761c04e6 Cache a map of hashed email addresses to ASF UIDs in a file
     add abb626f2 Standardise LDAP cache accesses, and make a function private
     add 8d604c05 Automatically refresh the status during quarantine checks
     add 2dede553 Update Mermaid, using a three day cooldown
     add 026bfe60 Update dependencies
     add 747e6d1b Add a lint check for .pth files
     add 9863d764 Require manual confirmation that concern check results were reviewed
     add 73a566e9 #911 - add artifact metadata to data model. #920 - add artifact signature count to signing keys
     add 8df94595 #510 - Project archival, tests and permission logic
     add 2c7dc3fe #473 - options to auto-archive previous release when releases are complete
     add 14e66ba0 Publish to a configured SVN URL in addition to the finished directory
     add d3589c22 Use the SVN publication URL in announcement emails when available
     add 743f18cb Report any conflicting SVN file path to the user
     add 5a3c724e Show the correct publication URL in the announce form
     add 4d14e472 Use the project download page URL by default in announce emails
     add f157825f Use a structured SVN log message when publishing a release
     add 9a3a0c80 Add a storage interface class to write as a user service
     add e3e3aa7c Add a table for user notifications
     add ed1cf4b7 Add notification methods to the storage interface
     add 98166672 Report task failures to the user as dismissable notifications
     add ab610b23 Report quarantine rejections to users
     add d65c761b Parse SVN revision and publish to artifact catalog
     add b20523a1 Add Makefile entry to build local SVN repo for testing
     add 7148a94f #1252/#1253 - Relabel project name and key, move description into Metadata
     add 0a91308e Restore archived banner and fix some project/release loading bugs
     add 7748baf2 Unify delete logic between project list and view, and delete form.
     add 466f387f Use a label property for every task type
     add d0582e8c Use SPF envelope from to determine sender when rewritten
     add 22ed6971 Document that lightweight excludes can be archive scoped
     add a54b2c7f Substitute template variables in parallel
     add 5e1076d2 Ensure that CI uses frozen dependencies
     add ddb6f990 Automatically re-run signature checks when KEYS change
     add 8197c293 #1255 - if signature check fails with no keys available, provide the user a link to upload a key
     add cfed7862 Fix fingerprint and classifications for artifact catalog
     add 4b055ad8 #1246 - allow multiple emails for announce, BCC private for vote resolution
     add da42ecef #1249 - add project key to list view and allow filtering selection via URL for linking.
     add 8372b3fe #470 - add validation rules for new fields, update form validation for add project to use field validators
     add ec340172 Fix project description saving bug
     add a42f902c Make project display name editable from the metadata tab
     add 55bfdd14 Fix broken e2e tests:
     add 24f193dd #1198 - OpenPGP explanations in UI
     add 86792a19 #875 - Better documentation of GitHub workflow path settings
     add a7caad58 #1262 - new safe type for maven namespaces
     add d3a654a4 Add a participant release manager role to the storage interface
     add 2325b8da Add SBOM workflows documentation
     add cbc148d1 Rearrange trusted publishing tab
     add 0ac7fbcf Bump project key to next line
     add 621b4fa7 Add project key to committee project list
     add 11fc77e7 Set rdf and charter optional since they're missing for some committees
     add 3b004e45 Fix a couple of small documentation errors
     add 646b3725 Fix a couple of bugs when cancelling in progress votes
     add 41c86f90 Refactor project layout to header cards
     add 2657b70b Change the order of vote result labels in subjects
     add 43de5880 Add code to support an SVN publication task
     add a69c86b6 Coerce HTTP URLs to HTTPS where they're assumed to be ASF URLs
     add 18e9a245 List user sessions
     add 3eabb86e Add some data to new asfyaml section for testing

This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version.  This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:

 * -- * -- B -- O -- O -- O   (6480a621)
            \
             N -- N -- N   refs/heads/tertia (3eabb86e)

You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.

Any revisions marked "omit" are not gone; other references still
refer to them.  Any revisions marked "discard" are gone forever.

No new revisions were added by this update.

Summary of changes:
 .asf.yaml                                          |   22 +
 .github/workflows/build.yml                        |    2 +-
 .gitignore                                         |    1 +
 .pre-commit-config.yaml                            |   14 +-
 Dockerfile.alpine                                  |    1 +
 Makefile                                           |   17 +-
 atr/admin/__init__.py                              |    6 +-
 atr/api/__init__.py                                |  120 +-
 atr/cache.py                                       |  292 +++
 atr/config.py                                      |    1 +
 atr/construct.py                                   |   15 +-
 atr/cycles.py                                      |   80 +
 atr/datasources/apache.py                          |   25 +-
 atr/db/__init__.py                                 |   50 +
 atr/db/interaction.py                              |  128 +-
 atr/docs/authorization-security.md                 |    5 -
 atr/docs/check-ignores.md                          |   77 -
 atr/docs/checks.md                                 |   24 +-
 atr/docs/code-conventions.md                       |    2 +-
 atr/docs/code-policies.md                          |    4 +
 atr/docs/index.md                                  |    4 +-
 atr/docs/input-validation.md                       |   43 +-
 atr/docs/license-checks.md                         |   15 +-
 atr/docs/running-the-server.md                     |    2 +-
 atr/docs/sbom-workflows.md                         |  176 ++
 atr/docs/trusted-publishing.md                     |   40 +-
 atr/docs/user-guide.md                             |    4 +-
 atr/form.py                                        |   42 +-
 atr/get/__init__.py                                |    2 -
 atr/get/announce.py                                |  181 +-
 atr/get/checks.py                                  |  104 +-
 atr/get/committees.py                              |   16 +
 atr/get/compose.py                                 |  443 +++-
 atr/get/finish.py                                  |    7 +-
 atr/get/ignores.py                                 |    6 +-
 atr/get/keys.py                                    |   50 +-
 atr/get/manual.py                                  |   35 +-
 atr/get/projects.py                                |  446 +++--
 atr/get/release.py                                 |    2 +-
 atr/get/report.py                                  |    1 -
 atr/get/resolve.py                                 |   22 +
 atr/get/start.py                                   |    7 +-
 atr/get/user.py                                    |   49 +
 atr/get/vote.py                                    |   14 +-
 atr/get/voting.py                                  |   23 +
 atr/ldap.py                                        |   31 +
 atr/models/api.py                                  |   23 +-
 atr/models/args.py                                 |   14 +
 atr/models/distribution.py                         |    2 +-
 atr/models/results.py                              |   10 +
 atr/models/safe.py                                 |   21 +
 atr/models/sql.py                                  |  139 +-
 atr/paths.py                                       |   16 +-
 atr/post/__init__.py                               |    4 +-
 atr/post/announce.py                               |  112 +-
 atr/post/ignores.py                                |    8 +-
 atr/post/keys.py                                   |   11 +-
 atr/post/manual.py                                 |   16 +-
 atr/{tasks/task.py => post/notifications.py}       |   34 +-
 atr/post/projects.py                               |   66 +-
 atr/post/resolve.py                                |   12 +-
 atr/post/start.py                                  |    1 +
 atr/post/voting.py                                 |   58 +-
 atr/render.py                                      |  181 +-
 atr/server.py                                      |   28 +-
 atr/sessions.py                                    |   19 +-
 atr/shared/__init__.py                             |    2 -
 atr/shared/announce.py                             |    7 +
 atr/shared/distribution.py                         |    4 +-
 atr/shared/keys.py                                 |    4 +-
 atr/shared/manual.py                               |    1 +
 atr/shared/projects.py                             |  209 +-
 atr/shared/resolve.py                              |    9 +-
 atr/shared/start.py                                |    4 +
 atr/shared/voting.py                               |   18 +-
 atr/shared/web.py                                  |  155 --
 atr/static/css/atr.css                             |    8 +
 atr/static/js/min/mermaid.min.js                   | 2105 ++++++++++----------
 atr/static/js/src/notifications-dismiss.js         |   73 +
 atr/static/js/src/ongoing-tasks-poll.js            |  168 +-
 atr/static/js/src/projects-directory.js            |   57 +-
 atr/storage/__init__.py                            |   87 +-
 atr/storage/readers/__init__.py                    |    3 +-
 atr/storage/readers/{user.py => notifications.py}  |   43 +-
 atr/storage/readers/user.py                        |    7 +
 atr/storage/types.py                               |    4 +
 atr/storage/writers/__init__.py                    |    2 +
 atr/storage/writers/announce.py                    |  120 +-
 atr/storage/writers/checks.py                      |    1 +
 atr/storage/writers/distributions.py               |   20 +-
 atr/storage/writers/keys.py                        |   87 +-
 atr/storage/writers/notifications.py               |   88 +
 atr/storage/writers/policy.py                      |    1 +
 atr/storage/writers/project.py                     |   85 +-
 atr/storage/writers/release.py                     |  269 ++-
 atr/storage/writers/revision.py                    |    9 +-
 atr/storage/writers/sbom.py                        |   16 +
 atr/storage/writers/vote.py                        |   89 +-
 atr/svn/__init__.py                                |   41 +-
 atr/tabulate.py                                    |   67 +-
 atr/tasks/__init__.py                              |    5 +
 atr/tasks/checks/__init__.py                       |   15 +
 atr/tasks/checks/signature.py                      |   18 +-
 atr/tasks/quarantine.py                            |   36 +-
 atr/tasks/vote.py                                  |    4 +-
 atr/templates/check-selected-quarantine.html       |   40 +
 atr/templates/check-selected-release-info.html     |    8 +-
 atr/templates/check-selected.html                  |  137 +-
 atr/templates/committee-view.html                  |    3 +
 atr/templates/includes/topnav.html                 |    4 +
 atr/templates/layouts/base.html                    |    3 +-
 atr/templates/macros/flash.html                    |   21 +
 atr/templates/projects.html                        |   10 +-
 atr/templates/releases-finished.html               |   16 +-
 atr/templates/report-selected-path.html            |   31 +-
 atr/templates/tutorial.html                        |    2 +-
 atr/util.py                                        |  247 ++-
 atr/validate.py                                    |  116 +-
 atr/web.py                                         |   12 +-
 atr/worker.py                                      |   72 +-
 bootstrap/source/package-lock.json                 |  267 +--
 bootstrap/source/package.json                      |    2 +-
 migrations/versions/0083_2026.05.14_7c4f8a2e.py    |   76 +
 migrations/versions/0084_2026.05.15_07dcce45.py    |   35 +
 migrations/versions/0085_2025.05.19_9d086f7e.py    |   43 +
 migrations/versions/0086_2026.05.26_a69c86b6.py    |   27 +
 pip-audit.requirements                             |   22 +-
 playwright/test.py                                 |    3 +-
 scripts/check_pth_files.py                         |   69 +
 scripts/keys_import.py                             |   17 +-
 tests/e2e/announce/conftest.py                     |   99 +
 tests/e2e/announce/helpers.py                      |   46 +
 tests/e2e/announce/test_auto_archive.py            |   73 +
 tests/e2e/announce/test_get.py                     |    2 +-
 tests/e2e/helpers.py                               |   31 +
 tests/e2e/ignores/test_get.py                      |    3 +
 tests/e2e/ignores/test_post.py                     |    3 +
 {atr => tests/e2e/projects}/__init__.py            |    0
 tests/e2e/{upload => projects}/conftest.py         |   40 +-
 tests/e2e/{merge => projects}/test_get.py          |   22 +-
 .../ATR_Test_0x1913BD07F118B758_public.asc         |   13 +
 tests/e2e/test_files/apache-test-0.2.tar.gz.asc    |    7 +
 tests/e2e/vote/conftest.py                         |    7 +
 tests/unit/conftest.py                             |   72 +
 tests/unit/test_archived_project_guard.py          |   51 +
 tests/unit/test_archived_project_writer_guards.py  |  305 +++
 tests/unit/test_blueprints.py                      |   23 +
 tests/unit/test_cache.py                           |   70 +
 tests/unit/test_checks_license.py                  |   33 +-
 tests/unit/test_compose_polling.py                 |   58 +
 tests/unit/test_concern_acknowledgements.py        |   62 +
 tests/unit/test_construct_announce.py              |   63 +-
 tests/unit/test_create_revision.py                 |    7 +
 tests/unit/test_create_revision_quarantine.py      |   10 +
 tests/unit/test_cycles.py                          |  116 ++
 tests/unit/test_keys_post.py                       |   11 -
 tests/unit/test_keys_writer.py                     |  182 +-
 tests/unit/test_policy_writer.py                   |   13 +-
 tests/unit/test_quarantine_task.py                 |   27 +-
 tests/unit/test_release_writer_archive.py          |  123 ++
 tests/unit/test_sessions.py                        |    4 +
 tests/unit/test_shared_projects.py                 |  129 ++
 tests/unit/test_source_artifact_check.py           |    8 +-
 tests/unit/test_svn_publish_helpers.py             |   80 +
 tests/unit/test_svn_publish_tasks_db.py            |  194 ++
 tests/unit/test_tabulate.py                        |   26 +-
 tests/unit/test_vote_end_notify.py                 |    4 +-
 tests/unit/test_vote_recipients.py                 |   15 +-
 tests/unit/test_vote_rendering.py                  |    4 +-
 tests/unit/test_vote_resolution.py                 |  108 +-
 tests/unit/test_vote_serials.py                    |    8 +-
 uv.lock                                            |  241 ++-
 172 files changed, 8139 insertions(+), 2904 deletions(-)
 delete mode 100644 atr/docs/check-ignores.md
 create mode 100644 atr/docs/sbom-workflows.md
 copy atr/{tasks/task.py => post/notifications.py} (52%)
 delete mode 100644 atr/shared/web.py
 create mode 100644 atr/static/js/src/notifications-dismiss.js
 copy atr/storage/readers/{user.py => notifications.py} (51%)
 create mode 100644 atr/storage/writers/notifications.py
 create mode 100644 atr/templates/check-selected-quarantine.html
 create mode 100644 migrations/versions/0083_2026.05.14_7c4f8a2e.py
 create mode 100644 migrations/versions/0084_2026.05.15_07dcce45.py
 create mode 100644 migrations/versions/0085_2025.05.19_9d086f7e.py
 create mode 100644 migrations/versions/0086_2026.05.26_a69c86b6.py
 create mode 100755 scripts/check_pth_files.py
 create mode 100644 tests/e2e/announce/test_auto_archive.py
 copy {atr => tests/e2e/projects}/__init__.py (100%)
 copy tests/e2e/{upload => projects}/conftest.py (63%)
 copy tests/e2e/{merge => projects}/test_get.py (59%)
 create mode 100644 tests/e2e/test_files/ATR_Test_0x1913BD07F118B758_public.asc
 create mode 100644 tests/unit/conftest.py
 create mode 100644 tests/unit/test_archived_project_guard.py
 create mode 100644 tests/unit/test_archived_project_writer_guards.py
 create mode 100644 tests/unit/test_compose_polling.py
 create mode 100644 tests/unit/test_concern_acknowledgements.py
 create mode 100644 tests/unit/test_release_writer_archive.py
 create mode 100644 tests/unit/test_shared_projects.py
 create mode 100644 tests/unit/test_svn_publish_helpers.py
 create mode 100644 tests/unit/test_svn_publish_tasks_db.py


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@tooling.apache.org
For additional commands, e-mail: commits-help@tooling.apache.org