Commit Graph

5034 Commits

Author SHA1 Message Date
Grégoire Henry
7c2ef081d5 Data_encoding: more 'inlining' in binary description 2018-06-06 10:54:33 +02:00
Grégoire Henry
705d6fb282 Data_encoding: do not use wildcard pattern matching 2018-06-06 10:54:33 +02:00
Grégoire Henry
a17e5d177c Doc: add api/p2p.rst 2018-06-06 10:54:33 +02:00
Milo Davis
bb2738bf12 Data_encoding: add descriptions and case names 2018-06-06 10:54:33 +02:00
Milo Davis
ec7eeaaa0e Client: describe unsigned data commands 2018-06-06 10:54:33 +02:00
Milo Davis
0a88f1887c Data_encoding: binary description printing 2018-06-06 10:54:33 +02:00
Milo Davis
4c03952e43 RPC_service: register Not_found error 2018-06-06 10:54:33 +02:00
Grégoire Henry
632144b689 RPC: remove subfield accessors
This is painful to maintain and `jq` works well.
2018-06-06 10:54:33 +02:00
Grégoire Henry
e4ffbd2854 RPC: remove access to a single contant 2018-06-06 10:54:33 +02:00
Grégoire Henry
1d75ff1871 Alpha: simplify the metadata encoding for balance update 2018-06-06 10:54:33 +02:00
Raphaël Proust
025187da2f Data_encoding/Json: use strings for all int64
See Issue #190
2018-06-06 10:54:33 +02:00
Grégoire Henry
5d8c73dacb TMP precheck manager operation 2018-06-06 10:54:33 +02:00
Grégoire Henry
ceddb09ea7 TMP remove dictator 2018-06-06 10:54:33 +02:00
Grégoire Henry
420986b45b Alpha: simplify the operation datatype 2018-06-06 10:54:33 +02:00
Grégoire Henry
371b84fa5d Alpha/PRC use more Data_encoding.def 2018-06-06 10:54:33 +02:00
Grégoire Henry
33c3d1fcbd Alpha/RPC: add a low-level but typed RPC for context introspection
Example:

```
> tezos-client rpc get /chains/main/blocks/head/context/raw/json/\?depth\=1 | jq
{
  "commitments": [],
  "contracts": {
    "global_counter": 0,
    "index": []
  },
  "cycle": [
    4,
    3,
    2,
    1,
    0
  ],
  "delegates": [
    "tz1gjaF81ZRRvdzjobyfVNsAeSC6PScjfQwN",
    "tz1faswCTDciRzE4oJ9jn2Vm2dvjeyA9fUzU",
    "tz1ddb9NMYHZi5UzPdzTZMYQQZoMub195zgv",
    "tz1b7tUupMgCNw2cCLpKTkSD1NZzB5TkP2sv",
    "tz1KqTpEZ7Yob7QbPE4Hy4Wo8fHG8LhKxZSx"
  ],
  "last_block_priority": 0,
  "rolls": {
    "index": [],
    "next": 2000,
    "owner": {}
  },
  "votes": {
    "ballots": [],
    "current_period_kind": "proposal",
    "current_quorum": 8000,
    "listings": [],
    "proposals": []
  }
}
> tezos-client rpc get /chains/main/blocks/head/context/raw/json/cycle/4\?depth\=2 | jq
{
  "last_roll": [
    [
      0,
      2000
    ]
  ],
  "nonces": [],
  "random_seed": "97d50852c159ada8e9f107e98f693b059ba28336c723e6cd0f6353eb3c0cb415",
  "roll_snapshot": 0
}
> tezos-client rpc get /chains/main/blocks/head/context/raw/json/cycle/5\?depth\=2 | jq
{
  "last_roll": [
    [
      1,
      2000
    ],
    [
      0,
      2000
    ]
  ],
  "nonces": [],
  "roll_snapshot": 2
}
```
2018-06-06 10:54:33 +02:00
Grégoire Henry
74acad1472 Alpha: minor signature change in storage functors 2018-06-06 10:54:33 +02:00
Grégoire Henry
f7aa0398ca Alpha/RPC: minor renaming 2018-06-06 10:54:33 +02:00
Grégoire Henry
f5e3fb17c0 Resto: lift the lwt monad into Resto. 2018-06-06 10:54:33 +02:00
Grégoire Henry
b6b30875e4 Resto: export RPC_arg.eq to the protocol. 2018-06-06 10:54:33 +02:00
Grégoire Henry
1460aba927 Alpha/RPC: some renaming in delegate services 2018-06-06 10:54:33 +02:00
Grégoire Henry
ebc00b6463 Client/Alpha: display the "real" metadata when --wait is used 2018-06-06 10:54:33 +02:00
Grégoire Henry
89cbe0f8fa Docs/RPC: fix doc generation
The current doc generator does not handles path were multiple method
are registred. The fix remove the intermediate (compilation) tree.
2018-06-06 10:54:33 +02:00
Vincent Botbol
eb78c2ae8c Docs/RPC: add query item display 2018-06-06 10:54:33 +02:00
Grégoire Henry
22d20509bf Docs/RPC: minor RPC improvements 2018-06-06 10:54:33 +02:00
Grégoire Henry
33ded01ae7 Shell/RPC: rename /context/helpers into /helpers 2018-06-06 10:54:33 +02:00
Grégoire Henry
0ad85aca21 Shell/RPC: use GET request for /errors 2018-06-06 10:54:33 +02:00
Grégoire Henry
3783e43a2e Alpha/RPC: rename levels_in_cycle into levels_in_current_cycle 2018-06-06 10:54:33 +02:00
Grégoire Henry
7e8f4341d7 Alpha/RPC: regroups /context/helpers/scripts 2018-06-06 10:54:33 +02:00
Grégoire Henry
32e40ec19a Alpha/RPC: remove helpers/minimal_time 2018-06-06 10:54:33 +02:00
Grégoire Henry
0a78bbe33b Shell/RPC: use GET request for /workers 2018-06-06 10:54:33 +02:00
Grégoire Henry
64c464a73f Shell/RPC: some module renaming/aliasing 2018-06-06 10:54:33 +02:00
Grégoire Henry
2a93a336aa Shell/RPC: use query parameters in /injection 2018-06-06 10:54:33 +02:00
Grégoire Henry
9bc7b1e573 Shell/RPC: also list embedded protocols 2018-06-06 10:54:33 +02:00
Grégoire Henry
04c920df29 Shell/RPC: use query parameters in /protocols 2018-06-06 10:54:33 +02:00
Grégoire Henry
bbf5c7408b Shell/RPC: split out Monitor_services 2018-06-06 10:54:33 +02:00
Grégoire Henry
c175cd1c65 Shell/RPC: use query parameters for /p2p 2018-06-06 10:54:33 +02:00
Grégoire Henry
0b08dce3e8 Shell/RPC: move preapply_operation into Block_services 2018-06-06 10:54:33 +02:00
Grégoire Henry
9093e5c02d Alpha/RPC: minor RPC renaming 2018-06-06 10:54:33 +02:00
Grégoire Henry
b11a604d20 Alpha/RPC: more query parameters in /helpers 2018-06-06 10:54:33 +02:00
Grégoire Henry
482dbb116c Alpha/RPC: use query string for delegation rights 2018-06-06 10:54:33 +02:00
Grégoire Henry
7b758dbca8 Alpha/RPC: export various delegate data 2018-06-06 10:54:33 +02:00
Grégoire Henry
991846e716 Alpha/RPC: use GET requests for /contracts and /constants 2018-06-06 10:54:33 +02:00
Grégoire Henry
acc76d22a8 Alpha/Client: use block metadata 2018-06-06 10:54:33 +02:00
Grégoire Henry
d6f79edae2 Shell/RPC: rework /blocks
- start using `GET` and query parameters instead of `POST`  when
  meaningful

- inline parsed protocol data and metadata in block headers

- inline parsed protocol data and metadata in operations

- split the RPC in four categories:

  - static data, available explicitly in block headers and operations

  - static "metadata", information that were computed while validating
    a block or an operation, but which are not explicit in the block
    header (e.g. the baker of a block, the list of internal
    transfer... (currently not implemented, but that's WIP))

  - "context" all the static data we may read in the context
    (contracts balance, list of delegates, ...)

  - "helpers" are some RPC that may perform some computation.
2018-06-06 10:54:33 +02:00
Grégoire Henry
f02972bb8a Alpha: use Apply_operation_result as operation metadata 2018-06-06 10:54:33 +02:00
Grégoire Henry
b6207bb14d Alpha: allow binary serialization of Apply_operation_result 2018-06-06 10:54:33 +02:00
Grégoire Henry
0ded5c8024 Alpha: export some blocks metadata (baker, ...) 2018-06-06 10:54:33 +02:00
Grégoire Henry
6149909e83 Opam: fix the hacl package 2018-06-06 10:49:48 +02:00
Pierre Boutillier
51ddb708d3 Fix ocaml-secp256k1 Scalar.const
It happened to work by chance on 64bits but it was clearly wrong
2018-06-06 10:00:37 +02:00