cargo/tests/testsuite
bors 13662250ab Auto merge of #10470 - arlosi:http, r=Eh2406
HTTP registry implementation

Implement HTTP registry support described in [RFC 2789](https://github.com/rust-lang/rfcs/pull/2789).

Adds a new unstable flag `-Z http-registry` which allows cargo to interact with remote registries served over http rather than git. These registries can be identified by urls starting with `sparse+http://` or `sparse+https://`.

When fetching index metadata over http, cargo only downloads the metadata for needed crates, which can save significant time and bandwidth over git.

The format of the http index is identical to a checkout of a git-based index.

This change is based on `@jonhoo's` PR #8890.

cc `@Eh2406`

Remaining items:
- [x] Performance measurements
- [x] Make unstable only
- [x] Investigate unification of download system. Probably best done in separate change.
- [x] Unify registry tests (code duplication in `http_registry.rs`)
- [x] Use existing on-disk cache, rather than adding a new one.
2022-03-24 22:28:19 +00:00
..
mock-std Revert "Check if rust-src contains a vendor dir, and patch it in" 2020-12-11 07:45:27 -08:00
advanced_env.rs Fixes for some test errors on Windows. 2019-12-19 09:44:02 -08:00
alt_registry.rs Add rust_metadata to SerializedPackage 2021-10-12 14:07:19 +02:00
artifact_dep.rs Undo a prior change to fix #10452 2022-03-14 11:01:28 +08:00
bad_config.rs Port cargo from toml-rs to toml_edit 2022-01-13 09:27:27 -06:00
bad_manifest_path.rs track_caller on custom assert functions 2021-03-03 17:17:07 +00:00
bench.rs display bench exec info differently 2022-02-02 08:17:09 -08:00
binary_name.rs Ability to specify the output name for a bin target different from the crate name 2021-08-11 10:36:16 -07:00
build.rs Auto merge of #10394 - dtolnay-contrib:displayerror, r=ehuss 2022-03-21 18:48:36 +00:00
build_plan.rs Normalize raw string indentation. 2020-09-26 17:59:58 -07:00
build_script.rs Make rustflags logic more linear 2022-02-23 16:36:14 -08:00
build_script_env.rs Fix tests 2021-04-17 12:13:30 -04:00
build_script_extra_link_arg.rs extra-link-arg-etc: support all link types (credit @davidhewitt) 2022-01-27 21:57:57 +02:00
cache_messages.rs Deduplicate compiler diagnostics. 2021-07-09 16:20:46 -07:00
cargo_alias_config.rs Add test for alias shadowing external subcommand 2021-11-17 09:23:06 +01:00
cargo_command.rs Make levenshtein distance case insensitive. 2021-12-21 12:56:28 +01:00
cargo_config.rs Upgrade to Clap 3 2022-01-05 19:54:54 -06:00
cargo_env_config.rs Stabilize [env] sections 2021-07-29 19:50:51 -07:00
cargo_features.rs Refine name 2021-07-25 00:35:09 +08:00
cargo_targets.rs Warn if an "all" target is specified, but we don't match anything 2021-06-09 19:29:24 +02:00
cfg.rs Fix issue with filtering exclusive target dependencies. 2021-03-11 11:41:00 -08:00
check.rs Disable -Z check-cfg-features tests on windows due to weird normalization issues 2022-02-22 18:33:03 +01:00
clean.rs Use is_symlink() method 2022-01-14 00:36:24 +03:00
collisions.rs Fix collision doc tests randomly failing. 2021-04-29 10:42:42 -07:00
concurrent.rs Normalize raw string indentation. 2020-09-26 17:59:58 -07:00
config.rs Port cargo from toml-rs to toml_edit 2022-01-13 09:27:27 -06:00
config_cli.rs Enforce no decorators in --config values 2022-01-24 12:05:12 -08:00
config_include.rs Merge remote-tracking branch 'upstream/master' into config-cli-simple 2022-01-20 12:31:35 -08:00
corrupt_git.rs Move paths to cargo-util. 2021-03-20 17:42:41 -07:00
credential_process.rs Match any error when failing to find executables 2021-11-17 11:09:52 +00:00
cross_compile.rs Add a note about doctest xcompile. 2021-11-28 17:32:11 -08:00
cross_publish.rs Update tests to use registry names 2021-07-22 00:50:30 +08:00
custom_target.rs Detect changes for JSON spec targets. 2021-03-01 12:19:14 -08:00
death.rs Normalize raw string indentation. 2020-09-26 17:59:58 -07:00
dep_info.rs Fix dep-info files including non-local build script paths. 2021-06-17 18:28:42 -07:00
directory.rs Update tests to use registry names 2021-07-22 00:50:30 +08:00
doc.rs Add -Z check-cfg-features support for rustdoc 2022-02-26 14:10:17 +01:00
edition.rs Update nightly failure notification. 2021-07-05 16:08:36 -07:00
error.rs Rework internal errors. 2020-02-17 19:03:57 -08:00
features.rs Use warn_on_deprecated 2022-03-10 00:08:28 +08:00
features2.rs Auto merge of #10346 - yerke:yerke/no-run-test-executable-path, r=ehuss 2022-02-20 15:47:58 +00:00
features_namespaced.rs Do not ignore --features when --all-features is present 2022-01-28 02:49:42 +03:00
fetch.rs Normalize raw string indentation. 2020-09-26 17:59:58 -07:00
fix.rs Bump to 0.59.0 2021-10-22 07:53:17 -07:00
freshness.rs add short path name for executables 2022-01-31 10:37:02 -08:00
future_incompat_report.rs Stabilize future-incompat-report 2021-12-05 14:14:32 -05:00
generate_lockfile.rs Normalize raw string indentation. 2020-09-26 17:59:58 -07:00
git.rs Port cargo from toml-rs to toml_edit 2022-01-13 09:27:27 -06:00
git_auth.rs Normalize raw string indentation. 2020-09-26 17:59:58 -07:00
git_gc.rs Normalize raw string indentation. 2020-09-26 17:59:58 -07:00
glob_targets.rs Change Fixing to Fixed, and add a verbose "Fixing". 2021-02-17 20:41:38 -08:00
help.rs fix panic if an alias is defined to "" 2021-12-12 13:30:31 -07:00
init.rs Test for cargo new/init autodetct and ignore file rules 2022-02-11 18:54:27 +08:00
install.rs Consistently use crate::display_error on errors during drain 2022-02-17 13:59:06 -08:00
install_upgrade.rs Port cargo from toml-rs to toml_edit 2022-01-13 09:27:27 -06:00
jobserver.rs Normalize raw string indentation. 2020-09-26 17:59:58 -07:00
list_availables.rs test: list availables for clean,tree,update 2020-10-28 02:46:20 +08:00
local_registry.rs Update tests to use registry names 2021-07-22 00:50:30 +08:00
locate_project.rs Remove the double-backslash escape for matching. 2021-06-16 09:44:29 -07:00
lockfile_compat.rs add a test 2022-03-03 18:49:52 +00:00
login.rs Port cargo from toml-rs to toml_edit 2022-01-13 09:27:27 -06:00
logout.rs Port cargo from toml-rs to toml_edit 2022-01-13 09:27:27 -06:00
lto.rs Merge branch 'master' into yerke/no-run-test-executable-path 2022-01-30 23:13:35 -08:00
main.rs Remove warn(clippy::*) 2022-03-09 10:33:39 +11:00
member_discovery.rs Normalize raw string indentation. 2020-09-26 17:59:58 -07:00
member_errors.rs Normalize raw string indentation. 2020-09-26 17:59:58 -07:00
message_format.rs Bump to 0.54.0 2021-03-26 12:28:47 -07:00
messages.rs add short path name for executables 2022-01-31 10:37:02 -08:00
metabuild.rs Update nightly failure notification. 2021-07-05 16:08:36 -07:00
metadata.rs add support for artifact dependencies (#9096) 2022-02-22 08:08:42 +08:00
minimal_versions.rs Normalize raw string indentation. 2020-09-26 17:59:58 -07:00
multitarget.rs fix clippy warnings 2021-04-02 12:30:36 +02:00
net_config.rs Normalize raw string indentation. 2020-09-26 17:59:58 -07:00
new.rs Test for cargo new/init autodetct and ignore file rules 2022-02-11 18:54:27 +08:00
offline.rs HTTP registry implementation 2022-03-20 18:02:09 -07:00
old_cargos.rs Check 1.60 behavior 2022-02-26 19:35:13 +08:00
out_dir.rs Add split-debuginfo profile option 2021-02-01 09:21:36 -08:00
owner.rs Minor update to registry API error messages. 2021-02-27 12:38:17 -08:00
package.rs Add tests for ignoring symlinks 2022-03-22 16:21:39 -07:00
package_features.rs Auto merge of #9420 - In-line:unknown-features-suggestions-in-workspace, r=ehuss 2021-06-01 15:41:27 +00:00
patch.rs Port cargo from toml-rs to toml_edit 2022-01-13 09:27:27 -06:00
path.rs Update tests to display dep-req info for dep-chain 2021-08-24 00:39:38 +08:00
paths.rs Replace deprecated [replace] references with [patch] 2021-06-02 12:30:56 +02:00
pkgid.rs teset(pkgid): suggestion for bad parsing 2021-03-02 16:18:21 +08:00
plugins.rs Fix plugin registrar change. 2021-08-14 15:31:06 -07:00
proc_macro.rs Use warn_on_deprecated 2022-03-10 00:08:28 +08:00
profile_config.rs Stop gating feature "named-profiles" 2022-02-28 23:23:26 +08:00
profile_custom.rs Add future compatibility warning on mixture of --release with --profile. 2021-09-24 10:59:00 -07:00
profile_overrides.rs Normalize raw string indentation. 2020-09-26 17:59:58 -07:00
profile_targets.rs Stabilize named profiles. 2021-09-24 10:00:42 -07:00
profiles.rs Add common profile validation. 2022-02-22 11:04:24 -08:00
progress.rs Normalize raw string indentation. 2020-09-26 17:59:58 -07:00
pub_priv.rs Update nightly failure notification. 2021-07-05 16:08:36 -07:00
publish.rs test: Fix compatibilty with new toml_edit 2022-01-31 10:57:38 -06:00
publish_lockfile.rs Update tests to use registry names 2021-07-22 00:50:30 +08:00
read_manifest.rs Add rust_metadata to SerializedPackage 2021-10-12 14:07:19 +02:00
registry.rs HTTP registry implementation 2022-03-20 18:02:09 -07:00
rename_deps.rs Remove more unused code 2021-10-12 14:22:17 -07:00
replace.rs Auto merge of #9681 - hi-rustin:rustin-patch-reject, r=ehuss 2021-07-23 18:53:25 +00:00
required_features.rs fix test suite 2021-02-21 14:37:42 -08:00
run.rs Fix term.verbose without quiet, and vice versa 2022-02-26 14:17:00 -08:00
rust_version.rs Stabilize rust-version 2021-08-02 13:38:58 +02:00
rustc.rs New test for cargo rustc --crate-type with dependency 2022-02-26 09:44:48 +08:00
rustc_info_cache.rs Don't re-use rustc cache when RUSTC_WRAPPER changes 2021-04-16 20:08:11 +03:00
rustdoc.rs Update rustdoc tests with -Cmetadata flag 2021-10-12 19:33:23 -07:00
rustdoc_extern_html.rs Temporarily disable extern-html-root-url test. 2021-08-22 09:24:46 -07:00
rustdocflags.rs Normalize raw string indentation. 2020-09-26 17:59:58 -07:00
rustflags.rs Auto merge of #10395 - jonhoo:fix-10206, r=alexcrichton 2022-02-28 19:29:07 +00:00
search.rs HTTP registry implementation 2022-03-20 18:02:09 -07:00
shell_quoting.rs Minor testsuite organization. 2019-11-24 18:42:45 -08:00
standard_lib.rs Fix panic with build-std of a proc-macro. 2021-08-23 12:06:32 -07:00
test.rs Add -Z check-cfg-features support for rustdoc 2022-02-26 14:10:17 +01:00
timings.rs Move timing reports to target/cargo-timings 2022-01-30 21:43:52 -08:00
tool_paths.rs Match any error when failing to find executables 2021-11-17 11:09:52 +00:00
tree.rs Fix resolve error with cyclic dev-dependency features. 2021-11-19 18:10:10 -08:00
tree_graph_features.rs Do not ignore --features when --all-features is present 2022-01-28 02:49:42 +03:00
unit_graph.rs Fix test 2021-08-05 17:17:50 +02:00
update.rs Add rust_metadata to SerializedPackage 2021-10-12 14:07:19 +02:00
vendor.rs vendor: Don't allow multiple values for --sync 2022-03-11 10:41:12 -06:00
verify_project.rs Remove the double-backslash escape for matching. 2021-06-16 09:44:29 -07:00
version.rs Add os to verbose version string. 2021-10-11 11:22:48 -07:00
warn_on_failure.rs Normalize raw string indentation. 2020-09-26 17:59:58 -07:00
weak_dep_features.rs Port cargo from toml-rs to toml_edit 2022-01-13 09:27:27 -06:00
workspaces.rs Port cargo from toml-rs to toml_edit 2022-01-13 09:27:27 -06:00
yank.rs Minor update to registry API error messages. 2021-02-27 12:38:17 -08:00