All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Support for F# 9 and .NET 9.0.100 (Thanks @Numpsy!)
- Support for .NET 6 and .NET 7 (Thanks @Numpsy!)
- Reset the console foreground colour after printing results (thanks @Numpsy!)
- Only Analyze projects passed in via CLI (thanks @TheAngryByrd)
- Emit Analyzer Errors in the MSBuild Canonical Error Format (thanks @Numpsy!)
- Update Structured Logger libraries (thanks @nojaf!)
- Update FSharp.Compiler.Service and FSharp.Core to the .NET SDK 8.0.300 release versions
- More efficiently analyze larger solutions (thanks @TheAngryByrd!)
- Update to FCS and FSharp.Core 43.8.200
- Fail when no analyzers are registered but the tool is invoked (thanks @Smaug123!)
- Remove Coverlet.Collector package dependency (thanks @dawedawe!)
- Update Ionide.ProjInfo to 0.63.0 (thanks @nojaf!)
- Add
RequireQualifiedAccess
toSeverity
type (thanks @Smaug123!) - Fail the tool when any analyzers fail to load (thanks @Smaug123!)
- Changed --exclude-analyzer to --exclude-analyzers (thanks @dawedawe!)
- Changed --ignore-files to --exclude-files (thanks @dawedawe!)
- Add missing TAST walkers (thanks @dawedawe!)
- Add support for --include-analyzers to ignore all others (thanks @dawedawe!)
- Add support for --include-files to ignore all others (thanks @dawedawe!)
- Add path to ASTCollecting (thanks @nojaf!)
- Use Microsoft.Extensions.Logging instead of printf based logging infrastructure (thanks @dawedawe!)
- Update FCS to 43.8.100 (thanks @nojaf!)
- Raise clear error if empty FSC arguments were passed (thanks @nojaf!)
- Extend signature AST walking (thanks @nojaf!)
- --project value should be tested if path exists (thanks @dawedawe!)
- Provide better DX when project cracking failed (thanks @dawedawe!)
- Hint is mapped as note in sarif export (thanks @nojaf!)
- Properly walk SynModuleSigDecl.Val (thanks @nojaf!)
- Sarif file should not report absolute file paths (thanks @nojaf!)
- Add code-root flag (thanks @nojaf!)
- Add a -p flag to allow passing MSBuild properties through to the MSBuild evaluation portion of checking. (thanks @dawedawe!)
- API change in TASTCollecting (thanks @dawedawe!)
- Walk over the union case in SynModuleDecl.Exception (thanks @nojaf!)
- Allow remapping of all severity levels (thanks @dawedawe!)
- Add tree processing infrastructure (thanks @dawedawe!)
- Create sarif folder if it does not exist (thanks @nojaf!)
- Use fixed version of FCS and FSharp.Core (thanks @nojaf!)
- Allow to specify multiple analyzers-paths (thanks @nojaf!)
- Accept direct fsc arguments as input (thanks @nojaf!)
- Analyzer report (thanks @nojaf!)
- Support multiple project parameters in the Cli tool (thanks @dawedawe!)
- Exclude analyzers (thanks @nojaf!)
- Removed repo internal packages.lock.json files to workaround sdk bug (thanks @dawedawe!)
FSharp.Analyzers.SDK.Testing
NuGet package (thanks @dawedawe!)
- Revisit Context type (thanks @nojaf!)
- Don't filter out .fsi files (thanks @dawedawe!)
- update to projinfo 0.62 to fix runtime failure (thanks @dawedawe!)
- Add Parse and Check Results to Context (thanks @dawedawe!)
- Enforce SDK version (thanks @nojaf!)
- Update FCS to 43.7.400 (thanks @TheAngryByrd!)
- Updated the tool to .NET 7 (thanks @cmeeren!)
- Updated to FSharp.Core 7 and FCS 43.7.200 (aka what's in the 7.0.200 .NET SDK) (thanks @DamianReeves!)
- Update to FCS 41 - thanks @theangrybyrd!
- Pack the .NET Tool with RollForward set to enable running on .NET 6 runtimes.
- Don't expose sourcelink as a nuget package dependency
- Update Ionide.ProjInfo to 0.53
- Update FCS to 40.0.0
- Exclude signature files from analysis in CLI
- Update Ionide.ProjInfo to 0.52
- Update FCS version to 39.0.0
- Update Ionide Project System version as well
- Update FCS version to 38.0.2
- Include MsBuild.Locator dependency
- Update FCS version to 38.0
- Use Ionide.ProjInfo isntead of Dotnet.ProjInfo
- Update FCS version to 36.0.3
- Update FCS version to 35.0.0
- Allow for optional named analyzers via the attribute
[<Analyzer("AnalyzerName")>]
- Add ability to get exact errors from running each individual analyzer
- Update FCS version to 34.1.0
- Support third-party dependency resolution for analyzers
- Manage analyzers state internally
- Add
GetAllEntities
to context - function that returns all known entities in the workspace (from local projects and references)
- Initial tool release
- Add client module
- Update FCS version to 33.0.0
- Update FCS version to 31.0.0
- Update FCS version to 31.0.0
- Update FCS version to 30.0.0
- Update FCS version to 29.0
- Update FCS version
- Update FCS version
- Update FCS version
- Initial release