dotthz 0.3.0

Crate to open and write dotThz files in rust.
Documentation
name: Rust

on:
  push:
    branches: [ "master" ]
  pull_request:
    branches: [ "master" ]

env:
  CARGO_TERM_COLOR: always

jobs:
  build:

    runs-on: ubuntu-latest

    steps:
      - uses: actions/checkout@v3

      - name: Install HDF5, MPI and CMAKE
        run: sudo apt-get update && sudo apt-get install -y libhdf5-dev openmpi-bin openmpi-common libopenmpi-dev libhdf5-mpi-dev cmake

      - name: Build
        run: cargo build --all --features "hdf5-lzf,hdf5-mpio,hdf5-zlib,hdf5-blosc,hdf5-f16,hdf5-complex,serde"

      - name: Cargo check
        run: cargo check --all --features "hdf5-lzf,hdf5-mpio,hdf5-zlib,hdf5-blosc,hdf5-f16,hdf5-complex,serde"

      - name: Rustfmt
        run: cargo fmt --all -- --check

      - name: Clippy
        run: cargo clippy --all --all-targets --features "hdf5-lzf,hdf5-mpio,hdf5-zlib,hdf5-blosc,hdf5-f16,hdf5-complex,serde"

      - name: Test
        run: cargo test --all --features "hdf5-lzf,hdf5-mpio,hdf5-zlib,hdf5-blosc,hdf5-f16,hdf5-complex,serde"

      - name: Build with HDF5 static
        run: cargo build --all --features "hdf5-lzf,hdf5-sys-static,hdf5-zlib,hdf5-blosc,hdf5-f16,hdf5-complex,serde"

      - name: Cargo check with HDF5 static
        run: cargo check --all --features "hdf5-lzf,hdf5-sys-static,hdf5-zlib,hdf5-blosc,hdf5-f16,hdf5-complex,serde"

      - name: Clippy with HDF5 static
        run: cargo clippy --all --all-targets --features "hdf5-lzf,hdf5-sys-static,hdf5-zlib,hdf5-blosc,hdf5-f16,hdf5-complex,serde"

      - name: Test with HDF5 static
        run: cargo test --all --features "hdf5-lzf,hdf5-sys-static,hdf5-zlib,hdf5-blosc,hdf5-f16,hdf5-complex,serde"