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

Laravel 11.x Shift #523

Open
wants to merge 71 commits into
base: master
Choose a base branch
from
Open

Laravel 11.x Shift #523

wants to merge 71 commits into from

Conversation

thekevinm
Copy link
Contributor

This pull request includes the changes for upgrading to Laravel 11.x. Feel free to commit any additional changes to the shift-124321 branch.

Before merging, you need to:

  • Checkout the shift-124321 branch
  • Review all pull request comments for additional changes
  • Run composer update (if the scripts fail, try with --no-scripts)
  • Clear any config, route, or view cache
  • Thoroughly test your application (no tests?, no CI?)

If you need help with your upgrade, check out the Human Shifts.

@thekevinm
Copy link
Contributor Author

ℹ️ To slim down the Laravel installation, Laravel 11 no longer has most of the core files previously included in the default Laravel application. While you are welcome to publish and customize these files, they are no longer required.

Shift takes an iterative approach to removing core files which are not customized or where its customizations may be done elsewhere in a modern Laravel 11 application. As such, you may see some commits removing files and others re-registering your customizations.

@thekevinm
Copy link
Contributor Author

⚠️ Shift detected a custom namespace. Laravel now recommends keeping the default App namespace. Unfortunately the app:name command was removed in Laravel 6.0. However, for the most part you may do a simple search and replace to change the namespace.

Shift recommends changing this to align with the latest Laravel conventions and improve Shift's automation. After doing so, you may request a rerun of this Shift.

@thekevinm
Copy link
Contributor Author

ℹ️ Laravel 9 moved the resources/lang folder to the top level of the project. While Shift automated this change, you may have additional references to the previous folder which need to be updated.

@thekevinm
Copy link
Contributor Author

ℹ️ Starting with Laravel 10, the lang folder is no longer included in a default Laravel application. Laravel now recursively merges any customizations with framework defaults.

Shift streamlined your language files by removing them since they did not contain any customizations. If you wish to keep the full set of language, Shift recommends running artisan config:publish --all --force to get the latest configuration files from Laravel 11, then reapplying the customizations Shift streamlined.

@thekevinm
Copy link
Contributor Author

ℹ️ Laravel 11 no longer requires you to maintain the default configuration files. Your configuration now merges with framework defaults.

Shift streamlined your configuration files by removing options that matched the Laravel defaults and preserving your true customizations. These are values which are not changeable through ENV variables.

If you wish to keep the full set of configuration files, Shift recommends running artisan config:publish --all --force to get the latest configuration files from Laravel 11, then reapplying the customizations Shift streamlined.

@thekevinm
Copy link
Contributor Author

ℹ️ Shift detected customized options within your configuration files which may be set with an ENV variable. To help keep your configuration files streamlined, you may set the following variables. Be sure adjust any values per environment.

APP_NAME=DreamFactory
ARGON_MEMORY=1024
ARGON_THREADS=2
ARGON_TIME=2
AUTH_MODEL=\DreamFactory\Core\Models\User
AUTH_PASSWORD_RESET_TOKEN_TABLE=password_resets
BCRYPT_ROUNDS=10
CACHE_STORE=file
DB_CACHE_CONNECTION=sqlite
DB_DATABASE=dreamfactory
DB_HOST=127.0.0.1
DB_USERNAME=
LOG_LEVEL=warning
LOG_STDERR_FORMATTER=Monolog\Formatter\LineFormatter
MAIL_MAILER=smtp
QUEUE_CONNECTION=sync
REDIS_CLIENT=predis
REDIS_QUEUE_CONNECTION=queue
SESSION_DRIVER=array
SESSION_SECURE_COOKIE=false

Note: some of these may simply be values which changed between Laravel versions. You may ignore any ENV variables you do not need to customize.

@thekevinm
Copy link
Contributor Author

ℹ️ Shift detected your application uses custom ENV variables for configuration options which have ENV variables in Laravel. Shift recommends renaming the following variables to use the one provided by Laravel:

  • APP_LOG_LEVEL to LOG_LEVEL
  • CACHE_PERSISTENT_ID to MEMCACHED_PERSISTENT_ID
  • CACHE_TABLE to DB_CACHE_TABLE
  • DB_CONNECTION to DB_CACHE_CONNECTION
  • FILESYSTEM_DRIVER to FILESYSTEM_DISK
  • QUEUE_HOST to BEANSTALKD_QUEUE_HOST
  • QUEUE_NAME to REDIS_QUEUE
  • QUEUE_RETRY_AFTER to REDIS_QUEUE_RETRY_AFTER
  • REDIS_DATABASE to REDIS_DB

@thekevinm
Copy link
Contributor Author

⚠️ The BROADCAST_DRIVER, CACHE_DRIVER, and DATABASE_URL environment variables were renamed in Laravel 11 to BROADCAST_CONNECTION, CACHE_STORE, and DB_URL, respectively.

Shift automated this change for your committed files, but you should review any additional locations where your environment is configured and update to the new variable names.

@thekevinm
Copy link
Contributor Author

❌ The bootstrap/app.php file has been completely rewritten in Laravel 11 to allow configuring your Laravel application in a single location. Shift overwrote your file, but detected it may have contained customizations. You should review the diff to see if any of your customizations are still needed.

Copy link

private-packagist bot commented Nov 25, 2024

composer.lock

Click to show 188 changes in this composer.lock file

Package changes

Package Operation From To About
carbonphp/carbon-doctrine-types add - 2.1.0 view code - License: MIT License
dreamfactory/df-admin-interface add - dev-develop 24c0592 view code - License: Apache License 2.0
dreamfactory/df-amqp add - dev-laravel-11 c0719f5 view code - License: proprietary
dreamfactory/df-mqtt add - dev-laravel-11 d972861 view code - License: proprietary
dreamfactory/df-pubsub add - 0.3.0 view code - License: proprietary
dreamfactory/installer add - 1.0.1 view code - License: Apache License 2.0
firebase/php-jwt add - v6.10.2 view code - License: BSD 3-Clause "New" or "Revised" License
laravel/prompts add - v0.3.2 view code - License: MIT License
myclabs/php-enum add - 1.8.4 view code - License: MIT License
php-amqplib/php-amqplib add - v3.7.2 view code - License: GNU Lesser General Public License v2.1 or later
php-mqtt/client add - v1.8.1 view code - License: MIT License
symfony/clock add - v7.2.0 view code - License: MIT License
aws/aws-crt-php upgrade v1.2.4 v1.2.7 diff
aws/aws-sdk-php upgrade 3.291.0 3.334.1 diff
bitbucket/client upgrade v4.1.0 v4.7.0 diff
brick/math upgrade 0.11.0 0.12.1 diff
clue/stream-filter upgrade v1.6.0 v1.7.0 diff
dflydev/dot-access-data upgrade v3.0.2 v3.0.3 diff
doctrine/dbal upgrade 3.7.2 3.9.3 diff
doctrine/deprecations upgrade 1.1.2 1.1.3 diff
doctrine/event-manager upgrade 2.0.0 2.0.1 diff
doctrine/inflector upgrade 2.0.8 2.0.10 diff
doctrine/lexer upgrade 3.0.0 3.0.1 diff
dragonmantank/cron-expression upgrade v3.3.3 v3.4.0 diff
dreamfactory/df-aws upgrade 0.18.0 dev-laravel-11 5d5db7c diff
dreamfactory/df-azure upgrade 0.17.0 dev-laravel-11 f1c000c diff
dreamfactory/df-cassandra upgrade 0.14.0 dev-laravel-11 a80446a diff
dreamfactory/df-core upgrade 1.0.3 dev-laravel-11 6769f89 diff
dreamfactory/df-couchdb upgrade 0.17.0 dev-laravel-11 b1966be diff
dreamfactory/df-database upgrade 1.1.0 dev-laravel-11 e2a04a0 diff
dreamfactory/df-email upgrade 0.11.0 dev-laravel-11 54859f8 diff
dreamfactory/df-firebird upgrade 0.9.0 dev-laravel-11 a6f1489 diff
dreamfactory/df-git upgrade 0.7.0 dev-laravel-11 4a41691 diff
dreamfactory/df-mongo-logs upgrade 1.2.0 dev-laravel-11 66d3b64 diff
dreamfactory/df-sqldb upgrade 1.1.0 dev-laravel-11 bb08e70 diff
graham-campbell/bitbucket upgrade v8.1.1 v10.4.0 diff
graham-campbell/bounded-cache upgrade v2.1.1 v2.2.0 diff
graham-campbell/github upgrade v10.6.0 v12.6.0 diff
graham-campbell/gitlab upgrade 5.6.x-dev 1b412f4 v7.5.0 diff
graham-campbell/manager upgrade v4.7.0 v5.1.0 diff
graham-campbell/result-type upgrade v1.1.2 v1.1.3 diff
guzzlehttp/guzzle upgrade 7.4.5 7.9.2 diff
guzzlehttp/promises upgrade 1.5.3 2.0.4 diff
guzzlehttp/psr7 upgrade 2.6.1 2.7.0 diff
guzzlehttp/uri-template upgrade v1.0.2 v1.0.3 diff
jenssegers/mongodb upgrade v3.9.5 4.8.1 diff
justinrainbow/json-schema upgrade v5.2.13 5.3.0 diff
knplabs/github-api upgrade v3.6.0 v3.14.1 diff
laravel/framework upgrade v9.52.16 ⚠️ v11.34.2 ✅ diff
laravel/helpers upgrade v1.6.0 v1.7.1 diff
laravel/serializable-closure upgrade v1.3.3 v2.0.0 diff
laravel/socialite upgrade v5.10.0 v5.16.0 diff
laravel/tinker upgrade v2.8.2 v2.10.0 diff
lcobucci/clock upgrade 3.0.0 3.3.1 diff
league/commonmark upgrade 2.4.1 ⚠️ 2.6.0 ✅ diff
league/flysystem upgrade 3.21.0 3.29.1 diff
league/flysystem-ftp upgrade 3.21.0 3.29.0 diff
league/flysystem-local upgrade 3.21.0 3.29.0 diff
league/flysystem-sftp-v3 upgrade 3.19.0 3.29.0 diff
league/mime-type-detection upgrade 1.14.0 1.16.0 diff
m4tthumphrey/php-gitlab-api upgrade 11.6.0 11.13.0 diff
mongodb/mongodb upgrade 1.17.0 1.20.0 diff
monolog/monolog upgrade 2.9.2 3.8.1 diff
mtdowling/jmespath.php upgrade 2.7.0 2.8.0 diff
nesbot/carbon upgrade 2.71.0 3.8.2 diff
nette/schema upgrade v1.2.5 v1.3.2 diff
nette/utils upgrade v4.0.3 v4.0.5 diff
nikic/php-parser upgrade v4.17.1 v5.3.1 diff
nunomaduro/termwind upgrade v1.15.1 v2.3.0 diff
paragonie/constant_time_encoding upgrade v2.6.3 v3.0.0 diff
php-http/client-common upgrade 2.7.0 2.7.2 diff
php-http/discovery upgrade 1.19.1 1.20.0 diff
php-http/guzzle7-adapter upgrade 1.0.0 1.1.0 diff
php-http/httplug upgrade 2.4.0 2.4.1 diff
php-http/message upgrade 1.16.0 1.16.2 diff
php-http/multipart-stream-builder upgrade 1.3.0 1.4.2 diff
php-http/promise upgrade 1.2.1 1.3.1 diff
php-opencloud/openstack upgrade v3.3.0 v3.10.0 diff
phpoption/phpoption upgrade 1.9.2 1.9.3 diff
phpseclib/phpseclib upgrade 3.0.34 ⚠️ 3.0.42 ✅ diff
psr/http-factory upgrade 1.0.2 1.1.0 diff
psr/http-message upgrade 1.1 2.0 diff
psr/log upgrade 3.0.0 3.0.2 diff
psy/psysh upgrade v0.11.22 v0.12.5 diff
ramsey/uuid upgrade 4.7.5 4.7.6 diff
sabre/dav upgrade 4.5.1 4.7.0 diff
sabre/event upgrade 5.1.4 5.1.7 diff
sabre/http upgrade 5.1.10 5.1.12 diff
sabre/uri upgrade 2.3.3 2.3.4 diff
sabre/vobject upgrade 4.5.4 4.5.6 diff
sabre/xml upgrade 2.2.6 2.2.11 diff
socialiteproviders/manager upgrade v4.4.0 v4.7.0 diff
spatie/laravel-http-logger upgrade 1.10.2 1.11.0 diff
symfony/cache upgrade v6.3.8 v7.2.0 diff
symfony/cache-contracts upgrade v3.4.0 v3.5.1 diff
symfony/console upgrade v6.3.8 v7.2.0 diff
symfony/css-selector upgrade v5.4.26 v7.2.0 diff
symfony/deprecation-contracts upgrade v3.4.0 v3.5.1 diff
symfony/error-handler upgrade v6.3.5 v7.2.0 diff
symfony/event-dispatcher upgrade v6.3.2 v7.2.0 diff
symfony/event-dispatcher-contracts upgrade v3.4.0 v3.5.1 diff
symfony/finder upgrade v6.3.5 v7.2.0 diff
symfony/http-client upgrade v6.1.12 ⚠️ v6.4.16 ✅ diff
symfony/http-client-contracts upgrade v3.4.0 v3.5.1 diff
symfony/http-foundation upgrade v6.3.8 ⚠️ v7.2.0 ✅ diff
symfony/http-kernel upgrade v6.3.8 v7.2.0 diff
symfony/mailer upgrade v6.1.11 v7.2.0 diff
symfony/mailgun-mailer upgrade v6.1.11 v7.2.0 diff
symfony/mime upgrade v6.3.5 v7.2.0 diff
symfony/options-resolver upgrade v6.3.0 v7.2.0 diff
symfony/polyfill-apcu upgrade v1.28.0 v1.31.0 diff
symfony/polyfill-ctype upgrade v1.28.0 v1.31.0 diff
symfony/polyfill-intl-grapheme upgrade v1.28.0 v1.31.0 diff
symfony/polyfill-intl-idn upgrade v1.28.0 v1.31.0 diff
symfony/polyfill-intl-normalizer upgrade v1.28.0 v1.31.0 diff
symfony/polyfill-mbstring upgrade v1.28.0 v1.31.0 diff
symfony/polyfill-php80 upgrade v1.28.0 v1.31.0 diff
symfony/polyfill-php81 upgrade v1.28.0 v1.31.0 diff
symfony/polyfill-php83 upgrade v1.28.0 v1.31.0 diff
symfony/polyfill-uuid upgrade v1.28.0 v1.31.0 diff
symfony/process upgrade v6.3.4 ⚠️ v7.2.0 ✅ diff
symfony/routing upgrade v6.3.5 v7.2.0 diff
symfony/service-contracts upgrade v3.4.0 v3.5.1 diff
symfony/string upgrade v6.3.8 v7.2.0 diff
symfony/translation upgrade v6.3.7 v7.2.0 diff
symfony/translation-contracts upgrade v3.4.0 v3.5.1 diff
symfony/uid upgrade v6.3.8 v7.2.0 diff
symfony/var-dumper upgrade v6.3.8 v7.2.0 diff
symfony/var-exporter upgrade v6.3.6 v7.2.0 diff
symfony/yaml upgrade v6.3.8 v6.4.13 diff
tijsverkoyen/css-to-inline-styles upgrade 2.2.6 v2.2.7 diff
tymon/jwt-auth upgrade 1.0.x-dev 014be8d 2.1.1 diff
vlucas/phpdotenv upgrade v5.6.0 v5.6.1 diff
voku/portable-ascii upgrade 2.0.1 2.0.3 diff
dreamfactory/df-graphql remove 0.5.0 - -
dreamfactory/df-rws remove 0.18.1 - -
fideloper/proxy remove 4.4.2 - -
jean85/pretty-package-versions remove 2.0.5 - -
namshi/jose remove 7.2.3 - -
symfony/polyfill-php56 remove v1.20.0 - -
symfony/polyfill-php72 remove v1.28.0 - -
webonyx/graphql-php remove v14.11.10 - -

Dev Package changes

Package Operation From To About
barryvdh/laravel-ide-helper upgrade v2.13.0 v3.2.2 diff
barryvdh/reflection-docblock upgrade v2.1.1 v2.1.3 diff
composer/class-map-generator upgrade 1.1.0 1.5.0 diff
composer/pcre upgrade 3.1.1 3.3.2 diff
fakerphp/faker upgrade v1.23.0 v1.24.1 diff
filp/whoops upgrade 2.15.4 2.16.0 diff
laravel/homestead upgrade v13.3.2 v15.0.3 diff
mockery/mockery upgrade 1.6.6 1.6.12 diff
myclabs/deep-copy upgrade 1.11.1 1.12.1 diff
nunomaduro/collision upgrade v6.4.0 v8.5.0 diff
phar-io/manifest upgrade 2.0.3 2.0.4 diff
phpdocumentor/type-resolver upgrade 1.7.3 1.10.0 diff
phpstan/phpdoc-parser upgrade 1.24.4 2.0.0 diff
phpunit/php-code-coverage upgrade 9.2.29 10.1.16 diff
phpunit/php-file-iterator upgrade 3.0.6 4.1.0 diff
phpunit/php-invoker upgrade 3.1.1 4.0.0 diff
phpunit/php-text-template upgrade 2.0.4 3.0.1 diff
phpunit/php-timer upgrade 5.0.3 6.0.0 diff
phpunit/phpunit upgrade 9.6.13 10.5.38 diff
sebastian/cli-parser upgrade 1.0.1 2.0.1 diff
sebastian/code-unit upgrade 1.0.8 2.0.0 diff
sebastian/code-unit-reverse-lookup upgrade 2.0.3 3.0.0 diff
sebastian/comparator upgrade 4.0.8 5.0.3 diff
sebastian/complexity upgrade 2.0.2 3.2.0 diff
sebastian/diff upgrade 4.0.5 5.1.1 diff
sebastian/environment upgrade 5.1.5 6.1.0 diff
sebastian/exporter upgrade 4.0.5 5.1.2 diff
sebastian/global-state upgrade 5.0.6 6.0.2 diff
sebastian/lines-of-code upgrade 1.0.3 2.0.2 diff
sebastian/object-enumerator upgrade 4.0.4 5.0.0 diff
sebastian/object-reflector upgrade 2.0.4 3.0.0 diff
sebastian/recursion-context upgrade 4.0.5 5.0.0 diff
sebastian/type upgrade 3.2.1 4.0.0 diff
sebastian/version upgrade 3.0.2 4.0.1 diff
theseer/tokenizer upgrade 1.2.2 1.2.3 diff
doctrine/instantiator remove 2.0.0 - -
laracasts/generators remove 2.0.2 - -
sebastian/resource-operations remove 3.0.3 - -
spatie/backtrace remove 1.5.3 - -
spatie/flare-client-php remove 1.4.3 - -
spatie/ignition remove 1.11.3 - -
spatie/laravel-ignition remove 1.6.4 - -

Important Metadata Changes

Package Version Metadata From To
jenssegers/mongodb 4.8.1 dist url https://api.github.com/repos/jenssegers/laravel-mongodb/zipball/6ce35ace85a5946f943d7f493f93aebb9a6d129d https://api.github.com/repos/mongodb/laravel-mongodb/zipball/da3a46a1b4ca25117c1d388dd6348206d04e4a9f
jenssegers/mongodb 4.8.1 source url https://github.com/jenssegers/laravel-mongodb.git https://github.com/mongodb/laravel-mongodb.git
justinrainbow/json-schema 5.3.0 dist url https://api.github.com/repos/justinrainbow/json-schema/zipball/fbbe7e5d79f618997bc3332a6f49246036c45793 https://api.github.com/repos/jsonrainbow/json-schema/zipball/feb2ca6dd1cebdaf1ed60a4c8de2e53ce11c4fd8
justinrainbow/json-schema 5.3.0 source url https://github.com/justinrainbow/json-schema.git https://github.com/jsonrainbow/json-schema.git

Settings · Docs · Powered by Private Packagist

Copy link

The composer.lock diff comment has been updated to reflect new changes in this PR.

Copy link

The composer.lock diff comment has been updated to reflect new changes in this PR.

Copy link

The composer.lock diff comment has been updated to reflect new changes in this PR.

Copy link

The composer.lock diff comment has been updated to reflect new changes in this PR.

Copy link

The composer.lock diff comment has been updated to reflect new changes in this PR.

Copy link

The composer.lock diff comment has been updated to reflect new changes in this PR.

2 similar comments
Copy link

The composer.lock diff comment has been updated to reflect new changes in this PR.

Copy link

The composer.lock diff comment has been updated to reflect new changes in this PR.

Copy link

The composer.lock diff comment has been updated to reflect new changes in this PR.

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

Successfully merging this pull request may close these issues.

2 participants