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

Fix duplicated deps #251

Open
ozkriff opened this issue May 29, 2018 · 1 comment
Open

Fix duplicated deps #251

ozkriff opened this issue May 29, 2018 · 1 comment

Comments

@ozkriff
Copy link
Owner

ozkriff commented May 29, 2018

After merging #237 Cargo.lock contains a lot of duplicated deps (some even has THREE different versions - syn) that increase compilation time andbloat executable's size:

Old `cargo tree -d` listing:
$ cargo tree -d
bitflags v0.7.0
└── sdl2 v0.31.0
    ├── gfx_window_sdl v0.8.0
    │   └── ggez v0.4.2
    │       ├── ggwp-zgui v0.1.0 (file:///home/ozkriff/zemeroth/main/ggwp-zgui)
    │       │   └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main)
    │       ├── ggwp-zscene v0.1.0 (file:///home/ozkriff/zemeroth/main/ggwp-zscene)
    │       │   └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main) (*)
    │       └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main) (*)
    └── ggez v0.4.2 (*)

bitflags v1.0.3
├── draw_state v0.8.0
│   ├── gfx v0.17.1
│   │   ├── gfx_window_sdl v0.8.0
│   │   │   └── ggez v0.4.2
│   │   │       ├── ggwp-zgui v0.1.0 (file:///home/ozkriff/zemeroth/main/ggwp-zgui)
│   │   │       │   └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main)
│   │   │       ├── ggwp-zscene v0.1.0 (file:///home/ozkriff/zemeroth/main/ggwp-zscene)
│   │   │       │   └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main) (*)
│   │   │       └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main) (*)
│   │   └── ggez v0.4.2 (*)
│   └── gfx_core v0.8.2
│       ├── gfx v0.17.1 (*)
│       ├── gfx_device_gl v0.15.2
│       │   ├── gfx_window_sdl v0.8.0 (*)
│       │   └── ggez v0.4.2 (*)
│       └── gfx_window_sdl v0.8.0 (*)
├── gfx_core v0.8.2 (*)
├── png v0.11.0
│   └── image v0.18.0
│       └── ggez v0.4.2 (*)
├── ron v0.2.2
│   └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main) (*)
└── xml-rs v0.7.0
    └── gl_generator v0.9.0

lazy_static v0.2.11
├── cpal v0.6.0
│   └── rodio v0.6.0
│       └── ggez v0.4.2
│           ├── ggwp-zgui v0.1.0 (file:///home/ozkriff/zemeroth/main/ggwp-zgui)
│           │   └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main)
│           ├── ggwp-zscene v0.1.0 (file:///home/ozkriff/zemeroth/main/ggwp-zscene)
│           │   └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main) (*)
│           └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main) (*)
└── sdl2 v0.31.0
    ├── gfx_window_sdl v0.8.0
    │   └── ggez v0.4.2 (*)
    └── ggez v0.4.2 (*)

lazy_static v1.0.0
├── crossbeam-epoch v0.3.1
│   └── crossbeam-deque v0.2.0
│       └── rayon-core v1.4.0
│           └── rayon v1.0.1
│               └── jpeg-decoder v0.1.14
│                   └── image v0.18.0
│                       └── ggez v0.4.2
│                           ├── ggwp-zgui v0.1.0 (file:///home/ozkriff/zemeroth/main/ggwp-zgui)
│                           │   └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main)
│                           ├── ggwp-zscene v0.1.0 (file:///home/ozkriff/zemeroth/main/ggwp-zscene)
│                           │   └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main) (*)
│                           └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main) (*)
├── rayon-core v1.4.0 (*)
├── rodio v0.6.0
│   └── ggez v0.4.2 (*)
└── thread_local v0.3.5
    └── regex v1.0.0
        └── env_logger v0.5.10
            └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main) (*)

num-traits v0.1.43
├── alga v0.5.4
│   └── nalgebra v0.14.4
│       └── ggez v0.4.2
│           ├── ggwp-zgui v0.1.0 (file:///home/ozkriff/zemeroth/main/ggwp-zgui)
│           │   └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main)
│           ├── ggwp-zscene v0.1.0 (file:///home/ozkriff/zemeroth/main/ggwp-zscene)
│           │   └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main) (*)
│           └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main) (*)
├── cgmath v0.14.1
│   └── rodio v0.6.0
│       └── ggez v0.4.2 (*)
├── enum_primitive v0.1.1
│   └── image v0.18.0
│       └── ggez v0.4.2 (*)
├── euclid v0.17.3
│   └── lyon_geom v0.10.1
│       └── lyon_path v0.10.1
│           └── lyon_tessellation v0.10.1
│               └── lyon v0.10.1
│                   └── ggez v0.4.2 (*)
├── image v0.18.0 (*)
├── lyon_geom v0.10.1 (*)
├── nalgebra v0.14.4 (*)
├── ordered-float v0.5.0
│   └── rusttype v0.5.2
│       └── ggez v0.4.2 (*)
└── sid v0.5.0
    └── lyon_tessellation v0.10.1 (*)

num-traits v0.2.4
├── num v0.1.42
│   └── sdl2 v0.31.0
│       ├── gfx_window_sdl v0.8.0
│       │   └── ggez v0.4.2
│       │       ├── ggwp-zgui v0.1.0 (file:///home/ozkriff/zemeroth/main/ggwp-zgui)
│       │       │   └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main)
│       │       ├── ggwp-zscene v0.1.0 (file:///home/ozkriff/zemeroth/main/ggwp-zscene)
│       │       │   └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main) (*)
│       │       └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main) (*)
│       └── ggez v0.4.2 (*)
├── num-complex v0.1.43
│   ├── alga v0.5.4
│   │   └── nalgebra v0.14.4
│   │       └── ggez v0.4.2 (*)
│   └── nalgebra v0.14.4 (*)
├── num-integer v0.1.38
│   ├── num v0.1.42 (*)
│   ├── num-iter v0.1.37
│   │   ├── image v0.18.0
│   │   │   └── ggez v0.4.2 (*)
│   │   ├── num v0.1.42 (*)
│   │   └── png v0.11.0
│   │       └── image v0.18.0 (*)
│   └── num-rational v0.1.42
│       └── image v0.18.0 (*)
├── num-iter v0.1.37 (*)
├── num-rational v0.1.42 (*)
└── num-traits v0.1.43
    ├── alga v0.5.4 (*)
    ├── cgmath v0.14.1
    │   └── rodio v0.6.0
    │       └── ggez v0.4.2 (*)
    ├── enum_primitive v0.1.1
    │   └── image v0.18.0 (*)
    ├── euclid v0.17.3
    │   └── lyon_geom v0.10.1
    │       └── lyon_path v0.10.1
    │           └── lyon_tessellation v0.10.1
    │               └── lyon v0.10.1
    │                   └── ggez v0.4.2 (*)
    ├── image v0.18.0 (*)
    ├── lyon_geom v0.10.1 (*)
    ├── nalgebra v0.14.4 (*)
    ├── ordered-float v0.5.0
    │   └── rusttype v0.5.2
    │       └── ggez v0.4.2 (*)
    └── sid v0.5.0
        └── lyon_tessellation v0.10.1 (*)

quote v0.3.15
├── derivative v1.0.0
│   ├── gfx v0.17.1
│   │   ├── gfx_window_sdl v0.8.0
│   │   │   └── ggez v0.4.2
│   │   │       ├── ggwp-zgui v0.1.0 (file:///home/ozkriff/zemeroth/main/ggwp-zgui)
│   │   │       │   └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main)
│   │   │       ├── ggwp-zscene v0.1.0 (file:///home/ozkriff/zemeroth/main/ggwp-zscene)
│   │   │       │   └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main) (*)
│   │   │       └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main) (*)
│   │   └── ggez v0.4.2 (*)
│   └── gfx_core v0.8.2
│       ├── gfx v0.17.1 (*)
│       ├── gfx_device_gl v0.15.2
│       │   ├── gfx_window_sdl v0.8.0 (*)
│       │   └── ggez v0.4.2 (*)
│       └── gfx_window_sdl v0.8.0 (*)
├── smart-default v0.2.0
│   └── ggez v0.4.2 (*)
├── syn v0.10.8
│   └── derivative v1.0.0 (*)
└── syn v0.11.11
    └── smart-default v0.2.0 (*)

quote v0.6.2
├── serde_derive v1.0.62
│   ├── ggez v0.4.2
│   │   ├── ggwp-zgui v0.1.0 (file:///home/ozkriff/zemeroth/main/ggwp-zgui)
│   │   │   └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main)
│   │   ├── ggwp-zscene v0.1.0 (file:///home/ozkriff/zemeroth/main/ggwp-zscene)
│   │   │   └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main) (*)
│   │   └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main) (*)
│   ├── serde v1.0.62
│   │   ├── ggez v0.4.2 (*)
│   │   ├── ron v0.2.2
│   │   │   └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main) (*)
│   │   ├── toml v0.4.6
│   │   │   └── ggez v0.4.2 (*)
│   │   └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main) (*)
│   └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main) (*)
└── syn v0.14.0
    └── serde_derive v1.0.62 (*)

rand v0.3.22
├── cgmath v0.14.1
│   └── rodio v0.6.0
│       └── ggez v0.4.2
│           ├── ggwp-zgui v0.1.0 (file:///home/ozkriff/zemeroth/main/ggwp-zgui)
│           │   └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main)
│           ├── ggwp-zscene v0.1.0 (file:///home/ozkriff/zemeroth/main/ggwp-zscene)
│           │   └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main) (*)
│           └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main) (*)
└── sdl2 v0.31.0
    ├── gfx_window_sdl v0.8.0
    │   └── ggez v0.4.2 (*)
    └── ggez v0.4.2 (*)

rand v0.4.2
├── nalgebra v0.14.4
│   └── ggez v0.4.2
│       ├── ggwp-zgui v0.1.0 (file:///home/ozkriff/zemeroth/main/ggwp-zgui)
│       │   └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main)
│       ├── ggwp-zscene v0.1.0 (file:///home/ozkriff/zemeroth/main/ggwp-zscene)
│       │   └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main) (*)
│       └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main) (*)
├── rand v0.3.22
│   ├── cgmath v0.14.1
│   │   └── rodio v0.6.0
│   │       └── ggez v0.4.2 (*)
│   └── sdl2 v0.31.0
│       ├── gfx_window_sdl v0.8.0
│       │   └── ggez v0.4.2 (*)
│       └── ggez v0.4.2 (*)
└── rayon-core v1.4.0
    └── rayon v1.0.1
        └── jpeg-decoder v0.1.14
            └── image v0.18.0
                └── ggez v0.4.2 (*)

rand v0.5.0
└── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main)

syn v0.10.8
└── derivative v1.0.0
    ├── gfx v0.17.1
    │   ├── gfx_window_sdl v0.8.0
    │   │   └── ggez v0.4.2
    │   │       ├── ggwp-zgui v0.1.0 (file:///home/ozkriff/zemeroth/main/ggwp-zgui)
    │   │       │   └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main)
    │   │       ├── ggwp-zscene v0.1.0 (file:///home/ozkriff/zemeroth/main/ggwp-zscene)
    │   │       │   └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main) (*)
    │   │       └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main) (*)
    │   └── ggez v0.4.2 (*)
    └── gfx_core v0.8.2
        ├── gfx v0.17.1 (*)
        ├── gfx_device_gl v0.15.2
        │   ├── gfx_window_sdl v0.8.0 (*)
        │   └── ggez v0.4.2 (*)
        └── gfx_window_sdl v0.8.0 (*)

syn v0.11.11
└── smart-default v0.2.0
    └── ggez v0.4.2
        ├── ggwp-zgui v0.1.0 (file:///home/ozkriff/zemeroth/main/ggwp-zgui)
        │   └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main)
        ├── ggwp-zscene v0.1.0 (file:///home/ozkriff/zemeroth/main/ggwp-zscene)
        │   └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main) (*)
        └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main) (*)

syn v0.14.0
└── serde_derive v1.0.62
    ├── ggez v0.4.2
    │   ├── ggwp-zgui v0.1.0 (file:///home/ozkriff/zemeroth/main/ggwp-zgui)
    │   │   └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main)
    │   ├── ggwp-zscene v0.1.0 (file:///home/ozkriff/zemeroth/main/ggwp-zscene)
    │   │   └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main) (*)
    │   └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main) (*)
    ├── serde v1.0.62
    │   ├── ggez v0.4.2 (*)
    │   ├── ron v0.2.2
    │   │   └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main) (*)
    │   ├── toml v0.4.6
    │   │   └── ggez v0.4.2 (*)
    │   └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main) (*)
    └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main) (*)

unicode-xid v0.0.4
├── syn v0.10.8
│   └── derivative v1.0.0
│       ├── gfx v0.17.1
│       │   ├── gfx_window_sdl v0.8.0
│       │   │   └── ggez v0.4.2
│       │   │       ├── ggwp-zgui v0.1.0 (file:///home/ozkriff/zemeroth/main/ggwp-zgui)
│       │   │       │   └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main)
│       │   │       ├── ggwp-zscene v0.1.0 (file:///home/ozkriff/zemeroth/main/ggwp-zscene)
│       │   │       │   └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main) (*)
│       │   │       └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main) (*)
│       │   └── ggez v0.4.2 (*)
│       └── gfx_core v0.8.2
│           ├── gfx v0.17.1 (*)
│           ├── gfx_device_gl v0.15.2
│           │   ├── gfx_window_sdl v0.8.0 (*)
│           │   └── ggez v0.4.2 (*)
│           └── gfx_window_sdl v0.8.0 (*)
├── syn v0.11.11
│   └── smart-default v0.2.0
│       └── ggez v0.4.2 (*)
└── synom v0.11.3
    └── syn v0.11.11 (*)

unicode-xid v0.1.0
├── proc-macro2 v0.4.3
│   ├── quote v0.6.2
│   │   ├── serde_derive v1.0.62
│   │   │   ├── ggez v0.4.2
│   │   │   │   ├── ggwp-zgui v0.1.0 (file:///home/ozkriff/zemeroth/main/ggwp-zgui)
│   │   │   │   │   └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main)
│   │   │   │   ├── ggwp-zscene v0.1.0 (file:///home/ozkriff/zemeroth/main/ggwp-zscene)
│   │   │   │   │   └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main) (*)
│   │   │   │   └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main) (*)
│   │   │   ├── serde v1.0.62
│   │   │   │   ├── ggez v0.4.2 (*)
│   │   │   │   ├── ron v0.2.2
│   │   │   │   │   └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main) (*)
│   │   │   │   ├── toml v0.4.6
│   │   │   │   │   └── ggez v0.4.2 (*)
│   │   │   │   └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main) (*)
│   │   │   └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main) (*)
│   │   └── syn v0.14.0
│   │       └── serde_derive v1.0.62 (*)
│   ├── serde_derive v1.0.62 (*)
│   └── syn v0.14.0 (*)
└── syn v0.14.0 (*)

unreachable v0.1.1
└── ordered-float v0.5.0
    └── rusttype v0.5.2
        └── ggez v0.4.2
            ├── ggwp-zgui v0.1.0 (file:///home/ozkriff/zemeroth/main/ggwp-zgui)
            │   └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main)
            ├── ggwp-zscene v0.1.0 (file:///home/ozkriff/zemeroth/main/ggwp-zscene)
            │   └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main) (*)
            └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main) (*)

unreachable v1.0.0
└── thread_local v0.3.5
    └── regex v1.0.0
        └── env_logger v0.5.10
            └── zemeroth v0.4.0 (file:///home/ozkriff/zemeroth/main)


@ozkriff
Copy link
Owner Author

ozkriff commented Jun 9, 2023

Most duplicates are gone now, except for syn v1-vs-v2.

$ cargo tree -d
syn v1.0.109
└── derive_more v0.99.17 (proc-macro)
    └── zemeroth v0.7.0-snapshot (/home/ozkriff/ozkriff_games/zemeroth)

syn v2.0.18
└── serde_derive v1.0.164 (proc-macro)
    └── serde v1.0.164
        ├── ron v0.8.0
        │   └── zemeroth v0.7.0-snapshot (/home/ozkriff/ozkriff_games/zemeroth)
        └── zemeroth v0.7.0-snapshot (/home/ozkriff/ozkriff_games/zemeroth)

syn v1 comes from derive_more but seems like it'll be updated soon: JelteF/derive_more#251 + https://github.com/JelteF/derive_more/milestone/3

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

No branches or pull requests

1 participant