Perform more security cleanup#801
Conversation
|
@hughbe you're going to have to break this down more into multiple commits; also the deleted code is concerning |
3c70ad2 to
8d793a5
Compare
|
@zsd4yr hopefully this helps! |
Codecov Report
@@ Coverage Diff @@
## master #801 +/- ##
=================================================
+ Coverage 28.642% 28.83822% +0.19622%
=================================================
Files 1075 1078 +3
Lines 293506 293919 +413
Branches 38399 38408 +9
=================================================
+ Hits 84066 84761 +695
+ Misses 205407 205124 -283
- Partials 4033 4034 +1
|
8d793a5 to
599c2c5
Compare
That is helpful. Would you mind doing me another favor and breaking these down the first commit even more into:
|
|
Mostly because I really only want to PR number 3 😉 |
There was a problem hiding this comment.
I believe registry operations throw SecurityException for regular ACL issues (not just CAS) instead of UnauthorizedAccessException - if so this line should be reverted.
There was a problem hiding this comment.
What happened to UnsafeNativeMethods.ThemingScope.CreateActivationContext(assemblyFileName, nativeResourceID); ?
There was a problem hiding this comment.
Previously it passed null for the final parameter, now 0. I guess one marshals to the other?
There was a problem hiding this comment.
Looks OK with couple comments.
@hughe thanks for doing this. Breaking out into commits helped. However, there are still unrelated changes, even within commits. What would really help reviewers is smaller commits and smaller PR's. Eg., pure refactoring to eg., remove or move using statements, fix comments and brackets and braces could be all in 4 commits and one PR, the work to coalesce the "Internal" properties that weren't needed anymore really should be its own PR, the remaining CAS cleanup another PR. This would make it much quicker to review because we need less "state" in our head and can pay more attention where it's needed. As a rule of thumb, changes that shouldn't change IL (formatting, comments) ought to be reall fast to review in their own PR.
Also, this repo isn't yet tested as well as it ideally would be. Separating out commits and PR's (especially given most PR's get squashed) might help us later if we need to bisect and reverse an error.
It's great to get all these changes from you, I'm just thinking about how to get them in most easily and reliably. cc @merriemcgaw
|
Looks like there's some rebasing required. 😸 |
Perhaps this practice as blanket rule should be reconsidered, precisely for the above mentioned reasons. It is author's responsibility to present work in clear and easy to understand manner, separating functional and non functional changes. |
599c2c5 to
66f6688
Compare
|
I don't expect this PR to build... waiting on #801 to be merged :) |
adding [WIP] since this depends on another PR |
|
Oops! #843 |
Why is this change blocked by that one? |
|
Would cause more merge conflicts. |
In CoreFX, we avoid this by asking that significant NF changes are in a separate PR. |
|
@hughbe happy to take another look when you've done battle with the merge, |
6e1e4e6 to
94a1fbb
Compare
Totally in agreement 👍 Over the years in different projects I've experienced various styles. In the end of the day - it is all about the reviewer experience - they must be able to clearly understand what/how/why changed. And it is the author responsibility to present the work in such manner. |
| @@ -51,10 +51,10 @@ public sealed class Application { | |||
| static string productName; | |||
| static string productVersion; | |||
There was a problem hiding this comment.
Looks like we should make a pass (separately) to add visibility specifiers everywhere.
|
@hughbe this seems fine to merge - especially before we get more conflicts - can you remove the |
|
If you address the feedback please use new commits as usual 😸 |
No description provided.