animate.css
animate.css copied to clipboard
I think you end user agreement and license is a real joke
Hi guys,
I do hope you are well, I want to firstly say I do enjoy your project. I think its innovative and a brilliant application of the WAAPI. My issue is not with the program its more with your end user agreement.
I particular wish to point out that having read such a lofty aspirational text this, has little legal weight in very few courts in the land. Albeit the principles are held to the UN statues these are not directly enforced in the member countries as they have their own legislature to enact such directives.
I do not belittle the merits proposed in the Hippocratic Licence, all i wish to do is point out, that you have very little going to protect you in terms of copyright violations, intellectual property abuse, manipulation or distribution of your software. As creators of a brilliant program I feel that you have let your own Political view's interfere with, and compromise the integrity of your software. Potential harming you's more so directly than having any consequential affects elsewhere
Implementing a more solid and watertight legal framework around your open-source package should provide you the adequate protections that you as owners of this project should be entitled to. Also allowing its users to respect the guidelines and principles set forth.
I felt it incumbent to express my opinion on this matter and hope that you do see light and seek the appropriate counsel and measures to protect this project better.
Kindest Regards
It's worth noting that all old versions of the library are still licensed under MIT. Only new releases are supposedly under the new license. MIT allows anyone who has a MIT-stamped copy of the code to potentially sublicense the code and distribute it however they want.
So all my projects are locked at animate.css 4.1.1, and if they both nuke the git commit history and remove/change the files attached to https://github.com/animate-css/animate.css/releases/tag/v4.1.1 and older tags, I will just redistribute 4.1.1 myself.
It's also worth noting that https://github.com/animate-css/animate.css/commits/main/CONTRIBUTING.md was only added to the repository in April of 2020, and still does not contain any information about who owns the work anyone contributes to the project.
Which means that unless the maintainers reached out to all previous contributors and asked their permission to relicense, the relicensing was itself not legal.
If they had kept the original MIT license and just added another one to make the project dual-license, that would be legal without asking anyones permission if the project has been MIT-licensed since inception (I have no idea if it has.) But they didn't - they removed MIT.
Setting aside the rights and wrongs of the relicensing, the practical effects are these:
The Hippocratic License is not an FSF/OSI-approved free/opensource license because it puts restrictions on how the software can be used. This means that it is not license-compatible with FSF/OSI-licensed software. Software under the Hippocratic License cannot be included in projects and distributions that require license-compatibility with free/opensource software.
Advocates of the Hippocratic License like to argue that software under this license is opensource according to their definition or principles. Fine. They can argue that. They also like to argue against what they see as problems with the "gatekeeping" of organisations such as the FSF and OSI. Fine. Those organisations aren't and shouldn't be above criticism. Nor should anyone else.
But this still leaves the practical/legal matter of license compatibility and incompatibility. You have software under free/opensource licenses according to the FSF/OSI definitions that can be used for any purpose, and you have software under the Hippocratic License that can't be used for any purpose. These licenses aren't compatible on their basic terms any more than you can run Go code through a C compiler.
So if your project doesn't have a legal, practical or philosophical problem with linking to/including/distributing software that puts restrictions on the scope of use then that's fine. But if it does then it's not.
As just one example, Debian has pinned ruby-vcr (vcr/vcr) to the last released version under a FSF/OSI-approved license after it relicensed to the Hippocratic License. Longer term, these frozen dependencies will rot (bugs won't get fixed; new features won't get added; dependencies will become incompatible) and ultimately be dropped by the upstream projects.
Everyone using and contributing to animate.css needs to be aware that the project is no longer being maintained under what effectively the entire free/opensource community considers to be a free/opensource license and what the practical implications of this are. I suspect that many or most are not.
If you're happy to be using/developing proprietary software with all that that entails then go for it.
If they had kept the original MIT license and just added another one to make the project dual-license,
No. They only need to keep the text of the MIT license. The MIT license is not a copyleft license (it is a free software license, just not a copyleft one), so dual licensing is not required.
I guess @eltonmesquita we can move this to the Discussion instead here in the issue. 🤔
The new "license" is a really not a good move. I get it that you don't like it when your software is used by people you don't like, but that's the nature of free software. With this solution you're just stealing the work of the 121 other contributors to the project and wrapping it under your bogus license without their permission. Unless you got copyright assignment, you're violating their rights by distributing software they wrote without fulfilling the terms of the original license - even if it's in your repo.
Also, just to put some facts out there, the person who made the change works for Facebook, one of the most evil surveillance companies on earth and a massive human rights violator.
I genuinely think that people who work at Facebook are horrible, morally-bankrupt people and the entire business of spying on people for money should be criminalized. (It's also a direct violation of HL-3.1.19 - or is that why you went with version two?) But, that's exactly the problem with these vague ethical license. What to me is a disgusting behavior is to you a perfectly acceptable way of getting a paycheck. There aren't universal ethics.
Websites in the world wide web can be visited/used by evil people and everyone knows that. Seems like your new license forbids EVERYONE to use this library on any public website.
I've been thinking about this for a long time and it seems that using the Hippocrate license is a bit trickier than we initially thought. There are a few things it tackles that I'm not sure about the full impact of it. It's very opinionated and I don't know enough about many groups and actions that the license forbids.
I'm not saying that we will keep this license or not, I just don't know yet. It'd be good to have more opinions about it, but please keep them constructive and without any insults. Some proper references and not just anecdotal statements would go a long way in this discussion. I'm not dismissing anyone's opinion, but as this will affect the wide community we do need more specific feedback.
We still got time to change the license before releasing the next major release, as this license didn't get into any release, it's only on github's main branch for now. We hushed things a bit as this sort of change demands a major release, which we didn't.
We've got a few things to improve on our contribution guide and licensing, including code ownership. Feedback and contributions for those parts are always welcome, btw.
@aFuzzyBear I took the liberty to change the issue title to something more helpful to gather feedback, if you don't mind
@eltonmesquita Regardless of whether you will use the Hippocratic License or not for future releases, it appears to me that you are ignoring the rights of contributors who contributed under the MIT license if you have accepted contributions under that license previously.
And if you accept contributions under the Hippocratic License, but then don't follow such license for the next release, because of negative feedback, then you are ignoring the rights of those contributors as well.
Please see: https://ethicalsource.dev/blog/adopting-an-ethical-license/
This seems the VCR fiasco again.
(I am not a lawyer and this is not legal advice).
The general assumptions for contributions on GitHub and similar platforms is that the copyright holder of the contributions (i.e. the contributor) is licensing them publicly, and therefore to the project administrators as well, under the same public license under which the project is provided.
This assumption is the common norm and it is justified by the fact that contributions are typically made by creating a fork which conveys the same license in the same way (a "LICENSE" file).
Please see: https://google.github.io/opencasebook/authorship/
The standard mechanism for contributing to an open source project is the submission of a pull request, which entails re-copying the entire repository along with the contributed changes, together with all of the project’s existing documentation, when submitting the contribution. Through this mechanism, a contributor is formally publishing the contribution under the license of the project.
The "inbound=outbound" licensing model is the most commonly used one and the one which seems to apply here.
There is nothing to indicate that contributions are in the public domain or that contributors are transferring their rights to you. This license is the only thing that allow you to use contributions in the first place.
@Aspie96 thanks a lot for the clarifications. Yeah, it seems that we put ourselves in a tough situation. From what I could understand in a quick read - thanks for the links! - the best solution would be to adopt a double license (MIT and Hippocratic) and add a Contributor License Agreement so we can be assured that we won't hit any legal problems from now on.
I had a look and most of the merged contributions since the change in licensing have been dependabot updates or tiny improvements to the docs area, which were mostly done by the animate.css team. I'll probably switch the docs for something like docusauros or another library and rewrite most of the content for the next major version, this would make an easy path to ditch the whole Hippocratic license and get back to MIT, if we want to.
We still have a few open PRs that were opened while in the Hippocratic license, but we can always ask for the agreement of other license while they're still open, so it's an easy one to fix.
@eltonmesquita honestly its about time its took seriously, seeing you move to an MIT license is a good first step. Ill be keeping an eye on how things unfold, 👊
the best solution would be to adopt a double license (MIT and Hippocratic)
I don't understand what you mean by "adopt[ing] a double license". You only chose the license of your own stuff, and have to comply with the license terms for any other stuff.
If you have already accepted contributions under each of these licenses, then each of those contributions is already license under either of these licenses by its respective author. You may be in violation of the terms of such license, and the MIT license requires that you copy its text, not that you adopt it for your own stuff, so that's all you need to go back to compliance.
This is what makes the MIT license a very permissive license: you can include MIT-licensed code in any repository, regardless of the license of the rest of the codebase, as long as you include the text of the MIT license too, alongside with copyright notices.
If you mean that you want to go for a dual licensing solution, that's your choice, but really I don't think it's needed.
I had a look and most of the merged contributions since the change in licensing have been dependabot updates or tiny improvements to the docs area, which were mostly done by the animate.css team.
A license is a permission given to others. So if indeed all copyrightable contributions (and updating a dependency probably isn't anyways) are done by either you or people willing to license stuff however you wish because they are part of your team, then you don't have to, yourself, comply with the terms of the Hippocratic license.
Obviously, however, if earlier contributions (before the license change) are from third parties under the MIT license, then you need to include the text of the MIT license in the repository.
We still have a few open PRs that were opened while in the Hippocratic license, but we can always ask for the agreement of other license while they're still open, so it's an easy one to fix.
Again, this is not legal advice. However, to achieve this goal you could simply ask contributors to license their own contributions under the MIT license, which you are bound to follow anyways if you already have previous contributions under that license.
This is what makes the MIT license a very permissive license: you can include MIT-licensed code in any repository, regardless of the license of the rest of the codebase, as long as you include the text of the MIT license too, alongside with copyright notices.
Obviously, however, if earlier contributions (before the license change) are from third parties under the MIT license, then you need to include the text of the MIT license in the repository.
Yes, but code that was contributed while the project was MIT-licensed can't be re-released under any other license (EDIT: exclusively, that is, you can't remove the option to use the code as MIT) without asking each contributor specifically - whether exclusive or not. Since there was no CLA.
And code that was previously released as any license can't be retroactively relicensed. That is to say, 4.1.1 and earlier will forever be usable under MIT.
See my first reply to this ticket; https://github.com/animate-css/animate.css/issues/1364#issuecomment-932814739
Yes, but code that was contributed while the project was MIT-licensed can't be re-released under any other license without asking each contributor specifically.
Exactly, that's what I wrote too. It's only on code which is either their own or new that they can decide the license.
EDIT: exclusively, that is, you can't remove the option to use the code as MIT
You couldn't remove this option even if you asked each contributor specifically because that would be revoking the license. You could chose not to mention this option by not copying the text of the MIT license if every contributor allowed you to do so, but even then those with access to older versions of the repo could use it regardless.
Hey folks, here's my blunt 2c: I care less about the legal protection of this software than I do about discouraging the development of software designed to disadvantage or harm others.
I'm going to point to this article which documents both many of the common criticisms—and common rebuttals—of the Hippocratic License, and summarise by saying that:
- I don't intend for Animate.css's license to have to stand up in court
- I don't want anyone or any company put off by the terms of the license to use the software
If you or your company can't commit to not violating human rights, then just don't use the software.
Software is inherently political; the claim that open source projects should remain politically neutral is in itself a political choice that emboldens those already in power, and enables further harm. If at the very least, this licence turns away a small percentage of people that would otherwise continue to develop harmful software, or even causes people to stop and consider, I think this is the right choice. This issue is not open to debate.