build: update CI to 4.5.3 + php and js dependencies to latest

This commit is contained in:
Yassine Doghri 2024-07-01 16:14:12 +00:00
parent b129813ea5
commit e9e5acb862
14 changed files with 2318 additions and 1550 deletions

View File

@ -71,8 +71,8 @@ experience the problem? What would you expect to be the outcome? All these
details will help people to fix any potential bugs. details will help people to fix any potential bugs.
> [!NOTE] > [!NOTE]
> [Issue templates](https://docs.gitlab.com/ee/user/project/description_templates.html#using-the-templates) > [Issue templates](https://docs.gitlab.com/ee/user/project/description_templates.html#using-the-templates) have
> have been created for this project. You may use them to help you follow those > been created for this project. You may use them to help you follow those
> guidelines. > guidelines.
## Feature requests ## Feature requests

View File

@ -62,12 +62,10 @@ class Exceptions extends BaseConfig
/** /**
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
* LOG DEPRECATIONS INSTEAD OF THROWING? * WHETHER TO THROW AN EXCEPTION ON DEPRECATED ERRORS
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
* By default, CodeIgniter converts deprecations into exceptions. Also, * If set to `true`, DEPRECATED errors are only logged and no exceptions are
* starting in PHP 8.1 will cause a lot of deprecated usage warnings. * thrown. This option also works for user deprecations.
* Use this option to temporarily cease the warnings and instead log those.
* This option also works for user deprecations.
*/ */
public bool $logDeprecations = true; public bool $logDeprecations = true;

View File

@ -537,8 +537,7 @@ if (! function_exists('array_to_rss')) {
); );
if (array_key_exists('attributes', $childArrayNode)) { if (array_key_exists('attributes', $childArrayNode)) {
foreach ( foreach (
$childArrayNode['attributes'] $childArrayNode['attributes'] as $attributeKey => $attributeValue
as $attributeKey => $attributeValue
) { ) {
$childXmlNode->addAttribute($attributeKey, $attributeValue); $childXmlNode->addAttribute($attributeKey, $attributeValue);
} }

View File

@ -9,20 +9,20 @@
"php": "^8.1", "php": "^8.1",
"adaures/ipcat-php": "^v1.0.0", "adaures/ipcat-php": "^v1.0.0",
"adaures/podcast-persons-taxonomy": "^v1.0.1", "adaures/podcast-persons-taxonomy": "^v1.0.1",
"aws/aws-sdk-php": "^3.305.4", "aws/aws-sdk-php": "^3.315.2",
"chrisjean/php-ico": "^1.0.4", "chrisjean/php-ico": "^1.0.4",
"cocur/slugify": "^v4.5.1", "cocur/slugify": "^v4.5.1",
"codeigniter4/framework": "v4.5.1", "codeigniter4/framework": "v4.5.3",
"codeigniter4/settings": "v2.2.0", "codeigniter4/settings": "v2.2.0",
"codeigniter4/shield": "v1.0.3", "codeigniter4/shield": "v1.1.0",
"codeigniter4/tasks": "dev-develop", "codeigniter4/tasks": "dev-develop",
"geoip2/geoip2": "v3.0.0", "geoip2/geoip2": "v3.0.0",
"james-heinrich/getid3": "^2.0.0-beta5", "james-heinrich/getid3": "^2.0.0-beta6",
"league/commonmark": "^2.4.2", "league/commonmark": "^2.4.2",
"league/html-to-markdown": "5.1.1", "league/html-to-markdown": "5.1.1",
"melbahja/seo": "^v2.1.1", "melbahja/seo": "^v2.1.1",
"michalsn/codeigniter4-uuid": "v1.1.0", "michalsn/codeigniter4-uuid": "v1.1.0",
"mpratt/embera": "^2.0.38", "mpratt/embera": "^2.0.40",
"opawg/user-agents-v2-php": "dev-main", "opawg/user-agents-v2-php": "dev-main",
"phpseclib/phpseclib": "~2.0.47", "phpseclib/phpseclib": "~2.0.47",
"vlucas/phpdotenv": "v5.6.0", "vlucas/phpdotenv": "v5.6.0",
@ -31,19 +31,20 @@
"yassinedoghri/podcast-feed": "dev-main" "yassinedoghri/podcast-feed": "dev-main"
}, },
"require-dev": { "require-dev": {
"captainhook/captainhook": "^5.23.0", "captainhook/captainhook": "^5.23.1",
"codeigniter/phpstan-codeigniter": "v1.4.3", "codeigniter/phpstan-codeigniter": "v1.4.3",
"mikey179/vfsstream": "^v1.6.11", "mikey179/vfsstream": "^v1.6.11",
"phpstan/extension-installer": "^1.3.1", "phpstan/extension-installer": "^1.4.1",
"phpstan/phpstan": "^1.10.67", "phpstan/phpstan": "^1.11.6",
"phpunit/phpunit": "^10.5.20", "phpunit/phpunit": "^10.5.24",
"rector/rector": "^1.0.4", "rector/rector": "^1.2.0",
"symplify/coding-standard": "^12.1.4", "symplify/coding-standard": "^12.1.6",
"symplify/easy-coding-standard": "^12.1.14" "symplify/easy-coding-standard": "^12.3.0"
}, },
"autoload": { "autoload": {
"psr-4": { "psr-4": {
"App\\": "app/" "App\\": "app/",
"Config\\": "app/Config"
}, },
"exclude-from-classmap": [ "exclude-from-classmap": [
"**/Database/Migrations/**" "**/Database/Migrations/**"

1146
composer.lock generated

File diff suppressed because it is too large Load Diff

View File

@ -223,7 +223,6 @@ class VideoClipper
public function getCmd(): string public function getCmd(): string
{ {
// @phpstan-ignore
$filters = [ $filters = [
"[0:a]aformat=channel_layouts=mono,showwaves=s={$this->dimensions['soundwaves']['width']}x{$this->dimensions['soundwaves']['height']}:mode=cline:rate=10:colors=white,format=rgb24[waves]", "[0:a]aformat=channel_layouts=mono,showwaves=s={$this->dimensions['soundwaves']['width']}x{$this->dimensions['soundwaves']['height']}:mode=cline:rate=10:colors=white,format=rgb24[waves]",
"[waves]scale={$this->dimensions['width']}:{$this->dimensions['height']}:flags=neighbor[resizedwaves]", "[waves]scale={$this->dimensions['width']}:{$this->dimensions['height']}:flags=neighbor[resizedwaves]",

View File

@ -69,8 +69,7 @@ class PlatformController extends BaseController
$platformsData = []; $platformsData = [];
foreach ( foreach (
$this->request->getPost('platforms') $this->request->getPost('platforms') as $platformSlug => $podcastPlatform
as $platformSlug => $podcastPlatform
) { ) {
$podcastPlatformUrl = trim((string) $podcastPlatform['url']); $podcastPlatformUrl = trim((string) $podcastPlatform['url']);
if ($podcastPlatformUrl === '') { if ($podcastPlatformUrl === '') {

View File

@ -28,18 +28,18 @@
"prepare": "is-ci || husky" "prepare": "is-ci || husky"
}, },
"dependencies": { "dependencies": {
"@amcharts/amcharts4": "^4.10.38", "@amcharts/amcharts4": "^4.10.39",
"@amcharts/amcharts4-geodata": "^4.1.28", "@amcharts/amcharts4-geodata": "^4.1.28",
"@codemirror/commands": "^6.5.0", "@codemirror/commands": "^6.6.0",
"@codemirror/lang-xml": "^6.1.0", "@codemirror/lang-xml": "^6.1.0",
"@codemirror/language": "^6.10.1", "@codemirror/language": "^6.10.2",
"@codemirror/state": "^6.4.1", "@codemirror/state": "^6.4.1",
"@codemirror/view": "^6.26.3", "@codemirror/view": "^6.28.3",
"@floating-ui/dom": "^1.6.3", "@floating-ui/dom": "^1.6.7",
"@github/clipboard-copy-element": "^1.3.0", "@github/clipboard-copy-element": "^1.3.0",
"@github/hotkey": "^3.1.0", "@github/hotkey": "^3.1.1",
"@github/markdown-toolbar-element": "^2.2.3", "@github/markdown-toolbar-element": "^2.2.3",
"@github/relative-time-element": "^4.4.0", "@github/relative-time-element": "^4.4.2",
"@tailwindcss/nesting": "0.0.0-insiders.565cd3e", "@tailwindcss/nesting": "0.0.0-insiders.565cd3e",
"@vime/core": "^5.4.1", "@vime/core": "^5.4.1",
"choices.js": "^10.2.0", "choices.js": "^10.2.0",
@ -47,51 +47,51 @@
"flatpickr": "^4.6.13", "flatpickr": "^4.6.13",
"leaflet": "^1.9.4", "leaflet": "^1.9.4",
"leaflet.markercluster": "^1.5.3", "leaflet.markercluster": "^1.5.3",
"lit": "^3.1.3", "lit": "^3.1.4",
"marked": "^12.0.2", "marked": "^13.0.1",
"wavesurfer.js": "^7.7.11", "wavesurfer.js": "^7.8.0",
"xml-formatter": "^3.6.2" "xml-formatter": "^3.6.2"
}, },
"devDependencies": { "devDependencies": {
"@commitlint/cli": "^19.3.0", "@commitlint/cli": "^19.3.0",
"@commitlint/config-conventional": "^19.2.2", "@commitlint/config-conventional": "^19.2.2",
"@csstools/css-tokenizer": "^2.2.4", "@csstools/css-tokenizer": "^2.3.2",
"@semantic-release/changelog": "^6.0.3", "@semantic-release/changelog": "^6.0.3",
"@semantic-release/exec": "^6.0.3", "@semantic-release/exec": "^6.0.3",
"@semantic-release/git": "^10.0.1", "@semantic-release/git": "^10.0.1",
"@semantic-release/gitlab": "^13.0.3", "@semantic-release/gitlab": "^13.1.0",
"@tailwindcss/forms": "^0.5.7", "@tailwindcss/forms": "^0.5.7",
"@tailwindcss/typography": "^0.5.12", "@tailwindcss/typography": "^0.5.13",
"@types/leaflet": "^1.9.12", "@types/leaflet": "^1.9.12",
"@typescript-eslint/eslint-plugin": "^7.7.1", "@typescript-eslint/eslint-plugin": "^7.14.1",
"@typescript-eslint/parser": "^7.7.1", "@typescript-eslint/parser": "^7.14.1",
"all-contributors-cli": "^6.26.1", "all-contributors-cli": "^6.26.1",
"commitizen": "^4.3.0", "commitizen": "^4.3.0",
"cross-env": "^7.0.3", "cross-env": "^7.0.3",
"cssnano": "^7.0.0", "cssnano": "^7.0.3",
"cz-conventional-changelog": "^3.3.0", "cz-conventional-changelog": "^3.3.0",
"eslint": "^8.57.0", "eslint": "^8.57.0",
"eslint-config-prettier": "^9.1.0", "eslint-config-prettier": "^9.1.0",
"eslint-plugin-prettier": "^5.1.3", "eslint-plugin-prettier": "^5.1.3",
"husky": "^9.0.11", "husky": "^9.0.11",
"is-ci": "^3.0.1", "is-ci": "^3.0.1",
"lint-staged": "^15.2.2", "lint-staged": "^15.2.7",
"postcss": "^8.4.38", "postcss": "^8.4.39",
"postcss-import": "^16.1.0", "postcss-import": "^16.1.0",
"postcss-nesting": "^12.1.2", "postcss-nesting": "^12.1.5",
"postcss-preset-env": "^9.5.9", "postcss-preset-env": "^9.5.15",
"postcss-reporter": "^7.1.0", "postcss-reporter": "^7.1.0",
"prettier": "3.2.5", "prettier": "3.3.2",
"prettier-plugin-organize-imports": "^3.2.4", "prettier-plugin-organize-imports": "^3.2.4",
"semantic-release": "^23.0.8", "semantic-release": "^24.0.0",
"stylelint": "^16.4.0", "stylelint": "^16.6.1",
"stylelint-config-standard": "^36.0.0", "stylelint-config-standard": "^36.0.1",
"svgo": "^3.2.0", "svgo": "^3.3.2",
"tailwindcss": "^3.4.3", "tailwindcss": "^3.4.4",
"typescript": "^5.4.5", "typescript": "^5.5.2",
"vite": "^5.2.10", "vite": "^5.3.2",
"vite-plugin-pwa": "^0.19.8", "vite-plugin-pwa": "^0.20.0",
"workbox-build": "^7.1.0", "workbox-build": "^7.1.1",
"workbox-core": "^7.1.0", "workbox-core": "^7.1.0",
"workbox-routing": "^7.1.0", "workbox-routing": "^7.1.0",
"workbox-strategies": "^7.1.0" "workbox-strategies": "^7.1.0"

View File

@ -1,7 +1,6 @@
parameters: parameters:
tmpDir: build/phpstan tmpDir: build/phpstan
level: 6 level: 6
checkGenericClassInNonGenericObjectType: false
paths: paths:
- app - app
- modules - modules
@ -48,3 +47,4 @@ parameters:
- Modules\PremiumPodcasts\Config\Services - Modules\PremiumPodcasts\Config\Services
ignoreErrors: ignoreErrors:
- '#^Call to an undefined method CodeIgniter\\Cache\\CacheInterface\:\:deleteMatching\(\)#' - '#^Call to an undefined method CodeIgniter\\Cache\\CacheInterface\:\:deleteMatching\(\)#'
- identifier: missingType.generics

2574
pnpm-lock.yaml generated

File diff suppressed because it is too large Load Diff

View File

@ -7,8 +7,8 @@ declare(strict_types=1);
* *
* (c) CodeIgniter Foundation <admin@codeigniter.com> * (c) CodeIgniter Foundation <admin@codeigniter.com>
* *
* For the full copyright and license information, please view the LICENSE file that was distributed with this source * For the full copyright and license information, please view
* code. * the LICENSE file that was distributed with this source code.
*/ */
/* /*
@ -31,31 +31,20 @@ require __DIR__ . '/app/Config/Paths.php';
// Path to the front controller // Path to the front controller
define('FCPATH', __DIR__ . DIRECTORY_SEPARATOR . 'public' . DIRECTORY_SEPARATOR); define('FCPATH', __DIR__ . DIRECTORY_SEPARATOR . 'public' . DIRECTORY_SEPARATOR);
/**
* See https://www.php.net/manual/en/function.str-contains.php#126277
*/
if (! function_exists('str_contains')) {
/**
* Polyfill of str_contains()
*/
function str_contains(string $haystack, string $needle): bool
{
return empty($needle) || strpos($haystack, $needle) !== false;
}
}
class preload class preload
{ {
/** /**
* @var array<array<string, mixed>> Paths to preload. * @var array Paths to preload.
*/ */
private array $paths = [ private array $paths = [
[ [
'include' => __DIR__ . '/vendor/codeigniter4/framework/system', // Change this path if using manual installation 'include' => __DIR__ . '/vendor/codeigniter4/framework/system', // Change this path if using manual installation
'exclude' => [ 'exclude' => [
'/system/bootstrap.php',
// Not needed if you don't use them. // Not needed if you don't use them.
'/system/Database/OCI8/', '/system/Database/OCI8/',
'/system/Database/Postgre/', '/system/Database/Postgre/',
'/system/Database/SQLite3/',
'/system/Database/SQLSRV/', '/system/Database/SQLSRV/',
// Not needed. // Not needed.
'/system/Database/Seeder.php', '/system/Database/Seeder.php',
@ -104,7 +93,9 @@ class preload
private function loadAutoloader(): void private function loadAutoloader(): void
{ {
$paths = new Config\Paths(); $paths = new Config\Paths();
require rtrim($paths->systemDirectory, '\\/ ') . DIRECTORY_SEPARATOR . 'bootstrap.php'; require rtrim($paths->systemDirectory, '\\/ ') . DIRECTORY_SEPARATOR . 'Boot.php';
CodeIgniter\Boot::preload($paths);
} }
} }

View File

@ -9,7 +9,6 @@ use Rector\CodingStyle\Rector\String_\SymplifyQuoteEscapeRector;
use Rector\Config\RectorConfig; use Rector\Config\RectorConfig;
use Rector\DeadCode\Rector\If_\UnwrapFutureCompatibleIfPhpVersionRector; use Rector\DeadCode\Rector\If_\UnwrapFutureCompatibleIfPhpVersionRector;
use Rector\DeadCode\Rector\Stmt\RemoveUnreachableStatementRector; use Rector\DeadCode\Rector\Stmt\RemoveUnreachableStatementRector;
use Rector\EarlyReturn\Rector\If_\ChangeAndIfToEarlyReturnRector;
use Rector\EarlyReturn\Rector\If_\ChangeOrIfContinueToMultiContinueRector; use Rector\EarlyReturn\Rector\If_\ChangeOrIfContinueToMultiContinueRector;
use Rector\Php55\Rector\String_\StringClassNameToClassConstantRector; use Rector\Php55\Rector\String_\StringClassNameToClassConstantRector;
use Rector\Php71\Rector\FuncCall\RemoveExtraParametersRector; use Rector\Php71\Rector\FuncCall\RemoveExtraParametersRector;
@ -56,7 +55,5 @@ return RectorConfig::configure()
RemoveUnreachableStatementRector::class => [ RemoveUnreachableStatementRector::class => [
__DIR__ . '/modules/Install/Controllers/InstallController.php', __DIR__ . '/modules/Install/Controllers/InstallController.php',
], ],
ChangeAndIfToEarlyReturnRector::class => [__DIR__ . '/modules/Install/Controllers/InstallController.php'],
]) ])
->withPHPStanConfigs([__DIR__ . '/phpstan.neon', 'vendor/codeigniter/phpstan-codeigniter/extension.neon']); ->withPHPStanConfigs([__DIR__ . '/phpstan.neon', 'vendor/codeigniter/phpstan-codeigniter/extension.neon']);

2
spark
View File

@ -27,7 +27,7 @@ declare(strict_types=1);
*/ */
// Refuse to run when called from php-cgi // Refuse to run when called from php-cgi
if (strpos(PHP_SAPI, 'cgi') === 0) { if (str_starts_with(PHP_SAPI, 'cgi')) {
exit("The cli tool is not supported when running php-cgi. It needs php-cli to function!\n\n"); exit("The cli tool is not supported when running php-cgi. It needs php-cli to function!\n\n");
} }