853 Commits

Author SHA1 Message Date
Roman Mandeleil
bbb9e9e303 Add onHandShakePeer() to EthereumListener 2015-01-16 10:46:28 +02:00
Roman Mandeleil
c89e591d9e Merge pull request #201 from Bitcoinzie/patch-1
Update README.md
2015-01-15 17:37:33 +02:00
Bitcoinzie
3056dcab92 Update README.md
Changed snapshot version number to reflect poc-8 changes
2015-01-14 22:30:21 -08:00
ligi
6f0ca3e635 more typo removal 2015-01-15 00:07:55 +01:00
ligi
15971ed797 fix some typos and do some cleanup 2015-01-14 23:47:29 +01:00
Roman Mandeleil
e56dfacaae Merge remote-tracking branch 'origin/master' 2015-01-14 11:47:58 +02:00
Roman Mandeleil
8112d87b86 Exclude new tests that doesn't pass 2015-01-14 11:47:41 +02:00
Roman Mandeleil
bed4e9f8a8 upgrade to POC-8 2015-01-14 11:42:19 +02:00
ligi
59a5baff81 we want EMPTY_BYTE_ARRAY 2015-01-10 21:37:40 +01:00
ligi
3a8258a07e use the available ZERO_BYTE_ARRAY 2015-01-10 21:05:00 +01:00
ligi
9ab5c21fdd speed improvements and add test-cases 2015-01-10 20:37:51 +01:00
Roman Mandeleil
910a8b9552 Comment gas charge for pre-compiled contracts 2015-01-10 16:20:08 +02:00
Roman Mandeleil
e3b1e3aa1e Polish some. 2015-01-09 18:14:26 +02:00
Roman Mandeleil
b017df080b Implement pre-compiled contract
In order to improve performance of certain VM functionality
 Ethereum introduce plug-in mechanism  called pre-compiled
 contracts.

 Supported functionality:

  ecRecover - (addr: 01) - recover address out of hash, v, r, s - parameters.
  sha256 - (addr: 02) - calculate hash value with sha256 algorithm
  ripempd160 - (addr:03)  - calculate hash value with repimpd algorithm
2015-01-09 16:41:36 +02:00
Roman Mandeleil
620f365205 Fix payment availability: sender.balance >= tx.value + tx.gas 2015-01-08 20:26:24 +02:00
Roman Mandeleil
18ed198750 Return stRecursiveCreate to the testing run 2015-01-08 20:01:42 +02:00
Roman Mandeleil
8bbdc3ae31 Merge remote-tracking branch 'origin/master' 2015-01-08 19:50:05 +02:00
Roman Mandeleil
7590efdb3b Remove cpp snippet 2015-01-08 19:49:12 +02:00
Roman Mandeleil
48b27d38ec Validate JUMPDEST by pre-compile + tweak injection of blockStore by the new interface 2015-01-08 19:48:37 +02:00
Roman Mandeleil
59833f3fd6 Fix BLOCKHASH op new rule
The blockhash retrieved by index on one of the
recent 256 blocks. If the index is out of that
window zero pushed into the stack as a result
2015-01-08 18:55:52 +02:00
Chris Beams
2af33195da
Set VM log level to ERROR for fast test execution 2015-01-07 09:17:12 +01:00
Chris Beams
84b1cef682
Increase stack size during testing
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.
2015-01-07 08:55:49 +01:00
Chris Beams
11e8a55304
Revert "Ignore GitHubStateTest#stSystemOperationsTest"
This reverts commit 52b417947bdbe0cde8ee0358bf197777c34d35fa.
2015-01-07 08:15:19 +01:00
Chris Beams
52b417947b
Ignore GitHubStateTest#stSystemOperationsTest
This test results in a stack overflow.
2015-01-07 06:58:36 +01:00
Roman Mandeleil
d5ff8bcaab Fix VMComplexText.test2 for new JUMPDEST logic 2015-01-06 21:39:20 +02:00
Roman Mandeleil
cf66dc02df Fix JUMPDEST requirements in the VMTest 2015-01-06 21:20:17 +02:00
Roman Mandeleil
0039995aad Merge remote-tracking branch 'origin/master' 2015-01-06 20:53:57 +02:00
Roman Mandeleil
8eadadcd16 Fixed TCK test suite: stSystemOperationsTest.json, included back to the general run. 2015-01-06 20:53:28 +02:00
Roman Mandeleil
c0e2bf2e38 Fix: result empty on no run was executed 2015-01-06 20:47:20 +02:00
Roman Mandeleil
02be38a85d Fix new call level
When the current level is 1024, next CALL/CREATE
will do simple return with zero value pushed to the
 stack
2015-01-06 20:40:05 +02:00
Roman Mandeleil
832c24014d Fix internal call halt on any Exception push zero 2015-01-06 16:42:51 +02:00
Roman Mandeleil
ab258b3fc9 Fix JUMPDEST requred in all cases 2015-01-06 16:41:53 +02:00
Roman Mandeleil
16965b02a2 Log success TCK test 2015-01-06 15:24:35 +02:00
Chris Beams
1c354cb736
Re-enable Bintray upload support
Thanks to @jbaruch for his comments at
https://github.com/ethereum/ethereumj/commit/00aba13#commitcomment-9167542
2015-01-06 14:08:17 +01:00
Chris Beams
00aba13a3d
Remove Bintray upload support for now
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
2015-01-06 11:50:03 +01:00
Chris Beams
04ba6c4ed7
Customize pom for publication to Maven Central 2015-01-06 11:22:12 +01:00
Chris Beams
7452765d62
Upgrade to Gradle propdeps plugin v0.0.7 2015-01-06 11:21:59 +01:00
Chris Beams
f34d1f49dc
Polish changes made in pull request #189
- Organize imports using shared IDEA configuration

 - Format sources, including:
   - Normalize 4-space indentation
   - Wrap at 120 char right margin
   - Remove spaces around method arguments
2015-01-06 09:50:58 +01:00
Roman Mandeleil
02e7c28ffd Merge pull request #189 from d53d4f7ff2cc77b71/tests-2
Add tests for Messages in p2p/eth
2015-01-06 10:35:57 +02:00
Chris Beams
2165bd506e
Avoid transitive dependency on various logging libs
Use Spring's `propdeps` plugin to introduce optional/provided scopes for
gradle dependencies. Mark libraries such as slf4j-log4j12 as optional.
These libraries are required to run a local ethereumj node, but they are
not required in order to compile against ethereumj in a downstream
appliaction. These libraries easily can cause conflicts, for example if
another slf4j-* library (such as slf4j-logback) is on the classpath.
2015-01-05 18:52:34 +01:00
Chris Beams
b977605771
Declare concrete slf4j logging deps as runtime-scoped 2015-01-05 15:12:51 +01:00
Faiz Khan
a2f94729ba Remove usage of toString to test NullPointerException 2015-01-04 03:23:51 -06:00
Faiz Khan
dbb7efadcf Add bounds checks for disconnect message 2015-01-04 03:00:46 -06:00
Faiz Khan
3f788161bc Add tests for disconnect, hello, peers and status messages 2015-01-04 02:56:42 -06:00
Faiz Khan
da24699ed5 Peer test 2015-01-04 02:53:34 -06:00
Faiz Khan
b07b4a816f First test 2015-01-04 02:53:28 -06:00
Chris Beams
6c559e6a65
Remove unused JDK 8 API imports 2015-01-02 07:48:29 +01:00
Marcelo Garbarino
64e0f7335f Add testcase for org.ethereum.vm.LogInfo 2015-01-01 15:39:58 -03:00
Chris Beams
aa7191d4a6
Re-enable publication of coverage reports
Prior to this commit, jacoco coverage report XML files were not actually
being written to disk, meaning that the Gradle coveralls plugin had
nothing to publish to https://coveralls.io/r/ethereum/ethereumj. HTML
reports are now being written as well, for convenient local browsing.
2014-12-30 20:52:25 +01:00
Chris Beams
addbcdeb09
Publish core artifacts continuously via Travis CI
The Travis CI build now publishes ethereumj-core artifacts (classes,
sources and javadoc jars) on every push to master. See updated
ethereumj-core/README.md for details. Note that the `gradle release`
task has been renamed to `gradle publish`.
2014-12-30 20:49:18 +01:00