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

hainenber pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/superset.git


The following commit(s) were added to refs/heads/master by this push:
     new 6114b81c928 feat(ci): label PRs/issues from UTSC 2026 students (#45656)
6114b81c928 is described below

commit 6114b81c928466f2396cad3e902cd1bfa082e427
Author: Evan Rusackas <[email protected]>
AuthorDate: Fri Oct 23 16:58:46 2026 +0100

    feat(ci): label PRs/issues from UTSC 2026 students (#45656)
    
    Co-authored-by: Claude Sonnet 5 <[email protected]>
---
 .github/utsc2026-students.yml          | 63 ++++++++++++++++++++++++++++++++++
 .github/workflows/utsc2026-labeler.yml | 57 ++++++++++++++++++++++++++++++
 2 files changed, 120 insertions(+)

diff --git a/.github/utsc2026-students.yml b/.github/utsc2026-students.yml
new file mode 100644
index 00000000000..a760dba40a8
--- /dev/null
+++ b/.github/utsc2026-students.yml
@@ -0,0 +1,63 @@
+# GitHub handles of UTSC 2026 course students. Any PR or issue opened by one
+# of these users is automatically labeled `utsc2026` (see
+# .github/workflows/utsc2026-labeler.yml). One handle per line, as a YAML
+# list item (`- handle`); `#` starts a comment.
+- JusByte
+- 7AbdUrRehman7
+- jonathan-imanu
+- ara1143
+- MealadE
+- ali-rajan
+- NabilAldihni
+- amnakhairi0
+- alizaasifb
+- CodingRookieA
+- moizm05
+- jchong9
+- EkVid
+- KristiDodaj
+- Kushal-D-Patel
+- Haseeb702
+- Jain-m3392
+- alankritverma01
+- Adrit-3001
+- IshanAmin1
+- rhodwell
+- amandajzhu
+- mbilal29
+- HariBala246
+- mallisho
+- MegumiKat
+- orion222
+- ashyng
+- MatthewSnelgrove
+- auricz
+- milen-t050
+- JosephSun2003
+- JerryHe05
+- dujanah
+- MichaelWK04
+- BobbyAdiSalim
+- ansh-patel2005
+- KobeChui
+- DarthJarJarJar
+- HBenipal
+- yoloanda
+- CherylZ4
+- RohithS05
+- ZayLinAung
+- devCodesApps
+- IsaiahH2004
+- dauiysuns
+- AashirM2004
+- Madan015
+- teddio496
+- lilyxm
+- anish422
+- neloduka-sobe
+- danishmohammed
+- danielstevanus88
+- adeebnawshad
+- zuhair-mzk
+- LucasP4321
+- eliu0412
diff --git a/.github/workflows/utsc2026-labeler.yml 
b/.github/workflows/utsc2026-labeler.yml
new file mode 100644
index 00000000000..fae6ee421d4
--- /dev/null
+++ b/.github/workflows/utsc2026-labeler.yml
@@ -0,0 +1,57 @@
+name: "UTSC 2026 Student Labeler"
+
+on: # zizmor: ignore[dangerous-triggers] - needs pull_request_target for a
+  # writable token on fork PRs; the script only reads the opaque author
+  # login/number fields below, never PR-controlled free text (title, body,
+  # branch), and nothing is interpolated into a shell `run:`
+  pull_request_target:
+    branches: [master]
+    types: [opened]
+  issues:
+    types: [opened]
+
+concurrency:
+  group: ${{ github.workflow }}-${{ github.event.pull_request.number || 
github.event.issue.number }}
+  cancel-in-progress: true
+
+permissions:
+  contents: read
+
+jobs:
+  label:
+    name: Label
+    permissions:
+      contents: read
+      issues: write # to add the utsc2026 label to a matching issue
+      pull-requests: write # to add the utsc2026 label to a matching PR
+    runs-on: ubuntu-slim
+    steps:
+    - name: Label if author is a UTSC 2026 student
+      uses: actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # 
v9.0.0
+      with:
+        github-token: ${{ secrets.GITHUB_TOKEN }}
+        script: |
+          const { data: file } = await github.rest.repos.getContent({
+            owner: context.repo.owner,
+            repo: context.repo.repo,
+            path: '.github/utsc2026-students.yml',
+          });
+          const students = Buffer.from(file.content, 'base64')
+            .toString('utf8')
+            .split('\n')
+            .map(line => line.replace(/#.*/, '').trim())
+            .filter(line => line.startsWith('- '))
+            .map(line => line.slice(2).trim().toLowerCase());
+
+          const target = context.payload.pull_request ?? context.payload.issue;
+          const author = target.user.login.toLowerCase();
+          if (!students.includes(author)) {
+            return;
+          }
+
+          await github.rest.issues.addLabels({
+            owner: context.repo.owner,
+            repo: context.repo.repo,
+            issue_number: target.number,
+            labels: ['utsc2026'],
+          });

Reply via email to