Skip to content

Conversation

@browniebroke
Copy link
Member

Description

Following django-commons template. Trusted publisher has been configured in PyPI and Test PyPI.

Lifted out from #9782 to take advantage of it before the org move. It's time we make a new release, there are a number of unreleased changes, including a few which are making our updated upstream support official.

p-r-a-v-i-n

This comment was marked as outdated.

@browniebroke

This comment was marked as outdated.

@p-r-a-v-i-n

This comment was marked as outdated.

Following django-commons template
@browniebroke
Copy link
Member Author

browniebroke commented Dec 22, 2025

Since we’ve consolidated pre-commit into main.yml, IMO adding needs: pre-commit to the tests job would be nice. Currently, all jobs will run in parallel, but it would be better to make the tests depend on the pre-commit results to prevent unnecessary runs when there are linting errors.".

Having them run in parallel gives you more feedback when they both fail for different reasons, you can fix both in one go this way. What you're suggesting might have pre-commit hide a problem in tests which you would only discover after fixing the linting error.

I agree with your point here , But I assume people likely do testing of their code before pushing in most scenario, But most of time they forgot to run pre-commit locally. so in such scenario the test jobs will run two times which might be costlier.

I thought this would be a trivial change that didn't deserve its own pull request, but you having a differing viewpoint proved me that it's not that trivial, so I've moved this out of this change:

Will be a better place to discuss it - will hide the previous comment as outdated from here to not pollute this PR

@browniebroke
Copy link
Member Author

Actually I should probably update the release process at the same time.

 Create pull request for [release notes](https://github.com/encode/django-rest-framework/blob/mains/docs/topics/release-notes.md) based on the [*.*.* milestone](https://github.com/encode/django-rest-framework/milestones/***).
 Update supported versions:
 Ensure the pull request increments the version to `*.*.*` in [`restframework/__init__.py`](https://github.com/encode/django-rest-framework/blob/main/rest_framework/__init__.py).
 Ensure documentation validates 
 Confirm that release is finalized and ready to go. 
 Ensure that release date is included in pull request.
 Merge the release pull request.
-Install the release tools: `pip install build twine`
-Build the package: `python -m build`
-Push the package to PyPI with `twine upload dist/*`
-Tag the release, with `git tag -a *.*.* -m 'version *.*.*'; git push --tags`.
-Deploy the documentation with `mkdocs gh-deploy`.
+Create the git tag
+Wait for the release workflow to run. It will build the distribution, upload it to Test PyPI, PyPI and create the GitHub release
 Make a release announcement on the [discussion group](https://groups.google.com/forum/?fromgroups#!forum/django-rest-framework).
-Make a release announcement on twitter.
+Make a release announcement on social media.
 Close the milestone on GitHub.

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