mirror of
https://github.com/HaschekSolutions/pictshare.git
synced 2026-04-25 23:15:51 +03:00
[GH-ISSUE #57] PHP version support / contributing #42
Labels
No labels
Feature request
Feature request
bug
cant reproduce
enhancement
help wanted
pull-request
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/pictshare#42
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @birkett on GitHub (Jun 20, 2018).
Original GitHub issue: https://github.com/HaschekSolutions/pictshare/issues/57
I want to contribute changes, including:
Some questions before I go ahead:
Would you be happy dropping support for PHP 5.6? PHP 7 has numerous advantages.
Are there any other coding standard / practices would you like to adhere to?
@geek-at commented on GitHub (Jun 20, 2018):
Hello @birkett!
Thank you for starting this. I too have had two tries on rewriting pictshare to be more readable and moddable. I stopped both attempts because I just didn't have the time.
Dropping PHP 5.6 is okay and also dropping the support for legacy images is okay for me.
I have just two requests for a rewrite:
Any thoughts on that?
@birkett commented on GitHub (Jun 20, 2018):
On 1. - I agree, I see no need for third party libraries here.
However, Composer can be useful for bringing in development tools, like PHP CS Fixer. These tools can be installed with require-dev. They would have no impact on, or relationship with the application.
On 2. - This is something I have been looking at. I think we can re-write the filters, one per class - all of which would implement a new interface, FilterInterface, and extend a base filter class, AbstractFilter. We can then create a FilterFactory, and do nice things, like:
Something similar can be done with the uploaders (Backblaze, local storage...) - put them all on an interface, so they act identically to the application.
I'd like to get started with one big PR, to update the coding standards. This will modify most lines of code, setting the line endings to LF, spaces for indentation etc. This first PR will make no functional changes.
We can then follow with refactoring work, one area at a time. PHP7 support would be dropped at this point, allowing for strict typing, parameter and return type hints.
@geek-at commented on GitHub (Jun 21, 2018):
Sounds awesome, you have my blessing
@birkett commented on GitHub (Jun 21, 2018):
Filter refactoring in progress here:
github.com/birkett/pictshare@673fd9210aPR to follow.