Skip to content

Commit

Permalink
Strip trailing whitespace
Browse files Browse the repository at this point in the history
  • Loading branch information
cbeams committed Dec 26, 2014
1 parent 0827fb5 commit e5fcf5b
Show file tree
Hide file tree
Showing 142 changed files with 1,301 additions and 1,301 deletions.
12 changes: 6 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
[![ScreenShot](http://i.imgur.com/lJw1Tui.jpg)]


# Welcome to ethereumj
# Welcome to ethereumj
[![Gitter](https://badges.gitter.im/Join Chat.svg)](https://gitter.im/ethereum/ethereumj?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
[![Build Status](https://travis-ci.org/ethereum/ethereumj.svg?branch=master)](https://travis-ci.org/ethereum/ethereumj) [![Coverage Status](https://coveralls.io/repos/ethereum/ethereumj/badge.png?branch=master)](https://coveralls.io/r/ethereum/ethereumj?branch=master)
[![Stories in Progress](https://badge.waffle.io/ethereum/ethereumj.png?title=In%20Progress&label=in_progress)](https://waffle.io/ethereum/ethereumj)
Expand All @@ -10,18 +10,18 @@

The ethereumj library is a Java implementation of the Ethereum protocol.

This repository currently contains:
This repository currently contains:
* [core](ethereumj-core): the core library which can be included into your own Java project.
* [studio](ethereumj-studio): a simple graphic interface for Ethereum functionality and set of showcases for core usage.
* [studio](ethereumj-studio): a simple graphic interface for Ethereum functionality and set of showcases for core usage.

For an early peek, have a looki at this [video](https://youtu.be/D5ok7jh7AOg)

# Todo

The Ethereum protocol is currenty heavily in development, thus so is this implementation.
You can find a todo-list right [here](TODO.md) and the [milestone schedule](https://github.com/ethereum/ethereumj/milestones).
You can find a todo-list right [here](TODO.md) and the [milestone schedule](https://github.com/ethereum/ethereumj/milestones).
For questions you can reach us in #ethereumj on Freenode.

# Documentation

To start you can visit [Ethereum.org](https://www.ethereum.org) and if you are looking for more information on the concept, the [ethereum white paper](https://github.com/ethereum/wiki/wiki/%5BEnglish%5D-White-Paper) is a good place to start as it outlines the vision. For the more technical minded, a protocol description can be found in the [yellow paper](http://gavwood.com/Paper.pdf) by Gavin Wood.
Expand All @@ -34,6 +34,6 @@ https://bintray.com/ethereum/maven/org.ethereum/view

For building ethereumj-core or ethereumj-studio look in their own individual README

# License
# License

This software is released under the MIT license, read it [here](LICENSE)
28 changes: 14 additions & 14 deletions TODO.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,26 +4,26 @@
----------------

- [ ] **GUI screen** a screen that will hold table with full state representation
- [ ] **SerpentCompiler** compile create(gas, mem_start, import("examples/mul2.se"))
- [ ] **SerpentCompiler** compile create(gas, mem_start, import("examples/mul2.se"))
https://github.com/ethereum/wiki/wiki/Serpent
- [ ] **SerpentCompiler** compile return(array) correct
- [ ] **ProgramPlayDialog** support internal calls
- [ ] **Performance:** BigInteger math change for constant arrays implementation
- [ ] **Performance:** BigInteger math change for constant arrays implementation
economy for memory allocation
- [ ] **Command Line:** add the headless run option
- [ ] **SerpentCompiler** Serpent new syntax:
(@> @< @/ @%) - unsigned operations
> < / % - default are all signed operations
+= -= *= /= %= @/= @%= - short form operations
- [ ] **Command Line:** add the headless run option
- [ ] **SerpentCompiler** Serpent new syntax:
(@> @< @/ @%) - unsigned operations
> < / % - default are all signed operations
+= -= *= /= %= @/= @%= - short form operations
share - code section
- [ ] **LLL_to_ASM compiler** list style language to EVM assembly compiler:

- [ ] **LLL_to_ASM compiler** list style language to EVM assembly compiler:
- [ ] **Use home-directory** Create .ethereumj in home-directory for blockchain, state & details database. Make configurable in system.properties so developer can choose user.dir without the creation of .ethereumj directory.

##### UnitTest:
##### UnitTest:
----------------

- [ ] **VM complex:** CREATE testing
- [ ] **VM complex:** CREATE testing
- [ ] **VM complex:** SUICIDE testing
- [ ] **SerpentCompiler** compile return(array) correct
- [ ] **WorldManager** apply transactions
Expand All @@ -36,14 +36,14 @@ share - code section
- [X] ** Block Queue ** separate net layer and block processing layer, net layer should continue get
blocks in time the vm layer process them (not stuck for it)
- [X] **Build:** extract core module and studio application
- [x] **VM execution:** support CALL op
- [x] **VM execution:** support CALL op with in/out data
- [x] **VM execution:** support CALL op
- [x] **VM execution:** support CALL op with in/out data
- [x] **VM execution:** support CREATE op
- [x] **SerpentCompiler** compile create(gas, mem_start, mem_size)

- [x] **VM complex:** CALL testing for in arrays
- [x] **VM complex:** CALL testing for out result
- [x] **State management** trie for storage hash calculation
- [x] **State management** trie for storage hash calculation
and update hash into AccountState
- [x] **VM execution:** SUICIDE op adjust
- [x] **Testing by JSON files:** follow cpp client performs test case by getting json file contains the test describe
20 changes: 10 additions & 10 deletions ethereumj-core/README.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@

The core library API for Ethereum project can be included
into any other Java/Scala project by simple maven
script include:
into any other Java/Scala project by simple maven
script include:

```
<dependency>
Expand All @@ -13,20 +13,20 @@ script include:
```


EthereumJ release repository can be found here:
EthereumJ release repository can be found here:
* https://bintray.com/ethereum/maven/org.ethereum/view


The showcase for ethereumj-core usage can be found in [ethereumj-studio](../ethereumj-studio)

###### :small_blue_diamond: Build instructions (maven)
1. build_1: [no test run] , [released to local repository] : ~> ` mvn clean install -Dmaven.test.skip=true `
2. build_2: [include test run] , [released to local repository] : ~> ` mvn clean install `
1. build_1: [no test run] , [released to local repository] : ~> ` mvn clean install -Dmaven.test.skip=true `
2. build_2: [include test run] , [released to local repository] : ~> ` mvn clean install `

###### :small_blue_diamond: release instructions (ant) (!) credential required
1. ` mvn install ` - which release the lib to a local repositroy
2. after the release - ` ant -f bintray-publish-version.xml `







2 changes: 1 addition & 1 deletion ethereumj-core/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -446,5 +446,5 @@
</plugins>
</pluginManagement>
</build>

</project>
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
/**
* Utility class to retrieve property values from the system.properties files
*
* @author Roman Mandeleil
* @author Roman Mandeleil
* Created on: 22/05/2014 19:22
*/
public class SystemProperties {
Expand Down Expand Up @@ -46,7 +46,7 @@ public class SystemProperties {
private static Boolean DEFAULT_VM_TRACE = false;
private static String DEFAULT_VM_TRACE_DIR = "dmp";
private static int DEFAULT_PEER_LISTEN_PORT = 30303;

/* Testing */
private static Boolean DEFAULT_VMTEST_LOAD_LOCAL = false;

Expand Down Expand Up @@ -281,17 +281,17 @@ public void print() {
logger.info("Key: " + key + ", Value: " + value);
}
}

/*
*
*
* Testing
*
*
*/
public boolean vmTestLoadLocal() {
if (prop.isEmpty() || !prop.containsKey("GitHubTests.VMTest.loadLocal")) return DEFAULT_VMTEST_LOAD_LOCAL;
return Boolean.parseBoolean(prop.getProperty("GitHubTests.VMTest.loadLocal"));
}

public static void main(String args[]) {
SystemProperties systemProperties = new SystemProperties();
systemProperties.print();
Expand Down
40 changes: 20 additions & 20 deletions ethereumj-core/src/main/java/org/ethereum/core/AccountState.java
Original file line number Diff line number Diff line change
Expand Up @@ -12,32 +12,32 @@
public class AccountState {

private byte[] rlpEncoded;

/* A value equal to the number of transactions sent
* from this address, or, in the case of contract accounts,
* from this address, or, in the case of contract accounts,
* the number of contract-creations made by this account */
private BigInteger nonce;

/* A scalar value equal to the number of Wei owned by this address */
private BigInteger balance;
/* A 256-bit hash of the root node of a trie structure
* that encodes the storage contents of the contract,
* itself a simple mapping between byte arrays of size 32.
* The hash is formally denoted σ[a] s .
*
* Since I typically wish to refer not to the trie’s root hash

/* A 256-bit hash of the root node of a trie structure
* that encodes the storage contents of the contract,
* itself a simple mapping between byte arrays of size 32.
* The hash is formally denoted σ[a] s .
*
* Since I typically wish to refer not to the trie’s root hash
* but to the underlying set of key/value pairs stored within,
* I define a convenient equivalence TRIE (σ[a] s ) ≡ σ[a] s .
* It shall be understood that σ[a] s is not a ‘physical’ member
* I define a convenient equivalence TRIE (σ[a] s ) ≡ σ[a] s .
* It shall be understood that σ[a] s is not a ‘physical’ member
* of the account and does not contribute to its later serialisation */
private byte[] stateRoot = EMPTY_TRIE_HASH;
/* The hash of the EVM code of this contract—this is the code
* that gets executed should this address receive a message call;
* it is immutable and thus, unlike all other fields, cannot be changed
* after construction. All such code fragments are contained in
* the state database under their corresponding hashes for later

/* The hash of the EVM code of this contract—this is the code
* that gets executed should this address receive a message call;
* it is immutable and thus, unlike all other fields, cannot be changed
* after construction. All such code fragments are contained in
* the state database under their corresponding hashes for later
* retrieval */
private byte[] codeHash = EMPTY_DATA_HASH;

Expand All @@ -53,7 +53,7 @@ public AccountState(BigInteger nonce, BigInteger balance) {
this.nonce = nonce;
this.balance = balance;
}

public AccountState(byte[] rlpData) {
this.rlpEncoded = rlpData;

Expand Down Expand Up @@ -115,7 +115,7 @@ public void subFromBalance(BigInteger value) {
this.balance = balance.subtract(value);
setDirty(true);
}

public byte[] getEncoded() {
if(rlpEncoded == null) {
byte[] nonce = RLP.encodeBigInteger(this.nonce);
Expand Down
Loading

0 comments on commit e5fcf5b

Please sign in to comment.