Added instructions for installing Rust with Homebrew, which simplifies setup for many macOS developers.
Add x86_64 target, as the SDK can fail to build out of the box without this option.
Fix instructions for compiling the SDK versus compiling the sample application
The Android Gradle Plugin can automatically install Android SDKs, which can be helpful when new developers want to try checking out and running the project.
The SDK was using Gradle 6.8 and has been updated to Gradle 6.9. Gradle 7.0 appears to be incompatible with the Rust plugin is being used. Although the application was using Gradle 6.8 previously, the wrapper files hadn't been updated since Gradle 4.6. This commit also corrects that issue.
The sample application is upgraded to Gradle 7.2.
Rather than constantly uncommenting this line locally and rebuilding the SDK, allow a wallet to just turn logging on since it still takes a lot of hoops to even get a log to show up (a dev must add the log dependency to librustzcash, clone all the repos and add logs).
This is temporary PoC logic to not constantly look for UTXOs on a lightwalletd instance that does not seem to support t-addresses. There are better ways to handle this but for now we just want to see if the wallet will be a good citizen to servers without UTXO support.
This allows a wallet to subscribe to transactions right away and then eventually get notified when new transactions are found. Although that is not the preferred way to use the synchronizer, we can support it without a lot of effort or compromise.
Previously, it made it seem like the developer needed to call "prepare." And that was the case but now it's more common to trigger this error by accessing transactions before the synchronizer has been started.
Added a priority to the twig module so that it is easy to exclude chatty logs, which is helpful for third party builds. The default logs are now a lot cleaner and more concise.
This is a fairly frequent crash that occurs when devices return from the background and attempt to reuse a stale channel. In that situation, shutdown the stale channel and rebuild a new one.