Skip ecosystem standardizing on Mozilla Public License (MPL) #647
marcprux
announced in
Announcements
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Skip features a large and growing ecosystem of libraries, from the "core" frameworks that are dependencies of all Skip apps: skip-unit, skip-lib, skip-foundation, skip-model, and skip-ui, to the additional frameworks that are needed by Skip Fuse apps: skip-bridge, skip-fuse, and skip-fuse-ui. In addition, we host and maintain a plethora of optional "integration" frameworks like skip-kit, skip-av, skip-motion, skip-sql, skip-firebase, skip-supabase, skip-keychain, skip-device, skip-stripe, and many others.
Historically, we've licensed these libraries under the GNU Lesser General Public License, which is a widely used license for projects like WebKit (which powers both Safari and Chrome), JavaScriptCore, and apps that use the Qt framework. However, there have been concerns cited with some of the obligations that the LGPL mandates and which are impractical to comply with in mobile applications: namely, it requires the ability for and end user to swap out a shared library with their own build in any deployed application. The division between dynamic-linking and static-linking is not as straightforward on mobile devices as it historically has been on desktops. Even when the library is dynamically linked, the requirements of code signing and code minification make it complex to practically swap out one library for another in an installed application. Static linking exceptions do exist for the LGPL, which we adopted, but ultimately we think that if exceptions are required for a license to be usable, then it probably isn't a good fit for a project, and just adds complexity to the process of approving a license in larger organization where the legal team can be cautious and skeptical of non-standard license exceptions. Finally, the LGPL itself has been soft-deprecated and is not recommended for future projects.
For all these reasons, we've made the decision to standardize on the Mozilla Public License 2.0 for all the libraries hosted under the skiptools organization. The MPL is a much simpler license than the LGPL, and places essentially no restrictions on the distribution of libraries that use this license. The MPL is OSI-approved and is compatible with all major open-source licenses: Apache, MIT, BSD, etc. If you've been using Skip and its frameworks thus far, there should be no practical change for your projects whatsoever. In fact, you may have an easier time using it in large companies or in environments where the LGPL may have presented hurdles or friction.
All the existing repositories under the skiptools organization have been updated to use the MPL. Additionally, we have added a phase to our continuous integration for Skip frameworks that verifies that all code contributed to the parent Skip organization be clearly labelled as being licensed under the MPL. Of course, Skip places no restrictions on the license you use for your own apps and frameworks, but having a single standard license for all the frameworks the organization distributes simplifies the decision-making around choosing Skip for projects going forward.
If you have any questions whatsoever around Skip's licensing, please do not hesitate to contact us at support@skip.dev or on the Skip Slack.
And with that administrative announcement out of the way, Happy Skipping!
Beta Was this translation helpful? Give feedback.
All reactions