Uh oh!
There was an error while loading. Please reload this page.
Reduce CoreCLR PAL - #76832
Conversation
Remove unused functionality from the CoreCLR PAL. Also replace the `DeleteFile` by standard `remove` function.
jkotas
commented
Oct 11, 2022
This introduced a build break in Mono: I am going to revert this PR. |
vargaz
commented
Oct 11, 2022
Why didn't CI pick up the build breakage ? |
am11
commented
Oct 11, 2022
@vargaz, the change path evaluation (responsible for triggering CI legs) is missing runtime/eng/pipelines/common/evaluate-default-paths.yml Lines 61 to 62 in 3435b39 Since mono desktop depend on coreclr PAL (for corehost), I think we should add those paths in the list which affects mono. Docs: runtime/eng/pipelines/evaluate-changed-paths.sh Lines 1 to 18 in 3435b39 cc @akoeplinger |
jkotas
commented
Oct 11, 2022
It is more directories than that: https://github.com/dotnet/runtime/blob/main/src/mono/dlls/mscordbi/CMakeLists.txt#L31-L43 |
janvorli
commented
Oct 11, 2022
Ouch, I had no idea that anything in mono uses coreclr PAL. |
AaronRobinsonMSFT
commented
Oct 11, 2022
Agreed. That seems wrong. Shared code really needs to be moved up to @jkotas Was it just |
jkotas
commented
Oct 11, 2022
I think there is larger problem with how the ICorDebug Mono implementation is factored. The first questions to ask would be where it is used and how it is tested and where we want to move it going forward, and only then worry about mechanics.
The build break error was just about putenv, but I do not know whether there is more hiding behind it. |
akoeplinger
commented
Oct 11, 2022
janvorli
commented
Oct 11, 2022
I'll try to build Mono and see if anything else breaks. The |
janvorli
commented
Oct 11, 2022
I have tried to build mono locally off my branch and it all passed. @jkotas can you point me to the job that has failed with that error? |
akoeplinger
commented
Oct 11, 2022
@janvorli you need to build the |
janvorli
commented
Oct 11, 2022
@akoeplinger I have tried that too before and it succeeded. However, it seems it doesn't build anything native. I've even tried a clean build. |
I have discovered some unused functions in the coreclr PAL. So I have removed it from the PAL and also removed some unused stuf from the coreclr that I have found along the way.
I have also replace the
DeleteFileby standardremovefunction.The
CreatePipeis not used by any code using the PAL except for the PAL tests. But I had to keep it topreserve
CreateProcesstests without refactoring. So I have at least removed it from the pal.h to prevent future usage.I have also modified couple of PAL tests to get rid of
SetEndOfFileAPI usage that was removed for tests where it made sense to preserve them.