-
-
Notifications
You must be signed in to change notification settings - Fork 33
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
Use NativeLibrary for all OSes #200
Conversation
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.
At a high level these changes make sense to me. Other than the one thing I pointed out with dlerror
, my only concern is how much testing this might need on Windows and Linux to make sure there isn't some unexpected impact. NativeLibrary
should work fine, but I don't think the unit tests really exercise dynamic library loading deeply (e.g., does NativeLibrary
follow all the same path searching rules that libdl
uses?). I'm guessing it will not be a problem, but that's just a guess.
@lyonsil Yeah, I was having similar concerns, so I left this in draft until it could be given more thorough consideration. |
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.
Looks good to me. The overall question about "how do we know that NativeLibrary will be functionally compatible with the previous approach for Windows and Linux users on .NET 6.0 or later?" is still there, but I don't see anything in these changes that looks like a regression or a problem.
I'll try to test it out more. For reference, here's the code |
For Unix, it uses |
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 verified (using a locally built package with FieldWorks) that this code does not disrupt the framework clients of the .dll, and I don't see any reason that it shouldn't work for dotnet clients on Windows.
No description provided.