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
Misc: To release 1.0.25 #777
Comments
I think #850 will be fixed soon as well. |
Pull request 833 should be in as well. #833 |
Hi! Great work fixing these issues! I just ran into #831 and spent a lot of time debugging until someone pointed me to the issue. It might be worth it to release 1.0.25 so nobody ends up using 1.0.24 by accident (it's the default in some distros). |
I think #856 needs to be closed for the release to happen. |
+1 for high time to get a maintenance release with regression fixes out. I asked about #852 (Darwin) here two months ago because it is relatively trivial, but this is not a regression fix so please don't let it delay any release. Indeed it can seem like the release is hanging on #856, where the suggested fix is a massive commit with a mix of code refactoring and actual changes, API changes even. IMO it is not a critical bug fix (it was discussed whether it was a bug at all) so it could wait until after 1.0.25 and bake longer in the tree before going into a release. |
@dickens Please weigh in as well. Thanks. |
As far as I am concerned, only #856 needs to be merged and we should be ready for an RC. |
#856 has been merged. |
BTW, if you are interested, welcome to join the maintainer team. Right now only Nathan and Chris are actively handling the release. Release since 2015. |
The main difficulty with libusb is probably on Windows backends. As of today, there are 48 issues and half of them are related to Windows. And one of the main missing feature under Windows is Hotplug. But never mind if you do not want to handle Windows, you can still help to handle Linux and/or macOS. |
For those who are interested to see the 1.0.25 release coming soon, please help to carry out tests on git head. Thanks. |
I identifed why the Darwin backend is failing the stress test. Will have a fix today. The problem is in the ordering in libusb_exit caused by destroying the cached device list when the init count goes to 0. Still not sure I agree with this behavior change. I used a library destructor function for a reason... I can fix the ordering issue but this code is somewhat more fragile than I would like. |
Identified the issue with Linux and the stress test. Fixing. |
Interesting question. I have always assumed this is true but we don't document it. We can call:
before the default context is created, right? If not the stress test is wrong. Otherwise I have a fix that will allow this. Will hold off of this change until I get a consensus. |
Opened #923 as a prototype. Please comment. |
#923 seems to be good to me. |
Commit 676076c helps macOS stress test to have the same result as Linux and Windows. Then #923 should be able to fix the remaining segfault issues with Stress test. But issue #924 still exists under macOS when running xusb example. |
So that the following two are pending for the RC release. |
Yeah. I can merge #1026 but only if I can get one more review. Adding an API should be done with care and I don't want to have to replace |
Once that is resolved we need to cut a new RC and get things rolling. We solved the single biggest issue blocking macOS. |
Just wondering if there are any updates on these two last remaining main issues? |
IMO, if they are not fixing regressions, these should wait for next release, and we should make the RC (and possibly the 1.0.25 release) with what we have in git now. I previously wanted these two items included, but as we discussed in #1026, these major API changes can need more review and no rushing. And we dearly need a 1.0.25 now. |
I agree. We can probably tag the release now, or at least the RC1. |
@hjelmn @LudovicRousseau What are your opinions? |
No objection for a release soon. "Release early, release often". Even if we do not have the manpower for the "release often". |
Go for it! |
RC1 is out, please help fill in (and extend) the test matrix in #1046. Thanks Ludovic for the autobuild stuff, that helps already build testing on a load of Windows platforms. |
@tormodvolden @hjelmn @LudovicRousseau |
Looks good to me. |
Is there anything missing in the ChangeLog or other things worth mentioning in the release announcement? Does anyone have the Windows binaries package *.7z build automatized or can volunteer to create it once we have the release tarball? |
I think the changelog is okay. As for the Windows binary, it is okay not to have that initially. I remember that was the case when we released 1.0.23. I actually do not know how the 7z Windows binary packge is created. It is not a real issue though.
|
The MinGW binary package is built with the following script, but you can see it is using a multilib enabled toolchain. I am not so sure what is a suitable toolchain to use in this case. Previously the MSVC (Visual Studio) toolchain binary was built with WDK scripts (WDK 7.1.0) so it does not have the dependancies of the VC runtime packages and had the support of Windows XP. But later the WDK build scripts were removed along with remove of Windows XP support. So I am not so sure the baseline VS version for the VS binary. |
The 1.0.24 .7z has a long list of VS targets that correspond exactly to the Appveyor builds, so I wonder if Appveyor was used to build them, maybe locally. @LudovicRousseau's web service instance doesn't seem to store build artifacts. |
I think we can tag 1.0.25 release first so that various distributions (Linux distro, macOS Homebrew and macports, Windows vcpkg and Msys2) can take the new releases. We can always release the official windows binary once we figured out the way. If Chris is not available, probably Pete can help as well. |
@tormodvolden I have not configured github actions to store any artifacts. That was on purpose. I don't think we need them for Unix. Maybe the lack of Windows builds will motivate some Windows developers to help the project? :-) |
@LudovicRousseau I was thinking of your Appveyor builds for Windows. I think storage of artifacts can easily be enabled there, but I fully understand if you don't want to get involved in it. I see that @dickens also has Appveyor libusb builds, also without artifacts. It is Ludovic's that currently are linked from our github page, I think it was Chris' some time ago. |
@tormodvolden I completely forgot Appveyor :-) |
I have configured appveyor so it stores build artifacts. So I can spin a .7z with all VS builds plus MinGW cross-build, and have it uploaded before I announce the release. Tentatively on Monday night (UTC). |
That will be great. Thanks. |
Wonderful that we finally have the libusb 1.0.25 release. BTW, here in Singapore it is Chinese New Year holiday today. |
That was good timing :) Happy New Year! If the release is as quiet as the RC, we're good. It is already picked up by e.g. homebrew. |
Merged main feature improvement
Merged main bug fixes
Core: Fix crash (segv) in libusb_init if backend.init failes #989(unreleased regression)core: Unlock and clear default ctx in all error paths in libusb_init #995(unreleased regression in error path)Core: Calling op_set_option even if no default context is set #942(avoid regression on Android)darwin: fix behavior of libusb_set_interface_alt_setting when it stal… #1031(unreleased breakage on new macOS 12)Postponed for 1.0.26 (see #1047 )
The text was updated successfully, but these errors were encountered: