-
Notifications
You must be signed in to change notification settings - Fork 983
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
[DO NOT MERGE] Nim-Status: iOS/Android support #10936
Conversation
Jenkins BuildsClick to see older builds (242)
|
f1492d1
to
cec0722
Compare
7a610d8
to
8fe680b
Compare
1051aab
to
3dfaab7
Compare
6577f37
to
cc1bd3e
Compare
1d67939
to
797b108
Compare
nix/status-go/shared/build.nix
Outdated
else if platform == "androideabi" then "arm "else "arm64" | ||
else | ||
if arch == "386" then "amd64" else | ||
if arch == "arm" then "arm" else "arm64"; |
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.
Christ...
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 was thinking more like:
{
goArch =
if isAndroid then (
if arch == "386" then "386" else
if platform == "androideabi" then "arm"
else "arm64"
) else if isIOS then (
if arch == "386" then "amd64" else
if arch == "arm" then "arm"
else "arm64"
) else throw "Uknown Platform!";
}
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.
The if platform == "androideabi" then "arm"
part makes me worried tho. Every other if is checking arch
, but this one is checking platform
. Some weird edge case?
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.
The else "arm64"
is kinda ugly too. I'd prefer a clear case rather than else
.
797b108
to
08e6085
Compare
61% of end-end tests have passed
Failed tests (38)Click to expand
Passed tests (60)Click to expand
|
@siphiuel could you rebase against develop and re-run e2e tests please once the build is ready? (go to projects -> Pipelien for Qa -> Move issue from e2e column to another column and back to e2e will trigger them) https://github.com/status-im/status-react/projects/7 Thank you! |
url = "https://ftp.pcre.org/pub/pcre/pcre-8.44.tar.gz"; | ||
sha256 = "0a3pnhzhd8wipmqq9dcn3phb494hkn47pxqsf8skj3xxyd5gvjmf"; | ||
|
||
}; |
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.
Why can't we use pkgs.pcre.src
?
url = "https://www.openssl.org/source/openssl-1.1.1h.tar.gz"; | ||
sha256 = "5c9ca8774bd7b03e5784f26ae9e9e6d749c9da2438545077e6b3d755a06595d9"; | ||
|
||
}; |
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.
Why can't we use pkgs.openssl.src
?
ISSUE 2 Crash on IOS when tapping "Generate keys" on nightly build from PR branchMade nightly builds from 'feature/nim-status-ios' StatusIm-201109-122725-afdb9d-nightly.ipa_2020_11_9_15_42_49.log ISSUE 3 Can't build IOS release buildBuild: https://ci.status.im/job/status-react/job/combined/job/mobile-ios/8357/console
|
On issue 2 - tried running |
afdb9db
to
7c9c5c8
Compare
@siphiuel |
@siphiuel any updates on this? |
@churik i've updated the |
@siphiuel any updates ? |
@flexsurfer will rebase, resolve conflicts, and retest. This is still relevant. |
Cleanup Refactoring Review fixes Use coreutils inside writeScript Fix androidToolPathPrefix nim-make: initial Common srcRaw; updates to API Updates to ios build; remove GoStruct references in android's JNI file Android fix; update nim-status rev Add openssl PCRE updates Updates Commit Linking fixes Include xcodeWrapper in pod-shell (SQLCipher compilation issue) Disable flipper for ios Add patchShebangs and nim-status build TODO line Use fetchgit, custom createNimbleLink script Use clang sha256 change patchShebangs in nim-status src leaveDotGit,deepClone=false CC=clang in for nim-status make sed clang force clang force clang Test Include pcre.h Debugging Debugging 2 Logout crash fix add [start,stop]LocalNotifications disable androidNDK switch Update sha Add nim_status.nim override Add shim Fix shim Fix Podfile.lock Use exported [setup,tearDown]ForeignThreadGc fns Update nim-status Remove onboarding functions
[nightly,release] builds
545faff
to
283f4d0
Compare
Superseded by #11793. |
Depends on status-im/nim-status#44 (only because it's behind master for now)
Overview
nim-status
is a wrapper aroundstatus-go
. Currentlystatus-go
is transformed into something that can be consumed by Android/iOS with help ofgomobile
(https://github.com/golang/go/wiki/Mobile). In this PR,gomobile
outputs are replaced by 2 libs (static/shared) -libstatus
andlibnim_status
, compiled fromstatus-go
andnim-status
respectively.To that end, 2 new derivations are added to
nix/status-go
-shared
(for status-go builds) andnim-status
(fornim-status
builds).Huge thanks to @jakubgs for hand-holding during Nix travails.