Skip to content

Remove always-on language feature flag: ErrorOnDeprecatedRequireQualifiedAccess #20168

Description

@T-Gro

LanguageFeature.ErrorOnDeprecatedRequireQualifiedAccess has shipped since F# 7.0 and is enabled for every selectable language version (the minimum accepted --langversion is 8.0). Its feature flag can therefore never be turned off, so it is dead configuration. This issue removes the flag and collapses the guarded code to its enabled behaviour.

What to remove

  • The ErrorOnDeprecatedRequireQualifiedAccess case in LanguageFeatures.fs and LanguageFeatures.fsi
  • Its entry in the features map and its GetFeatureString arm
  • The featureErrorOnDeprecatedRequireQualifiedAccess string in FSComp.txt
  • Every SupportsFeature LanguageFeature.ErrorOnDeprecatedRequireQualifiedAccess / checkLanguageFeatureAndRecover … ErrorOnDeprecatedRequireQualifiedAccess guard — keep only the enabled path and delete the legacy branch
  • Adjust affected tests and baselines accordingly

Consequence: --disableLanguageFeature:ErrorOnDeprecatedRequireQualifiedAccess is no longer a recognised feature name.

Version mapping

LanguageFeature.ErrorOnDeprecatedRequireQualifiedAccess, languageVersion70

Feature string

featureErrorOnDeprecatedRequireQualifiedAccess,"give error on deprecated access of construct with RequireQualifiedAccess attribute"

Part of #20139

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

Status
New

Relationships

None yet

Development

No branches or pull requests

Issue actions