Skip to content

Feature GitHub actions#29

Closed
j23n wants to merge 7 commits intoeasy-as-python:mainfrom
j23n:feature-github-actions
Closed

Feature GitHub actions#29
j23n wants to merge 7 commits intoeasy-as-python:mainfrom
j23n:feature-github-actions

Conversation

@j23n
Copy link
Contributor

@j23n j23n commented Feb 18, 2026

Hello, this is a proposal to switch to Github actions (#26). You can see the output on my fork: https://github.com/j23n/django-webmention/actions/runs/22139411981

A couple of notes:

  • I've removed EoL Django/Python versions in pyproject.toml
  • I've had to bump the Python version for typechecking with mypy because 9.x uses match internally, which is not supported by Python 3.9
  • I haven't been able to test PyPI publishing. It would require some changes on your side to support trusted publishing.

Let me know if I missed anything :-)

@j23n j23n marked this pull request as ready for review February 18, 2026 12:28
@daneah
Copy link
Member

daneah commented Feb 18, 2026

This work is so appreciated! Thank you @j23n. I fully support the move to Actions and trusted publishing. You are welcome to fully drop Python 3.9 support as it is now end of life (this project isn't something I've kept updated, clearly).

It might take me just a little bit to get to this to check publishing and so on, but I'd very much like to accept this PR.

@j23n
Copy link
Contributor Author

j23n commented Feb 18, 2026

thanks for your fast response! I kept 3.9 in there because django 4.2 is not yet EoL and supports Python 3.9 (and 3.8 actually). Happy to drop 3.9 though, just let me know.

No worries, this isn't urgent. For completeness, here's the trusted publisher docs :-)

@daneah
Copy link
Member

daneah commented Feb 18, 2026

django 4.2 is not yet EoL and supports Python 3.9 (and 3.8 actually)

Fair point, will think on that for a bit.

here's the trusted publisher docs

I've started using trusted publishing in a few other projects and like it quite a bit, so hopefully just a matter of a little bit of config 😄

Copy link
Member

@daneah daneah left a comment

Choose a reason for hiding this comment

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

Let's keep Python 3.9 support as part of this change, which is internal, and remove that support in a separate changeset where we'll also bump to a major version. Although currently-supported Django versions may support an EOL'd version of Python, it doesn't mean we should be enablers in that regard!

There is one thing to fix up in the Actions config regarding building the package.

with:
python-version: "3.14"
- name: Build package
run: python setup.py sdist bdist_wheel
Copy link
Member

Choose a reason for hiding this comment

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

This (and corresponding in publish-pypi-test) should now be using pyproject-build.

pyproject.toml Outdated
@@ -45,7 +45,7 @@ line-length = 120
target-version = ["py39", "py310", "py311", "py312", "py313"]
Copy link
Member

Choose a reason for hiding this comment

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

Suggested change
target-version = ["py39", "py310", "py311", "py312", "py313"]
target-version = ["py39", "py310", "py311", "py312", "py313", "py314"]

@j23n j23n force-pushed the feature-github-actions branch from e058e76 to 3ac69d6 Compare February 19, 2026 08:05
@j23n j23n force-pushed the feature-github-actions branch from 3ac69d6 to 97f7eac Compare February 19, 2026 08:15
@j23n
Copy link
Contributor Author

j23n commented Feb 19, 2026

@daneah sorry, this got a bit messy. I'll rebase and open a new PR with your review.

@j23n j23n closed this Feb 19, 2026
@j23n j23n mentioned this pull request Feb 19, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants