Uh oh!
There was an error while loading. Please reload this page.
Clean-up System.Drawing.Common and remove the Unix code. - #64623
Conversation
ghost
commented
Feb 1, 2022
Tagging subscribers to this area: @dotnet/area-system-drawing Issue DetailsSince #64084 got merged,
|
safern
commented
Feb 1, 2022
Thanks, @teo-tsirpanis -- please let me know when this is ready for review (CI is Red). I'd like to ask if you need any help to get CI green or a review, or just wait? |
teo-tsirpanis
left a comment
There was a problem hiding this comment.
Thanks for offering to help @safern. CI failures are so far unrelated (they occur on non-Windows platforms). I have two questions.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
This comment was marked as resolved.
This comment was marked as resolved.
3f4fe59 to
966d6bdCompareViktorHofer
commented
Feb 12, 2022
@teo-tsirpanis#64500 which got just merged caused a conflict which I just resolved. Hope that's ok. |
teo-tsirpanis
commented
Feb 12, 2022
Thanks @ViktorHofer. |
2893c32 to
608394eCompareteo-tsirpanis
commented
Feb 15, 2022
CI is green (failures are non-Windows and unrelated). @safern is there anything else to do? This PR is getting more and more conflicts as it stays open. |
4742220 to
055a438Compareteo-tsirpanis
commented
Feb 22, 2022
Conflicts are resolved. |
danmoseley
commented
Feb 23, 2022
@dotnet/area-system-drawing as @safern changed teams, this will need a different one of you to sign off. |
055a438 to
ab12cb6Compare34379c8 to
1c0ca40Compareteo-tsirpanis
commented
Mar 16, 2022
Great, CI now passes. Can someone review?
|
danmoseley
commented
Mar 23, 2022
we will need a new reviewer with Santi gone. |
9a2312f to
c699429CompareNo reason to sort them; the list is already unsorted. And rename a remaining formerly Windows-specific file.
22d0776 to
b8d5126CompareSystem.Drawing.Common.System.Drawing.Common and remove the Unix code.Uh oh!
There was an error while loading. Please reload this page.
Co-authored-by: Viktor Hofer <viktor.hofer@microsoft.com>
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
Went over all the changes. This looks REALLY good. Thanks for the great work. The remaining work now is to:
- Switch all the
!!null checks to their previous state. For most, you could probably useArgumentNullException.ThrowIfNull(myString);. - Make sure that the remaining questions are answered.
After that we can get the PR merged :)
PS: I hope you don't mind that I pushed one commit to your branch to clean-up the SDC project file further.
a2c09bf to
435440eCompare435440e to
7eeb1deCompare
ViktorHofer
left a comment
There was a problem hiding this comment.
Congratulations and thank you for your contribution 🎉🎉🎉 We very much appreciate the time and effort that you put into this change.
ViktorHofer
commented
Apr 20, 2022
If you want to pick up another task, there are plenty ones in the backlog that are marked as up-for-grabs. And I will promise that future changes won't take us that long to react and will hopefully cause less merge conflicts (😥) on your side. |
) * Remove all Unix-specific files. * Throw PNSE on non-Windows. * Merge the Windows-specific files into their formerly cross-platform counterparts. * Remove all mentions of Unix in the tests. * Remove two always-on defines. * Merge two item groups in the project file. No reason to sort them; the list is already unsorted. And rename a remaining formerly Windows-specific file. * Remove the NoCOMWrappers files. * Fail on unsupported platforms when a library is trying to be loaded. * Fix compile errors. * Small changes in the project file. * Remove two meaningless asserts. * Run BinaryFormatter tests on SDC types only on Windows. * Use `[ThreadStatic]` in Gdip.ThreadData. * Remove `TargetsAnyOS`. Co-authored-by: Viktor Hofer <viktor.hofer@microsoft.com> * SDC project file clean-up * Remove `!!` from System.Drawing.Common. Co-authored-by: Viktor Hofer <viktor.hofer@microsoft.com>
danmoseley
commented
May 10, 2022
I also wanted to add my belated thanks here @teo-tsirpanis. This was a lot of work. |
Since #64084 got merged,
System.Drawing.Commonis supported only on Windows. This PR actually removes all Unix-specific code and tests, and merges the.Windows.csfiles into their formerly cross-platform counterparts, drastically simplifying the codebase.I also cleaned-up the code a little bit (used a
[ThreadStatic]instead of a named data slot, and removed unused files).