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
x/build/cmd/relnote: missed API changes #62376
Comments
Looking at cmd/relnote, I think it's this line: if issue := gh.Issue(num); issue != nil && !issue.ClosedAt.Before(cutoff) && hasLabel(issue, "Proposal-Accepted") { Note `ClosedAt. The issue in question, #57237 was not closed. I think that it wasn't closed because there were two parts to it, one for encoding/binary and one for x/sys/cpu. The two independent CLs referenced it but didn't close it. I just closed it today as I think the work is complete. |
I spotted another source of possible inaccuracies in relnote while looking into this earlier: it uses a fairly crude heuristic for computing the start and end of each major Go release cycle, exactly 6 months apart (source). That heuristic is still fairly accurate, but the development cycle is now slightly expanded due to recent changes including a late freeze and early thaw, which may also contribute to some items being missed if they were at the very start or end of a cycle. @jba Are you interested in taking this issue since you're working on #64169 now and this seems related? |
Yes, I'll own it. |
Change https://go.dev/cl/542855 mentions this issue: |
Occasionally a proposal is implemented, but the associated issue isn't closed. To ensure we don't forget to write a release note in that case, print a warning for all unclosed proposal issues that are mentioned by at least one CL. For golang/go#62376. Change-Id: I3cca9065a3dd34af3c8bbbaf9c09dcdfaad2c9e1 Reviewed-on: https://go-review.googlesource.com/c/build/+/542855 Run-TryBot: Jonathan Amsterdam <jba@google.com> Reviewed-by: Dmitri Shuralyov <dmitshur@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: Dmitri Shuralyov <dmitshur@golang.org>
Marking this as a release blocker for Go 1.23 because the general problem of missing API changes may still remain. I don't understand how relnote can work on the new markdown files in the RELNOTE=yes CL comment case, since there are no CL numbers in the new markdown files for it to look for. Or are there? |
We shouldn't miss API changes, because there is a test in the main repo. We may miss other things, like changes to commands. RELNOTE= comments are obsolete in the current design; authors should instead add a This wasn't communicated clearly in the README; fixed in https://go.dev/cl/582075. The We should probably also ask authors of release notes about accepted proposals to put the issue number in a comment in the note. Then we can look for CLs that mention accepted proposals that don't appear in the notes. That is future work. |
Change https://go.dev/cl/582097 mentions this issue: |
- The `todo` subcommand now looks at CLs with "RELNOTE=" comments, as well as TODO comments in doc/next/*.md files. - The cutoff date must now be provided manually on the command line, avoiding errors in calculating it automatically. - It is now an error to run `relnote` without a subcommand. For golang/go#62376. For golang/go#62376. Change-Id: I34cf3d9dc7537daf7d0b479245b4c870106ac987 Reviewed-on: https://go-review.googlesource.com/c/build/+/582097 Reviewed-by: Dmitri Shuralyov <dmitshur@golang.org> Reviewed-by: Dmitri Shuralyov <dmitshur@google.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Somehow we missed the addition of binary.NativeEndian, which is listed in the API files, when preparing the Go 1.21 documentation. The existence in the API files marked with
#57237
should have provoked relnote to insist on a reference togo.dev/issue/57237
in go1.21.html, but there is no such mention. #62349 tracks updating the docs. This issue is about fixing the process that led to the incomplete docs.Just before the release we noticed that we'd forgotten to document the new runtime.PanicNilError, and again it seems like relnote should have noticed and caught that for us.
Marking a release blocker for Go 1.22 because we need to understand why we are dropping release notes on the floor. Either we are not using relnote often enough or correctly or there is a bug in it.
The text was updated successfully, but these errors were encountered: