Skip to content

Commit f155921

Browse files
committed
Rudimentary spec release guide
1 parent 5ba1794 commit f155921

File tree

1 file changed

+40
-0
lines changed

1 file changed

+40
-0
lines changed

Diff for: README.md

+40
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,46 @@ $ ls _site/
4444
```
4545

4646

47+
## Making a spec release
48+
49+
The Sphinx doc at `spec/draft/` should be where the in-development spec resides,
50+
with `src/array_api_stubs/_draft/` containing its respective stubs. A spec
51+
release should involve:
52+
53+
* Renaming `src/array_api_stubs/_draft/` to `src/array_api_stubs/_YYYY_MM`
54+
* Renaming `spec/draft/` to `spec/YYYY.MM`
55+
* Updating `spec/YYYY.MM/conf.py`
56+
57+
```diff
58+
- from array_api_stubs import _draft as stubs_mod
59+
+ from array_api_stubs import _YYYY_MM as stubs_mod
60+
...
61+
- release = "DRAFT"
62+
+ release = "YYYY.MM"
63+
```
64+
65+
* Updating `spec/_ghpages/versions.json`
66+
67+
```diff
68+
{
69+
+ "YYYY.MM": "YYYY.MM",
70+
```
71+
72+
* Updating `Makefile`
73+
74+
```diff
75+
-sphinx-build "$(SOURCEDIR)/PREVIOUS.VER" "$(BUILDDIR)/PREVIOUS.VER" $(SPHINXOPTS)
76+
+ -sphinx-build "$(SOURCEDIR)/YYYY.MM" "$(BUILDDIR)/YYYY.MM" $(SPHINXOPTS)
77+
- -cp -r "$(BUILDDIR)/PREVIOUS.VER" "$(BUILDDIR)/latest"
78+
+ -cp -r "$(BUILDDIR)/YYYY.MM" "$(BUILDDIR)/latest"
79+
```
80+
81+
These changes should be committed and tagged. The next draft should then be
82+
created. TODO: instructions. See this [StackOverflow question](https://stackoverflow.com/q/74365771/5193926)
83+
for background
84+
85+
<!-- TODO: write a script to automate/standardise this -->
86+
4787
## Contributors ✨
4888

4989
Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/docs/en/emoji-key)):

0 commit comments

Comments
 (0)