64 Commits

Author SHA1 Message Date
David Tolnay
c1826ebccc
Pin nightly toolchain used for miri job 2025-05-17 23:15:06 +02:00
David Tolnay
b34d317089
Delete unused gcc installation 2025-03-03 00:51:16 -08:00
David Tolnay
be2198a54d
Prevent upload-artifact step from causing CI failure
This step has been failing way more than reasonable across my various repos.

    With the provided path, there will be 1 file uploaded
    Artifact name is valid!
    Root directory input is valid!
    Attempt 1 of 5 failed with error: Request timeout: /twirp/github.actions.results.api.v1.ArtifactService/CreateArtifact. Retrying request in 3000 ms...
    Attempt 2 of 5 failed with error: Request timeout: /twirp/github.actions.results.api.v1.ArtifactService/CreateArtifact. Retrying request in 6029 ms...
    Attempt 3 of 5 failed with error: Request timeout: /twirp/github.actions.results.api.v1.ArtifactService/CreateArtifact. Retrying request in 8270 ms...
    Attempt 4 of 5 failed with error: Request timeout: /twirp/github.actions.results.api.v1.ArtifactService/CreateArtifact. Retrying request in 12577 ms...
    Error: Failed to CreateArtifact: Failed to make request after 5 attempts: Request timeout: /twirp/github.actions.results.api.v1.ArtifactService/CreateArtifact
2024-11-08 21:45:52 -05:00
David Tolnay
7cce517f53
Raise minimum version for preserve_order feature to Rust 1.65
Required by hashbrown 0.15.1.

    error: package `hashbrown v0.15.1` cannot be built because it requires rustc 1.65.0 or newer, while the currently active rustc version is 1.64.0
2024-11-04 18:20:00 -08:00
David Tolnay
27a4ca9d7a
Upload CI Cargo.lock for reproducing failures 2024-08-25 12:12:25 -07:00
David Tolnay
94a2aad7b7
Improve job names for miri jobs 2024-08-12 12:45:43 -07:00
Alisa Sireneva
81b1b61886 Test on BE and 32-bit platforms on CI via Miri 2024-08-12 12:00:27 +03:00
David Tolnay
2e15e3d7d5
Revert "Temporarily disable miri on doctests"
This reverts commit 3a3f61b1c9a2dce973179fad1650f709f63bdaa5.
2024-04-08 11:57:46 -07:00
David Tolnay
218770bb75
Explicitly install a Rust toolchain for cargo-outdated job
Debugging a recent cargo-outdated bug, it would have been nice not to
wonder whether a rustc version change in GitHub's runner image was a
contributing factor.
2024-03-25 22:24:55 -07:00
David Tolnay
3a3f61b1c9
Temporarily disable miri on doctests 2024-03-24 19:53:45 -07:00
David Tolnay
57d529b70f
Test docs.rs documentation build in CI 2023-09-24 10:53:44 -07:00
David Tolnay
6525ffa364
Update actions/checkout@v3 -> v4 2023-09-04 22:35:02 -07:00
David Tolnay
897f913dd2
No pre_ci in this repo 2023-07-04 12:36:27 -07:00
David Tolnay
f482ed3d36
Add CI job using minimal-versions 2023-07-04 12:33:49 -07:00
David Tolnay
fdb7800f5a
Support a manual trigger on CI workflow 2023-06-23 22:50:52 -07:00
David Tolnay
706fc2b559
Do all CI builds with old rustc using shim crate
Fixes the following error when testing against a compiler older
than 1.64:

    error: failed to select a version for the requirement `hashbrown = "^0.14"`
    candidate versions found which didn't match: 0.13.2, 0.13.1, 0.12.3, ...
    location searched: crates.io index
    required by package `indexmap v2.0.0`
        ... which satisfies dependency `indexmap = "^2"` of package `serde_json v1.0.97`
        ... which satisfies path dependency `serde_json` of package `serde_json_test v0.0.0`
2023-06-23 20:56:52 -07:00
David Tolnay
d4c98d05b9
Move serde_json_test crate to own workspace
Fixes the following error when testing against a compiler older
than 1.64:

    error: failed to select a version for the requirement `hashbrown = "^0.14"`
    candidate versions found which didn't match: 0.13.2, 0.13.1, 0.12.3, ...
    location searched: crates.io index
    required by package `indexmap v2.0.0`
        ... which satisfies dependency `indexmap = "^2"` of package `serde_json v1.0.97`
        ... which satisfies path dependency `serde_json` of package `serde_json_test v0.0.0`
2023-06-23 20:51:30 -07:00
David Tolnay
e09d78f793
Update indexmap dependency used for preserve_order feature to version 2 2023-06-23 20:05:18 -07:00
David Tolnay
51459078f3
Delete unneeded conditional on preserve_order steps in CI
Obsoleted by 4b9699612f57512b6734b43238c2382186245b31.
2023-06-23 20:03:52 -07:00
David Tolnay
931ee23b1a
Show error details during miri setup in CI
Without this, if it fails, the only information printed is useless:

    Preparing a sysroot for Miri (target: x86_64-unknown-linux-gnu)...
    fatal error: failed to build sysroot; run `cargo miri setup` to see the error details
2023-05-23 08:29:47 -07:00
David Tolnay
4b9699612f
No longer test so many old compiler versions 2023-03-17 19:20:00 -07:00
David Tolnay
8cebe89500
Speed up cargo fuzz CI job
https://github.com/rust-fuzz/cargo-fuzz/pull/317
2023-01-19 17:28:31 -08:00
David Tolnay
0b548714d8
Time out workflows after 45 minutes
GitHub's default timeout is 6 hours. Recently some of my GitHub Actions
jobs have started randomly stalling for that long, which is inconvenient
because it ties up a chunk of my runner quota. It apepars to be very
rare for a job to recover after stalling. It's better to time out
quicker and retry on a different runner.
2022-11-25 18:56:19 -08:00
David Tolnay
8ab65c58ea
Add a CI build for arbitrary precision without std 2022-10-09 12:41:37 -07:00
David Tolnay
d64ffdc92a
GitHub Workflows security hardening 2022-09-02 15:09:33 -07:00
David Tolnay
9e9b2b72fb
Revert "Avoid cargo 1.45–1.50 in GitHub Actions"
This reverts commit 39fa675ecf75dc80a5f0ea4b6d160980390930e5.
2022-08-21 13:24:24 -07:00
David Tolnay
39fa675ecf
Avoid cargo 1.45–1.50 in GitHub Actions
These versions are incompatible with packages published by a recent Cargo
2022-08-08 23:02:34 -07:00
David Tolnay
aac479a70a
Avoid cargo 1.43–1.45 in GitHub Actions
These versions are incompatible with some recent GitHub change

    error: failed to get `indexmap` as a dependency of package `serde_json v1.0.82 (/home/runner/work/json/json)`

    Caused by:
      failed to load source for dependency `indexmap`

    Caused by:
      Unable to update registry `https://github.com/rust-lang/crates.io-index`

    Caused by:
      failed to fetch `https://github.com/rust-lang/crates.io-index`

    Caused by:
      error reading from the zlib stream; class=Zlib (5)
2022-07-26 21:24:07 -07:00
David Tolnay
84c157b41d
Directly install aarch64-unknown-none target support 2022-07-20 15:07:22 -07:00
David Tolnay
11cb87a59d
Speed up fuzz build in CI using precompiled cargo-fuzz 2022-06-29 15:07:03 -07:00
David Tolnay
3d173405c2
Bump oldest rustc for preserve_order feature to 1.56.1
Required by 2021 edition in hashbrown.

    error: failed to download `hashbrown v0.12.1`

    Caused by:
      unable to get packages from source

    Caused by:
      failed to parse manifest at github.com-1ecc6299db9ec823/hashbrown-0.12.1/Cargo.toml

    Caused by:
      failed to parse the `edition` key

    Caused by:
      this version of Cargo is older than the `2021` edition, and only supports `2015` and `2018` editions.
2022-06-16 20:51:46 -07:00
David Tolnay
6b91c96f8d
Check for outdated deps in fuzz target 2022-06-06 17:04:11 -07:00
David Tolnay
845b928a63
Add actions job to notice outdated dependencies 2022-06-06 15:58:20 -07:00
David Tolnay
2683b1aedc
Run miri in stricter miri-strict-provenance mode 2022-05-06 04:01:35 -07:00
David Tolnay
52a9c050f5
Pull miri from miri branch of dtolnay/rust-toolchain 2022-04-28 19:38:27 -07:00
David Tolnay
aff685b8c9
Drop unneeded quoting from env variable in workflows yaml 2022-04-28 19:37:41 -07:00
David Tolnay
6995bbf784
Update workflows to actions/checkout@v3 2022-04-24 19:06:54 -07:00
David Tolnay
8ecd48308a
Fix imports on features +alloc +raw_value -std
Closes #850.
2022-01-22 05:07:00 -08:00
David Tolnay
aebe84cb09
Raise toolchain version for preserve_order to rust 1.46
Our indexmap dependency needs at least this version.

    error[E0658]: use of unstable library feature 'vec_drain_as_slice': recently added
        --> github.com-1ecc6299db9ec823/indexmap-1.8.0/src/map.rs:1182:30
         |
    1182 |         let iter = self.iter.as_slice().iter().map(Bucket::refs);
         |                              ^^^^^^^^

    error[E0658]: use of unstable library feature 'vec_drain_as_slice': recently added
       --> github.com-1ecc6299db9ec823/indexmap-1.8.0/src/set.rs:842:30
        |
    842 |         let iter = self.iter.as_slice().iter().map(Bucket::key_ref);
        |                              ^^^^^^^^
2022-01-07 18:37:31 -08:00
David Tolnay
3f459308f5
Set miriflags once for whole miri job 2022-01-03 12:01:56 -08:00
David Tolnay
c79d9ad2e1
Run miri also with some features enabled 2022-01-03 12:00:17 -08:00
David Tolnay
ef7794f87f
Detect warnings in CI 2022-01-01 11:52:32 -08:00
David Tolnay
b66b0eb322
Track raw pointers in miri CI run 2021-12-11 15:05:19 -08:00
David Tolnay
52eec5e2ee
Add a miri test job in CI 2021-12-11 15:05:15 -08:00
David Tolnay
f0774c482a
Raise required rustc from 1.31 to 1.36 2021-12-11 15:00:37 -08:00
David Tolnay
8b35517540
Revert "Disable broken fuzz build in CI"
This reverts commit 5bae82d2d2003c4a0f4f792132510f510713f5ce.
2021-10-22 19:19:15 -07:00
David Tolnay
28fc9b4ddf
Run clippy also with features enabled 2021-10-01 01:15:43 -04:00
David Tolnay
fc4db0306a
Run clippy on test suite too 2021-10-01 00:46:45 -04:00
David Tolnay
cf15614994
Move clippy lint level to CI job 2021-10-01 00:40:33 -04:00
David Tolnay
5a6af19aae
Skip clippy job on pull requests 2021-10-01 00:39:06 -04:00