stdlib: use Identity
in HashMap
and HashSet
, add tests for spec…
#225
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] | |
jobs: | |
lint: | |
name: lint | |
runs-on: ubuntu-latest | |
steps: | |
- name: Clone repository | |
uses: actions/checkout@v1 | |
with: | |
fetch-depth: 1 | |
submodules: true | |
- name: Install rust | |
uses: hecrj/setup-rust-action@v1 | |
with: | |
rust-version: "nightly" | |
- name: Install rustfmt | |
run: rustup component add rustfmt | |
- name: Cargo Fmt | |
run: cargo fmt -- --check | |
# sanitizer: | |
# name: sanitizer | |
# runs-on: ubuntu-latest | |
# steps: | |
# - name: Clone repository | |
# uses: actions/checkout@v1 | |
# with: | |
# fetch-depth: 1 | |
# submodules: true | |
# - name: Install rust | |
# uses: hecrj/setup-rust-action@v1 | |
# with: | |
# rust-version: "nightly" | |
# - name: ASAN Build Debug | |
# run: RUSTFLAGS="-Z sanitizer=address" cargo +nightly build --target x86_64-unknown-linux-gnu | |
# - name: ASAN Tests Debug | |
# run: ruby tools/tester.rb --binary=target/x86_64-unknown-linux-gnu/debug/dora --env ASAN_OPTIONS=detect_leaks=1 | |
# - name: ASAN Build Release | |
# run: RUSTFLAGS="-Z sanitizer=address" cargo +nightly build --release --target x86_64-unknown-linux-gnu | |
# - name: ASAN Tests Release | |
# run: ruby tools/tester.rb --binary=target/x86_64-unknown-linux-gnu/release/dora --env ASAN_OPTIONS=detect_leaks=1 | |
compile-arm64: | |
name: compile arm64 | |
runs-on: ubuntu-latest | |
steps: | |
- name: Clone repository | |
uses: actions/checkout@v1 | |
with: | |
fetch-depth: 1 | |
submodules: true | |
- name: Install rust | |
uses: hecrj/setup-rust-action@v1 | |
with: | |
rust-version: "stable" | |
- name: Install ARM64 target | |
run: rustup target add aarch64-unknown-linux-gnu | |
- name: Build ARM64 | |
run: cd dora && cargo check --target=aarch64-unknown-linux-gnu --no-default-features | |
test: | |
name: test ${{ matrix.os }} | |
runs-on: ${{ matrix.os }} | |
timeout-minutes: 60 | |
strategy: | |
matrix: | |
os: [ubuntu-latest, macOS-latest] | |
steps: | |
- name: Clone repository | |
uses: actions/checkout@v1 | |
with: | |
fetch-depth: 1 | |
submodules: true | |
- name: Install rust | |
uses: hecrj/setup-rust-action@v1 | |
with: | |
rust-version: "stable" | |
- name: Install ruby | |
uses: ruby/setup-ruby@v1 | |
with: | |
ruby-version: 3.0 | |
- name: Test | |
if: matrix.os != 'windows-latest' | |
run: tools/test | |
- name: Test (Windows) | |
if: matrix.os == 'windows-latest' | |
run: .\tools\test.bat | |
- name: Test Release | |
if: matrix.os != 'windows-latest' | |
run: tools/test-release | |
- name: Test Release (Windows) | |
if: matrix.os == 'windows-latest' | |
run: .\tools\test-release.bat |