Commit Graph

992 Commits

Author SHA1 Message Date
Grégoire Henry
6d900e3e52 Alpha: remove index of public keys
For delegate keys, we now use the revealed key of the associated
delegate contract.
2018-02-28 14:59:01 +01:00
Grégoire Henry
92f5ad6212 Alpha: forbid delegation to "unregistred delegate".
A "registred delegate" is a delegate that previously revealed its
public key and that registred itself as delegate of its own implicit
contract.

An implicit contract can only be delegated to itself ; it is then
considered as a "delegate contract". A delegate contract cannot be
deleted.
2018-02-28 14:59:01 +01:00
Grégoire Henry
38f46d832a Alpha/client: add a command for registering as delegate 2018-02-28 14:59:01 +01:00
Grégoire Henry
3a057ddad1 Alpha/client: add command "reveal key for <contract>" 2018-02-28 14:48:47 +01:00
Grégoire Henry
86561363b2 Alpha: explicit operation for key revelation 2018-02-28 14:48:47 +01:00
Grégoire Henry
fc2cd7ce5c Alpha: smaller endorsement operations
We don't include the delegate pkh in the operation anymore, and we
allow to group multiple endorsements in the same operations.
2018-02-28 14:48:47 +01:00
Grégoire Henry
a875a5f2e9 Alpha: ignore delegate with unrevealed keys when freezing rolls 2018-02-28 14:48:47 +01:00
Grégoire Henry
c78dd51f3d Alpha: rename "default contract" into "implicit contract" 2018-02-28 14:48:47 +01:00
Grégoire Henry
16758a5c74 Alpha: remove some alphanet specifics 2018-02-28 14:48:47 +01:00
Grégoire Henry
c125f822f5 Alpha: update storage fees policy.
Instead of having a minimal amount for contracts, we now burn
token when increasing the size of a contract storage.
2018-02-28 14:48:47 +01:00
Grégoire Henry
892acb0c72 Alpha: Minor style issue 2018-02-28 14:48:47 +01:00
Pietro Abate
7fcc8fa7f9 Alpha: Minor refactoring to may_start_new_cycle 2018-02-28 14:48:47 +01:00
Grégoire Henry
59d69c8fb1 Test: fix sandboxed scripts. 2018-02-28 14:48:47 +01:00
Benjamin Canou
40ea190364 Client: do not display usage on all errors 2018-02-28 12:14:21 +01:00
Benjamin Canou
8eee1c7a9c Node: cleanup logging of shell workers 2018-02-26 16:08:04 +01:00
Benjamin Canou
40a26759fc Node: fix error handling in block validator 2018-02-26 16:08:04 +01:00
bruno
f600fc57d4 Shell: improve pp for block locator 2018-02-26 15:52:36 +01:00
bruno
f5e3d99e24 Shell services: harmonise errors IDs 2018-02-26 15:52:36 +01:00
bruno
1171340a9f Shell: move shell errors into shell services
Allows the client to display shell errors properly.
Also adds some missing registrations, documentation and comments.
2018-02-26 15:52:36 +01:00
Marco Stronati
154f43d0bf Proto_alpha: removed empty mli in tests 2018-02-23 15:09:46 +00:00
Marco Stronati
54f0e21373 Proto_alpha: added test for raw_context rpc call 2018-02-23 15:09:45 +00:00
Marco Stronati
ce93c266e5 Client: added bash test for raw_context rpc call 2018-02-23 15:09:45 +00:00
Marco Stronati
d1c1ced970 Shell: added rpc to inspect context of a block
Added a block_service and corresponding handler in the node to perform
queries of the form '/blocks/<id>/raw_context/<path>?depth=<n>'
returning the sub-tree corresponding to <path> inside the context of
block <id>. The parameter <depth> controls the size of the tree,
default is 1.
2018-02-23 15:09:44 +00:00
Grégoire Henry
0a10b97e33 Client: fix query parameters handling in rpc call 2018-02-23 15:09:44 +00:00
Marco Stronati
f9ffb21e74 Node: removed duplicated export. 2018-02-23 15:09:43 +00:00
Marco Stronati
c3967e7bc0 RPC_encoding: fixed missing case in path encoding 2018-02-23 15:09:43 +00:00
Pierre Chambart
c92f370930 Add check of snapshot availability 2018-02-22 13:29:01 -05:00
Pierre Chambart
cd30ff95e7 Free roll freeze 2018-02-22 13:29:01 -05:00
Pierre Chambart
3b4490129b Snapshotable storage 2018-02-22 13:29:01 -05:00
Pierre Chambart
3caa5c2260 Add copy to the proto raw_context 2018-02-22 13:24:51 -05:00
Pierre Chambart
1a94bfd0e9 Add copy to the storage 2018-02-22 13:24:51 -05:00
Grégoire Henry
84d8b46662 Jbuilder: fix concurrency issue 2018-02-22 07:13:51 +01:00
Pierre Chambart
d18cc74ab4 Proto environment: clean Array 2018-02-22 05:36:57 +01:00
Pierre Chambart
d3cb77575d Proto environment: Remove Buffer 2018-02-22 05:36:57 +01:00
Pierre Chambart
35424af049 Proto environment: Remove Bytes 2018-02-22 05:36:57 +01:00
Pierre Chambart
78bc80e70c Proto environment: Get rid of Lwt_sequence 2018-02-22 05:36:57 +01:00
Pierre Chambart
f9feec825b Proto environment: A bit more cleaning of Format 2018-02-22 05:36:57 +01:00
Pierre Chambart
81a548829f Proto environment: Remove deprecated format functions 2018-02-22 05:36:57 +01:00
Pierre Chambart
590ddb750f Change compiler's requested version 2018-02-22 05:36:57 +01:00
Pietro
b5f9e2479f Client: fix unregistered error when there is a node already running 2018-02-21 23:40:28 +01:00
Vincent Botbol
b78d7bdaee Repair: fix sandbox initialization script 2018-02-21 18:34:55 +01:00
Pietro
79f7cf3943 Node: Add docstrings to Data encodings for node config parameters 2018-02-21 10:59:12 +00:00
Benjamin Canou
8a1f4acfcd Remove dangling file 2018-02-20 22:40:41 +00:00
Grégoire Henry
f999524887 Proto/env: add missing type equalities 2018-02-20 18:29:56 +01:00
Pietro
fa0175263f Node: Add bootstrap_threshold to the client config cli 2018-02-20 10:40:18 +00:00
Pietro
e7bb484ead Node: print config file options in manpage 2018-02-20 11:31:15 +01:00
Grégoire Henry
697b291782 Merge `tezos-protocol-environment-{sigs,client} 2018-02-18 17:11:16 +00:00
Grégoire Henry
0e79a65158 Shell: rename Block_header.proto/data into protocol_data 2018-02-18 17:11:13 +00:00
Milo Davis
67b3338907 Client: update typecheck program flags and michelson mode 2018-02-17 20:42:03 -05:00
Benjamin Canou
bb0fa86d91 Client: rename client context classes for clarity 2018-02-16 18:12:29 +01:00
Vincent Bernardoff
54e96092b4 Client: add encrypted signature scheme 2018-02-16 18:12:29 +01:00
Benjamin Canou
67019246e9 Client: add method prompt to context and cleanup Unix context 2018-02-16 11:08:45 +01:00
Vincent Bernardoff
dfeb96842a Crypto: add Secretbox 2018-02-16 11:08:45 +01:00
Vincent Bernardoff
28adbb5814 Utils: add getpass 2018-02-16 11:08:45 +01:00
Grégoire Henry
6fa1283240 Shell: Rename net_id into chain_id 2018-02-16 02:57:25 +01:00
Benjamin Canou
e2be3360a9 Client: split client-alpha into lib and commands and extract the baker 2018-02-15 22:54:39 +01:00
Benjamin Canou
a55a60c59b Client: proper error on unknown global flag 2018-02-15 19:59:50 +01:00
Benjamin Canou
a1984ee090 Client: fix minor display glitches 2018-02-15 19:59:50 +01:00
Benjamin Canou
dd1b200306 Client: split client-base into client-base and client-commands 2018-02-15 19:59:50 +01:00
Benjamin Canou
7e6a4a5333 Client: minor refactoring 2018-02-15 18:21:18 +01:00
Benjamin Canou
c66f9b7733 Remove dangling jbuild file 2018-02-15 18:21:18 +01:00
Benjamin Canou
345bbc715d Client: move protocol injection commands to the admin client 2018-02-15 18:21:18 +01:00
Benjamin Canou
bacb55800d Client: split Client_commands into Client_commands and Client_context 2018-02-15 18:21:18 +01:00
Benjamin Canou
cafcaf925b Client: cleanup admin commands 2018-02-15 18:21:18 +01:00
Benjamin Canou
a14616517e Client: split client-base modules into functions / commands 2018-02-15 18:21:18 +01:00
Benjamin Canou
b3066d6a24 Client: remove Unix dependencies from client-base and client-alpha 2018-02-15 18:21:15 +01:00
Benjamin Canou
d983f601a6 Client: add --long and -s(hort) options 2018-02-15 18:20:45 +01:00
Benjamin Canou
3729e4f3ce Client: restore alias autocompletion 2018-02-15 18:20:45 +01:00
Benjamin Canou
42566e9dcd Client: move Unix out of Cli_entries and a bit of output cleanup 2018-02-15 18:20:42 +01:00
Benjamin Canou
2c2f0a1818 Cli_entries: export formatter setup functions 2018-02-15 18:19:17 +01:00
Benjamin Canou
a830c29185 Cli_entries: more docstrings 2018-02-15 18:19:17 +01:00
Vincent Bernardoff
62f436eda9 Base: use Re_str instead of non-thread-safe library Str 2018-02-15 18:19:17 +01:00
bruno
227232e6c7 Shell: delete duplicated functor 2018-02-15 17:38:19 +01:00
Vincent Bernardoff
f8ded9ca28 Comparable: add Make 2018-02-15 17:36:42 +01:00
Grégoire Henry
322fc1e353 RPC: move p2p services registration in tezos-p2p 2018-02-15 00:29:15 +01:00
Pietro
c67e6d4b04 Client/test: Add shell script to test protocol injection 2018-02-14 11:48:33 +01:00
Pietro
4d9f440aae Fix protocol injection
- Rename Tezos_protocol_compiler_native__Registerer
- Pass module without extension to the compiler
2018-02-13 15:02:32 +01:00
Grégoire Henry
515765926f Shell/test: minor fix in Test_locator 2018-02-13 13:25:49 +01:00
bruno
4fa11bdf28 Error_monad: improve error message for unrecognized errors 2018-02-13 13:24:54 +01:00
Grégoire Henry
77bd0af3d1 Shell/test: add option to not enforce context hash in block header 2018-02-12 16:59:59 +01:00
Grégoire Henry
7643fa9b15 Alpha: split Services/Services_registration and Client_proto_rpcs 2018-02-12 16:56:59 +01:00
Grégoire Henry
e4cde4c196 Client: introduce an alternative context alpha's commands 2018-02-12 16:56:59 +01:00
Grégoire Henry
d539072f1b Proto/env: export RPC_context 2018-02-12 16:56:59 +01:00
Grégoire Henry
4a1da9407e Client/test: minor code simplification 2018-02-12 16:56:59 +01:00
Grégoire Henry
3b95f77225 Alpha: split Tezos_hash multiple source files 2018-02-12 16:56:59 +01:00
Grégoire Henry
5fff7b3c1b Alpha: rename Tezos_context -> Alpha_context 2018-02-12 16:56:59 +01:00
Grégoire Henry
6a5a235d42 Client refactor: Proto_alpha.Environment -> Alpha_environment 2018-02-12 16:56:59 +01:00
Grégoire Henry
91143452e3 Proto/env: allow some Lwt in the construction of rpc_context 2018-02-12 16:54:08 +01:00
Grégoire Henry
82530eeb29 Proto/env: export *_hash.zero 2018-02-12 16:54:08 +01:00
Grégoire Henry
2c90308caf Client refactor: Client_proto_rpcs.block -> Block_services.block 2018-02-12 16:54:08 +01:00
Grégoire Henry
83307c6de0 Client: more open #full_context 2018-02-12 16:54:08 +01:00
Grégoire Henry
29e1735115 Client: add Cli_entries.map_command 2018-02-12 16:54:08 +01:00
Grégoire Henry
0bd31b0c38 Client refactor: remove last bits of lib_client_base/client_rpcs.ml
Split between `lib_rpc_http/RPC_client` and
`lib_shell_services/Block_services`.
2018-02-12 16:54:08 +01:00
Grégoire Henry
db1f134e45 Client refactor: use the error_monad for all RPC services (protocol) 2018-02-12 16:54:08 +01:00
Grégoire Henry
66c2a60530 Client refactor: use the error_monad for all RPC services 2018-02-12 16:54:08 +01:00
Grégoire Henry
a70a0788d3 Test: quick and dirty port to alcotest 2018-02-12 02:09:00 +01:00
Grégoire Henry
24fe0cc02c opam: fix package description 2018-02-11 20:03:52 +01:00
Grégoire Henry
4d69404049 Proto/env: move signature from Updater to Protocol_environment 2018-02-11 19:45:40 +01:00
Grégoire Henry
c9822abab7 Resto: minor simplification (remove RPC_service.map) 2018-02-11 19:45:40 +01:00
Grégoire Henry
0f0ec6ab7a Jbuilder: fix dependencies in the tezos-compiler hack 2018-02-11 19:17:39 +01:00
Grégoire Henry
d417a679e6 Alpha/test: fix symbolic link 2018-02-11 19:17:38 +01:00
Grégoire Henry
f6b55fa46d Test: fix manual execution of ./test-basic.sh 2018-02-11 19:17:38 +01:00
Grégoire Henry
0e675c2d16 Client refactor: add calling function in Worker_services 2018-02-08 17:23:30 +01:00
Grégoire Henry
1858bdd852 Client refactor: Move Client_node_rpcs into Shell_services 2018-02-08 17:23:30 +01:00
Grégoire Henry
21789be756 Client refactor: Move Client_node_rpcs.Protocols into Protocols_services 2018-02-08 17:23:30 +01:00
Grégoire Henry
37e65d93e7 Client refactor: Move Client_node_rpcs.Network into P2p_services 2018-02-08 17:23:30 +01:00
Grégoire Henry
02c2035e93 Client refactor: Move Client_node_rpcs.Block into Block_services 2018-02-08 17:23:30 +01:00
Grégoire Henry
db500b5ebd RPC_service: hide the 'error type parameter 2018-02-08 17:23:30 +01:00
Grégoire Henry
5c2ba214f0 Client refactor: Move handling of unix error from Error_monad to stdlib-unix 2018-02-08 17:23:30 +01:00
Grégoire Henry
41d30777a6 Client refactor: remove Utils.read_file... 2018-02-08 17:23:30 +01:00
Grégoire Henry
1f0c10bc6f Client refactor: Rename stdlib-lwt into stdlib-unix 2018-02-08 17:23:30 +01:00
Grégoire Henry
484b5b5b08 Client refactor: move stdlib_lwt out of base 2018-02-08 17:23:30 +01:00
Grégoire Henry
84d8ae9222 Client refactor: Move Data_encoding_ezjsonm.read_file into Lwt_utils_unix 2018-02-08 17:23:30 +01:00
Grégoire Henry
24c6f4ea98 Client refactor: Move Lwt_utils_unix.protect into Error_monad 2018-02-08 17:23:30 +01:00
Grégoire Henry
7dc52dcf10 Client refactor: Move Lwt_Exit into base 2018-02-08 17:23:30 +01:00
Grégoire Henry
27ae0591b1 Client refactor: Move Cli_entries into base 2018-02-08 17:23:30 +01:00
Grégoire Henry
8c58d7a610 Client refactor: Move non-unix part of Data_Encoding_Ezjsonm into Data_Encoding.Json 2018-02-08 17:23:30 +01:00
Grégoire Henry
c55181273c Client refactor: Move non-unix depend modules of stdlib-lwt into stdlib 2018-02-08 17:23:29 +01:00
Grégoire Henry
154b932713 Client refactor: Remove usage of Lwt_unix from Lwt_dropbox 2018-02-08 17:23:29 +01:00
Grégoire Henry
8f7f205031 Client refactor: Remove usage of Lwt_unix from Lwt_pipe 2018-02-08 17:23:29 +01:00
Grégoire Henry
7a3277e625 Client refactor: Move part of Logging into Logging_unix 2018-02-08 17:23:29 +01:00
Grégoire Henry
f61eed1a67 Client refactor: move part of Lwt_utils in Lwt_utils_unix 2018-02-08 17:23:29 +01:00
Grégoire Henry
f22b3576d2 Client refactor: simpler dependencies in tezos-crypto 2018-02-08 17:23:29 +01:00
Grégoire Henry
2f295a3af8 P2p: less types in lib_base
Let's only have types required for the RPCs.
2018-02-08 17:23:29 +01:00
Marco Stronati
67ac4d8f5c Protocol: change external to val in zarith protocol env 2018-02-08 15:28:32 +00:00
Marco Stronati
3ca9a081f9 Locator: added extended test with benchmark 2018-02-08 15:18:11 +00:00
Marco Stronati
d05dceb0b0 State: export predecessor_n 2018-02-08 15:18:10 +00:00
Marco Stronati
f8e69ac8f5 Locator: added test for size 0 and size larger than chain 2018-02-08 15:18:09 +00:00
Marco Stronati
0890034575 State: removed old linear predecessor 2018-02-08 15:18:09 +00:00
Marco Stronati
f62ce16e5c Locator: rewrote compute to use efficient predecessor from state 2018-02-08 15:18:09 +00:00
Marco Stronati
95a4ede273 State: added function to get predecessor at any distance 2018-02-08 15:18:08 +00:00
Marco Stronati
738310df62 State: added a function to populate the predecessors storage 2018-02-08 15:18:08 +00:00
Marco Stronati
eaf2103967 Storage: added a dedicated store for predecessors under /block/ 2018-02-08 15:18:08 +00:00
Benjamin Canou
75f4946072 Alpha: remove unused function 2018-02-07 12:24:01 +01:00
Grégoire Henry
acffadafae Jbuilder: fix warning 2018-02-07 11:16:39 +01:00
Vincent Bernardoff
e1d1292c09 Crypto: drop libsodium
We now use simpler OCaml bindings much easier to review.
2018-02-07 11:16:39 +01:00
Benjamin Canou
8bec8b7b9c Michelson: add isolate test for big maps 2018-02-06 17:04:49 +01:00
Benjamin Canou
5ae24aa7a3 Scripts: repair tezos-autocomplete, and make it work with emacs and zsh 2018-02-06 17:04:49 +01:00
Benjamin Canou
0352278621 Emacs: repair Michelson parsing error reporting 2018-02-06 17:04:49 +01:00
Milo Davis
79472c727a Michelson: introducing big maps, limited edition
Quick and dirty (yet safe, of course) implementation of lazily
  deserialized maps for storing large collections of indexed data.

  Only one big_map is allowed, as the left component of the toplevel
  storage pair.

  Review and bugfixes: Benjamin Canou <benjamin@canou.fr>
2018-02-06 17:00:54 +01:00
Benjamin Canou
3d0ec5deb4 Michelson: remove instruction MAP on sets 2018-02-06 16:32:30 +01:00
Grégoire Henry
575e367026 Update copyright notice (2018) 2018-02-05 23:34:05 +01:00
Grégoire Henry
e28219ad60 Opam: update to jbuilder.1.0+beta17 2018-02-05 23:34:05 +01:00
Grégoire Henry
c4c375dfc2 Proto_alpha/test: module renaming 2018-02-05 23:34:05 +01:00
Grégoire Henry
c6bf7d78b6 Proto_alpha/test: split tests. 2018-02-05 23:34:05 +01:00
Grégoire Henry
7929027793 Proto/test: do not depend on shell
For the test suite we only use the in-memory context.
2018-02-05 23:34:05 +01:00
Grégoire Henry
a6ab12e701 Context: add an alternative in-memory only implementation 2018-02-05 23:34:05 +01:00
Grégoire Henry
971c3c4b21 Refactor: move Registred_protocol from State to Tezos_updater 2018-02-05 23:34:05 +01:00
Grégoire Henry
2498da2815 Protocol_environment: more sharing between node and client 2018-02-05 23:34:05 +01:00
Grégoire Henry
dffa65f648 Test: add test dependencies into *.opam and fix .gitlab-ci.yml 2018-02-05 23:34:05 +01:00