Add ppx_derive_at_runtime to README #34
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: ci | |
on: | |
push: | |
pull_request: | |
workflow_dispatch: | |
jobs: | |
build: | |
strategy: | |
matrix: | |
os: | |
- ubuntu-latest | |
# - macos-latest | |
ocaml-compiler: | |
- 5.0.x | |
- 4.14.x | |
- 4.13.x | |
- 4.12.x | |
- 4.11.x | |
- 4.10.x | |
- 4.09.x | |
- 4.08.x | |
runs-on: ${{ matrix.os }} | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v3 | |
- name: Set up OCaml ${{ matrix.ocaml-compiler }} | |
uses: ocaml/setup-ocaml@v2 | |
with: | |
ocaml-compiler: ${{ matrix.ocaml-compiler }} | |
- name: Install dependencies | |
run: opam install ppx_easy_deriving --deps-only --with-test | |
- name: Install bench dependencies | |
if: ${{ matrix.ocaml-compiler >= '4.10.0' }} | |
run: opam install ppx_easy_deriving-bench --deps-only --with-test | |
- name: Build | |
run: opam exec -- dune build | |
- name: Test | |
run: opam exec -- dune runtest | |
lower-bounds-downgrade: | |
# use external 0install solver to downgrade: https://github.com/ocaml-opam/opam-0install-solver | |
# TODO: will be built in in opam 2.2: https://github.com/ocaml/opam/pull/4909 | |
strategy: | |
matrix: | |
os: | |
- ubuntu-latest | |
- macos-latest | |
ocaml-compiler: | |
- 4.14.x | |
runs-on: ${{ matrix.os }} | |
env: | |
OPAMCONFIRMLEVEL: unsafe-yes # allow opam depext to yes package manager prompts | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v3 | |
- name: Set up OCaml ${{ matrix.ocaml-compiler }} | |
uses: ocaml/setup-ocaml@v2 | |
with: | |
ocaml-compiler: ${{ matrix.ocaml-compiler }} | |
opam-local-packages: ppx_easy_deriving.opam | |
- name: Install dependencies | |
run: opam install ppx_easy_deriving --deps-only --with-test | |
- name: Install opam-0install | |
run: opam install opam-0install | |
- name: Downgrade dependencies | |
# must specify ocaml-base-compiler again to prevent it from being downgraded | |
# run: opam install $(opam exec -- opam-0install --prefer-oldest ppx_easy_deriving ocaml-base-compiler.${{ matrix.ocaml-compiler }}) | |
run: opam install --unlock-base $(opam exec -- opam-0install --prefer-oldest --with-test ppx_easy_deriving) | |
- name: Build | |
run: opam exec -- dune build | |
- name: Test | |
run: opam exec -- dune runtest | |
opam-install: | |
strategy: | |
matrix: | |
os: | |
- ubuntu-latest | |
- macos-latest | |
ocaml-compiler: | |
- 4.14.x | |
runs-on: ${{ matrix.os }} | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v3 | |
- name: Set up OCaml ${{ matrix.ocaml-compiler }} | |
uses: ocaml/setup-ocaml@v2 | |
with: | |
ocaml-compiler: ${{ matrix.ocaml-compiler }} | |
opam-local-packages: ppx_easy_deriving.opam | |
- name: Install with test | |
run: opam install ppx_easy_deriving --with-test |