@@ -16,17 +16,25 @@ defaults:
1616 run :
1717 shell : bash
1818
19+ concurrency :
20+ group : ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
21+ cancel-in-progress : true
22+
1923jobs :
2024 pre-commit :
2125 runs-on : ubuntu-latest
2226 steps :
2327 - uses : actions/checkout@v6
28+ with :
29+ persist-credentials : false
2430 - uses : pre-commit/action@v3.0.1
2531
2632 mypy :
2733 runs-on : ubuntu-latest
2834 steps :
2935 - uses : actions/checkout@v6
36+ with :
37+ persist-credentials : false
3038 - uses : actions/setup-python@v6
3139 - name : Install package
3240 run : pip install -e ".[test]"
4351 python-version : ["3.10", "3.11", "3.12", "3.13", "3.14", "3.15-dev"]
4452 steps :
4553 - uses : actions/checkout@v6
54+ with :
55+ persist-credentials : false
4656 - uses : actions/setup-python@v6
4757 name : Setup Python ${{ matrix.python-version }}
4858 with :
6070 runs-on : ubuntu-latest
6171 steps :
6272 - uses : actions/checkout@v6
73+ with :
74+ persist-credentials : false
6375 - name : Install build
6476 run : pip install build
6577 - name : Build package
8092 name : pypi
8193 url : https://pypi.org/project/tcod-ecs/${{ github.ref_name }}/
8294 permissions :
83- id-token : write
95+ id-token : write # Attestation
8496 steps :
8597 - uses : actions/download-artifact@v8
8698 with :
@@ -93,14 +105,15 @@ jobs:
93105 name : Create Release
94106 runs-on : ubuntu-latest
95107 permissions :
96- contents : write
108+ contents : write # Publish GitHub Releases
97109 steps :
98110 - name : Checkout code
99111 uses : actions/checkout@v6
112+ with :
113+ persist-credentials : false
100114 - name : Generate body
101115 run : scripts/get_release_description.py | tee release_body.md
102116 - name : Create Release
103117 id : create_release
104- uses : ncipollo/release-action@v1
105- with :
106- bodyFile : release_body.md
118+ # https://cli.github.com/manual/gh_release_create
119+ run : gh release create "${GITHUB_REF_NAME}" --verify-tag --notes-file release_body.md
0 commit comments