ryna-language 0.10.1

An extensible programming language with a strong type system
Documentation
name: Rust

on: [push]

env:
  CARGO_TERM_COLOR: always

jobs:
  build:
    runs-on: ubuntu-22.04

    steps:
    - name: Setup | Checkout
      uses: actions/checkout@v2
    - name: Build
      uses: dtolnay/rust-toolchain@master
      with:
        toolchain: stable
        components: clippy

    - name: Build ryna binaries
      run: cargo build --profile release-debug
      
    - name: Run unit tests
      run: cargo test --profile release-debug

    - name: Setup ryna
      run: mkdir -p ${{ github.workspace }}/ryna-libs && cargo run --profile release-debug -- setup -m "${{ github.workspace }}/ryna-libs"

    - name: Run prelude tests
      run: chmod +x ./ryna-libs/prelude/test_all.bash && ./ryna-libs/prelude/test_all.bash "cargo run --profile release-debug --"

    - name: Run cargo-tarpaulin
      uses: actions-rs/tarpaulin@v0.1
      with:
        version: '0.22.0'
        args: '--timeout 10000'

    - name: Upload to codecov.io
      uses: codecov/codecov-action@v1.0.2
      with:
        token: ${{secrets.CODECOV_TOKEN}}