Skip to content

0015. Permissive dependencies first

  • Status: accepted
  • Date: 2026-10-02

Every dependency’s licence travels into every application built on the framework. Copyleft libraries (LGPL, GPL, AGPL) restrict static linking on iOS and Android and can block the commercial licence; proprietary SDKs cannot ship in open-source builds.

New dependencies are chosen permissive first (public domain, MIT, BSD, ISC, zlib, BSL, Apache-2.0). A copyleft or proprietary library is allowed only as an optional adapter, off by default, never required by a core, and never part of open-source binaries when its terms forbid it. JUCE and Tracktion remain today’s backends behind ports; the permissive replacements are listed in replacing-backends.md.

  • Applications can be licensed as their authors choose.
  • Some capabilities (Ableton Link, NDI) stay optional.
  • The path to a framework with no JUCE or Tracktion is made of permissive pieces only.