Skip to content
Merged
Show file tree
Hide file tree
Changes from 6 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/ci_workflows.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ jobs:
strategy:
fail-fast: true
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
os: [ubuntu-latest, macos-latest, windows-latest, windows-11-arm]
python: ['3.x']
toxenv: [test]
toxargs: [-v]
Expand Down
7 changes: 6 additions & 1 deletion .github/workflows/publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ jobs:

build_and_publish:

uses: OpenAstronomy/github-actions-workflows/.github/workflows/publish.yml@28e947497bed4d6ec3fa1d66d198e95a1d17bc63 # v2.2.1
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

note that this hash doesn't match the version in comment, but points ahead of it, because version 2.2.3 isn't released yet.

https://github.com/OpenAstronomy/github-actions-workflows

(pyerfa maintainers: this class of issue can be treated as security problems and as such, can be linted against using zizmor. Let me know if you're interested and I can set it up for this repo, as I previously did for astropy)

Copy link
Contributor Author

@finnagin finnagin Oct 27, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry about that! @neutrinoceros should we wait for a new release of OpenAstronomy/github-actions-workflows and then bump the hash/version to that v2.2.3 release?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yes ! It's not difficult to release, we just need someone to pick it up :)

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

2.3.0 is out

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Awesome! I'll go ahead and update the hash/version number.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can this be merged now?

uses: OpenAstronomy/github-actions-workflows/.github/workflows/publish.yml@80387e9fbf2f4aeeacc7c2db79d4d1c17154ae95 # v2.2.2
if: (github.repository == 'liberfa/pyerfa')
with:

Expand Down Expand Up @@ -52,6 +52,11 @@ jobs:
- cp3*win32
- cp3*win_amd64
- pp3*-win_amd64
# Windows arm64 wheels
- cp311*win_arm64
- cp312*win_arm64
- cp313*win_arm64
- cp314*win_arm64
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

One job should be enough, given that pyerfa builds abi3 weels

Suggested change
- cp311*win_arm64
- cp312*win_arm64
- cp313*win_arm64
- cp314*win_arm64
- cp3*-win_arm64

Copy link
Contributor Author

@finnagin finnagin Oct 23, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That makes sense. Though the problem I ran into is that when I run cp3*-win_arm64 it tried to build for python 3.9 and fails when building numpy which is only available on arm64 for 3.11+ so I specified 3.11-3.14 individually. Should I replace it instead with just one version like cp311*win_arm64 or maybe cp314*win_arm64? Or is it possible to do something kind of like cp31+([1-9])*win_arm64 that specifies any python after 3.11?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh you're right, it won't work on 3.9 or 3.10. However, it's still important to use a single line here, as the underlying workflow will create as many jobs as there are lines, and we ultimately don't need more than the one wheel. This should do:

Suggested change
- cp311*win_arm64
- cp312*win_arm64
- cp313*win_arm64
- cp314*win_arm64
- cp3{11,12,13,14}-win_arm64

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That makes sense, thanks!

Copy link
Contributor Author

@finnagin finnagin Oct 23, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It probably doesn't really matter here, but it looks like another option that works is cp31[1-9]*win_arm64 in case you wanted it to build/test for versions after 3.14 later without having to go back and update the line.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The report will still need to be updated for cibw to target newer versions. Also, this won't work for 3.20 and later.

In any case, 3.15 might introduce some new ABI we'll want to use too (PEP 803 and 809), which will warrant a revisit

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Unresolved just in case someone else is like me and sees the cp3* and wonders why it isn't used here. (I don't want to re-run just to add a comment...)


secrets:
pypi_token: ${{ secrets.pypi_token }}
Expand Down