You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This format was originally used by IPython (IPEP) and continues to be used by the Python Core language (PEP). As currently envisioned, JEPs are written documents, in the form of a Pull Request to this repo, which describes significant proposed units of work on the projects. The README of the repo summarizes this as:
17
+
This format was originally used by [IPython (IPEP)](https://github.com/ipython/ipython/wiki/IPEPs:-IPython-Enhancement-Proposals) and continues to be used by the [Python Core language (PEP)](https://www.python.org/dev/peps/). As currently envisioned, JEPs are written documents, in the form of a Pull Request to this repo, which describes significant proposed units of work on the projects. The README of the repo summarizes this as:
18
18
19
19
“Jupyter Enhancement Proposals will be used when presenting changes or additions that affect multiple components of the Jupyter ecosystem OR changes to a single key component.”
20
20
@@ -44,13 +44,13 @@ With that in mind, the JEP process operates under the following tenets:
44
44
45
45
-**The JEP process naturally complements the PR process, but does not replace it.** A thoroughly-reviewed and approved JEP is a valuable reference during a PR to reduce friction, reduce time-consuming context sharing, and encapsulate decisions and other discussions. Moving a premature PR into a JEP should be a lightweight process that doesn’t cause friction for the contributor.
46
46
47
-
-- GitHub issue and PR templates, for example, across the entire Jupyter project, should have references to the JEP process as a possible outcome of a given PR.
47
+
- GitHub issue and PR templates, for example, across the entire Jupyter project, should have references to the JEP process as a possible outcome of a given PR.
48
48
49
49
-**There is one JEP repository, all Jupyter-governed projects must use it.** To faciliate the easiest possible adoption and high visibility of ideas, a single JEP repository will be used. Even if a JEP only applies to a single organization.
50
50
51
51
- The JEP process **has multiple valid use cases**. Each use case might have a slightly different expected workflow or base JEP template. Some expected use cases include:
52
52
53
-
-- Non-trivial feature proposals within a single component that would benefit from process. (e.g., a non-trivial change to JupyterLab that would benefit from formal process within the JupyterLab project)
53
+
- Non-trivial feature proposals within a single component that would benefit from process. (e.g., a non-trivial change to JupyterLab that would benefit from formal process within the JupyterLab project)
54
54
- Non-trivial features or improvements that span multiple projects.
55
55
- Any proposed changes to published APIs or core specifications (e.g., nbformat)
56
56
- Changes to the JEP process itself.
@@ -112,18 +112,21 @@ If in the course of the implementation, the implementer(s) can choose to withdra
112
112
113
113
This section contains a list of principles and scenarios that can be used to help define a set of principles for determining when something is a JEP. The principles will be used both to determine when something becomes a PR during the JEP pre-proposal stage, as well as to determine when a PR becomes a JEP at an individual repo level.
114
114
115
-
**Principles (If yes, Requires a JEP)**
115
+
**Principles to follow**
116
+
117
+
Below are a few example guidelines to follow when deciding if an idea should include
118
+
a JEP (If yes, it requires a JEP). Under each question is a relevant example proposal.
116
119
117
120
- Does the proposal/implementation require PRs across multiple orgs?
118
-
-- Defining a unique cell identifier
121
+
- Defining a unique cell identifier
119
122
- Does the proposal/implementation PR impact multiple orgs, or have widespread community impact?
120
-
-- Updating nbformat
123
+
- Updating nbformat
121
124
- Does the proposal/implementation change an invariant in one or more orgs?
122
-
-- Defining a unique cell identifier
125
+
- Defining a unique cell identifier
123
126
- Deferred kernel startup
124
127
- Does the proposal/implementation create a new concept that will impact multiple repositories?
125
-
-- Sandboxed cell outputs
126
-
-The proposal involve creating a new repository or subproject?
128
+
- Sandboxed cell outputs
129
+
-Does the proposal involve creating a new repository or subproject?
127
130
128
131
## Distribution
129
132
@@ -139,17 +142,17 @@ for the JEP. When a JEP enters into a final state (e.g., "Completed",
139
142
140
143
## Glossary
141
144
142
-
- Jupyter Enhancement Proposal (JEP): A written document that describes a proposed unit of significant work on Jupyter.
145
+
-**Jupyter Enhancement Proposal (JEP)**: A written document that describes a proposed unit of significant work on Jupyter.
143
146
144
-
- Contributor: The person who is submitting the JEP, and might but not necessarily also have intention on organizing the implementation if so approved.
147
+
-**Contributor**: The person who is submitting the JEP, and might but not necessarily also have intention on organizing the implementation if so approved.
145
148
146
-
- Shepherd: A senior Jupyter contributor that manages the pre-proposal, submission, review, approval process of a JEP.
149
+
-**Shepherd**: A senior Jupyter contributor that manages the pre-proposal, submission, review, approval process of a JEP.
147
150
148
-
- Review Team (RT): A group of Jupyter contributors, with expertise in a particular area of the project that reviews and approves JEPs related to that area.
151
+
-**Review Team (RT)**: A group of Jupyter contributors, with expertise in a particular area of the project that reviews and approves JEPs related to that area.
149
152
150
-
- Final Comment Period (FCP): A finite-time, post-approval period for the community to make final comments.
153
+
-**Final Comment Period (FCP)**: A finite-time, post-approval period for the community to make final comments.
0 commit comments