Skip to content

Commit 1355577

Browse files
authored
Updated PackageReadMe.md (#22)
* Reformatted * Corrected typos
1 parent 82ac432 commit 1355577

File tree

1 file changed

+23
-20
lines changed

1 file changed

+23
-20
lines changed

src/Ubiquity.NET.Versioning/PackageReadMe.md

Lines changed: 23 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -4,16 +4,17 @@ The Ubiquity.NET.Versioning library provides types to support use of versioning
44
2) [Constrained Semantic Versioning](https://csemver.org)
55
- Including Continuous Integration (CI) via CSemVer-CI
66

7-
It is viable as a standalone package to allow validation of or comparisons to versions reported
8-
at runtime. (Especially from native interop that does not support package dependencies or
9-
versioning at runtime.)
7+
It is viable as a standalone package to allow validation of or comparisons to versions
8+
reported at runtime. (Especially from native interop that does not support package
9+
dependencies or versioning at runtime.)
1010

1111
## Example
1212
``` C#
1313
var quad = new FileVersionQuad(SomeAPiThatRetrievesAFileVersionAsUInt64());
1414
// ...
1515
// NOTE: Since all that is available is a QUAD, which has only 1 bit for CI information,
16-
// there is no way to translate that to a formal CSemVer-CI. Just test ordering of the quad.
16+
// there is no way to translate that to a formal CSemVer-CI. Just test ordering of the
17+
// quad.
1718
if(quad > MinimumVer.FileVersion)
1819
{
1920
// Good to go!
@@ -30,31 +31,33 @@ static readonly CSemVer MinimumVer = new(1,2,3/*, ...*/);
3031
## Formatting
3132
The library contains support for proper formatting of strings based on the rules
3233
of a SemVer, CSemVer, and CSemVer-CI. The formatting is done case preserving when
33-
possible (Some cases of CSemVer will use string substitution such that `PreRelease` would
34-
simply become `pre`).
34+
possible (Some cases of CSemVer will use string substitution such that `PreRelease`
35+
would simply become `pre`).
3536

3637
## Parsing
3738
The library contains support for parsing of strings based on the rules of a
3839
SemVer, CSemVer, and CSemVer-CI
3940

4041
## Ordering
41-
The types all support `IComparable<T>`<sup>[1](#footnote_1)</sup> and properly handle correct
42-
sort ordering of the versions according to the rules of SemVer (Which, CSemVer and CSemVer-CI
43-
follow with the exception of explicit case insensitivity for AphaNumeric IDs)
42+
The types all support `IComparable<T>`<sup>[1](#footnote_1)</sup> and properly handle
43+
correct sort ordering of the versions according to the rules of SemVer (Which, CSemVer
44+
and CSemVer-CI follow with the exception of explicit case insensitivity for AphaNumeric
45+
IDs)
4446

4547
>[!WARNING]
46-
> The formal 'spec' for [CSemVer](https://csemver.org) remains mostly silent on the point
47-
> of the short format. See this [known issue](https://github.com/CK-Build/csemver.org/issues/2).
48+
> The formal 'spec' for [CSemVer](https://csemver.org) remains mostly silent on the
49+
> point of the short format. See this [known issue](https://github.com/CK-Build/csemver.org/issues/2).
4850
> Since, the existence of that form was to support NuGet V2, which is now obsolete, this
49-
> library does not support the short form at all. (This choice keeps documentation clarity
50-
> [NOT SUPPORTED] and implementation simplicity)
51+
> library does not support the short form at all. (This choice keeps documentation
52+
> clarity [NOT SUPPORTED] and implementation simplicity)
5153
5254
------
5355
<sup><a id="footnote_1">1</a></sup>Unfortunately, major repositories using SemVer have
54-
chosen to use different comparisons. Thus, a consumer is required to know a-priori if the
55-
version is compared insensitive or not. Thus all constructors accept an enum indicating
56-
the sort ordering to use. Additional, parsing accepts an IFormatProvider, which should
57-
provide an `AlphaNumeirvOrdering` value to specify the ordering. If none is provided, the
58-
default is used. (SemVer uses CaseSensitive comparisons, CSemVer and CSemVerCI ALWAYS use
59-
case insensitive) `IComparer<SemVer>` instances are available for cases where the versions
60-
are from mixed sources and the application wishes to order the versions.
56+
chosen to use different comparisons. Thus, a consumer is required to know a-priori if
57+
the version is compared insensitive or not. Thus all constructors accept an enum
58+
indicating the sort ordering to use. Additional, parsing accepts an IFormatProvider,
59+
which should provide an `AlphaNumeircOrdering` value to specify the ordering. If none is
60+
provided, the default is used. (SemVer uses CaseSensitive comparisons, CSemVer and
61+
CSemVerCI ALWAYS use case insensitive) `IComparer<SemVer>` instances are available for
62+
cases where the versions are from mixed sources and the application wishes to order the
63+
versions.

0 commit comments

Comments
 (0)