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

Rebase October CMS on Laravel 6 #5234

Merged
merged 126 commits into from
Aug 9, 2020
Merged

Rebase October CMS on Laravel 6 #5234

merged 126 commits into from
Aug 9, 2020

Conversation

LukeTowers
Copy link
Contributor

Replaces #4893 because I hit the wrong button at 4am, go figure.

Fixes #4381. Related Rain library PR: octobercms/library#456. Related docs PR: octobercms/docs#446

This PR represents the current progress for rebasing October CMS on the Laravel 6 framework. This PR can be considered an "early beta" release. It is not recommended for use on production installations, however, we would encourage users to test this out on development copies in preparation for the upgrade.

Release notes and required changes can be found here.

New minimum requirements

  • PHP 7.2 or above.

Testing

We would appreciate any assistance with testing from the community. If you are interested in testing this out, please follow the below steps to quickly get a fresh instance of the CMS running.

Testing on existing projects

Follow the Upgrade Notes here: https://github.com/octoberrain/meta/blob/master/l6-upgrade-notes.md

Testing on fresh instance

  1. Download and unzip the Laravel 6 branch into a directory, or clone the repository and checkout the wip/laravel-6 branch.
  2. Install the Composer dependencies within the newly created folder.
    • Run composer install
  3. Generate a .env file.
    • Run php artisan october:env
  4. Change the following details in your .env file.
    • APP_URL: http://127.0.0.1:8000
    • APP_KEY: Run php artisan key:generate --show and copy and paste the value generated here.
    • DB_CONNECTION: sqlite
    • DB_DATABASE: storage/database.sqlite
  5. Create a new SQLite file in storage/database.sqlite.
    • Run touch storage/database.sqlite
  6. Run all the migrations to set up the database.
    • Run php artisan october:up
  7. Finally, serve the website.
    • Run php artisan serve

This will allow you to review the CMS in the following contexts:

Reporting bugs and issues

At this stage, do not create a new issue on GitHub if you spot any issues. Please report the issue as a comment to #4381, which we are using to track progress on the task.

Luke Towers and others added 30 commits June 12, 2019 02:25
…e and minimum password length requirements
…ers representing minutes as 5.8 changed integers into meaning seconds instead.
Temporarily removed the October subsplits until they are supporting L6.
Signature for the `where` method changes in L6, so a wrapper has been put in place.
This allows the home page to load.
As discussed with @daftspunk, we now have to hard-code some overrides to ensure our helpers are loaded first. To keep the code DRY and self-explanatory, we do need to keep the autoload.php file.
Luke Towers and others added 23 commits June 17, 2020 03:37
Will be fixed instead by octobercms/library#492 when it is merged.
Prevents conflicts with unit tests that might use another auth system, ie. Passport.

Hat tip to @LukeTowers for pointing out my shame.
A field widget that allows for entering of sensitive information that can be revealed at the user's request - ie. API keys, secrets.

When a sensitive field that has been previously populated is loaded again, a placeholder is used instead of the real value, until the user opts to reveal the value. The real value is loaded via AJAX.

Credit to @tomaszstrojny for the original implementation.

Replaces #5062. Fixes #5061, #1850, perhaps #1061.

Co-authored-by: Tomasz Strojny <tomasz@init.biz>
Co-authored-by: Luke Towers <github@luketowers.ca>
This will redirect any instances of the now-removed Input facade from Laravel to the Rain library's Input facade.
…5212)

Co-authored-by: Luke Towers <github@luketowers.ca>
…ersions from accidentally pulling in the L6 update
Instead of using a temporary file to allow checks with `realpath()` to succeed, use the new `resolve_path()` helper added in octobercms/library@a9a629b to replace the `realpath()` usage and allow for path resolution of files that don't exist yet.

This will allow new asset files to still be saved correctly, whilst still preventing paths outside of the assets directory to be used.

Replaces b1954e9.
@LukeTowers LukeTowers added this to the v1.0.469 milestone Aug 9, 2020
@LukeTowers LukeTowers merged commit 0ce104b into develop Aug 9, 2020
@bennothommo bennothommo deleted the wip/laravel-6 branch August 10, 2020 09:32
@bennothommo bennothommo restored the wip/laravel-6 branch August 10, 2020 09:36
@bennothommo bennothommo deleted the wip/laravel-6 branch August 10, 2020 09:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Development

Successfully merging this pull request may close these issues.

Move to Laravel 6
5 participants