- cleaned test app;
- moved android specific code to its own library (ethereum-core-android);
- moved ethereum-core from android library build back to java build;
Replaced spring framework with robospring.
Changed ethereumj-core build to android-library.
Disabled BlockStoreImpl until we make it android compatible( use InMemoryBlockstore ).
Disabled antlr4 dependencies.
Commented some dependencies(needs testing before enabling).
Excluded dom4j and org.jboss.spec.javax.transaction dependencies (problems with android).
Change to netty 4.0.18.Final (this seems to work with android; latest 4.1 and 5.0 presented some problems; needs additional testing).
The sources affected by this commit have drifted in style since earlier
polishing commits such as f34d1f4 and a155518. The shared IDEA style
configuration file can help avoid this drift in the future. Simply run
Code->Reformat Code at the project level prior to committing. Note that
this code style configuration is not perfect, and not every change it
makes should be checked in. The ideal is to simply always write code that
conforms to the style conventions, but the automated settings are there
as a helping hand when necessary.
The churn caused by drifting style and the commits that fix it damage the
utility of git over time. Reviewing changes, analyzing history, surgically
reverting commits, and many other use cases with git simply do not work as
well when styles get mixed and fixed. Let's work toward a common style.
This is in order to accommodate GitHubStateTest#stSystemOperationsTest,
which tests Ethereum's rules around maximum call stack depth, and thus
requires increasing Java's own defaults.
If this option is not set, this test results in a
StackOverflowException. Note that the setting is applied to Gradle's
`test` closure as opposed to a the global `JAVA_OPTS` environment
variable, because Gradle spawns a new process for executing tests.
There is a known issue with Gradle's new `maven-publish` plugin that
causes all dependencies in the published pom to runtime-scoped [1]. This
causes conflicts with our use of Spring's `propdeps` Gradle plugin that
introduces optional and provided scopes.
This commit drops down to using Gradle's older, orginal `maven` plugin,
and JFrog's old-style `artifactory-publish` plugin in order to preserve
propdeps support.
This means removing JFrog's `bintray` plugin, as it appears to depend on
the `maven-publish` plugin. For the moment, ethereumj only really needs
to publish snapshots, and this is still supported. This is a stopgap
measure; it will be necessary to deal with getting uploads to
Bintray/JCenter working again once we're ready for a non-snapshot
release, but this can be dealt with later.
[1]: http://forums.gradle.org/gradle/topics/maven_publish_plugin_generated_pom_making_dependency_scope_runtime