diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 227f966..9a3196b 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -18,19 +18,17 @@ jobs: build: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v5 with: fetch-depth: 1 - run: | git fetch --prune --unshallow --tags echo exit code $? git tag --list - - uses: actions/setup-dotnet@v4 + - uses: actions/setup-dotnet@v5 with: - # 6.x is required to run generate release notes (for now) dotnet-version: | - 9.0.x - 6.0.x + 10.0.x source-url: https://nuget.pkg.github.com/nullean/index.json env: NUGET_AUTH_TOKEN: ${{secrets.GITHUB_TOKEN}} @@ -61,6 +59,6 @@ jobs: if: github.event_name == 'push' && startswith(github.ref, 'refs/tags') name: Create or update release for tag on github - - run: dotnet nuget push build/output/*.nupkg -k ${{secrets.NUGET_ORG_API_KEY}} -s https://api.nuget.org/v3/index.json --skip-duplicate --no-symbols true + - run: dotnet nuget push 'build/output/*.nupkg' -k ${{secrets.NUGET_ORG_API_KEY}} -s https://api.nuget.org/v3/index.json --skip-duplicate --no-symbols true name: release to nuget.org if: github.event_name == 'push' && startswith(github.ref, 'refs/tags') diff --git a/Directory.Build.props b/Directory.Build.props index 408042d..d05fa3e 100644 --- a/Directory.Build.props +++ b/Directory.Build.props @@ -2,10 +2,10 @@ canary.0 - 0.2 + 0.1 - + all diff --git a/assembly-differ.sln b/assembly-differ.sln deleted file mode 100644 index a384464..0000000 --- a/assembly-differ.sln +++ /dev/null @@ -1,41 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "assembly-differ", "src\assembly-differ\assembly-differ.csproj", "{ABB946F3-7A8D-41D7-9526-23E0CFFA16F8}" -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{290FCB28-E5DB-4187-A556-EE2A38FE2458}" -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "build", "build", "{BD755685-40C2-4FD1-BBB6-40869213C63A}" -ProjectSection(SolutionItems) = preProject - build.bat = build.bat - build.sh = build.sh - Directory.Build.props = Directory.Build.props - global.json = global.json - LICENSE = LICENSE - nuget-icon.png = nuget-icon.png - README.md = README.md - .github\workflows\ci.yml = .github\workflows\ci.yml - dotnet-tools.json = dotnet-tools.json -EndProjectSection -EndProject -Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "scripts", "build\scripts\scripts.fsproj", "{52FEFC30-5E2A-48C6-8814-ACF2CD4CC93B}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Any CPU = Debug|Any CPU - Release|Any CPU = Release|Any CPU - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {ABB946F3-7A8D-41D7-9526-23E0CFFA16F8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {ABB946F3-7A8D-41D7-9526-23E0CFFA16F8}.Debug|Any CPU.Build.0 = Debug|Any CPU - {ABB946F3-7A8D-41D7-9526-23E0CFFA16F8}.Release|Any CPU.ActiveCfg = Release|Any CPU - {ABB946F3-7A8D-41D7-9526-23E0CFFA16F8}.Release|Any CPU.Build.0 = Release|Any CPU - {52FEFC30-5E2A-48C6-8814-ACF2CD4CC93B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {52FEFC30-5E2A-48C6-8814-ACF2CD4CC93B}.Debug|Any CPU.Build.0 = Debug|Any CPU - {52FEFC30-5E2A-48C6-8814-ACF2CD4CC93B}.Release|Any CPU.ActiveCfg = Release|Any CPU - {52FEFC30-5E2A-48C6-8814-ACF2CD4CC93B}.Release|Any CPU.Build.0 = Release|Any CPU - EndGlobalSection - GlobalSection(NestedProjects) = preSolution - {ABB946F3-7A8D-41D7-9526-23E0CFFA16F8} = {290FCB28-E5DB-4187-A556-EE2A38FE2458} - {52FEFC30-5E2A-48C6-8814-ACF2CD4CC93B} = {BD755685-40C2-4FD1-BBB6-40869213C63A} - EndGlobalSection -EndGlobal diff --git a/assembly-differ.slnx b/assembly-differ.slnx new file mode 100644 index 0000000..ecc5782 --- /dev/null +++ b/assembly-differ.slnx @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/build/scripts/Paths.fs b/build/scripts/Paths.fs index 46e117a..457f7be 100644 --- a/build/scripts/Paths.fs +++ b/build/scripts/Paths.fs @@ -8,7 +8,7 @@ let Repository = sprintf "nullean/%s" ToolName let Root = let mutable dir = DirectoryInfo(".") - while dir.GetFiles("*.sln").Length = 0 do dir <- dir.Parent + while dir.GetFiles("*.slnx").Length = 0 do dir <- dir.Parent Environment.CurrentDirectory <- dir.FullName dir diff --git a/build/scripts/Program.fs b/build/scripts/Program.fs index c346f06..88ff9c9 100644 --- a/build/scripts/Program.fs +++ b/build/scripts/Program.fs @@ -26,7 +26,8 @@ let main argv = Targets.Setup parsed arguments let swallowTypes = [typeof; typeof] - Targets.RunTargetsAndExit - ([target], (fun e -> swallowTypes |> List.contains (e.GetType()) ), ":") + task { + return! Targets.RunTargetsAndExitAsync([ target ], (fun e -> swallowTypes |> List.contains (e.GetType())), (fun _ -> ":"), null, null) + } |> Async.AwaitTask |> Async.RunSynchronously 0 diff --git a/build/scripts/Targets.fs b/build/scripts/Targets.fs index a1a8e1e..aefe64a 100644 --- a/build/scripts/Targets.fs +++ b/build/scripts/Targets.fs @@ -9,22 +9,19 @@ open Fake.Tools.Git open ProcNet let exec binary args = - let r = Proc.Exec (binary, args |> List.map (fun a -> sprintf "\"%s\"" a) |> List.toArray) - match r.HasValue with | true -> r.Value | false -> failwithf "invocation of `%s` timed out" binary + Proc.Exec (binary, args |> List.toArray) let private restoreTools = lazy(exec "dotnet" ["tool"; "restore"]) let private currentVersion = lazy( restoreTools.Value |> ignore - let r = Proc.Start("dotnet", "minver", "-p", "canary.0") + let r = Proc.Start("dotnet", "minver", "-p", "canary.0", "-m", "0.1") let o = r.ConsoleOut |> Seq.find (fun l -> not(l.Line.StartsWith "MinVer:")) o.Line ) let private currentVersionInformational = - lazy( - sprintf "%s+%s" currentVersion.Value (Information.getCurrentSHA1( ".")) - ) + lazy(sprintf "%s+%s" currentVersion.Value (Information.getCurrentSHA1( "."))) let private clean (arguments:ParseResults) = if (Paths.Output.Exists) then Paths.Output.Delete (true) @@ -53,11 +50,11 @@ let private generateApiChanges (arguments:ParseResults) = let output = Paths.RootRelative <| Paths.Output.FullName let currentVersion = currentVersion.Value let project = Paths.RootRelative Paths.ToolProject.FullName - let dotnetRun =[ "run"; "-c"; "Release"; "-f"; "net9.0"; "--project"; project] + let dotnetRun =[ "run"; "-c"; "Release"; "-f"; "net10.0"; "--project"; project] let args = [ sprintf "previous-nuget|%s|%s|net8.0" Paths.ToolName currentVersion; - sprintf "directory|src/%s/bin/Release/net9.0" Paths.ToolName; + sprintf "directory|src/%s/bin/Release/net10.0" Paths.ToolName; "--target"; Paths.ToolName; "-f"; "github-comment"; "--output"; output ] diff --git a/build/scripts/scripts.fsproj b/build/scripts/scripts.fsproj index a667b4d..461477f 100644 --- a/build/scripts/scripts.fsproj +++ b/build/scripts/scripts.fsproj @@ -2,15 +2,14 @@ Exe - net9.0 + net10.0 false - - + + - diff --git a/dotnet-tools.json b/dotnet-tools.json index 3f2a3a9..75d5d13 100644 --- a/dotnet-tools.json +++ b/dotnet-tools.json @@ -3,22 +3,25 @@ "isRoot": true, "tools": { "minver-cli": { - "version": "4.3.0", + "version": "6.0.0", "commands": [ "minver" - ] + ], + "rollForward": false }, "release-notes": { - "version": "0.6.0", + "version": "0.10.0", "commands": [ "release-notes" - ] + ], + "rollForward": false }, "nupkg-validator": { - "version": "0.6.0", + "version": "0.10.1", "commands": [ "nupkg-validator" - ] + ], + "rollForward": false } } } \ No newline at end of file diff --git a/global.json b/global.json index 41c9ad2..d46d21e 100644 --- a/global.json +++ b/global.json @@ -1,6 +1,6 @@ { "sdk": { - "version": "9.0.100", + "version": "10.0.100", "rollForward": "latestFeature", "allowPrerelease": false } diff --git a/src/assembly-differ/Providers/GitHub/GitHubAssemblyProvider.cs b/src/assembly-differ/Providers/GitHub/GitHubAssemblyProvider.cs index 2369be4..90b5e44 100644 --- a/src/assembly-differ/Providers/GitHub/GitHubAssemblyProvider.cs +++ b/src/assembly-differ/Providers/GitHub/GitHubAssemblyProvider.cs @@ -55,10 +55,11 @@ public IEnumerable GetAssemblies(HashSet targets) var arguments = new StartArguments(_command.BuildCommand, _command.BuildArguments) { WorkingDirectory = repoDirectory, + Timeout = TimeSpan.FromMinutes(10), WaitForStreamReadersTimeout = TimeSpan.FromMinutes(1), }; - result = Proc.Start(arguments, TimeSpan.FromMinutes(10)); + result = Proc.Start(arguments); var output = Path.GetFullPath(Path.Combine(repoDirectory, _command.Output)); var isFile = false; diff --git a/src/assembly-differ/assembly-differ.csproj b/src/assembly-differ/assembly-differ.csproj index 9101892..1a4054f 100644 --- a/src/assembly-differ/assembly-differ.csproj +++ b/src/assembly-differ/assembly-differ.csproj @@ -1,7 +1,7 @@  Exe - net6.0;net8.0;net9.0 + net8.0;net10.0 assembly-differ AssemblyDiffer true @@ -29,15 +29,13 @@ - - + -