Hello everyone,
I would like to contribute to this issue, and I can see that a pull request is already open. I’m not sure about what steps are remaining to close this issue. Could anyone help me get started?
@carltongibson - I would appreciate your input here
Hi @nimra200
OK, so that was dependent on the Forms changes we got in for Django 4.1. It should be good to go now.
First thing is to checkout locally and rebase on main
. Make sure the changes make sense, review the tests, update the release notes and version changed annotations for Django 4.2 (i.e. releases/4.2.txt
not releases/4.1.txt
) and go through the conversation to see if there were any other left over points.
Does that get you going?
@smithdc1 was working on this but I know he’d be happy for you to pick it up, and would likely offer a word of input if you open a fresh PR.
Hi
Yes, do feel free to pick this up, I’ve not got capacity to look at this any time soon but will be able to provide some comments and guidance.
I think the discussion on the pr will highlight the remaining issues to resolve, in particular this series of comments. Refs #32819 -- Added aria-describedby for help_text. by smithdc1 · Pull Request #15246 · django/django · GitHub. Likely that discussion can be continued on a fresh PR.
The first step I’m trying to do is checkout the PR locally.
I tried ~/django-repo (main) $ git fetch origin pull/15246/head:ticket_32819
and got
fatal: couldn't find remote ref pull/15246/head
. I’m new to git and a little lost. I was following the directions here: Checking out pull requests locally - GitHub Docs
Is origin
django/django
or your fork?
How can I check this?
e.g. in my shell now for channels_redis
:
% git remote show origin
* remote origin
Fetch URL: git@github.com:django/channels_redis.git
Push URL: git@github.com:django/channels_redis.git
HEAD branch: main
Remote branches:
1.x tracked
2.0 tracked
3.4.x tracked
main tracked
Local branches configured for 'git pull':
main merges with remote main
pubsub-test-hang merges with remote remove-async-generator
Local ref configured for 'git push':
main pushes to main (up to date)
You’re looking at the equivalent to this line to say django/django
not
nimra200/django`:
Fetch URL: git@github.com:django/channels_redis.git
Have a read here: Git - Working with Remotes
You need to add django/django
as a remote, and pull the PR branch from there.
The GitHub docs are also very good: Working with forks - GitHub Docs
@nimra200 How did you get on here?
GitHub’s UI also has some GitHub specific options for checking out the PR if you’re still stuck…
Hi Carlton,
Thanks. This is super cool and a feature I have not used. I will check it out.
Thanks.
Sorry, I hadn’t had a chance to look at this for a few days since we had a public holiday. I was able to checkout the PR locally with the github CLI!
I’m trying to rebase on main
but I’m not sure what to do. I tried following this guide: Working with Git and GitHub | Django documentation | Django
I’m not sure what to do once I get to this point:
~/django (ticket_32819) $ git rebase --interactive main
hint: Waiting for your editor to close the file...
pick 73d519c879 Refs #32819 -- Added aria-describedby for help_text.
# Rebase f71b0cf769..73d519c879 onto f71b0cf769 (1 command)
#
# Commands:
# p, pick <commit> = use commit
# r, reword <commit> = use commit, but edit the commit message
# e, edit <commit> = use commit, but stop for amending
# s, squash <commit> = use commit, but meld into previous commit
# f, fixup <commit> = like "squash", but discard this commit's log message
# x, exec <command> = run command (the rest of the line) using shell
# b, break = stop here (continue rebase later with 'git rebase --continue')
# d, drop <commit> = remove commit
# l, label <label> = label current HEAD with a name
# t, reset <label> = reset HEAD to a label
# m, merge [-C <commit> | -c <commit>] <label> [# <oneline>]
# . create a merge commit using the original merge commit's
# . message (or the oneline, if no original merge commit was
# . specified). Use -c <commit> to reword the commit message.
#
# These lines can be re-ordered; they are executed from top to bottom.
#
# If you remove a line here THAT COMMIT WILL BE LOST.
"~/django/.git/rebase-merge/git-rebase-todo" 27L, 1213C
Your best bet would be to google an article or two on rebasing here.
But I recommend trying a GUI, which generally handle the nasty details for you.
I use Fork daily: https://git-fork.com/
When you say “update the release notes and version changed annotations for Django 4.2”, what do you mean?
Thanks for the suggestion! I ended up using sourcetree which was free to use
If you look at the PR you’ll see changes to docs/releases/4.1.txt
— which are the Django 4.1 release notes. Those need moving to docs/releases/4.2.txt
.
Similarly there are versionchanged
annotations that need updating to 4.2
.