-
Notifications
You must be signed in to change notification settings - Fork 796
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
Enable source path mapping for deteministic builds #9874
Conversation
3be54ea
to
c13cb02
Compare
I haven't end to end tested compiling some stuff with the task, I wasn't sure if there were integration-style tests that used the targets to prove things like that. Ideally I'd sourcelink a library with this task, then use the sourcelink tool to dump the file paths and verify the correct deterministic paths are written. |
@baronfel , thanks for this, I'll try to look at this later in the week. Kevin |
Thanks @baronfel 😸 |
* initial version * finish porting tests, last test fails * fix test * fix end tag * use cross-framework implementation of endsWithDirectorySeparator * UsingTask instead of fully-qualified names
* initial version * finish porting tests, last test fails * fix test * fix end tag * use cross-framework implementation of endsWithDirectorySeparator * UsingTask instead of fully-qualified names
This fixes #8883 by copying/translating the Roslyn build tasks for SourceRoot mapping, along with the test cases they have identified, into FSharp.Build. In addition this sets up the changes to the msbuild targets so that the new task is called at the appropriate point in the compilation so enable deterministic build path mappings.
In an ideal world we'd just be picking up and consuming the shared build task, but until that blessed time we must forge our own paths.