fsharp icon indicating copy to clipboard operation
fsharp copied to clipboard

Better error reporting for let bindings.

Open edgarfgp opened this issue 1 year ago • 2 comments

Description

Improve error reporting for Binding checking code bindings including let bindings, let-rec bindings, member bindings and object-expression bindings

Fixes # (issue, if applicable)

Checklist

  • [x] Test cases added
  • [x] Release notes entry updated

edgarfgp avatar Aug 24 '24 15:08 edgarfgp

:heavy_exclamation_mark: Release notes required


:white_check_mark: Found changes and release notes in following paths:

Change path Release notes path Description
src/Compiler docs/release-notes/.FSharp.Compiler.Service/9.0.100.md

github-actions[bot] avatar Aug 24 '24 15:08 github-actions[bot]

@psfinaki Can I get some help updating the last failing window test related please ?. Have tried for couple days and can not make any progress

edgarfgp avatar Aug 28 '24 19:08 edgarfgp

@edgarfgp alright, will take a look shortly.

psfinaki avatar Aug 29 '24 11:08 psfinaki

@edgarfgp something popped up today, we're on it with @vzarytovskii, stay tuned.

psfinaki avatar Aug 29 '24 18:08 psfinaki

Hey @edgarfgp I pushed the updates to this branch. AFAIU this PR is supposed to adjust some error ranges hence some baselines need updates.

Working with baselines is confusing, but these ones at least can be handled with normal dotnet means. As in, to find the problem, I built the whole thing, navigated to tests/fsharp and executed tests like dotnet test --filter "Name~neg10". This showed me the difference between expectations and reality in a more or less readable manner (more readable than in ADO for sure).

Note neg45 needed the Release build. As for quotesDebugInfo, this appears to be written in yet different way (hah), but once I executed it locally there were some files emitted (test6.actual, test9.actual), again showing the new results which I could compare with hardcoded string baselines in tests.

Now you decide if this is what you want :)

I don't know how ready your PR is, I skimmed thru the impl tho, I believe these bsl changes might be reasonable with what you change. Yet, given that the updates are quite diverse, please update the PR description with some motivation and impl details 😎

psfinaki avatar Aug 30 '24 13:08 psfinaki

@psfinaki Thanks a lot for the help. You are a Legend. Will be updating the PR description soon to cover and explain all the goodness here :)

edgarfgp avatar Aug 30 '24 15:08 edgarfgp

@psfinaki @T-Gro @abonie please review, we will have to either merge it soon, or wait until after 9.0.100 release, since SDK freeze is soon (in couple of weeks), and we will need to merge it and wait for translations.

vzarytovskii avatar Sep 04 '24 11:09 vzarytovskii