You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This is a refactoring of the changes in #923 which fixed#922.
Whilst that PR fixed the bug and allowed us to ship 0.13.2, I was quite uncomfortable leaving AssemblyUtility.IsManagedAssembly() returning true whenever the the path passed to it isn't rooted and doesn't end in 'dll' or 'exe'. For instance, I could pass "ThisDoesNotExist.txt" into it and it would return true.
In this PR I've reverted AssemblyUtility and instead changed PackageAssemblyResolver to filter out unmanaged assemblies from the list returned from IPackageObject.GetCompatibleDlls() before concatenating them with IPackageObject.FrameworkAssemblies.
IMO the quickest way to review this PR is one commit at a time.
While true, it is not really an issue as the classes that use
AssemblyUtility only scan dlls and exes. The text file will never get
loaded or indicated as a reference.
I don't have a big concern but I don't think was needed.
On Sat, Feb 7, 2015 at 2:38 PM Adam Ralph notifications@github.com wrote:
This is a refactoring of the changes in #923 #923 which fixed #922 #922.
Whilst that PR fixed the bug and allowed us to ship 0.13.2, I was quite
uncomfortable leaving AssemblyUtility.IsManagedAssembly() returning true
whenever the the path passed to it isn't rooted and doesn't end in 'dll' or
'exe'. For instance, I could pass "ThisDoesNotExist.txt" into it and it
would return true.
In this PR I've reverted AssemblyUtility and instead changed
PackageAssemblyResolver to filter out unmanaged assemblies from the list
returned from IPackageObject.GetCompatibleDlls() before concatenating
them with IPackageObject.FrameworkAssemblies.
IMO the quickest way to review this PR is one commit at a time.
You can view, comment on, or merge this pull request online at:
It's true that the original fix was fine given all the calls made to AssemblyUtility.IsManagedAssembly from the scriptcs codebase, but the method is public and packaged in core, so I think it's important that it conveys the correct semantics. In fact, even if it was internal, I'd still consider this important.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This is a refactoring of the changes in #923 which fixed #922.
Whilst that PR fixed the bug and allowed us to ship 0.13.2, I was quite uncomfortable leaving
AssemblyUtility.IsManagedAssembly()returningtruewhenever the the path passed to it isn't rooted and doesn't end in 'dll' or 'exe'. For instance, I could pass"ThisDoesNotExist.txt"into it and it would returntrue.In this PR I've reverted
AssemblyUtilityand instead changedPackageAssemblyResolverto filter out unmanaged assemblies from the list returned fromIPackageObject.GetCompatibleDlls()before concatenating them withIPackageObject.FrameworkAssemblies.IMO the quickest way to review this PR is one commit at a time.