PiranhaCMS / piranha.core

Piranha CMS is the friendly editor-focused CMS for .NET that can be used both as an integrated CMS or as a headless API.
http://piranhacms.org
MIT License
2.02k stars 561 forks source link

Update Piranha.ImageSharp dependency SixLabors.ImageSharp to v3 #2093

Open jmbryan4 opened 2 months ago

jmbryan4 commented 2 months ago

image image update to ImageSharp 3.x see: https://sixlabors.com/posts/announcing-imagesharp-300/

tidyui commented 1 month ago

There are some major changes to the licensing between v2 and v3 of ImageSharp that we need to clear out before being able to update.

usercode commented 1 month ago

Updating the ImageSharp dependency is also important because of breaking changes between version 2 and 3.

I use Piranha CMS with other open source library which target the version 3.x.

If I try to upload an image with the manager, I get this error message.

grafik

I think there is no license issue. (It's allowed to use ImageSharp as "Transitive Package Dependency" by open source projects like Piranha CMS.)

https://github.com/SixLabors/ImageSharp/blob/main/LICENSE

tidyui commented 4 weeks ago

@usercode We can't upgrade ImageSharp to a new major version with breaking changes without changing major version for Piranha itself. If you need to upgrade to the latest version of ImageSharp in your project before this it's very easy to create your own local pre-release version of Piranha.ImageSharp and reference you local package in your project.

tidyui commented 6 days ago

@usercode To clarify a bit around the transitive package reference. Yes it’s ok as long as YOUR site isn’t using the ImageSharp package directly and it’s only used from Piranha. If you have any code using ImageSharp and we upgrade to version 3, you would need to buy a license covering your custom usage.

usercode commented 3 days ago

@usercode To clarify a bit around the transitive package reference. Yes it’s ok as long as YOUR site isn’t using the ImageSharp package directly and it’s only used from Piranha. If you have any code using ImageSharp and we upgrade to version 3, you would need to buy a license covering your custom usage.

Yeah, that's true. But what is your conclusion? Keep reference to old ImageSharp version forever? (I don't see the begin of a new major version of Piranha.) Migrate to SkiaSharp?

Maybe you can create a new nuget package called "Piranha.ImageSharp.V3" and everyone can decide which version they want to use.

I fixed it by creating my own Piranha.ImageSharp project like you told. But an official nuget package is nicer. :smile: