These release notes track our current efforts to document changes to the F# project over time. They are split into the language, core library, compiler/tools, and compiler service.
FSharp Compiler Service (main)
In FSharpParsingOptions, rename ConditionalCompilationDefines --> ConditionalDefines
Some syntax tree nodes have changed, e.g. introduction of SyntaxTree trivia
Resolved expressions (FSharpExpr) now reveal debug points, you must match them explicitly using DebugPoint(dp, expr)
Some node types in FSharpExpr (e.g. Let, While, TryFinally, TryWith) reveal additional debug points
In FSharpExpr, FastIntegerForLoop has been renamed to IntegerForLoop
SynModuleDecl.DoExpr --> SynModuleDecl.Expr because it was not corresponding to a 'do expr' declaration.
A 'do expr' declaration in a module will correspond to a SynModuleDecl.Expr enclosing a SynExpr.Do
This constructo also loses the debug point as it was always None. The debug point
is always implicit for this construct.
In FCS API, FSharpParsingOptions, CompilingFsLib --> CompilingFSharpCore
In FCS API, FSharpParsingOptions, ErrorSeverityOptions --> DiagnosticOptions
SynIdent was introduced in the Untyped Syntax Tree.
This represent an Ident with potential additional information, stored as IdentTrivia).
LongIdentWithDots was renamed to SynLongIdent and also could contain IdentTrivia.
Due to this change, infix operators are stored as SynExpr.LongIdent instead of SynExpr.Ident.
a + b is parsed as SynLongIdent([op_Addition], [], [Some (OriginalNotation "+")]).
You can trigger a rebase of this PR by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
> **Note**
> Automatic rebases have been disabled on this pull request as it has been open for over 30 days.
Bumps FSharp.Core from 7.0.0 to 7.0.200.
Changelog
Sourced from FSharp.Core's changelog.
... (truncated)
Commits
You can trigger a rebase of this PR by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)