GithubHelp home page GithubHelp logo

Comments (8)

bgilbert avatar bgilbert commented on July 1, 2024

The default license in the group is Apache for OpenStack-related work (including various Elijah things) and GPLv2 (not GPLv2+) otherwise. The EPL was used in Diamond for historical reasons. Depending on how much new code you're writing, and how much it is "OpenDiamond core code" vs. "application code", EPL or GPLv2 might make sense. Ultimately it's a question for Satya.

If you use the GPL, you will need additional wording to allow linking with the EPL library code; see HyperFind for an example. That puts the codebase in the odd position that it is GPL, but cannot use any other GPL code (because it wouldn't have the EPL linking exception).

from diamond-android.

bgilbert avatar bgilbert commented on July 1, 2024

In future, BTW, you should work out the licensing before your code is pushed to an open repository.

from diamond-android.

bamos avatar bamos commented on July 1, 2024

Hi @bgilbert - can you take a look at the tentative EPL license I've added to the README?
Should I send to Satya to verify?

I'll add headers to the files once we've made a decision.
Also, I haven't uploaded binary artifacts, but I'm hoping to link to statically linked
filter binaries hopefully produced by TravisCI.

Some licenses, such as http://www.libjpeg-turbo.org/About/License, include notices
like the following.

If your binary-only distribution or statically-linked application includes/uses the TurboJPEG API, then your product documentation must include the text of the libjpeg-turbo license.

Origin: Clause 2 of the libjpeg-turbo license

Is is sufficient to link to their license from the README, or should I include them all in
a library-licenses directory?

from diamond-android.

bgilbert avatar bgilbert commented on July 1, 2024

In the future, it is important that you handle licensing for new code in exactly this order:

  1. Decide what the license will be, discussing with Satya if necessary.
  2. Add the corresponding license blocks to your code.
  3. Publicly release the code (including pushing to a public GitHub repo).

You cannot "tentatively" add a license to a public repo. The absence of license blocks in each source file does not establish that the software is not licensed, since there is a top-level README and LICENSE file that releases everything under the EPL. Thus, while there is some ambiguity, a recipient could easily argue (and I would tend to agree) that you have actually released the code under the EPL. This has the following consequences:

  • Even if you switch the code to a different license later, the commits arguably under the EPL will continue to be arguably under the EPL.
  • Even if you rewrite the repo history to drop the EPL, anyone who already has a checkout with the arguably-EPL code will retain an arguable EPL license to that code.

As I said above, you should check with Satya about which license to use. He doesn't need to sign off on the exact wording of the README, etc., but he may have an opinion about the license itself.

diamond-core-filters doesn't use the TurboJPEG API, just the regular libjpeg one. But, in general, you should distribute the license text of a component whenever you distribute that component. (It's not sufficient to rely on third-party websites, since they may go away.) If you distribute statically-linked binaries, you must distribute the license texts alongside them, but if you're not putting their source into your source tree, you don't need to include the licenses in your source tree either.

from diamond-android.

bamos avatar bamos commented on July 1, 2024

Decided on EPL over email. @bgilbert - I'll ping you when I've updated the rest of this
repo so you can take a final look.

from diamond-android.

bamos avatar bamos commented on July 1, 2024

Hi @bgilbert - I've added the following snippet to all the source
files in this repo. Can you take a look at the licensing statement at the
bottom of the README before we close this issue?

Diamond Android - Diamond filters for the Android platform

Copyright (c) 2013-2014 Carnegie Mellon University
All Rights Reserved.

This software is distributed under the terms of the Eclipse Public
License, Version 1.0 which can be found in the file named LICENSE.
ANY USE, REPRODUCTION OR DISTRIBUTION OF THIS SOFTWARE CONSTITUTES
RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT

from diamond-android.

bgilbert avatar bgilbert commented on July 1, 2024

The README looks good. Diamond filters for the Android platform isn't quite right, because your code provides a runner for existing filters, and not any new filters.

from diamond-android.

bgilbert avatar bgilbert commented on July 1, 2024

I used Android library for running Diamond filters in the repository description. Better ideas welcome. Could you get the text updated so we can close this bug?

from diamond-android.

Related Issues (20)

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.