uhlc 0.9.0

A Unique Hybrid Logical Clock for Rust.
Documentation
#
# Copyright (c) 2017, 2020 ADLINK Technology Inc.
#
# This program and the accompanying materials are made available under the
# terms of the Eclipse Public License 2.0 which is available at
# http://www.eclipse.org/legal/epl-2.0, or the Apache License, Version 2.0
# which is available at https://www.apache.org/licenses/LICENSE-2.0.
#
# SPDX-License-Identifier: EPL-2.0 OR Apache-2.0
#
name: build

on: [push, pull_request]

jobs:
  build:
    name: Build on ubuntu-latest
    runs-on: ubuntu-latest

    steps:
      - uses: actions/checkout@v2

      - name: Install Rust toolchain
        uses: actions-rs/toolchain@v1
        with:
          profile: minimal
          toolchain: stable
          components: rustfmt, clippy

      - name: Run cargo check
        uses: actions-rs/cargo@v1
        with:
          command: check

      - name: Build
        run: cargo build --verbose --all-targets
      - name: Clippy check
        run: cargo clippy --all-targets
      - name: Run tests
        run: cargo test --verbose
      - name: Run rustfmt
        run: cargo fmt -- --check
      - name: Generate doc
        run: |
          cargo doc --all --no-deps
          echo '<meta http-equiv=refresh content=0;url=uhlc/index.html>' > ./target/doc/index.html

  nostd:
    name: Run no_std checks
    runs-on: ubuntu-latest
    needs: build
    strategy:
      fail-fast: false

    steps:
      - uses: actions/checkout@v2

      - name: Install nightly Rust toolchain
        uses: actions-rs/toolchain@v1
        with:
          toolchain: nightly
          target: x86_64-unknown-none # Generic no_std target architecture
          override: true
      
      - name: Perform no_std checks
        uses: actions-rs/cargo@v1
        with:
          command: check
          args: --bin nostd_check --target x86_64-unknown-none --manifest-path ci/nostd-check/Cargo.toml