Skip to content

The F# Build should cache the generated lexer/parser instead of recreating them all of the time #17006

@baronfel

Description

@baronfel

Is your feature request related to a problem? Please describe.

If the generated lexer and parser were checked in then they wouldn't need to be re-built quite so often. The files are almost perfectly cache-able (the only inputs are the lex/yacc binaries and the fsl/fsy file inputs) and this generation would mean that we don't have to

  • rebuild the packaged lexx/yacc
  • regenerate the parser/lexer

Running this is a cost that every proto build has to pay, for no good reason. Generating the lexer and parser on my machine takes ~12s:
image

However, it also takes ~35s to build fslex and fsyacc projects - costs that could be avoided if the files don't need to be generated.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Area-BuildEverything related to building F# compiler, tooling and VS extension.Feature Request

    Projects

    Status

    New

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions