Giter Club home page Giter Club logo

get-all-crates's People

Contributors

dtolnay avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

get-all-crates's Issues

Add flag to download latest versions only

Currently get-all-crates will download every version of every crate.

For some use cases like https://github.com/dtolnay/noisy-clippy, only the latest version of each crate is needed.

The question is which of the following is meant by "latest", as they are not always the same thing:

  • The one published most recently;
  • The one with the largest semver version;
  • The one with the largest non-prerelease semver version.

I believe a good default would be to match what version is rendered by crates.io as current at the top of the crate's page. From what I can tell, it is the non-yanked release having the largest non-prerelease semver version, unless the non-yanked releases are all prereleases, in which case it is the non-yanked prerelease with the largest semver version.

Unable to execute "cargo install get-all-crates"

Hi, when I execute cargo install get-all-crates, it came to the compilation error, is there any walkaround?

chengwei@ubuntu:~/codes/crawl_crates$ cargo install get-all-crates
    Updating crates.io index
  Downloaded get-all-crates v0.1.3
  Downloaded 1 crate (21.9 KB) in 1.29s
  Installing get-all-crates v0.1.3
  Downloaded async-compression v0.4.0
  Downloaded data-encoding v2.4.0
  Downloaded crypto-hash v0.3.4
  Downloaded psl-types v2.0.11
  Downloaded match_cfg v0.1.0
  Downloaded resolv-conf v0.7.0
  Downloaded async-trait v0.1.68
  Downloaded num-format v0.4.4
  Downloaded cookie v0.16.2
  Downloaded enum-as-inner v0.5.2
  Downloaded reqwest v0.11.18
  Downloaded tokio-util v0.7.8
  Downloaded trust-dns-resolver v0.22.0
  Downloaded rustls-pemfile v1.0.2
  Downloaded memmap2 v0.6.2
  Downloaded lru-cache v0.1.2
  Downloaded cookie_store v0.16.1
  Downloaded alloc-no-stdlib v2.0.4
  Downloaded anstream v0.3.2
  Downloaded clap_derive v4.3.0
  Downloaded fnv v1.0.7
  Downloaded cc v1.0.79
  Downloaded autocfg v1.1.0
  Downloaded anstyle-parse v0.2.0
  Downloaded brotli-decompressor v2.3.4
  Downloaded anyhow v1.0.71
  Downloaded clap_lex v0.5.0
  Downloaded crossbeam-deque v0.8.3
  Downloaded clap v4.3.0
  Downloaded crossbeam-channel v0.5.8
  Downloaded crc32fast v1.3.2
  Downloaded clap_builder v4.3.0
  Downloaded publicsuffix v2.2.3
  Downloaded hex v0.3.2
  Downloaded futures-macro v0.3.28
  Downloaded futures-core v0.3.28
  Downloaded trust-dns-proto v0.22.0
  Downloaded thread_local v1.1.7
  Downloaded either v1.8.1
  Downloaded http-body v0.4.5
  Downloaded form_urlencoded v1.1.0
  Downloaded tower-service v0.3.2
  Downloaded futures-task v0.3.28
  Downloaded utf8parse v0.2.1
  Downloaded want v0.3.0
  Downloaded foreign-types v0.3.2
  Downloaded futures-util v0.3.28
  Downloaded webpki-roots v0.22.6
  Downloaded tinyvec v1.6.0
  Downloaded unicode-normalization v0.1.22
  Downloaded walkdir v2.3.3
  Downloaded url v2.3.1
  Downloaded thiserror-impl v1.0.40
  Downloaded ipnet v2.7.2
  Downloaded colorchoice v1.0.0
  Downloaded flate2 v1.0.26
  Downloaded tracing v0.1.37
  Downloaded unicase v2.6.0
  Downloaded webpki v0.22.0
  Downloaded tracing-log v0.1.3
  Downloaded same-file v1.0.6
  Downloaded regex-automata v0.1.10
  Downloaded tokio-macros v2.1.0
  Downloaded proc-macro2 v1.0.59
  Downloaded lock_api v0.4.9
  Downloaded smallvec v1.10.0
  Downloaded serde_json v1.0.96
  Downloaded regex v1.8.3
  Downloaded spin v0.5.2
  Downloaded tokio v1.28.2
  Downloaded ryu v1.0.13
  Downloaded idna v0.2.3
  Downloaded matches v0.1.10
  Downloaded percent-encoding v2.2.0
  Downloaded pin-utils v0.1.0
  Downloaded crossbeam-epoch v0.9.14
  Downloaded untrusted v0.7.1
  Downloaded mime_guess v2.0.4
  Downloaded tinyvec_macros v0.1.1
  Downloaded linked-hash-map v0.5.6
  Downloaded getrandom v0.2.9
  Downloaded memchr v2.5.0
  Downloaded serde v1.0.163
  Downloaded rayon v1.7.0
  Downloaded pkg-config v0.3.27
  Downloaded rustls-webpki v0.100.1
  Downloaded num_cpus v1.15.0
  Downloaded thiserror v1.0.40
  Downloaded tracing-attributes v0.1.24
  Downloaded time-macros v0.2.9
  Downloaded version_check v0.9.4
  Downloaded unicode-bidi v0.3.13
  Downloaded sct v0.7.0
  Downloaded once_cell v1.17.2
  Downloaded unicode-ident v1.0.9
  Downloaded tokio-rustls v0.24.0
  Downloaded syn v2.0.18
  Downloaded rustls v0.21.1
  Downloaded futures-io v0.3.28
  Downloaded httpdate v1.0.2
  Downloaded rayon-core v1.11.0
  Downloaded tracing-subscriber v0.3.17
  Downloaded sharded-slab v0.1.4
  Downloaded mime v0.3.17
  Downloaded ppv-lite86 v0.2.17
  Downloaded slab v0.4.8
  Downloaded openssl-macros v0.1.1
  Downloaded hostname v0.3.1
  Downloaded heck v0.4.1
  Downloaded hex v0.4.3
  Downloaded hyper-rustls v0.24.0
  Downloaded bytes v1.4.0
  Downloaded rustix v0.37.19
  Downloaded regex-syntax v0.6.29
  Downloaded regex-syntax v0.7.2
  Downloaded linux-raw-sys v0.3.8
  Downloaded libc v0.2.144
  Downloaded encoding_rs v0.8.32
  Downloaded brotli v3.3.4
  Downloaded ring v0.16.20
  Downloaded serde_derive v1.0.163
  Downloaded overload v0.1.1
  Downloaded futures-executor v0.3.28
  Downloaded crossbeam-utils v0.8.15
  Downloaded miniz_oxide v0.7.1
  Downloaded is-terminal v0.4.7
  Downloaded time v0.3.21
  Downloaded hyper v0.14.26
  Downloaded socket2 v0.4.9
  Downloaded pin-project-lite v0.2.9
  Downloaded openssl-sys v0.9.87
  Downloaded mio v0.8.7
  Downloaded nu-ansi-term v0.46.0
  Downloaded h2 v0.3.19
  Downloaded parking_lot v0.12.1
  Downloaded log v0.4.18
  Downloaded rand_chacha v0.3.1
  Downloaded openssl v0.10.52
  Downloaded indexmap v1.9.3
  Downloaded idna v0.3.0
  Downloaded io-lifetimes v1.0.11
  Downloaded httparse v1.8.0
  Downloaded arrayvec v0.7.2
  Downloaded bitflags v1.3.2
  Downloaded rand_core v0.6.4
  Downloaded quick-error v1.2.3
  Downloaded matchers v0.1.0
  Downloaded foreign-types-shared v0.1.1
  Downloaded adler v1.0.2
  Downloaded serde_urlencoded v0.7.1
  Downloaded memoffset v0.8.0
  Downloaded try-lock v0.2.4
  Downloaded tracing-core v0.1.31
  Downloaded semver v1.0.17
  Downloaded rand v0.8.5
  Downloaded parking_lot_core v0.9.7
  Downloaded hashbrown v0.12.3
  Downloaded signal-hook-registry v1.4.1
  Downloaded quote v1.0.28
  Downloaded http v0.2.9
  Downloaded base64 v0.21.2
  Downloaded itoa v1.0.6
  Downloaded time-core v0.1.1
  Downloaded scopeguard v1.1.0
  Downloaded futures-sink v0.3.28
  Downloaded lazy_static v1.4.0
  Downloaded anstyle v1.0.0
  Downloaded cfg-if v1.0.0
  Downloaded anstyle-query v1.0.0
  Downloaded futures-channel v0.3.28
  Downloaded futures v0.3.28
  Downloaded alloc-stdlib v0.2.2
  Downloaded 172 crates (19.4 MB) in 1.63s (largest was `ring` at 5.1 MB)
   Compiling libc v0.2.144
   Compiling proc-macro2 v1.0.59
   Compiling quote v1.0.28
   Compiling unicode-ident v1.0.9
   Compiling autocfg v1.1.0
   Compiling cfg-if v1.0.0
   Compiling once_cell v1.17.2
   Compiling cc v1.0.79
   Compiling pin-project-lite v0.2.9
   Compiling scopeguard v1.1.0
   Compiling futures-core v0.3.28
   Compiling parking_lot_core v0.9.7
   Compiling smallvec v1.10.0
   Compiling version_check v0.9.4
   Compiling memchr v2.5.0
   Compiling bytes v1.4.0
   Compiling itoa v1.0.6
   Compiling log v0.4.18
   Compiling futures-task v0.3.28
   Compiling futures-channel v0.3.28
   Compiling futures-sink v0.3.28
   Compiling tinyvec_macros v0.1.1
   Compiling futures-util v0.3.28
   Compiling spin v0.5.2
   Compiling futures-io v0.3.28
   Compiling untrusted v0.7.1
   Compiling pin-utils v0.1.0
   Compiling unicode-bidi v0.3.13
   Compiling percent-encoding v2.2.0
   Compiling crossbeam-utils v0.8.15
   Compiling io-lifetimes v1.0.11
   Compiling serde v1.0.163
   Compiling bitflags v1.3.2
   Compiling pkg-config v0.3.27
   Compiling lazy_static v1.4.0
   Compiling heck v0.4.1
   Compiling rustix v0.37.19
   Compiling fnv v1.0.7
   Compiling rustls v0.21.1
   Compiling hashbrown v0.12.3
   Compiling ppv-lite86 v0.2.17
   Compiling httparse v1.8.0
   Compiling crc32fast v1.3.2
   Compiling linux-raw-sys v0.3.8
   Compiling thiserror v1.0.40
   Compiling matches v0.1.10
   Compiling async-trait v0.1.68
   Compiling alloc-no-stdlib v2.0.4
   Compiling time-core v0.1.1
   Compiling serde_json v1.0.96
   Compiling match_cfg v0.1.0
   Compiling utf8parse v0.2.1
   Compiling ryu v1.0.13
   Compiling adler v1.0.2
   Compiling try-lock v0.2.4
   Compiling anstyle v1.0.0
   Compiling linked-hash-map v0.5.6
   Compiling colorchoice v1.0.0
   Compiling httpdate v1.0.2
   Compiling anstyle-query v1.0.0
   Compiling psl-types v2.0.11
   Compiling openssl v0.10.52
   Compiling ipnet v2.7.2
   Compiling quick-error v1.2.3
   Compiling tower-service v0.3.2
   Compiling foreign-types-shared v0.1.1
   Compiling data-encoding v2.4.0
   Compiling regex-syntax v0.6.29
   Compiling rayon-core v1.11.0
   Compiling regex-syntax v0.7.2
   Compiling semver v1.0.17
   Compiling clap_lex v0.5.0
   Compiling base64 v0.21.2
   Compiling anyhow v1.0.71
   Compiling overload v0.1.1
   Compiling mime v0.3.17
   Compiling same-file v1.0.6
   Compiling hex v0.3.2
   Compiling arrayvec v0.7.2
   Compiling tinyvec v1.6.0
   Compiling encoding_rs v0.8.32
   Compiling sharded-slab v0.1.4
   Compiling either v1.8.1
   Compiling tracing-core v0.1.31
   Compiling form_urlencoded v1.1.0
   Compiling time-macros v0.2.9
   Compiling miniz_oxide v0.7.1
   Compiling anstyle-parse v0.2.0
   Compiling thread_local v1.1.7
   Compiling alloc-stdlib v0.2.2
   Compiling foreign-types v0.3.2
   Compiling nu-ansi-term v0.46.0
   Compiling walkdir v2.3.3
   Compiling unicase v2.6.0
   Compiling cookie v0.16.2
   Compiling lock_api v0.4.9
   Compiling tokio v1.28.2
   Compiling slab v0.4.8
   Compiling memoffset v0.8.0
   Compiling indexmap v1.9.3
   Compiling crossbeam-epoch v0.9.14
   Compiling brotli-decompressor v2.3.4
   Compiling lru-cache v0.1.2
   Compiling num-format v0.4.4
   Compiling rustls-pemfile v1.0.2
   Compiling http v0.2.9
   Compiling flate2 v1.0.26
   Compiling ring v0.16.20
   Compiling openssl-sys v0.9.87
   Compiling want v0.3.0
   Compiling tracing-log v0.1.3
   Compiling crossbeam-channel v0.5.8
   Compiling regex v1.8.3
   Compiling mime_guess v2.0.4
   Compiling unicode-normalization v0.1.22
   Compiling syn v2.0.18
   Compiling crossbeam-deque v0.8.3
   Compiling http-body v0.4.5
   Compiling time v0.3.21
   Compiling brotli v3.3.4
   Compiling idna v0.3.0
   Compiling idna v0.2.3
   Compiling regex-automata v0.1.10
   Compiling url v2.3.1
   Compiling publicsuffix v2.2.3
   Compiling num_cpus v1.15.0
   Compiling signal-hook-registry v1.4.1
   Compiling socket2 v0.4.9
   Compiling mio v0.8.7
   Compiling getrandom v0.2.9
   Compiling hostname v0.3.1
   Compiling memmap2 v0.6.2
   Compiling resolv-conf v0.7.0
   Compiling rand_core v0.6.4
   Compiling parking_lot v0.12.1
   Compiling rand_chacha v0.3.1
   Compiling rand v0.8.5
   Compiling rayon v1.7.0
   Compiling matchers v0.1.0
   Compiling is-terminal v0.4.7
   Compiling anstream v0.3.2
   Compiling clap_builder v4.3.0
   Compiling tokio-macros v2.1.0
   Compiling futures-macro v0.3.28
   Compiling tracing-attributes v0.1.24
   Compiling serde_derive v1.0.163
   Compiling thiserror-impl v1.0.40
   Compiling enum-as-inner v0.5.2
   Compiling openssl-macros v0.1.1
   Compiling clap_derive v4.3.0
   Compiling tracing v0.1.37
   Compiling rustls-webpki v0.100.1
   Compiling sct v0.7.0
   Compiling webpki v0.22.0
   Compiling tracing-subscriber v0.3.17
   Compiling clap v4.3.0
   Compiling webpki-roots v0.22.6
   Compiling crypto-hash v0.3.4
   Compiling futures-executor v0.3.28
   Compiling futures v0.3.28
   Compiling tokio-util v0.7.8
   Compiling trust-dns-proto v0.22.0
   Compiling tokio-rustls v0.24.0
   Compiling async-compression v0.4.0
error[E0592]: duplicate definitions with name `is_soa`
   --> /home/chengwei/.cargo/registry/src/github.com-1ecc6299db9ec823/trust-dns-proto-0.22.0/src/rr/record_data.rs:55:17
    |
55  | #[derive(Debug, EnumAsInner, PartialEq, Clone, Eq)]
    |                 ^^^^^^^^^^^ duplicate definitions for `is_soa`
...
994 |     pub fn is_soa(&self) -> bool {
    |     ---------------------------- other definition for `is_soa`
    |
    = note: this error originates in the derive macro `EnumAsInner` (in Nightly builds, run with -Z macro-backtrace for more info)

For more information about this error, try `rustc --explain E0592`.
error: could not compile `trust-dns-proto` due to previous error
warning: build failed, waiting for other jobs to finish...
error: failed to compile `get-all-crates v0.1.3`, intermediate artifacts can be found at `/tmp/cargo-installOqHxM7`

It seems some of the definitions are duplicated in dependencies, maybe provide a lock file for the transitive dependencies?

The old way

Reminder to myself: this is what I used prior to this crate being written.

#!/bin/bash

grep -hr . /path/to/crates.io-index/*/ \
    | jq '"https://static.crates.io/crates/" + .name + "/" + .name + "-" + .vers + ".crate"' -r \
    | xargs -P10 -n100 wget --no-clobber --inet4-only

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.