-
-
Notifications
You must be signed in to change notification settings - Fork 370
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
Renaming fixes and improvements #305
Conversation
✅ Build ConfuserEx 677 completed (commit 17712c57ac by @KvanTTT) |
✅ Build ConfuserEx 678 completed (commit 0c35448175 by @KvanTTT) |
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.
I don't think the increase in size is much of an issue. If someone wants to store the file, it can just be compressed. Even deflate should yield good results for those mapping files.
There are two changes you did, I strongly disagree with.
- You added the
[Flags]
-Attribute to the renamer modes. This is simply wrong. This enum represents fixed values and not flags. You can't combine those values in any meaningful way. - The changes you did in the naming introduce a major change how generic types are handled. This will introduce problems. Please revert this part or change it to ensure that the generic name convention remains.
Would it be possible to make the feature from issue #293 toggleable? This would improve customizability of the renaming protection, also some people may want to use the old renaming behavior. |
@ElektroKill the old renaming behavior is not fully correct because of #296. Also, it makes testing more complicated. I'll take a look at how it's complex to support both behaviors. |
Yes, I also think that's not a problem. I just reported the change before and after improvements. |
I've added |
✅ Build ConfuserEx 684 completed (commit b3644ef67e by @KvanTTT) |
They are related: short names automatically disable methods overloading and full names enable it. Take a look at the following symbols map for comparison: Short names
Full names
|
✅ Build ConfuserEx 685 completed (commit b35774adf4 by @KvanTTT) |
7c93b95
to
74a624f
Compare
4a5ab07
to
55c9056
Compare
✅ Build ConfuserEx 716 completed (commit 95361b3005 by @KvanTTT) |
✅ Build ConfuserEx 717 completed (commit a6159f1226 by @KvanTTT) |
✅ Build ConfuserEx 719 completed (commit 6afa9c6bce by @KvanTTT) |
Any chance this request will be merged? Should I resolve conflicts? |
@KvanTTT: Please resolve the conflicts. I'll merge it. |
…ect renaming process
…e, GetOriginalNamespace more concrete
…tedToOriginalNameMap; check if newName exists in _obfuscatedToOriginalNameMap when newName is being generated
… use original full names everywhere; fix mkaring#296, fix mkaring#293
…rface method for a derived type, add GetSimplifiedFullName method
…dOverloading test
…ericParams` that is disabled by default, extend test
✅ Build ConfuserEx 810 completed (commit 4cf3f68d7b by @KvanTTT) |
…from NameService to MessageDeobfuscator
❌ Build ConfuserEx 811 failed (commit cd1a2f2037 by @KvanTTT) |
…ynamic or reflection is used
✅ Build ConfuserEx 812 completed (commit ae6c37f8a5 by @KvanTTT) |
Done. Also, I fixed the renaming bug after your changes related to |
I found that after this commit, ConfuserEx created a much larger but broken output for my assembly. I will try to make a possible smaller project to reproduce related problems. |
Do you mean
It would be great. |
I mean the assembly. |
Does it work with the specified |
Not tried that option yet. |
Please try. It's important to find out how it affects assembly. |
I managed to reproduce the problem: Please use the attached configuration and assembly. |
Also, I've tested the new renaming algorithm on a big project and got a ~3x increase of output symbol.map size.