Use libindy with rusql fix for ios build#306
Conversation
1cdb47d to
2347094
Compare
|
We would have to release indy-sdk to get into android, as for Android we rely on prebuilt libindy binaries |
Codecov Report
@@ Coverage Diff @@
## master #306 +/- ##
=======================================
Coverage 49.66% 49.66%
=======================================
Files 154 154
Lines 19607 19606 -1
Branches 6190 6199 +9
=======================================
Hits 9738 9738
- Misses 5072 5076 +4
+ Partials 4797 4792 -5
Flags with carried forward coverage won't be shown. Click here to find out more.
Continue to review full report at Codecov.
|
wrappers/ios/ci/build.sh
Outdated
|
|
||
| INDY_VERSION="v1.16.0" | ||
| #INDY_VERSION="efb7215" # this is "v1.16.0" + rusql update fix + (number of other commits on master branch) | ||
| INDY_VERSION="b4b330ef3" # this is "v1.16.0" tag |
There was a problem hiding this comment.
What is the purpose of changing this from v1.16.0 to the tag v1.16.0 commit?
|
Moreover, why do you link the binary against a different version of the indy crate? |
Good catch 👍 thanks |
3ccdf15 to
9d34882
Compare
Signed-off-by: Patrik Stas <patrik.stas@absa.africa>
Signed-off-by: Patrik Stas <patrik.stas@absa.africa>
Signed-off-by: Patrik Stas <patrik.stas@absa.africa>
Signed-off-by: Patrik Stas <patrik.stas@absa.africa>
Signed-off-by: Patrik Stas <patrik.stas@absa.africa>
Signed-off-by: Miroslav Kovar <miroslavkovar@protonmail.com>
Signed-off-by: Miroslav Kovar <miroslavkovar@protonmail.com>
Signed-off-by: Patrik Stas <patrik.stas@absa.africa>
997a598 to
b3f2b7e
Compare
Signed-off-by: Miroslav Kovar <miroslavkovar@protonmail.com>
Signed-off-by: Miroslav Kovar <miroslavkovar@protonmail.com>
Signed-off-by: Miroslav Kovar <miroslavkovar@protonmail.com>
|
Successfully verified that the error on wallet opening is not present on iOS device with this build anymore. |
| rmp-serde = "0.13.7" | ||
| base64 = "0.8.0" | ||
| openssl = { version = "0.10.29" } | ||
| openssl = { version = "0.10.35", features = ["vendored"] } |
There was a problem hiding this comment.
I was looking at this and got concerned about the feature description
The vendored copy will not be configured to automatically find the system’s root certificates, but the openssl-probe crate can be used to do that instead.
So I went through actual usage of openssl crate and it turn out it might be an overkill. What's being used is:
use openssl::sha::sha256
use openssl::bn::BigNum;
I somewhat presumed openssl is there because reqwest needs it, but reqwest comes has its own tls dependency https://github.com/seanmonstar/reqwest/blob/master/Cargo.toml
So our openssl usage is not actually ever dealing with certificates, so the quote on top of this comment doesn't matter. I think ultimate solution will be to get rid of openssl dependency.
Perhaps:
- https://github.com/RustCrypto/hashes for Sha256
- https://github.com/rust-num/num-bigint for big integer
But lets do that separately
|
@mirgee I am the original submitter of this PR, so I can't click So please feel free to |
mirgee
left a comment
There was a problem hiding this comment.
Approved on behalf of @Patrik-Stas
Includes new version of libindy with this changes which fixes a bug present on iOS where thread panics on wallet opening.
In order to successfully build for iOS however, we have to use the
vendoredfeature for openssl dependency. This, in turn, breaks compilation for the musl C environment on Alpine. Hence,X86_64_ALPINE_LINUX_MUSL_OPENSSL_NO_VENDORenvironment variable was set as a way to not use thevendoredflag on Alpine. This is a temporary fix, as the plan is to remove the dependency on openssl completely.Signed-off-by: Patrik Stas patrik.stas@absa.africa
Signed-off-by: Miroslav Kovar miroslavkovar@protonmail.com