@@ -138,30 +138,27 @@ style START fill:#FFFFFF, stroke:#FFFFFF;
138
138
```
139
139
<!-- prettier-ignore-end -->
140
140
141
- The authors starts by _ proposing_ a SPEC idea, as outlined in [ New
141
+ The authors start by _ proposing_ a SPEC idea, as outlined in [ New
142
142
SPEC Proposals] ( #new-spec-proposals ) —please read that section carefully before
143
143
proposing a new SPEC.
144
144
145
- The decision to ** accept** (and number) a SPEC into draft state is made by the Steering Committee,
146
- at which point it is added to the main branch of the [ SPEC
147
- repository] ( https://github.com/scientific-python/specs ) , clearly
148
- labeled as a draft.
149
- Proposed SPECs are accepted once (a) there is agreement that the SPEC
150
- concept is applicable to the ecosystem, (b) a draft pull request is
151
- written to clearly explain the area of common concern and a general
152
- approach to a shared solution, and (c) there are contributors (from at least two Core
153
- Projects) interested in working on the new SPEC and in championing it
154
- to their projects as well as the larger community.
155
- Additional details may be found in [ Steering Committee
156
- documentation] ( /specs/steering-committee ) .
145
+ The decision to ** accept** (and number) a SPEC is made by the Steering
146
+ Committee, once there is agreement that the SPEC concept is
147
+ applicable, and it has been confirmed that there are at least two
148
+ authors from two different projects interested in working on the new
149
+ SPEC and championing it to various projects.
150
+ At this point, the authors may submit a first version of the SPEC as a
151
+ PR to the [ SPEC
152
+ repository] ( https://github.com/scientific-python/specs ) .
153
+ This version may be merged to the main branch whenever the authors
154
+ consider it ready, clearly labeled as a draft (see ` is-draft ` header
155
+ field).
157
156
158
157
In the accepted phase, the authors _ develop_ their SPEC, in
159
158
consultation with Core Projects and interested community members.
160
- This is done in a collabortive and iterative process, focused on
159
+ This is done in a collaborative and iterative process, focused on
161
160
ensuring that the SPEC is broadly applicable and likely to be widely
162
161
adopted.
163
- The intent is that most SPECs will have authors from several projects,
164
- including Core Projects.
165
162
Once authors consider their SPEC complete, they ** publish** it,
166
163
removing its draft status.
167
164
@@ -264,24 +261,34 @@ content = '''
264
261
265
262
### New SPEC Proposals
266
263
264
+ <!-- This is a focused distillation of #decision-points for authors. -->
265
+
267
266
A good SPEC proposal focuses on a single key recommendation or idea
268
- for coordinating projects in the scientific Python ecosystem. Please
269
- also see the [ What is a SPEC?] ( #what-is-a-spec ) section above.
267
+ for coordinating projects in the scientific Python ecosystem, as
268
+ discussed under [ What is a SPEC?] ( #what-is-a-spec ) .
269
+
270
+ As a SPEC moves through the process, it goes through different states,
271
+ as discussed under [ Decision Points] ( #decision-points ) and summarized
272
+ here.
270
273
271
274
** Before proposing** a SPEC, we highly recommended that you first ** vet
272
275
the idea** by doing one or more of the following:
273
276
274
277
1 . discuss the idea with at least one project in the ecosystem,
275
- 2 . discuss the idea with at least one other member of the ecosystem , or
278
+ 2 . discuss the idea with at least one other member of a [ Core Project ] ( /specs/core-projects ) , or
276
279
3 . if it is a technical idea, create a minimal proof of concept.
277
280
278
281
** Before submitting** a proposed SPEC:
279
282
280
- 1 . The ** idea must be proposed** on the discussion forum under the [ ` SPECS/Ideas `
283
+ 1 . Ensure that the SPEC has at least two authors from two different projects,
284
+ to show cross-project interest.
285
+
286
+ 2 . The ** idea must be proposed** on the discussion forum under the [ ` SPECS/Ideas `
281
287
topic] ( https://discuss.scientific-python.org/c/specs/ideas/9 ) .
288
+ Please list your co-authors.
282
289
283
- 2 . If the SPEC committee considers the idea suitable for a SPEC, a
284
- number will be allocated.
290
+ If the SPEC committee considers the idea suitable for a SPEC, the spec
291
+ is ** approved ** and a number is allocated.
285
292
286
293
At this point, you should ** draft your SPEC document and submit it**
287
294
via pull request to the [ SPEC repository] ( https://github.com/scientific-python/specs ) .
@@ -293,14 +300,27 @@ will ask you a few questions[^newspec] and then create a new file
293
300
appropriately named with a basic template for you to complete (e.g.,
294
301
` spec-0000/index.md ` ).
295
302
Leave the ` draft ` field set to ` true ` and the ` endorsed-by ` field empty.
296
- Once the SPEC is in reasonable shape, file a pull request against the
303
+ Once the SPEC is in readable shape, file a pull request against the
297
304
[ SPEC repository] ( https://github.com/scientific-python/specs ) .
305
+ Let the SPEC committee know when you are ready for your PR to be
306
+ merged.
307
+ Once they do so, the SPEC will appear in draft form at
308
+ < https://scientific-python.org/specs > .
309
+
310
+ Your job now is to refine the SPEC iteratively and collaboratively
311
+ with the community, using follow-up PRs.
312
+ You should focus on ensuring that the SPEC is broadly applicable and
313
+ likely to be widely adopted.
314
+ Once you consider your SPEC complete, ** publish** it by making a PR to
315
+ remove its draft status.
298
316
299
317
## Endorsing a SPEC
300
318
319
+ <!-- This is a focused distillation of #decision-points for Core Projects. -->
320
+
301
321
[ Core Projects] ( /specs/core-projects ) may signal their approval of a SPEC by _ endorsing_ it.
302
322
This endorsement makes it more likely that other projects will _ adopt_ it.
303
- Endorsing a SPEC does _ not_ , however, mean that a Core Project needs to _ adopt_ a SPEC, although they typically would if feasible.
323
+ Endorsing a SPEC does _ not_ , however, mean that a Core Project needs to _ adopt_ a SPEC, although it typically would if feasible.
304
324
Core Projects use their project-specific discussion and decision making mechanisms to decide whether to endorse a SPEC.
305
325
306
326
Once a Core Project decides to endorse a SPEC, they add their project
0 commit comments