Alain Mebsout
371ce150ce
Michelson: generate default annotation for field accesses
...
If stack is [ @storage (pair int int) ] then stack after CAR:
CAR; [ @storage.car int ]
2018-06-14 18:09:32 +02:00
Alain Mebsout
263b2d717f
Michelson: allow annotations on CMP... macros
2018-06-14 18:09:32 +02:00
Alain Mebsout
68dcae1a11
Michelson: RENAME macro
2018-06-14 18:09:32 +02:00
Alain Mebsout
22bdea00c2
Michelson: check (field) annotations of field accesses
2018-06-14 18:09:32 +02:00
Alain Mebsout
5431752887
Michelson: better syntax for fields of pair types
2018-06-14 18:09:32 +02:00
Alain Mebsout
53b88e4dbb
Michelson: different types of annotations
2018-06-14 18:09:32 +02:00
Benjamin Canou
3140f6e51d
Michelson: allow multiple annotations
2018-06-14 18:09:32 +02:00
Grégoire Henry
a51c912722
Alpha: forbids trivial double baking evidence
2018-06-14 15:57:27 +00:00
Galfour
3dce646b18
Tests: more tests for double baking
2018-06-14 15:57:27 +00:00
Marco Stronati
53ec17c8b4
Tests/helpers: rework block to ease arbitrary signatures
2018-06-14 15:57:27 +00:00
Pietro
4d3a01974c
[proto]: Remove commas from decimal repr of tezos
2018-06-14 15:48:25 +00:00
Marco Stronati
e1702e0db2
Alpha: add check_size when parsing Z values
2018-06-14 02:27:41 +02:00
Marco Stronati
8f5aecfc01
Alpha: change space_storage from int64 to Z.t
2018-06-14 02:27:41 +02:00
Marco Stronati
12b7a49f96
Alpha: change counters from int32 to Z.t
2018-06-14 02:25:12 +02:00
Vincent Bernardoff
21823483a5
Crypto: add P256 cryptography
2018-06-13 23:59:16 +00:00
Pierre Chambart
e9c42123cb
Alpha: Simplify a few things after removing dead code.
2018-06-14 00:37:32 +02:00
Pierre Chambart
233273dff8
Alpha: Remove more dead code with in storage functor.
...
There are no instances of Carbonated values that have not a variable
lenght. And I don't forsee this changing anythime soon.
2018-06-14 00:37:32 +02:00
Pierre Chambart
ff428fe680
Alpha: Change carbonated data storage path
...
The len key was key ^ "$" which was problematic for potential name
collision with real keys. It is now key @ ["len"] and key @ ["data"]
2018-06-14 00:37:32 +02:00
Pierre Chambart
31b9c251f6
Alpha: Carbonated functor: fix read after update problems
2018-06-14 00:37:32 +02:00
Pierre Chambart
d11bc0b996
Alpha: Remove empty module type
2018-06-14 00:37:32 +02:00
Pierre Chambart
9c0bb49174
Alpha: Remove dead code
2018-06-14 00:37:32 +02:00
Pierre Chambart
2404246fb3
Alpha: Non implicit contracts cannot be removed
2018-06-14 00:37:32 +02:00
Pierre Chambart
64481a198e
Alpha: remove useless carbonated functor
...
Single carbonated data storage was useless and is buggy. It's simpler to
remove than to fix it.
2018-06-14 00:37:32 +02:00
Grégoire Henry
4c171c72a2
Proto: prepare protocol interface for multipass validation
2018-06-13 16:34:50 +02:00
Benjamin Canou
6d7fe70c44
Fix OPAM dependencies
2018-06-13 00:53:51 +02:00
Grégoire Henry
a5cec8fca0
Proto: move back max_operation_data_length
as a constants
2018-06-12 21:27:55 +02:00
Grégoire Henry
5fd5c1c5f7
Dune: upgrade to 1.0+beta20
2018-06-08 15:27:23 +00:00
Grégoire Henry
98f77703c4
Alpha: do not use inter-modules toplevel side-effects
2018-06-08 15:27:23 +00:00
Grégoire Henry
8eac1b03ac
Alpha: adapt test to new operation type
2018-06-07 12:47:20 +02:00
Grégoire Henry
ca1d4158a7
Shell/RPC: add raw block header in monitoring RPCs
2018-06-06 15:24:05 +02:00
Grégoire Henry
9df99e4553
Alpha: use the zero
signature for anonymous operation
2018-06-06 15:24:05 +02:00
Benjamin Canou
6d2bf5af90
Alpha: add a few comments
2018-06-06 14:45:41 +02:00
Benjamin Canou
fa418ee6e0
Alpha: simplify handling of Unit parameter in Apply
2018-06-06 14:45:06 +02:00
Benjamin Canou
b2b0a98e39
Alpha: minor style fix: turn a ? into a ~
2018-06-06 12:38:57 +02:00
Benjamin Canou
7c8e0403e3
Alpha: minor cleanup of Apply for better readability
2018-06-06 12:05:57 +02:00
Benjamin Canou
f53cb40915
Michelson: do not padd nat-encoded addresses that are now fixed sized
2018-06-06 11:28:07 +02:00
Benjamin Canou
ee735c33cf
Alpha: fix typos and fill placeholders in services doc
2018-06-06 10:54:33 +02:00
Grégoire Henry
e3b6a0a568
Alpha: add padding to Contract.encoding
2018-06-06 10:54:33 +02:00
Grégoire Henry
c82b44e8f2
Doc: less unnamed fields in binary description
2018-06-06 10:54:33 +02:00
Grégoire Henry
030630ec0f
Data_encoding: mandatory title
to case
2018-06-06 10:54:33 +02:00
Grégoire Henry
b7ca0a1e1e
Alpha: use 'dft' field for boolean flag
...
This simplifies the binary encoding without changing the semantics of
the JSON objects.
2018-06-06 10:54:33 +02:00
Grégoire Henry
ce79dc5383
Alpha: deposit at the end of validation.
...
This allows to credit bond in the block.
2018-06-06 10:54:33 +02:00
Grégoire Henry
670249f580
Alpha: remove constant first_free_baking_slot
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
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
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
33ded01ae7
Shell/RPC: rename /context/helpers
into /helpers
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
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
bbf5c7408b
Shell/RPC: split out Monitor_services
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
6b12ab9473
Opam: add missing test dependencies for tezos-protocol-alpha
2018-06-05 14:17:24 +02:00
Marco Stronati
7b8f764524
Tests: add tests for baking
2018-06-05 12:55:59 +02:00
Marco Stronati
ff237c79cc
Tests: add tests for seed nonce revelation operation
2018-06-05 12:55:59 +02:00
Galfour
6e65a12206
Tests: add tests for double endorsement and double baking
2018-06-05 12:23:40 +02:00
Vincent Botbol
7505a66904
Tests: add tests for endorsement and activation operations
2018-06-05 12:23:40 +02:00
Quyen
d9a11caeb8
Tests: add tests for transfer and origination operations
2018-06-05 12:23:40 +02:00
Grégoire Henry
e8e66a83c7
Tests/helpers: replace old test framework
2018-06-05 12:23:40 +02:00
Grégoire Henry
4105467603
Alpha: changes needed for test framework
2018-06-05 11:56:40 +02:00
Grégoire Henry
367cc4e916
Faucet: rename secret
into activation_code
2018-06-04 14:40:10 +02:00
Vincent Botbol
92bb69e744
Protocol: remove half pkh in commitments
2018-06-04 14:12:01 +02:00
Raphaël Proust
f647404739
Proto_alpha/levels: added documentation
2018-06-04 08:41:46 +08:00
Grégoire Henry
fc26022cd2
Proto: associate metadata
to valid block headers and operations
2018-06-01 16:20:10 +02:00
Grégoire Henry
c85e27605b
Proto: export Data_encoding.t
for block headers and operationss
...
Previously we were only exporting parsing function. This will allow
to move out of the protocol some `helpers` RPCs.
2018-06-01 16:20:10 +02:00
James Deikun
afa335ff48
move module-specific logging to the modules that use it
2018-05-31 17:05:00 -04:00
Grégoire Henry
b2e6001007
Data_encoding: merge def
and describe
2018-05-30 14:38:05 +02:00
Milo Davis
f644d8f332
Client: adds check signature command
2018-05-28 17:09:03 +02:00
Benjamin Canou
1b91d0929a
Michelson: read some constants in base58 but store them in binary
2018-05-28 17:09:03 +02:00
Milo Davis
ff4a5fadda
Client: get timestamp in seconds
2018-05-28 17:09:03 +02:00
Benjamin Canou
439435bd11
Michelson: forbid internal operation replay
2018-05-28 17:09:03 +02:00
Benjamin Canou
f1fc7ab582
Michelson: forbid internal operations in parameter and storage
2018-05-28 17:09:03 +02:00
Benjamin Canou
702896f420
Michelson: switch string tez constants to int mutez constants
2018-05-28 17:09:03 +02:00
Benjamin Canou
ffec060a6f
Client, Michelson: minor fixes in error reporting
2018-05-28 17:09:03 +02:00
Benjamin Canou
a425b3dc27
Michelson: cleanup iterator opcodes
2018-05-28 17:09:03 +02:00
Benjamin Canou
c57458ea01
Michelson: fix inconsistency when reading and printing strings
2018-05-28 17:09:03 +02:00
Benjamin Canou
bb37e04340
Michelson: add estimated memory cost of an expression
2018-05-28 17:09:03 +02:00
Benjamin Canou
ce668e6afb
Alpha: lazily deserialize scripts
2018-05-28 17:09:03 +02:00
Benjamin Canou
530427c813
Michelson: unpair input of CHECK_SIGNATURE
2018-05-28 17:09:03 +02:00
Benjamin Canou
8e28c790ea
Client/Alpha: detect script failure before injection
2018-05-28 17:09:03 +02:00
Benjamin Canou
23f9949e70
Alpha: add storage limits
2018-05-28 17:09:03 +02:00
Benjamin Canou
dd9cd8a1c3
Alpha: keep the storage space in bytes instead of the premultiplied fees
2018-05-28 17:09:03 +02:00
Grégoire Henry
7d73605f5c
Alpha: fix endorsement rewards
...
It should be computed with the priority of the endorsed blocks,
not with the priority of the block where it is included.
2018-05-28 17:09:03 +02:00
Grégoire Henry
c167d0eaae
Alpha: remove unused parameters
2018-05-28 17:09:03 +02:00
Grégoire Henry
25ecd68b90
Alpha: use singular for Sourced_operation
2018-05-28 17:09:03 +02:00
Grégoire Henry
ee5373d960
Client: add global option --wait
2018-05-28 17:09:03 +02:00
Grégoire Henry
72e31287d1
Client/Alpha: split module Client_proto_context
2018-05-28 17:09:03 +02:00
Benjamin Canou
a11e0000e7
Michelson: add SET_DELEGATE opcode
2018-05-28 17:09:03 +02:00
Benjamin Canou
b669632075
Alpha: check delegatable flag before removing the delegate
2018-05-28 17:09:03 +02:00
Benjamin Canou
af5a8939cf
Alpha: originations from contracts are now internal operations
2018-05-28 17:09:03 +02:00
Benjamin Canou
97208fd532
Alpha: add a type for operation results
2018-05-28 17:09:03 +02:00
Benjamin Canou
18c77318fb
Alpha: thread origination_nonce in the context
2018-05-28 17:09:03 +02:00
Benjamin Canou
f05b02f74f
Michelson: some new contracts/tests
2018-05-28 17:09:03 +02:00
Benjamin Canou
303c43b742
Michelson: add AND of int and nat
2018-05-28 17:09:03 +02:00
Benjamin Canou
60136c13b2
Michelson: add ISNAT instruction
2018-05-28 17:09:03 +02:00
Benjamin Canou
86c18bcd9d
Michelson: SOURCE now returns an address
2018-05-28 17:09:03 +02:00
Benjamin Canou
5579d3cc97
Michelson: add untyped address type, and instructions ADDRESS and CONTRACT
2018-05-28 17:09:03 +02:00
Benjamin Canou
595685cf42
Michelson: replace direct transfers with an internal operation queue
2018-05-28 17:09:03 +02:00
Benjamin Canou
59cccd53aa
Michelson: cleaner naming in interpreter
2018-05-28 17:09:03 +02:00
Benjamin Canou
24deb10c8f
Michelson: cleanup big map initialization and account for its fees
2018-05-28 17:09:03 +02:00
Benjamin Canou
42899ccb09
Alpha: add result record type for apply operation and include storage fees
2018-05-28 17:09:03 +02:00
Benjamin Canou
25a1930c32
Alpha: storage fees accounting
2018-05-28 17:09:03 +02:00
Benjamin Canou
676a64b81f
Michelson: rename DEFAULT_ACCOUNT to IMPLICIT_ACCOUNT
2018-05-28 17:09:03 +02:00
Benjamin Canou
bceb91289a
Alpha: better errors for corrupted context accesses
2018-05-28 17:09:03 +02:00
Benjamin Canou
6f3be375e8
Alpha: IO gas accounting
2018-05-28 17:09:03 +02:00
Benjamin Canou
4a0b30d968
Alpha: add variants of storage functors with size accounting
2018-05-28 17:09:03 +02:00
Benjamin Canou
ba09cdf883
Alpha: fix Storage_functors.Indexed_data_storage.fold
2018-05-28 17:09:03 +02:00
Benjamin Canou
27486e500a
Micheline: use zarith instead of strings for integers
2018-05-28 17:09:03 +02:00
Benjamin Canou
c3cf4dfbfb
Alpha, Michelson: add gas limits for block and operations
2018-05-28 17:09:03 +02:00
Benjamin Canou
eef5885265
Alpha, Michelson: no need to thread the gas in parsing linear structures
2018-05-28 17:09:03 +02:00
Benjamin Canou
4fd2b03832
Alpha, Michelson: thread the gas directly in the context
2018-05-28 17:09:03 +02:00
Benjamin Canou
04415ff6a8
Alpha, Michelson: separate gas operations from costs
2018-05-28 17:09:03 +02:00
Milo Davis
8a49bf5509
Alpha, Michelson: gas in typechecking
2018-05-28 17:09:03 +02:00
Grégoire Henry
0d8990887c
Jbuilder: fix the target @runtest_indent
2018-05-26 20:08:03 +02:00
bruno
f000eb70f2
Alpha: forbid transaction of 0ꜩ towards contracts without code
2018-05-26 19:54:06 +02:00
James Deikun
2c57e4cce6
RPC: expose RPC base address in client context
2018-05-26 19:12:15 +02:00
Grégoire Henry
fd72b47263
Opam: fix dependencies
2018-05-26 18:36:32 +02:00
Arthur B
f43710694b
Alpha: fix typo in services path
2018-05-26 18:25:48 +02:00
Arthur B
07a631316a
Alpha: allow to deactivate rewards for a few initial cycles
2018-05-26 18:25:40 +02:00
Arthur B
126ee13ba7
Alpha: allow to ramp up endorsement and baking security deposits
2018-05-26 17:24:04 +02:00
Grégoire Henry
370114eb8b
Client: preload encrypted keys when running a daemon
2018-05-26 15:36:36 +02:00
Grégoire Henry
da921a8f56
Client: allow tz1...
as the source of a transfer
...
This is only useful when a 'remote signer' is available.
2018-05-26 15:36:36 +02:00
Grégoire Henry
fb85568d98
Client: add an option --remote-signer
...
When the option is provided, all keys with the scheme `remote` are now
implicitly handled by the provided remote signer.
2018-05-26 15:35:11 +02:00
Grégoire Henry
57663a95e9
Client: add an option to encrypt faucet accounts and imported keys
2018-05-26 15:34:16 +02:00