rust_decimal 1.9.0

A Decimal Implementation written in pure Rust suitable for financial calculations.
Documentation
on: [push, pull_request]

name: Continuous integration

jobs:
  ci:
    runs-on: ubuntu-latest
    strategy:
      matrix:
        rust:
          - stable
          - beta

    services:
      postgres:
        image: postgres:11.6
        env:
          POSTGRES_PASSWORD:
        ports:
          - 5432:5432
        options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5

    steps:
      - uses: actions/checkout@v2

      - name: Install postgres development libs
        run: |
          sudo apt-get -y install libpq-dev

      - name: Install toolchain
        uses: actions-rs/toolchain@v1
        with:
          profile: minimal
          toolchain: ${{ matrix.rust }}
          override: true
          components: rustfmt, clippy

      - name: Check file formatting
        uses: actions-rs/cargo@v1
        with:
          command: fmt
          args: --all -- --check

      - name: Build rust-decimal
        uses: actions-rs/cargo@v1
        with:
          command: build
          args: --workspace --all-features

      - name: Run no_std tests
        uses: actions-rs/cargo@v1
        with:
          command: test
          args: --no-default-features

      - name: Run default tests
        uses: actions-rs/cargo@v1
        with:
          command: test
          args: --workspace --features default

      - name: Run tests (db-postgres)
        uses: actions-rs/cargo@v1
        with:
          command: test
          args: --workspace --tests --features db-postgres

      - name: Run tests (db-tokio-postgres)
        uses: actions-rs/cargo@v1
        with:
          command: test
          args: --workspace --tests --features db-tokio-postgres

      - name: Run tests (db-diesel-postgres)
        uses: actions-rs/cargo@v1
        with:
          command: test
          args: --workspace --tests --features db-diesel-postgres

      - name: Run tests (serde-float)
        uses: actions-rs/cargo@v1
        with:
          command: test
          args: --workspace --tests --features serde-float

      - name: Run tests (serde-str)
        uses: actions-rs/cargo@v1
        with:
          command: test
          args: --workspace --tests --features serde-str

      - name: Run tests (serde-str + serde-float)
        uses: actions-rs/cargo@v1
        with:
          command: test
          args: --workspace --tests --features serde-str,serde-float

      - name: Run tests (serde-arbitrary-precision)
        uses: actions-rs/cargo@v1
        with:
          command: test
          args: --workspace --tests --features serde-arbitrary-precision

      - name: Run tests (serde-arbitrary-precision + serde-float)
        uses: actions-rs/cargo@v1
        with:
          command: test
          args: --workspace --tests --features serde-arbitrary-precision,serde-float