Conversation
|
Hello You've touched the CPP files (e.g. isnt.cpp). Did you update the RAR version or did you edit them manually? Also the build is failing for OS X 10.8, I've specifically added that to the build matrix because of one user of the lib. I'll investigate that. Finally, since you have no contributions yet. I'm in the process of changing the license of this library. do you agree with (re-)licensing all your contributions to this repository under the licenses MIT and Apache2, at the users' option? |
|
Hi, I've edited CPP files manually - as far as I understand, their licence permits it. Failure on OS X 10.8 is a bit unexpected, but fortunately should be easily fixable - I'll push the change shortly. I agree with licensing all my contributions to this repository under MIT and Apache 2 licences, at the users' option. |
|
Yes the license permits it. However to avoid regressions once we update to a new version, we have to reapply our changes so they’re not overwritten. That’s why I asked. I assume there is no other way to achieve this support? |
|
At this moment I think this is the simplest solution to achieve windows-gnu support, but not the only one. One potential alternative would be to implement missing comsupp symbols definitions in unrar_sys module, I can limit the changes in unrar C++ sources just to Best case scenario is that RarLab reworks Win11 detection mechanism in future versions of their library (currently this code is marked with |
|
Thank you. I'll merge it tomorrow. I'll edit/squash some of your commits if that's okay for you. |
|
Sure thing. |
|
Hi, I see both my PRs are still open. Is there something I can do to help prepare them for merge? |
|
I merged it manually through the command-line instructions. Unfortunately it didn't register it here, but that's no problem. I will release a new version soon. |
|
New version is on crates.io :) Thanks for contributing! |
Latest version of unrar.rs fails to link on x86_64-pc-windows-gnu target.
Root cause is indirect dependency from underlying C++ library to MSVC-provided comsupp.lib.
Proposed patch works around it by enabling this dependency only when using MSVC compiler.
It does drop some Windows version detection heuristics on -gnu targets, but I haven't observed any issues with it during tests.
Additionally, even after linking is fixed using above method, produced build fails during runtime with memory access violation error. This is most probably caused by type size mismatch (32 vs 64bits).
Enabling
winapicrate usage for all flavours of windows target fixes the issue.