{"id":20688739,"url":"https://github.com/71/rustup-find","last_synced_at":"2026-06-05T05:31:23.333Z","repository":{"id":57665822,"uuid":"145171116","full_name":"71/rustup-find","owner":"71","description":"A Rust binary that automatically finds the latest version of Rust that has all the currently installed components.","archived":false,"fork":false,"pushed_at":"2018-09-09T11:26:24.000Z","size":14,"stargazers_count":0,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2026-04-18T07:16:31.642Z","etag":null,"topics":["rust","rust-bin","rustup"],"latest_commit_sha":null,"homepage":null,"language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/71.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-08-17T22:17:30.000Z","updated_at":"2018-09-09T11:26:26.000Z","dependencies_parsed_at":"2022-09-14T13:00:47.444Z","dependency_job_id":null,"html_url":"https://github.com/71/rustup-find","commit_stats":null,"previous_names":["6a/rustup-find"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/71/rustup-find","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/71%2Frustup-find","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/71%2Frustup-find/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/71%2Frustup-find/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/71%2Frustup-find/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/71","download_url":"https://codeload.github.com/71/rustup-find/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/71%2Frustup-find/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33932040,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-05T02:00:06.157Z","response_time":120,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["rust","rust-bin","rustup"],"created_at":"2024-11-16T23:06:50.127Z","updated_at":"2026-06-05T05:31:23.312Z","avatar_url":"https://github.com/71.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"rustup-find\n===========\n![Crates.io](https://img.shields.io/crates/v/rustup-find.svg)\n\nA Rust binary that automatically finds the latest version of Rust that has all\nthe currently installed components.\n\n## Usage\n```\nrustup-find 0.1.2\nGrégoire Geis \u003cgit@gregoirege.is\u003e\n  Use rustup to automatically find and/or install the latest Rust version that\n  supports all the currently installed components.\n\nUSAGE:\n    rustup-find.exe [FLAGS] [OPTIONS] [SUBCOMMAND]\n\nFLAGS:\n    -h, --help              Prints help information\n    -n, --no-colors         Whether colors should be disabled.\n    -q, --quiet             Whether nothing should be logged.\n    -s, --skip-installed    Do not try to install already installed components.\n    -V, --version           Prints version information\n    -v, --verbose           Whether we should log more informations than needed.\n\nOPTIONS:\n    -c, --components \u003ccomponents\u003e...\n            Space-separated list of components that must be available for a\n            release to be considered valid.\n    -d, --days \u003cdays\u003e\n            Number of days to check starting at the given offset. [default: 30]\n\n    -o, --offset \u003coffset\u003e\n            Number of days before today at which to start checking. [default: 0]\n\n    -b, --rustup-bin \u003crustup_bin\u003e\n            Path to the Rustup binary. [default: rustup]\n\n    -r, --rustup-dir \u003crustup_dir\u003e\n            Path to the Rustup config directory. [default: ~/.rustup]\n\n    -t, --toolchain \u003ctoolchain\u003e         Target toolchain.\n\nSUBCOMMANDS:\n    find       Find the latest available release that matches the current\n               components.\n    install    Find, download and install the latest available release that\n               matches the current components.\n    replace    Find and download the latest available release that matches\n               the current components, and replace the given toolchain by\n               the newly downloaded one.\n```\n\nIf the `toolchain` is not provided, it will be resolved using `rustup toolchain list | grep default`.\n\n## Examples\n\nAs a `x86_64-pc-windows-gnu` user, releases of `rls-preview` are quite rare,\nwhich is why I created this app.\n\nHere are a different examples of how this binary can be used.\n\n\n### Install latest release that matches the current default toolchain and its components\n```bash\n# This command will:\n#  - Find the correct release.\n#  - Install it using `rustup toolchain install`.\n#  - Move the newly installed toolchain from `channel-date-target` to `channel-target`,\n#    overriding the previous one.\n$ rustup-find --verbose --offset 25 replace\n\n[i] Channel: nightly.\n[i] Target: x86_64-pc-windows-gnu.\n[i] Required components: cargo, rls-preview, rust-analysis, rust-docs, rust-mingw, rust-std, rustc.\n[i] The following component was missing in 2018-07-21: rls-preview.\n[i] The following component was missing in 2018-07-20: rls-preview.\n[+] Found valid toolchain: nightly-2018-07-19-x86_64-pc-windows-gnu.\n[i] Installing toolchain...\n[+] Installed toolchain nightly-2018-07-19-x86_64-pc-windows-gnu.\n[i] Replacing previous toolchain nightly-pc-windows-gnu...\n[+] Replaced previous toolchain nightly-pc-windows-gnu by nightly-2018-07-19-x86_64-pc-windows-gnu.\n```\n\n### Install latest release that matches the current default toolchain and its components\n```bash\n# This command will:\n#  - Find the correct release.\n#  - Install it using `rustup toolchain install`.\n$ rustup-find install\n\n[+] Found valid toolchain: nightly-2018-07-19-x86_64-pc-windows-gnu.\n[+] Installed toolchain nightly-2018-07-19-x86_64-pc-windows-gnu.\n```\n\n### Find latest release that matches the given toolchain and its components\n```bash\n# This command will:\n#  - Find the correct release, and return it.\n$ rustup-find --toolchain nightly-x86_64-pc-windows-msvc\n\nnightly-2018-08-17-x86_64-pc-windows-msvc\n```\n\n### Example failure\n```bash\n$ rustup-find --days 5 --verbose\n\n[i] Channel: nightly.\n[i] Target: x86_64-pc-windows-gnu.\n[i] Required components: cargo, rls-preview, rust-analysis, rust-docs, rust-mingw, rust-std, rustc.\n[i] The following component was missing in 2018-08-26: rls-preview.\n[i] The following component was missing in 2018-08-25: rls-preview.\n[i] The following component was missing in 2018-08-24: rls-preview.\n[i] No components were available in 2018-08-23.\n[i] No components were available in 2018-08-22.\n[-] Could not find a match in the last 5 days.\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F71%2Frustup-find","html_url":"https://awesome.ecosyste.ms/projects/github.com%2F71%2Frustup-find","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F71%2Frustup-find/lists"}