1125 Commits

Author SHA1 Message Date
Weihang Lo
391f0c46e2
test(docker): openssh requires a newer libcrypto3
libcrypto3 is required because openssh-10.0_p1-r8 needs a newer
version of libcrypto3 (3.5.3-r1 as of this writing).
However, the pre-installed one on the image is 3.3.2-r4,
and the one the registry is 3.5.1-r0
Hence an `apk upgrade` is required.
We should remove this someday when upstream fixes it.

Also, I've tried `alpine:edge`,
but edge hasn't yet upgrade the pre-installed libssl3 nor the registry

To repro:

```console
/ # apk info openssh
openssh-10.0_p1-r8 description:
Port of OpenBSD's free SSH release

openssh-10.0_p1-r8 webpage:
https://www.openssh.com/portable.html

openssh-10.0_p1-r8 installed size:
330 KiB

/ # apk info -R openssh
openssh-10.0_p1-r8 depends on:
openssh-client
openssh-sftp-server
openssh-server
so:libc.musl-x86_64.so.1
so:libcrypto.so.3

/ # apk info libcrypto3
libcrypto3-3.5.1-r0 description:
Crypto library from openssl

libcrypto3-3.5.1-r0 webpage:
https://www.openssl.org/

libcrypto3-3.5.1-r0 installed size:
5091 KiB

libcrypto3-3.5.3-r0 description:
Crypto library from openssl

libcrypto3-3.5.3-r0 webpage:
https://www.openssl.org/

libcrypto3-3.5.3-r0 installed size:
5091 KiB

/ # strings /usr/lib/libcrypto.so.3 | grep -i "OpenSSL"
...
OpenSSL 3.5.1 1 Jul 2025
...
```
2025-09-24 11:13:22 -04:00
Vito Secona
00085c1aa7 fix: sparse URLs in TomlLockfileSourceId 2025-09-22 22:17:14 +07:00
Vito Secona
d93be027f1 test: add for TomlLockfileSourceId 2025-09-22 22:15:39 +07:00
Vito Secona
9730a3724f docs: add doc comments to lockfile schemas 2025-09-20 08:09:16 +07:00
Vito Secona
c384761adb refactor: rearrange definitions
Moves struct definitions and impls closer together to make reading
easier
2025-09-20 07:59:21 +07:00
Ed Page
3f19ccf75d chore: Bump versions 2025-09-19 13:21:35 -05:00
renovate[bot]
82f655b1e1
chore(deps): update msrv (1 version) to v1.90 2025-09-19 16:45:43 +00:00
Vito Secona
703988f0c2 refactor: rename lockfile schemas scheme
Manifests schemas use `TomlManifest`. To match, we rename the lockfile
schemas to `TomlLockfile`
2025-09-19 06:05:02 +07:00
Vito Secona
d51d7f6cfc chore: bump version 2025-09-19 05:40:17 +07:00
Vito Secona
3738481c5b feat: add lockfile schema generation 2025-09-19 05:36:02 +07:00
Vito Secona
949e863cb9 refactor: move lockfile schemas to cargo-util-schemas 2025-09-19 01:15:32 +07:00
Vito Secona
535f7730fa refactor: define lockfile errors in cargo-util-schemas
Some of the fields are made public to make the moving phase easier. They
will be reverted back to private when its done moving over.
2025-09-19 00:49:25 +07:00
Scott Schafer
022dc5b381
chore: Address most typos 2025-09-02 18:15:50 -06:00
Weihang Lo
56f44bb212
test: avoid hardcoded target spec json
Read a real target spec JSON so we no longer need to hardcode
a target spec JSON here.
Cargo itself should not care about the spec schema.

Let's stop bothering compiler contributors.
2025-08-23 22:26:08 -04:00
Samuel Onoja
5dd597b621
impl workspace hint for boolean dependencies
hint for only bad dependency true literal and rename unit test to match
2025-08-19 18:15:32 +01:00
Karol Zwolak
cec8eb1d16 bump rustfix version to 0.9.3 2025-08-17 18:50:55 +02:00
Karol Zwolak
fb046a1354 update tests to match lint message changes from rust-lang/rust#140794 2025-08-17 18:50:55 +02:00
Eric Huss
e647065d5d
chore: remove x86_64-apple-darwin from CI and tests (#15831)
### What does this PR try to resolve?

RFC 3841 has merged, and x86_64-apple-darwin will be demoted to tier-2
in 1.90.0. In Cargo we usually run test against tier-1 platforms, so
x86_64-apple-darwin should be removed.
Also, that target platform is often the slowest one in CI, we are happy
to remove it to save us a couple of minutes.

https://rust-lang.github.io/rfcs/3841-demote-x86_64-apple-darwin.html

### How to test and review this PR?

Run `cargo test` locally with cross-compile tests enabled, and no
regression.
2025-08-12 20:48:04 +00:00
Weihang Lo
9614bc251b
chore: remove x86_64-apple-darwin from CI and tests
RFC 3841 has merged, and x86_64-apple-darwin will be demoted to tier-2
in 1.90.0. In Cargo we usually run test against tier-1 platforms, so
x86_64-apple-darwin should be removed.
Also, that target platform is often the slowest one in CI,
we are happy to remove it to save us a couple of minutes.

https://rust-lang.github.io/rfcs/3841-demote-x86_64-apple-darwin.html
2025-08-12 16:02:16 -04:00
2ndDerivative
6d3ff14969
add is_inherited method to InheritableField 2025-08-12 17:04:54 +02:00
2ndDerivative
e58ab62a09
add is_inherited method to InheritableDependency 2025-08-12 16:54:49 +02:00
Ed Page
178a07231e chore: Bump versions 2025-08-07 10:15:50 -05:00
renovate[bot]
f0379a2a8c chore(deps): update msrv (1 version) to v1.89 2025-08-07 13:00:25 +00:00
Ojus Chugh
c0c256ba17 docs(build-rs): Fix broken intra-doc links
These were caught with the latest nightly

This was pulled from #15800
2025-08-05 12:03:46 -05:00
Ed Page
37eeab7c16
feat(schema): Expose IndexPackage, the description of a package within a Registry Index (#15770)
### What does this PR try to resolve?

ref https://github.com/rust-lang/cargo/issues/14834

In this pull request, I moved `IndexPackage` to `cargo-util-schemas` to
enable third-party applications and `cargo-dev-registry` to utilize this
common struct.

For instance, crates.io has its own `IndexPackage` located at
005667f041/crates/crates_io_index/data.rs (L5).

By moving it to `cargo-util-schemas`, we allow different applications to
use this struct more easily.

### How to test and review this PR?

It shouldn't break any tests; it's just a refactoring.
2025-07-28 19:35:47 +00:00
0xPoe
8811325b5a feat: add JSON schema support for IndexPackage and RegistryDependency structs
Signed-off-by: 0xPoe <techregister@pm.me>
2025-07-27 15:02:34 +02:00
0xPoe
a7fcef21fe refactor: move IndexPackage and RegistryDependency to cargo-util-schemas for better modularity
Signed-off-by: 0xPoe <techregister@pm.me>
2025-07-27 15:02:27 +02:00
David Tolnay
1441ea4f4a
Perform cargo-semver-checks separately for cargo crate 2025-07-25 07:49:17 -07:00
Josh Triplett
94c27dfaea cargo-util-schemas: Bump breaking version for schema change 2025-07-12 14:55:10 -07:00
Josh Triplett
fe86023863 Parse hints permissively to allow for future expansion
Make it only a warning, not an error, to have a hint value of the wrong
type.
2025-07-11 16:54:36 -07:00
Josh Triplett
1921d097ca Add [hints] table in Cargo.toml, and a hints.mostly-unused hint
The `[hints]` table in a `Cargo.toml` manifest provides optional
information that Cargo can use for building the package, and will use
even when using the package as a dependency. All hints can be safely
ignored, and Cargo only warns about unknown hints, but does not error.
This allows packages to use hints without depending on new Cargo.

Add a `mostly-unused` hint, which allows a package to hint that most
users of the package will not use most of its items. This is useful for
improving the build performance of crates with large dependencies.

Crates can override this hint using `hint-mostly-unused = false` in
their profile for a dependency.
2025-07-11 16:54:36 -07:00
Ed Page
539a48452a perf: Update toml 2025-07-08 11:55:41 -05:00
Eric Huss
e24a9865ac Apply deprecated_safe_2024 2025-07-05 20:17:36 -07:00
Eric Huss
639143579a Bump crate versions 2025-07-05 19:57:28 -07:00
Eric Huss
1ce8023626 Rustfmt 2024 2025-07-05 19:50:36 -07:00
Eric Huss
a0d1859575 Apply keyword_idents_2024 2025-07-05 19:29:09 -07:00
Eric Huss
24813db9da Apply missing_unsafe_on_extern 2025-07-05 19:28:38 -07:00
Eric Huss
1213fc652b Apply rust_2024_incompatible_pat 2025-07-05 19:27:01 -07:00
Ed Page
d8975d2901 chore: Update incompatible versions 2025-07-01 13:51:18 -05:00
Ed Page
e8a9510f11 chore(rustfix): Bump to 0.9.2 2025-06-30 13:37:27 -05:00
Ed Page
dca5d6409c test(rustfix): Update for nightly
Inspired by #15713
2025-06-30 13:17:09 -05:00
Ed Page
0b611990f4 style: Use inlined format args 2025-06-26 16:40:32 -05:00
Ed Page
e5987ea9b6 chore: Bump versions 2025-06-26 16:38:16 -05:00
renovate[bot]
e6740738a8
chore(deps): update msrv (1 version) to v1.88 2025-06-26 19:55:27 +00:00
Ross Sullivan
30b6707135
chore: Moved remaining cargo_exe logic to testsuite 2025-06-25 23:18:08 +09:00
Ross Sullivan
15f755cefd
chore: Created CargoProjectExt extention trait 2025-06-25 23:18:00 +09:00
Ross Sullivan
47312c446d
chore: Moved tools and some cross compiling logic into testsuite 2025-06-24 23:51:39 +09:00
Naman Garg
a9d5cb8abe
Add MultipleScript (error on stable, error about not implemented on nightly) 2025-06-23 19:14:37 +05:30
Naman Garg
126b3a18c1
Refactor normalized_build to accept slice instead of string 2025-06-23 19:14:35 +05:30
Naman Garg
92b00aefc3
Fork StringOrBool into new TomlPackageBuild type and update manifest.schema.json 2025-06-23 19:14:33 +05:30