Commit Graph

244 Commits

Author SHA1 Message Date
Grégoire Henry
020ef19460 Client: add a claim operation that activate a commitment account 2018-04-17 10:50:23 +02:00
Vincent Botbol
326226d5ed Genesis: add mnemonics, passwords and emails to genesis info generation 2018-04-17 10:36:46 +02:00
Arthur B
eb1dfb7f20 Shell/Alpha: allow usage of secp256k1 for signature 2018-04-16 18:37:52 +02:00
Grégoire Henry
3d57055cca Alpha: use protocol parameters instead of sandbox to tune constants 2018-04-16 09:28:26 +02:00
Grégoire Henry
98f30a3e85 Alpha: allow more constant parametrization 2018-04-16 09:28:26 +02:00
Marco Stronati
0940442148 Alpha: fixed type of Tez for constants 2018-04-12 16:40:42 +02:00
Grégoire Henry
c6ffe4a5d9 Alpha: better threading of fees and rewards 2018-04-10 16:23:53 +00:00
Marco Stronati
a8beaec40a Alpha: added a rpc to retrieve all constants at once. 2018-04-09 15:05:46 +02:00
Vincent Botbol
91dfb730bf Alpha: parametrize protocol activation with commitments and bootstrap accounts 2018-04-09 15:05:46 +02:00
Grégoire Henry
5f69ae87d2 Sandbox: deactivate the minimal stamp of proof of work for bakers 2018-04-06 13:45:13 +02:00
Grégoire Henry
4f2b2f8ece Alpha: use Base58 for displaying commitment 2018-04-06 11:56:32 +02:00
Grégoire Henry
9ffead02d2 Shell: simplify hash signatures 2018-04-06 11:56:32 +02:00
Arthur B
21efb2dc9d Jbuilder: update to beta.19.1 2018-04-06 11:47:22 +02:00
Grégoire Henry
bf32659a6b Proto/Env: Replace configure_sandbox by proper init 2018-04-06 11:40:34 +02:00
Grégoire Henry
6f0cc397ae Shell: move back hash encoders from lib_base to lib_crypto 2018-04-03 15:21:38 +02:00
bruno
c332343cee Alpha: add one mutez in interface 2018-03-28 09:30:33 +00:00
Vincent Botbol
c2990b4f14 Alpha: replace the faucet by preallocated-contract activation. 2018-03-28 10:36:37 +02:00
Grégoire Henry
afb1e0f260 Proto/Env: remove {Set,Map}.find
Also replace all the function raising `Not_found` by their `_opt` version.
2018-03-27 09:59:59 +00:00
Grégoire Henry
48cc2e9928 Proto/Env: rename Set.S and Map.S into S.SET and S.MAP. 2018-03-27 09:59:59 +00:00
Vincent Botbol
385a600e98 Docs: add error documentation generation 2018-03-26 01:04:07 +02:00
Benjamin Canou
19eb1c2520 Error_monad: change error wrapping to flatten the JSON format 2018-03-26 01:04:07 +02:00
Benjamin Canou
e0a4147b8d Alpha: add missing error registrations 2018-03-24 16:45:29 +01:00
Benjamin Canou
583563ede0 Remove dead file 2018-03-24 16:45:29 +01:00
Grégoire Henry
72b7789162 Alpha: reduce tips for inclusion of seed revelations 2018-03-22 17:37:54 +01:00
Grégoire Henry
7fabac6714 Alpha/RPC: fix typo in the RPC for parsing and forging. 2018-03-22 14:13:53 +01:00
Grégoire Henry
c2f74f9f9b Alphanet: use vanity key for the bootstrap accounts 2018-03-20 07:07:56 +01:00
bruno
55ad294595 Alpha: fix typo s/token_per_rolls/tokens_per_roll 2018-03-20 06:49:52 +01:00
bruno
bdf6a5e564 General: update jbuilder to 1.0+beta19 2018-03-20 06:49:52 +01:00
Grégoire Henry
edb40c7923 Alpha/test: allow to deactivate seed renewal 2018-03-19 16:06:27 +01:00
Benjamin Canou
0b31daeadc Alpha: rename Double_endorsement/baking into Double_endorsement/baking_evidence 2018-03-16 18:38:41 +01:00
Grégoire Henry
5ac629f335 More renaming registred -> registered 2018-03-16 18:38:41 +01:00
Grégoire Henry
71ee3114a7 Alpha: rename bond into deposit 2018-03-16 18:38:41 +01:00
Grégoire Henry
987e4a5314 Alpha: introduce constant max_revelations_per_block 2018-03-16 18:38:41 +01:00
Grégoire Henry
8e77382a61 Alpha: remove constant max_number_of_operations 2018-03-16 18:38:41 +01:00
Grégoire Henry
c1ddec37ab Alpha: rename voting_period_length into block_per_voting_period 2018-03-16 18:38:41 +01:00
Grégoire Henry
7ef2803199 Alpha: rename max_signing_slot into endorsers_per_block 2018-03-16 18:38:41 +01:00
Grégoire Henry
43609e2e63 Alpha: rename baking_reward into block_reward 2018-03-16 18:38:41 +01:00
Grégoire Henry
6b53e3f578 Alpha: rename endorsement_bond_cost into endorsement_security_deposit 2018-03-16 18:38:41 +01:00
Grégoire Henry
74d334463e Alpha: rename baking_bond_cost into block_security_deposit 2018-03-16 18:38:41 +01:00
Grégoire Henry
19cb91bcb6 Alpha: rename slot_durations into time_between_blocks 2018-03-16 18:38:41 +01:00
Grégoire Henry
4be6897368 Alpha: rename cycle_length into blocks_per_cycle 2018-03-16 18:38:41 +01:00
Grégoire Henry
4f968d6fdc Alpha: rename block_per_roll_snapshot into blocks_per_roll_snapshot 2018-03-16 18:38:41 +01:00
Grégoire Henry
e81c02c27a Alpha: remove Faucet limit 2018-03-16 18:38:41 +01:00
Grégoire Henry
5fa0b074bf Alpha: rename constant initial_roll_value into tokens_per_roll
And remove alphanet hack (doubling roll value)
2018-03-16 18:38:41 +01:00
Grégoire Henry
dc681551e6 Alpha: adjust constants 2018-03-16 18:38:41 +01:00
Grégoire Henry
abe769c393 Alpha: don't burn origination_burn twice... 2018-03-16 18:38:41 +01:00
Grégoire Henry
a41d553162 Alpha: use distinct quota for anonymous_operation 2018-03-16 18:38:41 +01:00
Grégoire Henry
040ac648eb Alpha: better error message when registering delegates 2018-03-16 18:38:41 +01:00
Grégoire Henry
a95e601284 Alpha: don't fail when burning previously burned bond/fees/rewards.
Just in a case a baker double-bakes and doesn't reveal its nonce.
2018-03-16 17:37:45 +01:00
Benjamin Canou
0cf6f8fff2 Alpha: do not decrease delegation rights expiration date when provisioning 2018-03-16 17:24:22 +01:00
Grégoire Henry
04bbbf9fe2 Alpha: deactivate inactive delegate 2018-03-16 17:12:19 +01:00
Benjamin Canou
fc08f2f8ef Alpha: add missing error registrations 2018-03-16 16:34:39 +01:00
Grégoire Henry
2eaae225ff Alpha: forbid delegation to the current delegate 2018-03-16 16:21:29 +01:00
Grégoire Henry
5026d6a68d Alpha: allow to tag a delegate as inactive 2018-03-16 16:09:51 +01:00
Grégoire Henry
76d11fcafb Alpha: add operation Double_baking 2018-03-16 15:34:36 +01:00
Grégoire Henry
09c1e317ab Alpha: add operation Double_endorsement 2018-03-16 15:34:32 +01:00
Grégoire Henry
3aef2ed505 Alpha: remove hash from Operation_repr.t 2018-03-16 14:34:39 +01:00
Grégoire Henry
e2af8dbee9 Alpha: randomly select a roll snapshot for each cycle 2018-03-16 11:21:22 +01:00
Benjamin Canou
b4dad92a7d Alpha: remove dead alphanet specific code 2018-03-16 11:21:21 +01:00
Grégoire Henry
6dccfa4a1f Alpha: prepare storage for multiple roll snapshots per cycle 2018-03-16 11:21:09 +01:00
Grégoire Henry
0283bee65b Alpha: add constant 'block_per_roll_snapshot' 2018-03-15 23:40:46 +01:00
Grégoire Henry
4e9fd509b3 Proto: export the 'last_allowed_fork_level'.
The should ignore all branch forking at a block whose level
is lower than the 'last_allowed_fork_level' of the current head.
2018-03-15 21:48:16 +01:00
bruno
226a9a1778 Proto_alpha: fix typo "unpexpected" 2018-03-15 14:07:06 +00:00
Milo Davis
2fbc60af75 Michelson: make maximum integer for gas 32 bit compatible (#169) 2018-03-15 13:51:13 +00:00
Benjamin Canou
2d9bbcce90 Alpha: fix PoW stamp value 2018-03-15 14:14:12 +01:00
Benjamin Canou
b09183a2d7 Alpha: remove emptied frozen balances 2018-03-15 14:06:00 +01:00
Grégoire Henry
39f919e07b Alpha: rework reward storage.
We now keep track per delegate and per cycle of three distinct "frozen
balance": one for the bond, one for the fees, one for the rewards.
All tokens frozen during cycle 'N' are unfrozen at the end of the
cycle 'N+5'.

The frozen bond and fees count allows to gain rolls. The frozen
rewards do not.
2018-03-15 00:37:18 +01:00
Grégoire Henry
2be83eafc1 Alpha: allow seed's nonce commitment only once every 'blocks_per_commitment' 2018-03-15 00:26:19 +01:00
Grégoire Henry
54b7d44da8 Alpha: add constant block_per_commitments 2018-03-15 00:19:15 +01:00
Grégoire Henry
abfc317ee8 Alpha: freeze delegation rights (preserved_cycles+1) in advance 2018-03-14 19:28:19 +01:00
Grégoire Henry
672109de54 Alpha: more intuitive Misc.(-->) 2018-03-14 12:12:49 +01:00
Grégoire Henry
e42cd1ccd6 Alpha: minor renaming 2018-03-14 12:12:49 +01:00
Grégoire Henry
cd5ac0a27d Alpha: add Constants_storage 2018-03-14 12:12:49 +01:00
Grégoire Henry
bd721b1085 Alpha: add constant "preserved_cycles" 2018-03-14 12:12:49 +01:00
Benjamin Canou
5bd01de643 Errors: fix duplicate definition 2018-03-14 11:37:35 +01:00
bruno
8713ae36f6 General: s/registred/registered/ 2018-03-13 16:29:02 +00:00
Grégoire Henry
76a59af376 Opam: use jbuilder.1.0.0-beta18 2018-03-08 14:38:57 +01:00
Grégoire Henry
b50d96ec2b Fix compilation with recent 're' Re.Str 2018-03-07 18:14:51 +01:00
Grégoire Henry
ad330db7e1 Opam: require jbuilder = 1.0.0-beta17 2018-03-07 18:12:12 +01:00
Benjamin Canou
249e4564d3 Alpha: fix spend_from_script 2018-02-28 14:59:01 +01:00
Grégoire Henry
b63b333b1a Alpha: allow to iter on delegates 2018-02-28 14:59:01 +01:00
Grégoire Henry
54efe8fcd7 Alpha: introduce Delegate_storage 2018-02-28 14:59:01 +01:00
Grégoire Henry
4c1e4bc6cd Alpha: use 'Data_set' for storing the spendable flag 2018-02-28 14:59:01 +01:00
Grégoire Henry
dcc5bc6b1a Alpha: remove warning 2018-02-28 14:59:01 +01:00
Pietro Abate
88e67707b7 Alpha: aggregate rolls per delegate 2018-02-28 14:59:01 +01:00
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
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
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
Grégoire Henry
f999524887 Proto/env: add missing type equalities 2018-02-20 18:29:56 +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
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
Vincent Bernardoff
62f436eda9 Base: use Re_str instead of non-thread-safe library Str 2018-02-15 18:19:17 +01:00
Vincent Bernardoff
f8ded9ca28 Comparable: add Make 2018-02-15 17:36:42 +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
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
db1f134e45 Client refactor: use the error_monad for all RPC services (protocol) 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
d417a679e6 Alpha/test: fix symbolic link 2018-02-11 19:17:38 +01:00
Grégoire Henry
db500b5ebd RPC_service: hide the 'error type parameter 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
84d8ae9222 Client refactor: Move Data_encoding_ezjsonm.read_file into Lwt_utils_unix 2018-02-08 17:23:30 +01: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
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
971c3c4b21 Refactor: move Registred_protocol from State to Tezos_updater 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
Grégoire Henry
868514af2b Test: move test/proto_alpha_isolate into proto_alpha/lib_protocol/test 2018-02-05 23:34:05 +01:00
bruno
ffe41a003c Michelson: add comments + registration for "Transfer in DIP" 2018-02-05 15:57:15 +01:00
bruno
ff7a8abb27 Michelson: mv registration of type-checking errors in a specific file 2018-02-05 15:49:30 +01:00
bruno
21c4cc6e69 Michelson: add registration for Overflow + some comments 2018-02-05 15:06:00 +01:00
bruno
75f29f4a05 Michelson: mv typechecking error definitions to a separate file 2018-02-05 14:58:19 +01:00
Grégoire Henry
d8151c0d00 Proto/alpha: use two operations list (endorsement / others) 2018-02-02 11:56:57 +01:00
Grégoire Henry
a1122f2083 Baking: handle validation passes 2018-02-02 11:56:57 +01:00
Grégoire Henry
618a43b485 Proto: export acceptable_passes 2018-02-02 11:56:54 +01:00
Grégoire Henry
ae3ff0503b Proto: the number of validation is now a protocol constant 2018-02-02 10:27:58 +01: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
04465e3ac6 Proto_sigs: split the deprecated module Tezos_data 2018-01-30 11:25:46 +01:00
Grégoire Henry
fda8b4ee5f Refactor: rename prota_alpha/lib_proto 2018-01-30 10:13:40 +01:00