thephpleague / glide

Wonderfully easy on-demand image manipulation library with an HTTP based API.
http://glide.thephpleague.com
MIT License
2.55k stars 199 forks source link

Flysystem 2.0 #275

Closed joeworkman closed 3 years ago

joeworkman commented 4 years ago

I wanted to give Flysystem 2.0 a shot in a project that also uses Glide. Sadly, Glide requires v1. Hopefully someday. I thought that I would open the issue here so that it could possibly get onto the 2.0 roadmap.

ADmad commented 4 years ago

Flysystem 2.0 betas are out. I could look into upgrading Glide to work with Flysystem 2.0 after #284 is merged.

ADmad commented 4 years ago

For anyone interested I have a functional (test suite fully passing) branch with flysystem v2 here https://github.com/ADmad/glide/tree/flysystem-v2.

pjdevries commented 3 years ago

Hi @ADmad. I'm working on a small, Glide based hobby project and am now trying to decide what to do: use the current version 1.x as is, use your version with Flysystem 2.x support or, under the impression Glide version 2.0 is around the corner (based on what I read in #301), wait for that.

Because I don't have a good overview of all the (breaking) changes yet, both in the Glide and in the Flysystem API, I'm not sure what to do best. Based on you experience, can you recommend the way to go, giving me the least refactoring issues once Glide 2.0 is out?

tgalopin commented 3 years ago

Hi @pjdevries !

I need to merge 301 indeed, and the idea of 301 was specifically to introduce as little BC breaks as possible to ease upgrade from 1.0 to 2.0. Thus it shouldn't be difficult to migrate at all. I plan to have a look this week (I've been super busy lately).

pjdevries commented 3 years ago

Hey @ADmad. Thanx for the swift response, especially considering you're so busy.

Sounds good and between the lines I think to read that using Glide v1.x is o.k. for now :)

Thank you and all others involved for the great work!

ADmad commented 3 years ago

@pjdevries If you plan to use Flysystem classes/objects directly then I would suggest starting with my branch. Later when #301 eventually gets merged you should be able to switch to the new release with almost no change to your app code. Starting with Glide 1.x would mean if you are explicitly creating any Flysystem objects they will have to be changed later (though for simple use of Glide, directly using Flysystem classes/objects is not necessary).

pjdevries commented 3 years ago

@ADmad Thanx for that additional comment, because I do need to access some Flysystem objects directly indeed. So I will take your advice and use your branch.

ADmad commented 3 years ago

https://github.com/thephpleague/glide/releases/tag/2.0.0