Giter VIP home page Giter VIP logo

ivi-main-loop's People

Contributors

jacky405 avatar jeremiah avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

ivi-main-loop's Issues

Apply a better open-source license

The current LICENSE file refers to GNU Library General Public License.

First, this is an outdated version of LGPL since the newer versions are named "Lesser" GPL for example LGPL v2.1 and v3.

In addition the license terms therein refer to the code use as a library specifically. In general, using LGPL for any non-library code is problematic. If the code is not a library then the parts of the license that assume it is may be judged to be not applicable at all, and therefore leaves the license situation for the code uncertain which is clearly the worst outcome for all, publishers and users.

In this code, the C++ Base Class abstraction essentially provides an API definition only.
(The GLib example arguably provides some concrete implementation however, but that is an example and might be adopted or not adopted by your users).

Adopters are expected to write additional (yet unknown) specializations of the (abstract) base class, by including the header file and inheriting from the base class. Separating the code implementation from future main-loop implementations implemented in multiple/future frameworks is a goal of the project as described in the README.

The main loop is a key part of an executable. This is to say that it seems the intention was to use a "weak" copyleft license, but the usage of this code is likely not as a linked library and therefore I would recommend against using LGPL (also the newer versions). Even if the intention was that direct changes to this code must be published as open-source under the same license (copyleft principle) while also making the code (API definition) usable in open-source and proprietary software alike, there are better and clearer options in this case.

If "weak copyleft" was your intention I would recommend affixing the MPLv2 license, which still requires that the Covered Software is always made available under the same open-source terms without limitations, but allows Larger Work to be licensed under other conditions (i.e. a "weak copyleft")**. If you want maximum compatibility with any other licenses (N.B.: potentially proprietary software) allowing usage of also modified versions with attribution only then a permissive license (BSD/MIT style) may be applied. But judging from your original goals it would seem that MPLv2 is the best matching choice.
** IANAL and everyone must interpret the license text on their own

This is entirely up to you but I would avoid the outdated LGPL version and use a different weak-copyleft or permissive license if you want to facilitate adoption of this API.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.