blob: 3bb8412ad54f678c077ac5e63db347aa12cb3559 [file] [log] [blame] [view]
Jonathan Amsterdamb3cfb242023-11-15 08:23:23 -05001# Release Notes
2
3The `initial` and `next` subdirectories of this directory are for release notes.
4
Jonathan Amsterdam6037c8a2024-01-22 13:20:07 -05005## For developers
6
Jonathan Amsterdamb3cfb242023-11-15 08:23:23 -05007Release notes should be added to `next` by editing existing files or creating new files.
8
Jonathan Amsterdam6037c8a2024-01-22 13:20:07 -05009At the end of the development cycle, the files will be merged by being
10concatenated in sorted order by pathname. Files in the directory matching the
11glob "*stdlib/*minor" are treated specially. They should be in subdirectories
12corresponding to standard library package paths, and headings for those package
13paths will be generated automatically.
Jonathan Amsterdamb3cfb242023-11-15 08:23:23 -050014
Jonathan Amsterdam6037c8a2024-01-22 13:20:07 -050015Files in this repo's `api/next` directory must have corresponding files in
Alan Donovanb0799672024-01-26 11:19:22 -050016`doc/next/*stdlib/*minor`.
17The files should be in the subdirectory for the package with the new
18API, and should be named after the issue number of the API proposal.
19For example, if the directory `6-stdlib/99-minor` is present,
20then an `api/next` file with the line
Jonathan Amsterdamb3cfb242023-11-15 08:23:23 -050021
22 pkg net/http, function F #12345
23
Alan Donovanb0799672024-01-26 11:19:22 -050024should have a corresponding file named `doc/next/6-stdlib/99-minor/net/http/12345.md`.
Jonathan Amsterdamb3cfb242023-11-15 08:23:23 -050025At a minimum, that file should contain either a full sentence or a TODO,
26ideally referring to a person with the responsibility to complete the note.
Jonathan Amsterdam6037c8a2024-01-22 13:20:07 -050027
Alan Donovanb0799672024-01-26 11:19:22 -050028Use the following forms in your markdown:
29
30 [`http.Request`](/pkg/net/http#Request) # symbol documentation
31 [#12345](/issue/12345) # GitHub issues
32 [CL 6789](/cl/6789) # Gerrit changelists
33
Jonathan Amsterdam6037c8a2024-01-22 13:20:07 -050034## For the release team
35
36At the start of a release development cycle, the contents of `next` should be deleted
37and replaced with those of `initial`. From the repo root:
38
39 > cd doc
40 > rm -r next/*
41 > cp -r initial/* next
42
43Then edit `next/1-intro.md` to refer to the next version.
44
45To prepare the release notes for a release, run `golang.org/x/build/cmd/relnote generate`.
46That will merge the `.md` files in `next` into a single file.