Skip to content

Commit 15194ab

Browse files
committed
docs: Erstellt eine umfassende Versionsrichtlinie mit Semantic Versioning und empfohlenen Konfigurationen
1 parent a24b7c2 commit 15194ab

1 file changed

Lines changed: 80 additions & 0 deletions

File tree

docs/VERSIONING.md

Lines changed: 80 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,80 @@
1+
# Versioning Guide
2+
3+
This library follows [Semantic Versioning 2.0.0](https://semver.org/) (SemVer).
4+
5+
## Version Format
6+
7+
```
8+
MAJOR.MINOR.PATCH
9+
│ │ └── Bug fixes, no API changes
10+
│ └──────── New features, backward compatible
11+
└────────────── Breaking changes
12+
```
13+
14+
**Current Version:** 2.x
15+
16+
## For Consuming Projects
17+
18+
### Using Version Ranges (Recommended)
19+
20+
To automatically receive compatible updates within a major version line, use version ranges in your project files:
21+
22+
```xml
23+
<!-- Floating version: automatically uses latest 2.x -->
24+
<PackageReference Include="BAUERGROUP.Shared.Core" Version="2.*" />
25+
26+
<!-- Explicit range: 2.0.0 up to (but not including) 3.0.0 -->
27+
<PackageReference Include="BAUERGROUP.Shared.Core" Version="[2.0.0, 3.0.0)" />
28+
29+
<!-- Minimum version: 2.1.0 or higher (including 3.x, 4.x, etc.) -->
30+
<PackageReference Include="BAUERGROUP.Shared.Core" Version="2.1.0" />
31+
```
32+
33+
### Version Range Syntax
34+
35+
| Notation | Description | Example |
36+
|----------|-------------|---------|
37+
| `2.*` | Any 2.x version | 2.0.0, 2.1.9, 2.99.0 |
38+
| `[2.0.0, 3.0.0)` | >= 2.0.0 and < 3.0.0 | 2.0.0 to 2.x.x |
39+
| `[2.1.0,]` | >= 2.1.0 (no upper bound) | 2.1.0 and above |
40+
| `2.1.0` | >= 2.1.0 (NuGet default) | 2.1.0 and above |
41+
42+
### Recommended Configuration
43+
44+
For production applications that need stability within a major version:
45+
46+
```xml
47+
<ItemGroup>
48+
<PackageReference Include="BAUERGROUP.Shared.Core" Version="[2.0.0, 3.0.0)" />
49+
<PackageReference Include="BAUERGROUP.Shared.API" Version="[2.0.0, 3.0.0)" />
50+
<PackageReference Include="BAUERGROUP.Shared.Data" Version="[2.0.0, 3.0.0)" />
51+
<PackageReference Include="BAUERGROUP.Shared.Desktop" Version="[2.0.0, 3.0.0)" />
52+
</ItemGroup>
53+
```
54+
55+
## Our Compatibility Promise
56+
57+
Within the **2.x version line**, we guarantee:
58+
59+
- No breaking changes to public APIs
60+
- No removal of public types, methods, or properties
61+
- No changes to method signatures
62+
- Backward compatible behavior
63+
64+
**Breaking changes** (if necessary) will only occur in a new major version (e.g., 3.0.0).
65+
66+
## Updating Packages
67+
68+
To update to the latest compatible version:
69+
70+
```bash
71+
# Update all packages to latest compatible versions
72+
dotnet restore
73+
74+
# Or force update a specific package
75+
dotnet add package BAUERGROUP.Shared.Core
76+
```
77+
78+
## Release Notes
79+
80+
See [GitHub Releases](https://github.com/bauer-group/LIB-Shared-Plattform-NET/releases) for detailed changelogs.

0 commit comments

Comments
 (0)