Merge remote-tracking branch 'origin/dev' into rinderknecht-dev
This commit is contained in:
commit
1299ecac6b
6
.dockerignore
Normal file
6
.dockerignore
Normal file
@ -0,0 +1,6 @@
|
||||
dist
|
||||
_opam
|
||||
_build
|
||||
docker
|
||||
gitlab-pages
|
||||
Makefile
|
@ -1,12 +1,27 @@
|
||||
# TODO: remove this as submodules aren't used anymore.
|
||||
variables:
|
||||
GIT_SUBMODULE_STRATEGY: recursive
|
||||
build_binary_script: "./scripts/distribution/generic/build.sh"
|
||||
package_binary_script: "./scripts/distribution/generic/package.sh"
|
||||
|
||||
stages:
|
||||
- build_docker
|
||||
- build_and_deploy_docker
|
||||
- build_and_deploy_website
|
||||
- test
|
||||
- build_and_deploy_docker
|
||||
- build_and_package_binaries
|
||||
- build_and_deploy_website
|
||||
|
||||
.build_binary: &build_binary
|
||||
stage: build_and_package_binaries
|
||||
script:
|
||||
- $build_binary_script "$target_os_family" "$target_os" "$target_os_version"
|
||||
- $package_binary_script "$target_os_family" "$target_os" "$target_os_version"
|
||||
artifacts:
|
||||
paths:
|
||||
- dist/package/**/*
|
||||
only:
|
||||
- master
|
||||
- dev
|
||||
|
||||
.website_build: &website_build
|
||||
stage: build_and_deploy_website
|
||||
@ -28,6 +43,9 @@ stages:
|
||||
# build with odoc
|
||||
- dune build @doc
|
||||
|
||||
# copy .deb packages into website
|
||||
- find dist -name \*.deb -exec sh -c 'cp {} gitlab-pages/website/static/deb/ligo_$(basename $(dirname {})).deb' \;
|
||||
|
||||
# npm
|
||||
- cd gitlab-pages/website
|
||||
- npm install
|
||||
@ -71,30 +89,12 @@ local-dune-job:
|
||||
- scripts/build_ligo_local.sh
|
||||
- dune build @ligo-test
|
||||
|
||||
remote-repo-job:
|
||||
<<: *before_script
|
||||
stage: test
|
||||
script:
|
||||
# Add repository
|
||||
- opam repository add ligo-repository https://gitlab.com/ligolang/ligo.git
|
||||
- eval $(opam config env)
|
||||
- opam install -y ligo
|
||||
# Used in the IDE
|
||||
#- opam install -y user-setup
|
||||
#- opam install -y merlin
|
||||
#- opam install -y ocp-indent
|
||||
#- opam user-setup install
|
||||
only:
|
||||
- master
|
||||
|
||||
# TODO: uncomment this
|
||||
|
||||
# Run a docker build without publishing to the registry
|
||||
build-current-docker-image:
|
||||
stage: build_docker
|
||||
<<: *docker
|
||||
script:
|
||||
- docker build -t $LIGO_REGISTRY_IMAGE:next -f ./docker/Dockerfile .
|
||||
- sh scripts/build_docker_image.sh
|
||||
- sh scripts/test_cli.sh
|
||||
except:
|
||||
- master
|
||||
@ -106,13 +106,51 @@ build-and-publish-latest-docker-image:
|
||||
stage: build_and_deploy_docker
|
||||
<<: *docker
|
||||
script:
|
||||
- docker build -t $LIGO_REGISTRY_IMAGE:next -f ./docker/Dockerfile .
|
||||
- sh scripts/build_docker_image.sh
|
||||
- sh scripts/test_cli.sh
|
||||
- docker login -u $LIGO_REGISTRY_USER -p $LIGO_REGISTRY_PASSWORD
|
||||
- docker push $LIGO_REGISTRY_IMAGE:next
|
||||
only:
|
||||
- dev
|
||||
|
||||
# It'd be a good idea to generate those jobs dynamically,
|
||||
# based on desired targets
|
||||
build-and-package-debian-9:
|
||||
<<: *docker
|
||||
stage: build_and_package_binaries
|
||||
variables:
|
||||
target_os_family: "debian"
|
||||
target_os: "debian"
|
||||
target_os_version: "9"
|
||||
<<: *build_binary
|
||||
|
||||
build-and-package-debian-10:
|
||||
<<: *docker
|
||||
stage: build_and_package_binaries
|
||||
variables:
|
||||
target_os_family: "debian"
|
||||
target_os: "debian"
|
||||
target_os_version: "10"
|
||||
<<: *build_binary
|
||||
|
||||
build-and-package-ubuntu-18-04:
|
||||
<<: *docker
|
||||
stage: build_and_package_binaries
|
||||
variables:
|
||||
target_os_family: "debian"
|
||||
target_os: "ubuntu"
|
||||
target_os_version: "18.04"
|
||||
<<: *build_binary
|
||||
|
||||
build-and-package-ubuntu-19-04:
|
||||
<<: *docker
|
||||
stage: build_and_package_binaries
|
||||
variables:
|
||||
target_os_family: "debian"
|
||||
target_os: "ubuntu"
|
||||
target_os_version: "19.04"
|
||||
<<: *build_binary
|
||||
|
||||
# Pages are deployed from both master & dev, be careful not to override 'next'
|
||||
# in case something gets merged into 'dev' while releasing.
|
||||
pages:
|
||||
|
4
dist/.gitignore
vendored
Normal file
4
dist/.gitignore
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
# Ignore everything in this directory
|
||||
*
|
||||
# Except this file
|
||||
!.gitignore
|
0
docker/distribution/debian/distribute.Dockerfile
Normal file
0
docker/distribution/debian/distribute.Dockerfile
Normal file
32
docker/distribution/debian/package.Dockerfile
Normal file
32
docker/distribution/debian/package.Dockerfile
Normal file
@ -0,0 +1,32 @@
|
||||
ARG targetBuildImage
|
||||
FROM ${targetBuildImage}
|
||||
ARG version
|
||||
|
||||
RUN apt-get update -qq
|
||||
RUN apt-get -y -qq install \
|
||||
dput \
|
||||
devscripts
|
||||
|
||||
RUN mkdir /package && mkdir /package/bin && mkdir /package/DEBIAN && mkdir /package/dist
|
||||
# @TODO: make the binary path configurable
|
||||
RUN cp /home/opam/.opam/4.07/bin/ligo /package/bin/ligo
|
||||
|
||||
# @TODO: inherit version (and other details) from the ligo opam package definition
|
||||
# In our case we're using the version field to name our package accordingly,
|
||||
# however this is most likely not ideal
|
||||
# Also, the architecture field should not be 'all' but rather specific instead.
|
||||
RUN echo "Package: ligo\n\
|
||||
Version: $version\n\
|
||||
Architecture: all\n\
|
||||
Maintainer: info@ligolang.org\n\
|
||||
Depends: libev-dev, perl, pkg-config, libgmp-dev, libhidapi-dev, m4, libcap-dev, bubblewrap, rsync\n\
|
||||
Homepage: http://ligolang.org\n\
|
||||
Description: LIGO is a statically typed high-level smart-contract language that compiles down to Michelson." >> /package/DEBIAN/control
|
||||
|
||||
RUN cd /package/dist && dpkg-deb --build /package .
|
||||
|
||||
# Test the package
|
||||
# Optionally this could/should be done in a more pristine docker environment - in a separate image
|
||||
RUN apt-get update -qq
|
||||
RUN apt-get -y -f install "/package/dist/$(ls /package/dist)"
|
||||
RUN ligo --help
|
@ -1,5 +1,7 @@
|
||||
# At the moment, this really means 4.07.1
|
||||
FROM ocaml/opam2:4.07
|
||||
ARG target
|
||||
FROM ocaml/opam2:${target}
|
||||
|
||||
RUN opam switch 4.07 && eval $(opam env)
|
||||
|
||||
USER root
|
||||
|
||||
@ -10,7 +12,6 @@ USER root
|
||||
# because the currently checkout out version (from git) will be used
|
||||
# to build the image
|
||||
ADD . /ligo
|
||||
|
||||
# Set the current working directory to /ligo for
|
||||
# the upcoming scripts
|
||||
WORKDIR /ligo
|
||||
@ -18,10 +19,6 @@ WORKDIR /ligo
|
||||
# Install required native dependencies
|
||||
RUN sh scripts/install_native_dependencies.sh
|
||||
|
||||
# Install OPAM
|
||||
# TODO: or scripts/install_build_environment.sh ?
|
||||
RUN sh scripts/install_opam.sh
|
||||
|
||||
# Add tezos repository
|
||||
RUN sh scripts/setup_repos.sh
|
||||
|
78
gitlab-pages/docs/contributors/ligo_test_guide.md
Normal file
78
gitlab-pages/docs/contributors/ligo_test_guide.md
Normal file
@ -0,0 +1,78 @@
|
||||
# Testing LIGO
|
||||
|
||||
Adding to the LIGO test suite is one of the more accessible ways to contribute. It exposes you to the compiler structure and primitives without necessarily demanding a deep understanding of OCaml or compiler development. And you'll probably become more familiar with LIGO itself in the process, which is helpful.
|
||||
|
||||
Unfortunately right now LIGO itself doesn't have a good way to do automated testing. So the tests are written in OCaml, outside of the LIGO language. Thankfully the test code is typically less demanding than the features being tested. These tests are currently contained in [src/test](https://gitlab.com/ligolang/ligo/tree/dev/src/test), but the bulk are integration tests which rely on test contracts kept in [src/test/contracts](https://gitlab.com/ligolang/ligo/tree/dev/src/test/contracts). If you're new to LIGO, reading these contracts can be a useful introduction to a given syntax. In the future we plan
|
||||
to have detailed documentation for each syntax, but at the moment we only have a reference manual for [PascaLIGO](https://gitlab.com/ligolang/ligo/blob/dev/src/passes/1-parser/pascaligo/Doc/pascaligo.md)
|
||||
|
||||
## How To Find Good Test Cases
|
||||
|
||||
Your first question is probably "If I'm not already experienced, how do I know what to test?". There's a handful of things you can do to systematically find good test cases. All of them will either get you more familiar with the LIGO code base or LIGO itself.
|
||||
|
||||
### Extending Existing Test Cases
|
||||
|
||||
The fastest way to improve LIGO's test coverage is to extend existing test cases. This means considering the test cases that already exist, and thinking of things they don't cover or situations they'll fail on. A good deal of inference is required for this, but it requires minimal experience with the existing code.
|
||||
|
||||
### Studying The Parsers For Gaps In Coverage
|
||||
|
||||
LIGO is divided into a **front end** which handles syntax and a **backend** which optimizes and compiles a core language shared between syntaxes. You can find basic test cases for a particular LIGO syntax by studying its parser. You will find these under [src/passes/1-parser](https://gitlab.com/ligolang/ligo/tree/dev/src/passes/1-parser). One kind of useful test focuses on **coverage**, whether we have any testing at all for a particular aspect of a syntax. You can find these by carefully going over the syntax tree for a syntax (probably best read by looking at its `Parser.mly`) and comparing each branch to the test suite. While these tests are plentiful at the time of writing, they will eventually be filled in reliably as part of writing a new syntax.
|
||||
|
||||
### Creating Interesting Test Cases By Using LIGO
|
||||
|
||||
Another kind of useful test focuses on **depth**, whether the features are put through a wide variety of complex scenarios to make sure they stand up to real world use. One of the best ways to write these
|
||||
is to use LIGO for a real project. This will require some time and energy, not just to learn LIGO but to write projects complex enough to stretch the limits of what the language can do. At the same time however it will get you used to engaging with LIGO from a developers perspective, asking how things could be better or what features are underdeveloped. If your project has practical uses, you will also be contributing to the Tezos/LIGO ecosystem while you learn. Note that because LIGO is open source, in under for us to incorporate your work as a test case it needs to be licensed in a way that's compatible with LIGO.
|
||||
|
||||
### Fuzzing (Speculative)
|
||||
|
||||
In the future you'll be able to [use fuzzing](https://en.wikipedia.org/wiki/Fuzzing) to generate test cases for LIGO. Fuzzing is often useful for finding 'weird' bugs on code paths that humans normally wouldn't stumble into. This makes it a useful supplement to human testing.
|
||||
|
||||
## Structure of LIGO Tests
|
||||
|
||||
LIGO's OCaml-based tests are written in [alcotest](https://github.com/mirage/alcotest/). However the tests you encounter in [src/test/integration_tests.ml](https://gitlab.com/ligolang/ligo/blob/dev/src/test/integration_tests.ml) are built on top of some abstractions, currently defined in [src/test/test_helpers.ml](https://gitlab.com/ligolang/ligo/blob/dev/src/test/test_helpers.ml). The use of these can be inferred fairly well from looking at existing tests, but lets break a few of them down for analysis. We'll first analyze a short integration test for assignment:
|
||||
|
||||
### Assignment Test
|
||||
let assign () : unit result =
|
||||
let%bind program = type_file "./contracts/assign.ligo" in
|
||||
let make_expect = fun n -> n + 1 in
|
||||
expect_eq_n_int program "main" make_expect
|
||||
|
||||
### assign.ligo
|
||||
function main (const i : int) : int is
|
||||
begin
|
||||
i := i + 1 ;
|
||||
end with i
|
||||
|
||||
|
||||
So what's going on here? We have a function which takes no arguments and returns a `unit result`. We then define two variables, a `program` which is read from disk and fed to the LIGO compiler; and a comparison function `make_expect` which takes an integer and adds one to it. Using `expect_eq_n_int` the `program`'s main function is run and compared to the result of providing the same input to `make_expect`. This gives us some flavor of what to expect from these integration tests. Notice that the `main` argument given to `expect_eq_n_int` corresponds to the name of the function in `assign.ligo`. We can see in more complex tests that we're able to pull the values of arbitrary expressions or function calls from LIGO test contracts. Consider:
|
||||
|
||||
### Annotation Test
|
||||
let annotation () : unit result =
|
||||
let%bind program = type_file "./contracts/annotation.ligo" in
|
||||
let%bind () =
|
||||
expect_eq_evaluate program "lst" (e_list [])
|
||||
in
|
||||
let%bind () =
|
||||
expect_eq_evaluate program "address" (e_address "tz1KqTpEZ7Yob7QbPE4Hy4Wo8fHG8LhKxZSx")
|
||||
in
|
||||
let%bind () =
|
||||
expect_eq_evaluate program "address_2" (e_address "tz1KqTpEZ7Yob7QbPE4Hy4Wo8fHG8LhKxZSx")
|
||||
in
|
||||
ok ()
|
||||
|
||||
### annotation.ligo
|
||||
const lst : list(int) = list [] ;
|
||||
|
||||
const address : address = "tz1KqTpEZ7Yob7QbPE4Hy4Wo8fHG8LhKxZSx" ;
|
||||
|
||||
const address_2 : address = ("tz1KqTpEZ7Yob7QbPE4Hy4Wo8fHG8LhKxZSx" : address) ;
|
||||
|
||||
Here what's going on is similar to the last program; `expect_eq_evaluate` runs a program and then pulls a particular named value from the final program state. For example, once the program stops running the value of `address` is `"tz1KqTpEZ7Yob7QbPE4Hy4Wo8fHG8LhKxZSx"`. The *comparison* however is made to a constructed expression. Remember that we're testing from OCaml, but the program is written and evaluated as LIGO. In order to provide a proper comparison, we convert our expected test values into LIGO expressions and data. Constructors such as `e_list` and `e_address` provide a bridge between LIGO and OCaml. Their definitions can be found in files such as [src/stages/ast_simplified/combinators.ml](https://gitlab.com/ligolang/ligo/blob/dev/src/stages/ast_simplified/combinators.ml), or using [Merlin's definition point finder](https://github.com/ocaml/merlin/wiki). These same functions are used during the simplification stage of LIGO compilation, so becoming familiar with them will help prepare you to work on the [front end](contributors/big-picture/front-end/).
|
||||
|
||||
## How To Write A Test For LIGO
|
||||
|
||||
What if we want to write a test of our own? If the test is in the integration test vein (which it probably is if you're testing new syntax or features), then the process looks something like:
|
||||
|
||||
1. Write a test contract which uses the new syntax or feature in [src/test/contracts](https://gitlab.com/ligolang/ligo/tree/dev/src/test/contracts).
|
||||
2. Write an integration test in [src/test/integration_tests.ml](https://gitlab.com/ligolang/ligo/blob/dev/src/test/integration_tests.ml) in the vein of existing tests, make sure you add it to the test runner that is currently located at the bottom of the file.
|
||||
3. Write the feature, assuming it doesn't already exist. Build the resulting version of LIGO without errors.
|
||||
4. Run the test suite, see if your test(s) pass. If they do, you're probably done. If not it's time to go debugging.
|
@ -3,7 +3,7 @@ id: installation
|
||||
title: Installation
|
||||
---
|
||||
|
||||
There are currently two ways to get started with Ligo, both of those will allow you to use the Ligo CLI with your contracts. You can choose to use either a Docker image, or to compile & build the Ligo CLI yourself.
|
||||
There are currently two ways to get started with Ligo. You can choose to either use a Docker image, or to install packages for your Debian Linux distribution.
|
||||
|
||||
## Dockerized installation (recommended)
|
||||
|
||||
@ -40,6 +40,12 @@ ligo --help
|
||||
```
|
||||
|
||||
|
||||
## Manual installation (advanced)
|
||||
## Debian Linux package installation
|
||||
|
||||
We have produced .deb packages for a few Debian Linuxes. They will install a global `ligo` executable. You can install them in the usual way.
|
||||
|
||||
- [Ubuntu 18.04](/deb/ligo_ubuntu-18.04.deb)
|
||||
- [Ubuntu 19.04](/deb/ligo_ubuntu-19.04.deb)
|
||||
- [Debian 9](/deb/ligo_debian-9.deb)
|
||||
- [Debian 10](/deb/ligo_debian-10.deb)
|
||||
|
||||
For now, please refer to the steps described in the [Dockerfile](https://gitlab.com/ligolang/ligo/blob/master/docker/Dockerfile).
|
1
gitlab-pages/website/static/deb/.gitignore
vendored
Normal file
1
gitlab-pages/website/static/deb/.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
||||
*
|
BIN
index.tar.gz
BIN
index.tar.gz
Binary file not shown.
@ -1,29 +0,0 @@
|
||||
opam-version: "2.0"
|
||||
name: "bip39"
|
||||
version: "dev"
|
||||
maintainer: "Vincent Bernardoff <vb@luminar.eu.org>"
|
||||
authors: ["Vincent Bernardoff <vb@luminar.eu.org>"]
|
||||
homepage: "https://github.com/vbmithr/ocaml-bip39"
|
||||
doc: "https://vbmithr.github.io/ocaml-bip39/doc"
|
||||
synopsis: "Bitcoin's BIP39 implementation"
|
||||
license: "ISC"
|
||||
dev-repo: "git+https://github.com/vbmithr/ocaml-bip39.git"
|
||||
bug-reports: "https://github.com/vbmithr/ocaml-bip39/issues"
|
||||
tags: []
|
||||
build: [
|
||||
[ "dune" "build" "-j" jobs "-p" name "@install" ]
|
||||
[ "mv" "vendors/tezos-modded/vendors/ocaml-bip39/bip39.install" "." ]
|
||||
]
|
||||
depends: [
|
||||
"dune" {build & >= "1.0.1"}
|
||||
"base" {build & >= "v0.10.0"}
|
||||
"stdio" {build & >= "v0.10.0"}
|
||||
"hacl"
|
||||
"bigstring" {>= "0.2"}
|
||||
"pbkdf" {>= "0.2.0"}
|
||||
"hex" {with-test & >= "1.2.0"}
|
||||
"alcotest" {with-test & >= "0.8.1"}
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,24 +0,0 @@
|
||||
version: "dev"
|
||||
opam-version: "2.0"
|
||||
name: "blake2"
|
||||
authors: "Vincent Bernardoff <vb@luminar.eu.org>"
|
||||
maintainer: "Vincent Bernardoff <vb@luminar.eu.org>"
|
||||
license: "ISC"
|
||||
synopsis: "Cryptography for Tezos"
|
||||
homepage: "https://github.com/vbmithr/ocaml-blake2"
|
||||
bug-reports: "https://github.com/vbmithr/ocaml-blake2/issues"
|
||||
dev-repo: "git://github.com/vbmithr/ocaml-blake2"
|
||||
build: [
|
||||
[ "dune" "build" "-j" jobs "-p" name "@install" ]
|
||||
[ "mv" "vendors/tezos-modded/vendors/ocaml-blake2/blake2.install" "." ]
|
||||
]
|
||||
run-test: [ "dune" "runtest" "-p" name "-j" jobs ]
|
||||
depends: [
|
||||
"dune" {build & >= "1.0.1"}
|
||||
"bigstring" {>= "0.1.1"}
|
||||
"alcotest" { with-test }
|
||||
"hex" {with-test & >= "1.2.0"}
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,28 +0,0 @@
|
||||
version: "dev"
|
||||
opam-version: "2.0"
|
||||
name: "hacl"
|
||||
authors: [ "Vincent Bernardoff <vb@luminar.eu.org>" "Marco Stronati <marco@stronati.org>" ]
|
||||
maintainer: "Vincent Bernardoff <vb@luminar.eu.org>"
|
||||
synopsis: "Tezos binding for Hacl*"
|
||||
homepage: "https://gitlab.com/tezos/tezos"
|
||||
bug-reports: "https://gitlab.com/tezos/tezos/issues"
|
||||
dev-repo: "git+https://gitlab.com/tezos/tezos.git"
|
||||
license: "MIT"
|
||||
depends: [
|
||||
"dune" {build & >= "1.0.1"}
|
||||
"bigstring" {>= "0.1.1"}
|
||||
"ocplib-endian" {>= "1.0"}
|
||||
"zarith" {>= "1.7"}
|
||||
"alcotest" {with-test & >= "0.8.1"}
|
||||
"hex" {with-test & >= "1.2.0"}
|
||||
"base"
|
||||
"stdio"
|
||||
]
|
||||
build: [
|
||||
[ "dune" "build" "-j" jobs "-p" name "@install" ]
|
||||
[ "mv" "vendors/tezos-modded/vendors/ocaml-hacl/hacl.install" "." ]
|
||||
]
|
||||
run-test: [ "dune" "runtest" "-p" name "-j" jobs ]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,27 +0,0 @@
|
||||
version: "dev"
|
||||
name: "irmin-lmdb"
|
||||
opam-version: "2.0"
|
||||
maintainer: "gregoire.henry@tezos.com"
|
||||
authors: ["Grégoire Henry"]
|
||||
license: "ISC"
|
||||
homepage: "https://gitlab.com/tezos/irmin-lmdb"
|
||||
bug-reports: "https://gitlab.com/tezos/irmin-lmdb/issues"
|
||||
dev-repo: "git+https://gitlab.com/tezos/irmin-lmdb.git"
|
||||
doc: "https://tezos.gitlab.io/irmin-lmdb/"
|
||||
synopsis: "LMDB backend for Irmin"
|
||||
|
||||
build: [
|
||||
["dune" "subst"] {pinned}
|
||||
["dune" "build" "-p" name "-j" jobs]
|
||||
[ "mv" "vendors/tezos-modded/vendors/irmin-lmdb/irmin-lmdb.install" "." ]
|
||||
]
|
||||
run-test: ["dune" "runtest" "-p" name]
|
||||
|
||||
depends: [
|
||||
"dune" {build & >= "1.0.1"}
|
||||
"irmin" {>= "1.4.0"}
|
||||
"lmdb" {>= "0.1"}
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,22 +0,0 @@
|
||||
version: "dev"
|
||||
opam-version: "2.0"
|
||||
name: "ledgerwallet-tezos"
|
||||
authors: "Vincent Bernardoff <vb@luminar.eu.org>"
|
||||
maintainer: "Vincent Bernardoff <vb@luminar.eu.org>"
|
||||
license: "ISC"
|
||||
synopsis: "Ledger wallet library for OCaml: Tezos app"
|
||||
homepage: "https://github.com/vbmithr/ocaml-ledger-wallet"
|
||||
bug-reports: "https://github.com/vbmithr/ocaml-ledger-wallet/issues"
|
||||
dev-repo: "git://github.com/vbmithr/ocaml-ledger-wallet"
|
||||
build: [
|
||||
[ "dune" "build" "-j" jobs "-p" name "@install" ]
|
||||
[ "mv" "vendors/tezos-modded/vendors/ocaml-ledger-wallet/ledgerwallet-tezos.install" "." ]
|
||||
]
|
||||
run-test: [ "dune" "runtest" "-p" name "-j" jobs ]
|
||||
depends: [
|
||||
"dune" {build & >= "1.0.1"}
|
||||
"ledgerwallet" {= "dev"}
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,24 +0,0 @@
|
||||
opam-version: "2.0"
|
||||
version: "dev"
|
||||
name: "ledgerwallet"
|
||||
authors: "Vincent Bernardoff <vb@luminar.eu.org>"
|
||||
maintainer: "Vincent Bernardoff <vb@luminar.eu.org>"
|
||||
license: "ISC"
|
||||
synopsis: "Ledger wallet library for OCaml"
|
||||
homepage: "https://github.com/vbmithr/ocaml-ledger-wallet"
|
||||
bug-reports: "https://github.com/vbmithr/ocaml-ledger-wallet/issues"
|
||||
dev-repo: "git://github.com/vbmithr/ocaml-ledger-wallet"
|
||||
build: [
|
||||
[ "dune" "build" "-j" jobs "-p" name "@install" ]
|
||||
[ "mv" "vendors/tezos-modded/vendors/ocaml-ledger-wallet/ledgerwallet.install" "." ]
|
||||
]
|
||||
run-test: [ "dune" "runtest" "-p" name "-j" jobs ]
|
||||
depends: [
|
||||
"dune" {build & >= "1.0.1"}
|
||||
"rresult" {>= "0.5.0"}
|
||||
"cstruct" {>= "3.2.1"}
|
||||
"hidapi" {>= "1.0"}
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,29 +0,0 @@
|
||||
version: "dev"
|
||||
name: "ligo"
|
||||
opam-version: "2.0"
|
||||
maintainer: "ligolang@gmail.com"
|
||||
authors: [ "Galfour" ]
|
||||
homepage: "https://gitlab.com/ligolang/tezos"
|
||||
bug-reports: "https://gitlab.com/ligolang/tezos/issues"
|
||||
synopsis: "A higher-level language which compiles to Michelson"
|
||||
dev-repo: "git+https://gitlab.com/ligolang/tezos.git"
|
||||
license: "MIT"
|
||||
depends: [
|
||||
"ocamlfind" { build }
|
||||
"dune" { build & >= "1.0.1" }
|
||||
"menhir"
|
||||
"ppx_let"
|
||||
"ppx_deriving"
|
||||
"tezos-utils"
|
||||
"proto-alpha-utils"
|
||||
"yojson"
|
||||
"alcotest" { with-test }
|
||||
"getopt"
|
||||
]
|
||||
build: [
|
||||
[ "dune" "build" "-p" name "-j" jobs ]
|
||||
[ "mv" "src/ligo.install" "." ]
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,23 +0,0 @@
|
||||
opam-version: "2.0"
|
||||
name: "lmdb"
|
||||
version: "0.1"
|
||||
authors: "Vincent Bernardoff <vb@luminar.eu.org>"
|
||||
maintainer: "Vincent Bernardoff <vb@luminar.eu.org>"
|
||||
license: "ISC"
|
||||
synopsis: "Simple OCaml binding to Lightning Memory-Mapped Database from Symas"
|
||||
homepage: "https://github.com/vbmithr/ocaml-lmdb"
|
||||
bug-reports: "https://github.com/vbmithr/ocaml-lmdb/issues"
|
||||
dev-repo: "git://github.com/vbmithr/ocaml-lmdb"
|
||||
build: [
|
||||
[ "dune" "build" "-j" jobs "-p" name "@install" ]
|
||||
[ "mv" "vendors/tezos-modded/vendors/ocaml-lmdb/lmdb.install" "." ]
|
||||
]
|
||||
depends: [
|
||||
"dune" {build & >= "1.0.1"}
|
||||
"rresult" {>= "0.5.0"}
|
||||
"cstruct" {with-test & >= "3.2.1"}
|
||||
"alcotest" {with-test & >= "0.8.1"}
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,21 +0,0 @@
|
||||
name: "michelson-parser"
|
||||
opam-version: "2.0"
|
||||
version: "dev"
|
||||
maintainer: "ligolang@gmail.com"
|
||||
authors: [ "Galfour" ]
|
||||
homepage: "https://gitlab.com/ligolang/tezos"
|
||||
bug-reports: "https://gitlab.com/ligolang/tezos/issues"
|
||||
dev-repo: "git+https://gitlab.com/ligolang/tezos.git"
|
||||
license: "MIT"
|
||||
depends: [
|
||||
"ocamlfind" { build }
|
||||
"dune"
|
||||
"tezos-memory-proto-alpha"
|
||||
]
|
||||
build: [
|
||||
[ "dune" "build" "-p" name "-j" jobs ]
|
||||
[ "mv" "vendors/ligo-utils/tezos-utils/michelson-parser/michelson-parser.install" "." ]
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,28 +0,0 @@
|
||||
name: "ocplib-ezresto-directory"
|
||||
version: "dev"
|
||||
opam-version: "2.0"
|
||||
maintainer: "Grégoire Henry <gregoire.henry@tezos.com>"
|
||||
authors: "Grégoire Henry <gregoire.henry@tezos.com>"
|
||||
license: "LGPL-2.1-with-OCaml-exception"
|
||||
homepage: "https://github.com/OCamlPro/ocplib-resto"
|
||||
bug-reports: "https://github.com/OCamlPro/ocplib-resto/issues"
|
||||
dev-repo: "git+https://github.com/OCamlPro/ocplib-resto"
|
||||
synopsis: "A minimal OCaml library for type-safe HTTP/JSON RPCs"
|
||||
|
||||
build: [
|
||||
[ "dune" "build" "-p" name "-j" jobs ]
|
||||
[ "mv" "vendors/tezos-modded/vendors/ocplib-resto/lib_ezresto-directory/ocplib-ezresto-directory.install" "." ]
|
||||
]
|
||||
run-test: [
|
||||
[ "dune" "runtest" "-p" name "-j" jobs ]
|
||||
]
|
||||
|
||||
depends: [
|
||||
"ocamlfind" {build}
|
||||
"dune" {build}
|
||||
"ocplib-ezresto" {= "dev" }
|
||||
"ocplib-resto-directory" {= "dev" }
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,28 +0,0 @@
|
||||
name: "ocplib-ezresto"
|
||||
version: "dev"
|
||||
opam-version: "2.0"
|
||||
maintainer: "Grégoire Henry <gregoire.henry@tezos.com>"
|
||||
authors: "Grégoire Henry <gregoire.henry@tezos.com>"
|
||||
license: "LGPL-2.1-with-OCaml-exception"
|
||||
homepage: "https://github.com/OCamlPro/ocplib-resto"
|
||||
bug-reports: "https://github.com/OCamlPro/ocplib-resto/issues"
|
||||
dev-repo: "git+https://github.com/OCamlPro/ocplib-resto"
|
||||
synopsis: "A minimal OCaml library for type-safe HTTP/JSON RPCs"
|
||||
|
||||
build: [
|
||||
[ "dune" "build" "-p" name "-j" jobs ]
|
||||
[ "mv" "vendors/tezos-modded/vendors/ocplib-resto/lib_ezresto/ocplib-ezresto.install" "." ]
|
||||
]
|
||||
run-test: [
|
||||
[ "dune" "runtest" "-p" name "-j" jobs ]
|
||||
]
|
||||
|
||||
depends: [
|
||||
"ocamlfind" {build}
|
||||
"dune" {build}
|
||||
"ocplib-resto" {= "dev" }
|
||||
"ocplib-resto-json" {= "dev" }
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,25 +0,0 @@
|
||||
opam-version: "2.0"
|
||||
name: "ocplib-json-typed-browser"
|
||||
version: "0.6"
|
||||
maintainer: "Benjamin Canou <benjamin@ocamlpro.com>"
|
||||
authors: "Benjamin Canou <benjamin@ocamlpro.com>"
|
||||
homepage: "https://github.com/ocamlpro/ocplib-json-typed"
|
||||
synopsis: "Libraries for reliable manipulation JSON objects (browser support)"
|
||||
bug-reports: "https://github.com/ocamlpro/ocplib-json-typed/issues"
|
||||
license: "LGPLv3 w/ linking exception"
|
||||
dev-repo: "git+https://github.com/ocamlpro/ocplib-json-typed.git"
|
||||
|
||||
build: [
|
||||
[ "dune" "build" "-j" jobs "-p" name "@install" ]
|
||||
[ "mv" "vendors/tezos-modded/vendors/ocplib-json-typed/ocplib-json-typed-browser.install" "." ]
|
||||
]
|
||||
run-test: [ "dune" "runtest" "-p" name "-j" jobs ]
|
||||
depends: [
|
||||
"ocaml" {>= "4.3.0"}
|
||||
"dune" {build & >= "1.0.1"}
|
||||
"ocplib-json-typed" {= "0.6" }
|
||||
"js_of_ocaml" {>= "3.3.0"}
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,25 +0,0 @@
|
||||
opam-version: "2.0"
|
||||
name: "ocplib-json-typed-bson"
|
||||
version: "0.6"
|
||||
maintainer: "Benjamin Canou <benjamin@ocamlpro.com>"
|
||||
authors: "Benjamin Canou <benjamin@ocamlpro.com>"
|
||||
homepage: "https://github.com/ocamlpro/ocplib-json-typed"
|
||||
synopsis: "Libraries for reliable manipulation JSON objects (BSON)"
|
||||
bug-reports: "https://github.com/ocamlpro/ocplib-json-typed/issues"
|
||||
license: "LGPLv3 w/ linking exception"
|
||||
dev-repo: "git+https://github.com/ocamlpro/ocplib-json-typed.git"
|
||||
|
||||
build: [
|
||||
[ "dune" "build" "-j" jobs "-p" name "@install" ]
|
||||
[ "mv" "vendors/tezos-modded/vendors/ocplib-json-typed/ocplib-json-typed-bson.install" "." ]
|
||||
]
|
||||
run-test: [ "dune" "runtest" "-p" name "-j" jobs ]
|
||||
depends: [
|
||||
"ocaml" {>= "4.3.0"}
|
||||
"dune" {build & >= "1.0.1"}
|
||||
"ocplib-json-typed" {= "0.6" }
|
||||
"ocplib-endian" {>= "1.0"}
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,24 +0,0 @@
|
||||
opam-version: "2.0"
|
||||
name: "ocplib-json-typed"
|
||||
version: "0.6"
|
||||
maintainer: "Benjamin Canou <benjamin@ocamlpro.com>"
|
||||
authors: "Benjamin Canou <benjamin@ocamlpro.com>"
|
||||
homepage: "https://github.com/ocamlpro/ocplib-json-typed"
|
||||
synopsis: "Libraries for reliable manipulation JSON objects"
|
||||
bug-reports: "https://github.com/ocamlpro/ocplib-json-typed/issues"
|
||||
license: "LGPLv3 w/ linking exception"
|
||||
dev-repo: "git+https://github.com/ocamlpro/ocplib-json-typed.git"
|
||||
|
||||
build: [
|
||||
[ "dune" "build" "-j" jobs "-p" name "@install" ]
|
||||
[ "mv" "vendors/tezos-modded/vendors/ocplib-json-typed/ocplib-json-typed.install" "." ]
|
||||
]
|
||||
run-test: [ "dune" "runtest" "-p" name "-j" jobs ]
|
||||
depends: [
|
||||
"ocaml" {>= "4.3.0"}
|
||||
"dune" {build & >= "1.0.1"}
|
||||
"uri" {>= "1.9.0" }
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,28 +0,0 @@
|
||||
name: "ocplib-resto-cohttp"
|
||||
version: "dev"
|
||||
opam-version: "2.0"
|
||||
maintainer: "Grégoire Henry <gregoire.henry@tezos.com>"
|
||||
authors: "Grégoire Henry <gregoire.henry@tezos.com>"
|
||||
license: "LGPL-2.1-with-OCaml-exception"
|
||||
homepage: "https://github.com/OCamlPro/ocplib-resto"
|
||||
bug-reports: "https://github.com/OCamlPro/ocplib-resto/issues"
|
||||
dev-repo: "git+https://github.com/OCamlPro/ocplib-resto"
|
||||
synopsis: "A minimal OCaml library for type-safe HTTP/JSON RPCs"
|
||||
|
||||
build: [
|
||||
[ "dune" "build" "-p" name "-j" jobs ]
|
||||
[ "mv" "vendors/tezos-modded/vendors/ocplib-resto/lib_resto-cohttp/ocplib-resto-cohttp.install" "." ]
|
||||
]
|
||||
run-test: [
|
||||
[ "dune" "runtest" "-p" name "-j" jobs ]
|
||||
]
|
||||
|
||||
depends: [
|
||||
"ocamlfind" {build}
|
||||
"dune" {build}
|
||||
"ocplib-resto-directory" {= "dev" }
|
||||
"cohttp-lwt-unix" { >= "1.0.0" }
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,29 +0,0 @@
|
||||
name: "ocplib-resto-directory"
|
||||
version: "dev"
|
||||
opam-version: "2.0"
|
||||
maintainer: "Grégoire Henry <gregoire.henry@tezos.com>"
|
||||
authors: "Grégoire Henry <gregoire.henry@tezos.com>"
|
||||
license: "LGPL-2.1-with-OCaml-exception"
|
||||
homepage: "https://github.com/OCamlPro/ocplib-resto"
|
||||
bug-reports: "https://github.com/OCamlPro/ocplib-resto/issues"
|
||||
dev-repo: "git+https://github.com/OCamlPro/ocplib-resto"
|
||||
synopsis: "A minimal OCaml library for type-safe HTTP/JSON RPCs"
|
||||
|
||||
build: [
|
||||
[ "dune" "build" "-p" name "-j" jobs ]
|
||||
[ "mv" "vendors/tezos-modded/vendors/ocplib-resto/lib_resto-directory/ocplib-resto-directory.install" "." ]
|
||||
]
|
||||
run-test: [
|
||||
[ "dune" "runtest" "-p" name "-j" jobs ]
|
||||
]
|
||||
|
||||
depends: [
|
||||
"ocamlfind" {build}
|
||||
"dune" {build}
|
||||
"ocplib-resto" {= "dev" }
|
||||
"ocplib-resto-json" {= "dev" & with-test }
|
||||
"lwt" { >= "3.0.0" }
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,28 +0,0 @@
|
||||
name: "ocplib-resto-json"
|
||||
version: "dev"
|
||||
opam-version: "2.0"
|
||||
maintainer: "Grégoire Henry <gregoire.henry@tezos.com>"
|
||||
authors: "Grégoire Henry <gregoire.henry@tezos.com>"
|
||||
license: "LGPL-2.1-with-OCaml-exception"
|
||||
homepage: "https://github.com/OCamlPro/ocplib-resto"
|
||||
bug-reports: "https://github.com/OCamlPro/ocplib-resto/issues"
|
||||
dev-repo: "git+https://github.com/OCamlPro/ocplib-resto"
|
||||
synopsis: "A minimal OCaml library for type-safe HTTP/JSON RPCs"
|
||||
|
||||
build: [
|
||||
[ "dune" "build" "-p" name "-j" jobs ]
|
||||
[ "mv" "vendors/tezos-modded/vendors/ocplib-resto/lib_resto-json/ocplib-resto-json.install" "." ]
|
||||
]
|
||||
run-test: [
|
||||
[ "dune" "runtest" "-p" name "-j" jobs ]
|
||||
]
|
||||
|
||||
depends: [
|
||||
"ocamlfind" {build}
|
||||
"dune" {build}
|
||||
"ocplib-resto" {= "dev" }
|
||||
"ocplib-json-typed-bson" { >= "0.6" }
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,27 +0,0 @@
|
||||
name: "ocplib-resto"
|
||||
version: "dev"
|
||||
opam-version: "2.0"
|
||||
maintainer: "Grégoire Henry <gregoire.henry@tezos.com>"
|
||||
authors: "Grégoire Henry <gregoire.henry@tezos.com>"
|
||||
license: "LGPL-2.1-with-OCaml-exception"
|
||||
homepage: "https://github.com/OCamlPro/ocplib-resto"
|
||||
bug-reports: "https://github.com/OCamlPro/ocplib-resto/issues"
|
||||
dev-repo: "git+https://github.com/OCamlPro/ocplib-resto"
|
||||
synopsis: "A minimal OCaml library for type-safe HTTP/JSON RPCs"
|
||||
|
||||
build: [
|
||||
[ "dune" "build" "-p" name "-j" jobs ]
|
||||
[ "mv" "vendors/tezos-modded/vendors/ocplib-resto/lib_resto/ocplib-resto.install" "." ]
|
||||
]
|
||||
run-test: [
|
||||
[ "dune" "runtest" "-p" name "-j" jobs ]
|
||||
]
|
||||
|
||||
depends: [
|
||||
"ocamlfind" {build}
|
||||
"dune" {build}
|
||||
"uri"
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,27 +0,0 @@
|
||||
opam-version: "2.0"
|
||||
name: "pbkdf"
|
||||
version: "0.3.0"
|
||||
homepage: "https://github.com/abeaumont/ocaml-pbkdf"
|
||||
dev-repo: "git+https://github.com/abeaumont/ocaml-pbkdf.git"
|
||||
bug-reports: "https://github.com/abeaumont/ocaml-pbkdf/issues"
|
||||
authors: ["Alfredo Beaumont <alfredo.beaumont@gmail.com>" "Sonia Meruelo <smeruelo@gmail.com>"]
|
||||
maintainer: ["Alfredo Beaumont <alfredo.beaumont@gmail.com>"]
|
||||
license: "BSD2"
|
||||
synopsis: "Password based key derivation functions from PKCS#5, RFC 2898"
|
||||
|
||||
build: [
|
||||
[ "dune" "build" "-j" jobs "-p" name "@install" ]
|
||||
[ "mv" "vendors/tezos-modded/vendors/ocaml-pbkdf/pbkdf.install" "." ]
|
||||
]
|
||||
run-test: [ "dune" "runtest" "-p" name "-j" jobs ]
|
||||
depends: [
|
||||
"dune" { build & >= "1.0.1" }
|
||||
"hacl"
|
||||
"bigstring" {>= "0.2"}
|
||||
"ocplib-endian" {>= "1.0"}
|
||||
"alcotest" {with-test & >= "0.8.1"}
|
||||
"hex" {with-test & >= "1.2.0"}
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,56 +0,0 @@
|
||||
opam-version: "2.0"
|
||||
name: "proto-alpha-utils"
|
||||
version: "dev"
|
||||
synopsis: "LIGO Proto Alpha-specific Utilities, to be used by other libraries"
|
||||
maintainer: "Galfour <ligolang@gmail.com>"
|
||||
authors: "Galfour <ligolang@gmail.com>"
|
||||
license: "MIT"
|
||||
homepage: "https://gitlab.com/ligolang/ligo-utils"
|
||||
bug-reports: "https://gitlab.com/ligolang/ligo-utils/issues"
|
||||
depends: [
|
||||
"dune"
|
||||
"base"
|
||||
"base"
|
||||
"bigstring"
|
||||
"calendar"
|
||||
"cohttp-lwt-unix"
|
||||
"cstruct"
|
||||
"ezjsonm"
|
||||
"hex"
|
||||
"hidapi"
|
||||
"ipaddr"
|
||||
"irmin"
|
||||
"js_of_ocaml"
|
||||
"lwt"
|
||||
"lwt_log"
|
||||
"mtime"
|
||||
"ocplib-endian"
|
||||
"ocp-ocamlres"
|
||||
"re"
|
||||
"rresult"
|
||||
"stdio"
|
||||
"uri"
|
||||
"uutf"
|
||||
"zarith"
|
||||
"ocplib-json-typed"
|
||||
"ocplib-json-typed-bson"
|
||||
"tezos-crypto"
|
||||
"tezos-stdlib-unix"
|
||||
"tezos-data-encoding"
|
||||
"tezos-protocol-environment"
|
||||
"tezos-protocol-alpha"
|
||||
"michelson-parser"
|
||||
"simple-utils"
|
||||
"tezos-utils"
|
||||
# from ppx_let:
|
||||
"ocaml" {>= "4.04.2" & < "4.08.0"}
|
||||
"dune" {build & >= "1.5.1"}
|
||||
"ppxlib" {>= "0.5.0"}
|
||||
]
|
||||
build: [
|
||||
["dune" "build" "-p" name]
|
||||
[ "mv" "vendors/ligo-utils/proto-alpha-utils/proto-alpha-utils.install" "." ]
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,22 +0,0 @@
|
||||
opam-version: "2.0"
|
||||
name: "secp256k1"
|
||||
version: "0.1"
|
||||
authors: "Vincent Bernardoff <vb@luminar.eu.org>"
|
||||
maintainer: "Vincent Bernardoff <vb@luminar.eu.org>"
|
||||
homepage: "https://github.com/vbmithr/ocaml-secp256k1-internal"
|
||||
bug-reports: "https://github.com/vbmithr/ocaml-secp256k1-internal/issues"
|
||||
dev-repo: "git://github.com/vbmithr/ocaml-secp256k1-internal"
|
||||
synopsis: "Bindings to secp256k1 internal functions"
|
||||
build: [
|
||||
[ "dune" "build" "-j" jobs "-p" name "@install" ]
|
||||
[ "mv" "vendors/tezos-modded/vendors/ocaml-secp256k1/secp256k1.install" "." ]
|
||||
]
|
||||
depends: [
|
||||
"conf-gmp" {build}
|
||||
"dune" {build & >= "1.0.1"}
|
||||
"cstruct" {>= "3.2.1"}
|
||||
"bigstring" {>= "0.1.1"}
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,54 +0,0 @@
|
||||
opam-version: "2.0"
|
||||
name: "simple-utils"
|
||||
version: "dev"
|
||||
synopsis: "LIGO Utilities, to be used by other libraries"
|
||||
maintainer: "Galfour <ligolang@gmail.com>"
|
||||
authors: "Galfour <ligolang@gmail.com>"
|
||||
license: "MIT"
|
||||
homepage: "https://gitlab.com/ligolang/ligo-utils"
|
||||
bug-reports: "https://gitlab.com/ligolang/ligo-utils/issues"
|
||||
depends: [
|
||||
"dune"
|
||||
"base"
|
||||
"base"
|
||||
"bigstring"
|
||||
"calendar"
|
||||
"cohttp-lwt-unix"
|
||||
"cstruct"
|
||||
"ezjsonm"
|
||||
"hex"
|
||||
"hidapi"
|
||||
"ipaddr"
|
||||
"irmin"
|
||||
"js_of_ocaml"
|
||||
"lwt"
|
||||
"lwt_log"
|
||||
"mtime"
|
||||
"ocplib-endian"
|
||||
"ocp-ocamlres"
|
||||
"re"
|
||||
"rresult"
|
||||
"stdio"
|
||||
"uri"
|
||||
"uutf"
|
||||
"zarith"
|
||||
"ocplib-json-typed"
|
||||
"ocplib-json-typed-bson"
|
||||
"tezos-crypto"
|
||||
"tezos-stdlib-unix"
|
||||
"tezos-data-encoding"
|
||||
"tezos-protocol-environment"
|
||||
"tezos-protocol-alpha"
|
||||
"michelson-parser"
|
||||
# from ppx_let:
|
||||
"ocaml" {>= "4.04.2" & < "4.08.0"}
|
||||
"dune" {build & >= "1.5.1"}
|
||||
"ppxlib" {>= "0.5.0"}
|
||||
]
|
||||
build: [
|
||||
["dune" "build" "-p" name]
|
||||
[ "mv" "vendors/ligo-utils/simple-utils/simple-utils.install" "." ]
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,29 +0,0 @@
|
||||
version: "dev"
|
||||
name: "tezos-accuser-alpha-commands"
|
||||
opam-version: "2.0"
|
||||
maintainer: "contact@tezos.com"
|
||||
authors: [ "Tezos devteam" ]
|
||||
homepage: "https://www.tezos.com/"
|
||||
bug-reports: "https://gitlab.com/tezos/tezos/issues"
|
||||
dev-repo: "git+https://gitlab.com/tezos/tezos.git"
|
||||
license: "MIT"
|
||||
depends: [
|
||||
"ocamlfind" { build }
|
||||
"dune" { build & >= "1.0.1" }
|
||||
"tezos-base"
|
||||
"tezos-protocol-environment"
|
||||
"tezos-protocol-alpha"
|
||||
"tezos-shell-services"
|
||||
"tezos-client-base"
|
||||
"tezos-client-commands"
|
||||
"tezos-client-alpha"
|
||||
"tezos-baking-alpha"
|
||||
"tezos-signer-backends" { with-test }
|
||||
]
|
||||
build: [
|
||||
[ "dune" "build" "-p" name "-j" jobs ]
|
||||
[ "mv" "vendors/tezos-modded/src/proto_alpha/lib_delegate/tezos-accuser-alpha-commands.install" "." ]
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,25 +0,0 @@
|
||||
version: "dev"
|
||||
name: "tezos-accuser-alpha"
|
||||
opam-version: "2.0"
|
||||
maintainer: "contact@tezos.com"
|
||||
authors: [ "Tezos devteam" ]
|
||||
homepage: "https://www.tezos.com/"
|
||||
bug-reports: "https://gitlab.com/tezos/tezos/issues"
|
||||
dev-repo: "git+https://gitlab.com/tezos/tezos.git"
|
||||
license: "MIT"
|
||||
depends: [
|
||||
"ocamlfind" { build }
|
||||
"dune" { build & >= "1.0.1" }
|
||||
"tezos-base"
|
||||
"tezos-client-alpha"
|
||||
"tezos-client-commands"
|
||||
"tezos-baking-alpha-commands"
|
||||
"tezos-client-base-unix"
|
||||
]
|
||||
build: [
|
||||
[ "dune" "build" "-p" name "-j" jobs ]
|
||||
[ "mv" "vendors/tezos-modded/src/proto_alpha/bin_accuser/tezos-accuser-alpha.install" "." ]
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,29 +0,0 @@
|
||||
version: "dev"
|
||||
name: "tezos-baker-alpha-commands"
|
||||
opam-version: "2.0"
|
||||
maintainer: "contact@tezos.com"
|
||||
authors: [ "Tezos devteam" ]
|
||||
homepage: "https://www.tezos.com/"
|
||||
bug-reports: "https://gitlab.com/tezos/tezos/issues"
|
||||
dev-repo: "git+https://gitlab.com/tezos/tezos.git"
|
||||
license: "MIT"
|
||||
depends: [
|
||||
"ocamlfind" { build }
|
||||
"dune" { build & >= "1.0.1" }
|
||||
"tezos-base"
|
||||
"tezos-protocol-environment"
|
||||
"tezos-protocol-alpha"
|
||||
"tezos-shell-services"
|
||||
"tezos-client-base"
|
||||
"tezos-client-commands"
|
||||
"tezos-client-alpha"
|
||||
"tezos-baking-alpha"
|
||||
"tezos-signer-backends" { with-test }
|
||||
]
|
||||
build: [
|
||||
[ "dune" "build" "-p" name "-j" jobs ]
|
||||
[ "mv" "vendors/tezos-modded/src/proto_alpha/lib_delegate/tezos-baker-alpha-commands.install" "." ]
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,25 +0,0 @@
|
||||
version: "dev"
|
||||
name: "tezos-baker-alpha"
|
||||
opam-version: "2.0"
|
||||
maintainer: "contact@tezos.com"
|
||||
authors: [ "Tezos devteam" ]
|
||||
homepage: "https://www.tezos.com/"
|
||||
bug-reports: "https://gitlab.com/tezos/tezos/issues"
|
||||
dev-repo: "git+https://gitlab.com/tezos/tezos.git"
|
||||
license: "MIT"
|
||||
depends: [
|
||||
"ocamlfind" { build }
|
||||
"dune" { build & >= "1.0.1" }
|
||||
"tezos-base"
|
||||
"tezos-client-alpha"
|
||||
"tezos-client-commands"
|
||||
"tezos-baking-alpha-commands"
|
||||
"tezos-client-base-unix"
|
||||
]
|
||||
build: [
|
||||
[ "dune" "build" "-p" name "-j" jobs ]
|
||||
[ "mv" "vendors/tezos-modded/src/proto_alpha/bin_baker/tezos-baker-alpha.install" "." ]
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,29 +0,0 @@
|
||||
version: "dev"
|
||||
name: "tezos-baking-alpha-commands"
|
||||
opam-version: "2.0"
|
||||
maintainer: "contact@tezos.com"
|
||||
authors: [ "Tezos devteam" ]
|
||||
homepage: "https://www.tezos.com/"
|
||||
bug-reports: "https://gitlab.com/tezos/tezos/issues"
|
||||
dev-repo: "git+https://gitlab.com/tezos/tezos.git"
|
||||
license: "MIT"
|
||||
depends: [
|
||||
"ocamlfind" { build }
|
||||
"dune" { build & >= "1.0.1" }
|
||||
"tezos-base"
|
||||
"tezos-protocol-environment"
|
||||
"tezos-protocol-alpha"
|
||||
"tezos-shell-services"
|
||||
"tezos-client-base"
|
||||
"tezos-client-commands"
|
||||
"tezos-client-alpha"
|
||||
"tezos-baking-alpha"
|
||||
"tezos-signer-backends" { with-test }
|
||||
]
|
||||
build: [
|
||||
[ "dune" "build" "-p" name "-j" jobs ]
|
||||
[ "mv" "vendors/tezos-modded/src/proto_alpha/lib_delegate/tezos-baking-alpha-commands.install" "." ]
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,34 +0,0 @@
|
||||
version: "dev"
|
||||
name: "tezos-baking-alpha"
|
||||
opam-version: "2.0"
|
||||
maintainer: "contact@tezos.com"
|
||||
authors: [ "Tezos devteam" ]
|
||||
homepage: "https://www.tezos.com/"
|
||||
bug-reports: "https://gitlab.com/tezos/tezos/issues"
|
||||
dev-repo: "git+https://gitlab.com/tezos/tezos.git"
|
||||
license: "MIT"
|
||||
depends: [
|
||||
"ocamlfind" { build }
|
||||
"dune" { build & >= "1.0.1" }
|
||||
"tezos-base"
|
||||
"tezos-protocol-environment"
|
||||
"tezos-protocol-alpha"
|
||||
"tezos-shell-services"
|
||||
"tezos-client-base"
|
||||
"tezos-client-commands"
|
||||
"tezos-client-alpha"
|
||||
"tezos-node" { with-test }
|
||||
"tezos-client-genesis" { with-test }
|
||||
"tezos-client-base-unix" { with-test }
|
||||
"alcotest-lwt" { with-test }
|
||||
]
|
||||
build: [
|
||||
[ "dune" "build" "-p" name "-j" jobs ]
|
||||
[ "mv" "vendors/tezos-modded/src/proto_alpha/lib_delegate/tezos-baking-alpha.install" "." ]
|
||||
]
|
||||
run-test: [
|
||||
[ "dune" "runtest" "-p" name "-j" jobs ]
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,34 +0,0 @@
|
||||
version: "dev"
|
||||
name: "tezos-base"
|
||||
opam-version: "2.0"
|
||||
maintainer: "contact@tezos.com"
|
||||
authors: [ "Tezos devteam" ]
|
||||
homepage: "https://www.tezos.com/"
|
||||
bug-reports: "https://gitlab.com/tezos/tezos/issues"
|
||||
dev-repo: "git+https://gitlab.com/tezos/tezos.git"
|
||||
license: "MIT"
|
||||
depends: [
|
||||
"ocamlfind" { build }
|
||||
"dune" { build & >= "1.0.1" }
|
||||
"tezos-stdlib"
|
||||
"tezos-crypto"
|
||||
"tezos-data-encoding"
|
||||
"tezos-error-monad"
|
||||
"tezos-micheline"
|
||||
"tezos-rpc"
|
||||
"calendar"
|
||||
"ezjsonm" { >= "0.5.0" }
|
||||
"ipaddr" { >= "3.0.0" }
|
||||
"mtime" { >= "1.0.0" }
|
||||
"re" { >= "1.7.2" }
|
||||
]
|
||||
build: [
|
||||
[ "dune" "build" "-p" name "-j" jobs ]
|
||||
[ "mv" "vendors/tezos-modded/src/lib_base/tezos-base.install" "." ]
|
||||
]
|
||||
run-test: [
|
||||
[ "dune" "runtest" "-p" name "-j" jobs ]
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,25 +0,0 @@
|
||||
version: "dev"
|
||||
name: "tezos-clic"
|
||||
opam-version: "2.0"
|
||||
maintainer: "contact@tezos.com"
|
||||
authors: [ "Tezos devteam" ]
|
||||
homepage: "https://www.tezos.com/"
|
||||
bug-reports: "https://gitlab.com/tezos/tezos/issues"
|
||||
dev-repo: "git+https://gitlab.com/tezos/tezos.git"
|
||||
license: "MIT"
|
||||
depends: [
|
||||
"ocamlfind" { build }
|
||||
"dune" { build & >= "1.0.1" }
|
||||
"tezos-stdlib"
|
||||
"tezos-error-monad"
|
||||
]
|
||||
build: [
|
||||
[ "dune" "build" "-p" name "-j" jobs ]
|
||||
[ "mv" "vendors/tezos-modded/src/lib_clic/tezos-clic.install" "." ]
|
||||
]
|
||||
run-test: [
|
||||
[ "dune" "runtest" "-p" name "-j" jobs ]
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,27 +0,0 @@
|
||||
version: "dev"
|
||||
name: "tezos-client-alpha-commands"
|
||||
opam-version: "2.0"
|
||||
maintainer: "contact@tezos.com"
|
||||
authors: [ "Tezos devteam" ]
|
||||
homepage: "https://www.tezos.com/"
|
||||
bug-reports: "https://gitlab.com/tezos/tezos/issues"
|
||||
dev-repo: "git+https://gitlab.com/tezos/tezos.git"
|
||||
license: "MIT"
|
||||
depends: [
|
||||
"ocamlfind" { build }
|
||||
"dune" { build & >= "1.0.1" }
|
||||
"tezos-base"
|
||||
"tezos-protocol-environment"
|
||||
"tezos-protocol-alpha"
|
||||
"tezos-shell-services"
|
||||
"tezos-client-base"
|
||||
"tezos-client-alpha"
|
||||
"tezos-client-commands"
|
||||
]
|
||||
build: [
|
||||
[ "dune" "build" "-p" name "-j" jobs ]
|
||||
[ "mv" "vendors/tezos-modded/src/proto_alpha/lib_client_commands/tezos-client-alpha-commands.install" "." ]
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,26 +0,0 @@
|
||||
version: "dev"
|
||||
name: "tezos-client-alpha"
|
||||
opam-version: "2.0"
|
||||
maintainer: "contact@tezos.com"
|
||||
authors: [ "Tezos devteam" ]
|
||||
homepage: "https://www.tezos.com/"
|
||||
bug-reports: "https://gitlab.com/tezos/tezos/issues"
|
||||
dev-repo: "git+https://gitlab.com/tezos/tezos.git"
|
||||
license: "MIT"
|
||||
depends: [
|
||||
"ocamlfind" { build }
|
||||
"dune" { build & >= "1.0.1" }
|
||||
"tezos-base"
|
||||
"tezos-protocol-environment"
|
||||
"tezos-protocol-alpha"
|
||||
"tezos-shell-services"
|
||||
"tezos-client-base"
|
||||
"tezos-signer-backends"
|
||||
]
|
||||
build: [
|
||||
[ "dune" "build" "-p" name "-j" jobs ]
|
||||
[ "mv" "vendors/tezos-modded/src/proto_alpha/lib_client/tezos-client-alpha.install" "." ]
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,29 +0,0 @@
|
||||
version: "dev"
|
||||
name: "tezos-client-base-unix"
|
||||
opam-version: "2.0"
|
||||
maintainer: "contact@tezos.com"
|
||||
authors: [ "Tezos devteam" ]
|
||||
homepage: "https://www.tezos.com/"
|
||||
bug-reports: "https://gitlab.com/tezos/tezos/issues"
|
||||
dev-repo: "git+https://gitlab.com/tezos/tezos.git"
|
||||
license: "MIT"
|
||||
depends: [
|
||||
"ocamlfind" { build }
|
||||
"dune" { build & >= "1.0.1" }
|
||||
"tezos-base"
|
||||
"tezos-client-base"
|
||||
"tezos-stdlib-unix"
|
||||
"tezos-rpc-http"
|
||||
"tezos-signer-backends"
|
||||
"tezos-client-commands"
|
||||
]
|
||||
build: [
|
||||
[ "dune" "build" "-p" name "-j" jobs ]
|
||||
[ "mv" "vendors/tezos-modded/src/lib_client_base_unix/tezos-client-base-unix.install" "." ]
|
||||
]
|
||||
run-test: [
|
||||
[ "dune" "runtest" "-p" name "-j" jobs ]
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,31 +0,0 @@
|
||||
version: "dev"
|
||||
name: "tezos-client-base"
|
||||
opam-version: "2.0"
|
||||
maintainer: "contact@tezos.com"
|
||||
authors: [ "Tezos devteam" ]
|
||||
homepage: "https://www.tezos.com/"
|
||||
bug-reports: "https://gitlab.com/tezos/tezos/issues"
|
||||
dev-repo: "git+https://gitlab.com/tezos/tezos.git"
|
||||
license: "MIT"
|
||||
depends: [
|
||||
"ocamlfind" { build }
|
||||
"dune" { build & >= "1.0.1" }
|
||||
"tezos-base"
|
||||
"tezos-stdlib-unix"
|
||||
"tezos-shell-services"
|
||||
"tezos-storage"
|
||||
"tezos-rpc-http"
|
||||
"cmdliner"
|
||||
"pbkdf"
|
||||
"bip39"
|
||||
]
|
||||
build: [
|
||||
[ "dune" "build" "-p" name "-j" jobs ]
|
||||
[ "mv" "vendors/tezos-modded/src/lib_client_base/tezos-client-base.install" "." ]
|
||||
]
|
||||
run-test: [
|
||||
[ "dune" "runtest" "-p" name "-j" jobs ]
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,28 +0,0 @@
|
||||
version: "dev"
|
||||
name: "tezos-client-commands"
|
||||
opam-version: "2.0"
|
||||
maintainer: "contact@tezos.com"
|
||||
authors: [ "Tezos devteam" ]
|
||||
homepage: "https://www.tezos.com/"
|
||||
bug-reports: "https://gitlab.com/tezos/tezos/issues"
|
||||
dev-repo: "git+https://gitlab.com/tezos/tezos.git"
|
||||
license: "MIT"
|
||||
depends: [
|
||||
"ocamlfind" { build }
|
||||
"dune" { build & >= "1.0.1" }
|
||||
"tezos-base"
|
||||
"tezos-client-base"
|
||||
"tezos-rpc"
|
||||
"tezos-shell-services"
|
||||
"tezos-signer-backends"
|
||||
]
|
||||
build: [
|
||||
[ "dune" "build" "-p" name "-j" jobs ]
|
||||
[ "mv" "vendors/tezos-modded/src/lib_client_commands/tezos-client-commands.install" "." ]
|
||||
]
|
||||
run-test: [
|
||||
[ "dune" "runtest" "-p" name "-j" jobs ]
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,29 +0,0 @@
|
||||
name: "tezos-client-demo"
|
||||
opam-version: "1.2"
|
||||
version: "dev"
|
||||
maintainer: "contact@tezos.com"
|
||||
authors: [ "Tezos devteam" ]
|
||||
homepage: "https://www.tezos.com/"
|
||||
bug-reports: "https://gitlab.com/tezos/tezos/issues"
|
||||
dev-repo: "https://gitlab.com/tezos/tezos.git"
|
||||
license: "MIT"
|
||||
depends: [
|
||||
"ocamlfind" { build }
|
||||
"dune" { build & >= "1.0.1" }
|
||||
"tezos-base"
|
||||
"tezos-shell-services"
|
||||
"tezos-client-base"
|
||||
"tezos-client-commands"
|
||||
"tezos-protocol-environment"
|
||||
"tezos-protocol-demo"
|
||||
]
|
||||
build: [
|
||||
[ "dune" "build" "-p" name "-j" jobs ]
|
||||
[ "mv" "vendors/tezos-modded/src/proto_demo/lib_client/tezos-client-demo.install" "." ]
|
||||
]
|
||||
build-test: [
|
||||
[ "dune" "runtest" "-p" name "-j" jobs ]
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,29 +0,0 @@
|
||||
version: "dev"
|
||||
name: "tezos-client-genesis"
|
||||
opam-version: "2.0"
|
||||
maintainer: "contact@tezos.com"
|
||||
authors: [ "Tezos devteam" ]
|
||||
homepage: "https://www.tezos.com/"
|
||||
bug-reports: "https://gitlab.com/tezos/tezos/issues"
|
||||
dev-repo: "git+https://gitlab.com/tezos/tezos.git"
|
||||
license: "MIT"
|
||||
depends: [
|
||||
"ocamlfind" { build }
|
||||
"dune" { build & >= "1.0.1" }
|
||||
"tezos-base"
|
||||
"tezos-shell-services"
|
||||
"tezos-client-base"
|
||||
"tezos-client-commands"
|
||||
"tezos-protocol-environment"
|
||||
"tezos-protocol-genesis"
|
||||
]
|
||||
build: [
|
||||
[ "dune" "build" "-p" name "-j" jobs ]
|
||||
[ "mv" "vendors/tezos-modded/src/proto_genesis/lib_client/tezos-client-genesis.install" "." ]
|
||||
]
|
||||
run-test: [
|
||||
[ "dune" "runtest" "-p" name "-j" jobs ]
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,35 +0,0 @@
|
||||
version: "dev"
|
||||
name: "tezos-client"
|
||||
opam-version: "2.0"
|
||||
maintainer: "contact@tezos.com"
|
||||
authors: [ "Tezos devteam" ]
|
||||
homepage: "https://www.tezos.com/"
|
||||
bug-reports: "https://gitlab.com/tezos/tezos/issues"
|
||||
dev-repo: "git+https://gitlab.com/tezos/tezos.git"
|
||||
license: "MIT"
|
||||
depends: [
|
||||
"ocamlfind" { build }
|
||||
"dune" { build & >= "1.0.1" }
|
||||
"tezos-base"
|
||||
"tezos-client-base"
|
||||
"tezos-client-genesis"
|
||||
"tezos-client-demo"
|
||||
"tezos-client-alpha"
|
||||
"tezos-client-alpha-commands"
|
||||
"tezos-baking-alpha"
|
||||
"tezos-baking-alpha-commands"
|
||||
"tezos-client-base-unix"
|
||||
"tezos-signer-backends"
|
||||
"tezos-node" { with-test }
|
||||
"tezos-protocol-compiler" { with-test }
|
||||
]
|
||||
build: [
|
||||
[ "dune" "build" "-p" name "-j" jobs ]
|
||||
[ "mv" "vendors/tezos-modded/src/bin_client/tezos-client.install" "." ]
|
||||
]
|
||||
run-test: [
|
||||
[ "dune" "runtest" "-p" name "-j" jobs ]
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,35 +0,0 @@
|
||||
version: "dev"
|
||||
name: "tezos-crypto"
|
||||
opam-version: "2.0"
|
||||
maintainer: "contact@tezos.com"
|
||||
authors: [ "Tezos devteam" ]
|
||||
homepage: "https://www.tezos.com/"
|
||||
bug-reports: "https://gitlab.com/tezos/tezos/issues"
|
||||
dev-repo: "git+https://gitlab.com/tezos/tezos.git"
|
||||
license: "MIT"
|
||||
depends: [
|
||||
"ocamlfind" { build }
|
||||
"dune" { build & >= "1.0.1" }
|
||||
"tezos-stdlib"
|
||||
"tezos-data-encoding"
|
||||
"tezos-error-monad"
|
||||
"tezos-rpc"
|
||||
"tezos-clic"
|
||||
"lwt"
|
||||
"blake2"
|
||||
"hacl"
|
||||
"zarith"
|
||||
"secp256k1"
|
||||
"uecc"
|
||||
"alcotest" { with-test & >= "0.8.3" }
|
||||
]
|
||||
build: [
|
||||
[ "dune" "build" "-p" name "-j" jobs ]
|
||||
[ "mv" "vendors/tezos-modded/src/lib_crypto/tezos-crypto.install" "." ]
|
||||
]
|
||||
run-test: [
|
||||
[ "dune" "runtest" "-p" name "-j" jobs ]
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,30 +0,0 @@
|
||||
version: "dev"
|
||||
name: "tezos-data-encoding"
|
||||
opam-version: "2.0"
|
||||
maintainer: "contact@tezos.com"
|
||||
authors: [ "Tezos devteam" ]
|
||||
homepage: "https://www.tezos.com/"
|
||||
bug-reports: "https://gitlab.com/tezos/tezos/issues"
|
||||
dev-repo: "git+https://gitlab.com/tezos/tezos.git"
|
||||
license: "MIT"
|
||||
depends: [
|
||||
"ocamlfind" { build }
|
||||
"dune" { build & >= "1.0.1" }
|
||||
"tezos-stdlib"
|
||||
"ezjsonm"
|
||||
"ocplib-json-typed"
|
||||
"ocplib-json-typed-bson"
|
||||
"ocplib-endian"
|
||||
"alcotest" { with-test }
|
||||
"crowbar" { with-test }
|
||||
]
|
||||
build: [
|
||||
[ "dune" "build" "-p" name "-j" jobs ]
|
||||
[ "mv" "vendors/tezos-modded/src/lib_data_encoding/tezos-data-encoding.install" "." ]
|
||||
]
|
||||
run-test: [
|
||||
[ "dune" "runtest" "-p" name "-j" jobs ]
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,29 +0,0 @@
|
||||
version: "dev"
|
||||
name: "tezos-embedded-protocol-alpha"
|
||||
opam-version: "2.0"
|
||||
maintainer: "contact@tezos.com"
|
||||
authors: [ "Tezos devteam" ]
|
||||
homepage: "https://www.tezos.com/"
|
||||
bug-reports: "https://gitlab.com/tezos/tezos/issues"
|
||||
dev-repo: "git+https://gitlab.com/tezos/tezos.git"
|
||||
license: "MIT"
|
||||
depends: [
|
||||
"ocamlfind" { build }
|
||||
"dune" { build & >= "1.0.1" }
|
||||
"tezos-base"
|
||||
"tezos-protocol-compiler"
|
||||
"tezos-protocol-updater"
|
||||
]
|
||||
build: [
|
||||
[ "%{tezos-protocol-compiler:lib}%/replace"
|
||||
"%{tezos-protocol-compiler:lib}%/dune_protocol.template"
|
||||
"dune" "alpha" ]
|
||||
[ "dune" "build" "-p" name "-j" jobs ]
|
||||
[ "mv" "vendors/tezos-modded/src/proto_alpha/lib_protocol/tezos-embedded-protocol-alpha.install" "." ]
|
||||
]
|
||||
run-test: [
|
||||
[ "dune" "runtest" "-p" name "-j" jobs ]
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,28 +0,0 @@
|
||||
version: "dev"
|
||||
name: "tezos-embedded-protocol-demo"
|
||||
opam-version: "2.0"
|
||||
maintainer: "contact@tezos.com"
|
||||
authors: [ "Tezos devteam" ]
|
||||
homepage: "https://www.tezos.com/"
|
||||
bug-reports: "https://gitlab.com/tezos/tezos/issues"
|
||||
dev-repo: "git+https://gitlab.com/tezos/tezos.git"
|
||||
license: "MIT"
|
||||
depends: [
|
||||
"ocamlfind" { build }
|
||||
"dune" { build & >= "1.0.1" }
|
||||
"tezos-protocol-compiler"
|
||||
"tezos-protocol-updater"
|
||||
]
|
||||
build: [
|
||||
[ "%{tezos-protocol-compiler:lib}%/replace"
|
||||
"%{tezos-protocol-compiler:lib}%/dune_protocol.template"
|
||||
"dune" "demo" ]
|
||||
[ "dune" "build" "-p" name "-j" jobs ]
|
||||
[ "mv" "vendors/tezos-modded/src/proto_demo/lib_protocol/tezos-embedded-protocol-demo.install" "." ]
|
||||
]
|
||||
run-test: [
|
||||
[ "dune" "runtest" "-p" name "-j" jobs ]
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,28 +0,0 @@
|
||||
version: "dev"
|
||||
name: "tezos-embedded-protocol-genesis"
|
||||
opam-version: "2.0"
|
||||
maintainer: "contact@tezos.com"
|
||||
authors: [ "Tezos devteam" ]
|
||||
homepage: "https://www.tezos.com/"
|
||||
bug-reports: "https://gitlab.com/tezos/tezos/issues"
|
||||
dev-repo: "git+https://gitlab.com/tezos/tezos.git"
|
||||
license: "MIT"
|
||||
depends: [
|
||||
"ocamlfind" { build }
|
||||
"dune" { build & >= "1.0.1" }
|
||||
"tezos-protocol-compiler"
|
||||
"tezos-protocol-updater"
|
||||
]
|
||||
build: [
|
||||
[ "%{tezos-protocol-compiler:lib}%/replace"
|
||||
"%{tezos-protocol-compiler:lib}%/dune_protocol.template"
|
||||
"dune" "genesis" ]
|
||||
[ "dune" "build" "-p" name "-j" jobs ]
|
||||
[ "mv" "vendors/tezos-modded/src/proto_genesis/lib_protocol/tezos-embedded-protocol-genesis.install" "." ]
|
||||
]
|
||||
run-test: [
|
||||
[ "dune" "runtest" "-p" name "-j" jobs ]
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,29 +0,0 @@
|
||||
version: "dev"
|
||||
name: "tezos-endorser-alpha-commands"
|
||||
opam-version: "2.0"
|
||||
maintainer: "contact@tezos.com"
|
||||
authors: [ "Tezos devteam" ]
|
||||
homepage: "https://www.tezos.com/"
|
||||
bug-reports: "https://gitlab.com/tezos/tezos/issues"
|
||||
dev-repo: "git+https://gitlab.com/tezos/tezos.git"
|
||||
license: "MIT"
|
||||
depends: [
|
||||
"ocamlfind" { build }
|
||||
"dune" { build & >= "1.0.1" }
|
||||
"tezos-base"
|
||||
"tezos-protocol-environment"
|
||||
"tezos-protocol-alpha"
|
||||
"tezos-shell-services"
|
||||
"tezos-client-base"
|
||||
"tezos-client-commands"
|
||||
"tezos-client-alpha"
|
||||
"tezos-baking-alpha"
|
||||
"tezos-signer-backends" { with-test }
|
||||
]
|
||||
build: [
|
||||
[ "dune" "build" "-p" name "-j" jobs ]
|
||||
[ "mv" "vendors/tezos-modded/src/proto_alpha/lib_delegate/tezos-endorser-alpha-commands.install" "." ]
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,25 +0,0 @@
|
||||
version: "dev"
|
||||
name: "tezos-endorser-alpha"
|
||||
opam-version: "2.0"
|
||||
maintainer: "contact@tezos.com"
|
||||
authors: [ "Tezos devteam" ]
|
||||
homepage: "https://www.tezos.com/"
|
||||
bug-reports: "https://gitlab.com/tezos/tezos/issues"
|
||||
dev-repo: "git+https://gitlab.com/tezos/tezos.git"
|
||||
license: "MIT"
|
||||
depends: [
|
||||
"ocamlfind" { build }
|
||||
"dune" { build & >= "1.0.1" }
|
||||
"tezos-base"
|
||||
"tezos-client-alpha"
|
||||
"tezos-client-commands"
|
||||
"tezos-baking-alpha-commands"
|
||||
"tezos-client-base-unix"
|
||||
]
|
||||
build: [
|
||||
[ "dune" "build" "-p" name "-j" jobs ]
|
||||
[ "mv" "vendors/tezos-modded/src/proto_alpha/bin_endorser/tezos-endorser-alpha.install" "." ]
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,26 +0,0 @@
|
||||
version: "dev"
|
||||
name: "tezos-error-monad"
|
||||
opam-version: "2.0"
|
||||
maintainer: "contact@tezos.com"
|
||||
authors: [ "Tezos devteam" ]
|
||||
homepage: "https://www.tezos.com/"
|
||||
bug-reports: "https://gitlab.com/tezos/tezos/issues"
|
||||
dev-repo: "git+https://gitlab.com/tezos/tezos.git"
|
||||
license: "MIT"
|
||||
depends: [
|
||||
"ocamlfind" { build }
|
||||
"dune" { build & >= "1.0.1" }
|
||||
"tezos-stdlib"
|
||||
"tezos-data-encoding"
|
||||
"lwt"
|
||||
]
|
||||
build: [
|
||||
[ "dune" "build" "-p" name "-j" jobs ]
|
||||
[ "mv" "vendors/tezos-modded/src/lib_error_monad/tezos-error-monad.install" "." ]
|
||||
]
|
||||
run-test: [
|
||||
[ "dune" "runtest" "-p" name "-j" jobs ]
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,22 +0,0 @@
|
||||
opam-version: "2.0"
|
||||
name: "memory-proto-alpha"
|
||||
version: "dev"
|
||||
synopsis: "Tezos Protocol Alpha in memory"
|
||||
maintainer: "Galfour <ligolang@gmail.com>"
|
||||
authors: "Galfour <ligolang@gmail.com>"
|
||||
license: "MIT"
|
||||
homepage: "https://gitlab.com/ligolang/tezos"
|
||||
bug-reports: "https://gitlab.com/ligolang/tezos/issues"
|
||||
depends: [
|
||||
"dune"
|
||||
"tezos-protocol-environment"
|
||||
"tezos-protocol-alpha"
|
||||
]
|
||||
build: [
|
||||
["dune" "build" "-p" name]
|
||||
[ "mv" "vendors/tezos-modded/src/lib_memory_protocol_alpha/tezos-memory-proto-alpha.install" "." ]
|
||||
]
|
||||
dev-repo: "git+https://gitlab.com/ligolang/tezos"
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,27 +0,0 @@
|
||||
version: "dev"
|
||||
name: "tezos-micheline"
|
||||
opam-version: "2.0"
|
||||
maintainer: "contact@tezos.com"
|
||||
authors: [ "Tezos devteam" ]
|
||||
homepage: "https://www.tezos.com/"
|
||||
bug-reports: "https://gitlab.com/tezos/tezos/issues"
|
||||
dev-repo: "git+https://gitlab.com/tezos/tezos.git"
|
||||
license: "MIT"
|
||||
depends: [
|
||||
"ocamlfind" { build }
|
||||
"dune" { build & >= "1.0.1" }
|
||||
"tezos-data-encoding"
|
||||
"tezos-error-monad"
|
||||
"uutf"
|
||||
"alcotest-lwt" { with-test }
|
||||
]
|
||||
build: [
|
||||
[ "dune" "build" "-p" name "-j" jobs ]
|
||||
[ "mv" "vendors/tezos-modded/src/lib_micheline/tezos-micheline.install" "." ]
|
||||
]
|
||||
run-test: [
|
||||
[ "dune" "runtest" "-p" name "-j" jobs ]
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,35 +0,0 @@
|
||||
version: "dev"
|
||||
name: "tezos-node"
|
||||
opam-version: "2.0"
|
||||
maintainer: "contact@tezos.com"
|
||||
authors: [ "Tezos devteam" ]
|
||||
homepage: "https://www.tezos.com/"
|
||||
bug-reports: "https://gitlab.com/tezos/tezos/issues"
|
||||
dev-repo: "git+https://gitlab.com/tezos/tezos.git"
|
||||
license: "MIT"
|
||||
depends: [
|
||||
"ocamlfind" { build }
|
||||
"dune" { build & >= "1.0.1" }
|
||||
"tezos-base"
|
||||
"tezos-rpc-http"
|
||||
"tezos-p2p"
|
||||
"tezos-shell"
|
||||
"tezos-protocol-updater"
|
||||
"tezos-embedded-protocol-genesis"
|
||||
"tezos-embedded-protocol-demo"
|
||||
"tezos-embedded-protocol-alpha"
|
||||
"cmdliner"
|
||||
"tls"
|
||||
"cstruct" { < "3.4.0" } ## Because "tls" depends on a version of "nocrypto"
|
||||
## that is not compatible with recent "cstruct"
|
||||
]
|
||||
build: [
|
||||
[ "dune" "build" "-p" name "-j" jobs ]
|
||||
[ "mv" "vendors/tezos-modded/src/bin_node/tezos-node.install" "." ]
|
||||
]
|
||||
run-test: [
|
||||
[ "dune" "runtest" "-p" name "-j" jobs ]
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,27 +0,0 @@
|
||||
version: "dev"
|
||||
name: "tezos-p2p"
|
||||
opam-version: "2.0"
|
||||
maintainer: "contact@tezos.com"
|
||||
authors: [ "Tezos devteam" ]
|
||||
homepage: "https://www.tezos.com/"
|
||||
bug-reports: "https://gitlab.com/tezos/tezos/issues"
|
||||
dev-repo: "git+https://gitlab.com/tezos/tezos.git"
|
||||
license: "MIT"
|
||||
depends: [
|
||||
"ocamlfind" { build }
|
||||
"dune" { build & >= "1.0.1" }
|
||||
"tezos-base"
|
||||
"tezos-stdlib-unix"
|
||||
"tezos-shell-services"
|
||||
"alcotest-lwt" { with-test }
|
||||
]
|
||||
build: [
|
||||
[ "dune" "build" "-p" name "-j" jobs ]
|
||||
[ "mv" "vendors/tezos-modded/src/lib_p2p/tezos-p2p.install" "." ]
|
||||
]
|
||||
run-test: [
|
||||
[ "dune" "runtest" "-p" name "-j" jobs ]
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,33 +0,0 @@
|
||||
version: "dev"
|
||||
name: "tezos-protocol-alpha"
|
||||
opam-version: "2.0"
|
||||
maintainer: "contact@tezos.com"
|
||||
authors: [ "Tezos devteam" ]
|
||||
homepage: "https://www.tezos.com/"
|
||||
bug-reports: "https://gitlab.com/tezos/tezos/issues"
|
||||
dev-repo: "git+https://gitlab.com/tezos/tezos.git"
|
||||
license: "MIT"
|
||||
depends: [
|
||||
"ocamlfind" { build }
|
||||
"dune" { build & >= "1.0.1" }
|
||||
"tezos-base"
|
||||
"tezos-protocol-compiler"
|
||||
"alcotest-lwt" { with-test }
|
||||
"tezos-stdlib-unix" { with-test }
|
||||
"tezos-protocol-environment" { with-test }
|
||||
"tezos-shell-services" { with-test }
|
||||
"bip39" { with-test }
|
||||
]
|
||||
build: [
|
||||
# [ "%{tezos-protocol-compiler:lib}%/replace"
|
||||
# "%{tezos-protocol-compiler:lib}%/dune_protocol.template"
|
||||
# "src/proto_alpha/lib_protocol/dune" "alpha" ]
|
||||
[ "dune" "build" "-p" name "-j" jobs ]
|
||||
[ "mv" "vendors/tezos-modded/src/proto_alpha/lib_protocol/tezos-protocol-alpha.install" "." ]
|
||||
]
|
||||
run-test: [
|
||||
[ "dune" "runtest" "-p" name "-j" jobs ]
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,31 +0,0 @@
|
||||
version: "dev"
|
||||
name: "tezos-protocol-compiler"
|
||||
opam-version: "2.0"
|
||||
maintainer: "contact@tezos.com"
|
||||
authors: [ "Tezos devteam" ]
|
||||
homepage: "https://www.tezos.com/"
|
||||
bug-reports: "https://gitlab.com/tezos/tezos/issues"
|
||||
dev-repo: "git+https://gitlab.com/tezos/tezos.git"
|
||||
license: "MIT"
|
||||
depends: [
|
||||
## ocaml should be in sync with `script/version.sh`
|
||||
"ocaml" { = "4.06.1" }
|
||||
"ocamlfind" { build }
|
||||
"dune" { build & >= "1.0.1" }
|
||||
"base-unix"
|
||||
"tezos-base"
|
||||
"tezos-protocol-environment-sigs"
|
||||
"tezos-stdlib-unix"
|
||||
"ocplib-endian"
|
||||
"ocp-ocamlres" { >= "0.4" }
|
||||
]
|
||||
build: [
|
||||
[ "dune" "build" "-p" name "-j" jobs ]
|
||||
[ "mv" "vendors/tezos-modded/src/lib_protocol_compiler/tezos-protocol-compiler.install" "." ]
|
||||
]
|
||||
run-test: [
|
||||
[ "dune" "runtest" "-p" name "-j" jobs ]
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,27 +0,0 @@
|
||||
version: "dev"
|
||||
name: "tezos-protocol-demo"
|
||||
opam-version: "2.0"
|
||||
maintainer: "contact@tezos.com"
|
||||
authors: [ "Tezos devteam" ]
|
||||
homepage: "https://www.tezos.com/"
|
||||
bug-reports: "https://gitlab.com/tezos/tezos/issues"
|
||||
dev-repo: "git+https://gitlab.com/tezos/tezos.git"
|
||||
license: "MIT"
|
||||
depends: [
|
||||
"ocamlfind" { build }
|
||||
"dune" { build & >= "1.0.1" }
|
||||
"tezos-protocol-compiler"
|
||||
]
|
||||
build: [
|
||||
[ "%{tezos-protocol-compiler:lib}%/replace"
|
||||
"%{tezos-protocol-compiler:lib}%/dune_protocol.template"
|
||||
"src/proto_demo/lib_protocol/dune" "demo" ]
|
||||
[ "dune" "build" "-p" name "-j" jobs ]
|
||||
[ "mv" "vendors/tezos-modded/src/proto_demo/lib_protocol/tezos-protocol-demo.install" "." ]
|
||||
]
|
||||
run-test: [
|
||||
[ "dune" "runtest" "-p" name "-j" jobs ]
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,26 +0,0 @@
|
||||
version: "dev"
|
||||
name: "tezos-protocol-environment-shell"
|
||||
opam-version: "2.0"
|
||||
maintainer: "contact@tezos.com"
|
||||
authors: [ "Tezos devteam" ]
|
||||
homepage: "https://www.tezos.com/"
|
||||
bug-reports: "https://gitlab.com/tezos/tezos/issues"
|
||||
dev-repo: "git+https://gitlab.com/tezos/tezos.git"
|
||||
license: "MIT"
|
||||
depends: [
|
||||
"ocamlfind" { build }
|
||||
"dune" { build & >= "1.0.1" }
|
||||
"tezos-base"
|
||||
"tezos-protocol-environment"
|
||||
"tezos-storage"
|
||||
]
|
||||
build: [
|
||||
[ "dune" "build" "-p" name "-j" jobs ]
|
||||
[ "mv" "vendors/tezos-modded/src/lib_protocol_environment/tezos-protocol-environment-shell.install" "." ]
|
||||
]
|
||||
run-test: [
|
||||
[ "dune" "runtest" "-p" name "-j" jobs ]
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,24 +0,0 @@
|
||||
version: "dev"
|
||||
name: "tezos-protocol-environment-sigs"
|
||||
opam-version: "2.0"
|
||||
maintainer: "contact@tezos.com"
|
||||
authors: [ "Tezos devteam" ]
|
||||
homepage: "https://www.tezos.com/"
|
||||
bug-reports: "https://gitlab.com/tezos/tezos/issues"
|
||||
dev-repo: "git+https://gitlab.com/tezos/tezos.git"
|
||||
license: "MIT"
|
||||
depends: [
|
||||
"ocamlfind" { build }
|
||||
"dune" { build & >= "1.0.1" }
|
||||
"tezos-stdlib" { with-test }
|
||||
]
|
||||
build: [
|
||||
[ "dune" "build" "-p" name "-j" jobs ]
|
||||
[ "mv" "vendors/tezos-modded/src/lib_protocol_environment/tezos-protocol-environment-sigs.install" "." ]
|
||||
]
|
||||
run-test: [
|
||||
[ "dune" "runtest" "-p" name "-j" jobs ]
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,26 +0,0 @@
|
||||
version: "dev"
|
||||
name: "tezos-protocol-environment"
|
||||
opam-version: "2.0"
|
||||
maintainer: "contact@tezos.com"
|
||||
authors: [ "Tezos devteam" ]
|
||||
homepage: "https://www.tezos.com/"
|
||||
bug-reports: "https://gitlab.com/tezos/tezos/issues"
|
||||
dev-repo: "git+https://gitlab.com/tezos/tezos.git"
|
||||
license: "MIT"
|
||||
depends: [
|
||||
"ocamlfind" { build }
|
||||
"dune" { build & >= "1.0.1" }
|
||||
"tezos-base"
|
||||
"tezos-protocol-environment-sigs"
|
||||
"alcotest-lwt" { with-test }
|
||||
]
|
||||
build: [
|
||||
[ "dune" "build" "-p" name "-j" jobs ]
|
||||
[ "mv" "vendors/tezos-modded/src/lib_protocol_environment/tezos-protocol-environment.install" "." ]
|
||||
]
|
||||
run-test: [
|
||||
[ "dune" "runtest" "-p" name "-j" jobs ]
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,27 +0,0 @@
|
||||
version: "dev"
|
||||
name: "tezos-protocol-genesis"
|
||||
opam-version: "2.0"
|
||||
maintainer: "contact@tezos.com"
|
||||
authors: [ "Tezos devteam" ]
|
||||
homepage: "https://www.tezos.com/"
|
||||
bug-reports: "https://gitlab.com/tezos/tezos/issues"
|
||||
dev-repo: "git+https://gitlab.com/tezos/tezos.git"
|
||||
license: "MIT"
|
||||
depends: [
|
||||
"ocamlfind" { build }
|
||||
"dune" { build & >= "1.0.1" }
|
||||
"tezos-protocol-compiler"
|
||||
]
|
||||
build: [
|
||||
[ "%{tezos-protocol-compiler:lib}%/replace"
|
||||
"%{tezos-protocol-compiler:lib}%/dune_protocol.template"
|
||||
"dune" "genesis" ]
|
||||
[ "dune" "build" "-p" name "-j" jobs ]
|
||||
[ "mv" "vendors/tezos-modded/src/proto_genesis/lib_protocol/tezos-protocol-genesis.install" "." ]
|
||||
]
|
||||
run-test: [
|
||||
[ "dune" "runtest" "-p" name "-j" jobs ]
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,30 +0,0 @@
|
||||
version: "dev"
|
||||
name: "tezos-protocol-updater"
|
||||
opam-version: "2.0"
|
||||
maintainer: "contact@tezos.com"
|
||||
authors: [ "Tezos devteam" ]
|
||||
homepage: "https://www.tezos.com/"
|
||||
bug-reports: "https://gitlab.com/tezos/tezos/issues"
|
||||
dev-repo: "git+https://gitlab.com/tezos/tezos.git"
|
||||
license: "MIT"
|
||||
depends: [
|
||||
"ocamlfind" { build }
|
||||
"dune" { build & >= "1.0.1" }
|
||||
"tezos-base"
|
||||
"tezos-micheline"
|
||||
"tezos-shell-services"
|
||||
"tezos-protocol-compiler"
|
||||
"tezos-protocol-environment-shell"
|
||||
"tezos-stdlib-unix"
|
||||
"tezos-storage"
|
||||
]
|
||||
build: [
|
||||
[ "dune" "build" "-p" name "-j" jobs ]
|
||||
[ "mv" "vendors/tezos-modded/src/lib_protocol_updater/tezos-protocol-updater.install" "." ]
|
||||
]
|
||||
run-test: [
|
||||
[ "dune" "runtest" "-p" name "-j" jobs ]
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,26 +0,0 @@
|
||||
version: "dev"
|
||||
name: "tezos-rpc-http"
|
||||
opam-version: "2.0"
|
||||
maintainer: "contact@tezos.com"
|
||||
authors: [ "Tezos devteam" ]
|
||||
homepage: "https://www.tezos.com/"
|
||||
bug-reports: "https://gitlab.com/tezos/tezos/issues"
|
||||
dev-repo: "git+https://gitlab.com/tezos/tezos.git"
|
||||
license: "MIT"
|
||||
depends: [
|
||||
"ocamlfind" { build }
|
||||
"dune" { build & >= "1.0.1" }
|
||||
"tezos-base"
|
||||
"ocplib-resto-directory"
|
||||
"ocplib-resto-cohttp"
|
||||
]
|
||||
build: [
|
||||
[ "dune" "build" "-p" name "-j" jobs ]
|
||||
[ "mv" "vendors/tezos-modded/src/lib_rpc_http/tezos-rpc-http.install" "." ]
|
||||
]
|
||||
run-test: [
|
||||
[ "dune" "runtest" "-p" name "-j" jobs ]
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,27 +0,0 @@
|
||||
version: "dev"
|
||||
name: "tezos-rpc"
|
||||
opam-version: "2.0"
|
||||
maintainer: "contact@tezos.com"
|
||||
authors: [ "Tezos devteam" ]
|
||||
homepage: "https://www.tezos.com/"
|
||||
bug-reports: "https://gitlab.com/tezos/tezos/issues"
|
||||
dev-repo: "git+https://gitlab.com/tezos/tezos.git"
|
||||
license: "MIT"
|
||||
depends: [
|
||||
"ocamlfind" { build }
|
||||
"dune" { build & >= "1.0.1" }
|
||||
"tezos-error-monad"
|
||||
"tezos-data-encoding"
|
||||
"ocplib-resto"
|
||||
"ocplib-resto-directory"
|
||||
]
|
||||
build: [
|
||||
[ "dune" "build" "-p" name "-j" jobs ]
|
||||
[ "mv" "vendors/tezos-modded/src/lib_rpc/tezos-rpc.install" "." ]
|
||||
]
|
||||
run-test: [
|
||||
[ "dune" "runtest" "-p" name "-j" jobs ]
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,24 +0,0 @@
|
||||
version: "dev"
|
||||
name: "tezos-shell-services"
|
||||
opam-version: "2.0"
|
||||
maintainer: "contact@tezos.com"
|
||||
authors: [ "Tezos devteam" ]
|
||||
homepage: "https://www.tezos.com/"
|
||||
bug-reports: "https://gitlab.com/tezos/tezos/issues"
|
||||
dev-repo: "git+https://gitlab.com/tezos/tezos.git"
|
||||
license: "MIT"
|
||||
depends: [
|
||||
"ocamlfind" { build }
|
||||
"dune" { build & >= "1.0.1" }
|
||||
"tezos-base"
|
||||
]
|
||||
build: [
|
||||
[ "dune" "build" "-p" name "-j" jobs ]
|
||||
[ "mv" "vendors/tezos-modded/src/lib_shell_services/tezos-shell-services.install" "." ]
|
||||
]
|
||||
run-test: [
|
||||
[ "dune" "runtest" "-p" name "-j" jobs ]
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,31 +0,0 @@
|
||||
version: "dev"
|
||||
name: "tezos-shell"
|
||||
opam-version: "2.0"
|
||||
maintainer: "contact@tezos.com"
|
||||
authors: [ "Tezos devteam" ]
|
||||
homepage: "https://www.tezos.com/"
|
||||
bug-reports: "https://gitlab.com/tezos/tezos/issues"
|
||||
dev-repo: "git+https://gitlab.com/tezos/tezos.git"
|
||||
license: "MIT"
|
||||
depends: [
|
||||
"ocamlfind" { build }
|
||||
"dune" { build & >= "1.0.1" }
|
||||
"tezos-base"
|
||||
"tezos-rpc-http"
|
||||
"tezos-p2p"
|
||||
"tezos-shell-services"
|
||||
"tezos-protocol-updater"
|
||||
"tezos-validation"
|
||||
"alcotest-lwt" { with-test }
|
||||
"tezos-embedded-protocol-demo" { with-test }
|
||||
]
|
||||
build: [
|
||||
[ "dune" "build" "-p" name "-j" jobs ]
|
||||
[ "mv" "vendors/tezos-modded/src/lib_shell/tezos-shell.install" "." ]
|
||||
]
|
||||
run-test: [
|
||||
[ "dune" "runtest" "-p" name "-j" jobs ]
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,34 +0,0 @@
|
||||
version: "dev"
|
||||
name: "tezos-signer-backends"
|
||||
opam-version: "2.0"
|
||||
maintainer: "contact@tezos.com"
|
||||
authors: [ "Tezos devteam" ]
|
||||
homepage: "https://www.tezos.com/"
|
||||
bug-reports: "https://gitlab.com/tezos/tezos/issues"
|
||||
dev-repo: "git+https://gitlab.com/tezos/tezos.git"
|
||||
license: "MIT"
|
||||
depends: [
|
||||
"ocamlfind" { build }
|
||||
"dune" { build & >= "1.0.1" }
|
||||
"tezos-base"
|
||||
"tezos-stdlib-unix"
|
||||
"tezos-client-base"
|
||||
"tezos-rpc-http"
|
||||
"tezos-signer-services"
|
||||
"tezos-shell-services"
|
||||
"pbkdf"
|
||||
"bip39"
|
||||
"ledgerwallet-tezos"
|
||||
"alcotest" {with-test & >= "0.8.1"}
|
||||
"alcotest-lwt" {with-test & >= "0.8.0"}
|
||||
]
|
||||
build: [
|
||||
[ "dune" "build" "-p" name "-j" jobs ]
|
||||
[ "mv" "vendors/tezos-modded/src/lib_signer_backends/tezos-signer-backends.install" "." ]
|
||||
]
|
||||
run-test: [
|
||||
[ "dune" "runtest" "-p" name "-j" jobs ]
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,26 +0,0 @@
|
||||
version: "dev"
|
||||
name: "tezos-signer-services"
|
||||
opam-version: "2.0"
|
||||
maintainer: "contact@tezos.com"
|
||||
authors: [ "Tezos devteam" ]
|
||||
homepage: "https://www.tezos.com/"
|
||||
bug-reports: "https://gitlab.com/tezos/tezos/issues"
|
||||
dev-repo: "git+https://gitlab.com/tezos/tezos.git"
|
||||
license: "MIT"
|
||||
depends: [
|
||||
"ocamlfind" { build }
|
||||
"dune" { build & >= "1.0.1" }
|
||||
"tezos-base"
|
||||
"tezos-client-base"
|
||||
"tezos-rpc"
|
||||
]
|
||||
build: [
|
||||
[ "dune" "build" "-p" name "-j" jobs ]
|
||||
[ "mv" "vendors/tezos-modded/src/lib_signer_services/tezos-signer-services.install" "." ]
|
||||
]
|
||||
run-test: [
|
||||
[ "dune" "runtest" "-p" name "-j" jobs ]
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,31 +0,0 @@
|
||||
version: "dev"
|
||||
name: "tezos-signer"
|
||||
opam-version: "2.0"
|
||||
maintainer: "contact@tezos.com"
|
||||
authors: [ "Tezos devteam" ]
|
||||
homepage: "https://www.tezos.com/"
|
||||
bug-reports: "https://gitlab.com/tezos/tezos/issues"
|
||||
dev-repo: "git+https://gitlab.com/tezos/tezos.git"
|
||||
license: "MIT"
|
||||
depends: [
|
||||
"ocamlfind" { build }
|
||||
"dune" { build & >= "1.0.1" }
|
||||
"tezos-base"
|
||||
"tezos-client-base"
|
||||
"tezos-client-base-unix"
|
||||
"tezos-client-commands"
|
||||
"tezos-signer-services"
|
||||
"tezos-rpc-http"
|
||||
"tezos-stdlib-unix"
|
||||
"tezos-signer-backends"
|
||||
]
|
||||
build: [
|
||||
[ "dune" "build" "-p" name "-j" jobs ]
|
||||
[ "mv" "vendors/tezos-modded/src/bin_signer/tezos-signer.install" "." ]
|
||||
]
|
||||
run-test: [
|
||||
[ "dune" "runtest" "-p" name "-j" jobs ]
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,27 +0,0 @@
|
||||
version: "dev"
|
||||
name: "tezos-stdlib-unix"
|
||||
opam-version: "2.0"
|
||||
maintainer: "contact@tezos.com"
|
||||
authors: [ "Tezos devteam" ]
|
||||
homepage: "https://www.tezos.com/"
|
||||
bug-reports: "https://gitlab.com/tezos/tezos/issues"
|
||||
dev-repo: "git+https://gitlab.com/tezos/tezos.git"
|
||||
license: "MIT"
|
||||
depends: [
|
||||
"ocamlfind" { build }
|
||||
"dune" { build & >= "1.0.1" }
|
||||
"tezos-base"
|
||||
"lwt" { >= "3.0.0" }
|
||||
"conf-libev"
|
||||
"ipaddr" { >= "3.0.0" }
|
||||
]
|
||||
build: [
|
||||
[ "dune" "build" "-p" name "-j" jobs ]
|
||||
[ "mv" "vendors/tezos-modded/src/lib_stdlib_unix/tezos-stdlib-unix.install" "." ]
|
||||
]
|
||||
run-test: [
|
||||
[ "dune" "runtest" "-p" name "-j" jobs ]
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,31 +0,0 @@
|
||||
version: "dev"
|
||||
name: "tezos-stdlib"
|
||||
opam-version: "2.0"
|
||||
maintainer: "contact@tezos.com"
|
||||
authors: [ "Tezos devteam" ]
|
||||
homepage: "https://www.tezos.com/"
|
||||
bug-reports: "https://gitlab.com/tezos/tezos/issues"
|
||||
dev-repo: "git+https://gitlab.com/tezos/tezos.git"
|
||||
license: "MIT"
|
||||
depends: [
|
||||
"ocamlfind" { build }
|
||||
"dune" { build & >= "1.0.1" & < "1.7" } ## Incompatible with lwt<4
|
||||
"bigstring"
|
||||
"hex"
|
||||
"ocplib-endian"
|
||||
"re"
|
||||
"lwt" { < "4" }
|
||||
"zarith"
|
||||
"alcotest" { with-test }
|
||||
"ocp-indent" { with-test & = "1.6.1" }
|
||||
]
|
||||
build: [
|
||||
[ "dune" "build" "-p" name "-j" jobs ]
|
||||
[ "mv" "vendors/tezos-modded/src/lib_stdlib/tezos-stdlib.install" "." ]
|
||||
]
|
||||
run-test: [
|
||||
[ "dune" "runtest" "-p" name "-j" jobs ]
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,28 +0,0 @@
|
||||
version: "dev"
|
||||
name: "tezos-storage"
|
||||
opam-version: "2.0"
|
||||
maintainer: "contact@tezos.com"
|
||||
authors: [ "Tezos devteam" ]
|
||||
homepage: "https://www.tezos.com/"
|
||||
bug-reports: "https://gitlab.com/tezos/tezos/issues"
|
||||
dev-repo: "git+https://gitlab.com/tezos/tezos.git"
|
||||
license: "MIT"
|
||||
depends: [
|
||||
"ocamlfind" { build }
|
||||
"dune" { build & >= "1.0.1" }
|
||||
"tezos-base"
|
||||
"lmdb"
|
||||
"irmin-lmdb"
|
||||
"tezos-stdlib-unix" { with-test }
|
||||
"alcotest-lwt" { with-test }
|
||||
]
|
||||
build: [
|
||||
[ "dune" "build" "-p" name "-j" jobs ]
|
||||
[ "mv" "vendors/tezos-modded/src/lib_storage/tezos-storage.install" "." ]
|
||||
]
|
||||
run-test: [
|
||||
[ "dune" "runtest" "-p" name "-j" jobs ]
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,55 +0,0 @@
|
||||
opam-version: "2.0"
|
||||
name: "tezos-utils"
|
||||
version: "dev"
|
||||
synopsis: "LIGO Tezos specific Utilities, to be used by other libraries"
|
||||
maintainer: "Galfour <ligolang@gmail.com>"
|
||||
authors: "Galfour <ligolang@gmail.com>"
|
||||
license: "MIT"
|
||||
homepage: "https://gitlab.com/ligolang/ligo-utils"
|
||||
bug-reports: "https://gitlab.com/ligolang/ligo-utils/issues"
|
||||
depends: [
|
||||
"dune"
|
||||
"base"
|
||||
"base"
|
||||
"bigstring"
|
||||
"calendar"
|
||||
"cohttp-lwt-unix"
|
||||
"cstruct"
|
||||
"ezjsonm"
|
||||
"hex"
|
||||
"hidapi"
|
||||
"ipaddr"
|
||||
"irmin"
|
||||
"js_of_ocaml"
|
||||
"lwt"
|
||||
"lwt_log"
|
||||
"mtime"
|
||||
"ocplib-endian"
|
||||
"ocp-ocamlres"
|
||||
"re"
|
||||
"rresult"
|
||||
"stdio"
|
||||
"uri"
|
||||
"uutf"
|
||||
"zarith"
|
||||
"ocplib-json-typed"
|
||||
"ocplib-json-typed-bson"
|
||||
"tezos-crypto"
|
||||
"tezos-stdlib-unix"
|
||||
"tezos-data-encoding"
|
||||
"tezos-protocol-environment"
|
||||
"tezos-protocol-alpha"
|
||||
"michelson-parser"
|
||||
"simple-utils"
|
||||
# from ppx_let:
|
||||
"ocaml" {>= "4.04.2" & < "4.08.0"}
|
||||
"dune" {build & >= "1.5.1"}
|
||||
"ppxlib" {>= "0.5.0"}
|
||||
]
|
||||
build: [
|
||||
["dune" "build" "-p" name]
|
||||
[ "mv" "vendors/ligo-utils/tezos-utils/tezos-utils.install" "." ]
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,27 +0,0 @@
|
||||
version: "dev"
|
||||
name: "tezos-validation"
|
||||
opam-version: "2.0"
|
||||
maintainer: "contact@tezos.com"
|
||||
authors: [ "Tezos devteam" ]
|
||||
homepage: "https://www.tezos.com/"
|
||||
bug-reports: "https://gitlab.com/tezos/tezos/issues"
|
||||
dev-repo: "git+https://gitlab.com/tezos/tezos.git"
|
||||
license: "MIT"
|
||||
depends: [
|
||||
"ocamlfind" { build }
|
||||
"dune" { build & >= "1.0.1" }
|
||||
"tezos-base"
|
||||
"tezos-storage"
|
||||
"tezos-shell-services"
|
||||
"tezos-protocol-updater"
|
||||
]
|
||||
build: [
|
||||
[ "dune" "build" "-p" name "-j" jobs ]
|
||||
[ "mv" "vendors/tezos-modded/src/lib_validation/tezos-validation.install" "." ]
|
||||
]
|
||||
run-test: [
|
||||
[ "dune" "runtest" "-p" name "-j" jobs ]
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,25 +0,0 @@
|
||||
opam-version: "2.0"
|
||||
name: "uecc"
|
||||
version: "dev"
|
||||
authors: "Vincent Bernardoff <vb@luminar.eu.org>"
|
||||
maintainer: "Vincent Bernardoff <vb@luminar.eu.org>"
|
||||
license: "ISC"
|
||||
homepage: "https://github.com/vbmithr/ocaml-uecc"
|
||||
synopsis: "Bindings for ECDH and ECDSA for 8-bit, 32-bit, and 64-bit processors"
|
||||
bug-reports: "https://github.com/vbmithr/ocaml-uecc/issues"
|
||||
dev-repo: "git://github.com/vbmithr/ocaml-uecc"
|
||||
build: [
|
||||
[ "dune" "build" "-j" jobs "-p" name "@install" ]
|
||||
[ "mv" "vendors/tezos-modded/vendors/ocaml-uecc/uecc.install" "." ]
|
||||
]
|
||||
run-test: [ "dune" "runtest" "-p" name "-j" jobs ]
|
||||
depends: [
|
||||
"dune" {build & >= "1.0.1"}
|
||||
"bigstring" {>= "0.1.1"}
|
||||
"alcotest" {with-test & >= "0.8.1"}
|
||||
"cstruct" {with-test & >= "3.2.1"}
|
||||
"hex" {with-test}
|
||||
]
|
||||
url {
|
||||
src: "https://gitlab.com/ligolang/ligo/-/archive/master/ligo.tar.gz"
|
||||
}
|
@ -1,4 +1,3 @@
|
||||
#!/bin/sh
|
||||
set -e
|
||||
|
||||
docker build -t ligolang/ligo -f docker/Dockerfile .
|
||||
docker build --build-arg target="4.07" -t "${LIGO_REGISTRY_IMAGE_BUILD:-ligolang/ligo}:next" -f ./docker/distribution/generic/build.Dockerfile .
|
||||
|
11
scripts/distribution/generic/build.sh
Executable file
11
scripts/distribution/generic/build.sh
Executable file
@ -0,0 +1,11 @@
|
||||
#!/bin/sh
|
||||
|
||||
dockerfile_name="build"
|
||||
# Generic dockerfile
|
||||
dockerfile="./docker/distribution/generic/build.Dockerfile"
|
||||
. ./scripts/distribution/generic/parameters.sh
|
||||
|
||||
echo "Building LIGO for $target"
|
||||
echo "Using Dockerfile: $dockerfile"
|
||||
echo "Tagging as: $tag_build\n"
|
||||
docker build --build-arg target="$target" -t "$tag_build" -f "$dockerfile" .
|
12
scripts/distribution/generic/env_variables.sh
Executable file
12
scripts/distribution/generic/env_variables.sh
Executable file
@ -0,0 +1,12 @@
|
||||
# This file is a substitute for env variables configured in the CI
|
||||
# in case you want to run the "CI scripts" on your own
|
||||
# You can load the following variables using:
|
||||
# source ./scripts/distribution/generic/env_variables.sh
|
||||
|
||||
export LIGO_REGISTRY_IMAGE_BASE_NAME="ligolang/ligo"
|
||||
# packages build locally are tagget by the 'short' commit hash,
|
||||
# instead of the build/job/pipeline ID as in the CI to avoid possible confusion
|
||||
# ligo_incrementing-id_commit-hash
|
||||
export CI_JOB_ID="0"
|
||||
export CI_COMMIT_SHORT_SHA="$(git rev-parse --short HEAD)"
|
||||
export LIGO_DIST_DIR="./dist"
|
20
scripts/distribution/generic/package.sh
Executable file
20
scripts/distribution/generic/package.sh
Executable file
@ -0,0 +1,20 @@
|
||||
#!/bin/sh
|
||||
|
||||
dockerfile_name="package"
|
||||
dockerfile=""
|
||||
. ./scripts/distribution/generic/parameters.sh
|
||||
|
||||
if [ -n "$dockerfile" ]; then
|
||||
echo "Packaging LIGO for $target"
|
||||
echo "Using Dockerfile: $dockerfile"
|
||||
echo "Using pre-built image: $tag_build"
|
||||
echo "Version: $version\n"
|
||||
|
||||
# Build the package
|
||||
docker build --build-arg targetBuildImage="$tag_build" --build-arg version="$version" -t "$tag_package" -f "$dockerfile" .
|
||||
# Copy the package to host's (our own) file system
|
||||
mkdir -p "$PWD/dist/package/$target"
|
||||
docker run --entrypoint '/bin/sh' -v $PWD:$PWD "$tag_package" -c "cp -r /package/dist/. $PWD/dist/package/$target"
|
||||
else
|
||||
echo "Dockerfile not found for target: $target"
|
||||
fi
|
32
scripts/distribution/generic/parameters.sh
Normal file
32
scripts/distribution/generic/parameters.sh
Normal file
@ -0,0 +1,32 @@
|
||||
# This script accepts three arguments, os family, os and it's version,
|
||||
# which are subsequently used to fetch the respective docker
|
||||
# image from the ocaml/infrastructure project.
|
||||
#
|
||||
# https://github.com/ocaml/infrastructure/wiki/Containers#selecting-linux-distributions
|
||||
target_os_family=$1
|
||||
target_os=$2
|
||||
target_os_version=$3
|
||||
|
||||
# Variables configured at the CI level
|
||||
dist="$LIGO_DIST_DIR"
|
||||
version="$(echo $CI_JOB_ID)-$(echo $CI_COMMIT_SHORT_SHA)"
|
||||
ci_job_id="$CI_JOB_ID"
|
||||
|
||||
# Image names for building & packaging
|
||||
target="$target_os-$target_os_version"
|
||||
tag_build="$LIGO_REGISTRY_IMAGE_BASE_NAME-build-$target:$version"
|
||||
tag_package="$LIGO_REGISTRY_IMAGE_BASE_NAME-package-$target:$version"
|
||||
tag_package_dockerized="$LIGO_REGISTRY_IMAGE_BASE_NAME-$target:$version"
|
||||
|
||||
|
||||
# Check if there's a specific dockerfile override for
|
||||
# the current target_os_family (e.g. debian-ish distros) or target_os (ubuntu, xubuntu, ...) and use it if there is one
|
||||
target_os_family_specific_dockerfile="./docker/distribution/$target_os_family/$dockerfile_name.Dockerfile"
|
||||
if test -f "$target_os_family_specific_dockerfile"; then
|
||||
dockerfile="$target_os_family_specific_dockerfile"
|
||||
fi
|
||||
|
||||
target_os_specific_dockerfile="./docker/distribution/$target_os_family/$target_os/$dockerfile_name.Dockerfile"
|
||||
if test -f "$target_os_specific_dockerfile"; then
|
||||
dockerfile="$target_os_specific_dockerfile"
|
||||
fi
|
@ -1,6 +0,0 @@
|
||||
#!/bin/sh
|
||||
set -e
|
||||
|
||||
vendors/opam-repository-tools/rewrite-local-opam-repository.sh
|
||||
opam repo add ligo-opam-repository ./vendors/ligo-opam-repository-local-generated
|
||||
opam update ligo-opam-repository
|
@ -6,7 +6,7 @@ let main =
|
||||
let term = Term.(const print_endline $ const "Ligo needs a command. Do ligo --help") in
|
||||
(term , Term.info "ligo")
|
||||
|
||||
let source n =
|
||||
let source_file n =
|
||||
let open Arg in
|
||||
let info =
|
||||
let docv = "SOURCE_FILE" in
|
||||
@ -53,6 +53,22 @@ let amount =
|
||||
info ~docv ~doc ["amount"] in
|
||||
value @@ opt string "0" info
|
||||
|
||||
let sender =
|
||||
let open Arg in
|
||||
let info =
|
||||
let docv = "SENDER" in
|
||||
let doc = "$(docv) is the sender the dry-run transaction will use." in
|
||||
info ~docv ~doc ["sender"] in
|
||||
value @@ opt (some string) None info
|
||||
|
||||
let source =
|
||||
let open Arg in
|
||||
let info =
|
||||
let docv = "SOURCE" in
|
||||
let doc = "$(docv) is the source the dry-run transaction will use." in
|
||||
info ~docv ~doc ["source"] in
|
||||
value @@ opt (some string) None info
|
||||
|
||||
let display_format =
|
||||
let open Arg in
|
||||
let info =
|
||||
@ -70,83 +86,90 @@ let michelson_code_format =
|
||||
value @@ opt string "michelson" info
|
||||
|
||||
let compile_file =
|
||||
let f source entry_point syntax display_format michelson_format =
|
||||
let f source_file entry_point syntax display_format michelson_format =
|
||||
toplevel ~display_format @@
|
||||
let%bind michelson_format = Main.Display.michelson_format_of_string michelson_format in
|
||||
let%bind contract =
|
||||
trace (simple_info "compiling contract to michelson") @@
|
||||
Ligo.Compile.Of_source.compile_file_contract_entry source entry_point (Syntax_name syntax) in
|
||||
Ligo.Compile.Of_source.compile_file_contract_entry source_file entry_point (Syntax_name syntax) in
|
||||
ok @@ Format.asprintf "%a\n" (Main.Display.michelson_pp michelson_format) contract
|
||||
in
|
||||
let term =
|
||||
Term.(const f $ source 0 $ entry_point 1 $ syntax $ display_format $ michelson_code_format) in
|
||||
Term.(const f $ source_file 0 $ entry_point 1 $ syntax $ display_format $ michelson_code_format) in
|
||||
let cmdname = "compile-contract" in
|
||||
let docs = "Subcommand: compile a contract. See `ligo " ^ cmdname ^ " --help' for a list of options specific to this subcommand." in
|
||||
(term , Term.info ~docs cmdname)
|
||||
|
||||
let compile_parameter =
|
||||
let f source entry_point expression syntax display_format =
|
||||
let f source_file entry_point expression syntax display_format =
|
||||
toplevel ~display_format @@
|
||||
let%bind value =
|
||||
trace (simple_error "compile-input") @@
|
||||
Ligo.Run.Of_source.compile_file_contract_parameter source entry_point expression (Syntax_name syntax) in
|
||||
Ligo.Run.Of_source.compile_file_contract_parameter source_file entry_point expression (Syntax_name syntax) in
|
||||
ok @@ Format.asprintf "%a\n" Tezos_utils.Michelson.pp value
|
||||
in
|
||||
let term =
|
||||
Term.(const f $ source 0 $ entry_point 1 $ expression "PARAMETER" 2 $ syntax $ display_format) in
|
||||
Term.(const f $ source_file 0 $ entry_point 1 $ expression "PARAMETER" 2 $ syntax $ display_format) in
|
||||
let cmdname = "compile-parameter" in
|
||||
let docs = "Subcommand: compile parameters to a michelson expression. The resulting michelson expression can be passed as an argument in a transaction which calls a contract. See `ligo " ^ cmdname ^ " --help' for a list of options specific to this subcommand." in
|
||||
(term , Term.info ~docs cmdname)
|
||||
|
||||
let compile_storage =
|
||||
let f source entry_point expression syntax display_format bigmap =
|
||||
let f source_file entry_point expression syntax display_format bigmap =
|
||||
toplevel ~display_format @@
|
||||
let%bind value =
|
||||
trace (simple_error "compile-storage") @@
|
||||
Ligo.Run.Of_source.compile_file_contract_storage ~value:bigmap source entry_point expression (Syntax_name syntax) in
|
||||
Ligo.Run.Of_source.compile_file_contract_storage ~value:bigmap source_file entry_point expression (Syntax_name syntax) in
|
||||
ok @@ Format.asprintf "%a\n" Tezos_utils.Michelson.pp value
|
||||
in
|
||||
let term =
|
||||
Term.(const f $ source 0 $ entry_point 1 $ expression "STORAGE" 2 $ syntax $ display_format $ bigmap) in
|
||||
Term.(const f $ source_file 0 $ entry_point 1 $ expression "STORAGE" 2 $ syntax $ display_format $ bigmap) in
|
||||
let cmdname = "compile-storage" in
|
||||
let docs = "Subcommand: compile an initial storage in ligo syntax to a michelson expression. The resulting michelson expression can be passed as an argument in a transaction which originates a contract. See `ligo " ^ cmdname ^ " --help' for a list of options specific to this subcommand." in
|
||||
(term , Term.info ~docs cmdname)
|
||||
|
||||
let dry_run =
|
||||
let f source entry_point storage input amount syntax display_format bigmap =
|
||||
let f source_file entry_point storage input amount sender source syntax display_format bigmap =
|
||||
toplevel ~display_format @@
|
||||
let%bind output =
|
||||
Ligo.Run.Of_source.run_contract ~amount ~storage_value:bigmap source entry_point storage input (Syntax_name syntax) in
|
||||
Ligo.Run.Of_source.run_contract
|
||||
~options:{ amount ; sender ; source }
|
||||
~storage_value:bigmap
|
||||
source_file entry_point storage input (Syntax_name syntax) in
|
||||
ok @@ Format.asprintf "%a\n" Ast_simplified.PP.expression output
|
||||
in
|
||||
let term =
|
||||
Term.(const f $ source 0 $ entry_point 1 $ expression "PARAMETER" 2 $ expression "STORAGE" 3 $ amount $ syntax $ display_format $ bigmap) in
|
||||
Term.(const f $ source_file 0 $ entry_point 1 $ expression "PARAMETER" 2 $ expression "STORAGE" 3 $ amount $ sender $ source $ syntax $ display_format $ bigmap) in
|
||||
let cmdname = "dry-run" in
|
||||
let docs = "Subcommand: run a smart-contract with the given storage and input." in
|
||||
(term , Term.info ~docs cmdname)
|
||||
|
||||
let run_function =
|
||||
let f source entry_point parameter amount syntax display_format =
|
||||
let f source_file entry_point parameter amount sender source syntax display_format =
|
||||
toplevel ~display_format @@
|
||||
let%bind output =
|
||||
Ligo.Run.Of_source.run_function_entry ~amount source entry_point parameter (Syntax_name syntax) in
|
||||
Ligo.Run.Of_source.run_function_entry
|
||||
~options:{ amount ; sender ; source }
|
||||
source_file entry_point parameter (Syntax_name syntax) in
|
||||
ok @@ Format.asprintf "%a\n" Ast_simplified.PP.expression output
|
||||
in
|
||||
let term =
|
||||
Term.(const f $ source 0 $ entry_point 1 $ expression "PARAMETER" 2 $ amount $ syntax $ display_format) in
|
||||
Term.(const f $ source_file 0 $ entry_point 1 $ expression "PARAMETER" 2 $ amount $ sender $ source $ syntax $ display_format) in
|
||||
let cmdname = "run-function" in
|
||||
let docs = "Subcommand: run a function with the given parameter." in
|
||||
(term , Term.info ~docs cmdname)
|
||||
|
||||
let evaluate_value =
|
||||
let f source entry_point amount syntax display_format =
|
||||
let f source_file entry_point amount sender source syntax display_format =
|
||||
toplevel ~display_format @@
|
||||
let%bind output =
|
||||
Ligo.Run.Of_source.evaluate_entry ~amount source entry_point (Syntax_name syntax) in
|
||||
Ligo.Run.Of_source.evaluate_entry
|
||||
~options:{ amount ; sender ; source }
|
||||
source_file entry_point (Syntax_name syntax) in
|
||||
ok @@ Format.asprintf "%a\n" Ast_simplified.PP.expression output
|
||||
in
|
||||
let term =
|
||||
Term.(const f $ source 0 $ entry_point 1 $ amount $ syntax $ display_format) in
|
||||
Term.(const f $ source_file 0 $ entry_point 1 $ amount $ sender $ source $ syntax $ display_format) in
|
||||
let cmdname = "evaluate-value" in
|
||||
let docs = "Subcommand: evaluate a given definition." in
|
||||
(term , Term.info ~docs cmdname)
|
||||
|
@ -88,50 +88,61 @@ let compile_file_contract_args =
|
||||
let args = Ast_simplified.e_pair storage_simplified parameter_simplified in
|
||||
Of_simplified.compile_expression ?value args ~env
|
||||
|
||||
type dry_run_options =
|
||||
{ amount : string ;
|
||||
sender : string option ;
|
||||
source : string option }
|
||||
|
||||
let run_contract ?amount ?storage_value source_filename entry_point storage parameter syntax =
|
||||
let make_dry_run_options (opts : dry_run_options) : Of_michelson.options result =
|
||||
let open Proto_alpha_utils.Trace in
|
||||
let open Proto_alpha_utils.Memory_proto_alpha in
|
||||
let open Protocol.Alpha_context in
|
||||
let%bind amount = match Tez.of_string opts.amount with
|
||||
| None -> simple_fail "invalid amount"
|
||||
| Some amount -> ok amount in
|
||||
let%bind sender =
|
||||
match opts.sender with
|
||||
| None -> ok None
|
||||
| Some sender ->
|
||||
let%bind sender =
|
||||
trace_alpha_tzresult
|
||||
(simple_error "invalid address")
|
||||
(Contract.of_b58check sender) in
|
||||
ok (Some sender) in
|
||||
let%bind source =
|
||||
match opts.source with
|
||||
| None -> ok None
|
||||
| Some source ->
|
||||
let%bind source =
|
||||
trace_alpha_tzresult
|
||||
(simple_error "invalid source address")
|
||||
(Contract.of_b58check source) in
|
||||
ok (Some source) in
|
||||
ok @@ make_options ~amount ?source:sender ?payer:source ()
|
||||
|
||||
let run_contract ~options ?storage_value source_filename entry_point storage parameter syntax =
|
||||
let%bind program = Compile.Of_source.type_file syntax source_filename in
|
||||
let%bind code = Compile.Of_typed.compile_function_entry program entry_point in
|
||||
let%bind args = compile_file_contract_args ?value:storage_value source_filename entry_point storage parameter syntax in
|
||||
let%bind ex_value_ty =
|
||||
let options =
|
||||
let open Proto_alpha_utils.Memory_proto_alpha in
|
||||
let amount = Option.bind (fun amount -> Protocol.Alpha_context.Tez.of_string amount) amount in
|
||||
(make_options ?amount ())
|
||||
in
|
||||
Of_michelson.run ~options code args
|
||||
in
|
||||
let%bind options = make_dry_run_options options in
|
||||
let%bind ex_value_ty = Of_michelson.run ~options code args in
|
||||
Compile.Of_simplified.uncompile_typed_program_entry_function_result program entry_point ex_value_ty
|
||||
|
||||
let run_function_entry ?amount source_filename entry_point input syntax =
|
||||
let run_function_entry ~options source_filename entry_point input syntax =
|
||||
let%bind program = Compile.Of_source.type_file syntax source_filename in
|
||||
let%bind code = Compile.Of_typed.compile_function_entry program entry_point in
|
||||
let%bind args = compile_file_expression source_filename entry_point input syntax in
|
||||
let%bind ex_value_ty =
|
||||
let options =
|
||||
let open Proto_alpha_utils.Memory_proto_alpha in
|
||||
let amount = Option.bind (fun amount -> Protocol.Alpha_context.Tez.of_string amount) amount in
|
||||
(make_options ?amount ())
|
||||
in
|
||||
Of_michelson.run ~options code args
|
||||
in
|
||||
let%bind options = make_dry_run_options options in
|
||||
let%bind ex_value_ty = Of_michelson.run ~options code args in
|
||||
Compile.Of_simplified.uncompile_typed_program_entry_function_result program entry_point ex_value_ty
|
||||
|
||||
let evaluate_entry ?amount source_filename entry_point syntax =
|
||||
let evaluate_entry ~options source_filename entry_point syntax =
|
||||
let%bind program = Compile.Of_source.type_file syntax source_filename in
|
||||
let%bind code = Compile.Of_typed.compile_expression_as_function_entry program entry_point in
|
||||
let%bind ex_value_ty =
|
||||
let options =
|
||||
let open Proto_alpha_utils.Memory_proto_alpha in
|
||||
let amount = Option.bind (fun amount -> Protocol.Alpha_context.Tez.of_string amount) amount in
|
||||
(make_options ?amount ())
|
||||
in
|
||||
Of_michelson.evaluate ~options code
|
||||
in
|
||||
let%bind options = make_dry_run_options options in
|
||||
let%bind ex_value_ty = Of_michelson.evaluate ~options code in
|
||||
Compile.Of_simplified.uncompile_typed_program_entry_expression_result program entry_point ex_value_ty
|
||||
|
||||
let evaluate_michelson expression syntax =
|
||||
let%bind code = Compile.Of_source.compile_expression_as_function expression syntax in
|
||||
Of_michelson.evaluate_michelson code
|
||||
|
||||
|
||||
|
21
src/passes/1-parser/pascaligo.mli
Normal file
21
src/passes/1-parser/pascaligo.mli
Normal file
@ -0,0 +1,21 @@
|
||||
(* This file provides an interface to the PascaLIGO parser. *)
|
||||
|
||||
open Trace
|
||||
|
||||
module Parser = Parser_pascaligo.Parser
|
||||
module AST = Parser_pascaligo.AST
|
||||
module ParserLog = Parser_pascaligo.ParserLog
|
||||
module LexToken = Parser_pascaligo.LexToken
|
||||
|
||||
|
||||
(** Open a PascaLIGO filename given by string and convert into an abstract syntax tree. *)
|
||||
val parse_file : string -> (AST.t result)
|
||||
|
||||
(** Convert a given string into a PascaLIGO abstract syntax tree *)
|
||||
val parse_string : string -> AST.t result
|
||||
|
||||
(** Parse a given string as a PascaLIGO expression and return an expression AST.
|
||||
|
||||
This is intended to be used for interactive interpreters, or other scenarios
|
||||
where you would want to parse a PascaLIGO expression outside of a contract. *)
|
||||
val parse_expression : string -> AST.expr result
|
@ -135,8 +135,15 @@ type 'a braces = {
|
||||
rbrace : rbrace
|
||||
}
|
||||
|
||||
(* The Abstract Syntax Tree *)
|
||||
(** The Abstract Syntax Tree
|
||||
|
||||
The AST mirrors the contents of Parser.mly, which defines a tree of parsing
|
||||
productions that are used to make a syntax tree from a given program input.
|
||||
|
||||
This file defines the concrete AST for PascaLIGO, which is used to associate
|
||||
regions of the source code text with the contents of the syntax tree.
|
||||
|
||||
*)
|
||||
type t = {
|
||||
decl : declaration nseq;
|
||||
eof : eof
|
||||
|
@ -1,4 +1,4 @@
|
||||
(* This signature defines the lexical tokens for LIGO
|
||||
(** This signature defines the lexical tokens for LIGO
|
||||
|
||||
_Tokens_ are the abstract units which are used by the parser to
|
||||
build the abstract syntax tree (AST), in other words, the stream of
|
||||
|
@ -1,12 +1,11 @@
|
||||
(* This module defines the sorts of markup recognised by the LIGO
|
||||
(** This module defines the sorts of markup recognised by the LIGO
|
||||
lexer *)
|
||||
|
||||
module Region = Simple_utils.Region
|
||||
|
||||
(* A lexeme is piece of concrete syntax belonging to a token. In
|
||||
(** A lexeme is piece of concrete syntax belonging to a token. In
|
||||
algebraic terms, a token is also a piece of abstract lexical
|
||||
syntax. Lexical units emcompass both markup and lexemes. *)
|
||||
|
||||
type lexeme = string
|
||||
|
||||
type t =
|
||||
@ -19,7 +18,7 @@ type t =
|
||||
|
||||
type markup = t
|
||||
|
||||
(* Pretty-printing of markup
|
||||
(** Pretty-printing of markup
|
||||
|
||||
The difference between [to_lexeme] and [to_string] is that the
|
||||
former builds the corresponding concrete syntax (the lexeme),
|
||||
|
@ -8,7 +8,6 @@ open Combinators
|
||||
|
||||
let nseq_to_list (hd, tl) = hd :: tl
|
||||
let npseq_to_list (hd, tl) = hd :: (List.map snd tl)
|
||||
let npseq_to_nelist (hd, tl) = hd, (List.map snd tl)
|
||||
let pseq_to_list = function
|
||||
| None -> []
|
||||
| Some lst -> npseq_to_list lst
|
||||
@ -119,49 +118,6 @@ module Errors = struct
|
||||
] in
|
||||
error ~data title message
|
||||
|
||||
let unsupported_map_patches patch =
|
||||
let title () = "map patches" in
|
||||
let message () =
|
||||
Format.asprintf "map patches (a.k.a. functional updates) are \
|
||||
not supported yet" in
|
||||
let data = [
|
||||
("patch_loc",
|
||||
fun () -> Format.asprintf "%a" Location.pp_lift @@ patch.Region.region)
|
||||
] in
|
||||
error ~data title message
|
||||
|
||||
let unsupported_set_patches patch =
|
||||
let title () = "set patches" in
|
||||
let message () =
|
||||
Format.asprintf "set patches (a.k.a. functional updates) are \
|
||||
not supported yet" in
|
||||
let data = [
|
||||
("patch_loc",
|
||||
fun () -> Format.asprintf "%a" Location.pp_lift @@ patch.Region.region)
|
||||
] in
|
||||
error ~data title message
|
||||
|
||||
(* let unsupported_set_removal remove =
|
||||
let title () = "set removals" in
|
||||
let message () =
|
||||
Format.asprintf "removal of elements in a set is not \
|
||||
supported yet" in
|
||||
let data = [
|
||||
("removal_loc",
|
||||
fun () -> Format.asprintf "%a" Location.pp_lift @@ remove.Region.region)
|
||||
] in
|
||||
error ~data title message *)
|
||||
|
||||
let unsupported_deep_set_rm path =
|
||||
let title () = "set removals" in
|
||||
let message () =
|
||||
Format.asprintf "removal of members from embedded sets is not supported yet" in
|
||||
let data = [
|
||||
("path_loc",
|
||||
fun () -> Format.asprintf "%a" Location.pp_lift @@ path.Region.region)
|
||||
] in
|
||||
error ~data title message
|
||||
|
||||
let unsupported_non_var_pattern p =
|
||||
let title () = "pattern is not a variable" in
|
||||
let message () =
|
||||
@ -817,10 +773,46 @@ and simpl_single_instruction : Raw.single_instr -> (_ -> expression result) resu
|
||||
in
|
||||
return_statement @@ expr
|
||||
)
|
||||
| MapPatch patch ->
|
||||
fail @@ unsupported_map_patches patch
|
||||
| SetPatch patch ->
|
||||
fail @@ unsupported_set_patches patch
|
||||
| MapPatch patch -> (
|
||||
let (map_p, loc) = r_split patch in
|
||||
let (name, access_path) = simpl_path map_p.path in
|
||||
let%bind inj = bind_list
|
||||
@@ List.map (fun (x:Raw.binding Region.reg) ->
|
||||
let x = x.value in
|
||||
let (key, value) = x.source, x.image in
|
||||
let%bind key' = simpl_expression key in
|
||||
let%bind value' = simpl_expression value
|
||||
in ok @@ (key', value')
|
||||
)
|
||||
@@ pseq_to_list map_p.map_inj.value.elements in
|
||||
let expr =
|
||||
match inj with
|
||||
| [] -> e_skip ~loc ()
|
||||
| _ :: _ ->
|
||||
let assigns = List.fold_right
|
||||
(fun (key, value) map -> (e_map_add key value map))
|
||||
inj
|
||||
(e_accessor ~loc (e_variable name) access_path)
|
||||
in e_assign ~loc name access_path assigns
|
||||
in return_statement @@ expr
|
||||
)
|
||||
| SetPatch patch -> (
|
||||
let (setp, loc) = r_split patch in
|
||||
let (name , access_path) = simpl_path setp.path in
|
||||
let%bind inj =
|
||||
bind_list @@
|
||||
List.map simpl_expression @@
|
||||
pseq_to_list setp.set_inj.value.elements in
|
||||
let expr =
|
||||
match inj with
|
||||
| [] -> e_skip ~loc ()
|
||||
| _ :: _ ->
|
||||
let assigns = List.fold_right
|
||||
(fun hd s -> e_constant "SET_ADD" [hd ; s])
|
||||
inj (e_accessor ~loc (e_variable name) access_path) in
|
||||
e_assign ~loc name access_path assigns in
|
||||
return_statement @@ expr
|
||||
)
|
||||
| MapRemove r -> (
|
||||
let (v , loc) = r_split r in
|
||||
let key = v.key in
|
||||
@ -837,12 +829,16 @@ and simpl_single_instruction : Raw.single_instr -> (_ -> expression result) resu
|
||||
)
|
||||
| SetRemove r -> (
|
||||
let (set_rm, loc) = r_split r in
|
||||
let%bind set = match set_rm.set with
|
||||
| Name v -> ok v.value
|
||||
| Path path -> fail @@ unsupported_deep_set_rm path in
|
||||
let%bind (varname, set, path) = match set_rm.set with
|
||||
| Name v -> ok (v.value, e_variable v.value, [])
|
||||
| Path path ->
|
||||
let(name, p') = simpl_path set_rm.set in
|
||||
let%bind accessor = simpl_projection path in
|
||||
ok @@ (name, accessor, p')
|
||||
in
|
||||
let%bind removed' = simpl_expression set_rm.element in
|
||||
let expr = e_constant ~loc "SET_REMOVE" [removed' ; e_variable set] in
|
||||
return_statement @@ e_assign ~loc set [] expr
|
||||
let expr = e_constant ~loc "SET_REMOVE" [removed' ; set] in
|
||||
return_statement @@ e_assign ~loc varname path expr
|
||||
)
|
||||
|
||||
and simpl_path : Raw.path -> string * Ast_simplified.access_path = fun p ->
|
||||
|
@ -1,81 +1,26 @@
|
||||
(** Converts PascaLIGO programs to the Simplified Abstract Syntax Tree. *)
|
||||
|
||||
open Trace
|
||||
open Ast_simplified
|
||||
|
||||
module Raw = Parser.Pascaligo.AST
|
||||
module SMap = Map.String
|
||||
|
||||
(*
|
||||
val nseq_to_list : 'a * 'a list -> 'a list
|
||||
val npseq_to_list : 'a * ( 'b * 'a ) list -> 'a list
|
||||
*)
|
||||
val npseq_to_nelist : 'a * ( 'b * 'c ) list -> 'a * 'c list
|
||||
(*
|
||||
val pseq_to_list : ('a * ('b * 'a) list) option -> 'a list
|
||||
val get_value : 'a Raw.reg -> 'a
|
||||
*)
|
||||
|
||||
module Errors : sig
|
||||
(*
|
||||
val unsupported_cst_constr : Raw.pattern -> unit -> error
|
||||
val unsupported_ass_None : Raw.wild -> unit -> error
|
||||
val unsupported_entry_decl : 'a Raw.reg -> unit -> error
|
||||
val unsupported_proc_decl : 'a Raw.reg -> unit -> error
|
||||
*)
|
||||
|
||||
val bad_bytes : Location.t -> string -> unit -> error
|
||||
(*
|
||||
val unsupported_local_proc : Raw.wild -> unit -> error
|
||||
val corner_case : loc:string -> string -> unit -> error
|
||||
val unknown_predefined_type : string Raw.reg -> unit -> error
|
||||
*)
|
||||
|
||||
val unsupported_arith_op : Raw.expr -> unit -> error
|
||||
(*
|
||||
val unsupported_set_expr : Raw.expr -> unit -> error
|
||||
*)
|
||||
|
||||
val unsupported_proc_calls : 'a Raw.reg -> unit -> error
|
||||
(*
|
||||
val unsupported_for_loops : Raw.wild -> unit -> error
|
||||
val unsupported_deep_map_assign : 'a Raw.reg -> unit -> error
|
||||
val unsupported_empty_record_patch : 'a Raw.reg -> unit -> error
|
||||
val unsupported_map_patches : 'a Raw.reg -> unit -> error
|
||||
val unsupported_set_patches : 'a Raw.reg -> unit -> error
|
||||
val unsupported_deep_map_rm : 'a Raw.reg -> unit -> error
|
||||
val unsupported_set_removal : 'a Raw.reg -> unit -> error
|
||||
val unsupported_non_var_pattern : Raw.pattern -> unit -> error
|
||||
val only_constructors : Raw.pattern -> unit -> error
|
||||
val unsupported_tuple_pattern : Raw.pattern -> unit -> error
|
||||
val unsupported_deep_Some_patterns : Raw.pattern -> unit -> error
|
||||
val unsupported_deep_list_patterns : 'a Raw.reg -> unit -> error
|
||||
val unsupported_sub_blocks : 'a Raw.reg -> unit -> error
|
||||
val simplifying_instruction : Raw.instruction -> unit -> error
|
||||
*)
|
||||
|
||||
end
|
||||
|
||||
(*
|
||||
val r_split : 'a Raw.reg -> 'a * Location.t
|
||||
val return : expr -> ( expr option -> expr result ) result
|
||||
val return_let_in : ?loc:Location.t -> string * type_expression option -> expr -> ( expr option -> expr result ) result
|
||||
val simpl_type_expression : Raw.type_expr -> type_expression result
|
||||
val simpl_list_type_expression : Raw.type_expr list -> type_expression result
|
||||
*)
|
||||
|
||||
(** Convert a concrete PascaLIGO expression AST to the simplified expression AST
|
||||
used by the compiler. *)
|
||||
val simpl_expression : Raw.expr -> expr result
|
||||
(*
|
||||
val simpl_logic_expression : Raw.logic_expr -> expression result
|
||||
val simpl_list_expression : Raw.list_expr -> expression result
|
||||
val simpl_set_expression : Raw.set_expr -> expression result
|
||||
val simpl_binop : string -> Raw.wild Raw.bin_op Region.reg -> expression result
|
||||
val simpl_unop : string -> Raw.wild Raw.un_op Region.reg -> expression result
|
||||
val simpl_tuple_expression : ?loc:Location.t -> Raw.expr list -> expression result
|
||||
val simpl_local_declaration : Raw.local_decl -> ( expr option -> expr result) result
|
||||
val simpl_data_declaration : Raw.data_decl -> ( expr option -> expr result ) result
|
||||
val simpl_param : Raw.param_decl -> (type_name * type_expression) result
|
||||
val simpl_fun_declaration : loc:Location.t -> Raw.fun_decl -> ((name * type_expression option) * expression) result
|
||||
val simpl_declaration : Raw.declaration -> declaration Location.wrap result
|
||||
val simpl_single_instruction : Raw.single_instr -> (expression option -> expression result) result
|
||||
val simpl_path : Raw.path -> string * Ast_simplified.access_path
|
||||
val simpl_cases : (Raw.pattern * 'a) list -> 'a matching result
|
||||
val simpl_instruction_block : Raw.instruction -> (expression option -> expression result) result
|
||||
val simpl_instruction : Raw.instruction -> (expression option -> expression result) result
|
||||
val simpl_statements : Raw.statements -> (expression option -> expression result) result
|
||||
val simpl_block : Raw.block -> (expression option -> expression result) result
|
||||
*)
|
||||
|
||||
(** Convert a concrete PascaLIGO program AST to the simplified program AST used
|
||||
by the compiler. *)
|
||||
val simpl_program : Raw.ast -> program result
|
||||
|
@ -1,3 +1,7 @@
|
||||
(* The Transpiler is a function that takes as input the Typed AST, and outputs expressions in a language that is basically a Michelson with named variables and first-class-environments.
|
||||
|
||||
For more info, see back-end.md: https://gitlab.com/ligolang/ligo/blob/dev/gitlab-pages/docs/contributors/big-picture/back-end.md *)
|
||||
|
||||
open! Trace
|
||||
open Helpers
|
||||
|
||||
|
@ -438,11 +438,15 @@ module Typer = struct
|
||||
then ok @@ t_int () else
|
||||
if eq_1 a (t_tez ()) && eq_1 b (t_nat ())
|
||||
then ok @@ t_tez () else
|
||||
if eq_1 a (t_tez ()) && eq_1 b (t_tez ())
|
||||
then ok @@ t_nat () else
|
||||
simple_fail "Dividing with wrong types"
|
||||
|
||||
let mod_ = typer_2 "MOD" @@ fun a b ->
|
||||
if (eq_1 a (t_nat ()) || eq_1 a (t_int ())) && (eq_1 b (t_nat ()) || eq_1 b (t_int ()))
|
||||
then ok @@ t_nat () else
|
||||
if eq_1 a (t_tez ()) && eq_1 b (t_tez ())
|
||||
then ok @@ t_tez () else
|
||||
simple_fail "Computing modulo with wrong types"
|
||||
|
||||
let add = typer_2 "ADD" @@ fun a b ->
|
||||
|
@ -1,3 +1,5 @@
|
||||
(** Pretty printer for the Simplified Abstract Syntax Tree *)
|
||||
|
||||
open Types
|
||||
open Format
|
||||
|
||||
@ -32,7 +34,7 @@ val matching_variant_case : (formatter -> 'a -> unit) -> formatter -> (construct
|
||||
val matching : (formatter -> 'a -> unit) -> formatter -> 'a matching -> unit
|
||||
*)
|
||||
|
||||
(* Shows the type expected for the matched value *)
|
||||
(** Shows the type expected for the matched value *)
|
||||
val matching_type : formatter -> 'a matching -> unit
|
||||
|
||||
(*
|
||||
@ -41,4 +43,5 @@ val matching_variant_case_type : formatter -> ( ( constructor_name * name) * 'a)
|
||||
val declaration : formatter -> declaration -> unit
|
||||
|
||||
*)
|
||||
(** Pretty print a full program AST *)
|
||||
val program : formatter -> program -> unit
|
||||
|
@ -25,6 +25,17 @@ function rm (var m : foobar) : foobar is block {
|
||||
remove 42 from map m
|
||||
} with m
|
||||
|
||||
function patch_ (var m: foobar) : foobar is block {
|
||||
patch m with map [0 -> 5; 1 -> 6; 2 -> 7]
|
||||
} with m
|
||||
|
||||
function patch_empty (var m : foobar) : foobar is block {
|
||||
patch m with map []
|
||||
} with m
|
||||
|
||||
function patch_deep (var m: foobar * nat) : foobar * nat is
|
||||
begin patch m.0 with map [1 -> 9]; end with m
|
||||
|
||||
function size_ (const m : foobar) : nat is
|
||||
block {skip} with (size(m))
|
||||
|
||||
@ -60,4 +71,4 @@ var coco : (int*foobar) := (0, m);
|
||||
block {
|
||||
remove 42 from map coco.1 ;
|
||||
coco.1[32] := 16 ;
|
||||
} with coco.1
|
||||
} with coco.1
|
||||
|
@ -11,6 +11,15 @@ let set_ (n : int) (m : foobar) : foobar =
|
||||
|
||||
let rm (m : foobar) : foobar = Map.remove 42 m
|
||||
|
||||
(* Dummy test so that we can add the same test for PascaLIGO *)
|
||||
let patch_ (m : foobar) : foobar = Map.literal [ (0, 5) ; (1, 6) ; (2, 7) ]
|
||||
|
||||
(* Second dummy test, see above *)
|
||||
let patch_empty (m : foobar) : foobar = Map.literal [ (0, 0) ; (1, 1) ; (2, 2) ]
|
||||
|
||||
(* Third dummy test, see above *)
|
||||
let patch_deep (m: foobar * nat) : foobar * nat = (Map.literal [ (0, 0) ; (1, 9) ; (2, 2) ], 10p)
|
||||
|
||||
let size_ (m : foobar) : nat = Map.size m
|
||||
|
||||
let gf (m : foobar) : int = Map.find 23 m
|
||||
@ -34,4 +43,4 @@ let deep_op (m : foobar) : foobar =
|
||||
let coco = (0,m) in
|
||||
let coco = (0 , Map.remove 42 coco.(1)) in
|
||||
let coco = (0 , Map.update 32 (Some 16) coco.(1)) in
|
||||
coco.(1)
|
||||
coco.(1)
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user