Milo Davis
762e36abab
Adds sandbox launching script
2017-08-11 13:01:46 +00:00
Milo Davis
299ebe3865
Testing: Tests multiple nodes
2017-08-11 13:01:46 +00:00
Milo Davis
866b316993
Michelson: adds tests for DEFAULT_ACCOUNT
2017-08-08 16:07:47 +00:00
OCamlPro-Iguernlala
fbacfff9e6
P2p: use incremental encoding/decoding
2017-08-08 11:22:05 +02:00
Grégoire Henry
974d4ddd9e
Fix .dockerignore
2017-08-04 18:32:11 +02:00
Milo Davis
69736ec55b
Michelson: updates test suite to use int
and nat
2017-07-27 18:24:08 +02:00
Milo Davis
7bfaf2fe9b
Michelson: removes amount from calling convention
2017-07-25 11:18:43 +02:00
Milo Davis
a663e43f18
Michelson: Add a test suite
2017-07-24 20:29:12 +02:00
Milo Davis
77433a5f15
Michelson: show type_map for programs with type errors
2017-07-22 00:14:40 +02:00
Milo Davis
18765aa8ad
Michelson: adds DEFAULT_ACCOUNT test case
2017-07-21 10:46:07 +02:00
Milo Davis
b52d4a78d9
Michelson: adds -amount flag to run program
2017-07-19 18:13:03 +02:00
Grégoire Henry
2bc63854a8
Shell: Liveness of operations
...
Operations now include a block hash in their header. Such an operation
could only be included in a successor of this block.
Furthermore, when validating a block, the economic protocol now
returns---together with the context---an integer `max_operations_ttl`.
Then, when validating a successor, the shell will fail if it contains
an operation whose header's block hash is not one the
`max_operations_ttl` predecessors of the block.
As a bonus, the shell is now able to detect and forbid replayed
operations. Then, we might decide to remove some replay
detection-mechanism that we previously implemented in the economic
protocol.
2017-06-12 11:07:37 +02:00
Grégoire Henry
8d5155cf32
Proto: return the maximum TTL for operations
2017-06-12 11:07:37 +02:00
Grégoire Henry
4bbc97aeb6
Shell: rework the preapply
RPC
...
It now takes a `proto_header` in parameter, and it returns a full
`shell_header`. This prepares the inclusion of the context's hash in the
`shell_header`.
2017-06-12 11:07:35 +02:00
Grégoire Henry
d06fcebd1f
Proto/Alpha: minor renaming
2017-06-12 11:05:48 +02:00
Grégoire Henry
565654a242
Client: minor renaming
2017-06-12 11:05:48 +02:00
Grégoire Henry
f96ecbf667
Test: inject operation and block atomically
2017-06-12 11:05:46 +02:00
Grégoire Henry
f39eca214a
Shell: remove the on-disk index of operations
...
Let's get serious. The full index of operations is not sustainable in
the production code. We now only keep the index of operations not yet
in the chain (i.e. the mempool/prevalidation). Operations from the
chain are now only accesible through a block. For instance, see the
RPC:
/blocks/<hash>/proto/operations
2017-06-12 11:04:43 +02:00
Grégoire Henry
4995864316
Shell: regroups basic data types in Tezos_data
2017-06-12 11:04:43 +02:00
Grégoire Henry
61eb67cbca
Shell: do not keep tracks of 'invalid_successors'
2017-06-12 11:04:43 +02:00
Guillem Rieu
4de5dc717f
Tests: add voting period kind checks in Test_vote
2017-06-12 09:48:02 +02:00
Grégoire Henry
81b720fee0
Add: tezos-client set delegate ...
2017-06-07 16:38:59 +02:00
Benjamin Canou
90f87bec4a
Alpha: update bootstrap parameters.
2017-06-01 01:53:54 +02:00
arthur.breitman@gmail.com
d2a2052a2e
transfering -> transferring typo fix
2017-05-06 20:53:09 -07:00
Grégoire Henry
729ca9887d
Shell/Protocol: minor renaming
2017-04-17 00:49:49 +02:00
Guillem Rieu
76b9cedcef
Tests: add test for switching unanimously to 'demo' protocol
2017-04-14 20:54:43 +02:00
Alain Mebsout
8777349a19
A few fixes to make things more posix compliant in build/test scripts
2017-04-14 17:41:18 +02:00
OCamlPro-Iguernlala
b5c6f6cb2f
test_p2p_connection: put more deterministic garbled data
2017-04-14 12:57:34 +02:00
OCamlPro-Iguernlala
7f9c77cee8
test/utils: small fix: Data_encoding.Binary.Error has no arguments
2017-04-14 03:42:17 +02:00
Grégoire Henry
42a4e4ecc0
Merge branch 'stream-binary-decoding' into 'master'
...
[data_encoding] add facilities to decode a stream of Mbytes.t incrementally
See merge request !173
2017-04-14 00:08:51 +02:00
Grégoire Henry
b9c1baa454
Makefile: minor dependency fix in test
`
2017-04-13 22:15:33 +02:00
OCamlPro-Iguernlala
7d214a19f7
data_encoding: read streams of Mbytes.t, tests, remove dead code (debug functions), expose a function that checks without reading the data
2017-04-13 18:05:41 +02:00
Grégoire Henry
0f247adea6
Shell: add the protocol level
in the header of block
2017-04-12 18:29:12 +02:00
Grégoire Henry
2b0df39115
Context: simplify the storage of 'test_network'.
...
This prepares the context to the inclusion the hash of the context in
the block header. By "looking" into the resulting context of a block,
we are now know able to determine whether:
- no testnet is currently associated to the branch;
- a testnet must be forked after the block;
- a previously forked testnet is running.
2017-04-12 12:43:34 +02:00
Grégoire Henry
495e887538
RPC: minor improvements in naming consistency
2017-04-12 12:41:35 +02:00
Grégoire Henry
f805507702
Shell: move level
in th shell part of block.
2017-04-12 12:41:32 +02:00
Grégoire Henry
6212af55f1
Proto/Alpha: use uint16
for mining priority.
2017-04-12 12:39:08 +02:00
Grégoire Henry
77d6805664
P2p: remove compilation warning in unit test
2017-04-12 12:39:08 +02:00
Grégoire Henry
e276b0566e
Alpha: minor changes in unit tests
2017-04-12 12:39:08 +02:00
Grégoire Henry
a731a47d3c
Proto: explicit fitness/timestamp in the signature
...
This remove the data fomr the context where they "duplicate" the
block header.
2017-04-12 12:39:04 +02:00
Benjamin Canou
5a21f3c159
Reengineer the PROTOCOL signature to prepare for the multi-step validator.
2017-04-10 23:30:43 +02:00
Grégoire Henry
3d00dcf19f
Shell/P2p: add unit test with "garbled" messages.
2017-04-10 23:14:31 +02:00
Grégoire Henry
e11e9c9ac5
Shell/P2p: Split the unit tests in smaller atom.
...
And use more `Error_monad`...
2017-04-10 23:14:31 +02:00
Cagdas Bozman
c1e2d8eb25
Proto/Alpha: fix endorsement test
2017-04-10 18:31:37 +02:00
Cagdas Bozman
54027a701b
Proto/Alpha: some unit tests for 'endorsement'
2017-04-10 18:31:37 +02:00
Guillem Rieu
08fc0b5f76
Proto/Alpha: some unit tests for 'origination'
2017-04-10 18:31:37 +02:00
Vincent Bernardoff
bb95acfb48
Proto/Alpha: some unit tests for 'transactions'
2017-04-10 18:31:37 +02:00
Grégoire Henry
a6c7f355cc
Test: simplify Makefile
2017-04-10 18:31:37 +02:00
Grégoire Henry
cfb7e35914
Client: a bit of Error_monad
in Hash
2017-04-10 18:31:37 +02:00
Grégoire Henry
ef3180c561
Shell: Smaller Net_id.
2017-04-02 15:40:04 +02:00
Grégoire Henry
ffc8fa0383
RPC: rebind 'complete' for blocks and operations.
2017-04-02 15:33:32 +02:00
Grégoire Henry
545c605f02
Test: dump the content of the node logs.
2017-03-31 17:09:11 +02:00
Grégoire Henry
1879c4359f
Merge remote-tracking branch 'ocp/bugfix-in-data-encoding'
2017-03-31 16:48:07 +02:00
Grégoire Henry
c2bf738079
Merge branch 'merkle'
2017-03-31 16:47:32 +02:00
OCamlPro-Iguernlala
ec96cc53d6
add an echo in ./test/test-basic.sh to say that the log of started node is dumped in ./test/LOG
2017-03-31 10:33:29 +02:00
Grégoire Henry
245fa66140
Shell: Split the operations list out of the (minimal) block header.
...
The minimal header now (classically) contains the root of a Merkle tree,
wrapping a list of lists of operations. Currently, the validator only
accept a single list of operations, but the 3+pass validator will
requires at least two lists.
2017-03-31 01:19:34 +02:00
Grégoire Henry
a6307c40cf
Shell: add unit tests for Merkle tree
2017-03-31 01:19:33 +02:00
OCamlPro-Iguernlala
ee554820c7
add more tests for "floats" in test_data_encoding ( +/- infinity, +/- 0., NaNs)
2017-03-30 11:26:11 +02:00
Benjamin Canou
ed6e91a47d
RPCs: make the result of [/blocks/X] compatible with Alpha's [/helpers/parse/block].
2017-03-28 14:37:26 +02:00
Guillem Rieu
83f2e0dcd3
Client: switch to JSON config file and remove config-file dependency.
2017-03-16 18:49:31 +01:00
Grégoire Henry
826f2ea4ba
P2p: implements peer swapping
2017-03-14 11:56:42 +01:00
Vincent Bernardoff
d845dc9740
Alpha: documentation of RPC wrappers.
2017-03-10 18:33:46 +01:00
Cagdas Bozman
05d210b982
Testsuite: fix error handling
2017-03-07 10:42:08 +01:00
Grégoire Henry
dbbdaa1688
Minor timing fix in the testsuite.
2017-03-03 18:20:38 +01:00
Benjamin Canou
7187f2d879
Proto: classify and document some errors.
2017-03-03 18:20:38 +01:00
Benjamin Canou
015f3edff3
Shell-level commit messages and timestamps.
2017-03-03 18:20:38 +01:00
Grégoire Henry
22e3aee362
Alphanet: remove the secret bootstrap
keys
2017-03-02 16:18:09 +01:00
Grégoire Henry
801d0ca287
Unit testing: fix typo in sandbox parameters.
2017-02-26 02:03:23 +01:00
Grégoire Henry
c277b5b56d
Proto: let genesis
be agnostic on fitness
2017-02-25 18:14:06 +01:00
Grégoire Henry
3c035da25c
Proto: unit testing for the genesis protocol
...
- Let the `sandbox` change the public key
- Adapt `test_basic.ml` and `test_basic.sh`
- Do not duplicate the fitness in the block header
Client:
- allow the `bootstrap` command to lookup keys in the `head` rather than
in `genesis`.
2017-02-25 18:14:06 +01:00
Grégoire Henry
d5d5cc7c09
Proto: rename bootstrap
into alpha
2017-02-25 18:14:05 +01:00
Grégoire Henry
b674c538b2
Shell: refactor the distributed DB.
...
This refactors `src/node/shell/state.ml` in order to trace the source of
blocks and operations. This prepares the node for the three-pass
validator.
In the procces, it adds an in-memory overlay for blocks and operations.
2017-02-25 18:14:05 +01:00
Benjamin Canou
d0e9d0d584
Proto: allow decreasing baking slot durations.
2017-02-25 18:05:17 +01:00
Benjamin Canou
bc16b027c2
Proto: allow origination of two contract with the same properties.
...
fixes #124
2017-02-24 16:24:27 +01:00
Grégoire Henry
bda80bf613
Shell: rename gid
into peer_id
2017-02-24 16:22:56 +01:00
Grégoire Henry
fc53f3b233
Switch to Base58.
...
Base48 was fun but... hell yeah... let's stay standard.
Public encoding of hash:
```
Block: "B..." (len: 51)
Operation: "o..." (len: 51)
Protocol: "P..." (len: 51)
Ed25519: "tz1.." (len: 36)
Contract: "TZ1.." (len: 36)
NetworkdId: "id.." (len: 30)
```
Other internal prefixes (in the RPC):
```
Hash of Michelson's expression: "expr..." (len: 54)
Ed25519 public key: "edpk..." (len: 54)
Ed25519 secret key: "edsk..." (len: 98)
Ed25519 signature: "edsig.." (len: 99)
Hash of a random seed nonce: "nce...." (len: 53)
Random seed: "rng...." (len: 53)
```
2017-02-24 15:44:21 +01:00
Vincent Bernardoff
efc6d285c6
Shell: limit known points table size
...
* Gc events still need to be recorded
2017-02-16 13:23:01 +01:00
Vincent Bernardoff
6d41b3d38c
Shell: Improve the CLI of tezos-node
...
* Use subcommands:
* `tezos_node run`
* `tezos_node config`
* `tezos_node identity`
* Regroup all on-disk data in `--data-dir`
* Split `Node_main` in multiple files.
* Add DNS resolution for `--net-addr` and `--rpc-addr`
* Hardcode `bootstrap.tezos.com` as bootstrap peer(s)
* Add `--no-bootstrap-peers`
* Rename `--expected-connections` -> `--connections`
2017-02-15 15:26:17 +01:00
Grégoire Henry
ec0e7d4d48
Merge branch 'lwt_pipes_limit' into 'master'
...
Lwt_pipe: limit by content size in bytes
See merge request !137
2017-01-24 00:05:07 +01:00
Grégoire Henry
0820744619
Lwt_pipe: minor style issue
2017-01-23 23:59:16 +01:00
Grégoire Henry
854e2f0697
Merge branch 'work-on-script'.
2017-01-23 23:24:16 +01:00
Grégoire Henry
b228904bc7
Node: more CLI argument
2017-01-23 22:15:36 +01:00
Grégoire Henry
5266671c72
Fix POW
2017-01-23 22:01:35 +01:00
Grégoire Henry
5e1eddf681
Shell: Use Error_monad in Data_encoding_ezjsonm
2017-01-23 21:31:30 +01:00
Grégoire Henry
31872eb1b1
Shell: Improve Logging
2017-01-23 21:31:30 +01:00
Grégoire Henry
866e7add2f
Shell: improve Utils
2017-01-23 21:31:30 +01:00
Vincent Bernardoff
1e4d090e2c
Lwt_pipe: limit by content size in bytes
2017-01-23 18:03:00 +01:00
Vincent Bernardoff
ce986c4a9c
Shell: sign Ack message
2017-01-23 09:13:41 +01:00
Benjamin Canou
507c46bbcb
Michelson: get rid of tagged data notation.
2017-01-20 13:25:14 +01:00
Benjamin Canou
26e1adc143
Michelson: rename void into unit.
2017-01-20 13:25:14 +01:00
Grégoire Henry
eee67406a5
CI: some unit tests for the p2p layer
2017-01-19 10:26:45 +01:00
Grégoire Henry
d9fc93a5c0
Shell: implement P2p_{maintenance,discovery}
.
2017-01-19 10:26:45 +01:00
Grégoire Henry
b694a62810
Shell: implement P2p_{connection_pool,welcome}
2017-01-19 10:26:45 +01:00
Grégoire Henry
6d47cb2c8f
Shell: implement P2p_connection
2017-01-19 10:21:21 +01:00
Grégoire Henry
2ed8bf2cfa
Shell: implement P2p_io_scheduler
2017-01-19 10:21:21 +01:00
Vincent Bernardoff
1f7f9b369d
Shell: improve Lwt_pipe
2017-01-19 10:21:21 +01:00
Grégoire Henry
7689021810
CI: less build artifacts
2017-01-02 14:49:56 +01:00
Vincent Bernardoff
224e5d8c73
P2P: Add counters in peer_info
2016-12-06 14:12:18 +01:00
Benjamin Canou
a098d25a55
Client: add a context to command evaluation.
2016-12-03 13:05:02 +01:00
Benjamin Canou
dc64f9b6fb
Webclient: first draft.
2016-12-02 20:06:29 +01:00