Skip to content

Commit 4b3671b

Browse files
committed
EFP: Create: Compact Staged Versioning
1 parent 31f82bf commit 4b3671b

File tree

1 file changed

+64
-0
lines changed

1 file changed

+64
-0
lines changed

efp/efp-x/main.xml

Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
<?xml version="1.1" encoding="UTF-8" ?>
2+
<efp xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../efp.xsd"
3+
efp="" created="2026-03-21" category="standard" status="draft" title="Compact Staged Versioning">
4+
<metadata>
5+
<pullRequests>
6+
<pullRequest id="20"/>
7+
</pullRequests>
8+
</metadata>
9+
<body>
10+
<section title="Introduction">
11+
<content>
12+
<p>
13+
This versioning system is suitable for a major end product consisting several versioned systems.
14+
This refers to Semantic Versioning (SemVer) for basic reference.
15+
In certain scenarios, it may be difficult to version an end product when underlying components
16+
evolve in different extents and directions, so this basic methodology is introduced.
17+
</p>
18+
</content>
19+
</section>
20+
<section title="Basics">
21+
<content>
22+
<p>
23+
Version string format is as below:
24+
</p>
25+
<code-block lang="ABNF">
26+
version = &lt;stage&gt; "." &lt;major&gt; "." &lt;minor&gt;
27+
stage = "0" / "1"
28+
major = number
29+
minor = number
30+
number = *&lt;positive-digit&gt; &lt;digit&gt;
31+
positive-digit = %x31-39 ; 1-9
32+
digit = %x30-39 ; 0-9
33+
</code-block>
34+
<p>
35+
For <code>stage</code>, zero ("0") means Early Development and one ("1") means Mature State.
36+
For <code>major</code>, frequent incrementation would be expected with breaking changes often occurring.
37+
For <code>minor</code>, insignificant miscellaneous changes may instead increment this value,
38+
but not any breaking changes should be included while patches are often included here.
39+
</p>
40+
</content>
41+
</section>
42+
<section title="Extension">
43+
<content>
44+
<p>
45+
Implementers may extend this string format in any way meaningful for their purposes.
46+
This includes allowing pre-releases or snapshots, or branched releases.
47+
Extending this basic Rule by the pre-release version rules defined in SemVer is also compatible.
48+
</p>
49+
<p>
50+
Often, in Early Development, zero <code>major</code> may mean Alpha stage of development while
51+
non-zero values may imply Beta stage of development. In this case, when <code>major</code> is zero,
52+
<code>minor</code> may include breaking changes as this stage implies unstabilities.
53+
</p>
54+
</content>
55+
</section>
56+
<section title="See also">
57+
<content>
58+
<list>
59+
<li><a href="https://semver.org/spec/v2.0.0.html">SemVer v2.0.0</a></li>
60+
</list>
61+
</content>
62+
</section>
63+
</body>
64+
</efp>

0 commit comments

Comments
 (0)