Comments (10)
Thanks @suhr for the suggestion. We will consider all option available and review our License at later stage.
from crust.
Be aware that discussion currently ongoing in /r/rust/ gives the impression that people who think this is some sort of "GPL plus additional restrictions" situation are being scared away.
What a lot of people don't realize is...
- The text of the GPL explicitly says that you may not apply restrictions beyond those imposed by the GPL itself (forbidding things like NDAs and royalties on GPL licensed source)
- As a result, applying additional restrictions without modifying the text nullifies the GPL and reverts to All Rights Reserved because users would be required to satisfy two directly conflicting rules simultaneously in order to take advantage of the license grant.
- The text of the GPL is copyrighted to you and you are granted a license to to use it only if you leave it un-modified. (So, if you make a modified GPL to allow additional restrictions, you're guilty of copyright infringement and they can sue you.)
- They explicitly require that the name "GPL" only be used for their license in the original form (I think that's enforced via trademark law)
- Even if it were somehow possible to bind someone to "GPL + Restrictions" terms, the copyleft clause in the GPL would explicitly discard those additional restrictions, so I could ask my friend to get the code from you and then give it to me under the terms of a clean, unrestricted GPL license.
So, in short, the current situation:
- Scares off developers who think it's possible to make a "GPL + Restrictions" license
- Scares off people who know just enough about licensing to know that a modified GPL would be incompatible with ordinary GPL but not enough to know that adding new restrictions to the GPL is flat-out illegal.
- Just generally hurts the project
So, basically, what I'm saying is that, judging by the reactions I'm seeing, you need to make your intent more clear.
from crust.
Ah I see your point, we are working with some folks to ensure this is much clearer, already several law firms in London, Scotland and also USA, including meetings with GPL authors as well. We can surely make the distinction much clearer though as we progress. So GPL is very clearly pure GPL and can be forked used as pure GPL. I personally do prefer clean language so this makes sense. I also feel the PR contributor agreement we have will vanish very soon anyway as it causes more confusion than it helps at times. It was wiggle room for a license change to BSD/MIT etc. if we got into a corner, but it seems we will not get into such a corner anyway.
Still a little way to go, but the main thing is the core libraries etc. should (I feel) be protected and truly Open, but perhaps after the API app devs make up their own mind (we do not enforce past API, obvious to many but not all, as you say).
It is a constant item on our monthly meetings right now and will stay until we get the correct answer. As we are in mid launch now it should clear up very very soon as devs give us feedback (like this, so thank you)
Personally I have become a much bigger fan of GPL with all the recent issues and especially seeing some of the Open Source code from large companies that is just nonsense and not what they use internally. Our approach is everything we do is open and nothing is private. I now feel everyone in security code should do likewise, as I say that is personal though ;-). The company and community are much bigger and more important than me though.
from crust.
I think the biggest problem right now is that...
- You've got both a
COPYING
file and aLICENSE
file and they're mutually incompatible. - People are likely to read one or the other but not both and then come to the wrong conclusion.
- Less experienced people are more likely to read
LICENSE
first, which contains the non-GPL text. - It's unclear whether you're trying to say "your choice of GPL or proprietary" or "some files GPLed, some proprietary" (Which is only allowed if they don't link to each other. See, for example, free/libre games where the engine is GPLed but the art is CC-BY-SA.)
If it's a case of "Available under your choice of the GPLv3 or our proprietary license", then clearly state that.
It'd probably also help to add a shields.io license badge to draw the eye to the terms.
![license](https://img.shields.io/crates/l/crust.svg)
![license](https://img.shields.io/github/license/maidsafe/crust.svg)
from crust.
This is really neat and we will do this. We are sprint last day so @rossmuir will have this done next week. Than you very much for the help, very much appreciated.
from crust.
Glad I could help. I collect lists of useful "free for open-source" services so, if there's anything else you might find useful (or if you'd just like me to continue listing things), feel free to ask.
Examples:
- Trello-like UI for GitHub Issues
- commit message linter for pull requests
- Windows Travis-CI competitor
from crust.
Thanks again and please shout whenever you see something uncomfortable and we will pay attention. So lets see how we fare next week to get at least a few steps further. Cheers -> 1 beer in kitty :-)
from crust.
We also use reviewable.io which is also free for open source and we found Jira and many others very happy to help. Nice list though, I have signed up already for waffle.io as it looks great. We did use appveyor, but unfortunately it took to long to run our CI, so ended up switching to a local jenkins for this (and osx)
from crust.
Reviewable.io is on my list. I just didn't want to dump an exhaustive list on you without being asked so I gave three distinctive examples.
from crust.
I would like to see the project as Free Software, too.
The issue I see though is that a license alone is not enough to accomplish that.
There are lots of examples where a project just throws some small part away as GPL, selling proprietary versions at the same time, adding proprietary "plugins" and such. A seasoned user of GPL software will not go for this. A clearness on copyrights would definitely help in building the community and defining its goals.
from crust.
Related Issues (20)
- Generate Crust ID ourselves
- Dynamic connections manager
- Remove message priorities HOT 1
- Report about dropped messages HOT 2
- Solve head of line blocking HOT 1
- Simplify bootstrap cache
- External reachability test should not make a connection attempt fail
- Unable to connect to local peer on localhost in example HOT 3
- Connection attempt fails HOT 6
- Message Splitting HOT 1
- Remove CrustUser
- Remove PrivConnectionInfo
- Rename prepare_connection_info
- Remove (dis)connect API and make the Send API take peer-information
- Connection Pool
- Is there a method to obtain a peer port. (Q&A)
- Exhaustively Document the nat traversal techniques used.
- Example Code HOT 1
- Fix dyn issues on 1.37
- Is moving to futures and async/await being considered?
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from crust.