diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 000000000..ccf03db24 --- /dev/null +++ b/.dockerignore @@ -0,0 +1,6 @@ +dist +_opam +_build +docker +gitlab-pages +Makefile \ No newline at end of file diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 1fa3cd9ec..9589ea238 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -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: diff --git a/dist/.gitignore b/dist/.gitignore new file mode 100644 index 000000000..86d0cb272 --- /dev/null +++ b/dist/.gitignore @@ -0,0 +1,4 @@ +# Ignore everything in this directory +* +# Except this file +!.gitignore \ No newline at end of file diff --git a/docker/distribution/debian/distribute.Dockerfile b/docker/distribution/debian/distribute.Dockerfile new file mode 100644 index 000000000..e69de29bb diff --git a/docker/distribution/debian/package.Dockerfile b/docker/distribution/debian/package.Dockerfile new file mode 100644 index 000000000..440496521 --- /dev/null +++ b/docker/distribution/debian/package.Dockerfile @@ -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 \ No newline at end of file diff --git a/docker/Dockerfile b/docker/distribution/generic/build.Dockerfile similarity index 81% rename from docker/Dockerfile rename to docker/distribution/generic/build.Dockerfile index 057bd6436..e183fc683 100644 --- a/docker/Dockerfile +++ b/docker/distribution/generic/build.Dockerfile @@ -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 diff --git a/gitlab-pages/docs/contributors/ligo_test_guide.md b/gitlab-pages/docs/contributors/ligo_test_guide.md new file mode 100644 index 000000000..114b662c1 --- /dev/null +++ b/gitlab-pages/docs/contributors/ligo_test_guide.md @@ -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. diff --git a/gitlab-pages/docs/setup/installation.md b/gitlab-pages/docs/setup/installation.md index 93dd0fbaa..280fd144f 100644 --- a/gitlab-pages/docs/setup/installation.md +++ b/gitlab-pages/docs/setup/installation.md @@ -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). \ No newline at end of file diff --git a/gitlab-pages/website/static/deb/.gitignore b/gitlab-pages/website/static/deb/.gitignore new file mode 100644 index 000000000..72e8ffc0d --- /dev/null +++ b/gitlab-pages/website/static/deb/.gitignore @@ -0,0 +1 @@ +* diff --git a/index.tar.gz b/index.tar.gz deleted file mode 100644 index 022ac1aef..000000000 Binary files a/index.tar.gz and /dev/null differ diff --git a/packages/bip39/bip39.dev/opam b/packages/bip39/bip39.dev/opam deleted file mode 100644 index e4a900eb0..000000000 --- a/packages/bip39/bip39.dev/opam +++ /dev/null @@ -1,29 +0,0 @@ -opam-version: "2.0" -name: "bip39" -version: "dev" -maintainer: "Vincent Bernardoff " -authors: ["Vincent Bernardoff "] -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" -} diff --git a/packages/blake2/blake2.dev/opam b/packages/blake2/blake2.dev/opam deleted file mode 100644 index d9c6bb6e3..000000000 --- a/packages/blake2/blake2.dev/opam +++ /dev/null @@ -1,24 +0,0 @@ -version: "dev" -opam-version: "2.0" -name: "blake2" -authors: "Vincent Bernardoff " -maintainer: "Vincent Bernardoff " -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" -} diff --git a/packages/hacl/hacl.dev/opam b/packages/hacl/hacl.dev/opam deleted file mode 100644 index 318720b99..000000000 --- a/packages/hacl/hacl.dev/opam +++ /dev/null @@ -1,28 +0,0 @@ -version: "dev" -opam-version: "2.0" -name: "hacl" -authors: [ "Vincent Bernardoff " "Marco Stronati " ] -maintainer: "Vincent Bernardoff " -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" -} diff --git a/packages/irmin-lmdb/irmin-lmdb.dev/opam b/packages/irmin-lmdb/irmin-lmdb.dev/opam deleted file mode 100644 index 46661c02d..000000000 --- a/packages/irmin-lmdb/irmin-lmdb.dev/opam +++ /dev/null @@ -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" -} diff --git a/packages/ledgerwallet-tezos/ledgerwallet-tezos.dev/opam b/packages/ledgerwallet-tezos/ledgerwallet-tezos.dev/opam deleted file mode 100644 index c9f27d2ab..000000000 --- a/packages/ledgerwallet-tezos/ledgerwallet-tezos.dev/opam +++ /dev/null @@ -1,22 +0,0 @@ -version: "dev" -opam-version: "2.0" -name: "ledgerwallet-tezos" -authors: "Vincent Bernardoff " -maintainer: "Vincent Bernardoff " -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" -} diff --git a/packages/ledgerwallet/ledgerwallet.dev/opam b/packages/ledgerwallet/ledgerwallet.dev/opam deleted file mode 100644 index 588236491..000000000 --- a/packages/ledgerwallet/ledgerwallet.dev/opam +++ /dev/null @@ -1,24 +0,0 @@ -opam-version: "2.0" -version: "dev" -name: "ledgerwallet" -authors: "Vincent Bernardoff " -maintainer: "Vincent Bernardoff " -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" -} diff --git a/packages/ligo/ligo.dev/opam b/packages/ligo/ligo.dev/opam deleted file mode 100644 index e1e0f283b..000000000 --- a/packages/ligo/ligo.dev/opam +++ /dev/null @@ -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" -} diff --git a/packages/lmdb/lmdb.dev/opam b/packages/lmdb/lmdb.dev/opam deleted file mode 100644 index b4efa7c72..000000000 --- a/packages/lmdb/lmdb.dev/opam +++ /dev/null @@ -1,23 +0,0 @@ -opam-version: "2.0" -name: "lmdb" -version: "0.1" -authors: "Vincent Bernardoff " -maintainer: "Vincent Bernardoff " -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" -} diff --git a/packages/michelson-parser/michelson-parser.dev/opam b/packages/michelson-parser/michelson-parser.dev/opam deleted file mode 100644 index f2f5396d8..000000000 --- a/packages/michelson-parser/michelson-parser.dev/opam +++ /dev/null @@ -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" -} diff --git a/packages/ocplib-ezresto-directory/ocplib-ezresto-directory.dev/opam b/packages/ocplib-ezresto-directory/ocplib-ezresto-directory.dev/opam deleted file mode 100644 index 934ba0cf2..000000000 --- a/packages/ocplib-ezresto-directory/ocplib-ezresto-directory.dev/opam +++ /dev/null @@ -1,28 +0,0 @@ -name: "ocplib-ezresto-directory" -version: "dev" -opam-version: "2.0" -maintainer: "Grégoire Henry " -authors: "Grégoire Henry " -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" -} diff --git a/packages/ocplib-ezresto/ocplib-ezresto.dev/opam b/packages/ocplib-ezresto/ocplib-ezresto.dev/opam deleted file mode 100644 index 37a7933f8..000000000 --- a/packages/ocplib-ezresto/ocplib-ezresto.dev/opam +++ /dev/null @@ -1,28 +0,0 @@ -name: "ocplib-ezresto" -version: "dev" -opam-version: "2.0" -maintainer: "Grégoire Henry " -authors: "Grégoire Henry " -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" -} diff --git a/packages/ocplib-json-typed-browser/ocplib-json-typed-browser.dev/opam b/packages/ocplib-json-typed-browser/ocplib-json-typed-browser.dev/opam deleted file mode 100644 index c620a7382..000000000 --- a/packages/ocplib-json-typed-browser/ocplib-json-typed-browser.dev/opam +++ /dev/null @@ -1,25 +0,0 @@ -opam-version: "2.0" -name: "ocplib-json-typed-browser" -version: "0.6" -maintainer: "Benjamin Canou " -authors: "Benjamin Canou " -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" -} diff --git a/packages/ocplib-json-typed-bson/ocplib-json-typed-bson.dev/opam b/packages/ocplib-json-typed-bson/ocplib-json-typed-bson.dev/opam deleted file mode 100644 index 20399d5ef..000000000 --- a/packages/ocplib-json-typed-bson/ocplib-json-typed-bson.dev/opam +++ /dev/null @@ -1,25 +0,0 @@ -opam-version: "2.0" -name: "ocplib-json-typed-bson" -version: "0.6" -maintainer: "Benjamin Canou " -authors: "Benjamin Canou " -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" -} diff --git a/packages/ocplib-json-typed/ocplib-json-typed.dev/opam b/packages/ocplib-json-typed/ocplib-json-typed.dev/opam deleted file mode 100644 index a3495b59a..000000000 --- a/packages/ocplib-json-typed/ocplib-json-typed.dev/opam +++ /dev/null @@ -1,24 +0,0 @@ -opam-version: "2.0" -name: "ocplib-json-typed" -version: "0.6" -maintainer: "Benjamin Canou " -authors: "Benjamin Canou " -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" -} diff --git a/packages/ocplib-resto-cohttp/ocplib-resto-cohttp.dev/opam b/packages/ocplib-resto-cohttp/ocplib-resto-cohttp.dev/opam deleted file mode 100644 index fa7d828a5..000000000 --- a/packages/ocplib-resto-cohttp/ocplib-resto-cohttp.dev/opam +++ /dev/null @@ -1,28 +0,0 @@ -name: "ocplib-resto-cohttp" -version: "dev" -opam-version: "2.0" -maintainer: "Grégoire Henry " -authors: "Grégoire Henry " -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" -} diff --git a/packages/ocplib-resto-directory/ocplib-resto-directory.dev/opam b/packages/ocplib-resto-directory/ocplib-resto-directory.dev/opam deleted file mode 100644 index 3af56bc61..000000000 --- a/packages/ocplib-resto-directory/ocplib-resto-directory.dev/opam +++ /dev/null @@ -1,29 +0,0 @@ -name: "ocplib-resto-directory" -version: "dev" -opam-version: "2.0" -maintainer: "Grégoire Henry " -authors: "Grégoire Henry " -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" -} diff --git a/packages/ocplib-resto-json/ocplib-resto-json.dev/opam b/packages/ocplib-resto-json/ocplib-resto-json.dev/opam deleted file mode 100644 index f16715117..000000000 --- a/packages/ocplib-resto-json/ocplib-resto-json.dev/opam +++ /dev/null @@ -1,28 +0,0 @@ -name: "ocplib-resto-json" -version: "dev" -opam-version: "2.0" -maintainer: "Grégoire Henry " -authors: "Grégoire Henry " -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" -} diff --git a/packages/ocplib-resto/ocplib-resto.dev/opam b/packages/ocplib-resto/ocplib-resto.dev/opam deleted file mode 100644 index f33383dd6..000000000 --- a/packages/ocplib-resto/ocplib-resto.dev/opam +++ /dev/null @@ -1,27 +0,0 @@ -name: "ocplib-resto" -version: "dev" -opam-version: "2.0" -maintainer: "Grégoire Henry " -authors: "Grégoire Henry " -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" -} diff --git a/packages/pbkdf/pbkdf.dev/opam b/packages/pbkdf/pbkdf.dev/opam deleted file mode 100644 index fa6188c1f..000000000 --- a/packages/pbkdf/pbkdf.dev/opam +++ /dev/null @@ -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 " "Sonia Meruelo "] -maintainer: ["Alfredo Beaumont "] -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" -} diff --git a/packages/proto-alpha-utils/proto-alpha-utils.dev/opam b/packages/proto-alpha-utils/proto-alpha-utils.dev/opam deleted file mode 100644 index 724e07d02..000000000 --- a/packages/proto-alpha-utils/proto-alpha-utils.dev/opam +++ /dev/null @@ -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 " -authors: "Galfour " -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" -} diff --git a/packages/secp256k1/secp256k1.dev/opam b/packages/secp256k1/secp256k1.dev/opam deleted file mode 100644 index f0b055659..000000000 --- a/packages/secp256k1/secp256k1.dev/opam +++ /dev/null @@ -1,22 +0,0 @@ -opam-version: "2.0" -name: "secp256k1" -version: "0.1" -authors: "Vincent Bernardoff " -maintainer: "Vincent Bernardoff " -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" -} diff --git a/packages/simple-utils/simple-utils.dev/opam b/packages/simple-utils/simple-utils.dev/opam deleted file mode 100644 index 5545feb79..000000000 --- a/packages/simple-utils/simple-utils.dev/opam +++ /dev/null @@ -1,54 +0,0 @@ -opam-version: "2.0" -name: "simple-utils" -version: "dev" -synopsis: "LIGO Utilities, to be used by other libraries" -maintainer: "Galfour " -authors: "Galfour " -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" -} diff --git a/packages/tezos-accuser-alpha-commands/tezos-accuser-alpha-commands.dev/opam b/packages/tezos-accuser-alpha-commands/tezos-accuser-alpha-commands.dev/opam deleted file mode 100644 index 1f3a1306c..000000000 --- a/packages/tezos-accuser-alpha-commands/tezos-accuser-alpha-commands.dev/opam +++ /dev/null @@ -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" -} diff --git a/packages/tezos-accuser-alpha/tezos-accuser-alpha.dev/opam b/packages/tezos-accuser-alpha/tezos-accuser-alpha.dev/opam deleted file mode 100644 index 39bb71633..000000000 --- a/packages/tezos-accuser-alpha/tezos-accuser-alpha.dev/opam +++ /dev/null @@ -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" -} diff --git a/packages/tezos-baker-alpha-commands/tezos-baker-alpha-commands.dev/opam b/packages/tezos-baker-alpha-commands/tezos-baker-alpha-commands.dev/opam deleted file mode 100644 index c35bb6d21..000000000 --- a/packages/tezos-baker-alpha-commands/tezos-baker-alpha-commands.dev/opam +++ /dev/null @@ -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" -} diff --git a/packages/tezos-baker-alpha/tezos-baker-alpha.dev/opam b/packages/tezos-baker-alpha/tezos-baker-alpha.dev/opam deleted file mode 100644 index 957e350be..000000000 --- a/packages/tezos-baker-alpha/tezos-baker-alpha.dev/opam +++ /dev/null @@ -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" -} diff --git a/packages/tezos-baking-alpha-commands/tezos-baking-alpha-commands.dev/opam b/packages/tezos-baking-alpha-commands/tezos-baking-alpha-commands.dev/opam deleted file mode 100644 index e6a723bde..000000000 --- a/packages/tezos-baking-alpha-commands/tezos-baking-alpha-commands.dev/opam +++ /dev/null @@ -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" -} diff --git a/packages/tezos-baking-alpha/tezos-baking-alpha.dev/opam b/packages/tezos-baking-alpha/tezos-baking-alpha.dev/opam deleted file mode 100644 index 91a018dff..000000000 --- a/packages/tezos-baking-alpha/tezos-baking-alpha.dev/opam +++ /dev/null @@ -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" -} diff --git a/packages/tezos-base/tezos-base.dev/opam b/packages/tezos-base/tezos-base.dev/opam deleted file mode 100644 index 32564ac5e..000000000 --- a/packages/tezos-base/tezos-base.dev/opam +++ /dev/null @@ -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" -} diff --git a/packages/tezos-clic/tezos-clic.dev/opam b/packages/tezos-clic/tezos-clic.dev/opam deleted file mode 100644 index fe22bdd53..000000000 --- a/packages/tezos-clic/tezos-clic.dev/opam +++ /dev/null @@ -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" -} diff --git a/packages/tezos-client-alpha-commands/tezos-client-alpha-commands.dev/opam b/packages/tezos-client-alpha-commands/tezos-client-alpha-commands.dev/opam deleted file mode 100644 index 67f7f90a8..000000000 --- a/packages/tezos-client-alpha-commands/tezos-client-alpha-commands.dev/opam +++ /dev/null @@ -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" -} diff --git a/packages/tezos-client-alpha/tezos-client-alpha.dev/opam b/packages/tezos-client-alpha/tezos-client-alpha.dev/opam deleted file mode 100644 index 9c3d84601..000000000 --- a/packages/tezos-client-alpha/tezos-client-alpha.dev/opam +++ /dev/null @@ -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" -} diff --git a/packages/tezos-client-base-unix/tezos-client-base-unix.dev/opam b/packages/tezos-client-base-unix/tezos-client-base-unix.dev/opam deleted file mode 100644 index 41905b6c4..000000000 --- a/packages/tezos-client-base-unix/tezos-client-base-unix.dev/opam +++ /dev/null @@ -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" -} diff --git a/packages/tezos-client-base/tezos-client-base.dev/opam b/packages/tezos-client-base/tezos-client-base.dev/opam deleted file mode 100644 index b0607b349..000000000 --- a/packages/tezos-client-base/tezos-client-base.dev/opam +++ /dev/null @@ -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" -} diff --git a/packages/tezos-client-commands/tezos-client-commands.dev/opam b/packages/tezos-client-commands/tezos-client-commands.dev/opam deleted file mode 100644 index d755c9c29..000000000 --- a/packages/tezos-client-commands/tezos-client-commands.dev/opam +++ /dev/null @@ -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" -} diff --git a/packages/tezos-client-demo/tezos-client-demo.dev/opam b/packages/tezos-client-demo/tezos-client-demo.dev/opam deleted file mode 100644 index 30e9eaf07..000000000 --- a/packages/tezos-client-demo/tezos-client-demo.dev/opam +++ /dev/null @@ -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" -} diff --git a/packages/tezos-client-genesis/tezos-client-genesis.dev/opam b/packages/tezos-client-genesis/tezos-client-genesis.dev/opam deleted file mode 100644 index a0166d37a..000000000 --- a/packages/tezos-client-genesis/tezos-client-genesis.dev/opam +++ /dev/null @@ -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" -} diff --git a/packages/tezos-client/tezos-client.dev/opam b/packages/tezos-client/tezos-client.dev/opam deleted file mode 100644 index fd8ca5893..000000000 --- a/packages/tezos-client/tezos-client.dev/opam +++ /dev/null @@ -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" -} diff --git a/packages/tezos-crypto/tezos-crypto.dev/opam b/packages/tezos-crypto/tezos-crypto.dev/opam deleted file mode 100644 index 2696646e1..000000000 --- a/packages/tezos-crypto/tezos-crypto.dev/opam +++ /dev/null @@ -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" -} diff --git a/packages/tezos-data-encoding/tezos-data-encoding.dev/opam b/packages/tezos-data-encoding/tezos-data-encoding.dev/opam deleted file mode 100644 index f436e6d8a..000000000 --- a/packages/tezos-data-encoding/tezos-data-encoding.dev/opam +++ /dev/null @@ -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" -} diff --git a/packages/tezos-embedded-protocol-alpha/tezos-embedded-protocol-alpha.dev/opam b/packages/tezos-embedded-protocol-alpha/tezos-embedded-protocol-alpha.dev/opam deleted file mode 100644 index 61dd7f1e5..000000000 --- a/packages/tezos-embedded-protocol-alpha/tezos-embedded-protocol-alpha.dev/opam +++ /dev/null @@ -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" -} diff --git a/packages/tezos-embedded-protocol-demo/tezos-embedded-protocol-demo.dev/opam b/packages/tezos-embedded-protocol-demo/tezos-embedded-protocol-demo.dev/opam deleted file mode 100644 index ec4f847ec..000000000 --- a/packages/tezos-embedded-protocol-demo/tezos-embedded-protocol-demo.dev/opam +++ /dev/null @@ -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" -} diff --git a/packages/tezos-embedded-protocol-genesis/tezos-embedded-protocol-genesis.dev/opam b/packages/tezos-embedded-protocol-genesis/tezos-embedded-protocol-genesis.dev/opam deleted file mode 100644 index 8e20f6df0..000000000 --- a/packages/tezos-embedded-protocol-genesis/tezos-embedded-protocol-genesis.dev/opam +++ /dev/null @@ -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" -} diff --git a/packages/tezos-endorser-alpha-commands/tezos-endorser-alpha-commands.dev/opam b/packages/tezos-endorser-alpha-commands/tezos-endorser-alpha-commands.dev/opam deleted file mode 100644 index d458260c7..000000000 --- a/packages/tezos-endorser-alpha-commands/tezos-endorser-alpha-commands.dev/opam +++ /dev/null @@ -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" -} diff --git a/packages/tezos-endorser-alpha/tezos-endorser-alpha.dev/opam b/packages/tezos-endorser-alpha/tezos-endorser-alpha.dev/opam deleted file mode 100644 index cb4e35d03..000000000 --- a/packages/tezos-endorser-alpha/tezos-endorser-alpha.dev/opam +++ /dev/null @@ -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" -} diff --git a/packages/tezos-error-monad/tezos-error-monad.dev/opam b/packages/tezos-error-monad/tezos-error-monad.dev/opam deleted file mode 100644 index 1d4f53b41..000000000 --- a/packages/tezos-error-monad/tezos-error-monad.dev/opam +++ /dev/null @@ -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" -} diff --git a/packages/tezos-memory-proto-alpha/tezos-memory-proto-alpha.dev/opam b/packages/tezos-memory-proto-alpha/tezos-memory-proto-alpha.dev/opam deleted file mode 100644 index d86b5e185..000000000 --- a/packages/tezos-memory-proto-alpha/tezos-memory-proto-alpha.dev/opam +++ /dev/null @@ -1,22 +0,0 @@ -opam-version: "2.0" -name: "memory-proto-alpha" -version: "dev" -synopsis: "Tezos Protocol Alpha in memory" -maintainer: "Galfour " -authors: "Galfour " -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" -} diff --git a/packages/tezos-micheline/tezos-micheline.dev/opam b/packages/tezos-micheline/tezos-micheline.dev/opam deleted file mode 100644 index 50ebdc708..000000000 --- a/packages/tezos-micheline/tezos-micheline.dev/opam +++ /dev/null @@ -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" -} diff --git a/packages/tezos-node/tezos-node.dev/opam b/packages/tezos-node/tezos-node.dev/opam deleted file mode 100644 index 89e341fb4..000000000 --- a/packages/tezos-node/tezos-node.dev/opam +++ /dev/null @@ -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" -} diff --git a/packages/tezos-p2p/tezos-p2p.dev/opam b/packages/tezos-p2p/tezos-p2p.dev/opam deleted file mode 100644 index 2d707fcae..000000000 --- a/packages/tezos-p2p/tezos-p2p.dev/opam +++ /dev/null @@ -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" -} diff --git a/packages/tezos-protocol-alpha/tezos-protocol-alpha.dev/opam b/packages/tezos-protocol-alpha/tezos-protocol-alpha.dev/opam deleted file mode 100644 index 1e07e5466..000000000 --- a/packages/tezos-protocol-alpha/tezos-protocol-alpha.dev/opam +++ /dev/null @@ -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" -} diff --git a/packages/tezos-protocol-compiler/tezos-protocol-compiler.dev/opam b/packages/tezos-protocol-compiler/tezos-protocol-compiler.dev/opam deleted file mode 100644 index a6a210c08..000000000 --- a/packages/tezos-protocol-compiler/tezos-protocol-compiler.dev/opam +++ /dev/null @@ -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" -} diff --git a/packages/tezos-protocol-demo/tezos-protocol-demo.dev/opam b/packages/tezos-protocol-demo/tezos-protocol-demo.dev/opam deleted file mode 100644 index b337d1f2d..000000000 --- a/packages/tezos-protocol-demo/tezos-protocol-demo.dev/opam +++ /dev/null @@ -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" -} diff --git a/packages/tezos-protocol-environment-shell/tezos-protocol-environment-shell.dev/opam b/packages/tezos-protocol-environment-shell/tezos-protocol-environment-shell.dev/opam deleted file mode 100644 index a781727a2..000000000 --- a/packages/tezos-protocol-environment-shell/tezos-protocol-environment-shell.dev/opam +++ /dev/null @@ -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" -} diff --git a/packages/tezos-protocol-environment-sigs/tezos-protocol-environment-sigs.dev/opam b/packages/tezos-protocol-environment-sigs/tezos-protocol-environment-sigs.dev/opam deleted file mode 100644 index 45ccd307e..000000000 --- a/packages/tezos-protocol-environment-sigs/tezos-protocol-environment-sigs.dev/opam +++ /dev/null @@ -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" -} diff --git a/packages/tezos-protocol-environment/tezos-protocol-environment.dev/opam b/packages/tezos-protocol-environment/tezos-protocol-environment.dev/opam deleted file mode 100644 index 3ade72e86..000000000 --- a/packages/tezos-protocol-environment/tezos-protocol-environment.dev/opam +++ /dev/null @@ -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" -} diff --git a/packages/tezos-protocol-genesis/tezos-protocol-genesis.dev/opam b/packages/tezos-protocol-genesis/tezos-protocol-genesis.dev/opam deleted file mode 100644 index e2ae0cdb0..000000000 --- a/packages/tezos-protocol-genesis/tezos-protocol-genesis.dev/opam +++ /dev/null @@ -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" -} diff --git a/packages/tezos-protocol-updater/tezos-protocol-updater.dev/opam b/packages/tezos-protocol-updater/tezos-protocol-updater.dev/opam deleted file mode 100644 index 1b435aa71..000000000 --- a/packages/tezos-protocol-updater/tezos-protocol-updater.dev/opam +++ /dev/null @@ -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" -} diff --git a/packages/tezos-rpc-http/tezos-rpc-http.dev/opam b/packages/tezos-rpc-http/tezos-rpc-http.dev/opam deleted file mode 100644 index 657edd557..000000000 --- a/packages/tezos-rpc-http/tezos-rpc-http.dev/opam +++ /dev/null @@ -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" -} diff --git a/packages/tezos-rpc/tezos-rpc.dev/opam b/packages/tezos-rpc/tezos-rpc.dev/opam deleted file mode 100644 index e6ddd7978..000000000 --- a/packages/tezos-rpc/tezos-rpc.dev/opam +++ /dev/null @@ -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" -} diff --git a/packages/tezos-shell-services/tezos-shell-services.dev/opam b/packages/tezos-shell-services/tezos-shell-services.dev/opam deleted file mode 100644 index 2355ee2ac..000000000 --- a/packages/tezos-shell-services/tezos-shell-services.dev/opam +++ /dev/null @@ -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" -} diff --git a/packages/tezos-shell/tezos-shell.dev/opam b/packages/tezos-shell/tezos-shell.dev/opam deleted file mode 100644 index 6d09f9910..000000000 --- a/packages/tezos-shell/tezos-shell.dev/opam +++ /dev/null @@ -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" -} diff --git a/packages/tezos-signer-backends/tezos-signer-backends.dev/opam b/packages/tezos-signer-backends/tezos-signer-backends.dev/opam deleted file mode 100644 index a816c892f..000000000 --- a/packages/tezos-signer-backends/tezos-signer-backends.dev/opam +++ /dev/null @@ -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" -} diff --git a/packages/tezos-signer-services/tezos-signer-services.dev/opam b/packages/tezos-signer-services/tezos-signer-services.dev/opam deleted file mode 100644 index d7d1fb040..000000000 --- a/packages/tezos-signer-services/tezos-signer-services.dev/opam +++ /dev/null @@ -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" -} diff --git a/packages/tezos-signer/tezos-signer.dev/opam b/packages/tezos-signer/tezos-signer.dev/opam deleted file mode 100644 index e1f99dcd2..000000000 --- a/packages/tezos-signer/tezos-signer.dev/opam +++ /dev/null @@ -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" -} diff --git a/packages/tezos-stdlib-unix/tezos-stdlib-unix.dev/opam b/packages/tezos-stdlib-unix/tezos-stdlib-unix.dev/opam deleted file mode 100644 index 1e3e8b9fa..000000000 --- a/packages/tezos-stdlib-unix/tezos-stdlib-unix.dev/opam +++ /dev/null @@ -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" -} diff --git a/packages/tezos-stdlib/tezos-stdlib.dev/opam b/packages/tezos-stdlib/tezos-stdlib.dev/opam deleted file mode 100644 index cc5f7a89b..000000000 --- a/packages/tezos-stdlib/tezos-stdlib.dev/opam +++ /dev/null @@ -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" -} diff --git a/packages/tezos-storage/tezos-storage.dev/opam b/packages/tezos-storage/tezos-storage.dev/opam deleted file mode 100644 index 4faf798c1..000000000 --- a/packages/tezos-storage/tezos-storage.dev/opam +++ /dev/null @@ -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" -} diff --git a/packages/tezos-utils/tezos-utils.dev/opam b/packages/tezos-utils/tezos-utils.dev/opam deleted file mode 100644 index 3361f0f85..000000000 --- a/packages/tezos-utils/tezos-utils.dev/opam +++ /dev/null @@ -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 " -authors: "Galfour " -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" -} diff --git a/packages/tezos-validation/tezos-validation.dev/opam b/packages/tezos-validation/tezos-validation.dev/opam deleted file mode 100644 index 649903755..000000000 --- a/packages/tezos-validation/tezos-validation.dev/opam +++ /dev/null @@ -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" -} diff --git a/packages/uecc/uecc.dev/opam b/packages/uecc/uecc.dev/opam deleted file mode 100644 index f83feaebe..000000000 --- a/packages/uecc/uecc.dev/opam +++ /dev/null @@ -1,25 +0,0 @@ -opam-version: "2.0" -name: "uecc" -version: "dev" -authors: "Vincent Bernardoff " -maintainer: "Vincent Bernardoff " -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" -} diff --git a/scripts/build_docker_image.sh b/scripts/build_docker_image.sh index 273fa92c6..21e3a2bf5 100755 --- a/scripts/build_docker_image.sh +++ b/scripts/build_docker_image.sh @@ -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 . diff --git a/scripts/distribution/generic/build.sh b/scripts/distribution/generic/build.sh new file mode 100755 index 000000000..7f4a89e9a --- /dev/null +++ b/scripts/distribution/generic/build.sh @@ -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" . \ No newline at end of file diff --git a/scripts/distribution/generic/env_variables.sh b/scripts/distribution/generic/env_variables.sh new file mode 100755 index 000000000..7279e4cbe --- /dev/null +++ b/scripts/distribution/generic/env_variables.sh @@ -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" diff --git a/scripts/distribution/generic/package.sh b/scripts/distribution/generic/package.sh new file mode 100755 index 000000000..79be37d41 --- /dev/null +++ b/scripts/distribution/generic/package.sh @@ -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 diff --git a/scripts/distribution/generic/parameters.sh b/scripts/distribution/generic/parameters.sh new file mode 100644 index 000000000..436b48bf0 --- /dev/null +++ b/scripts/distribution/generic/parameters.sh @@ -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 \ No newline at end of file diff --git a/scripts/setup_ligo_opam_repository.sh b/scripts/setup_ligo_opam_repository.sh deleted file mode 100755 index 444aee6d5..000000000 --- a/scripts/setup_ligo_opam_repository.sh +++ /dev/null @@ -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 diff --git a/src/bin/cli.ml b/src/bin/cli.ml index 31e9261ab..3ff01bd1e 100644 --- a/src/bin/cli.ml +++ b/src/bin/cli.ml @@ -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) diff --git a/src/main/run/of_source.ml b/src/main/run/of_source.ml index f9a8e776c..7d365f59d 100644 --- a/src/main/run/of_source.ml +++ b/src/main/run/of_source.ml @@ -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 - - diff --git a/src/passes/1-parser/pascaligo.mli b/src/passes/1-parser/pascaligo.mli new file mode 100644 index 000000000..e82d6ab35 --- /dev/null +++ b/src/passes/1-parser/pascaligo.mli @@ -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 diff --git a/src/passes/1-parser/pascaligo/AST.mli b/src/passes/1-parser/pascaligo/AST.mli index b74df6c75..3bb31ef1e 100644 --- a/src/passes/1-parser/pascaligo/AST.mli +++ b/src/passes/1-parser/pascaligo/AST.mli @@ -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 diff --git a/src/passes/1-parser/pascaligo/LexToken.mli b/src/passes/1-parser/pascaligo/LexToken.mli index d9c19e762..1f94e166f 100644 --- a/src/passes/1-parser/pascaligo/LexToken.mli +++ b/src/passes/1-parser/pascaligo/LexToken.mli @@ -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 diff --git a/src/passes/1-parser/shared/Markup.mli b/src/passes/1-parser/shared/Markup.mli index 2522b52a9..6b31c0647 100644 --- a/src/passes/1-parser/shared/Markup.mli +++ b/src/passes/1-parser/shared/Markup.mli @@ -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), diff --git a/src/passes/2-simplify/pascaligo.ml b/src/passes/2-simplify/pascaligo.ml index ee2e8eea1..822be4e03 100644 --- a/src/passes/2-simplify/pascaligo.ml +++ b/src/passes/2-simplify/pascaligo.ml @@ -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 -> diff --git a/src/passes/2-simplify/pascaligo.mli b/src/passes/2-simplify/pascaligo.mli index ccc42e5e1..c04edcf72 100644 --- a/src/passes/2-simplify/pascaligo.mli +++ b/src/passes/2-simplify/pascaligo.mli @@ -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 diff --git a/src/passes/6-transpiler/transpiler.ml b/src/passes/6-transpiler/transpiler.ml index 0cef7b26b..5886ab542 100644 --- a/src/passes/6-transpiler/transpiler.ml +++ b/src/passes/6-transpiler/transpiler.ml @@ -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 diff --git a/src/passes/operators/operators.ml b/src/passes/operators/operators.ml index 15ed4928a..65b55c18e 100644 --- a/src/passes/operators/operators.ml +++ b/src/passes/operators/operators.ml @@ -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 -> diff --git a/src/stages/ast_simplified/PP.mli b/src/stages/ast_simplified/PP.mli index 4a08aaf28..aa7c9470c 100644 --- a/src/stages/ast_simplified/PP.mli +++ b/src/stages/ast_simplified/PP.mli @@ -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 diff --git a/src/test/contracts/map.ligo b/src/test/contracts/map.ligo index 7437cfb26..a022379cd 100644 --- a/src/test/contracts/map.ligo +++ b/src/test/contracts/map.ligo @@ -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 \ No newline at end of file +} with coco.1 diff --git a/src/test/contracts/map.mligo b/src/test/contracts/map.mligo index 094252c0e..829201b23 100644 --- a/src/test/contracts/map.mligo +++ b/src/test/contracts/map.mligo @@ -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) \ No newline at end of file + coco.(1) diff --git a/src/test/contracts/set_arithmetic.ligo b/src/test/contracts/set_arithmetic.ligo index 81f9b0d6c..879d13940 100644 --- a/src/test/contracts/set_arithmetic.ligo +++ b/src/test/contracts/set_arithmetic.ligo @@ -17,6 +17,20 @@ function remove_op (const s : set(string)) : set(string) is function remove_syntax (var s : set(string)) : set(string) is begin remove "foobar" from set s; end with s +function remove_deep (var s : set(string) * nat) : set(string) * nat is + begin remove "foobar" from set s.0; end with s + +function patch_op (var s: set(string)) : set(string) is + begin patch s with set ["foobar"]; end with s + +function patch_op_deep (var s: set(string)*nat) : set(string)*nat is + begin patch s.0 with set ["foobar"]; end with s + +function patch_op_empty (var s: set(string)) : set(string) is + begin patch s with set []; end with s + function mem_op (const s : set(string)) : bool is begin skip end with set_mem("foobar" , s) + + diff --git a/src/test/contracts/tez.ligo b/src/test/contracts/tez.ligo index cf487808d..cd76c47c7 100644 --- a/src/test/contracts/tez.ligo +++ b/src/test/contracts/tez.ligo @@ -1,4 +1,16 @@ const add_tez : tez = 21mtz + 0.000021tz; const sub_tez : tez = 21mtz - 20mtz; -(* is this enough? *) +(* This is not enough. *) const not_enough_tez : tez = 4611686018427387903mtz; + + +const nat_mul_tez : tez = 1n * 100mtz; +const tez_mul_nat : tez = 100mtz * 10n; + +const tez_div_tez1 : nat = 100mtz / 1mtz; +const tez_div_tez2 : nat = 100mtz / 90mtz; +const tez_div_tez3 : nat = 100mtz / 110mtz; + +const tez_mod_tez1 : tez = 100mtz mod 1mtz; +const tez_mod_tez2 : tez = 100mtz mod 90mtz; +const tez_mod_tez3 : tez = 100mtz mod 110mtz; diff --git a/src/test/integration_tests.ml b/src/test/integration_tests.ml index 7a50ad29b..89e5ef967 100644 --- a/src/test/integration_tests.ml +++ b/src/test/integration_tests.ml @@ -245,6 +245,31 @@ let set_arithmetic () : unit result = expect_eq program "remove_syntax" (e_set [e_string "foo" ; e_string "bar" ; e_string "foobar"]) (e_set [e_string "foo" ; e_string "bar"]) in + let%bind () = + expect_eq program "remove_deep" + (e_pair + (e_set [e_string "foo" ; e_string "bar" ; e_string "foobar"]) + (e_nat 42)) + (e_pair + (e_set [e_string "foo" ; e_string "bar"]) + (e_nat 42)) + in + let%bind () = + expect_eq program "patch_op" + (e_set [e_string "foo" ; e_string "bar"]) + (e_set [e_string "foo" ; e_string "bar"; e_string "foobar"]) in + let%bind () = + expect_eq program "patch_op_deep" + (e_pair + (e_set [e_string "foo" ; e_string "bar"]) + (e_nat 42)) + (e_pair + (e_set [e_string "foo" ; e_string "bar" ; e_string "foobar"]) + (e_nat 42)) in + let%bind () = + expect_eq program "patch_op_empty" + (e_set [e_string "foo" ; e_string "bar"]) + (e_set [e_string "foo" ; e_string "bar"]) in let%bind () = expect_eq program "mem_op" (e_set [e_string "foo" ; e_string "bar" ; e_string "foobar"]) @@ -411,6 +436,25 @@ let map_ type_f path : unit result = let expected = ez [23, 23] in expect_eq program "rm" input expected in + let%bind () = + let input = ez [(0,0) ; (1,1) ; (2,2)] in + let expected = ez [(0, 5) ; (1, 6) ; (2, 7)] in + expect_eq program "patch_" input expected + in + let%bind () = + let input = ez [(0,0) ; (1,1) ; (2,2)] in + let expected = ez [(0,0) ; (1,1) ; (2,2)] in + expect_eq program "patch_empty" input expected + in + let%bind () = + let input = (e_pair + (ez [(0,0) ; (1,1) ; (2,2)]) + (e_nat 10)) in + let expected = (e_pair + (ez [(0,0) ; (1,9) ; (2,2)]) + (e_nat 10)) in + expect_eq program "patch_deep" input expected + in let%bind () = let make_input = fun n -> ez List.(map (fun x -> (x, x)) @@ range n) in let make_expected = e_nat in @@ -829,6 +873,14 @@ let tez_ligo () : unit result = let%bind _ = expect_eq_evaluate program "add_tez" (e_mutez 42) in let%bind _ = expect_eq_evaluate program "sub_tez" (e_mutez 1) in let%bind _ = expect_eq_evaluate program "not_enough_tez" (e_mutez 4611686018427387903) in + let%bind _ = expect_eq_evaluate program "nat_mul_tez" (e_mutez 100) in + let%bind _ = expect_eq_evaluate program "tez_mul_nat" (e_mutez 1000) in + let%bind _ = expect_eq_evaluate program "tez_div_tez1" (e_nat 100) in + let%bind _ = expect_eq_evaluate program "tez_div_tez2" (e_nat 1) in + let%bind _ = expect_eq_evaluate program "tez_div_tez3" (e_nat 0) in + let%bind _ = expect_eq_evaluate program "tez_mod_tez1" (e_mutez 0) in + let%bind _ = expect_eq_evaluate program "tez_mod_tez2" (e_mutez 10) in + let%bind _ = expect_eq_evaluate program "tez_mod_tez3" (e_mutez 100) in ok () let tez_mligo () : unit result = diff --git a/urls.txt b/urls.txt deleted file mode 100644 index 610db2b98..000000000 --- a/urls.txt +++ /dev/null @@ -1 +0,0 @@ -repo f9ec38c6d4dfb4ef9f64edb361326b32 420 diff --git a/vendors/opam-repository-tools/rewrite-local-opam-repository.sh b/vendors/opam-repository-tools/rewrite-local-opam-repository.sh deleted file mode 100755 index 8771aa7bd..000000000 --- a/vendors/opam-repository-tools/rewrite-local-opam-repository.sh +++ /dev/null @@ -1,55 +0,0 @@ -#!/bin/sh - -# Stop on error. -set -e - -# Defensive checks. We're going to remove an entire folder so this script is somewhat dangerous. Better check in advance what can go wrong in the entire execution of the script. -if test -e index.tar.gz && test -e packages && test -e repo && test -e urls.txt; then - if test -d vendors/; then - if test -d "$PWD"; then - if command -v sed >/dev/null 2>&1 \ - && command -v rm >/dev/null 2>&1 \ - && command -v mkdir >/dev/null 2>&1 \ - && command -v cp >/dev/null 2>&1 \ - && command -v find >/dev/null 2>&1 \ - && command -v xargs >/dev/null 2>&1 \ - && command -v opam >/dev/null 2>&1; then - - # Escape the current directory, to be used as the replacement part of the sed regular expression - escaped_project_root="$(printf %s "$PWD" | sed -e 's/\\/\\\\/' | sed -e 's/&/\\\&/' | sed -e 's/~/\\~/')" - - # Recreate vendors/ligo-opam-repository-local-generated which contains a copy of the files related to the opam repository - rm -fr vendors/ligo-opam-repository-local-generated - mkdir vendors/ligo-opam-repository-local-generated - cp -pR index.tar.gz packages repo urls.txt vendors/ligo-opam-repository-local-generated - - # Rewrite the URLs in the opam repository to point to the project root - ( - cd vendors/ligo-opam-repository-local-generated - find . -type f -name opam -print0 | xargs -0 sed -i -e 's~src: *"https://gitlab.com/ligolang/ligo/-/archive/master/ligo\.tar\.gz"~src: "file://'"$escaped_project_root"'"~' - ) - - # Regenerate the index.tar.gz etc. in the local repo - ( - cd vendors/ligo-opam-repository-local-generated - opam admin index - opam admin cache - ) - else - echo "One of the following commands is unavailable: sed rm mkdir cp find xargs opam." - exit 1 - fi - else - echo "Unable to access the current directory as indicated by PWD. Was the CWD of the current shell removed?" - exit 1 - fi - - else - echo "Cannot find the directory vendors/ in the current directory" - exit 1 - fi -else - echo "Cannot find some of the following files in the current directory" - echo "index.tar.gz packages repo urls.txt" - exit 1 -fi diff --git a/vendors/opam-repository-tools/update.sh b/vendors/opam-repository-tools/update.sh deleted file mode 100755 index 8c6b6d741..000000000 --- a/vendors/opam-repository-tools/update.sh +++ /dev/null @@ -1,11 +0,0 @@ -MESSAGE=$1 -if [ -z "$MESSAGE" ] ; then - echo "needs a commit message" - exit 1 -fi -opam admin index -opam admin cache -git add . -git commit -m "$MESSAGE" -git push -opam update new-galfour-tezos