-
-
Notifications
You must be signed in to change notification settings - Fork 374
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
Update curl and mbedtls submodules #1682
Update curl and mbedtls submodules #1682
Conversation
Updated to match 8.2.0-Dev branch Fixes SSL connect error on macOS
@player-03 Since you did the work on submodules in 8.2.0-Dev, I was hoping that you'd give it a once over before I merge this into develop. |
So the main problem I see is that people won't have the correct remote installed. This came up on Discord a couple months ago, and I said I wanted to code a workaround, but I never got around to it. |
Your instructions for updating the submodules seem to work for me. I ran the following commands to check out my fork and then switch between develop and the branch with the new remotes: git clone git@github.com:joshtynjala/lime.git
cd lime
git submodule init
git submodule sync
git submodule update
git checkout update-curl-and-mbedtls
git submodule sync
git submodule update I'm not sure that there's a way around requiring this additional step. Using the Git repo instead of a Haxelib release is always going to have some additional overhead, whether it's occasional unstable code or some extra repo maintenance. To get this critical bug fix released soon, I'm willing to live with a little extra work to support folks on Discord/forums. |
With a slightly different url, it works for me. Maybe it isn't so bad. @tobil4sk Does this work for you?
|
Yes, running these commands to create a fresh copy of the lime repo works without any issues. In my main checked out copy I ended up adding both remotes to each of the submodules, since it became too tedious to switch between them every time.
I guess the issue comes when the remote branches have diverged so much that git has issues switching between their main branches. |
The remotes aren't diverging, though. To diverge they'd have to share at least one past commit. These are two entirely separate codebases with no shared history. And that should only be a problem if you try to merge. I think your error had to do with Git not even finding the remote, which is why it worked after |
CI seems to be getting stuck building mbedtls for the Android NDLL:
Could this be because develop is still using NDK r15c and 8.2.0-Dev is using r21e? |
Maybe. NDK 21+ uses Clang rather than GCC (with a whole other toolchain to go with it), so there's potentially a lot that's different. For the minimum possible change, try |
|
Maybe it needs NDK 21 and/or Clang. I do recall something being incompatible with the old version. Before debugging this any further, can you check 8.0.0? If 8.0.0 works and 8.0.1 fails, there might be an easier way to solve this. |
Yes, Lime 8.0.0 works correctly. Assuming that the issue is switching the CI from macOS 10.15 to 11, we could potentially set up a VM or computer running 10.15 to build the ndll for macOS. |
If needed, I have an old MacBook running 10.13 that can't upgrade any further. |
But does 8.0.0 work on Mac 11? |
Lime 8.0.0 built with mac11 has the same SSL connect error. |
Then I guess the only viable path is forwards. From a quick search, the compiler flag |
Adding I found this PR for mbedtls that seems relevant. Mbed-TLS/mbedtls#1986 It appears to have been merged into mbedtls 3.3.0. It looks like we're at 3.2.0 in 8.2.0-Dev, and this branch. |
So that means NDK 15 shipped with GCC < 5? Seems plausible. In that case, there's no urgent need to update 8.2.0-Dev, but we might as well try it here. |
Can confirm that this pull fixes the SSL error. It also fixes another SSL error I was having with HashLink. |
Restores Android NDK r15c compatibility
CI passes after updating to mbedtls v3.3.0, fixing the issue with Android. I also had to add the I can no longer reproduce the "SSL connect error" message with Lime either built locally or built on CI. I confirm that HTTPS URLs are loading correctly on macOS and Windows (C++, Neko, and HL), Android (C++), and iOS (C++). |
So what's the easiest way to fix this? i had the same error: |
Did you try the Git version of hxcpp? |
Yes, I used git, I'm also using the most recent versions of lime, flixel, open fl and all the others needed. I can try to re-install the git again maybe. |
Did about as much as I expected. When it prompted with
Would you like to do this now [y/n] i said yes as I assumed I was meant to. Not sure what else I could provide sorry. |
This was overlooked in openfl#1682
* Fix curl static linking on mac This was overlooked in openfl#1682 * prepare for Lime 8.1.3 * tools: allow -x86_64 and -x86_32 as command line flags to select those architectures instead of defaults (closes openfl#1819) Still supports -32 and -64, though, for backwards compatibility. We could consider removing those in Lime 9. * release date --------- Co-authored-by: Tobiasz Laskowski <tobil4sk@outlook.com> Co-authored-by: Chris Speciale <christopher.gaf@gmail.com> Co-authored-by: Josh Tynjala <joshtynjala@bowlerhat.dev>
* Fix curl static linking on mac This was overlooked in openfl#1682 * prepare for Lime 8.1.3 * tools: allow -x86_64 and -x86_32 as command line flags to select those architectures instead of defaults (closes openfl#1819) Still supports -32 and -64, though, for backwards compatibility. We could consider removing those in Lime 9. * release date --------- Co-authored-by: Tobiasz Laskowski <tobil4sk@outlook.com> Co-authored-by: Chris Speciale <christopher.gaf@gmail.com> Co-authored-by: Josh Tynjala <joshtynjala@bowlerhat.dev>
Updated to match 8.2.0-Dev branch
Fixes "SSL connect error" on macOS native targets that was introduced in Lime 8.0.1. Most likely from the CI server switching from building on macOS 10.15 to building on macOS 11.