Commit Graph

320 Commits

Author SHA1 Message Date
Tom Jack
dbb36e6fdc Use runtest to run tests 2019-11-21 12:28:38 -06:00
Tom Jack
81c49f4342 Fix/simplify big_maps using Babylon 2019-11-21 08:18:18 -06:00
Lesenechal Remi
f27f8c10d1 For collection loop: also capture variable in logical blocks
Also, the iterated element/s are appended tot he list of local declaration
2019-11-21 11:28:32 +01:00
Lesenechal Remi
725176a59d allow to pack message (aka lambda of type unit -> operation list) 2019-11-19 23:27:43 +01:00
Lesenechal Remi
f7d6a5ea58 allow to catch failwith's in our tests 2019-11-19 15:38:23 +01:00
galfour
ddc4b7b7a5 add anon functions; remove pre-block declarations; update tests 2019-11-18 16:10:48 +01:00
Christian Rinderknecht
759978393a Merge branch 'rinderknecht-dev' into 'dev'
Refactoring of PascaLIGO's front-end

See merge request ligolang/ligo!176
2019-11-06 17:17:02 +00:00
Christian Rinderknecht
fe90246e3a Fixed the printing of some AST nodes. 2019-11-06 17:23:49 +01:00
Christian Rinderknecht
70a9afcce2 Merge branch 'rinderknecht-dev' into 'dev'
Refactoring of Ligodity (CameLIGO) and making an AST pretty-printer

See merge request ligolang/ligo!172
2019-11-06 12:18:54 +00:00
Christian Rinderknecht
351025b52d Refactoring of Ligodity (CameLIGO) and making an AST pretty-printer
- AST.ml/AST.mli:
  - The AST now distinguishes the constructors `None` and `Some` as being
    predefined, as in PascaLIGO. See type `AST.constr_pattern`.
  - I removed the nodes specific to Liquidity,
    e.g. `let%entry`, and, in particular, the natural literals
    ending with `p`. Now it should be `n`, as in `10n`.
  - I renamed the node `TAlias` to `TVar`.
  - I have applied the rule of expanding type expressions after `of` when
    those were not records.
  - The type of the argument to a data constructor is now
    `type_expr`, instead of `cartesian`.
  - I added the patterns for bytes (`PBytes`) and natural literals (`PNat`).
  - I renamed the node `Sugar` into
    `PListComp` (meaning "pattern of list comprehension").
  - Record types in CameLIGO now must have at least one field declaration.
  - Replaced the type `closing` and `opening` with one type `compound`,
    which captures only the right combinations of opening and closing.
  - Components of tuples in a selection must not be written
    between parentheses. For example, `a.b.(1).(0)` is now
    `a.b.1.0`, as in PascaLIGO.
- LexToken.mli/LexToken.mll
  - I renamed the string literal `Str` into `String`.
  - I added the tokens `C_None` and `C_Some` (to distinguish the
    constructors `None` and `Some`. See AST.ml)
  - Fixed the function `mk_sym` so it does not fail with `failwith`, but
    with `Error Invalid_symbol`.
- Lexer.mll (shared)
  - I removed the character `%` from the identifiers (used to
    support Liquidity, like `entry%point` and `match%nat`).
  - I adde to the hint on broken strings: "or insert a backslash"
    (from a Gitlab issue).
- ParToken.mly
  - I added the tokens `C_None` and `C_Some` (to distinguish the
    constructors `None` and `Some`. See AST.ml and LexToken.mll)
- Parser.mly
  - Fixed the order of declarations in the AST (it was reversed).
  - I removed syntax support for Liquidity.
  - I added user-defined constructor applications to irrefutable
    patterns (the ones afer a `let`), even though only the type
    checker can decide that they are truly irrefutable because they
    are the only constructors of their types.
  - I added natural numbers and bytes to patterns.
  - Access of tuple components do not require parentheses now, like
    `a.b.1.0`.
  - I refactored the semantic actions.
  - I added the empty sequence `begin end`.
- ParserLog.ml/ParserLog.mli
  - I added a pretty-printer for the AST (with source locations).
- ParserMain.ml
  - The CLI for the pretty-printer is now `--verbose=ast`.
  - The old CLI `--verbose=ast` is now `--verbose=ast-tokens`.
- ligodity.ml (simplifier)
  - I removed the constructions of sets, lists and maps with
    `Set [...]`, `List [...]` and `Map [...]`, as there are already
    better ways (that is, more like the OCaml's way), like
    `Set.literal [...]` and `Map.literal [...]`. (The case for lists
    was entirely redundant with the rest of the language as it is.)
  - Everywhere there is now a non-empty list of elements, I made a
    change. In particular, I removed a corner case ("let without
    binding"), thanks to more precise OCaml types for non-empty
    lists.
  - I ported all the changes to the AST above.
- region.ml (vendors)
  - I changed the method `compact` so the end-line is not repeated
    if it is the same as the start line: this is even more compact. I
    use this in the new pretty-printer for the AST (see above)
- I updated all the CameLIGO contracts.
2019-11-04 23:51:47 +01:00
galfour
9fe5d821c3 Merge branch 'dev' into clean-sts-solver 2019-11-04 16:32:32 +01:00
Tom Jack
ba7a83d0f7 Deal with upstream MBytes changes 2019-11-02 17:54:33 -05:00
Tom Jack
b06f4d3f62 Delete protocol tests 2019-11-02 17:54:21 -05:00
Tom Jack
f739624185 Prepare for tezos upgrade 2019-11-02 17:38:39 -05:00
Suzanne Dupéron
1e06c24325 Merge branch 'dev' of gitlab.com:ligolang/ligo into clean-sts-solver 2019-10-31 17:18:09 -04:00
Tom Jack
58638c6a05 Merge branch 'feature/hex' into 'dev'
Add hex michelson output, use enums for format options

See merge request ligolang/ligo!162
2019-10-31 15:39:03 +00:00
Suzanne Dupéron
735bd8e668 Implementing subst over the AST 2019-10-29 01:55:53 -04:00
Suzanne Dupéron
dcf5a975d4 More of subst 2019-10-28 01:10:26 -04:00
Tom Jack
6956e8751d Add hex michelson output, use enums for format options 2019-10-26 12:57:22 -05:00
Tom Jack
dae4f58297 Combine adjacent DROP 2019-10-24 23:58:21 -05:00
galfour
27be6cfcba use apply for closures 2019-10-17 16:34:02 +02:00
galfour
8a4b9695e7 use dig/dug for get/set 2019-10-17 15:48:24 +02:00
galfour
56269231b3 upgrade to babylon 2019-10-17 11:45:27 +02:00
Suzanne Dupéron
5a58559edc Merge remote-tracking branch 'origin/dev' into HEAD 2019-10-11 16:59:45 -04:00
Tom Jack
047065f8ee Delete vestigial local repo stuff 2019-10-11 15:12:07 +00:00
Suzanne Dupéron
4fa54dd2c1 More progress on merging new typer and new dev 2019-10-10 01:23:55 -04:00
Christian Rinderknecht
bcf73d01bf Printing of tokens from the AST is now done in a Buffer.t 2019-10-09 16:07:13 +02:00
Pierre-Emmanuel Wulfman
59cb210b83 Interface for Ocaml code 2019-10-07 14:18:32 +00:00
Lesenechal Remi
4e333836cb ignore closure error in subexpression of argument 2019-10-03 15:36:06 +02:00
Lesenechal Remi
a7565145d5 add map_expression function in self_mini_c pass helpers 2019-10-02 18:31:15 +02:00
Georges Dupéron
2b5b23f266 WIP: fixing the build errors + missing non-merged code 2019-09-29 18:25:02 -04:00
Pierre-Emmanuel Wulfman
f657c71753 Merge done and repo build with no error 2019-09-27 14:55:09 +02:00
Tom Jack
09496ce4ca Generate field annotations for sum/record 2019-09-26 11:39:35 -05:00
Tom Jack
a521c01115 some michelson optimizations 2019-09-25 20:15:19 -05:00
galfour
720ef99c69 solve conflict 2019-09-22 22:17:28 +02:00
galfour
ad79188c4f add list pattern matching 2019-09-21 09:12:00 +02:00
Lesenechal Remi
25e3ab8e5d big map can be looked up 2019-09-20 21:33:14 +02:00
galfour
66efff631d add micheline 2019-09-20 18:56:55 +02:00
galfour
9a7c3ee54d Merge branch 'dev' into refactor/everything 2019-09-20 17:51:43 +02:00
galfour
015e197183 back on track 2019-09-19 01:34:37 +02:00
galfour
b619fa1f17 further down the road 2019-09-18 18:49:33 +02:00
Tom Jack
c867a4c4d4 Remove dune-project files 2019-09-09 13:59:08 -07:00
Tom Jack
e0b5910627 Try to fix CI again 2019-09-08 12:37:11 -07:00
galfour
cb1aa44ff4 moving stuff around 2019-09-08 12:17:24 +02:00
galfour
25b07af6ae merge dev conflict 2019-09-07 16:54:08 +02:00
galfour
f831793fbd y e s s s 2019-09-05 15:21:01 +02:00
galfour
32599ae90b removing tezos-modded 2019-09-04 20:19:09 +02:00
galfour
af588933f4 add closures 2019-08-21 10:28:27 +02:00
galfour
88261fd5e2 Merge branch 'dev' into feature/better-error-messages 2019-07-21 11:58:09 +02:00
galfour
9dd8e63cbf add iter for set and lists 2019-07-20 13:46:42 +02:00
galfour
33101820ec add set tests 2019-07-19 14:35:47 +02:00
Galfour
6e3209fa4f add manual tests; change display of errors; minor refactorings 2019-06-28 12:05:04 +00:00
Georges Dupéron
148daa32a2 Merge remote-tracking branch 'origin/dev' into HEAD 2019-06-13 12:03:46 +02:00
Matej Šima
072d753e91 Merge branch 'feature/more-operators' into 'dev'
Feature/more operators

See merge request ligolang/ligo!32
2019-06-12 20:34:16 +00:00
Georges Dupéron
0af274a3a4 Tutorial for the trace monad, bind operator (>>?) and ppx_let 2019-06-12 01:50:26 +02:00
Galfour
985eff44a9 more keywords ; add support for sets ; remove assert from keywords 2019-06-10 09:58:16 +00:00
Georges Dupéron
e6994cd2d9 typo 2019-06-10 10:23:18 +02:00
Georges Dupéron
c47daad439 Use sh, not bash 2019-06-10 10:23:18 +02:00
Georges Dupéron
e0228f352c fix build (my bad) 2019-06-05 14:26:01 +02:00
Georges Dupéron
24db060dae Use internal_assertion_fail instead of the simple_error that are just assertions 2019-06-05 11:38:59 +02:00
Galfour
0e17e8b274 minor fixes 2019-06-03 12:23:46 +00:00
Galfour
8c81432281 modify trace; oldify multifix 2019-06-03 10:33:13 +00:00
Galfour
6febd855c4 fix ligodity; add it to the bin; add source locations; merge 2019-06-01 11:29:31 +00:00
Galfour
320d0c1a72 various refactorings to prepare tests; tests for ligodity don't pass 2019-05-31 19:56:51 +00:00
Galfour
79af0abab3 propagate source-code locations to ast_typed 2019-05-28 17:02:40 +00:00
Galfour
c32ace3afc propagate source code locations 2019-05-28 15:36:14 +00:00
Galfour
50868302c6 minor rewriting; add docs 2019-05-28 10:46:22 +00:00
Georges Dupéron
5a13789a11 cleanup 2019-05-27 13:11:57 +02:00
Georges Dupéron
0880fb0cbf typo in sed script 2019-05-27 13:10:29 +02:00
Georges Dupéron
b3b87543ba Place the local copy of ligo in a -generated folder 2019-05-27 11:57:29 +02:00
Georges Dupéron
681fe53dd6 Merge repository tezos-modded 2019-05-27 11:57:15 +02:00
Georges Dupéron
fd513af745 Merge repository ligo-utils 2019-05-27 11:56:53 +02:00
Georges Dupéron
28d3bc8c3f Merge repository ligo-opam-repository 2019-05-27 11:54:29 +02:00
Georges Dupéron
870b998cc6 Removed submodules, will merge them with main repo 2019-05-27 11:52:49 +02:00
Georges Dupéron
d9756a048a move before merging repositories (part 2) 2019-05-27 11:26:11 +02:00
Georges Dupéron
92482176eb move before merging repositories 2019-05-27 11:18:48 +02:00
Georges Dupéron
7c8c6515b8 move before merging repositories 2019-05-27 11:08:26 +02:00
Georges Dupéron
335a878ff9 move before merging repositories (part 1) 2019-05-27 10:53:14 +02:00
Christian Rinderknecht
28b84e1e65 Fixed the translation of let-in. 2019-05-24 19:31:39 +02:00
Georges Dupéron
a0936d8eb5 Moved repository to ligolang namespace 2019-05-24 11:36:39 +02:00
Christian Rinderknecht
5fd234c8c8 Removed unused src/bin_node. 2019-05-16 15:21:46 +02:00
Georges Dupéron
8821e6c01e Rewrite local opam repository into a different folder and .gitignore it 2019-05-15 16:45:37 +02:00
Christian Rinderknecht
dcbfbf781d Extended lib_utils/pos.ml{i}. First import of Ligodity. (No "simplify" yet.) 2019-05-15 16:04:37 +02:00
Georges Dupéron
22b331dbed Added tests to build, fixed some unused variables. 2019-05-15 15:17:04 +02:00
Georges Dupéron
7f94d49243 update submodule 2019-05-14 20:19:23 +02:00
Georges Dupéron
bbf239dbe4 Update submodule 2019-05-14 20:12:39 +02:00
Georges Dupéron
aa61e86657 Updated ligo-opam-repository submodule. 2019-05-14 19:42:33 +02:00
Georges Dupéron
60f99b3e9c Moved script to rewrite OPAM repository outside of the .gitlab-ci.yml in ligo repo 2019-05-14 18:05:47 +02:00
Georges Dupéron
c43570a82d Move into src/; add vendors/ subfolder, add CI script. 2019-05-14 17:53:44 +02:00
Elliot Cameron
6ce10791b0 Ledger: add deauth APDU support, better get-authorized-key support, and friendlier CLI 2019-03-06 16:05:23 +00:00
Pierre Boutillier
d7ba8bb07d Resto: Fix #480: Keep the host: set by the user with TEZOS_SIGNER_HTTP_HEADERS
This is a fixup of 21bb9436371741a8cf643cfc6218ace9ebfecc19
2019-02-27 15:42:37 +00:00
Grégoire Henry
33a7ca51c3
Client: Use Host in HTTP requests
and add proper error message when the node refuses connection for
unallowed origin (CORS).
2019-02-26 12:00:37 +01:00
Grégoire Henry
24686ae8f2
Shell/RPC: enforce Host when using CORS. 2019-02-26 12:00:32 +01:00
Sebastien Mondet
da4a99ac27
Add support for test-chain-related APDUs 2019-02-25 15:44:18 +01:00
Raphaël Proust
575aafc554 vendors: add synopsis to each opam file 2019-02-25 02:03:12 +00:00
Sebastien Mondet
fd2c043a5d Return proper error message in ocp-resto/client 2019-02-14 11:22:52 -05:00
Pierre Boutillier
677d2ae9d6 Synchronize (and fix) maximal size of lmdb dbs
Store can now be up to 40 Go large (was 4 To!)
Context can now be up to 400 Go large (was 40 Go)
2019-01-29 19:23:48 +00:00
Pierre Boutillier
03fc4b2e33
fixup 242c97d1 ocplib-json-types: 'Variable defintion path in json_schema' 2019-01-23 13:12:42 +01:00
Pierre Boutillier
7335d95308
ocplib-json-typed: inline records have been introduiced in OCaml 4.03 2019-01-22 23:17:54 +01:00
Pierre Boutillier
242c97d1f1
ocplib-json-typed: import ' Variable defintion path in json_schema' from upstream
It is upstream acfb41f711cbda67680b84d0f8292e2a1849c711
2019-01-22 23:17:54 +01:00
Pierre Boutillier
a10b7dc5b5
ocplib-json-typed: Makefile update for dune
We don't care as we're not using the Makefile directly but:
dune: --dev is no longer accepted as it is now the default.
2019-01-22 23:17:53 +01:00
Pierre Boutillier
8012bdca65
ocplib-json-typed: follow upstream file organization 2019-01-22 23:17:53 +01:00
Pierre Boutillier
28da6ef03b
Deps: be compatible with Js_of_ocaml.3.3.0
It now uses dune and "wraps" its library.
2019-01-22 17:16:52 +01:00
Grégoire Henry
dbf4736e6b
Opam: update package description to opam.2.0
Co-authored-by: Pietro Abate <pietro.abate@nomadic-labs.com>
Co-authored-by: Gregoire Henry <gregoire.henry@tezos.com>
2019-01-21 17:54:19 +01:00
Grégoire Henry
de171a63f0
OPAM: strict version constraints on dune are not required anymore 2019-01-21 17:54:18 +01:00
Pierre Chambart
56936c7a1e
Add sync test option 2018-11-22 19:06:19 +01:00
Vincent Botbol
3405231a1f
Resto: decode uri before converting the path 2018-10-17 15:06:34 +02:00
Pietro Abate
000b9af6f9
vendors,hacl: use more generic gcc options
Tentative fix for "Illegal instruction (core dumped)" on certain
architectures du to gcc over optimization. This can possibly
introduce a performance regression.

@chambart for his gbd-foo skills
2018-10-11 18:36:35 +02:00
Vincent Bernardoff
50f367e27b
Vendors/ledgerwallet: curve parsers and pretty-printers 2018-10-04 15:28:21 +02:00
Vincent Bernardoff
9ce0018506
Ledger: match error codes with V1.4.0 2018-10-03 14:08:39 +02:00
Vincent Bernardoff
4bb28cd285
Ledger: implement authorized-path APDU 2018-10-03 14:08:39 +02:00
Vincent Bernardoff
92715a005b
Ledger: implement git-commit APDU 2018-10-03 14:08:37 +02:00
Pierre Chambart
43bf1b4cc4
Storage: better use of LMDB transactions for better perf and to force sync at commit
Review and edit by @klalplok, @vbot, @samoht.
2018-09-28 15:12:01 +02:00
Pierre Chambart
09bf4e4819
Store and Context: open the database with the nometasync flag
This mode maintains the coherency of the database in case of crash,
but can drop the last commits. This is not a problem for us since
every data is recoverable.
2018-09-24 20:29:58 +02:00
Pierre Chambart
bfeff69794 Vendors/lmdb: Change the default sync flags
The default was unsafe but fast, we change that to the safe version.
2018-09-24 18:19:22 +00:00
Sebastien Mondet
39e8c4f6b5
Fix typo in Baking app name 2018-09-24 20:15:25 +02:00
Sebastien Mondet
b329b604a7
Improve display of Ledger apps names/versions 2018-09-24 20:15:25 +02:00
Vincent Botbol
04cd08f13f
Hotfix: print unhandled cases 2018-09-24 19:43:41 +02:00
Pierre Chambart
bde9ba771b
Irmin_lmdb: Add NoReadahead flag to lmdb open 2018-09-12 14:58:44 +02:00
Arthur B
7206ccd560
Indentation fixes 2018-08-31 15:46:56 +02:00
Vincent Bernardoff
b9eba66b4c
Vendors/BIP39: drop nocrypto, use new pbkdf 2018-08-20 11:56:36 +02:00
Vincent Bernardoff
5294a144b1
Vendors/Pbkdf: drop nocrypto 2018-08-20 11:56:35 +02:00
Vincent Bernardoff
a224c80462
Hacl: refactoring 2018-08-20 11:56:35 +02:00
Vincent Bernardoff
928ee9d3a0
Hacl: add HMAC_SHA512 2018-08-20 11:56:34 +02:00
Vincent Bernardoff
a3cfcc091a
Hacl: expose hashing constants 2018-08-20 11:56:33 +02:00
Vincent Bernardoff
1a93df75ae
Hacl: refactoring 2018-08-20 11:56:30 +02:00
Pietro Abate
326f7d6f5e
Vendors: Fix compilation warning in LMDB (close #329) 2018-08-20 10:58:17 +02:00
Vincent Bernardoff
4a436c2f18
Vendors/lmdb: add CFLAGS 2018-08-09 21:09:11 +02:00
Vincent Bernardoff
ccc61dbbc4 Vendors/lmdb: fixes in OCaml stubs 2018-08-09 18:32:21 +00:00
Vincent Bernardoff
2a4c6762a7 Vendors/lmdb: upgrade to latest version 2018-08-09 18:32:21 +00:00
Grégoire Henry
87e0de9826 Dune: use the new syntax 2018-08-01 10:52:24 +02:00
Grégoire Henry
5362b321d9 Dune: rename s/jbuild/dune/ 2018-08-01 10:32:12 +02:00
Pietro
c7cfdcb4d9 [Doc]: Fix minor warnings and errors in the doc 2018-07-25 15:58:38 +02:00
Pietro
b89682e441 Build: Jbuilder -> Dune 1.0.1 2018-07-24 19:15:04 +02:00
Benjamin Canou
a0b94cff2b Resto: automatically retry a few times on 502 gateway errors 2018-07-06 23:28:33 +02:00
Pierre Boutillier
140bd6b1ca Tezos is now Open Source 2018-06-30 17:41:32 +02:00
Vincent Botbol
85cac4282c Irmin_lmdb: make sure we open the file with consistent rights 2018-06-29 17:50:17 +02:00
Vincent Bernardoff
aceee178e1 Vendors: upgrade ocaml-ledger-wallet
* Use result instead of exceptions
* Support newer versions of the companion Tezos/TezBake Ledger apps
2018-06-29 01:43:29 +00:00
Benjamin Canou
1f213b385b Vendors/Resto: allow client to send host header 2018-06-27 22:57:02 +02:00
Marco Stronati
509a8a801a hacl: quick fix to compile on aarch64 2018-06-25 13:22:09 +00:00
Benjamin Canou
daaaf75e67 Vendors/Resto: allow passing custom headers in requests 2018-06-21 18:03:14 +02:00
Benjamin Canou
a838f5d55c Fix OPAM dependencies 2018-06-19 04:00:09 +02:00
Grégoire Henry
0a71db1652 Opam: upgrade to irmin-1.4.0 2018-06-18 11:39:37 +00:00
Vincent Bernardoff
3a2a11d888 Vendors: import ocaml-ledger-wallet 2018-06-16 16:26:19 +02:00
Vincent Bernardoff
68330036a1 Crypto: add test vectors for P256 2018-06-13 23:59:16 +00:00
Pierre Boutillier
0addf499c5 Remove assembly code from uECC 2018-06-13 23:59:16 +00:00
Vincent Bernardoff
9d18f7846d Crypto: disable P256 signing 2018-06-13 23:59:16 +00:00
Vincent Bernardoff
7df49b62e1 Crypto: import uecc 2018-06-13 23:59:16 +00:00
vbotbol
e314ac635d Storage: add readonly option 2018-06-13 01:00:47 +02:00
Vincent Bernardoff
a726d7363b Opam: remove irmin-leveldb 2018-06-13 00:55:37 +02:00