ADR Suggestion Extend ADR #33 (Unified Labeling System)
#49
AndrewSazonov
started this conversation in
Ideas
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
In ADR #33 - Unified Labeling System, four standardized label groups were defined to simplify and unify issue and pull request management across the EasyScience organization.
This ADR suggestion is opened to document recent changes that were not yet captured in ADR #33, and to propose a small extension to the labeling system for automated pull requests.
Changes to
[scope] documentationThe description of the label
[scope] documentationhas been updated.Old description:
New description:
This means that a merged PR labeled with
[scope] documentationshould now result in a version bump likeX.Y.Z.postN, instead of using-EXTENSION.The reason for this change is that
.postversions increase the package version as expected, while using a suffix like-EXTENSIONactually result in a lower version according to Python versioning rules, which is not what we want.New label:
[bot] pull requestTo clearly distinguish automated pull requests from human-authored work, a new label is proposed:
[bot] pull request#5319e7(violet)This label belongs to a new unified group:
[bot] labels group
Description:
This makes automated activity explicit and easier to filter.
Label update scripts
Option 1: Existing bash script (current approach)
We already have an existing bash script in
easyscience/tools:https://github.com/easyscience/tools/blob/master/unified_labels.sh
This script works well for applying unified labels across the organization.
Pros:
Cons:
Option 2: Python script in Copier templates (experimental / incremental)
A Python-based script was added to the Copier templates, mainly as an experiment, to avoid running the bash script for the whole organization every time and to safely test new or updated labels on individual repositories only:
https://github.com/easyscience/templates/blob/master/template/tools/update_github_labels.py
The script is intended to be run via a Pixi task and can target:
It supports a
--dry-runmode to preview the commands that would be executed, without applying any changes.Pros:
Cons:
Option 3: Centralized, CI-based solution (proposed next step)
Given the higher flexibility and maintainability of the Python approach, a possible next step would be to extend it with an option to update all repositories in the organization, move it to
easyscience/tools, and add a workflow to expose it via a GitHub Action usingworkflow_dispatch.Such a workflow could allow:
In this case, the same tool could be run either locally as a cross-platform solution or remotely via GitHub Actions.
Beta Was this translation helpful? Give feedback.
All reactions