193 Commits

Author SHA1 Message Date
Weihang Lo
11e40ae867
test(trim-paths): verify Windows cdb works after trimmed
GitHub Actions has Windows SDK pre-installed,
so cdb should be available at that path always.

Additionally, this adds a new CI job for windows-msvc nightly toolchain
2025-06-02 08:10:24 -04:00
Weihang Lo
a5a9efcf72
chore: remove HTML comments and inline guide
Also make template lighter.

See
https://rust-lang.zulipchat.com/#narrow/channel/246057-t-cargo/topic/pr.20template/with/521309075
2025-05-30 13:55:31 -04:00
Ed Page
5661fb89c1 chore(gh): Add new-lint template
Based on clippy's
2025-05-22 08:42:14 -05:00
Ed Page
b1bb014cdb
CI: Require schema job to pass (#15504)
I'm not certain, but I do not believe it was intentional in
https://github.com/rust-lang/cargo/pull/15000 to allow the `schema` job
to fail. This adds it to the required passing list.
2025-05-07 20:15:03 +00:00
Eric Huss
c9261238cf
CI: Require schema job to pass
I'm not certain, but I do not believe it was intentional in https://github.com/rust-lang/cargo/pull/15000 to allow the `schema` job to fail. This adds it to the required passing list.
2025-05-07 12:39:52 -07:00
renovate[bot]
19704b9496 chore(config): migrate config .github/renovate.json5 2025-05-07 12:01:16 -07:00
renovate[bot]
1a195abcd5
chore(deps): update cargo-semver-checks to v0.41.0 2025-04-22 17:55:40 +00:00
Weihang Lo
2080ac30df
chore(ci): add aarch64 linux runner
Linux arm64 hosted runners is in public preview.
Enable and see if is is something we can have now.

setting `target.linker` is required for cross-compilation
on ARM64, so disable cross compilation tests for it.

https://github.blog/changelog/2025-01-16-linux-arm64-hosted-runners-now-available-for-free-in-public-repositories-public-preview/
2025-04-01 22:07:36 -07:00
renovate[bot]
251a078d4d
chore(deps): update cargo-semver-checks to v0.40.0 2025-03-08 17:39:57 +00:00
Weihang Lo
4cde6f8129
chore(ci): start reporting outdated openssl
We're going to move away from openssl v1 to v3.
2025-02-25 11:45:41 -05:00
Ed Page
66d800d68b chore(ci): Auto-update cargo-semver-checks 2025-02-20 16:14:09 -06:00
Ed Page
9946566ce4 chore(ci): Update cargo-semver-checks 2025-02-20 16:08:12 -06:00
Eric Huss
19b5e2356c Move changelog to the cargo book
Due to rendering limits with GitHub's markdown renderer, we're moving
the changelog to the cargo book where it can be statically served under
our control.
2025-01-28 18:52:33 -08:00
Weihang Lo
e57a2f43c2
test: show that -Awarnings fails target info probing
This will be resolved in the next commit
2025-01-08 17:27:25 -05:00
Ed Page
876f17d46b chore(ci): Ensure JSON schema gets updated 2025-01-01 10:16:18 -06:00
Eric Huss
f18cbda5ab Limit release trigger to 0.* tags 2024-12-15 14:27:45 -08:00
Weihang Lo
feb398a442
fix(build-std): determine root crates by target spec std:bool
In rust-lang/cargo#14183 Cargo starts bailing out if the `metadata.std`
field in a target spec JSON is set to `false`.
This is problematic because std for some targets are actually buildable
even they've declared as std-unsupported.

This patch removes the hard error, and instead determines the required
root crates by the `metadata.std` field. That is to say, if a target
is explicitly declared as `std: false`, `-Zbuild-std` will build `core`
and `compiler-builtins` only, no `std` will be built.

This patch doesn't change the behavior of `-Zbuild-std` with explicit
crates set. For example `-Zbuild-std=std` will force building `std`.

See Zulip discussion:
https://rust-lang.zulipchat.com/#narrow/channel/246057-t-cargo/topic/help.20debugging.20a.20docs.2Ers.20issue.20with.20a.20new.20cargo.20error
2024-12-05 23:15:21 -05:00
Ed Page
e808a85905 chore(ci): Bump cargo-semver-checks version 2024-11-29 11:03:36 -06:00
Weihang Lo
a951c95b94
chore: remove bors/homu comments 2024-11-20 10:40:10 -05:00
Jakub Beránek
eb9066a135
CI: make the lint-docs job required 2024-11-08 18:16:02 +01:00
Jakub Beránek
92cf8134bc Switch CI from bors to merge queue 2024-10-22 22:45:21 +02:00
Scott Schafer
449d6cb356
fix(renovate): Switch matchPackageNames to matchDepNames 2024-10-18 21:13:36 -06:00
Weihang Lo
96ef4e4e7d
chore(deps): update embarkstudios/cargo-deny-action action to v2 2024-10-01 09:13:19 -04:00
Ed Page
023f4c66ca test: Remove completion tests
The tests are intended to spot check that shell completions are
registered correctly.  That is a low change, low risk area.  For shell
integration, we're relying on `clap_complete`s tests.
For our own candidates, we should test the candidate generation
directly, rather than end-to-end.

This reverts parts of commit e7ca9bec80ab5c010c1a84690816da7b64008257, reversing
changes made to bd5f32bb1c7ca273b5d86815bf0ae4adba59ddd8.

Fixes #14545
2024-09-24 08:58:57 -05:00
shannmu
7b0b97789c ci: Install zsh, fish and elvish on ubuntu-lastest for the test and test_gitoxide jobs 2024-09-10 16:03:30 +08:00
Joe Neeman
90fef7a6aa Bump cargo-semver-checks in ci 2024-09-06 10:16:04 +07:00
Eric Huss
afe0b2de7a CI: Switch macos aarch64 to nightly
We will be promoting aarch64-apple-darwin to tier 1 soon via
https://github.com/rust-lang/rust/pull/128592. This updates our CI
so that aarch64-apple-darwin runs the full test suite on nightly to
keep this in-line with tier-1 support.

This also removes the x86_64 stable macos job and replaces it with
aarch64, mainly because aarch64 runs much faster, and presumably
x86_64 support will go away some day.
2024-08-09 18:08:28 -07:00
Weihang Lo
12d00dcf6f
chore(ci): cargo-semver-checks to 0.32.0 2024-07-15 20:24:48 -04:00
Weihang Lo
00da161ce8
chore(ci): mdbook to 0.4.40 2024-07-15 20:20:20 -04:00
Pietro Albini
a28baaf3fb
add workflow to publish Cargo automatically 2024-07-06 11:56:48 +02:00
Ed Page
2bd147f62a chore(ci): Upgrade cargo-semver-checks
This should work with the new rustdoc json output
2024-06-13 11:46:41 -05:00
Scott Schafer
7d7b7c2c8b
feat: Add an xtask to generate lint documentation 2024-06-06 23:03:53 -06:00
Ed Page
89810b9688 chore(ci): Ignore openssl deps
We excluded the packages in #13731 but that just means they fell into
the default logic, rather than being ignored (see #13835).  This at
least made it easier to reject the change.

This should prevent the PR from being created.
2024-05-01 15:35:59 -05:00
Weihang Lo
399f2c765c
chore: tell renovatebot to not touch openssl (temporarily) 2024-04-10 09:29:03 -04:00
Eric Huss
33360c898a CI: Update macos images to macos-13 2024-04-01 13:17:36 -07:00
Sebastian Thiel
363d2da187
address PR review (see details)
* remove renovate group as it's not needed anymore
* repository discovery will open with isolation
2024-03-18 15:35:50 +01:00
Sebastian Thiel
a989423650
upgrade gix to v0.60
It contains the feature required to get a directory traversal.
2024-03-18 09:39:10 +01:00
Ed Page
0564365ff3 chore(ci): Ensure lockfile is respected during MSRV testing
As a hack in cargo-hack, it doesn't respect lockfiles when doing MSRV
testing unless `--locked` is passed in.
This adds that so we make sure we don't run into problems with newer,
MSRV-imcompatible dependencies come out that break our build.

See
- https://rust-lang.zulipchat.com/#narrow/stream/246057-t-cargo/topic/gix-ref.20CI.20error/near/423319798
- https://github.com/taiki-e/cargo-hack/issues/234
- https://github.com/taiki-e/cargo-hack/pull/236
2024-03-02 20:39:19 -06:00
Eric Huss
ccaa118d27 Add workaround for RUSTUP_WINDOWS_PATH_ADD_BIN.
On Windows, rustup has an issue with recursive cargo invocations. This
commit can be removed once
https://github.com/rust-lang/rustup/issues/3036 is resolved.
2024-02-20 13:24:50 -08:00
Eric Huss
9f71231391 Add global_cache_tracker stability tests.
This adds some tests to ensure that the database used in the global
cache tracker stays compatible across versions. These tests work by
using rustup to run both the current cargo and the stable cargo, and
verifying that when switching versions, everything works as expected.
2024-02-20 12:43:07 -08:00
Weihang Lo
b36f34ff53
chore(ci): cargo-semver-checks to 0.29.0 2024-02-19 11:42:29 -05:00
Weihang Lo
9859f6e5cf
chore(ci): mdbook to 0.4.37 2024-02-19 11:42:26 -05:00
Ed Page
22e1f9f124 chore(ci): Drop MSRV:1 patch field
This was missed when I did MSRV:3

This make it less annoying for people to keep up on every patch with
their own MSRVs.
2024-02-15 10:03:56 -06:00
Weihang Lo
b3ac10f08a
chore(ci): enable m1 runner 2024-01-31 11:43:03 -05:00
Urgau
2739b6d3b6 Improve and fix the success and failure bors job gates 2024-01-18 16:58:27 +01:00
Urgau
f7bed34c1d Improve GitHub Actions CI config 2024-01-18 16:58:27 +01:00
Ed Page
2f85ded787 chore(ci): Fix MSRV:3 updates
PR #13266 shows that #13265 worked, so extending it to also cover
`MSRV:3` updates.

Really, I just forgot...
2024-01-08 15:39:21 -06:00
Ed Page
82e80302a7 chore(ci): Shot-in-the-dark fix for MSRV updating
With #13254, we found MSRV updating is broken.
PR #12775 is the last MSRV we got.
That was merged before #12654 and #13106.
That makes #12654 the most likely culprit.

Looking at the logs:
```
DEBUG: Matched 24 file(s) for manager regex: Cargo.toml, benches/benchsuite/Cargo.toml, benches/capture/Cargo.toml, crates/cargo-platform/Cargo.toml, crates/cargo-test-macro/Cargo.toml, crates/cargo-test-support/Cargo.toml, crates/cargo-test-support/containers/apache/bar/Cargo.toml, crates/cargo-test-support/containers/sshd/bar/Cargo.toml, crates/cargo-util-schemas/Cargo.toml, crates/cargo-util/Cargo.toml, crates/crates-io/Cargo.toml, crates/home/Cargo.toml, crates/mdman/Cargo.toml, crates/resolver-tests/Cargo.toml, crates/rustfix/Cargo.toml, crates/semver-check/Cargo.toml, crates/xtask-build-man/Cargo.toml, crates/xtask-bump-check/Cargo.toml, crates/xtask-stale-label/Cargo.toml, credential/cargo-credential-1password/Cargo.toml, credential/cargo-credential-libsecret/Cargo.toml, credential/cargo-credential-macos-keychain/Cargo.toml, credential/cargo-credential-wincred/Cargo.toml, credential/cargo-credential/Cargo.toml
...
DEBUG: manager extract durations (ms)
{
  "managers": {
    "dockerfile": 30,
    "github-actions": 38,
    "regex": 386,
    "cargo": 855
  }
}
DEBUG: Found cargo package files
DEBUG: Found dockerfile package files
DEBUG: Found github-actions package files
DEBUG: Found 25 package file(s)
```
Our regex managers have the files matched
but no regex manager packages are found.
I think this means that the name association failed or the regex within
the file content failed.

The differences between cargo and my other projects
- Use of `:`
- `depNameTemplate`
- Presence of `\b`

As a first attempt, I'm going to switch `\b` to `\\b` to be like the
other escaped regex values.
2024-01-08 12:11:55 -06:00
Ed Page
a93f4d8a18 chore: Add dependency dashboard
Example: https://github.com/clap-rs/clap/issues/4824

I'm hoping this will make it easier to see what is going on with
problems with RenovateBot, like our MSRVs not updating atm (#13254).
2024-01-05 20:08:43 -06:00
renovate[bot]
3e660a6421
chore(config): migrate config .github/renovate.json5 2023-12-03 08:53:53 -05:00