Skip to content

Commit 9e25d4f

Browse files
committed
finished abstract; added "What this proposal is not" section
1 parent a21b474 commit 9e25d4f

File tree

1 file changed

+8
-3
lines changed

1 file changed

+8
-3
lines changed

Diff for: rfc/provisional_features.md

+8-3
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,18 @@
66
- These features (including their API) benefit from wide community feedback, and suffer in the vacumn of 1000+ line single PRs
77
- The more complex a feature, the more likely it is for its first draft to have at least some poorly formed or ill-considered API
88

9-
To fix this, I propose that we should adopt a formal process for allowing provisional features in the master branch of JuptyerLab core.
9+
To fix this, I propose that we should adopt a formal process for allowing provisional features in the master branch of JuptyerLab core. This will give the core dev team the opportunity to dogfood and improve complex features before declaring them fit for wider consumption in production code.
10+
11+
Our process should aim for an ideal whereby once a feature is declared mature, it will require no further changes to its API. This in turn would mean fewer breaking changes and less overall maintainence for 3rd party devs.
1012

1113
- Goals
1214
- a better experience for core devs, extension devs, and power users around versioning and compatibility
1315
- easier version migration for core and extensions packages
1416

17+
- What this proposal is not
18+
- a general call to relax semver discipline
19+
- saying that we should hold a community-wide referendum every time someone proposes a new provisional feature
20+
1521
- Terminology
1622
- community: JupyterLab core devs, extension devs, and end users
1723
- API: public interface, including externally visible package structure, function signatures, CLI, and, in the broadest sense, user interface
@@ -23,8 +29,7 @@
2329
- Include an outline of future work, including a rough schedule describing the process by which this feature will graduate by the time of the next major release
2430

2531
- Graduating a feature from provisional to mature
26-
- A provisional feature may graduate on any minor release
27-
- A provisional feature must graduate by the next major release (wrt when it was initally pulled into core) or be removed
32+
- A provisional feature must graduate on the next major release (wrt when it was initally pulled into core) or be removed
2833

2934
- How to treat a provisional feature
3035
- In JupyterLab core code:

0 commit comments

Comments
 (0)