Merge branch 'jc/breaking-changes-early-adopter-option'
Describe the policy to introduce breaking changes. * jc/breaking-changes-early-adopter-option: BreakingChanges: early adopter optionmaint
commit
47c3170a3e
|
@ -59,10 +59,29 @@ over time. If circumstances change, an earlier decision to deprecate or change
|
||||||
something may need to be revisited from time to time. So do not take items on
|
something may need to be revisited from time to time. So do not take items on
|
||||||
this list to mean "it is settled, do not waste our time bringing it up again".
|
this list to mean "it is settled, do not waste our time bringing it up again".
|
||||||
|
|
||||||
|
== Procedure
|
||||||
|
|
||||||
|
Discussing the desire to make breaking changes, declaring that breaking
|
||||||
|
changes are made at a certain version boundary, and recording these
|
||||||
|
decisions in this document, are necessary but not sufficient.
|
||||||
|
Because such changes are expected to be numerous, and the design and
|
||||||
|
implementation of them are expected to span over time, they have to
|
||||||
|
be deployable trivially at such a version boundary.
|
||||||
|
|
||||||
|
The breaking changes MUST be guarded with the a compile-time switch,
|
||||||
|
WITH_BREAKING_CHANGES, to help this process. When built with it,
|
||||||
|
the resulting Git binary together with its documentation would
|
||||||
|
behave as if these breaking changes slated for the next big version
|
||||||
|
boundary are already in effect. We may also want to have a CI job
|
||||||
|
or two to exercise the work-in-progress version of Git with these
|
||||||
|
breaking changes.
|
||||||
|
|
||||||
|
|
||||||
== Git 3.0
|
== Git 3.0
|
||||||
|
|
||||||
The following subsections document upcoming breaking changes for Git 3.0. There
|
The following subsections document upcoming breaking changes for Git 3.0. There
|
||||||
is no planned release date for this breaking version yet.
|
is no planned release date for this breaking version yet. The early
|
||||||
|
adopter configuration used for changes for this release is `feature.git3`.
|
||||||
|
|
||||||
Proposed changes and removals only include items which are "ready" to be done.
|
Proposed changes and removals only include items which are "ready" to be done.
|
||||||
In other words, this is not supposed to be a wishlist of features that should
|
In other words, this is not supposed to be a wishlist of features that should
|
||||||
|
|
Loading…
Reference in New Issue