-
Notifications
You must be signed in to change notification settings - Fork 73
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
CI(docs): run for every commit (not just tags) #636
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This way it will get run for every commit (except the deploy step); which will let us notice much earlier when it breaks (not just when creating a git tag, like it has happened[1] for the last version that we published). [1] See 815efa4 for more info.
We're eyeing to update to a newer version of .NET soon, and we don't want to get the README file to point to a wrong badge or CI link because of that, so it's better to not mention the .NET version we're using in the workflow name (this way there's also less lines to update everytime we update the version; and less duplication thanks to the new CI variable '$DOTNET_VERSION').
The recent update[1] to Fornax caused NullReferenceExceptions in the log (even though CI doesn't break) so we suspect this version might have some kind of problem. Let's update to the last version (and for this we've had to update the .NET version of this job, otherwise the last version of Fornax cannot run with v5.0). But note that after updating to this version, we've had to do some other changes related to the .NET upgrade (to v6): The Directory.Build.props change is to fix this restore error: ``` Run dotnet restore dotnet restore shell: C:\Program Files\PowerShell\7\pwsh.EXE -command ". '{0}'" env: DOTNET_VERSION: 5.0.202 DOTNET_ROOT: C:\Program Files\dotnet Determining projects to restore... Error: C:\Program Files\dotnet\sdk\6.0.417\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.EolTargetFrameworks.targets(29,5): error NETSDK1138: The target framework 'net5.0' is out of support and will not receive security updates in the future. Please refer to https://aka.ms/dotnet-core-support for more information about the support policy. [D:\a\FSharpLint\FSharpLint\tests\FSharpLint.FunctionalTest\FSharpLint.FunctionalTest.fsproj] Error: C:\Program Files\dotnet\sdk\6.0.417\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.EolTargetFrameworks.targets(29,5): error NETSDK1138: The target framework 'net5.0' is out of support and will not receive security updates in the future. Please refer to https://aka.ms/dotnet-core-support for more information about the support policy. [D:\a\FSharpLint\FSharpLint\src\FSharpLint.Core\FSharpLint.Core.fsproj] Error: C:\Program Files\dotnet\sdk\6.0.417\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.EolTargetFrameworks.targets(29,5): error NETSDK1138: The target framework 'net5.0' is out of support and will not receive security updates in the future. Please refer to https://aka.ms/dotnet-core-support for more information about the support policy. [D:\a\FSharpLint\FSharpLint\tests\FSharpLint.Core.Tests\FSharpLint.Core.Tests.fsproj] Error: C:\Program Files\dotnet\sdk\6.0.417\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.EolTargetFrameworks.targets(29,5): error NETSDK1138: The target framework 'net5.0' is out of support and will not receive security updates in the future. Please refer to https://aka.ms/dotnet-core-support for more information about the support policy. [D:\a\FSharpLint\FSharpLint\tests\FSharpLint.Console.Tests\FSharpLint.Console.Tests.fsproj] Error: C:\Program Files\dotnet\sdk\6.0.417\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.EolTargetFrameworks.targets(29,5): error NETSDK1138: The target framework 'net5.0' is out of support and will not receive security updates in the future. Please refer to https://aka.ms/dotnet-core-support for more information about the support policy. [D:\a\FSharpLint\FSharpLint\tests\FSharpLint.Benchmarks\FSharpLint.Benchmarks.fsproj] Error: C:\Program Files\dotnet\sdk\6.0.417\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.EolTargetFrameworks.targets(29,5): error NETSDK1138: The target framework 'net5.0' is out of support and will not receive security updates in the future. Please refer to https://aka.ms/dotnet-core-support for more information about the support policy. [D:\a\FSharpLint\FSharpLint\src\FSharpLint.Console\FSharpLint.Console.fsproj] Restored D:\a\FSharpLint\FSharpLint\src\FSharpLint.Console\FSharpLint.Console.fsproj (in 6.28 sec). Restored D:\a\FSharpLint\FSharpLint\src\FSharpLint.Core\FSharpLint.Core.fsproj (in 6.28 sec). Restored D:\a\FSharpLint\FSharpLint\tests\FSharpLint.Console.Tests\FSharpLint.Console.Tests.fsproj (in 6.28 sec). Restored D:\a\FSharpLint\FSharpLint\tests\FSharpLint.FunctionalTest\FSharpLint.FunctionalTest.fsproj (in 6.28 sec). Restored D:\a\FSharpLint\FSharpLint\tests\FSharpLint.Benchmarks\FSharpLint.Benchmarks.fsproj (in 3 ms). Restored D:\a\FSharpLint\FSharpLint\tests\FSharpLint.Core.Tests\FSharpLint.Core.Tests.fsproj (in 3 ms). Error: Process completed with exit code 1. ``` And the .fs changes are to build these .NET6.0 compilation errors: ``` Error: D:\a\FSharpLint\FSharpLint\src\FSharpLint.Core\Rules\Conventions\RaiseWithTooManyArguments\FailwithBadUsage.fs(122,11): error FS0026: This rule will never be matched [D:\a\FSharpLint\FSharpLint\src\FSharpLint.Core\FSharpLint.Core.fsproj] Build FAILED. Error: D:\a\FSharpLint\FSharpLint\src\FSharpLint.Core\Rules\Conventions\RaiseWithTooManyArguments\FailwithBadUsage.fs(122,11): error FS0026: This rule will never be matched [D:\a\FSharpLint\FSharpLint\src\FSharpLint.Core\FSharpLint.Core.fsproj] 0 Warning(s) 1 Error(s) Error: D:\a\FSharpLint\FSharpLint\tests\FSharpLint.Core.Tests\Rules\Conventions\CyclomaticComplexity.fs(232,3): error FS0058: Possible incorrect indentation: this token is offside of context started at position (229:9). Try indenting this token further or using standard formatting conventions. [D:\a\FSharpLint\FSharpLint\tests\FSharpLint.Core.Tests\FSharpLint.Core.Tests.fsproj] Error: D:\a\FSharpLint\FSharpLint\tests\FSharpLint.Core.Tests\Rules\Conventions\CyclomaticComplexity.fs(232,3): error FS0058: Possible incorrect indentation: this token is offside of context started at position (229:9). Try indenting this token further or using standard formatting conventions. [D:\a\FSharpLint\FSharpLint\tests\FSharpLint.Core.Tests\FSharpLint.Core.Tests.fsproj] 0 Warning(s) 2 Error(s) ``` [1] b4da0c8
This was referenced Dec 16, 2023
The latest version of Fornax is also throwing exceptions, albeit different than the previously reported ones (so we go back to the old version, having to install old .NETCore3.x for now): ``` System.TypeLoadException: Could not load type 'FSharp.Compiler.SourceCodeServices.FSharpAssembly' from assembly 'FSharp.Compiler.Service, Version=41.0.7.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'. at FSharp.MetadataFormat.MetadataFormat.Generate(IEnumerable`1 dllFiles, FSharpOption`1 parameters, FSharpOption`1 xmlFile, FSharpOption`1 sourceRepo, FSharpOption`1 sourceFolder, FSharpOption`1 publicOnly, FSharpOption`1 libDirs, FSharpOption`1 otherFlags, FSharpOption`1 markDownComments, FSharpOption`1 urlRangeHighlight) at FSharp.MetadataFormat.MetadataFormat.Generate(String dllFile, FSharpOption`1 parameters, FSharpOption`1 xmlFile, FSharpOption`1 sourceRepo, FSharpOption`1 sourceFolder, FSharpOption`1 publicOnly, FSharpOption`1 libDirs, FSharpOption`1 otherFlags, FSharpOption`1 markDownComments, FSharpOption`1 urlRangeHighlight) in /app/src/FSharp.MetadataFormat/Main.fs:line 1506 at FSI_0004.Apirefloader.loader(String projectRoot, SiteContents siteContet) in D:\a\FSharpLint\FSharpLint\docs\loaders\apirefloader.fsx:line 41 [12:16:29] multiple files generated in 570ms [12:16:29] 'D:\a\FSharpLint\FSharpLint\docs\_public\index.json' generated in 222ms ERROR IN PAGE GENERATION: System.NullReferenceException: Object reference not set to an instance of an object. at FSI_0025.Menu.menu(SiteContents ctx, String page) in D:\a\FSharpLint\FSharpLint\docs\generators\partials\menu.fsx:line 13 at FSI_0025.Layout.layout(SiteContents ctx, IEnumerable`1 bodyCnt, String page) in D:\a\FSharpLint\FSharpLint\docs\generators\partials\layout.fsx:line 39 at FSI_0025.Page.generate'(SiteContents ctx, String page) in D:\a\FSharpLint\FSharpLint\docs\generators\page.fsx:line 12 at FSI_0025.Page.generate(SiteContents ctx, String projectRoot, String page) in D:\a\FSharpLint\FSharpLint\docs\generators\page.fsx:line 16 [12:16:29] 'D:\a\FSharpLint\FSharpLint\docs\_public\index.html' generated in 318ms ... ```
knocte
force-pushed
the
docsCIpipelineLove
branch
from
December 16, 2023 13:22
379ed99
to
e2ac47d
Compare
knocte
changed the title
CI(docs): run for every commit (not just tags) & update Fornax
CI(docs): run for every commit (not just tags)
Dec 19, 2023
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Supersedes #626