-
Notifications
You must be signed in to change notification settings - Fork 830
Report builder creation warnings according to compiler args #4125
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Report builder creation warnings according to compiler args #4125
Conversation
5124346 to
2cdd6f5
Compare
2cdd6f5 to
70318c7
Compare
d5326c3 to
4f0a180
Compare
|
It turned out CompilationErrorLogger didn't change error severities according to error severity options. I fixed it and now I'm waiting for the tests results to check whether anything else needs to be fixed. |
4f0a180 to
d21b248
Compare
saul
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can you also add a test case for —warnaserror-:##? This makes a warning a warning when warnings as errors is enabled.
|
@saul Done. |
|
Cheers! Looks great |
KevinRansom
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for this.
| | None -> failwith "declaration list is empty" | ||
|
|
||
|
|
||
| [<TestCase(([||]: string[]), ([||]: bool[]))>] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This isn't urgent, but just to say that I personally never use TestCase attributes in the F# tests, and prefer a loop over an F# list of test case data inputs. Indeed I usually remove any uses of TestCase when I come across them later
While using TestCase attribute has some advantages (e.g. they get reported as separate tests in a test explorer), I believe that just using F# code to program the space of test cases is more uniform and in the long run easier to understand - and encourages people to be really expansive in how they meta-program up a very broad range of systematic test cases.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
(Programming up the test case matrix with F# data is also more typesafe of course)
dsyme
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Great job!
|
Thanks for this. |
* fix resource name (#4151) otherwise instead of expected `FSStrings.resources` will use `FSharp.Compiler.Service.netstandard.FSStrings.resources` * Use ConcurrentDictionary in ImportMap (#4148) * Fix IndexOutOfRangeException in check for providing completion (#4138) * Fix IndexOutOfRange in check for providing completion: * Add test * Remove repeating arguments processing in IncrementalBuilder creation (#4124) * Report builder creation warnings according to compiler args (#4125) * Filter incremental builder creation errors according to compiler args * Fix CompilationErrorLogger ignores WarsAsError options * Add test for WarnAsError * Cleanup * Add more tests; cover WarnAsError-, no warnings at all * Refactor tests * Add test
* fix resource name (dotnet#4151) otherwise instead of expected `FSStrings.resources` will use `FSharp.Compiler.Service.netstandard.FSStrings.resources` * Use ConcurrentDictionary in ImportMap (dotnet#4148) * Fix IndexOutOfRangeException in check for providing completion (dotnet#4138) * Fix IndexOutOfRange in check for providing completion: * Add test * Remove repeating arguments processing in IncrementalBuilder creation (dotnet#4124) * Report builder creation warnings according to compiler args (dotnet#4125) * Filter incremental builder creation errors according to compiler args * Fix CompilationErrorLogger ignores WarsAsError options * Add test for WarnAsError * Cleanup * Add more tests; cover WarnAsError-, no warnings at all * Refactor tests * Add test
Fixes #4030.