Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Have a pass to reduce dupe packages at different versions where possible (eg syn) #1608

Open
88 tasks
jsdw opened this issue May 24, 2024 · 4 comments
Open
88 tasks

Comments

@jsdw
Copy link
Collaborator

jsdw commented May 24, 2024

So we addressed part of #1503 by removing derive_more, but we still have syn 1 and 2 still.

Duplicated dependencies by running $ cargo-guppy dups with all features

  • frame-metadata (16.0.0, 17.0.0)
  • impl-codec (0.6.0, 0.7.0)
  • regex-syntax (0.6.29, 0.8.5)
  • object (0.30.4, 0.32.2)
  • toml_edit (0.21.1, 0.22.12)
  • ark-serialize (0.3.0, 0.4.2)
  • windows_i686_gnu (0.42.2, 0.48.5, 0.52.5)
  • hashbrown (0.12.3, 0.13.2, 0.14.5)
  • fallible-iterator (0.2.0, 0.3.0)
  • windows_aarch64_msvc (0.42.2, 0.48.5, 0.52.5)
  • windows_x86_64_gnu (0.42.2, 0.48.5, 0.52.5)
  • primitive-types (0.12.2, 0.13.1)
  • ark-ff-macros (0.3.0, 0.4.2)
  • bitflags (1.3.2, 2.5.0)
  • linux-raw-sys (0.1.4, 0.4.13)
  • ahash (0.7.8, 0.8.11)
  • toml (0.8.12, 0.5.11)
  • secrecy (0.8.0, 0.10.2)
  • windows_x86_64_msvc (0.42.2, 0.48.5, 0.52.5)
  • derive_more (0.99.17, 1.0.0)
  • syn (1.0.109, 2.0.77)
  • hermit-abi (0.3.9, 0.4.0)
  • zstd-safe (5.0.2+zstd.1.5.2, 6.0.6)
  • sha2 (0.9.9, 0.10.8)
  • polkavm (0.9.3, 0.10.0)
  • zstd (0.11.2+zstd.1.5.2, 0.12.4)
  • ark-ff (0.3.0, 0.4.2)
  • ark-ff-asm (0.3.0, 0.4.2)
  • itertools (0.10.5, 0.11.0, 0.13.0)
  • send_wrapper (0.4.0, 0.6.0)
  • windows_i686_msvc (0.42.2, 0.48.5, 0.52.5)
  • polkavm-derive (0.10.0, 0.9.1)
  • winnow (0.5.40, 0.6.7)
  • polkavm-derive-impl (0.10.0, 0.9.0)
  • hmac (0.12.1, 0.8.1)
  • windows_x86_64_gnullvm (0.42.2, 0.48.5, 0.52.5)
  • polkadot-primitives (15.0.0, 16.0.0)
  • digest (0.10.7, 0.9.0)
  • impl-serde (0.4.0, 0.5.0)
  • windows-targets (0.42.2, 0.48.5, 0.52.5)
  • heck (0.4.1, 0.5.0)
  • indexmap (1.9.3, 2.2.6)
  • event-listener (4.0.3, 5.3.0)
  • secp256k1 (0.28.2, 0.29.1)
  • rustix (0.36.17, 0.38.34)
  • block-buffer (0.9.0, 0.10.4)
  • base64 (0.13.1, 0.21.7, 0.22.1)
  • event-listener-strategy (0.4.0, 0.5.2)
  • windows_aarch64_gnullvm (0.42.2, 0.48.5, 0.52.5)
  • polkavm-common (0.10.0, 0.9.0)
  • addr2line (0.19.0, 0.21.0)
  • arrayvec (0.4.12, 0.7.4)
  • windows-sys (0.45.0, 0.48.0, 0.52.0)
  • polkavm-assembler (0.9.0, 0.10.0)
  • uint (0.9.5, 0.10.0)
  • gimli (0.27.3, 0.28.1)
  • polkavm-linux-raw (0.9.0, 0.10.0)
  • regex-automata (0.4.8, 0.1.10)
  • ark-std (0.3.0, 0.4.0)
  • bitcoin_hashes (0.13.0, 0.11.0)
  • secp256k1-sys (0.9.2, 0.10.1)
  • sp-staking (34.0.0, 36.0.0)
  • polkavm-derive-impl-macro (0.10.0, 0.9.0)
  • lru (0.8.1, 0.12.3)
  • constant_time_eq (0.1.5, 0.3.0)

Duplicated dependencies without substrate

  • syn (1.0.109, 2.0.77)
  • block-buffer (0.9.0, 0.10.4)
  • constant_time_eq (0.1.5, 0.3.0)
  • arrayvec (0.4.12, 0.7.4)
  • bitcoin_hashes (0.14.0, 0.13.0)
  • regex-syntax (0.6.29, 0.8.5)
  • event-listener (4.0.3, 5.3.0)
  • base64 (0.13.1, 0.22.1)
  • hmac (0.12.1, 0.8.1)
  • digest (0.10.7, 0.9.0)
  • derive_more (0.99.17, 1.0.0)
  • regex-automata (0.4.8, 0.1.10)
  • send_wrapper (0.4.0, 0.6.0)
  • bitflags (1.3.2, 2.5.0)
  • event-listener-strategy (0.4.0, 0.5.2)
  • hex-conservative (0.2.1, 0.1.1)
  • sha2 (0.9.9, 0.10.8)

Duplicated dependencies without light-client and substrate

  • bitcoin_hashes (0.14.0, 0.13.0)
  • syn (1.0.109, 2.0.77)
  • bitflags (1.3.2, 2.5.0)
  • hex-conservative (0.2.1, 0.1.1)
  • regex-syntax (0.6.29, 0.8.5)
  • regex-automata (0.4.8, 0.1.10)
@niklasad1
Copy link
Member

niklasad1 commented Oct 18, 2024

I used cargo-deny to compile a list I found:

warning[duplicate]: found 2 duplicate entries for crate 'addr2line'
warning[duplicate]: found 2 duplicate entries for crate 'arrayvec'
warning[duplicate]: found 3 duplicate entries for crate 'base64'
warning[duplicate]: found 2 duplicate entries for crate 'bitcoin_hashes'
warning[duplicate]: found 2 duplicate entries for crate 'bitflags'
warning[duplicate]: found 2 duplicate entries for crate 'block-buffer'
warning[duplicate]: found 2 duplicate entries for crate 'constant_time_eq'
warning[duplicate]: found 2 duplicate entries for crate 'darling'
warning[duplicate]: found 2 duplicate entries for crate 'darling_core'
warning[duplicate]: found 2 duplicate entries for crate 'darling_macro'
warning[duplicate]: found 2 duplicate entries for crate 'digest'
warning[duplicate]: found 2 duplicate entries for crate 'event-listener'
warning[duplicate]: found 2 duplicate entries for crate 'event-listener-strategy'
warning[duplicate]: found 2 duplicate entries for crate 'frame-metadata'
warning[duplicate]: found 2 duplicate entries for crate 'gimli'
warning[duplicate]: found 3 duplicate entries for crate 'hashbrown'
warning[duplicate]: found 2 duplicate entries for crate 'hermit-abi'
warning[duplicate]: found 2 duplicate entries for crate 'hmac'
warning[duplicate]: found 2 duplicate entries for crate 'indexmap'
warning[duplicate]: found 3 duplicate entries for crate 'itertools'
warning[duplicate]: found 2 duplicate entries for crate 'linux-raw-sys'
warning[duplicate]: found 2 duplicate entries for crate 'object'
warning[duplicate]: found 2 duplicate entries for crate 'primitive-types'
warning[duplicate]: found 2 duplicate entries for crate 'proc-macro-crate'
warning[duplicate]: found 2 duplicate entries for crate 'regex-automata'
warning[duplicate]: found 2 duplicate entries for crate 'regex-syntax'
warning[duplicate]: found 2 duplicate entries for crate 'rustix'
warning[duplicate]: found 2 duplicate entries for crate 'secp256k1'
warning[duplicate]: found 2 duplicate entries for crate 'secp256k1-sys'
warning[duplicate]: found 2 duplicate entries for crate 'secrecy'
warning[duplicate]: found 2 duplicate entries for crate 'sha2'
warning[duplicate]: found 2 duplicate entries for crate 'strsim'
warning[duplicate]: found 2 duplicate entries for crate 'syn'
warning[duplicate]: found 2 duplicate entries for crate 'toml'
warning[duplicate]: found 3 duplicate entries for crate 'toml_edit'
warning[duplicate]: found 2 duplicate entries for crate 'uint'
warning[duplicate]: found 3 duplicate entries for crate 'windows-sys'
warning[duplicate]: found 3 duplicate entries for crate 'windows-targets'
warning[duplicate]: found 3 duplicate entries for crate 'windows_aarch64_gnullvm'
warning[duplicate]: found 3 duplicate entries for crate 'windows_aarch64_msvc'
warning[duplicate]: found 3 duplicate entries for crate 'windows_i686_gnu'
warning[duplicate]: found 3 duplicate entries for crate 'windows_i686_msvc'
warning[duplicate]: found 3 duplicate entries for crate 'windows_x86_64_gnu'
warning[duplicate]: found 3 duplicate entries for crate 'windows_x86_64_gnullvm'
warning[duplicate]: found 3 duplicate entries for crate 'windows_x86_64_msvc'
warning[duplicate]: found 2 duplicate entries for crate 'winnow'
warning[duplicate]: found 2 duplicate entries for crate 'zstd'
warning[duplicate]: found 2 duplicate entries for crate 'zstd-safe'

@jsdw
Copy link
Collaborator Author

jsdw commented Oct 21, 2024

Is that with substrate-compat too? I wonder how many we can trim out!

@niklasad1
Copy link
Member

Is that with substrate-compat too? I wonder how many we can trim out!

Yes, it inspects Cargo.lock which includes subxt-compat and light-client.

I think we should able to fix at least:

  • darling
  • frame-metadata
  • proc-macro-crate

@niklasad1
Copy link
Member

I had closer look and we can't get rid of syn v1 because paritytech/scale-info#213

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants