Skip to content

Commit 724ca9b

Browse files
authored
Merge pull request #46 from SvenGroot/v5.0-dev
Merge version 5.0 into main
2 parents fb9dad1 + 0206ffd commit 724ca9b

File tree

188 files changed

+5354
-4205
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

188 files changed

+5354
-4205
lines changed

.github/dependabot.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ updates:
1111
patterns:
1212
- "*"
1313
ignore:
14-
# 4.3.x is the latest version that can work with the .Net 6.0 SDK for both of these.
14+
# 4.11.x is the latest version that can work with the .Net 8.0 SDK for both of these.
1515
- dependency-name: "Microsoft.CodeAnalysis.CSharp"
1616
update-types: ["version-update:semver-major", "version-update:semver-minor"]
1717
- dependency-name: "Microsoft.CodeAnalysis.CSharp.Workspaces"

README.md

Lines changed: 17 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -10,11 +10,9 @@ library for .Net applications.
1010
- Compatible with trimming and native AOT.
1111

1212
Ookii.CommandLine is [provided in versions](#requirements) for .Net Standard 2.0, .Net Standard 2.1,
13-
.Net 6.0, and .Net 7.0 and later.
13+
and .Net 8.0 and later.
1414

1515
Ookii.CommandLine can be added to your project using [NuGet](https://nuget.org/packages/Ookii.CommandLine).
16-
[Code snippets](docs/CodeSnippets.md) for Visual Studio are available on the
17-
[Visual Studio marketplace](https://www.ookii.org/Link/CommandLineSnippets).
1816

1917
A [C++ version](https://github.com/SvenGroot/Ookii.CommandLine.Cpp) is also available.
2018

@@ -134,25 +132,23 @@ It can be used with applications supporting one of the following:
134132

135133
- .Net Standard 2.0
136134
- .Net Standard 2.1
137-
- .Net 6.0
138-
- .Net 7.0 and later
135+
- .Net 8.0 and later
139136

140137
As of version 3.0, .Net Framework 2.0 is no longer supported. You can still target .Net Framework
141138
4.6.1 and later using the .Net Standard 2.0 assembly. If you need to support an older version of
142139
.Net, please continue to use [version 2.4](https://github.com/SvenGroot/ookii.commandline/releases/tag/v2.4).
143140

144-
The .Net Standard 2.1 and .Net 6.0 and 7.0 versions utilize the framework `ReadOnlySpan<T>` and
141+
Several versions of the library are provided, each adding some additional functionality only
142+
available with their specific runtime.
143+
144+
The .Net Standard 2.1 and .Net 8.0 versions utilize the framework `ReadOnlySpan<T>` and
145145
`ReadOnlyMemory<T>` types without a dependency on the System.Memory package.
146146

147-
The .Net 6.0 version has additional support for [nullable reference types](docs/Arguments.md#arguments-with-non-nullable-types),
147+
The .Net 8.0 version has additional support for [nullable reference types](docs/Arguments.md#arguments-with-non-nullable-types),
148148
and is annotated to allow [trimming](https://learn.microsoft.com/dotnet/core/deploying/trimming/trimming-options)
149-
when [source generation](docs/SourceGeneration.md) is used.
150-
151-
The .Net 7.0 version has additional support for `required` properties, and can utilize
152-
`ISpanParsable<TSelf>` and `IParsable<TSelf>` for argument value conversions.
153-
154-
An assembly built for .Net 8.0 is also provided; this has no additional functionality over the
155-
.Net 7.0 version, but is provided to ensure optimal compatibility and performance.
149+
and native AOT when [source generation](docs/SourceGeneration.md) is used. It also supports
150+
`required` properties, and can utilize `ISpanParsable<TSelf>` and `IParsable<TSelf>` for argument
151+
value conversions.
156152

157153
## Building and testing
158154

@@ -168,9 +164,8 @@ To build the library, tests and samples, simply use the `dotnet build` command i
168164
directory. You can run the unit tests using `dotnet test`. The tests should pass on all platforms
169165
(Windows and Linux have been tested).
170166

171-
The tests are built and run for .Net 8.0, .Net 7.0, .Net 6.0, and .Net Framework 4.8. Running the
172-
.Net Framework tests on a non-Windows platform may require the use of
173-
[Mono](https://www.mono-project.com/).
167+
The tests are built and run for .Net 8.0 and .Net Framework 4.8. Running the .Net Framework tests on
168+
a non-Windows platform may require the use of [Mono](https://www.mono-project.com/).
174169

175170
Ookii.CommandLine uses a strongly-typed resources file, which will not update correctly unless the
176171
`Resources.resx` file is edited with [Microsoft Visual Studio](https://visualstudio.microsoft.com/).
@@ -195,18 +190,20 @@ Supports PowerShell-like and POSIX-like parsing rules. |
195190
Supports any type with a `Parse()` method or constructor that takes a string. | Supports a limited number of types, and requires custom conversion methods for others.
196191
Supports automatic prefix aliases. | Does not support automatic prefix aliases.
197192
Does not support middleware or dependency injection. | Supports middleware and dependency injection.
193+
Does not support tab completion or response files | Supports tab completion and response files.
198194
Fully released with a stable API between major releases. | Still in preview.
199195

200196
These are by no means the only differences. Both are highly customizable, and each has its pros and
201-
cons. In the end, it mostly comes down to personal preference. You should use whichever one suits
202-
your needs and coding style best.
197+
cons. Both support trimming and native AOT. In the end, it mostly comes down to personal preference.
198+
You should use whichever one suits your needs and coding style best.
203199

204200
## More information
205201

206202
Please check out the following to get started:
207203

208204
- [Tutorial: getting started with Ookii.CommandLine](docs/Tutorial.md)
209-
- [Migrating from Ookii.CommandLine 2.x / 3.x](docs/Migrating.md)
205+
- [What's new in Ookii.CommandLine](docs/ChangeLog.md)
206+
- [Migrating from previous versions](docs/Migrating.md)
210207
- [Usage documentation](docs/README.md)
211208
- [Class library documentation](https://www.ookii.org/Link/CommandLineDoc)
212209
- [Sample applications](src/Samples) with detailed explanations and sample output.

0 commit comments

Comments
 (0)