mirror of
https://github.com/wallabag/wallabag.git
synced 2025-03-13 22:52:39 +00:00
Merge 991f11cdf2
into a4a6eb580b
This commit is contained in:
commit
ac9ea0699a
16 changed files with 741 additions and 1068 deletions
2
.github/CONTRIBUTING.md
vendored
2
.github/CONTRIBUTING.md
vendored
|
@ -24,7 +24,7 @@ If you want to test using an other database than SQLite, uncomment the `postgres
|
|||
|
||||
### Using your own PHP server
|
||||
|
||||
- Ensure you are running PHP >= 7.4.
|
||||
- Ensure you are running PHP >= 8.2.
|
||||
- Clone the repository
|
||||
- Launch `composer install`
|
||||
- If you got some errors, fix them (they might be related to some missing PHP extension from your machine)
|
||||
|
|
2
.github/workflows/coding-standards.yml
vendored
2
.github/workflows/coding-standards.yml
vendored
|
@ -23,7 +23,7 @@ jobs:
|
|||
uses: "shivammathur/setup-php@v2"
|
||||
with:
|
||||
coverage: "none"
|
||||
php-version: "7.4"
|
||||
php-version: "8.2"
|
||||
tools: cs2pr, pecl
|
||||
extensions: pdo, pdo_mysql, pdo_sqlite, pdo_pgsql, curl, imagick, pgsql, gd, tidy
|
||||
ini-values: "date.timezone=Europe/Paris"
|
||||
|
|
3
.github/workflows/continuous-integration.yml
vendored
3
.github/workflows/continuous-integration.yml
vendored
|
@ -31,9 +31,6 @@ jobs:
|
|||
fail-fast: false
|
||||
matrix:
|
||||
php:
|
||||
- "7.4"
|
||||
- "8.0"
|
||||
- "8.1"
|
||||
- "8.2"
|
||||
- "8.3"
|
||||
- "8.4"
|
||||
|
|
2
.github/workflows/translations.yml
vendored
2
.github/workflows/translations.yml
vendored
|
@ -18,7 +18,7 @@ jobs:
|
|||
strategy:
|
||||
matrix:
|
||||
php:
|
||||
- "7.4"
|
||||
- "8.2"
|
||||
|
||||
steps:
|
||||
- name: "Checkout"
|
||||
|
|
2
.github/workflows/upload-release-package.yml
vendored
2
.github/workflows/upload-release-package.yml
vendored
|
@ -12,7 +12,7 @@ jobs:
|
|||
strategy:
|
||||
matrix:
|
||||
php:
|
||||
- "7.4"
|
||||
- "8.2"
|
||||
|
||||
steps:
|
||||
- name: "Checkout"
|
||||
|
|
|
@ -37,17 +37,6 @@ return $config
|
|||
// 'psr_autoloading' => true,
|
||||
'strict_comparison' => true,
|
||||
'strict_param' => true,
|
||||
// We override next rule because of current @Symfony ruleSet
|
||||
// 'parameters' element is breaking PHP 7.4
|
||||
// https://cs.symfony.com/doc/rules/control_structure/trailing_comma_in_multiline.html
|
||||
// TODO: remove this configuration after dropping support of PHP 7.4
|
||||
'trailing_comma_in_multiline' => [
|
||||
'elements' => [
|
||||
'arrays',
|
||||
'array_destructuring',
|
||||
'match',
|
||||
],
|
||||
],
|
||||
'concat_space' => [
|
||||
'spacing' => 'one',
|
||||
],
|
||||
|
|
|
@ -25,13 +25,13 @@ During this documentation, we assume the release is `$LAST_WALLABAG_RELEASE` (li
|
|||
### Target PHP version
|
||||
`composer.lock` is _always_ built for a particular version, by default the one it is generated (with `composer update`).
|
||||
|
||||
If the PHP version used to generate the .lock isn't a widely available one (like PHP 8), a more common one should
|
||||
If the PHP version used to generate the .lock isn't a widely available one (like latest PHP versions), a more common one should
|
||||
be locally specified in `composer.lock`:
|
||||
|
||||
```json
|
||||
"config": {
|
||||
"platform": {
|
||||
"php": "7.4.29",
|
||||
"php": "8.2.27",
|
||||
"ext-something": "4.0"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -66,8 +66,4 @@ $config
|
|||
], [ErrorType::DEV_DEPENDENCY_IN_PROD])
|
||||
;
|
||||
|
||||
if (\PHP_VERSION_ID >= 80000) {
|
||||
$config->ignoreErrorsOnPackage('symfony/polyfill-php80', [ErrorType::UNUSED_DEPENDENCY]);
|
||||
}
|
||||
|
||||
return $config;
|
||||
|
|
197
composer.json
197
composer.json
|
@ -38,7 +38,7 @@
|
|||
"issues": "https://github.com/wallabag/wallabag/issues"
|
||||
},
|
||||
"require": {
|
||||
"php": ">=7.4",
|
||||
"php": ">=8.2",
|
||||
"ext-ctype": "*",
|
||||
"ext-curl": "*",
|
||||
"ext-dom": "*",
|
||||
|
@ -61,46 +61,46 @@
|
|||
"craue/config-bundle": "^2.7.0",
|
||||
"defuse/php-encryption": "^2.4",
|
||||
"doctrine/collections": "^1.8",
|
||||
"doctrine/common": "^3.4.3",
|
||||
"doctrine/dbal": "^3.8.2",
|
||||
"doctrine/doctrine-bundle": "^2.11.3",
|
||||
"doctrine/doctrine-migrations-bundle": "^3.3",
|
||||
"doctrine/common": "^3.5.0",
|
||||
"doctrine/dbal": "^3.9.4",
|
||||
"doctrine/doctrine-bundle": "^2.13.2",
|
||||
"doctrine/doctrine-migrations-bundle": "^3.4.1",
|
||||
"doctrine/event-manager": "^1.2",
|
||||
"doctrine/migrations": "^3.5.5",
|
||||
"doctrine/orm": "^2.18.1",
|
||||
"doctrine/persistence": "^3.2",
|
||||
"doctrine/migrations": "^3.8.2",
|
||||
"doctrine/orm": "^2.20.2",
|
||||
"doctrine/persistence": "^3.4",
|
||||
"egulias/email-validator": "^3.2.6",
|
||||
"enshrined/svg-sanitize": "^0.21",
|
||||
"friendsofsymfony/jsrouting-bundle": "^2.8",
|
||||
"friendsofsymfony/oauth-server-bundle": "dev-master#dc8ff343363cf794d30eb1a123610d186a43f162",
|
||||
"friendsofsymfony/rest-bundle": "^3.6",
|
||||
"friendsofsymfony/user-bundle": "^3.2.1",
|
||||
"guzzlehttp/psr7": "^2.6.2",
|
||||
"html2text/html2text": "^4.3.1",
|
||||
"friendsofsymfony/rest-bundle": "^3.8",
|
||||
"friendsofsymfony/user-bundle": "^3.4.0",
|
||||
"guzzlehttp/psr7": "^2.7.0",
|
||||
"html2text/html2text": "^4.3.2",
|
||||
"incenteev/composer-parameter-handler": "^2.2",
|
||||
"j0k3r/graby": "^2.4.5",
|
||||
"j0k3r/graby-site-config": "^1.0",
|
||||
"j0k3r/graby": "^2.4.6",
|
||||
"j0k3r/graby-site-config": "^1.0.197",
|
||||
"javibravo/simpleue": "^2.1",
|
||||
"jms/serializer": "^3.29.1",
|
||||
"jms/serializer-bundle": "^5.4",
|
||||
"laminas/laminas-code": "^4.7.1",
|
||||
"jms/serializer": "^3.32.3",
|
||||
"jms/serializer-bundle": "^5.5.1",
|
||||
"laminas/laminas-code": "^4.16",
|
||||
"lcobucci/jwt": "^4.3",
|
||||
"league/html-to-markdown": "^5.1",
|
||||
"league/html-to-markdown": "^5.1.1",
|
||||
"mgargano/simplehtmldom": "^1.5",
|
||||
"mnapoli/piwik-twig-extension": "^3.0",
|
||||
"monolog/monolog": "^2.9",
|
||||
"nelmio/api-doc-bundle": "^4.20.0",
|
||||
"nelmio/cors-bundle": "^2.4",
|
||||
"monolog/monolog": "^2.10",
|
||||
"nelmio/api-doc-bundle": "^4.38.1",
|
||||
"nelmio/cors-bundle": "^2.5",
|
||||
"ocramius/proxy-manager": "^2.1.1",
|
||||
"pagerfanta/core": "^3.8",
|
||||
"pagerfanta/doctrine-orm-adapter": "^3.8",
|
||||
"pagerfanta/twig": "^3.8",
|
||||
"php-amqplib/php-amqplib": "^3.6.1",
|
||||
"php-amqplib/rabbitmq-bundle": "^2.14.0",
|
||||
"php-amqplib/php-amqplib": "^3.7.3",
|
||||
"php-amqplib/rabbitmq-bundle": "^2.17.3",
|
||||
"pragmarx/recovery": "^0.2.1",
|
||||
"predis/predis": "^2.2.2",
|
||||
"predis/predis": "^2.3.0",
|
||||
"psr/http-client": "^1.0.3",
|
||||
"psr/http-factory": "^1.0.2",
|
||||
"psr/http-factory": "^1.1.0",
|
||||
"psr/http-message": "^2.0",
|
||||
"psr/log": "^1.1.4",
|
||||
"rulerz-php/doctrine-orm": "dev-master",
|
||||
|
@ -110,82 +110,94 @@
|
|||
"scheb/2fa-google-authenticator": "^5.13.2",
|
||||
"scheb/2fa-qr-code": "^5.13.2",
|
||||
"scheb/2fa-trusted-device": "^5.13.2",
|
||||
"scssphp/scssphp": "^1.12.1",
|
||||
"scssphp/scssphp": "^1.13.0",
|
||||
"sensio/framework-extra-bundle": "^6.2.10",
|
||||
"sentry/sentry-symfony": "^5.0.1",
|
||||
"spiriitlabs/form-filter-bundle": "^10.0",
|
||||
"stof/doctrine-extensions-bundle": "^1.11.0",
|
||||
"symfony/asset": "^5.4.35",
|
||||
"symfony/browser-kit": "^5.4.35",
|
||||
"symfony/config": "^5.4.35",
|
||||
"symfony/console": "^5.4.35",
|
||||
"symfony/dependency-injection": "^5.4.35",
|
||||
"symfony/doctrine-bridge": "^5.4.35",
|
||||
"symfony/dom-crawler": "^5.4.35",
|
||||
"symfony/error-handler": "^5.4.35",
|
||||
"symfony/event-dispatcher": "^5.4.35",
|
||||
"symfony/event-dispatcher-contracts": "^2.5.2",
|
||||
"symfony/expression-language": "^5.4.35",
|
||||
"symfony/filesystem": "^5.4",
|
||||
"symfony/finder": "^5.4.35",
|
||||
"symfony/form": "^5.4.35",
|
||||
"symfony/framework-bundle": "^5.4.35",
|
||||
"symfony/google-mailer": "^5.4.35",
|
||||
"symfony/http-client": "^5.4.35",
|
||||
"symfony/http-client-contracts": "^2.5",
|
||||
"symfony/http-foundation": "^5.4.35",
|
||||
"symfony/http-kernel": "^5.4.35",
|
||||
"symfony/intl": "^5.4.35",
|
||||
"symfony/mailer": "^5.4.35",
|
||||
"symfony/mime": "^5.4.35",
|
||||
"sentry/sentry-symfony": "^5.2.0",
|
||||
"spiriitlabs/form-filter-bundle": "^10.0.2",
|
||||
"stof/doctrine-extensions-bundle": "^1.13.0",
|
||||
"symfony/asset": "^5.4.45",
|
||||
"symfony/browser-kit": "^5.4.45",
|
||||
"symfony/config": "^5.4.46",
|
||||
"symfony/console": "^5.4.47",
|
||||
"symfony/dependency-injection": "^5.4.48",
|
||||
"symfony/doctrine-bridge": "^5.4.48",
|
||||
"symfony/dom-crawler": "^5.4.48",
|
||||
"symfony/error-handler": "^5.4.46",
|
||||
"symfony/event-dispatcher": "^5.4.45",
|
||||
"symfony/event-dispatcher-contracts": "^2.5.4",
|
||||
"symfony/expression-language": "^5.4.45",
|
||||
"symfony/filesystem": "^5.4.45",
|
||||
"symfony/finder": "^5.4.45",
|
||||
"symfony/form": "^5.4.45",
|
||||
"symfony/framework-bundle": "^5.4.45",
|
||||
"symfony/google-mailer": "^5.4.45",
|
||||
"symfony/http-client": "^5.4.49",
|
||||
"symfony/http-client-contracts": "^2.5.5",
|
||||
"symfony/http-foundation": "^5.4.48",
|
||||
"symfony/http-kernel": "^5.4.48",
|
||||
"symfony/intl": "^5.4.47",
|
||||
"symfony/mailer": "^5.4.45",
|
||||
"symfony/mime": "^5.4.45",
|
||||
"symfony/monolog-bundle": "^3.10",
|
||||
"symfony/options-resolver": "^5.4.21",
|
||||
"symfony/polyfill-php80": "^1.29",
|
||||
"symfony/proxy-manager-bridge": "^5.4.21",
|
||||
"symfony/routing": "^5.4.35",
|
||||
"symfony/security-bundle": "^5.4.35",
|
||||
"symfony/security-core": "^5.4.35",
|
||||
"symfony/security-http": "^5.4.35",
|
||||
"symfony/templating": "^5.4.35",
|
||||
"symfony/translation-contracts": "^2.5.2",
|
||||
"symfony/twig-bundle": "^5.4.35",
|
||||
"symfony/validator": "^5.4.35",
|
||||
"symfony/webpack-encore-bundle": "^1.17",
|
||||
"tecnickcom/tcpdf": "^6.6.5",
|
||||
"twig/extra-bundle": "^3.8",
|
||||
"twig/string-extra": "^3.8",
|
||||
"twig/twig": "^3.8.0",
|
||||
"symfony/options-resolver": "^5.4.45",
|
||||
"symfony/proxy-manager-bridge": "^5.4.45",
|
||||
"symfony/routing": "^5.4.48",
|
||||
"symfony/security-bundle": "^5.4.45",
|
||||
"symfony/security-core": "^5.4.48",
|
||||
"symfony/security-http": "^5.4.47",
|
||||
"symfony/templating": "^5.4.45",
|
||||
"symfony/translation-contracts": "^2.5.4",
|
||||
"symfony/twig-bundle": "^5.4.45",
|
||||
"symfony/validator": "^5.4.48",
|
||||
"symfony/webpack-encore-bundle": "^1.17.2",
|
||||
"tecnickcom/tcpdf": "^6.8.2",
|
||||
"twig/extra-bundle": "^3.20",
|
||||
"twig/string-extra": "^3.20",
|
||||
"twig/twig": "^3.20.0",
|
||||
"wallabag/phpepub": "^4.0.10",
|
||||
"wallabag/rulerz": "dev-master",
|
||||
"wallabag/rulerz-bundle": "dev-master",
|
||||
"willdurand/hateoas": "^3.10",
|
||||
"willdurand/hateoas-bundle": "^2.6"
|
||||
"willdurand/hateoas": "^3.12",
|
||||
"willdurand/hateoas-bundle": "^2.7"
|
||||
},
|
||||
"require-dev": {
|
||||
"dama/doctrine-test-bundle": "^8.0.2",
|
||||
"doctrine/data-fixtures": "^1.7",
|
||||
"doctrine/doctrine-fixtures-bundle": "^3.5.1",
|
||||
"ergebnis/composer-normalize": "^2.42.0",
|
||||
"friendsofphp/php-cs-fixer": "^3.49",
|
||||
"friendsoftwig/twigcs": "^6.1",
|
||||
"dama/doctrine-test-bundle": "^8.2.2",
|
||||
"doctrine/data-fixtures": "^1.8.1",
|
||||
"doctrine/doctrine-fixtures-bundle": "^3.7.1",
|
||||
"ergebnis/composer-normalize": "^2.45.0",
|
||||
"friendsofphp/php-cs-fixer": "^3.70.2",
|
||||
"friendsoftwig/twigcs": "^6.5",
|
||||
"m6web/redis-mock": "^5.6",
|
||||
"php-http/mock-client": "^1.6",
|
||||
"phpstan/extension-installer": "^1.3.1",
|
||||
"phpstan/phpstan": "^1.10.59",
|
||||
"phpstan/phpstan-doctrine": "^1.3.62",
|
||||
"phpstan/phpstan-phpunit": "^1.3.16",
|
||||
"phpstan/phpstan-symfony": "^1.3.7",
|
||||
"phpunit/phpunit": "^9.6.17",
|
||||
"shipmonk/composer-dependency-analyser": "^1.7",
|
||||
"symfony/css-selector": "^5.4.35",
|
||||
"symfony/debug-bundle": "^5.4.35",
|
||||
"symfony/maker-bundle": "^1.43",
|
||||
"symfony/phpunit-bridge": "^7.0.3",
|
||||
"symfony/process": "^5.4",
|
||||
"symfony/var-dumper": "^5.4.35",
|
||||
"symfony/web-profiler-bundle": "^5.4.35",
|
||||
"php-http/mock-client": "^1.6.1",
|
||||
"phpstan/extension-installer": "^1.4.3",
|
||||
"phpstan/phpstan": "^1.12.20",
|
||||
"phpstan/phpstan-doctrine": "^1.5.7",
|
||||
"phpstan/phpstan-phpunit": "^1.4.2",
|
||||
"phpstan/phpstan-symfony": "^1.4.13",
|
||||
"phpunit/phpunit": "^9.6.22",
|
||||
"shipmonk/composer-dependency-analyser": "^1.8.2",
|
||||
"symfony/css-selector": "^5.4.45",
|
||||
"symfony/debug-bundle": "^5.4.45",
|
||||
"symfony/maker-bundle": "^1.50",
|
||||
"symfony/phpunit-bridge": "^7.2.0",
|
||||
"symfony/process": "^5.4.47",
|
||||
"symfony/var-dumper": "^5.4.48",
|
||||
"symfony/web-profiler-bundle": "^5.4.48",
|
||||
"symfony/web-server-bundle": "^4.4.44"
|
||||
},
|
||||
"replace": {
|
||||
"symfony/polyfill-php54": "*",
|
||||
"symfony/polyfill-php55": "*",
|
||||
"symfony/polyfill-php56": "*",
|
||||
"symfony/polyfill-php70": "*",
|
||||
"symfony/polyfill-php71": "*",
|
||||
"symfony/polyfill-php72": "*",
|
||||
"symfony/polyfill-php73": "*",
|
||||
"symfony/polyfill-php74": "*",
|
||||
"symfony/polyfill-php80": "*",
|
||||
"symfony/polyfill-php81": "*",
|
||||
"symfony/polyfill-php82": "*"
|
||||
},
|
||||
"suggest": {
|
||||
"ext-imagick": "To keep GIF animation when downloading image is enabled"
|
||||
},
|
||||
|
@ -216,9 +228,6 @@
|
|||
"phpstan/extension-installer": true
|
||||
},
|
||||
"bin-dir": "bin",
|
||||
"platform": {
|
||||
"php": "7.4.29"
|
||||
},
|
||||
"sort-packages": true
|
||||
},
|
||||
"extra": {
|
||||
|
|
1559
composer.lock
generated
1559
composer.lock
generated
File diff suppressed because it is too large
Load diff
|
@ -1,4 +1,4 @@
|
|||
FROM php:8.1-fpm AS rootless
|
||||
FROM php:8.2-fpm AS rootless
|
||||
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
ARG NODE_VERSION=20
|
||||
|
@ -50,14 +50,13 @@ RUN docker-php-ext-install -j "$(nproc)" \
|
|||
tidy \
|
||||
zip
|
||||
|
||||
RUN pecl install redis; \
|
||||
pecl install imagick; \
|
||||
pecl install xdebug-3.1.6; \
|
||||
docker-php-ext-enable \
|
||||
RUN pecl install redis-6.1.0 \
|
||||
&& pecl install imagick-3.7.0 \
|
||||
&& pecl install xdebug-3.4.1 \
|
||||
&& docker-php-ext-enable \
|
||||
redis \
|
||||
imagick \
|
||||
xdebug \
|
||||
;
|
||||
xdebug
|
||||
|
||||
RUN version=$(php -r "echo PHP_MAJOR_VERSION.PHP_MINOR_VERSION;") \
|
||||
&& architecture=$(uname -m) \
|
||||
|
|
|
@ -50,7 +50,7 @@ final class Version20190826204730 extends WallabagMigration
|
|||
->fetchOne('SELECT * FROM ' . $this->getTable('ignore_origin_instance_rule') . " WHERE rule = '" . $entity['rule'] . "'");
|
||||
|
||||
if (false === $previous_rule) {
|
||||
$this->addSql('INSERT INTO ' . $this->getTable('ignore_origin_instance_rule') . " (rule) VALUES ('" . $entity['rule'] . "');");
|
||||
$this->connection->executeQuery('INSERT INTO ' . $this->getTable('ignore_origin_instance_rule') . " (rule) VALUES ('" . $entity['rule'] . "');");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -64,7 +64,7 @@ class ImportCommand extends Command
|
|||
ElcuratorImport $elcuratorImport,
|
||||
ShaarliImport $shaarliImport,
|
||||
PocketHtmlImport $pocketHtmlImport,
|
||||
OmnivoreImport $omnivoreImport
|
||||
OmnivoreImport $omnivoreImport,
|
||||
) {
|
||||
$this->entityManager = $entityManager;
|
||||
$this->tokenStorage = $tokenStorage;
|
||||
|
|
|
@ -37,7 +37,7 @@ class RabbitMQConsumerTotalProxy
|
|||
Consumer $elcuratorConsumer,
|
||||
Consumer $shaarliConsumer,
|
||||
Consumer $pocketHtmlConsumer,
|
||||
Consumer $omnivoreConsumer
|
||||
Consumer $omnivoreConsumer,
|
||||
) {
|
||||
$this->pocketConsumer = $pocketConsumer;
|
||||
$this->readabilityConsumer = $readabilityConsumer;
|
||||
|
|
|
@ -724,7 +724,7 @@ class EntryRestController extends WallabagRestController
|
|||
LoggerInterface $logger,
|
||||
TagsAssigner $tagsAssigner,
|
||||
EventDispatcherInterface $eventDispatcher,
|
||||
ValidatorInterface $validator
|
||||
ValidatorInterface $validator,
|
||||
) {
|
||||
$this->validateAuthentication();
|
||||
|
||||
|
|
|
@ -61,7 +61,7 @@ class ConfigController extends AbstractController
|
|||
AnnotationRepository $annotationRepository,
|
||||
ConfigRepository $configRepository,
|
||||
EventDispatcherInterface $eventDispatcher,
|
||||
Redirect $redirectHelper
|
||||
Redirect $redirectHelper,
|
||||
) {
|
||||
$this->entityManager = $entityManager;
|
||||
$this->userManager = $userManager;
|
||||
|
|
Loading…
Reference in a new issue