Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add GitHub Action for checking free-threaded build #111062

Closed
Tracked by #108219
corona10 opened this issue Oct 19, 2023 · 26 comments
Closed
Tracked by #108219

Add GitHub Action for checking free-threaded build #111062

corona10 opened this issue Oct 19, 2023 · 26 comments
Assignees

Comments

@corona10
Copy link
Member

corona10 commented Oct 19, 2023

Currently, nogil build has been added to buildbot, but it is inconvenient to check whether it is working properly in the PR stage.
So I would like to suggest: Putting a CI that checks nogil builds in Github Action.

This will satisfy the following conditions:

If this happens, it will be very helpful in reviewing nogil-related PRs.

Linked PRs

@hugovk hugovk changed the title Add Github Action for checking nogil build Add GitHub Action for checking nogil build Oct 19, 2023
@corona10
Copy link
Member Author

As I shared on the discord, I will proceed this issue during the PyCon APAC sprint :)

@corona10
Copy link
Member Author

corona10 commented Oct 28, 2023

We are going to set up the CI based on the reusable workflow that @hugovk suggested.
And CIs will be triggered only if the topic-free-threaded is attached.
I will separate it into multiple tasks so that more people can participate in this issue.

  • Add topic-free-threaded label
  • Add Linux CI based on reusable workflow: @NCLI
  • Add macOS CI based on reusable workflow: @dimaqq
  • Add Windows CI based on reusable workflow: @jota12x & @corona10

@hugovk
Copy link
Member

hugovk commented Oct 28, 2023

Please also open an issue about creating a new label: https://github.com/python/core-workflow/issues/new/choose

And see the end of the SC announcement:

We want to avoid negatives in terms and flags and such, so we won’t get into double-negative terrain (like we do when we talk about ‘non no-GIL’). We’d like a positive, clear term to talk about the no-GIL build, and we’re suggesting ‘free-threaded’. (Relatedly, that’s why the build mode/ABI letter is ‘t’ and not ‘n’; that change was already made.)

https://discuss.python.org/t/pep-703-making-the-global-interpreter-lock-optional-in-cpython-acceptance/37075?u=hugovk

So perhaps topic-free-threaded is more appropriate.

@dimaqq
Copy link
Contributor

dimaqq commented Oct 29, 2023

Taking MacOS for the sprint

@NCLI
Copy link
Contributor

NCLI commented Oct 29, 2023

I am taking Linux

@corona10
Copy link
Member Author

Good example: #110794 (comment)

corona10 added a commit to corona10/cpython that referenced this issue Oct 29, 2023
corona10 added a commit to corona10/cpython that referenced this issue Oct 29, 2023
corona10 added a commit to corona10/cpython that referenced this issue Oct 29, 2023
corona10 added a commit to corona10/cpython that referenced this issue Oct 29, 2023
dimaqq added a commit to dimaqq/cpython that referenced this issue Oct 29, 2023
For python#111062, in order to run nogil build/tests, separate the build into
a reusable workflow first.

syntax

pass config_hash along

one reusable per os

typos

typos

cleanup🧼

cleanup🧼
@corona10
Copy link
Member Author

@hugovk I will leave the name of reusable workflow to you since I am not sure which convention will be better.

@corona10
Copy link
Member Author

corona10 commented Oct 29, 2023

Now macOS CIs supports both default and free-threaded mode (just for topic-free-threaded label).

@corona10 corona10 changed the title Add GitHub Action for checking nogil build Add GitHub Action for checking free-threaded build Oct 29, 2023
@hugovk
Copy link
Member

hugovk commented Oct 31, 2023

Let's also backport to the 3.12 and 3.11 branches.

Obviously the free-threading bits won't be backported, but it will help to have the rest of the structure matching to make it easier to backport other changes.

FullteaR pushed a commit to FullteaR/cpython that referenced this issue Nov 3, 2023
FullteaR pushed a commit to FullteaR/cpython that referenced this issue Nov 3, 2023
FullteaR pushed a commit to FullteaR/cpython that referenced this issue Nov 3, 2023
…ode as the conditional CI (python#111493)

* pythongh-111062 Set up free-threaded CI for windows

Co-authored-by: Donghee Na <[email protected]>

* Apply suggestions from code review

Co-authored-by: Hugo van Kemenade <[email protected]>

* Update

* Update names

* Add files

* Update

* Revert "Update"

This reverts commit 4f17e1a.

* fix

---------

Co-authored-by: juanjose.tenorio <[email protected]>
Co-authored-by: Hugo van Kemenade <[email protected]>
FullteaR pushed a commit to FullteaR/cpython that referenced this issue Nov 3, 2023
corona10 added a commit that referenced this issue Nov 16, 2023
)

CI: Move OS test jobs to reusable workflows

Co-authored-by: Donghee Na <[email protected]>
corona10 added a commit that referenced this issue Nov 16, 2023
)

CI: Move OS test jobs to reusable workflows

Co-authored-by: Donghee Na <[email protected]>
aisk pushed a commit to aisk/cpython that referenced this issue Feb 11, 2024
aisk pushed a commit to aisk/cpython that referenced this issue Feb 11, 2024
aisk pushed a commit to aisk/cpython that referenced this issue Feb 11, 2024
…ode as the conditional CI (python#111493)

* pythongh-111062 Set up free-threaded CI for windows

Co-authored-by: Donghee Na <[email protected]>

* Apply suggestions from code review

Co-authored-by: Hugo van Kemenade <[email protected]>

* Update

* Update names

* Add files

* Update

* Revert "Update"

This reverts commit 4f17e1a.

* fix

---------

Co-authored-by: juanjose.tenorio <[email protected]>
Co-authored-by: Hugo van Kemenade <[email protected]>
aisk pushed a commit to aisk/cpython that referenced this issue Feb 11, 2024
Glyphack pushed a commit to Glyphack/cpython that referenced this issue Sep 2, 2024
Glyphack pushed a commit to Glyphack/cpython that referenced this issue Sep 2, 2024
Glyphack pushed a commit to Glyphack/cpython that referenced this issue Sep 2, 2024
…ode as the conditional CI (python#111493)

* pythongh-111062 Set up free-threaded CI for windows

Co-authored-by: Donghee Na <[email protected]>

* Apply suggestions from code review

Co-authored-by: Hugo van Kemenade <[email protected]>

* Update

* Update names

* Add files

* Update

* Revert "Update"

This reverts commit 4f17e1a.

* fix

---------

Co-authored-by: juanjose.tenorio <[email protected]>
Co-authored-by: Hugo van Kemenade <[email protected]>
Glyphack pushed a commit to Glyphack/cpython that referenced this issue Sep 2, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

6 participants