From 3d0e84aac42d20f2a1714ac83846bb47d55fbea46bec2e1eab88622d9e481659 Mon Sep 17 00:00:00 2001 From: William Brown Date: Wed, 4 Sep 2024 04:28:23 +0000 Subject: [PATCH] - bsc#1230032 - RUSTSEC-2024-0006 - rust-shlex: Multiple issues involving quote API - Update to version 1.27.1~0: * chore(dist): update commit shasum in `rustup-init.sh`, take 2 * fix(ci/linux): don't use `pip3` to install `awscli` * fix(ci/macos): don't use `pip3` to install `awscli` * chore(dist): update commit shasum in `rustup-init.sh` * docs: update CHANGELOG for v1.27.1 * feat(dist): improve `changelog_helper` script * dist: bump `rustup` version to `1.27.1` * chore: fix some typos in comments * Remove TryFrom for TargetTriple * Add tests for add/remove components by name with target triple * Replace Component::new_with_target by Component::try_new * chore(deps): lock file maintenance * refactor(self-update)!: remove confusing `get_path()` impl on Unix * test(self-update): ensure the resolution of #3739 * feat(self-update): add `with_saved_reg_value()` * refactor(self-update): extract `(get|restore)_reg_value()` * refactor(self-update): extract `with_saved_global_state()` * refactor(self-update): use `std::io` * fix(self-update): replace some `#[cfg(not(unix))]` usages with `#[cfg(windows)]` * feat(self-update): improve error messages on Windows * fix(self-update): run `do_update_programs_display_version()` on `run_update()` * refactor(self-update): extract `get_and_parse_new_rustup_version()` * refactor(self-update): extract `do_update_programs_display_version()` * ci: don't test for FreeBSD on PRs * docs(user-guide): update `environment-variables` * refactor(self-update): eliminate needless clone * feat(self-update): log `RUSTUP_DIST_*` if it's set * feat(self-update): log `RUSTUP_UPDATE_ROOT` if it's set OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rustup?expand=0&rev=46 --- .gitattributes | 23 ++ .gitignore | 1 + _constraints | 9 + _service | 27 ++ _servicedata | 4 + cargo_config | 5 + rustup-1.27.0~0.tar.zst | 3 + rustup-1.27.1~0.tar.zst | 3 + rustup-rpmlintrc | 1 + rustup.changes | 689 ++++++++++++++++++++++++++++++++++++++++ rustup.spec | 141 ++++++++ vendor.tar.zst | 3 + 12 files changed, 909 insertions(+) create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 _constraints create mode 100644 _service create mode 100644 _servicedata create mode 100644 cargo_config create mode 100644 rustup-1.27.0~0.tar.zst create mode 100644 rustup-1.27.1~0.tar.zst create mode 100644 rustup-rpmlintrc create mode 100644 rustup.changes create mode 100644 rustup.spec create mode 100644 vendor.tar.zst diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..57affb6 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.osc diff --git a/_constraints b/_constraints new file mode 100644 index 0000000..4cdf591 --- /dev/null +++ b/_constraints @@ -0,0 +1,9 @@ + + + + + + 25 + + + diff --git a/_service b/_service new file mode 100644 index 0000000..9c1b3c7 --- /dev/null +++ b/_service @@ -0,0 +1,27 @@ + + + https://github.com/rust-lang/rustup.git + @PARENT_TAG@~@TAG_OFFSET@ + git + 1.27.1 + * + (\d+\.\d+\.\d+) + \1 + enable + william.brown@suse.com + + + + *.tar + zst + + + + rustup + zst + true + + + rustup + + diff --git a/_servicedata b/_servicedata new file mode 100644 index 0000000..f450692 --- /dev/null +++ b/_servicedata @@ -0,0 +1,4 @@ + + + https://github.com/rust-lang/rustup.git + 54dd3d00fd20e64dc522517a0d7be4285570a2f1 \ No newline at end of file diff --git a/cargo_config b/cargo_config new file mode 100644 index 0000000..6fb4ff4 --- /dev/null +++ b/cargo_config @@ -0,0 +1,5 @@ +[source.crates-io] +replace-with = "vendored-sources" + +[source.vendored-sources] +directory = "vendor" \ No newline at end of file diff --git a/rustup-1.27.0~0.tar.zst b/rustup-1.27.0~0.tar.zst new file mode 100644 index 0000000..7a89b28 --- /dev/null +++ b/rustup-1.27.0~0.tar.zst @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:666246c2dd964507f3d5302b9fc071df865c8f57371b7c90347e66c051857a4f +size 833304 diff --git a/rustup-1.27.1~0.tar.zst b/rustup-1.27.1~0.tar.zst new file mode 100644 index 0000000..bfed213 --- /dev/null +++ b/rustup-1.27.1~0.tar.zst @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fe6e643d69ae9c5fbe235bb2735aad0f7c00e843ddd90c98061fd65942aa2632 +size 838106 diff --git a/rustup-rpmlintrc b/rustup-rpmlintrc new file mode 100644 index 0000000..615d455 --- /dev/null +++ b/rustup-rpmlintrc @@ -0,0 +1 @@ +addFilter("rustup.x86_64: W: obsolete-not-provided.*") diff --git a/rustup.changes b/rustup.changes new file mode 100644 index 0000000..acd4cf7 --- /dev/null +++ b/rustup.changes @@ -0,0 +1,689 @@ +------------------------------------------------------------------- +Wed Sep 04 01:15:21 UTC 2024 - william.brown@suse.com + +- bsc#1230032 - RUSTSEC-2024-0006 - rust-shlex: Multiple issues involving quote API +- Update to version 1.27.1~0: + * chore(dist): update commit shasum in `rustup-init.sh`, take 2 + * fix(ci/linux): don't use `pip3` to install `awscli` + * fix(ci/macos): don't use `pip3` to install `awscli` + * chore(dist): update commit shasum in `rustup-init.sh` + * docs: update CHANGELOG for v1.27.1 + * feat(dist): improve `changelog_helper` script + * dist: bump `rustup` version to `1.27.1` + * chore: fix some typos in comments + * Remove TryFrom for TargetTriple + * Add tests for add/remove components by name with target triple + * Replace Component::new_with_target by Component::try_new + * chore(deps): lock file maintenance + * refactor(self-update)!: remove confusing `get_path()` impl on Unix + * test(self-update): ensure the resolution of #3739 + * feat(self-update): add `with_saved_reg_value()` + * refactor(self-update): extract `(get|restore)_reg_value()` + * refactor(self-update): extract `with_saved_global_state()` + * refactor(self-update): use `std::io` + * fix(self-update): replace some `#[cfg(not(unix))]` usages with `#[cfg(windows)]` + * feat(self-update): improve error messages on Windows + * fix(self-update): run `do_update_programs_display_version()` on `run_update()` + * refactor(self-update): extract `get_and_parse_new_rustup_version()` + * refactor(self-update): extract `do_update_programs_display_version()` + * ci: don't test for FreeBSD on PRs + * docs(user-guide): update `environment-variables` + * refactor(self-update): eliminate needless clone + * feat(self-update): log `RUSTUP_DIST_*` if it's set + * feat(self-update): log `RUSTUP_UPDATE_ROOT` if it's set + * refactor(self-update): rename `UPDATE_ROOT` to `DEFAULT_UPDATE_ROOT` + * refactor(self-update): extract `update_root()` + * once_cell only used with reqwest in download crate, so gate it + * tracing unsed only from otel feature, so move it to optional + * chore(deps): lock file maintenance + * Add loongarch64-unknown-linux-gnu to installation docs + * Add loongarch64-unknown-linux-gnu to cloudfront invalidations + * Use pattern matching to make Debug impl for Cfg more robust + * Use std IsTerminal interface + * Rename temp::Cfg to Context + * temp: keep definitions and impls together + * Remove derivative dependency in favor of manual implementation + * docs(dev-guide): move all mentions of `cargo clippy` to `linting.md` + * docs(dev-guide): mention that we need to keep mdBook links stable + * Update semver-compatible dependencies + * refactor(utils)!: rename `delete_dir_contents()` to `delete_dir_contents_following_links()` + * fix(utils): resolve input path in `delete_dir_contents()` if it's a link + * test(cli): ensure the resolution of #3344 + * Revert "fix(utils): unlink input path in `delete_dir_contents()` if it's a link" + * Revert "refactor(utils)!: rename `delete_dir_contents()` to `delete_dir_contents_or_unlink()`" + * Revert "test(cli): ensure the resolution of #3344" + * test(cli): ensure the resolution of #3344 + * refactor(utils)!: rename `delete_dir_contents()` to `delete_dir_contents_or_unlink()` + * fix(utils): unlink input path in `delete_dir_contents()` if it's a link + * test(cli): ensure the resolution of #3737 + * refactor(util)!: rename `open_dir()` to `open_dir_following_links()` + * fix(utils): don't use `O_NOFOLLOW` in `open_dir()` + * chore: fix typo in `CHANGELOG` + * chore(meta): update `bug_report` issue template + * Add hr to Windows instructions + * fix(doc): don't show the opening message when --path is used + * chore: remove repetitive words + * fix(deps): update rust crate opener to 0.7.0 + * fix(config): remove unnecessary debug print + * fix(ci): fix file paths in CI-generated `*.sha256` files on *nix + * chore(deps): lock file maintenance + * fix(ci): correct error message after bumping reqwest + * fix(deps): update rust crate reqwest to 0.12 + * doc(dev-guide): Fix test Lint and add explanation + * Fix "component add" error message + * ci: use `stable` Rust for all clippy lints + * style: apply clippy suggestions from Rust 1.78.0 + * fix(ci/windows): disable `cargo clippy` on `*-windows-gnu` + * fix(shell): create parent dir before appending to rcfiles + * fix(fish): fix definition of `Fish::update_rcs` + * docs(dev-guide): update `release-process.md` to match the new workflow based on GitHub Merge Queue + * ci(macos): add `MACOSX_DEPLOYMENT_TARGET` and friends + * Replaced `.` with `source` in fish shell's `source_string` + * Deny clippy warnings in CI + * Apply clippy suggestions + * Rely on implicit conversion to OperationResult + * Extract closure from match scrutinee + * fix(cli): fix incorrect color state after `ColorableTerminal::reset` + * docs: Add note about stability of llvm-tools. + * Change default for RUSTUP_WINDOWS_PATH_ADD_BIN + * ci: remove direct `renovate/*` tests + * chore(deps): lock file maintenance + * Fix dead_code and unused_imports warnings + +------------------------------------------------------------------- +Fri Mar 15 00:44:20 UTC 2024 - william.brown@suse.com + +- Update to version 1.27.0~0: + * chore(dist): update commit shasum in `rustup-init.sh` + * docs: update `CHANGELOG` for v1.27.0 + * hack(deps): pin `openssl-sys` to 0.9.92 + * chore(deps): lock file maintenance + * fix #3663. Feedback in terminal when opening browser for docs + * Fix copy icon position in Safari + * Upgrade to opentelemetry 0.22 + * fix ambiguous prompt after setting up custom installation + * docs: rephrase and split sentence about Visual Studio license + * Add comment on why we prefer symlinks to junctions + * Windows: Try using symlinks if they're allowed + * chore(ci): unify the matrix format to (mode, target) + * ci: update runners for macOS-related workflows + * docs: mention `apt` in installation methods + * docs: fix missing links in `CHANGELOG.md` + * chore(deps): update rust crate trycmd to 0.15.0 + * fix(deps): downgrade `openssl-sys` to 0.9.92 + * ci: remove the now-tier3 `mips*-unknown-linux-gnu*` targets from the build + * chore(deps): lock file maintenance + * Update mdbook and fix some source issues. + * Rename `.cargo/config` to `.cargo/config.toml` + * chore: update `CHANGELOG.md` + * dist: bump `rustup-init.sh` version to `1.27.0` + * dist: bump `rustup` version to `1.27.0` + * feat: introduce `changelog_helper` script + * Upgrade to pulldown-cmark 0.10 + * Fix some typos + * fix(deps): update rust crate libc to 0.2.153 + * Download rust CI Docker images from a registry + * Component is now named 'llvm-tools' + * chore: add docstring to `is_32bit_userspace()` + * chore: disable some unix-only helper functions on Windows + * chore(deps): lock file maintenance + * chore(deps): update actions/cache action to v4 + * refactor(cli): simplify case splitting on `clap::error::ErrorKind` + * refactor(names): replace `maybe_official_toolchainame_parser` with `impl FromStr` + * refactor: simplify `is_proxyable_tools` + * refactor(distributable): import `ComponentStatus` + * refactor(cli): avoid nested combinators in `has_at_most_one_target` + * feat(cli): warn when removing the last/host target for a toolchain + * refactor(toolchain): extract `DistributableToolchain::components()` + * www: detect RISC-V 64 platform + * fix(deps): update rust crate strsim to 0.11 + * chore(deps): update `renovate.json` to remove version bumps covered by lockfile maintenance PRs, take 3 + * feat(ci): configure `merge_queue` to be a PR-like event + * feat(ci): enable the `merge_group` trigger + * fix(ci): use `github.event_name == 'schedule'` instead of `github.event.schedule` + * chore(deps): update `renovate.json` to remove version bumps covered by lockfile maintenance PRs, take 2 + * fix(deps): update rust crate clap to v4.4.13 + * fix(deps): update rust crate syn to v2.0.48 + * chore(deps): update rust crate opentelemetry_sdk to v0.21.2 + * fix(ci): use `github.event_name == 'push'` instead of `github.event.push` + * feat(ci): add CI workflow generation checks + * refactor(ci): disassemble and reorganize `ci/cirrus-templates` + * feat(ci): add `conclusion` job + * refactor(ci): move `freebsd-builds` to GitHub Actions + * refactor(ci): merge all current GitHub Actions workflows into `ci.yaml` + * chore(ci): clean up current CI files + * chore(deps): update `renovate.json` to remove version bumps covered by lockfile maintenance PRs + * fix(deps): update rust crate syn to v2.0.47 + * fix(deps): update rust crate proc-macro2 to v1.0.75 + * fix(deps): update rust crate clap_complete to v4.4.6 + * fix(deps): update rust crate serde to v1.0.194 + * fix(deps): update rust crate semver to v1.0.21 + * chore(deps): update rust crate thiserror to v1.0.56 + * chore(deps): update rust crate anyhow to v1.0.79 + * fix(deps): update rust crate syn to v2.0.45 + * fix(deps): update rust crate proc-macro2 to v1.0.73 + * fix(deps): update rust crate syn to v2.0.44 + * fix(deps): update rust crate quote to v1.0.34 + * fix(deps): update rust crate proc-macro2 to v1.0.72 + * chore(deps): update rust crate anyhow to v1.0.78 + * chore(deps): update rust crate thiserror to v1.0.53 + * fix(deps): update rust crate clap to v4.4.12 + * chore(deps): update rust crate tempfile to v3.9.0 + * fix(deps): update rust crate clap_complete to v4.4.5 + * chore(deps): update rust crate anyhow to v1.0.77 + * chore(deps): update rust crate thiserror to v1.0.52 + * fix(deps): update rust crate syn to v2.0.43 + * fix(deps): update rust crate openssl to v0.10.62 + * fix(deps): update rust crate proc-macro2 to v1.0.71 + * fix(deps): update rust crate syn to v2.0.42 + * chore(deps): update rust crate anyhow to v1.0.76 + * chore(deps): update rust crate hyper-util to v0.1.2 + * chore(deps): update rust crate tokio to v1.35.1 + * fix(deps): update rust crate reqwest to v0.11.23 + * chore(deps): update rust crate hyper to v1.1.0 + * docs: move "rls" and "rust-analysis" to separate section "previous…" (#3591) + * chore(deps): update actions/upload-artifact action to v4 + * Fix rustup-init failure to read ZDOTDIR from zsh when SHELL is not zsh (#3584) + * chore(deps): lock file maintenance + * CI: Enable rustls on loongarch64 + * CI: Revert "Disable openssl for loongarch64-unknown-linux-gnu" + * fix(deps): update rust crate openssl-src to v300.2.1+3.2.0 + * fix(deps): update rust crate syn to v2.0.41 + * chore(deps): lock file maintenance + * fix(deps): update rust crate syn to v2.0.40 + * fix(deps): update rust crate libc to v0.2.151 + * chore(deps): update rust crate once_cell to v1.19.0 + * fix(deps): update rust crate clap to v4.4.11 + * fix(deps): update rust crate openssl to v0.10.61 + * Fix test permanently adding to PATH + * chore(deps): revert `Cargo.toml` bump in #3540 + * chore(deps): revert `Cargo.toml` bump in #3532 + * chore(renovate): prevent unnecessary `Cargo.toml` bumps + * Lock file maintenance + * Fix panic in `component list --toolchain stable` + * Lock file maintenance + * Upgrade hyper to 1.0 (#3543) + * Clarify several docs and help messages + * Remove rel paths from rust-toolchain.toml docs + * CI: Disable openssl for loongarch64-unknown-linux-gnu + * Update Rust crate url to 2.5 + * Update Rust crate winreg to 0.52 + * Lock file maintenance + * Update Rust crate windows-sys to 0.52.0 + * Update Rust crate termcolor to 1.4 + * Streamline dependencies in `Cargo.toml` + * Update opentelemetry + * [doc] windows.md: fix link + * Inline channel pattern list + * Remove unused import + * Explicitly import symbols + * Remove unused dependencies from macros crate + * Replace usage of lazy_static with once_cell + * Use more conventional field order in package table + * Remove authors from Cargo manifest (per RFC 3052) + * Update semver-compatible dependencies + * Use uniform dependency specification style + * Inline `semver::Version` in `toolchain_sort` + * Add docs specifying `toolchain_sort`'s expected behavior + * Change key used in `toolchain_sort` + * Inline `special_version` in `toolchain_sort` + * Inline `toolchain_sort_key` in `toolchain_sort` + * Replace `sort_by` with `sort_by_key` in `toolchain_sort` + * Refine `test_toolchain_sort` + * Suggest installing MSYS2 for `windows-gnu` + * Fix the test toolchain_broken_symlink on Windows + * Move `TOOLSTATE_MSG` to `dist` to serve toolchain-wide operations + * Add test to ensure resolution of #3418 + * Add `Panics` sections to docstrings + * Refactor `components_*_msg` + * Delete suggestions of removing the relevant component from `component_unavailable_msg` + * Clean up some `manifestation` logic + * Warn when running under Rosetta emulation + * Lock file maintenance + * Lock file maintenance + * Typo fixed in tips-and-tricks.md file + * Adjust suggestions about sourcing `env` files + * Restrict zsh `shwordsplit` to `downloader()` + * Update Rust crate zstd to 0.13 + * Apply `clippy` suggestions + * Extract `post_install_msg_unix_source_env!()` + * Add suggestions to mention sourcing `env.fish` + * Fix zsh word splitting for curl "--retry 3" + * Add ksh compatibility for latest illumos and others + * Remove redundant message if an error occurs during package extraction + * Update Rust crate regex to 1.10.0 + * Write a custom env script for fish + * Fix fish config dir paths + * Update all rc fish scripts + * Try to add support for fish shell + * Clarify the origin of `rust-$TARGET` CI Docker images + * Lock file maintenance + * Apply more `clippy` suggestions + * Capturing IO error in download_file_with_resume (#3421) + * Adjust instructions for manual installation (#3502) + * Windows: Load DLLs from system32 + * When running a 32-bit rustup on an aarch64 CPU, select a 32-bit toolchain + * Do not fallback to "arm" in rustup-init.sh on aarch64 with 32-bit userland + * Update Rust crate toml to 0.8 + * Mention `brew install rustup-init` in the user guide + * Adjust section titles in the user guide + * Update actions/checkout action to v4 + * Avoid warning for unused variant + * fix invalid link for 1.25.2 + * 1.26.0 should not be unreleased in the changelog + * Refactor test case `install_uninstall_affect_path` + * Update Rust crate winreg to 0.51 + * Apply clippy suggestions from Rust 1.74 (#3497) + * Fix some typos + * Lock file maintenance + * Fix rustup_only_options_stdout + * Bring additional help section style in line with clap 4 + * Upgrade to clap 4 + * Avoid deprecated clap API + * Isolate trycmd tests from environment + * Update Rust crate tracing-opentelemetry to 0.21.0 + * buf writes to components + * Lock file maintenance + * Update Rust crate tempfile to 3.8 + * Return the right lifetime from DistributableToolchain::install + * Fix handling of async tests + * Improve CI debugability + * Refactor: Use download_cfg.notify_handler in update() + * Authenticate when installing protoc + * Avoid installing protoc for most CI workflows + * Refine suggestions of sourcing `$HOME/.cargo/env` + * Avoid `sysctl: unknown oid` stderr output and/or non-zero exit code + * Configure automerge in Renovate + * Update opentelemetry + * Fix renovate.json + * Make `RUSTUP_TERM_COLOR`'s value case insensitive + * Add unit tests for `RUSTUP_TERM_COLOR` + * Support `RUSTUP_TERM_COLOR` as an override environment variable + * macOS `uname -m` can lie due to Rosetta shenanigans + * Migrate CONTRIBUTING.md to an mdbook + * Build docs during CI + * Move the user guide from doc to doc/user-guide + * Update Rust crate tempfile to 3.7 + * Use available_parallelism replace the `num_cpus`crate + * rustup-init.sh: Check for kernel UAPI compatibility on LoongArch + * Enable loongarch64-linux-gnu builds on stable + * allow `clippy::arc_with_non_send_sync` + * Address `#[warn(clippy::useless_vec)]` + * Address `#[warn(clippy::needless_borrow)]` + * Address `#[warn(clippy::useless_conversion)]` + * Address `#[warn(clippy::redundant_pattern_matching)]` + * Address `#[warn(clippy::redundant_field_names)]` + * Bump proc-macro2 v1.0.51 -> v1.0.63 + * Bump the openssl v0.10.52 -> v0.10.55 + * Fix typo: prerequistes -> prerequisites + * update installation methods to use TLS v1.2 + * Disable the "oldtime" feature of chrono + * Update Rust crate tempfile to 3.6 + * Update Rust crate url to 2.4 + * Update Rust crate once_cell to 1.18.0 + * Make download_tracker thread safe. + * Enable broken color in MSYS2 shells + * Add suggest_message helper for errors + * replace term with termcolor + * Tweak docs + * Improve error message for removing uninstalled target + * Improve error message for adding unknown target + * CI support for loongarch64-unknown-linux-gnu + * Fix compile on rust nightly + * Group updates to opentelemetry together + * Improve CurrentProcess + * Update dependencies + * TestProcess and friends should be test only + * Update Rust crate windows-sys to 0.48.0 + * Rework Toolchain model and drop relative file path overrides + * Add in opentelemetry tracing as a feature + * Remove repeated definite article + * Make clippy happy + * Update Rust crate toml to 0.7.3 + * Suggest right toolchain when running clippy + * Fix small typo + * Update Rust crate winreg to 0.50 + * Update Rust crate tempfile to 3.5 + * Compile static Mutex where possible + * Upgrade CI image to FreeBSD 13.2 + * Lock file maintenance + * Update Rust crate opener to 0.6.0 + * Update Rust crate enum-map to 2.5.0 + * Bumped retry + +------------------------------------------------------------------- +Fri Dec 15 05:22:51 UTC 2023 - Bruno Pitrus + +- Remove Obsoletes/Provides: rust-analyzer. + If the user has installed rust-analyzer RPM from another source, + this tag makes zypper try to remove the system rustc installation, + which is rather counterproductive. + +------------------------------------------------------------------- +Sat Jun 03 02:57:57 UTC 2023 - william.brown@suse.com + +- Update to version 1.26.0~0: + * Update commit sha in rustup-init.sh again + * Update changelog to add more contributors + * Remove test + * Better error instead of show the help + * Print help when a ValueValidation error occurs + * Revert `Update Rust crate term to v0.7.0` + * Update network-proxies.md + * Fix RUSTUP_PERMIT_COPY_RENAME condition so it is actually used + * Add a test for only options command + * Update UI tests + * Set SubcommandRequiredElseHelp correctly + * Add preload directive to HSTS header + * Remove useless link + * Update changelog about remove GPG signature support + * Update toolchain for android + * Use llvm-ranlib + * Use llvm-ar + * Update toolchain + * Revert "Temporarily disable the android tests" + * Mention remove GPG signature support + * Add all contributors + * Update CHANGELOG for v1.26.0 + * Update commit sha in rustup-init.sh again + * Remove `show keys` subcommand + * Move trycmd to dev-dependencies + * Remove GPG signature support + * Clippy fixes + * Clippy fixes + * Add RUSTUP_WINDOWS_PATH_ADD_BIN + * Don't add toolchain bin to PATH on Windows + * Fix broken CI for rust-x86_64-unknown-illumos + * Regen the GitHub actions for windows + * Add target env for windows + * Update commit sha in rustup-init.sh again + * Bump fs_at from v0.1.1 to v0.1.3 + * Update commit sha in rustup-init.sh + * Bump version to 1.26.0 + * Remove extra new line after help + * Make match statements better + * Run the tests on x86_64-pc-windows-msvc + * Update rustup mode tests + * Update setup mode tests + * Fix broken test path + * Build debug and release in different jobs + * Cap the maximum hard links per file + * Update Rust crate trycmd to 0.14.13 + * Bump remove_dir_all + * Bump clap to 3.0 + * Put self update test servers in test root + * Hardlink rustup-init in the test suite + * Update Rust crate tempfile to 3.4 + * Run integration tests as a single binary + * Make gen-workflows.sh executable + * Remove use of hardlinks to symlinks on macOS. + * Update Rust crate curl to 0.4.44 + * Fix deprecated set-output warnings + * Update Rust crate once_cell to 1.17.1 + * Use workspace inheritance + * Enable Windows aarch64 builds on Stable + * Migrate HostGoesMissing + * Migrate cli-rustup to with_scenario + * Introduce constant dist dirs for testing + * expect_ok takes mutable Config + * change_dir takes mutable Config + * Lock file maintenance + * Fix some more clippy-related issues. + * Do all builds together in CI + * Fix build on Windows + * Update Rust crate trycmd to 0.14.12 + * Migrate callers to the new names + * Move calls from fn(&config) to self.fn + * Update Rust crate winreg to 0.11 + * Temporarily disable the android tests + * add some explains for `--default-toolchain none` + * Add ui test for the rustup-init.sh + * fmt + * Report duration of executed test commands + * Make test process stdout/err clearer + * Test the up aliases exist via help text + * Update ubuntu Docker tag to v22 + * Update actions/upload-artifact action to v3 + * Update Rust crate winreg to 0.10 + * doc: add links for the aarch64-apple-darwin files + * Use `Command::get_envs` in env_var + * Update comment about CARGO_HOME on Windows + * Update Rust crate zstd to 0.12 + * Update Rust crate url to 2.3 + * Fix windows tests + * Add test for cli ui + * Update Rust crate anyhow to 1.0.69 + * Use beta and give more explanation + * Make clippy::needless-lifetimes happy + * Make clippy::needless-borrow happy + * Fix chrono deprecation warnings + * clippy::uninlined_format_args: Apply clippy suggestions + * Bump the centos image version + * Remove temporary fix for the docker ci + * fix(deps): update rust crate opener to 0.5.2 + * Rename from EventResult to DownloadCallback + * Fix `type_complexity` error + * allow to quickly edit a page directly on github + * Fix `derive_partial_eq_without_eq` clippy error + * Update MSVC installation image highlights + * Spelling and grammar fixes + * Add type parameter to prepend_path + * Remove space from comment + * Fix prepend_unique_path test on Windows + * Fix duplicated PATH entries + * chore(deps): lock file maintenance + * Update actions/checkout action to v3 + * Expand on when VS Community isn't appropriate + * Highlight relevant area of images + * doc: Recommend tracking Cargo.lock with rust-toolchain + * Update Rust crate term to v0.7.0 + * Update Rust crate effective-limits to 0.5.5 + * Test Renovate branches directly + * Lock file maintenance + * Update Rust crate sequoia-openpgp to 1.13 + * Update Rust crate rs_tracing to 1.1.0 + * Update Rust crate retry to 1.3.1 + * Update Rust crate num_cpus to 1.15 + * Update Rust crate enum-map to 2.4.2 + * Update GitHub Actions templates + * Update actions/cache action to v3 + * Add -x and enable SC1090 + * Fix shell check warning + * Renovate tweaks + * Update Rust crate anyhow to 1.0.68 + * Tweak initial config + * Put renovate.json in a better place + * Add renovate.json + * Improve a help message for `doc --rustdoc` + * Fix typo + * Use auto deref + * Add automatic resume flag when retrying download with curl + * Add "Proxy" to terminology page + * Remove needless borrow + * Update to home 0.5.4 + * Fix broken GitHub Actions + * Fix typos + * Update code to use `home::env as home` as suggested + * Add details of each setting in the toolchain file + * Update home usage to new env fn + * Bump pulldown-cmark version to 0.9 + * Let Clap wrap help texts automatically + * Apply suggestions from code review + * Improve Windows MSVC install instructions + * Add support for loongarch64 + * Add DisplayVersion for rustup to registry on Windows. + * Add `up` as an alias of `update` + * Move rust-analyzer to DUP_TOOLS + * Add rust-analyzer proxy. + * Unify the msg of the prompt when downloading self-update + * Improve error message when there is an error caused by override file + * (changelog): Fix links to tags + * Improved warning message for System-Rust-override + * Clippy lint + * Remove snapcraft build and runtime support entirely + * Use `if` instead of `$?` + * Correctly propagate subshell failures in rustup-init + * (toolchain): Toolchain names must not be empty +- Remove upstreamed patches +* 0000-rustup-add-rust-analyzer-proxy.patch +* 0001-rustup-move-rust-analyzer.patch + +------------------------------------------------------------------- +Thu Apr 13 01:17:49 UTC 2023 - William Brown + +- bsc#1210345 - CVE-2023-26964 - hyper,h2: stream stacking when H2 processing HTTP2 RST_STREAM frames + +------------------------------------------------------------------- +Mon Mar 27 19:30:39 UTC 2023 - Michal Vyskocil + +- fix rust-analyzer as a rustup proxy by backporting two upstream patches: + * 0000-rustup-add-rust-analyzer-proxy.patch + * 0001-rustup-move-rust-analyzer.patch + +------------------------------------------------------------------- +Thu Feb 23 00:16:21 UTC 2023 - William Brown + +- bsc#1208552 - CVE-2022-31394 - header list size may allow denial of service + +------------------------------------------------------------------- +Tue Feb 14 01:32:11 UTC 2023 - William Brown + +- Automatic update of vendored dependencies + +------------------------------------------------------------------- +Thu Feb 09 23:51:59 UTC 2023 - william.brown@suse.com + +- Update to version 1.25.2~0: + * properly fix mips64el + * update compiler paths in docker images + * temporary fix for the docker ci + * Add -x and enable SC1090 + * Fix shell check warning + * update version in install script + * update version to 1.25.2 + * add changelog entry + * allow sha1 signing keys without a cutoff date + +------------------------------------------------------------------- +Tue Nov 01 22:42:58 UTC 2022 - william.brown@suse.com + +- Update vendored dependencies + +------------------------------------------------------------------- +Tue Oct 04 00:28:32 UTC 2022 - william.brown@suse.com + +- Update to version 1.25.1~23: + * Add support for loongarch64 + * Add DisplayVersion for rustup to registry on Windows. + * Add `up` as an alias of `update` + * Move rust-analyzer to DUP_TOOLS + * Add rust-analyzer proxy. + * Improve error message when there is an error caused by override file + +------------------------------------------------------------------- +Mon Sep 26 05:41:12 UTC 2022 - william.brown@suse.com + +- Update vendored dependencies +- bsc#1196972 - CVE-2022-24713 - Regex denial of service +- bsc#1194119 - CVE-2021-45710 - tokio data race with memory corruption + +------------------------------------------------------------------- +Fri Sep 09 01:44:21 UTC 2022 - william.brown@suse.com + +- boo#1203257 - Add missing link for rust-analyzer +- Replace rust-analyzer via provides +- Update vendored dependencies + +------------------------------------------------------------------- +Wed Jul 20 02:13:49 UTC 2022 - william.brown@suse.com + +- Update to version 1.25.1~0: + * (docker): Update freebsd dockerfile to expect 12 not 11 + * (changelog): Add 1.25.1 + * (rustup-init.sh): Update version to match 1.25.1 release + * (Cargo): Update to 1.25.1 + * Revert "Set RUSTC and RUSTDOC env for child processes run through the proxy" + * (changelog): Fix typo + * Make `report_error` not be `#[cfg(windows)]` + * fix just one doc typo + +------------------------------------------------------------------- +Mon Jun 20 03:33:05 UTC 2022 - William Brown + +- Automatic update of vendored dependencies + +------------------------------------------------------------------- +Tue Apr 5 05:27:07 UTC 2022 - William Brown + +- Automatic update of vendored dependencies + +------------------------------------------------------------------- +Mon Mar 14 03:02:03 UTC 2022 - william.brown@suse.com + +- Update to resolve bsc#1196972 CVE-2022-24713 - Regex DOS + +------------------------------------------------------------------- +Wed Mar 02 05:05:15 UTC 2022 - william.brown@suse.com + +- Update vendored dependencies + +------------------------------------------------------------------- +Mon Feb 14 00:44:44 UTC 2022 - william.brown@suse.com + +- Remove patch for symlinking to rustup-init in no self update +- Provide proxy binaries for users that link to rustup, preventing + a need for rustup-init + +------------------------------------------------------------------- +Thu Jan 06 07:02:42 UTC 2022 - william.brown@suse.com + +- resolve bsc#1194119 (CVE-2021-45710) + +------------------------------------------------------------------- +Mon Nov 1 00:37:07 UTC 2021 - William Brown + +- Add ownership of directories that are considered unowned in leap15.3 + +------------------------------------------------------------------- +Mon Oct 11 04:25:24 UTC 2021 - william.brown@suse.com + +- Apply patch: + * Symlink rustup-init when in no self update mode +- Add requires on gcc so that system linker is present as a dependency + +------------------------------------------------------------------- +Sat Oct 9 15:42:41 UTC 2021 - Michał Rostecki + +- Add symlink to rustup-init. rustup and rustup-init are the same + binary, but that binary behaves diferently based on the name it's + executed by. + rustup-init takes care of the initial setup, which includes + setting PATH, modifying .bashrc etc. It's supposed to be called + only once. + rustup doesn't perform those steps and it only manages + toolchains. It can be used the entire time. +- Install bash and zsh completion. + +------------------------------------------------------------------- +Thu Oct 7 04:59:11 UTC 2021 - William Brown + +- Update rustup to be primary replacement to rls and other developer tools + +------------------------------------------------------------------- +Thu Sep 30 00:30:35 UTC 2021 - william.brown@suse.com + +- Update to version 1.24.3~git0.ce5817a9: + * rustup-init.sh: Update for 1.24.3 + * Cargo.{toml,lock}: Update for 1.24.3 + * CHANGELOG: Update for 1.24.3 + * tests: Test case for TargetTriple::can_run() + * install: improve heuristic for deprecation warning + * unpack_ram: More graceful handling of low unpack ram + * diskio: Correctly account the release of the final chunk + * diskio: Add buffer_used() to Executor and verify it in the test + * Support self-update modes + +------------------------------------------------------------------- +Thu Sep 30 00:23:11 UTC 2021 - William Brown + +- Initial commit diff --git a/rustup.spec b/rustup.spec new file mode 100644 index 0000000..1944e6d --- /dev/null +++ b/rustup.spec @@ -0,0 +1,141 @@ +# +# spec file for package rustup +# +# Copyright (c) 2024 SUSE LLC +# Copyright (c) 2021 William Brown +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# + + +%define rust_version 1.56 +%define obsolete_rust_versioned() \ +Obsoletes: %{1}1.55%{?2:-%{2}} < %{rust_version} \ +Provides: %{1}1.55%{?2:-%{2}} = %{rust_version} \ +Obsoletes: %{1}1.54%{?2:-%{2}} < %{rust_version} \ +Provides: %{1}1.54%{?2:-%{2}} = %{rust_version} \ +Obsoletes: %{1}1.53%{?2:-%{2}} < %{rust_version} \ +Provides: %{1}1.53%{?2:-%{2}} = %{rust_version} \ +Obsoletes: %{1}1.52%{?2:-%{2}} < %{rust_version} \ +Obsoletes: %{1}1.51%{?2:-%{2}} < %{rust_version} + +Name: rustup +Version: 1.27.1~0 +Release: 0 +Summary: A tool for managing user Rust toolchains +License: (0BSD OR MIT OR Apache-2.0) AND (Apache-2.0 OR BSL-1.0) AND (Apache-2.0 OR ISC OR MIT) AND (Apache-2.0 OR MIT) AND (Apache-2.0 OR MIT OR Zlib) AND (Apache-2.0 OR MIT OR Zlib) AND (MIT OR Unlicense) AND (Apache-2.0 OR Zlib OR MIT) AND Apache-2.0 AND BSD-3-Clause AND CC0-1.0 AND ISC AND MIT +Group: Development/Languages/Rust +URL: https://github.com/rust-lang/rustup +Source0: %{name}-%{version}.tar.zst +Source1: vendor.tar.zst +Source3: %{name}-rpmlintrc +BuildRequires: cargo-packaging +BuildRequires: rust+cargo >= 1.79 +BuildRequires: pkgconfig(openssl) +# For system linker +Requires: gcc +ExclusiveArch: %{rust_tier1_arches} + +# Ensure we can upgrate from ancient versions of rust that used +# to ship these tools. We can probably remove this in the future. +%obsolete_rust_versioned rls +%obsolete_rust_versioned rust doc +%obsolete_rust_versioned rust src +%obsolete_rust_versioned rust analysis +%obsolete_rust_versioned cargo doc + +Obsoletes: cargo-doc < %{rust_version} +Obsoletes: cargo-fmt < %{rust_version} +Obsoletes: clippy < %{rust_version} +Obsoletes: rls < %{rust_version} +Obsoletes: rust-analysis < %{rust_version} +Obsoletes: rust-doc < %{rust_version} +Obsoletes: rust-src < %{rust_version} +Obsoletes: rustfmt < %{rust_version} + +Conflicts: rust+cargo +Conflicts: rust+rustc + +%description +A tool to manager user Rust toolchains. This is generally used by developers +managing multiple parallel toolchains in their environment. + +%prep +%setup -q +%setup -qa1 +# Remove exec bits to prevent an issue in fedora shebang checking. Uncomment only if required. +find vendor -type f -name \*.rs -exec chmod -x '{}' \; + +%build +%{cargo_build} --features=no-self-update + +%install +# manual process +install -D -d -m 0755 %{buildroot}%{_bindir} +install -m 0755 %{_builddir}/%{name}-%{version}/target/release/rustup-init %{buildroot}%{_bindir}/rustup +# rustup-init and rustup are the same binary, but that binary behaves +# differently based on the name it's executed by. +# rustup-init takes care of the initial setup, which includes setting PATH, +# modifying .bashrc etc. It's supposed to be called only once. +# rustup doesn't perform those steps and it only manages toolchains. It +# can be used the entire time. +# +# https://github.com/rust-lang/rustup/blob/master/src/lib.rs#L21 +ln -sf rustup %{buildroot}%{_bindir}/rustc +ln -sf rustup %{buildroot}%{_bindir}/rustdoc +ln -sf rustup %{buildroot}%{_bindir}/cargo +ln -sf rustup %{buildroot}%{_bindir}/rust-analyzer +ln -sf rustup %{buildroot}%{_bindir}/rust-lldb +ln -sf rustup %{buildroot}%{_bindir}/rust-gdb +ln -sf rustup %{buildroot}%{_bindir}/rust-gdbgui +ln -sf rustup %{buildroot}%{_bindir}/rls +ln -sf rustup %{buildroot}%{_bindir}/cargo-clippy +ln -sf rustup %{buildroot}%{_bindir}/clippy-driver +ln -sf rustup %{buildroot}%{_bindir}/cargo-miri +ln -sf rustup %{buildroot}%{_bindir}/rustfmt +ln -sf rustup %{buildroot}%{_bindir}/cargo-fmt + +# shell completions +install -D -d -m 0755 %{buildroot}%{_datadir}/bash-completion/completions +ls %{buildroot}%{_bindir} +ls %{buildroot}%{_bindir}/rustup + +%{buildroot}%{_bindir}/rustup completions bash > %{buildroot}%{_datadir}/bash-completion/completions/rustup +%{buildroot}%{_bindir}/rustup completions bash cargo > %{buildroot}%{_datadir}/bash-completion/completions/cargo +install -D -d -m 0755 %{buildroot}%{_datadir}/zsh/site-functions +%{buildroot}%{_bindir}/rustup completions zsh > %{buildroot}%{_datadir}/zsh/site-functions/_rustup +%{buildroot}%{_bindir}/rustup completions zsh cargo > %{buildroot}%{_datadir}/zsh/site-functions/_cargo + +%files +%{_bindir}/rustup +# %{_bindir}/rustup-init +%{_bindir}/rustc +%{_bindir}/rustdoc +%{_bindir}/cargo +%{_bindir}/rust-analyzer +%{_bindir}/rust-lldb +%{_bindir}/rust-gdb +%{_bindir}/rust-gdbgui +%{_bindir}/rls +%{_bindir}/cargo-clippy +%{_bindir}/clippy-driver +%{_bindir}/cargo-miri +%{_bindir}/rustfmt +%{_bindir}/cargo-fmt +%{_datadir}/bash-completion/completions/cargo +%{_datadir}/bash-completion/completions/rustup +%dir %{_datadir}/zsh +%dir %{_datadir}/zsh/site-functions +%{_datadir}/zsh/site-functions/_cargo +%{_datadir}/zsh/site-functions/_rustup + +%changelog diff --git a/vendor.tar.zst b/vendor.tar.zst new file mode 100644 index 0000000..69fad36 --- /dev/null +++ b/vendor.tar.zst @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2dc696928fa4622fa5808e9f4b737d19202eebfb5cc9d787478e1f4b391f2308 +size 38726693