I ran cargo-lichking across this code-base and found out that the current license MIT in this form is incompatible with the license Apache-2.0 of approx (used by nalgebra, palette, rusttype and winit), gl and winit.
It may be a good idea to change the license of reclutch-event and reclutch to MIT OR Apache-2.0.
reclutch-derive is directly not affected by this, but it may be a good idea to apply the license change there too, especially for consistency.
(I didn't include crates which we don't directly depend on and are optional, as they aren't such a big issue, but it may be a good idea to place a note about it inside the main README.md file.)
I ran
cargo-lichking
across this code-base and found out that the current licenseMIT
in this form is incompatible with the licenseApache-2.0
ofapprox
(used bynalgebra
,palette
,rusttype
andwinit
),gl
andwinit
.It may be a good idea to change the license of
reclutch-event
andreclutch
toMIT OR Apache-2.0
.reclutch-derive
is directly not affected by this, but it may be a good idea to apply the license change there too, especially for consistency.(I didn't include crates which we don't directly depend on and are optional, as they aren't such a big issue, but it may be a good idea to place a note about it inside the main
README.md
file.)lichking
``` warning: IANAL: This is not legal advice and is not guaranteed to be correct. error: reclutch cannot include package fuchsia-zircon, license BSD-3-Clause is incompatible with MIT error: reclutch cannot include package dwrote, license MPL-2.0 is incompatible with MIT error: reclutch cannot include package approx, license Apache-2.0 is incompatible with MIT error: reclutch cannot include package cloudabi, license BSD-2-Clause is incompatible with MIT error: reclutch cannot include package instant, license BSD-3-Clause is incompatible with MIT error: reclutch cannot include package fuchsia-zircon-sys, license BSD-3-Clause is incompatible with MIT error: reclutch cannot include package gl, license Apache-2.0 is incompatible with MIT error: reclutch cannot include package arrayref, license BSD-2-Clause is incompatible with MIT error: reclutch cannot include package winit, license Apache-2.0 is incompatible with MIT error: reclutch cannot include package xi-unicode, license Apache-2.0 is incompatible with MIT error: Incompatible license ```tree
``` reclutch v0.0.0 (/home/zscheile/zseri/devel/reclutch/reclutch) ├── euclid v0.20.6 │ └── num-traits v0.2.10 │ [build-dependencies] │ └── autocfg v0.1.7 ├── font-kit v0.5.0 │ ├── byteorder v1.3.2 │ ├── dirs v2.0.2 │ │ ├── cfg-if v0.1.10 │ │ └── dirs-sys v0.3.4 │ │ ├── cfg-if v0.1.10 (*) │ │ └── libc v0.2.66 │ ├── euclid v0.20.6 (*) │ ├── float-ord v0.2.0 │ ├── freetype v0.4.1 │ │ ├── libc v0.2.66 (*) │ │ └── servo-freetype-sys v4.0.5 │ │ [build-dependencies] │ │ ├── cmake v0.1.42 │ │ │ └── cc v1.0.48 │ │ └── pkg-config v0.3.17 │ ├── freetype v0.4.1 (*) │ ├── lazy_static v1.4.0 │ ├── libc v0.2.66 (*) │ ├── log v0.4.8 │ │ └── cfg-if v0.1.10 (*) │ ├── lyon_path v0.14.0 │ │ └── lyon_geom v0.14.1 │ │ ├── arrayvec v0.4.12 │ │ │ └── nodrop v0.1.14 │ │ ├── euclid v0.20.6 (*) │ │ └── num-traits v0.2.10 (*) │ ├── servo-fontconfig v0.4.0 │ │ ├── libc v0.2.66 (*) │ │ └── servo-fontconfig-sys v4.0.9 │ │ ├── expat-sys v2.1.6 │ │ │ [build-dependencies] │ │ │ ├── cmake v0.1.42 (*) │ │ │ └── pkg-config v0.3.17 (*) │ │ └── servo-freetype-sys v4.0.5 (*) │ │ [build-dependencies] │ │ └── pkg-config v0.3.17 (*) │ ├── servo-fontconfig v0.4.0 (*) │ └── walkdir v2.2.9 │ └── same-file v1.0.5 ├── palette v0.5.0 │ ├── approx v0.3.2 │ │ └── num-traits v0.2.10 (*) │ ├── num-traits v0.2.10 (*) │ ├── palette_derive v0.5.0 │ │ ├── proc-macro2 v1.0.6 │ │ │ └── unicode-xid v0.2.0 │ │ ├── quote v1.0.2 │ │ │ └── proc-macro2 v1.0.6 (*) │ │ └── syn v1.0.11 │ │ ├── proc-macro2 v1.0.6 (*) │ │ ├── quote v1.0.2 (*) │ │ └── unicode-xid v0.2.0 (*) │ └── phf v0.8.0 │ └── phf_shared v0.8.0 │ └── siphasher v0.3.1 │ [build-dependencies] │ └── phf_codegen v0.8.0 │ ├── phf_generator v0.8.0 │ │ ├── phf_shared v0.8.0 (*) │ │ └── rand v0.7.2 │ │ ├── getrandom v0.1.13 │ │ │ ├── cfg-if v0.1.10 (*) │ │ │ └── libc v0.2.66 (*) │ │ ├── libc v0.2.66 (*) │ │ ├── rand_chacha v0.2.1 │ │ │ ├── c2-chacha v0.2.3 │ │ │ │ └── ppv-lite86 v0.2.6 │ │ │ └── rand_core v0.5.1 │ │ │ └── getrandom v0.1.13 (*) │ │ ├── rand_core v0.5.1 (*) │ │ └── rand_pcg v0.2.1 │ │ └── rand_core v0.5.1 (*) │ │ [dev-dependencies] │ │ ├── rand_hc v0.2.0 │ │ │ └── rand_core v0.5.1 (*) │ │ └── rand_pcg v0.2.1 (*) │ └── phf_shared v0.8.0 (*) ├── reclutch_derive v0.0.0 (/home/zscheile/zseri/devel/reclutch/derive) │ ├── proc-macro2 v1.0.6 (*) │ ├── quote v1.0.2 (*) │ └── syn v1.0.11 (*) ├── reclutch_event v0.0.0 (/home/zscheile/zseri/devel/reclutch/event) │ ├── retain_mut v0.1.0 │ └── slotmap v0.4.0 ├── thiserror v1.0.9 │ └── thiserror-impl v1.0.9 │ ├── proc-macro2 v1.0.6 (*) │ ├── quote v1.0.2 (*) │ └── syn v1.0.11 (*) └── xi-unicode v0.2.0 [dev-dependencies] ├── float-cmp v0.6.0 │ └── num-traits v0.2.10 (*) ├── glium v0.26.0-alpha5 │ ├── backtrace v0.3.40 │ │ ├── backtrace-sys v0.1.32 │ │ │ └── libc v0.2.66 (*) │ │ │ [build-dependencies] │ │ │ └── cc v1.0.48 (*) │ │ ├── cfg-if v0.1.10 (*) │ │ ├── libc v0.2.66 (*) │ │ └── rustc-demangle v0.1.16 │ ├── fnv v1.0.6 │ ├── glutin v0.22.0-alpha5 │ │ ├── glutin_egl_sys v0.1.4 │ │ │ [build-dependencies] │ │ │ └── gl_generator v0.13.1 │ │ │ ├── khronos_api v3.1.0 │ │ │ ├── log v0.4.8 (*) │ │ │ └── xml-rs v0.8.0 │ │ ├── glutin_glx_sys v0.1.5 │ │ │ └── x11-dl v2.18.4 │ │ │ ├── lazy_static v1.4.0 (*) │ │ │ ├── libc v0.2.66 (*) │ │ │ └── maybe-uninit v2.0.0 │ │ │ [build-dependencies] │ │ │ └── pkg-config v0.3.17 (*) │ │ │ [build-dependencies] │ │ │ └── gl_generator v0.11.0 │ │ │ ├── khronos_api v3.1.0 (*) │ │ │ ├── log v0.4.8 (*) │ │ │ └── xml-rs v0.8.0 (*) │ │ ├── lazy_static v1.4.0 (*) │ │ ├── libloading v0.5.2 │ │ │ [build-dependencies] │ │ │ └── cc v1.0.48 (*) │ │ ├── log v0.4.8 (*) │ │ ├── osmesa-sys v0.1.2 │ │ │ └── shared_library v0.1.9 │ │ │ ├── lazy_static v1.4.0 (*) │ │ │ └── libc v0.2.66 (*) │ │ ├── parking_lot v0.9.0 │ │ │ ├── lock_api v0.3.2 │ │ │ │ └── scopeguard v1.0.0 │ │ │ └── parking_lot_core v0.6.2 │ │ │ ├── cfg-if v0.1.10 (*) │ │ │ ├── libc v0.2.66 (*) │ │ │ └── smallvec v0.6.13 │ │ │ └── maybe-uninit v2.0.0 (*) │ │ │ [build-dependencies] │ │ │ └── rustc_version v0.2.3 │ │ │ └── semver v0.9.0 │ │ │ └── semver-parser v0.7.0 │ │ │ [build-dependencies] │ │ │ └── rustc_version v0.2.3 (*) │ │ ├── wayland-client v0.23.6 │ │ │ ├── bitflags v1.2.1 │ │ │ ├── calloop v0.4.4 │ │ │ │ ├── mio v0.6.21 │ │ │ │ │ ├── cfg-if v0.1.10 (*) │ │ │ │ │ ├── iovec v0.1.4 │ │ │ │ │ │ └── libc v0.2.66 (*) │ │ │ │ │ ├── libc v0.2.66 (*) │ │ │ │ │ ├── log v0.4.8 (*) │ │ │ │ │ ├── net2 v0.2.33 │ │ │ │ │ │ ├── cfg-if v0.1.10 (*) │ │ │ │ │ │ └── libc v0.2.66 (*) │ │ │ │ │ └── slab v0.4.2 │ │ │ │ ├── mio-extras v2.0.6 │ │ │ │ │ ├── lazycell v1.2.1 │ │ │ │ │ ├── log v0.4.8 (*) │ │ │ │ │ ├── mio v0.6.21 (*) │ │ │ │ │ └── slab v0.4.2 (*) │ │ │ │ └── nix v0.14.1 │ │ │ │ ├── bitflags v1.2.1 (*) │ │ │ │ ├── cfg-if v0.1.10 (*) │ │ │ │ ├── libc v0.2.66 (*) │ │ │ │ └── void v1.0.2 │ │ │ ├── downcast-rs v1.1.1 │ │ │ ├── libc v0.2.66 (*) │ │ │ ├── mio v0.6.21 (*) │ │ │ ├── nix v0.14.1 (*) │ │ │ ├── wayland-commons v0.23.6 │ │ │ │ ├── nix v0.14.1 (*) │ │ │ │ └── wayland-sys v0.23.6 │ │ │ │ ├── dlib v0.4.1 │ │ │ │ │ └── libloading v0.5.2 (*) │ │ │ │ └── lazy_static v1.4.0 (*) │ │ │ └── wayland-sys v0.23.6 (*) │ │ │ [build-dependencies] │ │ │ └── wayland-scanner v0.23.6 │ │ │ ├── proc-macro2 v0.4.30 │ │ │ │ └── unicode-xid v0.1.0 │ │ │ ├── quote v0.6.13 │ │ │ │ └── proc-macro2 v0.4.30 (*) │ │ │ └── xml-rs v0.8.0 (*) │ │ └── winit v0.20.0-alpha5 │ │ ├── calloop v0.4.4 (*) │ │ ├── instant v0.1.2 │ │ ├── lazy_static v1.4.0 (*) │ │ ├── libc v0.2.66 (*) │ │ ├── log v0.4.8 (*) │ │ ├── parking_lot v0.10.0 │ │ │ ├── lock_api v0.3.2 (*) │ │ │ └── parking_lot_core v0.7.0 │ │ │ ├── cfg-if v0.1.10 (*) │ │ │ ├── libc v0.2.66 (*) │ │ │ └── smallvec v1.0.0 │ │ ├── percent-encoding v2.1.0 │ │ ├── raw-window-handle v0.3.3 │ │ │ └── libc v0.2.66 (*) │ │ ├── smithay-client-toolkit v0.6.4 │ │ │ ├── andrew v0.2.1 │ │ │ │ ├── bitflags v1.2.1 (*) │ │ │ │ ├── line_drawing v0.7.0 │ │ │ │ │ └── num-traits v0.2.10 (*) │ │ │ │ ├── rusttype v0.7.9 │ │ │ │ │ └── rusttype v0.8.2 │ │ │ │ │ ├── approx v0.3.2 (*) │ │ │ │ │ ├── arrayvec v0.5.1 │ │ │ │ │ ├── ordered-float v1.0.2 │ │ │ │ │ │ └── num-traits v0.2.10 (*) │ │ │ │ │ └── stb_truetype v0.3.1 │ │ │ │ │ └── byteorder v1.3.2 (*) │ │ │ │ ├── walkdir v2.2.9 (*) │ │ │ │ ├── xdg v2.2.0 │ │ │ │ └── xml-rs v0.8.0 (*) │ │ │ ├── bitflags v1.2.1 (*) │ │ │ ├── dlib v0.4.1 (*) │ │ │ ├── lazy_static v1.4.0 (*) │ │ │ ├── memmap v0.7.0 │ │ │ │ └── libc v0.2.66 (*) │ │ │ ├── nix v0.14.1 (*) │ │ │ ├── wayland-client v0.23.6 (*) │ │ │ └── wayland-protocols v0.23.6 │ │ │ ├── bitflags v1.2.1 (*) │ │ │ ├── wayland-client v0.23.6 (*) │ │ │ └── wayland-commons v0.23.6 (*) │ │ │ [build-dependencies] │ │ │ └── wayland-scanner v0.23.6 (*) │ │ │ [dev-dependencies] │ │ │ └── wayland-client v0.23.6 (*) │ │ ├── wayland-client v0.23.6 (*) │ │ └── x11-dl v2.18.4 (*) │ ├── lazy_static v1.4.0 (*) │ ├── memoffset v0.5.3 │ │ [build-dependencies] │ │ └── rustc_version v0.2.3 (*) │ ├── smallvec v0.6.13 (*) │ └── takeable-option v0.5.0 │ [build-dependencies] │ └── gl_generator v0.14.0 │ ├── khronos_api v3.1.0 (*) │ ├── log v0.4.8 (*) │ └── xml-rs v0.8.0 (*) ├── harfbuzz_rs v1.0.0 │ ├── bitflags v1.2.1 (*) │ └── harfbuzz-sys v0.3.3 │ └── freetype v0.4.1 (*) │ [build-dependencies] │ ├── cmake v0.1.42 (*) │ └── pkg-config v0.3.17 (*) ├── nalgebra v0.19.0 │ ├── alga v0.9.2 │ │ ├── approx v0.3.2 (*) │ │ ├── libm v0.1.4 │ │ ├── num-complex v0.2.3 │ │ │ └── num-traits v0.2.10 (*) │ │ │ [build-dependencies] │ │ │ └── autocfg v0.1.7 (*) │ │ └── num-traits v0.2.10 (*) │ ├── approx v0.3.2 (*) │ ├── generic-array v0.13.2 │ │ └── typenum v1.11.2 │ ├── matrixmultiply v0.2.3 │ │ └── rawpointer v0.2.1 │ ├── num-complex v0.2.3 (*) │ ├── num-rational v0.2.2 │ │ ├── num-integer v0.1.41 │ │ │ └── num-traits v0.2.10 (*) │ │ │ [build-dependencies] │ │ │ └── autocfg v0.1.7 (*) │ │ └── num-traits v0.2.10 (*) │ │ [build-dependencies] │ │ └── autocfg v0.1.7 (*) │ ├── num-traits v0.2.10 (*) │ ├── rand v0.7.2 (*) │ ├── rand_distr v0.2.2 │ │ └── rand v0.7.2 (*) │ └── typenum v1.11.2 (*) └── rusttype v0.8.2 (*) ```