Skip to content

Latest commit

 

History

History
1167 lines (758 loc) · 51 KB

CHANGELOG.md

File metadata and controls

1167 lines (758 loc) · 51 KB

Changelog

[0.73.2] - 2024-06-17

Changed

[0.73.1] - 2024-05-23

Added

  • New, explicit FSI settings for editor analysis and FSI invocation
    • Before, FSharp.FSIExtraParameters was used for both script analysis in the LSP as well as launching FSI instances in editors. Some FSI options are only intended to be used for direct FSI invocation (see docs for more details) and so break editor analysis. We've introduced two settings to separate these concerns. If the old setting is provided along either of the new options, the old setting will be used but a warning message will be shown in the editor.
      • FSharp.FSIExtraInteractiveParameters is now used for launching FSI instances in editors
      • FSharp.FSIExtraSharedParameters is used for editor analysis
    • An editor should concatenate these together when launching an FSI instance. In a future release, we will be deprecating/removing the FSharp.FSIExtraParameters setting.

Changed

[0.73.0] - 2024-05-15

Added

Changed

[0.72.3] - 2024-05-05

Added

Fixed

[0.72.2] - 2024-04-30

Fixed

[0.72.1] - 2024-04-25

Added

Fixed

Changed

[0.71.0] - 2024-03-07

Added

Fixed

Changed

[0.70.1] - 2024-02-13

Fixed

Changed

[0.70.0] - 2024-02-06

Changed

[0.69.0] - 2024-01-14

Added

Changed

Fixed

Internal

[0.68.0] - 2023-11-17

Added

Changed

Fixed

[0.67.0] - 2023-10-28

Changed

Fixed

[0.66.1] - 2023-10-15

Changed

  • Fixed a bug in inlay hints generation for constructors and methods that would cause a crash on members with optional or ParamArray parameters.

[0.66.0] - 2023-10-15

Removed

  • The following options have been removed from the LSP. The old CLI options will trigger a warning if present, but will not crash the server (Thanks @TheAngryByrd!)
    • The older, Non-Adaptive LSP implementation (in favor of using the Adaptive LSP server)
    • NamedText (in favor of RoslynSourceText)

Changed

[0.65.0] - 2023-10-09

Added

Fixed

[0.64.1] - 2023-10-05

Fixed

[0.64.0] - 2023-09-27

Added

Changed

[0.63.1] - 2023-09-18

Fixed

[0.63.0] - 2023-09-06

Added

Changed

Fixed

[0.62.0] - 2023-08-21

Added

  • A new flag for controlling FSAC's support of ParallelReferenceResolution - fsharp.fsac.parallelReferenceResolution. If true, this allows for more parallelization of the compilation.

Changed

  • Updated Ionide.LanguageServerProtocol to get better LSP 3.17 support
  • Updated to FCS 7.0.400!

Fixed

[0.61.1] - 2023-07-22

Fixed

[0.61.0] - 2023-07-16

Added

Changed

Fixed

Removed

[0.60.1] - 2023-07-01

Added

[0.60.0] - 2023-06-14

Added

Fixed

Changed

[0.59.6] - 2023-04-21

Added

Fixed

Changed

[0.59.5] - 2023-04-21

Added

Fixed

Changed

[0.59.4] - 2023-03-19

Fixed

[0.59.3] - 2023-03-19

Added

Fixed

[0.59.2] - 2023-03-12

Added

Changed

Fixed

[0.59.1] - 2023-02-26

Added

  • Support for logging traces to a configured OpenTelemetry collector endpoint (thanks @theangrybyrd!)
    • to use this, set the CLI argument --otel-exporter-enabled, and set the OTEL_EXPORTER_OTLP_ENDPOINT the the URL of a reachable collector before launching the app
    • then, send the fsharp.notifications.trace configuration set to true, and the fsharp.notifications.traceNamespaces` configuration set to an array of string patterns for namespaces of activities to match on.

Changed

[0.59.0] - 2023-02-20

Added

  • Support for F# 7
    • Note that as a side effect of this, some codefixes have been temporarily disabled. We'll be working on re-enabling them in the near future in conjuntions with the F# team.

Changed

[0.58.5] - 2023-02-04

Added

  • Add textDocument/inlineValue from LSP 3.17
  • InlineValue config option to shadow PipelineHint config option
  • Fix inlayHints for typed params #1046

[0.58.4] - 2023-02-04

Added

  • Fix crash due to missing dependency on Microsoft.Extensions.Caching.Memory

[0.58.3] - 2023-02-04

Changed

Removed

  • The FSharp.enableReferenceCodeLens is deprecated, it's been replaced by the FSharp.codeLenses.references.enabled setting.

[0.58.2] - 2022-11-07

Fixed

[0.58.1] - 2022-10-19

Fixed

Removed

[0.58.0] - 2022-10-09

Added

[0.57.4] - 2022-09-30

Fixed

[0.57.3] - 2022-09-27

Fixed

Changed

[0.57.2] - 2022-09-24

Fixed

[0.57.1] - 2022-09-22

Changed

[0.57.0] - 2022-09-05

Added

Changed

[0.56.2] - 2022-08-19

Changed

Added

Fixed

[0.56.0] - 2022-07-23

Added

Fixed

[0.55.0] - 2022-07-12

Added

Fixed

Changed

Removed

  • FAKE Integration
  • Custom InlayHints - (fsharp/inlayHints, removed in favor of LSP inlayHints)

[0.54.0] - 2022-05-29

Fixed

Changed

[0.53.2] - 2022-05-13

Added

[0.53.1] - 2022-05-01

Changed

[0.53.0] - 2022-04-29

Added

Changed

Fixed

[0.52.1] - 2020-04-16

Changed

[0.52.0] - 2020-04-14

Added

Changed

Fixed

[0.51.0] - 2022-03-13

Fixed

Added

[0.50.1] - 2022-03-12

Fixed

[0.50.0] - 2022-01-23

Added

  • New release process driven by this Changelog

Changed

Fixed

[0.49.5] - 2021-12-01

Added

[0.49.4] - 2021-11-20

Added

[0.49.3] - 2021-11-19

Added

[0.49.2] - 2021-11-16

Added

[0.49.1] - 2021-11-14

Added

[0.49.0] - 2021-10-29

Added

[0.48.2] - 2021-10-27

Added

[0.48.1] - 2021-10-24

Added

[0.48.0] - 2021-10-23

Added

[0.47.2] - 2021-09-09

Added

[0.47.1] - 2021-08-04

Added

[0.47.0] - 2021-07-25

Added

[0.46.7] - 2021-06-29

Added

[0.46.6] - 2021-06-27

Added

[0.46.5] - 2021-06-21

Added

[0.46.4] - 2021-06-18

Added

[0.46.3] - 2021-06-17

Added

[0.46.2] - 2021-06-13

Added

[0.46.1] - 2021-06-09

Added

  • Publish the dotnet tool fsautocomplete to nuget. It can be installed with dotnet tool install fsautocomplete.

[0.46.0] - 2021-05-15

Added

[0.45.4] - 2021-04-30

Added

  • Fix returned tokens in textDocument/semanticTokens/full and textDocument/semanticTokens/range to no longer return zero-length tokens.

[0.45.3] - 2021-04-23

Added

  • Improve edgecase detection when
    • finding declarations
    • finding type definitions
    • getting symbol usages
    • checking for inclusion in a file

[0.45.2] - 2021-04-18

Added

  • Improve overload detection in textDocument/signatureHelp for methods

[0.45.1] - 2021-04-18

Added

  • Fix regression in textDocument/completion introduced in 0.45.0

[0.45.0] - 2021-04-17

Added

  • Update Unused Binding CodeFix to handle more cases
  • Enable faster typechecking when signature files are present for a module
    • Happens transparently, but is mutually exclusive with analyzers.
  • Refactors around tooltip signature generation
  • Fix the display of units of measure in tooltips (float<m/s> instead of float<MeasureInverse<MeasureProduct<.....>>>)
  • Much better experience for signature help for function applications and method calls
  • Update the Generate Abstract Class CodeFix to work for abstract classes that aren't defined in F#

[0.44.0] - 2021-03-15

Added

  • Update to Ionide.ProjInfo 0.51 to prevent workspace init deadlocks

[0.43.0] - 2021-03-15

Added

  • Fantomas updated to 4.4 stable
  • FCS 39 update
  • More codefixes!
  • Fixed serialization of the FormattingOptions type to prevent server crashes
  • Performance enhancements for the BackgroundService

[0.42.0] - 2021-02-03

Added

  • Many large changes, .Net 5 is required now
  • Support for LSP semantic highlighting
  • Fantomas upgrade to 4.4.0-beta-003
  • FCS 38.0.2 upgrade
  • Use Ionide.ProjInfo for the project system instead of the oen built into this repo
  • Use local hosted msbuild to crack projects instead of managing builds ourselves

[0.41.1] - 2020-03-23

Added

[0.41.0] - 2020-03-10

Added

[0.40.1] - 2020-02-28

Added

[0.40.0] - 2020-02-19

Added

[0.39.0]

Added

[0.38.2]

Added

[0.38.1] - 2019-04-16

Added

[0.38.0] - 2019-04-10

Added

  • upgrade to FSharp.Compiler.Service v28.0.0
  • upgrade to FSharpLint.Core v0.10.8
  • include symbolcache runtimeconfig.json and deps.json to .net core binaries
  • add default.win32manifest to .net core binaries
  • fix to allow run with only .NET Core Runtime 3 installed (previously v2.x was required) #364
  • add go-to-implementation command (symbolimplementation)

[0.37.0] - 2019-02-28

Added

  • upgrade to FSharp.Compiler.Service v27.0.1
  • upgrade to FSharpLint.Core v0.10.7

[0.36.0] - 2019-02-20

Added

  • upgrade to FSharp.Compiler.Service v26.0.1 (#338)
  • upgrade to FSharpLint.Core v0.10.5

[0.35.0] - 2019-02-19

Added

  • new project parser for old fsproj/fsx based on Dotnet.ProjInfo, enabled by default in .NET Core FSAC
  • add unused declarations diagnostic
  • add simplified names analyzer
  • add unused opens analyzer
  • styling for XmlDocs and tooltips
  • add find type declaration command
  • adds autocomplete for external (from unopened namespaces and modules) symbols, provides information where and what open statements should be inserted
  • add workspaceLoad async command
  • add notifications (project loading, etc). In http mode, using websocket
  • add generic parameters to tooltips
  • include keywords in autocomplete only when needed
  • don't autocomplete for comments, strings etc
  • add project cache
  • watch file changes, to trigger project reloading
  • implement record stub generator (#297)
  • add background and persistent symbol cache out of process
  • use dnspy libs to navigate to decompiled files for external libs (#299)
  • fsac .NET runs as 64 bit exe
  • add description for '=' symbol (#312)
  • fix autocomplete for literal values (#316)
  • support keywords in helptext command
  • add interface stub generator (#327)
  • support FSharp.Analyzers.SDK analyzer
  • upgrade to FSharp.Compiler.Service v25.0.1
  • upgrade to Dotnet.ProjInfo v0.31.0
  • upgrade to FSharpLint.Core v0.10.4

[0.34.0] - 2017-09-13

Added

  • support mixed dotnet langs projects (#173)
  • add detailed errors info (#175)
  • add hostPID command line arg (#190)
  • add workspace peek command (#191)
  • fix ci, .net core 2.0 RTM, normalize fsprojs (#197)
  • fix linter crash (#206)
  • single console app (#212)

[0.33.0] - 2017-06-13

Added

  • add sdk 2.0 support (#166)

[0.32.0] - 2017-04-16

Added

  • .NET Core project support

[0.31.1] - 2017-02-07

Added

  • Allow for inconsistent casing of "Fsharp" when detecting: #149.

[0.31.0] - 2017-01-27

Added

  • Improvements from downstream ionide fork:
    • support msbuild15, same as preview2
    • Add Background checking
    • Performance updates for find usages
    • Implement GetNamespaceSuggestions
    • Update FSharpLint version
    • Optimize GetNamespaceSuggestions
    • Optimize GetDeclarations
    • Add endpoint for F1 Help
    • ... and more!
  • (Some of these features only exposed currently via HTTP interface)

[0.30.2] - 2016-10-31

Added

  • Add parse errors, tooltips for keywords, and signatures for constructors: #135.

[0.30.1] - 2016-10-31

Added

  • Invalid release, ignore.

[0.30.0] - 2016-10-30

Added

  • Add EnclosingEntity and IsAbstract to Declaration contract: #129.
  • Merge Ionide changes (#123):
    • Glyphs
    • Update dependencies
    • Lint settings
    • Keyword completion

[0.29.0] - 2016-07-12

Added

  • Add command for all declarations in known projects: #117.
  • cache ProjectResponse, invalidate it if project file's last write time changed: #116.
  • Add command to parse all known projects: #115.
  • Merge Ionide changes (#110):
    • Naive support for project.json (this probably will be dropped in futture but let's have it now)
    • Better (file) paths normalization across different features
    • Resolve scripts to latest .Net on Windows
    • Make completion faster on Suave
    • Depend on F# 4 (FSharp.Core deployed with application) instead of 4.3.1
  • Fix Symboluseproject: #104.

[0.28.0] - 2016-04-05

Added

  • Backwards-incompatible: Make completions faster by not requiring a parse on each request: #99
  • Add SymbolUseProject command: #101.
  • Add typesig command, that doesn't get Comment data: #73
  • Add extraction of xmldoc from other assemblies (from .xml files).

[0.27.4] - 2016-02-18

Added

  • Normalize paths to source files from projects: #94.

[0.27.3] - 2016-02-08

Added

  • Set MinThreads to avoid deadlocks on Mono < 4.2.2: #92.

[0.27.2] - 2016-02-05

Added

  • Upgrade to FCS 2.0.0.4 to fix project cracking with spaces in paths: #91.

[0.27.1] - 2016-01-26

Added

  • Upgrade to FCS 2.0.0.3 to fix VS2015 project cracking: #89.

[0.27.0] - 2015-12-08

Added

  • Upgrade to FCS 2.0.0.0-beta and add project cracking verbosity option: #86.
  • Add FSharpLint support: #83.

[0.26.1] - 2015-10-23

Added

  • Switch to depend on FSharp.Core 4.3.1.0: #81.
  • Don't output a BOM to standard out: #82

[0.26.0] - 2015-10-20

Added

  • Fix for uncompiled referenced projects: #78.
  • Backwards-incompatible: Framework no longer returned in project response.

[0.25.1] - 2015-10-16

Added

  • Add App.config to FsAutoComplete.Suave release: #76.
  • Also for fsautocomplete.exe.

[0.25.0] - 2015-10-14

Added

  • Add Suave hosting for FSAC: #74.
  • Backwards-incompatible: return GlyphName rather than code in
  • Declarations message: #75.

[0.24.1] - 2015-09-11

Added

  • Fix StackOverflowException and encoding issue: #70.

[0.24.0] - 2015-09-04

Added

  • Backwards-incompatible: do not format help text, leave that to the client, which allows the display to be more semantic. #63 (due to @Krzysztof-Cieslak)

[0.23.1] - 2015-09-02

Added

  • Fix MSBuild v14 support on non-English systems by avoiding attempting to load *.resources.dll (patch from @ryun).

[0.23.0] - 2015-08-14

Added

  • Add a new colorizations <true|false> command to enable/disable asynchronous provision of colorization information following a parse: #60 (Fixes #44).
  • Newest FSharp.Core is used for type-checking scripts and for projects that do not reference FSharp.Core. Supports F# 3.0, 3.1 and 4.0: #59.
  • If MSBuild v12 is not available, instead try load MSBuild v14. This, together with the previous point, adds support for VS2015-only Windows installs: #57. Fixes: #12 #21 #23 #25 #54.
  • Backwards-incompatible: compilerlocation command has changed. Now provides path to best version of msbuild, fsc and fsi on Windows: #23.

[0.22.0] - 2015-08-06

Added

  • Backwards-incompatible: Symbol use command now includes FileName rather than Filename

[0.21.1] - 2015-08-06

Added

  • Reduce timeout message from 'error' to 'info'

[0.21.0] - 2015-08-04

Added

  • Update to FCS 1.4.X (support for F# 4.0): #52
  • Automatically reparse F# project files if they are changed on disk: #47

[0.20.1] - 2015-07-30

Added

  • Fix exception in symboluse command: #46.

[0.20.0] - 2015-07-28

Added

  • Backwards-incompatible changes:
    • Update helptext command to return { Name = ""; Text = "" }. Fixes #35.
    • project command response now has 'null' for OutputFile and TargetFramework if a value cannot be determined.
  • FSharp.CompilerBinding removed, and used parts absorbed. Fixes #17.
  • ScriptCheckerOptions fetched with no timeout, and also stores them. Fixes #18, #28.
  • If a .fs file is not in a loaded project, produce an incomplete typecheck environment for it to give basic results.
  • Update parsing of project options to include ProjectReferences. Fixes #39.
  • Separate parsing of commands, main command loop, and formatting of response message into separate modules.

[0.19.0] - 2015-06-30

Added

  • Add symboluse command - ionide#34
  • Breaking change: all columns returned are now 1-based. Format of error locations has also changed to be more consistent with other formats.
  • Add param completion command - ionide#30

[0.18.2] - 2015-06-13

Added

  • Update to FCS 0.0.90 (fix referencing PCL projects) - ionide#26

[0.18.1] - 2015-06-09

Added

  • Prevent test assemblies from being included in release archives by avoiding forcing the output directory.

[0.18.0] - 2015-06-03

Added

  • Adjust for 1-based column indexing - ionide#13
    • Note that this was previously the intended behaviour, but column indexes were treated as 0-based. Ensure that both line and column indexes sent in commands are 1-based.

[0.17.0] - 2015-05-31

Added

[0.16.0] - 2015-05-28

Added

  • Implement multiple unsaved file checking - ionide#8

[0.15.0] - 2015-05-20

Added

  • Add Glyphs to completion responses - ionide#1