-
Notifications
You must be signed in to change notification settings - Fork 3.6k
Conversation
Codecov Report
@@ Coverage Diff @@
## master #2063 +/- ##
============================================
- Coverage 56.56% 56.10% -0.47%
+ Complexity 2068 1966 -102
============================================
Files 306 306
Lines 4849 4880 +31
============================================
- Hits 2743 2738 -5
- Misses 2106 2142 +36
Continue to review full report at Codecov.
|
Codecov Report
@@ Coverage Diff @@
## next #2063 +/- ##
============================================
+ Coverage 70.51% 70.69% +0.18%
Complexity 1599 1599
============================================
Files 287 287
Lines 3863 3863
============================================
+ Hits 2724 2731 +7
+ Misses 1139 1132 -7
Continue to review full report at Codecov.
|
Laravel 6 LTS needs PHP 7.2 support to stay around. You should be able to support PHPUnit 8.5 in parallel with 9.x. |
Let me know if you need a hand. Also, dropping old PHP is not a BC break, and could be done as 1.10.0. |
Thanks for your feedback, @GrahamCampbell! I changed it locally and it looks good, but I have one problem to solve: there are a lot of regex assertions in the tests and until now |
I was able to change it as described and I was even able to support php 7.1 as well, but I can't get lower than this. Regarding what the new version will be: I guess that’s up to the maintainer to decide. I just hope that there will be a php 8 compatible Faker version soon. |
In the event of the maintainer being long-term unavailable, I think it's worth considering making an official fork of this package to allow the package to continue into 2021 and beyond. |
What is the usecase of dropping old php versions? I do not think it is needed right? |
It's not really a feature or my intend to drop the support for php |
Maybe I have an idea how to do it, but again, thats usually what one shouldn't do when creating unit tests: I will try to rename all setUp/tearDown methods to something different and make my new TestCase magically call them in the original setUp/tearDown. It won't look nice, but that way we could support php |
I don't think dropping old PHP should be an issue. People can still use an older version of faker. |
Dont think @fzaninotto agrees on that statement though |
@pimjansen That's a shame though. The code base regarding testing will be a mess. I found a way how to support all php versions, but I have to create some backward compatible custom methods in my base test class. I'm in progress of implementing that right now. |
Yeah lets wait for his reply in that case since i agree that it should be php 8 compatible once its released |
Any news on this? Anything I can do to help speed things up? |
We are waiting for feedback of @fzaninotto on this. @GrahamCampbell was so kind and wrote him a mail about the future of this project. So we either get a response or the other possibility still remains: Creating a new forked project with new maintainers. |
Ah fair enough. Should such an effort be required id be happy to help maintain/contribute. |
Regarding the issue with PHPUnit versions, you can use the Symfony PHPUnit Bridge, which handles automatically compatibility with most PHPUnit versions (using black magic). Basically, replace We've done this recently to support PHP 8 in API Platform and the Negotiation library and it worked like a charm. The tool provides a polyfill for new PHPUnit features, so you can use the new assertions even with old PHPunit versions, no need for backward compatibility hacks in the tests. |
That was a great hint @dunglas! Thanks a lot! It's indeed black magic, but really nice as it saves a lot of time 😄 |
I see no reason to change this PR. PHP 5 is totally dead now, and we don't need to make any effort to support it. A minimum version of PHP 7.1, going forward, is totally fine. |
Can we ensure that the existing php versions stay active? The change as is means it is a breaking change for older users on which we should release a major. We will do this for future release but not now to make it php 8 compatible. |
I'd personally drop anything below ^7.2.5. PHP 7.2 is almost EOL: https://www.php.net/supported-versions.php |
Dropping PHP 5 is not a breaking change, and keeping at |
I want to thank you very much for all the work you've done. Thank you! 😎 |
@fzaninotto Faker has been invaluable to the community thank you for all you have done. Your approach to sunsetting the project has also opened a path for handling of open source projects too, thank you for pioneering this too |
Thanks for all your work on this great package, @fzaninotto |
Understandable, thank you for your work on this @fzaninotto 💪 |
Thanks a lot for your effort and great work!, thanks for sharing this project with all of us. Best wishes in your endeavors. |
Thank you for all the hard work, and good luck! |
Francois, thank you so much for your work. |
Even if most of the time I've been actually typing or filling fields in the DB by hand, Faker saved me a lot of time when I used it. Been such a lovely package, thanks for all your effort and love that went into this. |
Thank you for your effort... @fzaninotto |
Thank you @fzaninotto for all your hard work on this great package 👏👏👏 |
Thank you so much @fzaninotto for your work on getting faker to where it is today. |
Thank you for the years of hard work that you've put on this package @fzaninotto! You've created a tool that is so beneficial to the PHP community. |
WoW thanks man for that amazing package 💕 |
Thanks for all your work, it's been immensely helpful 🙌 |
@fzaninotto Thank you for your work! |
@fzaninotto thank you for all your work! |
@fzaninotto Thank you for your hard work. Wish you the best in your future endeavours 👍 |
Thank you @fzaninotto :) |
Thank you @fzaninotto |
Thank you a lot, this package helped a lot of people! 🙏 |
Thank you @fzaninotto |
Thank you so much for this great project @fzaninotto ! |
Thanks for all your hard work on this @fzaninotto! |
Thank you for all this @fzaninotto ! All the best for you :-) |
Thank you @fzaninotto |
Thanks for all the hard work @fzaninotto! |
Faker has been very useful to me and I just wanted to chime in with thanks as well. |
Thanks for all the hard work @fzaninotto ❤ |
ThiHey there,
as you may know, php 8 will be released on the 26th of November 2020. Unfortunately, this package does not allow php 8, so I simply tried to change the composer version constraint to
>=5.3.3
, but then no unit tests would work under php 8, as only phpunit^9.0
would allow php 8. Setting something like^5.3.3 || ^7.0 || ^8.0
is no option either, as phpunit 8 introduced some backward incompatible changes which would require different tests for different phpunit and php versions.So the logical conclusion for me was to set the same version constraint as in phpunit 9 (
>=7.3
). This also means, that a new major release of Faker (as of nowv2.0.0
) would be required, as it now drops support for older php versions. I know that's a hard step to take, and I know that there is indeed an ongoing planning and working going on for the "next Faker version", but as far as I can tell, these works are not going to be finished before php 8 has been released. And this package is included in many projectsrequire-dev
section. It is required for those projects to have a php 8 compatible Faker version in order to upgrade to php 8. This is the reason why I created this pull request for the master branch, instead of the "next" release branch.I was able to get everything running for php 7.3, 7.4 and 8.0. What’s your thought on this?