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
|
||||
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
|
||||
|
||||
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.
|
||||
In other words, this is not supposed to be a wishlist of features that should
|
||||
|
|
Loading…
Reference in New Issue