D003 - MIT OR Apache-2.0; permissive-only dependency policy
decided ยท 2026-08-19
Emulator projects often choose GPL specifically to prevent closed
forks. Considered and declined - preventing closed forks is not a goal
here. deny.toml's allow-list is therefore permissive-only
deliberately, and a GPL dependency would relicense the binary.
This is settled, not a default awaiting review.
Amended 2026-08-19: MPL-2.0 is allowed.
cargo-deny rejected option-ext (reached via
directories -> dirs-sys) on the original
permissive-only list. The concern this decision records is binary
relicensing, and MPL-2.0 is file-level copyleft -
it obliges publishing modifications to MPL-covered files and does not
reach our code. We consume the crate unmodified. GPL and AGPL remain
excluded; the distinction between file-level and binary-level copyleft
is the point.
Considered and rejected: dropping directories and
resolving OS data directories by hand. Roughly thirty lines, but it
trades a well-maintained crate that handles platform quirks correctly
for hand-rolled XDG and macOS path logic - a worse end state under D028,
and for a licence concern that does not actually apply.