Coder Social home page Coder Social logo

Comments (5)

chatcannon avatar chatcannon commented on September 11, 2024

I deliberately chose a copyleft licence so that my code could not be used in derivative works without those works also being free software. If GPL-3 is a problem then I might consider relicensing to another copyleft licence e.g. GPL-2+ or CeCILL, but I will not make this software available under a permissive licence.

from galvani.

petermattia avatar petermattia commented on September 11, 2024

Hi Chris, understood. I wasn't sure if a copyleft license was a deliberate choice. I'll close this ticket.

from galvani.

bcolsen avatar bcolsen commented on September 11, 2024

Sorry for the long post. TLDR; Consider the LGPL?

I will preface this with that I totally love copyleft and what it's done to keep software going in the open source direction and respect the decision here by @chatcannon.

However I also see the problem that Impedance(I use this package) and many other python modules can't use it as a dependency given their MIT licensing.

In this case I don't see the copyleft licence here for a python module is going to help make more GPL software in the world. Neither Arbin nor Biologic are going to open source, though that would be great. It just seems that more people won't use the program and try to reverse engineer it themselves(like Impedance is trying to do). Having less users will of course decrease the amount of participation and contribution.

One interesting solution to this problem is the LGPL. I am not a lawyer, but it seems to allow other modules to use the code as a dependency without requiring that module to change their license. This does allow the makers of proprietary software to use the software, but they can't fork galvani as proprietary software and any changes they make to galvani must be under the LGPL.

By my reading the LGPL protects galvani from becoming proprietary but doesn't encourage the use of the GPL by others, but might allow more people to use it and should allow impedance.py have it as a dependency(though it seem they don't want another dependency?)

Again no pressure here. I just wanted to offer the LGPL as it's a good fit for libraries/modules and can/could help others in the community with license struggles.

from galvani.

petermattia avatar petermattia commented on September 11, 2024

Thanks @bcolsen! I wasn't aware of LGPL, but it seems like a great compromise to me. I do agree that it would fracture the community if the impedance.py team were to create their own solution to the problems that galvani already nicely solves. That said, I respect @chatcannon's decision on this either way.

from galvani.

chatcannon avatar chatcannon commented on September 11, 2024

Nothing in the GPL prevents you from distributing a Python file that says:

# This file "impedance.py" is released under the MIT License

...

import galvani

...

What it might help prevent is someone taking the resulting code and building a proprietary closed-source application out of it. I consider this to be a good thing.

from galvani.

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.