Benjamin Canou
f86438c56a
Client: better verbosity levels in help pages
2018-01-31 14:51:54 +00:00
Benjamin Canou
2178a6adee
Client: cleanup / homogeneize command docs
2018-01-31 14:51:54 +00:00
Benjamin Canou
02bc0533fa
Client: add placeholders for arguments in help screens
2018-01-31 14:51:53 +00:00
Benjamin Canou
3955b6a61d
Client: add colors to client help screens
2018-01-31 14:51:52 +00:00
Grégoire Henry
de80f0150b
Compiler: allow bytecode compilation
2018-01-31 14:45:32 +00:00
Milo Davis
d1b4230962
Michelson: export and printing for Duplicate_field error
2018-01-31 14:06:35 +01:00
Milo Davis
695b23bd92
Michelson: export and printing for Type_too_large error
2018-01-31 11:25:50 +00:00
Grégoire Henry
8dcc5cefb5
jbuild: fix installation of tezos-protocol-alpha
2018-01-30 14:55:04 +01:00
Grégoire Henry
4b142184fa
opam: fix tezos-client-base
dependencies
2018-01-30 12:23:38 +01:00
Grégoire Henry
657e214e83
Refactor: rename tezos-client-environment
into tezos-protocol-environment-client
2018-01-30 11:54:57 +01:00
Grégoire Henry
ca29c92442
Refactor: move tezos-micheline
below tezos-base
2018-01-30 11:47:57 +01:00
Grégoire Henry
f2de3ffa3e
Proto_sigs: split the deprecated module Hash
2018-01-30 11:25:52 +01:00
Grégoire Henry
04465e3ac6
Proto_sigs: split the deprecated module Tezos_data
2018-01-30 11:25:46 +01:00
Grégoire Henry
70a4fbac3a
Refactor: rename package tezos-embedded-client-*
-> tezos-client-*
2018-01-30 10:13:40 +01:00
Grégoire Henry
fda8b4ee5f
Refactor: rename prota_alpha/lib_proto
2018-01-30 10:13:40 +01:00
Grégoire Henry
c75756bd6d
Refactor: introduce lib_client_environment
...
This allow to use the functorised version of the protocol in the
client.
2018-01-30 10:13:40 +01:00
Grégoire Henry
acc0c5c512
Compiler: allow not to generate Registerer
2018-01-30 10:13:40 +01:00
Grégoire Henry
0c2acd2d48
RPC: simplify Worker.EVENT
2018-01-30 10:13:40 +01:00
Grégoire Henry
e664179927
Refactor: CI: check opam packages
2018-01-30 10:13:40 +01:00
Grégoire Henry
1d5b4c1e3b
Refactor: merge lib_p2p_services
into lib_shell_services
...
Also split the module `Shell_services` in smaller modules.
2018-01-30 10:13:40 +01:00
Grégoire Henry
7277c9889b
Refactor: Move/split P2p_types
into lib_base
2018-01-30 10:13:40 +01:00
Grégoire Henry
be9f068478
Refactor: More PRC types into Tezos_base
2018-01-30 10:13:40 +01:00
Grégoire Henry
c4420ac40e
Refactor: Move Blake2B.Make
instanciation into Tezos_base
2018-01-30 10:13:40 +01:00
Grégoire Henry
b0466aceed
Refactor: Fix lib_protocol_updater
dependencies
2018-01-30 10:13:40 +01:00
Grégoire Henry
96e493006c
Refactor: Rename lib_node_updater
-> lib_protocol_updater
2018-01-30 10:13:40 +01:00
Grégoire Henry
96fe5239c9
Refactor: Rename lib_node_shell
-> lib_shell
2018-01-30 10:13:40 +01:00
Grégoire Henry
58388bd304
Refactor: Merge lib_node_shell_base/lib_node_services}
-> lib_shell_services
2018-01-30 10:13:40 +01:00
Grégoire Henry
552237673e
Refactor: Move Mempool
and Block_locator
into lib_base
2018-01-30 10:13:26 +01:00
Grégoire Henry
4acdfc67fb
Refactor: Remame lib_node_p2p/p2p_base
into lib_p2p/p2p_services
2018-01-30 10:13:26 +01:00
Grégoire Henry
e0a2570988
Refactor: Rename Node_rpc_services.Network
into P2p_services
2018-01-30 10:12:55 +01:00
Grégoire Henry
1f3c68cbd8
Refactor: Regroup protocols
2018-01-30 10:12:55 +01:00
Grégoire Henry
a3d0ee644a
Refactor: Rename lib_rpc_base
-> lib_rpc
2018-01-30 10:12:55 +01:00
Grégoire Henry
66fb1811ae
Opam: add missing dep in tezos-node-shell-base
2018-01-28 20:02:51 +01:00
Milo Davis
f00c7c0667
Data encoding: fail on string_enum that should be a constant
2018-01-27 15:30:09 +01:00
Milo Davis
c77cbcb30b
Data_encoding: use constant from ocplib-json-typed
2018-01-27 15:30:09 +01:00
Grégoire Henry
ea500256f0
P2p: tentative fix for #98
2018-01-27 15:30:09 +01:00
Grégoire Henry
e7483ff392
Opam: new release of ocp-ocamlres
2018-01-27 14:55:57 +01:00
Grégoire Henry
0c51f7a7ca
Proto: Fix warning
2018-01-27 13:37:03 +01:00
Grégoire Henry
a30f20c4e3
Base: remove Lwt_utils.canceler
...
It has been replaced by `Lwt_canceler`
2018-01-27 13:35:47 +01:00
Benjamin Canou
9060122b26
Node: only validate branches that can increase the current head's fitness
...
And also make the check when processing new head increments. That way
we prevent spamming with valid head successors that bear the same
fitness.
2018-01-27 13:34:02 +01:00
Benjamin Canou
41ad73a3ed
Utils: remove Lwt_utils.queue
2018-01-27 13:34:02 +01:00
Benjamin Canou
6f34b85504
RPC: net validator worker introspection
2018-01-27 13:34:02 +01:00
Benjamin Canou
0779221d04
Node: switch the net validator to Tezos_worker
2018-01-27 13:34:02 +01:00
Benjamin Canou
e5405c2f72
RPC: peer validator worker introspection
2018-01-27 13:34:02 +01:00
Benjamin Canou
ecbf1805e1
Node: switch the peer validator to Tezos_worker
2018-01-27 13:34:02 +01:00
Benjamin Canou
50b1957714
RPC: block validator worker introspection
2018-01-27 13:34:02 +01:00
Grégoire Henry
6d3f5af163
Node: switch the block validator to Tezos_worker
2018-01-27 13:34:02 +01:00
Benjamin Canou
4e04e233a0
RPC: prevalidator worker introspection
2018-01-27 13:34:02 +01:00
Benjamin Canou
98ec3393b6
Node: switch the prevalidator to Tezos_worker
2018-01-27 13:34:02 +01:00
Benjamin Canou
d50402c27b
Introduce Tezos_shell.Worker
2018-01-27 13:34:02 +01:00
Benjamin Canou
4d197b4ba3
Node: document an internal prevalidator error
2018-01-27 12:43:37 +01:00
Benjamin Canou
cd94b998c0
Node: throttle advertisement of newly discovered operations a little bit
2018-01-27 12:43:37 +01:00
Benjamin Canou
755d63c0ef
Node: limit the refused operations cache in the prevalidator
2018-01-27 12:43:37 +01:00
Benjamin Canou
0652808259
Shell: refactoring of the prevalidator
2018-01-27 12:43:37 +01:00
Benjamin Canou
566a92197b
Get rid of forced operation injection
2018-01-27 12:43:37 +01:00
Benjamin Canou
dee86fb462
Utils: add Lwt_pipe.pop_with_timeout
2018-01-27 12:43:37 +01:00
Benjamin Canou
9b09e70f5e
Utils: add Ring.clear
2018-01-27 11:33:30 +01:00
Benjamin Canou
bb90cc9dec
Utils: add Lwt_pipe.peek_all
2018-01-27 11:33:30 +01:00
Benjamin Canou
2441ad6026
Utils: add Ring.add_and_return_erased
2018-01-27 11:33:30 +01:00
Benjamin Canou
f145c4b196
Utils: add Lwt_pipe.pop_all_now
2018-01-27 11:33:30 +01:00
Benjamin Canou
cfd5151279
Alpha: fix colliding JSON schema definitions
2018-01-27 11:33:30 +01:00
Grégoire Henry
6e629584ff
Jbuilder: fix rule runtest_indent
2018-01-27 11:32:57 +01:00
Milo Davis
545cd0c869
Client: commands to update config file
2018-01-25 23:22:59 +01:00
Milo Davis
937869da43
Client: split admin/debug commands into separate executable
2018-01-25 15:57:20 +00:00
Milo Davis
c98426fb02
Debug: unmark invalid block
2018-01-25 15:57:20 +00:00
Pietro
df746e606d
Indent: reindent with ocp-indent and fix the script
2018-01-25 15:01:12 +00:00
Grégoire Henry
bd8eaddc8c
Resto: properly handle text/ocaml.exception
.
2018-01-25 12:33:13 +01:00
Milo Davis
00f7a0ea87
RPC: improves error handling for exceptions on generic RPCs
2018-01-25 12:33:13 +01:00
Pietro
4109adfd77
Node: properly report RPC port already in use, fixes #69
2018-01-24 18:28:19 +01:00
Bruno B
ce35bc5346
Michelson: light refactoring of equality witnesses
2018-01-23 13:35:48 +00:00
Benjamin Canou
adf860ea40
Docs: new documentation structure using Sphinx/RST
...
- Provides a toplevel documentation structure using Sphinx
- Adds a `doc-html` target to the main Makefile
- Converts existing documentation to RST format
- Add some new documentation / tutorials
- Links the developer manual and OCaml documentation
- Synchronized documentation on Gitlab pages
This patch is co-authored by:
- Benjamin Canou <benjamin@canou.fr>
- Bruno Bernardo <bernardobruno@gmail.com>
- Pietro Abate <pietro.abate@inria.fr>
2018-01-23 08:02:17 +01:00
Benjamin Canou
64c65558d8
Node: add missing error pretty printers
2018-01-22 22:25:30 +01:00
Pietro
2f85dc526d
Node: fails gracefully if data dir cannot be created, fixes #83
2018-01-22 22:25:30 +01:00
Grégoire Henry
0abdb2a893
Minor renaming.
2018-01-22 09:20:53 +01:00
Grégoire Henry
bfb2d223c0
opam: fix sandboxed scripts
2018-01-22 09:20:46 +01:00
Milo Davis
fbeff067c3
lib_RPC: bonary -> binary
2018-01-21 16:27:16 +00:00
Milo Davis
6e56b7b5e7
Client: Typo in michelson error reporting
2018-01-19 13:59:09 +01:00
Milo Davis
4433395c6e
Proto/Env: export the Option
module
2018-01-19 13:59:04 +01:00
Milo Davis
b8063b40fe
Storage: add omitted case to storage_error_encoding
2018-01-19 13:59:01 +01:00
Grégoire Henry
525b09259f
Fix d9405292a4
2018-01-18 16:08:20 +01:00
Vincent Bernardoff
e6f773f697
Base58: encode secret keys as seed
2018-01-18 10:45:47 +01:00
Pietro
d9405292a4
Move all packages to src/
...
Modify Makefile accordingly
2018-01-16 23:11:39 +01:00
Grégoire Henry
82857dcb94
Jbuilder: split lib_node_net
...
- `lib_node_p2p_base`: Base datatypes for the P2P layers
- `lib_node_services`: RPC service definitions (depends on `node_p2p_base`)
- `lib_node_http`: RPC http server
- `lib_node_p2p`: the P2P workers
2017-12-04 19:15:26 +01:00
Grégoire Henry
ab5b597eb1
Jbuilder: Move client & node libraries in their own OPAM packages
2017-12-04 19:15:26 +01:00
Grégoire Henry
9cb498eee6
Jbuilder: Move alpha/genesis/demo
in their own two OPAM packages
...
One package for the embedded version. One for the functorized one.
2017-12-04 16:05:54 +01:00
Grégoire Henry
78d838059f
Jbuilder: move protocol-compiler
in its own OPAM package
2017-12-04 16:05:54 +01:00
Grégoire Henry
e24b1dda75
Jbuilder: move protocol_environment_sigs
in its own OPAM package
2017-12-04 16:05:54 +01:00
Grégoire Henry
92d166175f
Jbuilder: move Micheline in its own OPAM package
2017-12-04 16:05:54 +01:00
Grégoire Henry
b6449cae87
Jbuilder: split src/utils/
in multiple OPAM packages
...
* `lib_stdlib`: basic extended OCaml stdlib and generic data structures
* `lib_data_encoding`: almost independant 'Data_encoding'
* `lib_error_monad`: almost independant 'Error_monad'
* `lib_stdlib_lwt`: extended Lwt library
* `lib_crypto`: all the crypto stuff (hashing, signing, cryptobox).
* `lib_base`:
- basic type definitions (Block_header, Operation, ...)
- a module `TzPervasives` to bind them all and to be the
single module opened everywhere.
In the process, I splitted `Tezos_data` and `Hash` in multiple
submodules, thus removing a lot of `-open`.
The following two modules may not have found their place yet:
- Base58 (currently in `lib_crypto`)
- Cli_entries (currently in `lib_stdlib_lwt`)
2017-12-04 16:05:54 +01:00
Grégoire Henry
5b50279851
Import new version of vendors/ocplib-resto
...
The new version of ocplib-resto :
- uses jbuilder ;
- is functorized over `Json_encoding` rather than `Json_repr` ;
- handles query parameters ;
- handles HTTP methods (GET, POST, DELETE, PUT, PATCH) ;
- replaces `custom_service` by a more generic trailer argument ;
- replaces generic answer `(code, body)` by a more ad-hoc sum type
(allowing distinct encoding for success and error) ;
- includes a minimal HTTP-server based on Cohttp
(includings CORS and media type negotiation).
- adds a function `Directory.transparent_lookup` to lookup/call
a service handler without serializing the various parameters
(path, query, request body).
As a first consequences in Tezos, this patch allows binary
communication between the client and the node.
This patch tries to be minimal inside the tezos source code and
therefore it introduces a minimal compatibility layer in
`RPC.ml`. This code should be removed as soon as possible.
2017-12-04 15:51:59 +01:00
Pierre Chambart
6c679d2e2c
Michelson: compute depth for type size check
...
This allows to ensure that the depth to look at is updated when
michelson is.
2017-12-02 23:02:50 +00:00
Pierre Chambart
fedeb6c8fd
Michelson: enforce a maximum stack item type size
2017-12-02 23:02:50 +00:00
Milo Davis
b4495568cb
Fixes OSX select exception
...
This patch is primarily authored by @chambart
2017-11-30 14:50:36 +01:00
Benjamin Canou
97d983285e
Node: allow identity.json to stay when clearing the data-dir
2017-11-28 17:28:56 +01:00
Benjamin Canou
e91f5bc588
Node: Cleanup a few error messages.
2017-11-28 15:43:58 +01:00
Benjamin Canou
606c6e55e4
Node: update shutdown order to prevent some leveldb read errors.
2017-11-28 15:43:47 +01:00
Pietro Abate
6e68fb425a
Fix #66 and #59
2017-11-27 17:26:36 +01:00
Grégoire Henry
8f30934220
Validator: always log invalid block
2017-11-27 10:40:43 +00:00
Grégoire Henry
471006b2dd
Validator: properly handle termination of Block_validator.
2017-11-27 10:40:43 +00:00
Grégoire Henry
10d1b08c85
Validator: do not try to validate twice an invalid block
2017-11-27 10:40:42 +00:00