craue / CraueFormFlowBundle

Multi-step forms for your Symfony project.
MIT License
736 stars 118 forks source link

Feature/gaufrette storage #353

Open kevincerro opened 4 years ago

kevincerro commented 4 years ago

This adds Gaufrette support to handle file uploads.

Some improvements can be made, feel free to suggest any necessary changes.

Solves #316

coveralls commented 4 years ago

Coverage Status

Coverage decreased (-44.5%) to 55.214% when pulling 30a75dafe35cb9694485bf97d5e7e0aeb7244343 on kevinc123:feature/gaufrette-storage into 0b2dcc18d16eac54e0a4df7a1bbd3e811b23939c on craue:master.

Warxcell commented 4 years ago

Really cool. I like it but I would rather make it one more level of abstraction. This will make possible also to use FlySystem for storage. And it will also remove the hard dependency of Gaufrette.

Something like BlobStorage interface and pass concrete implementation to DataManager. Current implementation of file storage can be also moved to SessionBlobStorage implementation for example. This will save the many if - else and make the code looks cleaner.

fdiedler commented 2 years ago

@kevincerro @Warxcell @craue Nice feature. I use Gaufrette to store images on AWS because my PAAS does not have a filesystem. Does this feature will be merged ? Thanks,

craue commented 2 years ago

I see a lot of work went into this already. And basically, I also like the idea of being able to save files in different ways. But @Warxcell has a good point on abstraction. Adding adapters for soft dependencies to various libraries would be nice. Tests would be needed as well.

Anyone up for working on this? @kevincerro, are you in the mood to resume?