mirror of
https://github.com/InvoiceShelf/InvoiceShelf.git
synced 2026-04-19 11:14:06 +00:00
Upgrading to Laravel 12 (#346)
* Upgrading to Laravel 12 * Upgrade lockfile * Keep the old local filesystem driver base path --------- Co-authored-by: Darko Gjorgjijoski <5760249+gdarko@users.noreply.github.com> Co-authored-by: Darko Gjorgjijoski <dg@darkog.com>
This commit is contained in:
@@ -17,33 +17,33 @@
|
|||||||
"gotenberg/gotenberg-php": "^2.8",
|
"gotenberg/gotenberg-php": "^2.8",
|
||||||
"invoiceshelf/modules": "^1.0.0",
|
"invoiceshelf/modules": "^1.0.0",
|
||||||
"jasonmccreary/laravel-test-assertions": "^v2.4",
|
"jasonmccreary/laravel-test-assertions": "^v2.4",
|
||||||
"laravel/framework": "^11.31",
|
"laravel/framework": "^12.0",
|
||||||
"laravel/helpers": "^1.7",
|
"laravel/helpers": "^1.7",
|
||||||
"laravel/sanctum": "^4.0",
|
"laravel/sanctum": "^4.0",
|
||||||
"laravel/tinker": "^2.9",
|
"laravel/tinker": "^2.10.1",
|
||||||
"laravel/ui": "^4.6",
|
"laravel/ui": "^4.6",
|
||||||
"lavary/laravel-menu": "^1.8",
|
"lavary/laravel-menu": "^1.8",
|
||||||
"league/flysystem-aws-s3-v3": "^3.29",
|
"league/flysystem-aws-s3-v3": "^3.29",
|
||||||
"predis/predis": "^2.3",
|
"predis/predis": "^2.3",
|
||||||
"silber/bouncer": "v1.0.2",
|
"silber/bouncer": "v1.0.3",
|
||||||
"spatie/flysystem-dropbox": "^3.0",
|
"spatie/flysystem-dropbox": "^3.0",
|
||||||
"spatie/laravel-backup": "^8.8",
|
"spatie/laravel-backup": "^9.2.9",
|
||||||
"spatie/laravel-medialibrary": "^11.11",
|
"spatie/laravel-medialibrary": "^11.11",
|
||||||
"vinkla/hashids": "^12.0"
|
"vinkla/hashids": "^13.0.0"
|
||||||
},
|
},
|
||||||
"require-dev": {
|
"require-dev": {
|
||||||
"fakerphp/faker": "^1.23",
|
|
||||||
"laravel/pint": "^1.13",
|
|
||||||
"laravel/sail": "^1.26",
|
|
||||||
"mockery/mockery": "^1.6",
|
|
||||||
"nunomaduro/collision": "^8.1",
|
|
||||||
"phpunit/phpunit": "^11.0.1",
|
|
||||||
"spatie/laravel-ignition": "^2.9",
|
|
||||||
"barryvdh/laravel-ide-helper": "^3.5",
|
"barryvdh/laravel-ide-helper": "^3.5",
|
||||||
"beyondcode/laravel-dump-server": "^2.0.0",
|
"beyondcode/laravel-dump-server": "^2.0.0",
|
||||||
"pestphp/pest": "^3.7",
|
"fakerphp/faker": "^1.23",
|
||||||
|
"laravel/pint": "^1.13",
|
||||||
|
"laravel/sail": "^1.41",
|
||||||
|
"mockery/mockery": "^1.6",
|
||||||
|
"nunomaduro/collision": "^8.6",
|
||||||
|
"pestphp/pest": "^3.8",
|
||||||
"pestphp/pest-plugin-faker": "^3.0",
|
"pestphp/pest-plugin-faker": "^3.0",
|
||||||
"pestphp/pest-plugin-laravel": "^3.0"
|
"pestphp/pest-plugin-laravel": "^3.1",
|
||||||
|
"phpunit/phpunit": "^11.5.3",
|
||||||
|
"spatie/laravel-ignition": "^2.9"
|
||||||
},
|
},
|
||||||
"autoload": {
|
"autoload": {
|
||||||
"psr-4": {
|
"psr-4": {
|
||||||
@@ -61,20 +61,32 @@
|
|||||||
"Tests\\": "tests/"
|
"Tests\\": "tests/"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"minimum-stability": "dev",
|
|
||||||
"prefer-stable": true,
|
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"post-autoload-dump": [
|
"post-autoload-dump": [
|
||||||
"Illuminate\\Foundation\\ComposerScripts::postAutoloadDump",
|
"Illuminate\\Foundation\\ComposerScripts::postAutoloadDump",
|
||||||
"@php artisan package:discover --ansi"
|
"@php artisan package:discover --ansi"
|
||||||
],
|
],
|
||||||
|
"post-update-cmd": [
|
||||||
|
"@php artisan vendor:publish --tag=laravel-assets --ansi --force"
|
||||||
|
],
|
||||||
"post-root-package-install": [
|
"post-root-package-install": [
|
||||||
"@php -r \"file_exists('.env') || copy('.env.example', '.env');\""
|
"@php -r \"file_exists('.env') || copy('.env.example', '.env');\""
|
||||||
],
|
],
|
||||||
"post-create-project-cmd": [
|
"post-create-project-cmd": [
|
||||||
"@php artisan key:generate --ansi"
|
"@php artisan key:generate --ansi",
|
||||||
|
"@php -r \"file_exists('database/database.sqlite') || touch('database/database.sqlite');\"",
|
||||||
|
"@php artisan migrate --graceful --ansi"
|
||||||
|
],
|
||||||
|
"dev": [
|
||||||
|
"Composer\\Config::disableProcessTimeout",
|
||||||
|
"npx concurrently -c \"#93c5fd,#c4b5fd,#fb7185,#fdba74\" \"php artisan serve\" \"php artisan queue:listen --tries=1\" \"php artisan pail --timeout=0\" \"npm run dev\" --names=server,queue,logs,vite"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
"extra": {
|
||||||
|
"laravel": {
|
||||||
|
"dont-discover": []
|
||||||
|
}
|
||||||
|
},
|
||||||
"config": {
|
"config": {
|
||||||
"optimize-autoloader": true,
|
"optimize-autoloader": true,
|
||||||
"preferred-install": "dist",
|
"preferred-install": "dist",
|
||||||
@@ -84,9 +96,6 @@
|
|||||||
"php-http/discovery": true
|
"php-http/discovery": true
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"extra": {
|
"minimum-stability": "stable",
|
||||||
"laravel": {
|
"prefer-stable": true
|
||||||
"dont-discover": []
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|||||||
591
composer.lock
generated
591
composer.lock
generated
File diff suppressed because it is too large
Load Diff
@@ -3,7 +3,6 @@
|
|||||||
return [
|
return [
|
||||||
|
|
||||||
'backup' => [
|
'backup' => [
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* The name of this application. You can use this name to monitor
|
* The name of this application. You can use this name to monitor
|
||||||
* the backups.
|
* the backups.
|
||||||
@@ -11,9 +10,7 @@ return [
|
|||||||
'name' => env('APP_NAME', 'laravel-backup'),
|
'name' => env('APP_NAME', 'laravel-backup'),
|
||||||
|
|
||||||
'source' => [
|
'source' => [
|
||||||
|
|
||||||
'files' => [
|
'files' => [
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* The list of directories and files that will be included in the backup.
|
* The list of directories and files that will be included in the backup.
|
||||||
*/
|
*/
|
||||||
@@ -29,7 +26,6 @@ return [
|
|||||||
'exclude' => [
|
'exclude' => [
|
||||||
base_path('vendor'),
|
base_path('vendor'),
|
||||||
base_path('node_modules'),
|
base_path('node_modules'),
|
||||||
base_path('.git'),
|
|
||||||
],
|
],
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@@ -41,6 +37,13 @@ return [
|
|||||||
* Determines if it should avoid unreadable folders.
|
* Determines if it should avoid unreadable folders.
|
||||||
*/
|
*/
|
||||||
'ignore_unreadable_directories' => false,
|
'ignore_unreadable_directories' => false,
|
||||||
|
|
||||||
|
/*
|
||||||
|
* This path is used to make directories in resulting zip-file relative
|
||||||
|
* Set to `null` to include complete absolute path
|
||||||
|
* Example: base_path()
|
||||||
|
*/
|
||||||
|
'relative_path' => null,
|
||||||
],
|
],
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@@ -79,7 +82,7 @@ return [
|
|||||||
],
|
],
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* The database dump can be compressed to decrease diskspace usage.
|
* The database dump can be compressed to decrease disk space usage.
|
||||||
*
|
*
|
||||||
* Out of the box Laravel-backup supplies
|
* Out of the box Laravel-backup supplies
|
||||||
* Spatie\DbDumper\Compressors\GzipCompressor::class.
|
* Spatie\DbDumper\Compressors\GzipCompressor::class.
|
||||||
@@ -91,7 +94,53 @@ return [
|
|||||||
*/
|
*/
|
||||||
'database_dump_compressor' => null,
|
'database_dump_compressor' => null,
|
||||||
|
|
||||||
|
/*
|
||||||
|
* If specified, the database dumped file name will contain a timestamp (e.g.: 'Y-m-d-H-i-s').
|
||||||
|
*/
|
||||||
|
'database_dump_file_timestamp_format' => null,
|
||||||
|
|
||||||
|
/*
|
||||||
|
* The base of the dump filename, either 'database' or 'connection'
|
||||||
|
*
|
||||||
|
* If 'database' (default), the dumped filename will contain the database name.
|
||||||
|
* If 'connection', the dumped filename will contain the connection name.
|
||||||
|
*/
|
||||||
|
'database_dump_filename_base' => 'database',
|
||||||
|
|
||||||
|
/*
|
||||||
|
* The file extension used for the database dump files.
|
||||||
|
*
|
||||||
|
* If not specified, the file extension will be .archive for MongoDB and .sql for all other databases
|
||||||
|
* The file extension should be specified without a leading .
|
||||||
|
*/
|
||||||
|
'database_dump_file_extension' => '',
|
||||||
|
|
||||||
'destination' => [
|
'destination' => [
|
||||||
|
/*
|
||||||
|
* The compression algorithm to be used for creating the zip archive.
|
||||||
|
*
|
||||||
|
* If backing up only database, you may choose gzip compression for db dump and no compression at zip.
|
||||||
|
*
|
||||||
|
* Some common algorithms are listed below:
|
||||||
|
* ZipArchive::CM_STORE (no compression at all; set 0 as compression level)
|
||||||
|
* ZipArchive::CM_DEFAULT
|
||||||
|
* ZipArchive::CM_DEFLATE
|
||||||
|
* ZipArchive::CM_BZIP2
|
||||||
|
* ZipArchive::CM_XZ
|
||||||
|
*
|
||||||
|
* For more check https://www.php.net/manual/zip.constants.php and confirm it's supported by your system.
|
||||||
|
*/
|
||||||
|
'compression_method' => ZipArchive::CM_DEFAULT,
|
||||||
|
|
||||||
|
/*
|
||||||
|
* The compression level corresponding to the used algorithm; an integer between 0 and 9.
|
||||||
|
*
|
||||||
|
* Check supported levels for the chosen algorithm, usually 1 means the fastest and weakest compression,
|
||||||
|
* while 9 the slowest and strongest one.
|
||||||
|
*
|
||||||
|
* Setting of 0 for some algorithms may switch to the strongest compression.
|
||||||
|
*/
|
||||||
|
'compression_level' => 9,
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* The filename prefix used for the backup zip file.
|
* The filename prefix used for the backup zip file.
|
||||||
@@ -110,24 +159,49 @@ return [
|
|||||||
* The directory where the temporary files will be stored.
|
* The directory where the temporary files will be stored.
|
||||||
*/
|
*/
|
||||||
'temporary_directory' => storage_path('app/backup-temp'),
|
'temporary_directory' => storage_path('app/backup-temp'),
|
||||||
|
|
||||||
|
/*
|
||||||
|
* The password to be used for archive encryption.
|
||||||
|
* Set to `null` to disable encryption.
|
||||||
|
*/
|
||||||
|
'password' => env('BACKUP_ARCHIVE_PASSWORD'),
|
||||||
|
|
||||||
|
/*
|
||||||
|
* The encryption algorithm to be used for archive encryption.
|
||||||
|
* You can set it to `null` or `false` to disable encryption.
|
||||||
|
*
|
||||||
|
* When set to 'default', we'll use ZipArchive::EM_AES_256 if it is
|
||||||
|
* available on your system.
|
||||||
|
*/
|
||||||
|
'encryption' => 'default',
|
||||||
|
|
||||||
|
/*
|
||||||
|
* The number of attempts, in case the backup command encounters an exception
|
||||||
|
*/
|
||||||
|
'tries' => 1,
|
||||||
|
|
||||||
|
/*
|
||||||
|
* The number of seconds to wait before attempting a new backup if the previous try failed
|
||||||
|
* Set to `0` for none
|
||||||
|
*/
|
||||||
|
'retry_delay' => 0,
|
||||||
],
|
],
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* You can get notified when specific events occur. Out of the box you can use 'mail' and 'slack'.
|
* You can get notified when specific events occur. Out of the box you can use 'mail' and 'slack'.
|
||||||
* For Slack you need to install guzzlehttp/guzzle and laravel/slack-notification-channel.
|
* For Slack you need to install laravel/slack-notification-channel.
|
||||||
*
|
*
|
||||||
* You can also use your own notification classes, just make sure the class is named after one of
|
* You can also use your own notification classes, just make sure the class is named after one of
|
||||||
* the `Spatie\Backup\Events` classes.
|
* the `Spatie\Backup\Notifications\Notifications` classes.
|
||||||
*/
|
*/
|
||||||
'notifications' => [
|
'notifications' => [
|
||||||
|
|
||||||
'notifications' => [
|
'notifications' => [
|
||||||
\Spatie\Backup\Notifications\Notifications\BackupHasFailed::class => [],
|
\Spatie\Backup\Notifications\Notifications\BackupHasFailedNotification::class => ['mail'],
|
||||||
\Spatie\Backup\Notifications\Notifications\UnhealthyBackupWasFound::class => [],
|
\Spatie\Backup\Notifications\Notifications\UnhealthyBackupWasFoundNotification::class => ['mail'],
|
||||||
\Spatie\Backup\Notifications\Notifications\CleanupHasFailed::class => [],
|
\Spatie\Backup\Notifications\Notifications\CleanupHasFailedNotification::class => ['mail'],
|
||||||
\Spatie\Backup\Notifications\Notifications\BackupWasSuccessful::class => [],
|
\Spatie\Backup\Notifications\Notifications\BackupWasSuccessfulNotification::class => ['mail'],
|
||||||
\Spatie\Backup\Notifications\Notifications\HealthyBackupWasFound::class => [],
|
\Spatie\Backup\Notifications\Notifications\HealthyBackupWasFoundNotification::class => ['mail'],
|
||||||
\Spatie\Backup\Notifications\Notifications\CleanupWasSuccessful::class => [],
|
\Spatie\Backup\Notifications\Notifications\CleanupWasSuccessfulNotification::class => ['mail'],
|
||||||
],
|
],
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@@ -156,7 +230,20 @@ return [
|
|||||||
'username' => null,
|
'username' => null,
|
||||||
|
|
||||||
'icon' => null,
|
'icon' => null,
|
||||||
|
],
|
||||||
|
|
||||||
|
'discord' => [
|
||||||
|
'webhook_url' => '',
|
||||||
|
|
||||||
|
/*
|
||||||
|
* If this is an empty string, the name field on the webhook will be used.
|
||||||
|
*/
|
||||||
|
'username' => '',
|
||||||
|
|
||||||
|
/*
|
||||||
|
* If this is an empty string, the avatar on the webhook will be used.
|
||||||
|
*/
|
||||||
|
'avatar_url' => '',
|
||||||
],
|
],
|
||||||
],
|
],
|
||||||
|
|
||||||
@@ -200,42 +287,55 @@ return [
|
|||||||
'strategy' => \Spatie\Backup\Tasks\Cleanup\Strategies\DefaultStrategy::class,
|
'strategy' => \Spatie\Backup\Tasks\Cleanup\Strategies\DefaultStrategy::class,
|
||||||
|
|
||||||
'default_strategy' => [
|
'default_strategy' => [
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* The number of days for which backups must be kept.
|
* The number of days for which backups must be kept.
|
||||||
*/
|
*/
|
||||||
'keep_all_backups_for_days' => 7,
|
'keep_all_backups_for_days' => 7,
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* The number of days for which daily backups must be kept.
|
* After the "keep_all_backups_for_days" period is over, the most recent backup
|
||||||
|
* of that day will be kept. Older backups within the same day will be removed.
|
||||||
|
* If you create backups only once a day, no backups will be removed yet.
|
||||||
*/
|
*/
|
||||||
'keep_daily_backups_for_days' => 16,
|
'keep_daily_backups_for_days' => 16,
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* The number of weeks for which one weekly backup must be kept.
|
* After the "keep_daily_backups_for_days" period is over, the most recent backup
|
||||||
|
* of that week will be kept. Older backups within the same week will be removed.
|
||||||
|
* If you create backups only once a week, no backups will be removed yet.
|
||||||
*/
|
*/
|
||||||
'keep_weekly_backups_for_weeks' => 8,
|
'keep_weekly_backups_for_weeks' => 8,
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* The number of months for which one monthly backup must be kept.
|
* After the "keep_weekly_backups_for_weeks" period is over, the most recent backup
|
||||||
|
* of that month will be kept. Older backups within the same month will be removed.
|
||||||
*/
|
*/
|
||||||
'keep_monthly_backups_for_months' => 4,
|
'keep_monthly_backups_for_months' => 4,
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* The number of years for which one yearly backup must be kept.
|
* After the "keep_monthly_backups_for_months" period is over, the most recent backup
|
||||||
|
* of that year will be kept. Older backups within the same year will be removed.
|
||||||
*/
|
*/
|
||||||
'keep_yearly_backups_for_years' => 2,
|
'keep_yearly_backups_for_years' => 2,
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* After cleaning up the backups remove the oldest backup until
|
* After cleaning up the backups remove the oldest backup until
|
||||||
* this amount of megabytes has been reached.
|
* this amount of megabytes has been reached.
|
||||||
|
* Set null for unlimited size.
|
||||||
*/
|
*/
|
||||||
'delete_oldest_backups_when_using_more_megabytes_than' => 5000,
|
'delete_oldest_backups_when_using_more_megabytes_than' => 5000,
|
||||||
],
|
],
|
||||||
],
|
|
||||||
|
|
||||||
'queue' => [
|
/*
|
||||||
'name' => env('BACKUP_QUEUE_NAME', 'backup'),
|
* The number of attempts, in case the cleanup command encounters an exception
|
||||||
|
*/
|
||||||
|
'tries' => 1,
|
||||||
|
|
||||||
|
/*
|
||||||
|
* The number of seconds to wait before attempting a new cleanup if the previous try failed
|
||||||
|
* Set to `0` for none
|
||||||
|
*/
|
||||||
|
'retry_delay' => 0,
|
||||||
],
|
],
|
||||||
|
|
||||||
];
|
];
|
||||||
|
|||||||
@@ -60,6 +60,13 @@ return [
|
|||||||
'driver' => 'local',
|
'driver' => 'local',
|
||||||
'root' => storage_path('app/templates/pdf'),
|
'root' => storage_path('app/templates/pdf'),
|
||||||
],
|
],
|
||||||
|
|
||||||
|
'local' => [
|
||||||
|
'driver' => 'local',
|
||||||
|
'root' => storage_path('app'),
|
||||||
|
'throw' => false,
|
||||||
|
'report' => false,
|
||||||
|
],
|
||||||
],
|
],
|
||||||
|
|
||||||
];
|
];
|
||||||
|
|||||||
Reference in New Issue
Block a user