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

arm pushed a commit to branch committer_may_release
in repository https://gitbox.apache.org/repos/asf/tooling-trusted-releases.git

commit 912eb8d8fb947678bb8ae518dc61431464e34c33
Author: Alastair McFarlane <[email protected]>
AuthorDate: Tue Feb 10 17:53:39 2026 +0000

    Add committers may release to database
---
 atr/datasources/apache.py                       |  2 ++
 atr/models/sql.py                               |  1 +
 migrations/versions/0049_2026.02.10_7a75ab01.py | 29 +++++++++++++++++++++++++
 3 files changed, 32 insertions(+)

diff --git a/atr/datasources/apache.py b/atr/datasources/apache.py
index f1dfcd3..51b9ca1 100644
--- a/atr/datasources/apache.py
+++ b/atr/datasources/apache.py
@@ -32,6 +32,7 @@ import atr.log as log
 import atr.models.helpers as helpers
 import atr.models.schema as schema
 import atr.models.sql as sql
+import atr.registry as registry
 import atr.util as util
 
 _WHIMSY_COMMITTEE_INFO_URL: Final[str] = 
"https://whimsy.apache.org/public/committee-info.json";
@@ -387,6 +388,7 @@ async def _update_committees(
         committee_info = committees_by_name.get(name)
         if committee_info:
             committee.full_name = committee_info.display_name
+        committee.committers_may_release = committee.name in 
registry.COMMITTERS_MAY_RELEASE_COMMITTEES
 
         updated_count += 1
 
diff --git a/atr/models/sql.py b/atr/models/sql.py
index a6e9aed..72186a9 100644
--- a/atr/models/sql.py
+++ b/atr/models/sql.py
@@ -488,6 +488,7 @@ class Committee(sqlmodel.SQLModel, table=True):
     release_managers: list[str] = sqlmodel.Field(
         default_factory=list, sa_column=sqlalchemy.Column(sqlalchemy.JSON), 
**example(["wave"])
     )
+    committers_may_release: bool = sqlmodel.Field(default=False)
 
     # M-M: Committee -> [PublicSigningKey]
     # M-M: PublicSigningKey -> [Committee]
diff --git a/migrations/versions/0049_2026.02.10_7a75ab01.py 
b/migrations/versions/0049_2026.02.10_7a75ab01.py
new file mode 100644
index 0000000..0e8097d
--- /dev/null
+++ b/migrations/versions/0049_2026.02.10_7a75ab01.py
@@ -0,0 +1,29 @@
+"""Boolean flag for committees where comitters may release
+
+Revision ID: 0049_2026.02.10_7a75ab01
+Revises: 0048_2026.02.06_blocking_to_blocker
+Create Date: 2026-02-10 17:49:59.147228+00:00
+"""
+
+from collections.abc import Sequence
+
+import sqlalchemy as sa
+from alembic import op
+
+# Revision identifiers, used by Alembic
+revision: str = "0049_2026.02.10_7a75ab01"
+down_revision: str | None = "0048_2026.02.06_blocking_to_blocker"
+branch_labels: str | Sequence[str] | None = None
+depends_on: str | Sequence[str] | None = None
+
+
+def upgrade() -> None:
+    with op.batch_alter_table("committee", schema=None) as batch_op:
+        batch_op.add_column(
+            sa.Column("committers_may_release", sa.Boolean(), nullable=False, 
server_default=sa.false())
+        )
+
+
+def downgrade() -> None:
+    with op.batch_alter_table("committee", schema=None) as batch_op:
+        batch_op.drop_column("committers_may_release")


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

Reply via email to