Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

PHP 8.4 support for zf1-* packages #297

Closed
gnutix opened this issue Jan 7, 2025 · 8 comments
Closed

PHP 8.4 support for zf1-* packages #297

gnutix opened this issue Jan 7, 2025 · 8 comments

Comments

@gnutix
Copy link

gnutix commented Jan 7, 2025

Hello @jaydiablo !

I'm wondering if you have any plans to test all the zend framework packages against PHP 8.4 anytime soon ?
There's a few we use in our project that I could help with :

    diablomedia/zendframework1-date
    diablomedia/zendframework1-filter-input
    diablomedia/zendframework1-json
    diablomedia/zendframework1-loader
    diablomedia/zendframework1-locale
    diablomedia/zendframework1-registry
    diablomedia/zendframework1-session
    diablomedia/zendframework1-translate
    diablomedia/zendframework1-validate

Let me know how I can help.
gnutix

@gnutix
Copy link
Author

gnutix commented Jan 8, 2025

OK, it's a little more complicated than I thought because of cross-dependencies between packages. Here's the order in which the packages used in our project need to be upgraded :

  1. diablomedia/zendframework1-exception PHP 8.4 zf1-exception#320
  2. diablomedia/zendframework1-xml (exception) PHP 8.4 zf1-xml#179
  3. diablomedia/zendframework1-server (exception) PHP 8.4 zf1-server#293
  4. diablomedia/zendframework1-crypt (exception) PHP 8.4 zf1-crypt#297
  5. diablomedia/zendframework1-json (exception, xml, server) PHP 8.4 zf1-json#325
  6. diablomedia/zendframework1-config (exception, json) PHP 8.4 zf1-config#376
  7. diablomedia/zendframework1-loader (exception, config) PHP 8.4 zf1-loader#296
  8. diablomedia/zendframework1-registry (exception, loader) PHP 8.4 zf1-registry#288
  9. diablomedia/zendframework1-session (exception, config, loader) PHP 8.4 zf1-session#316
  10. diablomedia/zendframework1-log (exception, config, loader) PHP 8.4 zf1-log#294
  11. diablomedia/zendframework1-cache (exception, config, loader, log) PHP 8.4 zf1-cache#292
  12. diablomedia/zendframework1-locale (exception, xml, registry, cache) PHP 8.4 zf1-locale#311
  13. diablomedia/zendframework1-date (exception, cache, loader, locale) PHP 8.4 #299
  14. diablomedia/zendframework1-filter (exception, config, loader, crypt, date, locale) Php84 zf1-filter#297
  15. diablomedia/zendframework1-translate (exception, config, loader, xml, cache, locale, log) PHP 8.4 zf1-translate#287
  16. diablomedia/zendframework1-validate (exception, config, loader, registry, date, filter, locale, translate) Php84 zf1-validate#286
  17. diablomedia/zendframework1-filter-input (loader, registry, translate, validate, filter) Php84 zf1-filter-input#291

@gnutix
Copy link
Author

gnutix commented Jan 8, 2025

@jaydiablo I see you've started working on this with diablomedia/exception. Anything I can help with ? Or do you prefer do to them all yourself, and I just wait cozily ? 🍵 🛋️ 📚 🐈‍⬛

@gnutix gnutix changed the title PHP 8.4 support PHP 8.4 support for zf1-* packages Jan 8, 2025
@jaydiablo
Copy link
Member

@gnutix Thanks for the issue and starting to look into this... I've started the process, and would like to at least get the packages you've listed ready for PHP 8.4.

    diablomedia/zendframework1-date
    diablomedia/zendframework1-filter-input
    diablomedia/zendframework1-json
    diablomedia/zendframework1-loader
    diablomedia/zendframework1-locale
    diablomedia/zendframework1-registry
    diablomedia/zendframework1-session
    diablomedia/zendframework1-translate
    diablomedia/zendframework1-validate

So far this is what's left:

    diablomedia/zendframework1-filter-input
    diablomedia/zendframework1-session
    diablomedia/zendframework1-translate
    diablomedia/zendframework1-validate

But yes, as you've noticed, it usually requires updating more than expected. I've been building draft PRs for all of the dependencies (as branch name php84) so I can update the dependencies in other drafts.

If you'd like to follow my lead on the remaining ones (to satisfy your list) that would be helpful. I'll be able to do more, but probably not until tomorrow.

@gnutix
Copy link
Author

gnutix commented Jan 9, 2025

Hey there! I have quite a few meetings all day long, but I should be able to try updating one or two of them on Friday (PS: I'm in Europe timezone-wise). I'll write here if I can start working on one, so you know and we don't overlap our efforts.

I've updated the list of packages with links to the PRs you've already created and will keep doing so, that way it serves as an overview.

@gnutix
Copy link
Author

gnutix commented Jan 9, 2025

I checked all your current PRs and wrote a few comments (mostly about removing useless PHPDocs).

@gnutix
Copy link
Author

gnutix commented Jan 10, 2025

@jaydiablo I've started working on the missing PRs.

Edit: zf1-filter done! diablomedia/zf1-filter#296
Edit2: zf1-validate done! diablomedia/zf1-validate#285
Edit3: zf1-filter-input done! diablomedia/zf1-filter-input#290

I update our project's composer.json using these branches, and managed to have a green CI. Some functional tests will come later on.

@jaydiablo
Copy link
Member

@gnutix I've cut releases from all of those PRs above, so this should be set. If you need any other packages updated to support PHP 8.4 let me know and we can take a look. I'm not planning to run through all of them at this time, but this is a good start.

Thanks for your help on this!

@gnutix
Copy link
Author

gnutix commented Jan 11, 2025

Thank you!

@gnutix gnutix closed this as completed Jan 11, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants