Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,9 @@ updates:
groups:
nuget-deps:
patterns: [ "*" ]
ignore:
- dependency-name: "Verify.NUnit"
update-types: [ version-update:semver-major ]
open-pull-requests-limit: 10
registries: [ nuget ]
target-branch: main
Expand Down
12 changes: 1 addition & 11 deletions .github/workflows/Build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
test-framework: [ net8.0, net9.0, net10.0 ]
test-framework: [ net10.0 ]
steps:

- name: Checkout
Expand All @@ -75,16 +75,6 @@ jobs:
with:
dotnet-version: 10.0.x

- name: Setup .NET 8.0.x
uses: actions/setup-dotnet@v5
with:
dotnet-version: 8.0.x

- name: Setup .NET 9.0.x
uses: actions/setup-dotnet@v5
with:
dotnet-version: 9.0.x

- name: TestProjects
id: TestProjects
run: dotnet run --project _atom/_atom.csproj -- TestProjects --skip --headless
Expand Down
12 changes: 1 addition & 11 deletions .github/workflows/Validate.yml
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
test-framework: [ net8.0, net9.0, net10.0 ]
test-framework: [ net10.0 ]
steps:

- name: Checkout
Expand All @@ -67,16 +67,6 @@ jobs:
with:
dotnet-version: 10.0.x

- name: Setup .NET 8.0.x
uses: actions/setup-dotnet@v5
with:
dotnet-version: 8.0.x

- name: Setup .NET 9.0.x
uses: actions/setup-dotnet@v5
with:
dotnet-version: 9.0.x

- name: TestProjects
id: TestProjects
run: dotnet run --project _atom/_atom.csproj -- TestProjects --skip --headless
Expand Down
8 changes: 4 additions & 4 deletions .github/copilot-instructions.md → AGENTS.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Copilot Instructions
# Agent Instructions

Guidance for AI agents working in **Invex.Process** — a small, focused C# library for running
external processes with first-class logging, real-time output streaming, full output capture, and
Expand All @@ -8,8 +8,8 @@ fail-fast error handling. Keep changes focused and defer to the linked docs for

| Project | Role | Target frameworks |
|---------|------|-------------------|
| `Invex.Process` | The library: `IProcessRunner` / `ProcessRunner`, `ProcessRunOptions`, `ProcessRunResult`, `ProcessHostExtensions` | `net8.0;net9.0;net10.0` |
| `Invex.Process.Tests` | NUnit test suite, including a public API surface snapshot test | `net8.0;net9.0;net10.0` |
| `Invex.Process` | The library: `IProcessRunner` / `ProcessRunner`, `ProcessRunOptions`, `ProcessRunResult`, `ProcessHostExtensions` | `net10.0` |
| `Invex.Process.Tests` | NUnit test suite, including a public API surface snapshot test | `net10.0` |
| `_atom` | Atom build definition (`IBuild.cs`) that generates the GitHub Actions workflows | `net10.0` |

Sources live under `src/`, tests under `tests/`, the Atom build definition under `_atom/`, and the
Expand All @@ -18,7 +18,7 @@ and `toc.yml`.

## Build & language specifics

- **.NET 10 SDK** is required. Library and test projects multi-target `net8.0;net9.0;net10.0`.
- **.NET 10 SDK** is required. Library and test projects target `net10.0`.
- C# `LangVersion` 14, `ImplicitUsings` and `Nullable` enabled, `TreatWarningsAsErrors` on.
- Global usings live in each project's `_usings.cs` — add shared usings there, not per-file.
- `GenerateDocumentationFile` is on and `CS1591` is **enforced** in `src/` — every public type
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ full output capture, and fail-fast error handling. It wraps `System.Diagnostics.
dotnet add package Invex.Process
```

The package targets `net8.0`, `net9.0`, and `net10.0`. It depends on
The package targets `net10.0`. It depends on
`Microsoft.Extensions.DependencyInjection.Abstractions` and `Microsoft.Extensions.Hosting.Abstractions`, and logs
through `ILogger`, so configure logging on your host (it is by default with `Host.CreateApplicationBuilder`).

Expand Down
15 changes: 10 additions & 5 deletions _atom/IBuild.cs
Original file line number Diff line number Diff line change
Expand Up @@ -39,8 +39,6 @@ internal interface IBuild : IWorkflowBuildDefinition,

static readonly string[] TestFrameworkNames =
[
WorkflowLabels.Dotnet.Framework.Net_8_0,
WorkflowLabels.Dotnet.Framework.Net_9_0,
WorkflowLabels.Dotnet.Framework.Net_10_0,
];

Expand Down Expand Up @@ -215,8 +213,6 @@ await UnlistPrereleasesBelowVersionForPackages(NugetFeed,
Options =
[
BuildOptions.Target.SuppressArtifactPublishing,
BuildOptions.Steps.SetupDotnet.Dotnet80X(),
BuildOptions.Steps.SetupDotnet.Dotnet90X(),
],
},
new(nameof(CheckPrForBreakingChanges))
Expand Down Expand Up @@ -272,7 +268,6 @@ await UnlistPrereleasesBelowVersionForPackages(NugetFeed,
Values = TestFrameworkNames,
},
],
Options = [BuildOptions.Steps.SetupDotnet.Dotnet80X(), BuildOptions.Steps.SetupDotnet.Dotnet90X()],
},
new(nameof(PushToNuget))
{
Expand Down Expand Up @@ -384,6 +379,16 @@ await UnlistPrereleasesBelowVersionForPackages(NugetFeed,
},
TargetBranch = "main",
OpenPullRequestsLimit = 10,
Ignore =
[
// Verify 33 adds a maintenance-fee SponsorCheck that fails test builds (SC021).
new()
{
DependencyName = "Verify.NUnit",
UpdateTypes = [SemverUpdateType.VersionUpdateSemverMajor],
Versions = null,
},
],
},
],
}),
Expand Down
2 changes: 1 addition & 1 deletion docs/getting-started.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ if you are adding `Invex.Process` to a host, tool or build for the first time.
dotnet add package Invex.Process
```

The package targets `net8.0`, `net9.0`, and `net10.0`.
The package targets `net10.0`.

## Register the service

Expand Down
2 changes: 1 addition & 1 deletion src/Invex.Process/Invex.Process.csproj
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<TargetFrameworks>net10.0;net9.0;net8.0</TargetFrameworks>
<TargetFramework>net10.0</TargetFramework>
</PropertyGroup>

<ItemGroup>
Expand Down
4 changes: 2 additions & 2 deletions tests/Invex.Process.Tests/Invex.Process.Tests.csproj
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<TargetFrameworks>net10.0;net9.0;net8.0</TargetFrameworks>
<TargetFramework>net10.0</TargetFramework>
<IsPackable>false</IsPackable>
<!-- Tests are not a shipped API surface; XML docs are not required. -->
<NoWarn>$(NoWarn);CS1591</NoWarn>
Expand All @@ -16,7 +16,7 @@
<PackageReference Include="NUnit" Version="4.6.1" />
<PackageReference Include="NUnit3TestAdapter" Version="6.3.0" />
<PackageReference Include="Shouldly" Version="4.3.0" />
<PackageReference Include="Verify.NUnit" Version="32.0.0" />
<PackageReference Include="Verify.NUnit" Version="32.0.1" />
</ItemGroup>

<ItemGroup>
Expand Down
Loading