[HN Gopher] ImageSharp leaving the .NET Foundation due to licens...
___________________________________________________________________
ImageSharp leaving the .NET Foundation due to licensing change
Author : nozzlegear
Score : 69 points
Date : 2022-10-22 19:49 UTC (3 hours ago)
(HTM) web link (dotnetfoundation.org)
(TXT) w3m dump (dotnetfoundation.org)
| dark-star wrote:
| It's just a library handling image files. There are dozens of
| others out there with similar functionality that are still under
| OSI-approved licenses... I assume ImageSharp will lose a lot of
| significance now...
| ghuntley wrote:
| This is a good outcome for James. This guy fucking smashes
| academic papers out of hours to make ImageSharp possible. Folks
| who aren't in the imaging space really have no clue just how hard
| this shit is. Gl James.
|
| tbh; dotnet foundation really doesn't provide much value to
| member projects. See https://www.isdotnetopen.com for context.
| TAForObvReasons wrote:
| The entire situation is a bad outcome. From the article:
|
| > The .NET Foundation accepts projects that use permissive
| licenses within that set [of OSI-approved licenses].
|
| > The board clarified that projects in the Foundation must use
| a permissive OSI-approved license and that projects would all
| be treated the same.
|
| Per the linked article https://sixlabors.com/posts/license-
| changes/
|
| > Previous attempts (sponsorship, support license) to provide a
| sustainable income to ensure the continued development of the
| Six Labors libraries have not proven successful, yielding less
| than a few months of developer income over a period of several
| years.
|
| It sounds like James' monetization efforts were unsuccessful.
| The new monetization approach and relicensing is not considered
| compatible with the open source nature of the dotnet
| foundation. Whether the new approach works remains to be seen,
| but it likely burned a lot of community goodwill.
| phoronixrly wrote:
| > Whether the new approach works remains to be seen
|
| True, I hope it does.
|
| > but it likely burned a lot of community goodwill
|
| That also remains to be seen. And would it burn less
| community goodwill to stop developing the project at all?
|
| Also it doesn't really matter if this move burns community
| goodwill. It's the author's decision to make. Any member of
| the community is free to fork before the license change, and
| any member of the community is free to not submit patches
| upstream.
| gtirloni wrote:
| SkiaSharp seems like a decent alternative (edit: in case you
| can't actually use System.Drawing directly).
|
| https://github.com/mono/SkiaSharp
| HideousKojima wrote:
| >in case you can't actually use System.Drawing directly
|
| I.e. anyone using .NET on Linux or Mac
| ethbr0 wrote:
| Direct link to the license and post from the ImageSharp side, as
| both their and the .NET Foundation's posts are worth reading:
| https://sixlabors.com/posts/license-changes/
|
| Tl;dr as near as I can tell:
|
| - If you are "an Open Source or Source Available consumer" or "a
| Non-profit organization or Registered Charity", you can use the
| code under Apache License 2.0.
|
| - "If your annual gross revenue is less than 1M USD then the
| license will continue to be granted to you under the Apache
| License 2.0."
|
| - "If your annual gross revenue is greater than or equal to 1M
| USD and you are consuming any of the libraries for use in Closed
| Source software as a "Direct Package Dependency" as defined in
| the license then you must purchase a Six Labors Commercial Use
| License."
|
| Also, nice to see both of them handling it professionally,
| instead of casting aspersions as so often happens.
| blibble wrote:
| > If you are "an Open Source or Source Available consumer" or
| "a Non-profit organization or Registered Charity", you can use
| the code under Apache License 2.0.
|
| but Apache allows redistribution under the same terms? so how
| this supposed to work?
| int_19h wrote:
| https://github.com/SixLabors/ImageSharp/discussions/2151#dis.
| ..
|
| "The transitive clause is actually really important, I'll
| explain why.
|
| I've explicitly called out the following to ensure that the
| Split License is non viral.
|
| Once granted, You must reference the granted license only in
| all documentation.
|
| In practical terms this means that If you are granted a
| license, that's the one you're use, not the Split License
| which exists to derive the license to be granted to you.
|
| So if you're OSS, you should only be concerned about and
| reference the Apache 2.0 license - downstream consumers
| shouldn't need to care.
|
| That, on the surface makes the whole transitive/direct thing
| seem redundant except for the fact we have to use the Split
| License in NuGet packages, so if someone is looking up their
| supply chain then they can reference the transitive clause to
| determine liability (none).
|
| Can it be exploited. Yes, but as I've said elsewhere. "Evil
| Corp is gonna evil". They're actually more likely to simply
| ignore the license."
| Dylan16807 wrote:
| Getting the Apache version from someone else because they
| won't give it directly to you doesn't sound like an
| "exploit" or "evil" to me.
| tomnipotent wrote:
| The transitive clause is limited to "Object" form, which
| excludes raw source code.
| int_19h wrote:
| It doesn't matter, because these clauses are only
| relevant when determining the license granted to someone
| who is consuming the library. If an open source project
| does that, the following item applies:
|
| "Works in Source or Object form are licensed to You under
| the Apache License, Version 2.0 if ... you are consuming
| the Work in for use in software licensed under an Open
| Source or Source Available license."
|
| So at that point the author of said open source project
| gets to redistribute the source of the library under AL -
| and only AL defines what further derived works can and
| cannot do with it.
| resoluteteeth wrote:
| It's true that the way they have defined it in the split
| license, you are not using imagesharp as a "transitive
| package dependency" if you copy the source code from the
| git repository of an apache licensed open source project
| rather than using the object code.
|
| However, that's irrelevant because they are licensing it
| to the open source project under the apache license.
|
| Once the open source project has it under the apache
| license, you can copy it from the open source project
| under the apache license, because the apache license
| allows that, and the split license won't apply in the
| first place.
|
| The linked page even says "Once granted, You must
| reference the granted license only in all documentation,"
| so if they have the source code in their repository it
| will literally just say that it's apache licensed with
| zero mention of the split license by the explicit
| instructions of the creators of imagesharp.
|
| If they say that's NOT the case, because they are
| imposing additional restrictions, then they aren't
| actually licensing it to the open source project under
| the apache license in the first place.
|
| Otherwise, they realize that this is a massive loophole
| but are still hoping that companies will just pay up. I
| think this is what's actually the case (and why the hoped
| the .net foundation would accept it), but they don't want
| to come out and say that explicitly because then it would
| defeat the point.
| [deleted]
| initplus wrote:
| Can't have your cake and eat it too. Either the license is
| viral (conditions imposed on user A still apply when A
| passes the software to B) or it's not.
|
| If you license your code to anyone under the Apache
| License, that person is then free to redistribute the code
| under the terms granted by the Apache License, which is
| obviously missing this $1,000,000 revenue restriction.
| plorkyeran wrote:
| Yeah, that seems like contradictory gibberish. If you're
| closed source and have revenue over 1M you just have to
| obtain it from someone who is allowed to use it according to
| the Apache 2.0 license rather than directly from MS? The
| license explicitly allows anyone to consume it as a
| transitive package dependency, so you just need to make a
| trivial open source library which imports it and then depend
| on that?
|
| They might as well just say that if you have revenue over $1M
| they'd appreciate if you gave them money since the license
| doesn't seem to actually impose any sort of legal obligation
| to do so.
| modeless wrote:
| Maybe I'll start a business reselling Apache-licensed
| copies of ImageSharp. $10 each. As long as I don't get more
| than 100k customers I'll have less than $1m revenue and I'm
| good!
|
| This is definitely the stupidest license I've heard of. I'm
| currently in the same situation, thinking about how to open
| source one of my projects while retaining the ability to
| make some money somehow, and this is something I never even
| considered because it's so stupid.
| tgsovlerkhgsel wrote:
| It isn't, because as long as the price for a direct
| license is reasonable, companies will pay it just to have
| the paperwork.
|
| SQLite is public domain, and makes money by selling
| "licenses" to such companies (they're called something
| else, but it allows the company buying it to file it in
| their "licenses" folder and tick a checkbox;
| https://www.sqlite.org/copyright.html).
| plorkyeran wrote:
| If the intent is for it to be Apache 2.0 with a
| completely optional paid license, you can just do that
| without a convoluted licensing scheme.
| int_19h wrote:
| That is exactly what they did originally, and it did not
| produce enough paid customers.
| [deleted]
| modeless wrote:
| That doesn't make this license not stupid. Sure, SQLite
| sells licenses, there's nothing wrong with that,
| ImageSharp is welcome to do it too! But you'll notice
| that SQLite doesn't need a license like this one...
| blibble wrote:
| if it's a library the classic model is to distribute it
| under the GPL and have a separate proprietary license
| that you charge for
|
| (doesn't stop mega-cos using it as a cloud
| service/internally though)
| pooper wrote:
| I think dual licensing AGPLv3 (or above) is the simplest
| approach. Include a separate paid (preferably
| straightforward) license and be done. Make it easy for
| people to pay you and make it easier to get refunds for
| any reason.
|
| Another option is to do what Duende did. I think Duende
| (Identity Server) handled the situation pretty well.
|
| https://duendesoftware.com/products/identityserver
|
| > Standard License Pricing > Free for development,
| testing and personal projects--only pay for production.
| Try it now! Learn about our free Community Edition.
|
| > Our Community Edition license is feature equivalent to
| our Enterprise Edition, but only includes standard
| support.
|
| > Community Edition allows hosting IdentityServer on your
| own infrastructure (including your cloud). It is not for
| scenarios where you redistribute IdentityServer, or build
| software for third parties. In this case you either need
| a redistribution license, or the end-customer needs a
| standard license.
|
| > For-profit companies/individuals with less than 1M USD
| annual gross revenue > Non-profit organization with a
| published annual budget less than 1M USD > Registered
| charities
| tomnipotent wrote:
| > impose any sort of legal obligation to do so
|
| The whole point of being in breach of contract is that you
| can be sued for it.
| Kukumber wrote:
| They have lot of employees:
| https://github.com/SixLabors/ImageSharp/graphs/contributors
| madeofpalk wrote:
| That shows _" contributors"_. It looks like they have roughly 4
| regular contributors. Their Github org lists 5 members. I would
| not consider that "a lot".
| [deleted]
___________________________________________________________________
(page generated 2022-10-22 23:00 UTC)