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

Upgrade to Laravel 6 #721

Closed
2 of 22 tasks
mikemand opened this issue Sep 5, 2019 · 50 comments
Closed
2 of 22 tasks

Upgrade to Laravel 6 #721

mikemand opened this issue Sep 5, 2019 · 50 comments

Comments

@mikemand
Copy link
Contributor

mikemand commented Sep 5, 2019

This is more of a checklist for me than anything, but anyone can contribute if I missed something.

https://laravel.com/docs/6.0/upgrade

  • Update modules for 6.0 compatibility
  • Update asgardcms/platform
  • orchestra/testbench
  • phpunit
  • finally get rid of that filesystem test that always fails

Used packages:

  • floatingpoint/stylist
  • cartalyst/sentinel
  • nwidart/laravel-modules
  • laravelcollective/html
  • laracasts/presenter
  • dimsav/laravel-translatable => astrotomic/laravel-translatable App/Laravel - Dimsav/Translatable become Astrotomic/Translatable #771
  • mcamara/laravel-localization
  • maatwebsite/laravel-sidebar
  • intervention/image
  • nwidart/laravel-menus
  • typicms/nestablecollection
  • baryvdh/laravel-debugbar
  • maatwebsite/laravel-excel
  • league/csv
  • symfony/yaml
  • tightenco/ziggy
  • venturecraft/revisionable

For laravel-translatable, here's an "upgrade guide": https://docs.astrotomic.info/laravel-translatable/changelog#v-11-0-0

For me for later: https://twitter.com/stefanbauerme/status/1170092375894626304

Replace unmaintained Predis with PhpRedis: https://github.com/phpredis/phpredis/blob/develop/INSTALL.markdown Predis has been revived.

@dakshhmehta
Copy link

How can I contribute to this? Please do provide guideline on starting or assign me a task to work on. We are using Asgard on many of our production websites and ERP solutions we develop, my team of 3 developers happy to contribute here for benefits of community!

@abdallhsamy
Copy link

Could I help you to upgrade to laravel 7 latest version or at least 6 LTS version?

@dakshhmehta
Copy link

dakshhmehta commented Mar 9, 2020 via email

@ChristianGiupponi
Copy link
Contributor

any news?

@dakshhmehta
Copy link

dakshhmehta commented Mar 14, 2020 via email

@imagina
Copy link
Contributor

imagina commented Mar 16, 2020

Any news about it, we could help too. @nWidart ?

@nWidart
Copy link
Member

nWidart commented Mar 17, 2020

Hello,

Thank you for all your comments 🙏
What information is missing?

@mikemand what's the status of this PR?

@mikemand
Copy link
Contributor Author

Hi @nWidart,

I have not had a chance to even get started. So if people want to start picking modules to update that would be great.

Laravel 6 and 7 are pretty much interchangeable (just double-check the upgrade guide in the Laravel Docs), so we should be able to be compatible with both.

@abdallhsamy
Copy link

How can I contribute to this? Please do provide guideline on starting or assign me a task to work on. We are using Asgard on many of our production websites and ERP solutions we develop, my team of 3 developers happy to contribute here for benefits of community!
@dakshhmehta
https://asgardcms.com/docs/v3/getting-started/contributing

@dakshhmehta
Copy link

I will be picking up the few modules for the next week, shall update next Saturday.

Targetting:

  1. Core
  2. User

@abdallhsamy
Copy link

I will be picking up the few modules for the next week, shall update next Saturday.

Targetting:

  1. Core
  2. User

I guess you should upgrade packages first @dakshhmehta

@dakshhmehta
Copy link

dakshhmehta commented Apr 12, 2020 via email

@abdallhsamy
Copy link

Do you mean the composer dependencies?
@dakshhmehta yes

@arturmamedov
Copy link
Contributor

@dakshhmehta are you yet working on? Why not speaking about this on AsgardCMS Slack Chat http://slack.asgardcms.com/

@mkmita
Copy link

mkmita commented Jul 2, 2020

Is this project dead?

@dakshhmehta
Copy link

dakshhmehta commented Jul 3, 2020 via email

@mkmita
Copy link

mkmita commented Jul 3, 2020

I see latest one is 7.6 now https://github.com/laravel/laravel/blob/master/CHANGELOG.md

Do we plan to catch up on this?

Maybe you need any help and it would be possible to scale on this?

@imagina
Copy link
Contributor

imagina commented Jul 4, 2020

No. Upgrade is bit slow. I'm on it during the weekends. I personally myself using it in multiple production apps and never gonna let it die...

On Thu, 2 Jul 2020, 23:00 Mindaugas, @.***> wrote: Is this project dead? — You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub <#721 (comment)>, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAOAXQJMTEVO2X47B7KAJZTRZS747ANCNFSM4IUDSLFQ .

Is there a repo? we would like to help. We need to upgrade to Laravel 7 and we don't want to leave asgard behind but seems to be the way to go if we can't move forward...

Actually the only thing we use is nWidart/laravel-modules and the "Core" module (users, permissions) but we have our own admin interface in "Quasar Framework": https://github.com/quasarframework/quasar

@abdallhsamy
Copy link

@nWidart is this project dead ? I want to contribute to upgrade to latest Laravel 8 LTS

@dakshhmehta
Copy link

dakshhmehta commented Oct 6, 2020 via email

@nWidart
Copy link
Member

nWidart commented Oct 6, 2020

@abdallhsamy No, you can still contribute.

@joaonzangoII
Copy link

How far are we on this?

Managed to have Asgard work with Laravel 7 making some changes I guess we need to start updating the packages.

@dakshhmehta
Copy link

dakshhmehta commented Oct 12, 2020 via email

@imagina
Copy link
Contributor

imagina commented Oct 24, 2020

Anyone tried https://laravelshift.com ? seems like a solid option to update faster. What do you think?

@dakshhmehta
Copy link

dakshhmehta commented Oct 24, 2020 via email

@dakshhmehta
Copy link

dakshhmehta commented Oct 24, 2020

@joaonzangoII - I checked your profile but haven't got the repository. Can you share it with community if you manage to work on laravel 7, as I was still doing on 5.7 to 5.8, but if you got laravel 7 working, i guess, I should stop working on my branch and help you as you are ahead of me...

Thanks,
Daksh

@joaonzangoII
Copy link

@dakshhmehta I am still separating the logic from what is needed on the core models and what was the implementation for my Project, as soon as I am done I will let everyone know!

@jasonmccreary
Copy link

Appreciate the shoutout for Shift. While I am not personally familiar with AsgardCMS, it appears to be a Laravel application. As such, you could absolutely use Shift to upgrade it efficiently.

However, as others have commented, the additional package dependencies may have their own upgrade steps. You'll also need to configure Shift to look at the additional paths for the Laravel Modules.

With all that said, given the current state and number of dependencies of AsgardCMS, if I were using this, I'd probably look to replace it with Nova or some other, modern open-source CMS. No disrespect. Just my honest opinion.

if someone does embark on upgrading this, I'm willing to run the Shifts to do so free of charge. Just email support.

@dakshhmehta
Copy link

dakshhmehta commented Oct 29, 2020 via email

@imagina
Copy link
Contributor

imagina commented Nov 2, 2020

Thanks to @jasonmccreary I have an almost ready version of 5.8 after 2-3 hours of work. I'll be sending the PR later.

I'm in the mood to update to Laravel 8. Let's go!

@dakshhmehta
Copy link

dakshhmehta commented Nov 2, 2020 via email

@imagina
Copy link
Contributor

imagina commented Nov 3, 2020

Thank you @dakshhmehta. I think we should wait until i have the update working at least for Laravel 7.x

The first PR is ready waiting review from @nWidart with the update to 5.8: #791

I'm working in the update to 6.x. Thanks to @jasonmccreary I don't think it requires crazy work:
The shift for 6.x is at: imagina#2

I sent a PR to floatingpoint/stylist so their package is compatible with Laravel 6.x, 7.x and 8.x:
floatingpointsoftware/stylist#50

If they don't answer in the next few days I have a fork ready so I can keep working with the update to 6.x

@imagina
Copy link
Contributor

imagina commented Nov 3, 2020

I have good news, laravel 6.x update was successful. Tests passing: https://github.com/imagina/imaginacms-platform/pull/3/checks?check_run_id=1349797683

I had to fork floatingpointsoftware/stylist

Now i'm movin on to Laravel 7.x

@imagina
Copy link
Contributor

imagina commented Nov 3, 2020

Shift to Laravel 7.x it's ready: https://github.com/imagina/imaginacms-platform/tree/shift-35887

But i have a block @nWidart

https://github.com/nWidart/laravel-menus is not yet compatible but seems like you have a PR in the repository to support 7.x https://github.com/nWidart/laravel-menus/pull/55/files

Do you have the chance to check it ?

Regards

@dakshhmehta
Copy link

dakshhmehta commented Nov 4, 2020 via email

imagina added a commit to imagina/laravel-menus that referenced this issue Nov 4, 2020
@imagina
Copy link
Contributor

imagina commented Nov 5, 2020

Ok, update to Laravel 7 is up and working:

All tests are passing:
image

And /backend is loading:

image

If anyone wants to help testing please clone this branch: https://github.com/imagina/imaginacms-platform/tree/shift-35887

And install with the command:
COMPOSER=composer.travis.json composer install

That way you avoid the current modules.

@nWidart
Copy link
Member

nWidart commented Nov 5, 2020

Very good news!! 🎉

@abdallhsamy
Copy link

abdallhsamy commented Nov 5, 2020

If anyone wants to help testing please clone this branch: https://github.com/imagina/imaginacms-platform/tree/shift-35887

And install with the command:
COMPOSER=composer.travis.json composer install

That way you avoid the current modules.

@imagina I will

@imagina
Copy link
Contributor

imagina commented Nov 6, 2020

Hey everyone, the PR with the update to Laravel 7.29 is ready. I solved a couple of issues today.

Most of the admin area is tested in a new Asgard Install with PHP 7.2 with the current docker configuration and everything seems to be working.

Let me know if you find any issues.

#792

@abdallhsamy
Copy link

abdallhsamy commented Nov 6, 2020

image

@imagina
Copy link
Contributor

imagina commented Nov 7, 2020

Ok, i did the final update to Laravel 8. PR sent to @nWidart for review.

You can clone the following branch if you want to test:
https://github.com/imagina/imaginacms-platform/tree/upstream-master-for-8.x

@joaonzangoII
Copy link

@imagina I guess there should also be a change in version for the modules @nWidart whats your take on this?

@dakshhmehta
Copy link

dakshhmehta commented Nov 9, 2020

Laravel: 5.8.x
Branch: master

@imagina - the Translation module driver seems to be wrong as attached in screenshot.

image

Adding following in config/cache.php fixed the issue

 'translations' => [
            'driver' => 'array',
        ],

@imagina
Copy link
Contributor

imagina commented Nov 9, 2020

Hello @dakshhmehta , please test with the branch https://github.com/imagina/imaginacms-platform/tree/upstream-master-for-8.x

That's the final update to Laravel 8. I fixed a couple of issues with config files in that branch.

@abdallhsamy
Copy link

I think we should replace astrotomic/laravel-translatable because it makes the response very slow

@dakshhmehta
Copy link

dakshhmehta commented Nov 11, 2020 via email

@abdallhsamy
Copy link

abdallhsamy commented Nov 11, 2020

I did not try spatie/laravel-translatable but I think I should be better because it does not add more tables in database and does not need to use more queries for foriegn keys

@imagina
Copy link
Contributor

imagina commented Nov 11, 2020

astrotomic/laravel-translatable use an additional join per table but the data is easily searchable. Spatie saves everything in a column like json. In a medium-big site with multiples languages, astrotomic is much faster.

By the way, you can use spatie/laravel-translatable in any of your Modules entities if you don't need to search/filter the translated data.

@dakshhmehta
Copy link

dakshhmehta commented Nov 11, 2020 via email

@mikemand
Copy link
Contributor Author

Platform v4 is working with Laravel 8 now (see PR #793). I am going to close this since we skipped right over Laravel 6.

To upgrade your existing v4 applications to the latest, I suggest using a diff program (personally I use Beyond Compare) to go through everything in the root as well as in the following directories:

  • app
  • bootstrap
  • config
  • database
  • docker
  • public
  • resources
  • routes
  • storage
  • tests

You can either download/clone a copy of the current master branch from here or create a new Asgard v4 app to compare your existing one against.

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

10 participants