182 Commits

Author SHA1 Message Date
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
Ed Page
ed83ee0a2f chore(ci): Always update gix packages together 2023-12-01 10:02:30 -06:00
Weihang Lo
5c32fe0432
test(trim-paths): exercise with real world debugger 2023-12-01 08:48:24 -05:00
Weihang Lo
44e063830c
docs: remove review capacity notice 2023-11-28 20:40:27 -05:00
Weihang Lo
68af5090ec
chore: enable clippy check for all workspace members
This also remove `RUSTFLAGS: -D warnings` for test,
as it seems to be redundant and clippy covers everythings
2023-11-16 13:19:44 -05:00
Weihang Lo
ec9c5b0b43
ci: big ⚠️ to ensure the CNAME file is always there 2023-10-18 21:31:10 -04:00
Weihang Lo
4f0016d457
ci: generate link redirections when publising contrib doc 2023-10-18 12:59:06 -04:00
bors
f806be2dde Auto merge of #12835 - dvdhrm:pr/contrib-concurrency, r=weihanglo
ci/contrib: use separate concurrency group

Run the contrib workflow in its own concurrency group to avoid multiple runs causing conflicting git pushes.

The contrib workflow pushes to the gh-pages branch, and thus is not safe to be run multiple times in parallel. Given that github-actions can stall workflow runs for quite some time, multiple executions can overtake each other. By using concurrency groups, all workflow runs will wait until previous runs completed.

Given that the workflow uses orphan-branches and forced pushes, conflicting workflows will not fail, but might produce outdated data if they overtake each other.

We explicitly disable cancellation to get better diagnostics and more easily find the first possible run that failed. Since these workflow runs are rather fast, and only run on master, cancellation seems not necessary.
2023-10-17 19:04:23 +00:00
David Rheinsberg
cdc7c1be02 ci/contrib: use separate concurrency group
Run the contrib workflow in its own concurrency group to avoid multiple
runs causing conflicting git pushes.

The contrib workflow pushes to the gh-pages branch, and thus is not safe
to be run multiple times in parallel. Given that github-actions can
stall workflow runs for quite some time, multiple executions can
overtake each other. By using concurrency groups, all workflow runs will
wait until previous runs completed.

We explicitly disable cancellation to get better diagnostics and more
easily find the first possible run that failed. Since these workflow
runs are rather fast, and only run on master, cancellation seems not
necessary.
2023-10-17 16:02:03 +02:00
David Rheinsberg
1d261830a0 ci/contrib: do not fail on missing gh-pages
The current contrib deploy-hook fails if there is no `gh-pages` branch.
Change the CI order to disregard the old `gh-pages` branch first.

The `contrib` deploy-hook always creates a fresh `gh-pages` commit and
pushes it out. However, currently it relies on the old `gh-pages` branch
to exist, since it does not ignore errors when pruning it. Fortunately,
the code always creates a new orphan branch, since it does not want to
keep history for deployments. Therefore, we can simply use:

    `git worktree --orphan -B <branch> <path>`

This will ensure to always create an orphan branch named `<branch>`, and
override an existing branch if it exists (see `-b` vs `-B`). Hence,
there is no need for us to prune the old branch, anymore.

Since we will recreate the branch on every push, we have to explicitly
specify the remote to push to. We no longer set up branch tracking.
2023-10-17 14:28:23 +02:00
bors
0871c0e2f4 Auto merge of #12795 - weihanglo:semver-checks, r=ehuss
ci: bump cargo-semver-checks to 0.24.0
2023-10-08 21:15:54 +00:00
Weihang Lo
60539e94dc
ci: bump cargo-semver-checks to 0.24.0
Also remove workaround since the issue was fixed in upstream.
2023-10-08 16:24:23 -04:00