Compare commits

..

739 Commits

Author SHA1 Message Date
dcba61ca5c Merge pull request #8612 from wallabag/dependabot/npm_and_yarn/webpack-5.104.1
build(deps-dev): bump webpack from 5.103.0 to 5.104.1
2025-12-22 10:42:58 +00:00
75081c0aa2 Merge pull request #8609 from wallabag/dependabot/composer/friendsofphp/php-cs-fixer-3.92.3
build(deps-dev): bump friendsofphp/php-cs-fixer from 3.92.0 to 3.92.3
2025-12-22 11:27:04 +01:00
e73c0ac2ce Merge pull request #8611 from wallabag/dependabot/composer/willdurand/hateoas-3.13.0
build(deps): bump willdurand/hateoas from 3.12.0 to 3.13.0
2025-12-22 11:26:42 +01:00
b2663214dd Merge pull request #8606 from wallabag/dependabot/composer/twig-dependencies-e28097ee30
build(deps): bump twig/twig from 3.22.1 to 3.22.2 in the twig-dependencies group
2025-12-22 11:11:17 +01:00
7bb720184b Merge pull request #8610 from wallabag/dependabot/composer/sentry/sentry-symfony-5.8.3
build(deps): bump sentry/sentry-symfony from 5.8.2 to 5.8.3
2025-12-22 11:10:54 +01:00
507ba209c0 Merge pull request #8607 from wallabag/dependabot/npm_and_yarn/sass-embedded-1.97.1
build(deps-dev): bump sass-embedded from 1.96.0 to 1.97.1
2025-12-22 10:04:32 +00:00
7f7225206f build(deps-dev): bump friendsofphp/php-cs-fixer from 3.92.0 to 3.92.3
Bumps [friendsofphp/php-cs-fixer](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer) from 3.92.0 to 3.92.3.
- [Release notes](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/releases)
- [Changelog](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/blob/master/CHANGELOG.md)
- [Commits](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/compare/v3.92.0...v3.92.3)

---
updated-dependencies:
- dependency-name: friendsofphp/php-cs-fixer
  dependency-version: 3.92.3
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-22 09:52:22 +00:00
717b155b5d build(deps): bump twig/twig in the twig-dependencies group
Bumps the twig-dependencies group with 1 update: [twig/twig](https://github.com/twigphp/Twig).


Updates `twig/twig` from 3.22.1 to 3.22.2
- [Changelog](https://github.com/twigphp/Twig/blob/3.x/CHANGELOG)
- [Commits](https://github.com/twigphp/Twig/compare/v3.22.1...v3.22.2)

---
updated-dependencies:
- dependency-name: twig/twig
  dependency-version: 3.22.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: twig-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-22 09:52:21 +00:00
634d3defe7 build(deps-dev): bump sass-embedded from 1.96.0 to 1.97.1
Bumps [sass-embedded](https://github.com/sass/embedded-host-node) from 1.96.0 to 1.97.1.
- [Changelog](https://github.com/sass/embedded-host-node/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/embedded-host-node/compare/1.96.0...1.97.1)

---
updated-dependencies:
- dependency-name: sass-embedded
  dependency-version: 1.97.1
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-22 09:52:14 +00:00
9f3e1a4b40 build(deps-dev): bump webpack from 5.103.0 to 5.104.1
Bumps [webpack](https://github.com/webpack/webpack) from 5.103.0 to 5.104.1.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Changelog](https://github.com/webpack/webpack/blob/main/CHANGELOG.md)
- [Commits](https://github.com/webpack/webpack/compare/v5.103.0...v5.104.1)

---
updated-dependencies:
- dependency-name: webpack
  dependency-version: 5.104.1
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-22 09:51:48 +00:00
5ade420a38 build(deps): bump sentry/sentry-symfony from 5.8.2 to 5.8.3
Bumps [sentry/sentry-symfony](https://github.com/getsentry/sentry-symfony) from 5.8.2 to 5.8.3.
- [Release notes](https://github.com/getsentry/sentry-symfony/releases)
- [Changelog](https://github.com/getsentry/sentry-symfony/blob/master/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-symfony/compare/5.8.2...5.8.3)

---
updated-dependencies:
- dependency-name: sentry/sentry-symfony
  dependency-version: 5.8.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-22 09:51:46 +00:00
df8042fd29 build(deps): bump willdurand/hateoas from 3.12.0 to 3.13.0
Bumps [willdurand/hateoas](https://github.com/willdurand/Hateoas) from 3.12.0 to 3.13.0.
- [Release notes](https://github.com/willdurand/Hateoas/releases)
- [Commits](https://github.com/willdurand/Hateoas/compare/3.12.0...3.13.0)

---
updated-dependencies:
- dependency-name: willdurand/hateoas
  dependency-version: 3.13.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-22 09:51:42 +00:00
53f731202a Merge pull request #8613 from wallabag/fix/tests
Update tests
2025-12-22 10:50:10 +01:00
7428b82425 Update tests
Looks like liberation.fr is now blocking wallabag.
2025-12-22 10:26:13 +01:00
c753de72e8 Merge pull request #8600 from wallabag/dependabot/npm_and_yarn/autoprefixer-10.4.23
build(deps-dev): bump autoprefixer from 10.4.22 to 10.4.23
2025-12-15 07:55:41 +00:00
e7521daf77 Merge pull request #8604 from wallabag/dependabot/composer/friendsoftwig/twigcs-6.6.0
build(deps-dev): bump friendsoftwig/twigcs from 6.5.0 to 6.6.0
2025-12-15 08:52:35 +01:00
59e0459b03 Merge pull request #8603 from wallabag/dependabot/composer/j0k3r/graby-site-config-1.0.206
build(deps): bump j0k3r/graby-site-config from 1.0.205 to 1.0.206
2025-12-15 08:52:00 +01:00
649f7f1490 Merge pull request #8602 from wallabag/dependabot/composer/friendsofphp/php-cs-fixer-3.92.0
build(deps-dev): bump friendsofphp/php-cs-fixer from 3.91.3 to 3.92.0
2025-12-15 08:51:39 +01:00
2e26a28f1d Merge pull request #8598 from wallabag/dependabot/composer/twig-dependencies-c4b8fa95ba
build(deps): bump twig/extra-bundle from 3.22.1 to 3.22.2 in the twig-dependencies group
2025-12-15 08:51:20 +01:00
70dc5becfe Merge pull request #8601 from wallabag/dependabot/npm_and_yarn/terser-webpack-plugin-5.3.16
build(deps-dev): bump terser-webpack-plugin from 5.3.15 to 5.3.16
2025-12-15 03:16:02 +00:00
887037e407 Merge pull request #8599 from wallabag/dependabot/npm_and_yarn/sass-embedded-1.96.0
build(deps-dev): bump sass-embedded from 1.93.3 to 1.96.0
2025-12-15 03:14:36 +00:00
c7c27c002b build(deps-dev): bump friendsoftwig/twigcs from 6.5.0 to 6.6.0
Bumps [friendsoftwig/twigcs](https://github.com/friendsoftwig/twigcs) from 6.5.0 to 6.6.0.
- [Release notes](https://github.com/friendsoftwig/twigcs/releases)
- [Changelog](https://github.com/friendsoftwig/twigcs/blob/main/CHANGELOG.md)
- [Commits](https://github.com/friendsoftwig/twigcs/compare/6.5.0...v6.6.0)

---
updated-dependencies:
- dependency-name: friendsoftwig/twigcs
  dependency-version: 6.6.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-15 03:02:29 +00:00
26edaf6903 build(deps): bump j0k3r/graby-site-config from 1.0.205 to 1.0.206
Bumps [j0k3r/graby-site-config](https://github.com/j0k3r/graby-site-config) from 1.0.205 to 1.0.206.
- [Release notes](https://github.com/j0k3r/graby-site-config/releases)
- [Changelog](https://github.com/j0k3r/graby-site-config/blob/master/historytoday.com.txt)
- [Commits](https://github.com/j0k3r/graby-site-config/compare/1.0.205...1.0.206)

---
updated-dependencies:
- dependency-name: j0k3r/graby-site-config
  dependency-version: 1.0.206
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-15 03:02:16 +00:00
b5e603a17e build(deps-dev): bump friendsofphp/php-cs-fixer from 3.91.3 to 3.92.0
Bumps [friendsofphp/php-cs-fixer](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer) from 3.91.3 to 3.92.0.
- [Release notes](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/releases)
- [Changelog](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/blob/master/CHANGELOG.md)
- [Commits](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/compare/v3.91.3...v3.92.0)

---
updated-dependencies:
- dependency-name: friendsofphp/php-cs-fixer
  dependency-version: 3.92.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-15 03:02:01 +00:00
bfe443a010 build(deps-dev): bump terser-webpack-plugin from 5.3.15 to 5.3.16
Bumps [terser-webpack-plugin](https://github.com/webpack/terser-webpack-plugin) from 5.3.15 to 5.3.16.
- [Release notes](https://github.com/webpack/terser-webpack-plugin/releases)
- [Changelog](https://github.com/webpack/terser-webpack-plugin/blob/main/CHANGELOG.md)
- [Commits](https://github.com/webpack/terser-webpack-plugin/compare/v5.3.15...v5.3.16)

---
updated-dependencies:
- dependency-name: terser-webpack-plugin
  dependency-version: 5.3.16
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-15 03:01:51 +00:00
c4d115112f build(deps-dev): bump autoprefixer from 10.4.22 to 10.4.23
Bumps [autoprefixer](https://github.com/postcss/autoprefixer) from 10.4.22 to 10.4.23.
- [Release notes](https://github.com/postcss/autoprefixer/releases)
- [Changelog](https://github.com/postcss/autoprefixer/blob/main/CHANGELOG.md)
- [Commits](https://github.com/postcss/autoprefixer/compare/10.4.22...10.4.23)

---
updated-dependencies:
- dependency-name: autoprefixer
  dependency-version: 10.4.23
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-15 03:01:43 +00:00
38b7524b31 build(deps-dev): bump sass-embedded from 1.93.3 to 1.96.0
Bumps [sass-embedded](https://github.com/sass/embedded-host-node) from 1.93.3 to 1.96.0.
- [Changelog](https://github.com/sass/embedded-host-node/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/embedded-host-node/compare/1.93.3...1.96.0)

---
updated-dependencies:
- dependency-name: sass-embedded
  dependency-version: 1.96.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-15 03:01:26 +00:00
af3b4a0e31 build(deps): bump twig/extra-bundle in the twig-dependencies group
Bumps the twig-dependencies group with 1 update: [twig/extra-bundle](https://github.com/twigphp/twig-extra-bundle).


Updates `twig/extra-bundle` from 3.22.1 to 3.22.2
- [Commits](https://github.com/twigphp/twig-extra-bundle/compare/v3.22.1...v3.22.2)

---
updated-dependencies:
- dependency-name: twig/extra-bundle
  dependency-version: 3.22.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: twig-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-15 03:01:10 +00:00
b1fcdbc1d8 Merge pull request #8588 from wallabag/dependabot/composer/sentry/sentry-symfony-5.8.2 2025-12-08 06:54:49 +01:00
796afc9142 Merge pull request #8590 from wallabag/dependabot/composer/jms/serializer-bundle-5.5.2 2025-12-08 06:52:57 +01:00
f55df91ae1 Merge pull request #8591 from wallabag/dependabot/npm_and_yarn/terser-webpack-plugin-5.3.15
build(deps-dev): bump terser-webpack-plugin from 5.3.14 to 5.3.15
2025-12-08 05:52:41 +00:00
1aef044156 Merge pull request #8592 from wallabag/dependabot/composer/friendsofphp/php-cs-fixer-3.91.3 2025-12-08 06:52:07 +01:00
79160b4c9f Merge pull request #8589 from wallabag/dependabot/composer/jms/serializer-3.32.6 2025-12-08 06:50:39 +01:00
039deeca99 build(deps-dev): bump friendsofphp/php-cs-fixer from 3.91.0 to 3.91.3
Bumps [friendsofphp/php-cs-fixer](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer) from 3.91.0 to 3.91.3.
- [Release notes](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/releases)
- [Changelog](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/blob/master/CHANGELOG.md)
- [Commits](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/compare/v3.91.0...v3.91.3)

---
updated-dependencies:
- dependency-name: friendsofphp/php-cs-fixer
  dependency-version: 3.91.3
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-08 03:02:05 +00:00
8cb19e817e build(deps-dev): bump terser-webpack-plugin from 5.3.14 to 5.3.15
Bumps [terser-webpack-plugin](https://github.com/webpack/terser-webpack-plugin) from 5.3.14 to 5.3.15.
- [Release notes](https://github.com/webpack/terser-webpack-plugin/releases)
- [Changelog](https://github.com/webpack/terser-webpack-plugin/blob/main/CHANGELOG.md)
- [Commits](https://github.com/webpack/terser-webpack-plugin/compare/v5.3.14...v5.3.15)

---
updated-dependencies:
- dependency-name: terser-webpack-plugin
  dependency-version: 5.3.15
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-08 03:01:59 +00:00
28d366d8b2 build(deps): bump jms/serializer-bundle from 5.5.1 to 5.5.2
Bumps [jms/serializer-bundle](https://github.com/schmittjoh/JMSSerializerBundle) from 5.5.1 to 5.5.2.
- [Release notes](https://github.com/schmittjoh/JMSSerializerBundle/releases)
- [Changelog](https://github.com/schmittjoh/JMSSerializerBundle/blob/master/CHANGELOG.md)
- [Commits](https://github.com/schmittjoh/JMSSerializerBundle/compare/5.5.1...5.5.2)

---
updated-dependencies:
- dependency-name: jms/serializer-bundle
  dependency-version: 5.5.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-08 03:01:37 +00:00
adc5c7f9a6 build(deps): bump jms/serializer from 3.32.5 to 3.32.6
Bumps [jms/serializer](https://github.com/schmittjoh/serializer) from 3.32.5 to 3.32.6.
- [Release notes](https://github.com/schmittjoh/serializer/releases)
- [Changelog](https://github.com/schmittjoh/serializer/blob/master/CHANGELOG.md)
- [Commits](https://github.com/schmittjoh/serializer/compare/3.32.5...3.32.6)

---
updated-dependencies:
- dependency-name: jms/serializer
  dependency-version: 3.32.6
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-08 03:01:30 +00:00
a91ab8af6a build(deps): bump sentry/sentry-symfony from 5.6.0 to 5.8.2
Bumps [sentry/sentry-symfony](https://github.com/getsentry/sentry-symfony) from 5.6.0 to 5.8.2.
- [Release notes](https://github.com/getsentry/sentry-symfony/releases)
- [Changelog](https://github.com/getsentry/sentry-symfony/blob/master/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-symfony/compare/5.6.0...5.8.2)

---
updated-dependencies:
- dependency-name: sentry/sentry-symfony
  dependency-version: 5.8.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-08 03:01:22 +00:00
780f5e5ba8 Merge pull request #8574 from weblate/weblate-wallabag-messages 2025-12-01 06:26:15 +01:00
1f054f345b Translated using Weblate (German)
Currently translated at 100.0% (7 of 7 strings)
2025-12-01 05:02:28 +00:00
d5e047723e Merge pull request #8583 from wallabag/dependabot/composer/shipmonk/composer-dependency-analyser-1.8.4 2025-12-01 06:02:21 +01:00
0dad1a7d2d Merge pull request #8582 from wallabag/dependabot/composer/predis/predis-3.3.0 2025-12-01 06:01:59 +01:00
f96dc3e863 Merge pull request #8577 from wallabag/dependabot/composer/symfony-dependencies-46a6ec6dfb 2025-12-01 05:59:48 +01:00
bdb1dbeb74 Merge pull request #8581 from wallabag/dependabot/composer/babdev/pagerfanta-bundle-4.6.0 2025-12-01 05:57:57 +01:00
cb55a2c1e7 Merge pull request #8580 from wallabag/dependabot/composer/friendsofphp/php-cs-fixer-3.91.0 2025-12-01 05:57:12 +01:00
0f82724f9e Merge pull request #8579 from wallabag/dependabot/composer/incenteev/composer-parameter-handler-2.3.0 2025-12-01 05:56:50 +01:00
7b3a4aa527 Merge pull request #8578 from wallabag/dependabot/composer/twig-dependencies-5c6df16a36 2025-12-01 05:56:22 +01:00
f8a94a4fa1 build(deps-dev): bump shipmonk/composer-dependency-analyser
Bumps [shipmonk/composer-dependency-analyser](https://github.com/shipmonk-rnd/composer-dependency-analyser) from 1.8.3 to 1.8.4.
- [Release notes](https://github.com/shipmonk-rnd/composer-dependency-analyser/releases)
- [Commits](https://github.com/shipmonk-rnd/composer-dependency-analyser/compare/1.8.3...1.8.4)

---
updated-dependencies:
- dependency-name: shipmonk/composer-dependency-analyser
  dependency-version: 1.8.4
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-01 03:23:54 +00:00
c00ab73e4f build(deps): bump predis/predis from 3.2.0 to 3.3.0
Bumps [predis/predis](https://github.com/predis/predis) from 3.2.0 to 3.3.0.
- [Release notes](https://github.com/predis/predis/releases)
- [Changelog](https://github.com/predis/predis/blob/main/CHANGELOG.md)
- [Commits](https://github.com/predis/predis/compare/v3.2.0...v3.3.0)

---
updated-dependencies:
- dependency-name: predis/predis
  dependency-version: 3.3.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-01 03:23:42 +00:00
bb972d0791 build(deps): bump babdev/pagerfanta-bundle from 4.5.0 to 4.6.0
Bumps [babdev/pagerfanta-bundle](https://github.com/BabDev/PagerfantaBundle) from 4.5.0 to 4.6.0.
- [Changelog](https://github.com/BabDev/PagerfantaBundle/blob/4.x/CHANGELOG.md)
- [Commits](https://github.com/BabDev/PagerfantaBundle/compare/v4.5.0...v4.6.0)

---
updated-dependencies:
- dependency-name: babdev/pagerfanta-bundle
  dependency-version: 4.6.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-01 03:23:09 +00:00
1172152a49 build(deps-dev): bump friendsofphp/php-cs-fixer from 3.90.0 to 3.91.0
Bumps [friendsofphp/php-cs-fixer](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer) from 3.90.0 to 3.91.0.
- [Release notes](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/releases)
- [Changelog](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/blob/master/CHANGELOG.md)
- [Commits](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/compare/v3.90.0...v3.91.0)

---
updated-dependencies:
- dependency-name: friendsofphp/php-cs-fixer
  dependency-version: 3.91.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-01 03:23:00 +00:00
2148f98cde build(deps): bump incenteev/composer-parameter-handler
Bumps [incenteev/composer-parameter-handler](https://github.com/Incenteev/ParameterHandler) from 2.2.0 to 2.3.0.
- [Release notes](https://github.com/Incenteev/ParameterHandler/releases)
- [Changelog](https://github.com/Incenteev/ParameterHandler/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Incenteev/ParameterHandler/compare/v2.2.0...v2.3.0)

---
updated-dependencies:
- dependency-name: incenteev/composer-parameter-handler
  dependency-version: 2.3.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-01 03:22:47 +00:00
8b65eea335 build(deps): bump twig/twig in the twig-dependencies group
Bumps the twig-dependencies group with 1 update: [twig/twig](https://github.com/twigphp/Twig).


Updates `twig/twig` from 3.22.0 to 3.22.1
- [Changelog](https://github.com/twigphp/Twig/blob/3.x/CHANGELOG)
- [Commits](https://github.com/twigphp/Twig/compare/v3.22.0...v3.22.1)

---
updated-dependencies:
- dependency-name: twig/twig
  dependency-version: 3.22.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: twig-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-01 03:22:33 +00:00
2367e07cc9 build(deps-dev): bump symfony/phpunit-bridge
Bumps the symfony-dependencies group with 1 update: [symfony/phpunit-bridge](https://github.com/symfony/phpunit-bridge).


Updates `symfony/phpunit-bridge` from 7.3.4 to 7.4.0
- [Release notes](https://github.com/symfony/phpunit-bridge/releases)
- [Changelog](https://github.com/symfony/phpunit-bridge/blob/7.4/CHANGELOG.md)
- [Commits](https://github.com/symfony/phpunit-bridge/compare/v7.3.4...v7.4.0)

---
updated-dependencies:
- dependency-name: symfony/phpunit-bridge
  dependency-version: 7.4.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: symfony-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-01 03:22:28 +00:00
659ddb24c4 Merge pull request #8571 from weblate/weblate-wallabag-messages
Translations update from Hosted Weblate
2025-11-27 10:06:13 +01:00
6f985ac1f9 Translated using Weblate (German)
Currently translated at 100.0% (35 of 35 strings)
2025-11-27 10:00:33 +01:00
dabb1def1e Translated using Weblate (German)
Currently translated at 100.0% (607 of 607 strings)
2025-11-27 10:00:32 +01:00
10089ae8e4 Merge pull request #8570 from weblate/weblate-wallabag-messages
Translations update from Hosted Weblate
2025-11-24 13:24:14 +01:00
a10cbb9f9b Translated using Weblate (Ukrainian)
Currently translated at 84.8% (515 of 607 strings)
2025-11-24 11:51:42 +00:00
be693b51c3 Merge pull request #8568 from wallabag/dependabot/composer/php-amqplib/php-amqplib-3.7.4 2025-11-24 06:57:18 +01:00
cc1b9331cf Merge pull request #8562 from wallabag/dependabot/composer/doctrine/migrations-3.9.5 2025-11-24 06:56:30 +01:00
79ae078f22 Merge pull request #8563 from wallabag/dependabot/composer/scssphp/scssphp-2.1.0 2025-11-24 06:56:08 +01:00
a6ece8d165 Merge pull request #8564 from wallabag/dependabot/composer/friendsofphp/php-cs-fixer-3.90.0 2025-11-24 06:55:27 +01:00
e66c67264d Merge pull request #8565 from wallabag/dependabot/composer/tecnickcom/tcpdf-6.10.1 2025-11-24 06:54:55 +01:00
58161d0793 Merge pull request #8569 from wallabag/dependabot/github_actions/actions/checkout-6 2025-11-24 06:54:06 +01:00
31e63e5440 Merge pull request #8567 from wallabag/dependabot/npm_and_yarn/symfony/webpack-encore-5.3.1
build(deps-dev): bump @symfony/webpack-encore from 5.2.0 to 5.3.1
2025-11-24 03:27:02 +00:00
0da0cc9fb4 Merge pull request #8566 from wallabag/dependabot/npm_and_yarn/webpack-5.103.0
build(deps-dev): bump webpack from 5.102.1 to 5.103.0
2025-11-24 03:26:33 +00:00
4414e506ed build(deps-dev): bump @symfony/webpack-encore from 5.2.0 to 5.3.1
Bumps [@symfony/webpack-encore](https://github.com/symfony/webpack-encore) from 5.2.0 to 5.3.1.
- [Release notes](https://github.com/symfony/webpack-encore/releases)
- [Changelog](https://github.com/symfony/webpack-encore/blob/main/CHANGELOG.md)
- [Commits](https://github.com/symfony/webpack-encore/compare/v5.2.0...v5.3.1)

---
updated-dependencies:
- dependency-name: "@symfony/webpack-encore"
  dependency-version: 5.3.1
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-24 03:16:32 +00:00
e47fbf54b9 build(deps-dev): bump webpack from 5.102.1 to 5.103.0
Bumps [webpack](https://github.com/webpack/webpack) from 5.102.1 to 5.103.0.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.102.1...v5.103.0)

---
updated-dependencies:
- dependency-name: webpack
  dependency-version: 5.103.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-24 03:12:08 +00:00
071ad5fb21 Merge pull request #8561 from wallabag/dependabot/npm_and_yarn/core-js-3.47.0
build(deps-dev): bump core-js from 3.46.0 to 3.47.0
2025-11-24 03:05:24 +00:00
0fb995a51e build(deps): bump actions/checkout from 5 to 6
Bumps [actions/checkout](https://github.com/actions/checkout) from 5 to 6.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v5...v6)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-24 03:04:09 +00:00
09fa324a8a build(deps): bump php-amqplib/php-amqplib from 3.7.3 to 3.7.4
Bumps [php-amqplib/php-amqplib](https://github.com/php-amqplib/php-amqplib) from 3.7.3 to 3.7.4.
- [Release notes](https://github.com/php-amqplib/php-amqplib/releases)
- [Changelog](https://github.com/php-amqplib/php-amqplib/blob/master/CHANGELOG.md)
- [Commits](https://github.com/php-amqplib/php-amqplib/compare/v3.7.3...v3.7.4)

---
updated-dependencies:
- dependency-name: php-amqplib/php-amqplib
  dependency-version: 3.7.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-24 03:03:05 +00:00
4377434228 build(deps): bump tecnickcom/tcpdf from 6.10.0 to 6.10.1
Bumps [tecnickcom/tcpdf](https://github.com/tecnickcom/TCPDF) from 6.10.0 to 6.10.1.
- [Changelog](https://github.com/tecnickcom/TCPDF/blob/main/CHANGELOG.TXT)
- [Commits](https://github.com/tecnickcom/TCPDF/compare/6.10.0...6.10.1)

---
updated-dependencies:
- dependency-name: tecnickcom/tcpdf
  dependency-version: 6.10.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-24 03:02:20 +00:00
d3b302681f build(deps-dev): bump friendsofphp/php-cs-fixer from 3.89.2 to 3.90.0
Bumps [friendsofphp/php-cs-fixer](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer) from 3.89.2 to 3.90.0.
- [Release notes](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/releases)
- [Changelog](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/blob/master/CHANGELOG.md)
- [Commits](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/compare/v3.89.2...v3.90.0)

---
updated-dependencies:
- dependency-name: friendsofphp/php-cs-fixer
  dependency-version: 3.90.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-24 03:01:57 +00:00
ba94bede8a build(deps): bump scssphp/scssphp from 2.0.1 to 2.1.0
Bumps [scssphp/scssphp](https://github.com/scssphp/scssphp) from 2.0.1 to 2.1.0.
- [Release notes](https://github.com/scssphp/scssphp/releases)
- [Commits](https://github.com/scssphp/scssphp/compare/v2.0.1...v2.1.0)

---
updated-dependencies:
- dependency-name: scssphp/scssphp
  dependency-version: 2.1.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-24 03:01:44 +00:00
9a7b8a0665 build(deps): bump doctrine/migrations from 3.9.4 to 3.9.5
Bumps [doctrine/migrations](https://github.com/doctrine/migrations) from 3.9.4 to 3.9.5.
- [Release notes](https://github.com/doctrine/migrations/releases)
- [Commits](https://github.com/doctrine/migrations/compare/3.9.4...3.9.5)

---
updated-dependencies:
- dependency-name: doctrine/migrations
  dependency-version: 3.9.5
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-24 03:01:35 +00:00
11243a5fe6 build(deps-dev): bump core-js from 3.46.0 to 3.47.0
Bumps [core-js](https://github.com/zloirock/core-js/tree/HEAD/packages/core-js) from 3.46.0 to 3.47.0.
- [Release notes](https://github.com/zloirock/core-js/releases)
- [Changelog](https://github.com/zloirock/core-js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/zloirock/core-js/commits/v3.47.0/packages/core-js)

---
updated-dependencies:
- dependency-name: core-js
  dependency-version: 3.47.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-24 03:01:35 +00:00
2269d8d298 Merge pull request #8560 from wallabag/make-controllers-get-parameters-from-constructor
Make controllers get parameters from constructor
2025-11-23 17:16:37 +01:00
b2989c5dfd Merge pull request #8559 from wallabag/use-default-firewall-name
Use default firewall name
2025-11-23 17:15:54 +01:00
cf57bb3ed1 Make controllers get parameters from constructor 2025-11-23 02:21:43 +01:00
a2497d9ce8 Remove need to pass firewall name to log in in tests
One less usage of parameters in tests
2025-11-23 00:59:35 +01:00
3c6c0ed74e Rename firewall from secured_area to default main 2025-11-23 00:57:51 +01:00
da8254ab18 Merge pull request #8557 from rootshellz/fix_docker_wallabag_user_agent
include wallabag_user_agent in the docker parameters.yml
2025-11-20 09:57:04 +01:00
1d46ee6ad2 Merge pull request #8556 from rootshellz/fix_docker_by_pinning_to_bookworm
pin the docker base image to bookworm - Fixes #8455
2025-11-20 09:54:38 +01:00
5dcfe76880 include wallabag_user_agent in the docker parameters.yml 2025-11-20 01:27:24 -07:00
b1be5cb9e1 pin the docker base image to bookworm - Fixes #8455 2025-11-19 23:42:13 -07:00
5f313f650c Merge pull request #8554 from wallabag/dependabot/npm_and_yarn/js-yaml-4.1.1
build(deps): bump js-yaml from 4.1.0 to 4.1.1
2025-11-17 05:48:47 +00:00
f2de609993 Merge pull request #8553 from wallabag/dependabot/composer/doctrine/doctrine-migrations-bundle-3.7.0 2025-11-17 06:39:30 +01:00
a387cded37 build(deps): bump js-yaml from 4.1.0 to 4.1.1
Bumps [js-yaml](https://github.com/nodeca/js-yaml) from 4.1.0 to 4.1.1.
- [Changelog](https://github.com/nodeca/js-yaml/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nodeca/js-yaml/compare/4.1.0...4.1.1)

---
updated-dependencies:
- dependency-name: js-yaml
  dependency-version: 4.1.1
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-17 05:39:28 +00:00
62e3d8bb44 Merge pull request #8552 from wallabag/dependabot/composer/twig-dependencies-37611a63c8 2025-11-17 06:38:51 +01:00
36ace0da85 Merge pull request #8550 from wallabag/dependabot/composer/symfony-dependencies-a989592f57 2025-11-17 06:38:25 +01:00
f902eeba5e Merge pull request #8551 from wallabag/dependabot/npm_and_yarn/autoprefixer-10.4.22
build(deps-dev): bump autoprefixer from 10.4.21 to 10.4.22
2025-11-17 03:12:47 +00:00
d64aea41b0 build(deps): bump doctrine/doctrine-migrations-bundle
Bumps [doctrine/doctrine-migrations-bundle](https://github.com/doctrine/DoctrineMigrationsBundle) from 3.6.0 to 3.7.0.
- [Release notes](https://github.com/doctrine/DoctrineMigrationsBundle/releases)
- [Commits](https://github.com/doctrine/DoctrineMigrationsBundle/compare/3.6.0...3.7.0)

---
updated-dependencies:
- dependency-name: doctrine/doctrine-migrations-bundle
  dependency-version: 3.7.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-17 03:02:06 +00:00
c0c3de85bb build(deps): bump the twig-dependencies group with 2 updates
Bumps the twig-dependencies group with 2 updates: [twig/extra-bundle](https://github.com/twigphp/twig-extra-bundle) and [twig/string-extra](https://github.com/twigphp/string-extra).


Updates `twig/extra-bundle` from 3.22.0 to 3.22.1
- [Commits](https://github.com/twigphp/twig-extra-bundle/compare/v3.22.0...v3.22.1)

Updates `twig/string-extra` from 3.22.0 to 3.22.1
- [Commits](https://github.com/twigphp/string-extra/compare/v3.22.0...v3.22.1)

---
updated-dependencies:
- dependency-name: twig/extra-bundle
  dependency-version: 3.22.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: twig-dependencies
- dependency-name: twig/string-extra
  dependency-version: 3.22.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: twig-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-17 03:01:39 +00:00
29fe14cf78 build(deps-dev): bump autoprefixer from 10.4.21 to 10.4.22
Bumps [autoprefixer](https://github.com/postcss/autoprefixer) from 10.4.21 to 10.4.22.
- [Release notes](https://github.com/postcss/autoprefixer/releases)
- [Changelog](https://github.com/postcss/autoprefixer/blob/main/CHANGELOG.md)
- [Commits](https://github.com/postcss/autoprefixer/compare/10.4.21...10.4.22)

---
updated-dependencies:
- dependency-name: autoprefixer
  dependency-version: 10.4.22
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-17 03:01:33 +00:00
2a1772d984 build(deps): bump symfony/http-kernel in the symfony-dependencies group
Bumps the symfony-dependencies group with 1 update: [symfony/http-kernel](https://github.com/symfony/http-kernel).


Updates `symfony/http-kernel` from 5.4.48 to 5.4.50
- [Release notes](https://github.com/symfony/http-kernel/releases)
- [Changelog](https://github.com/symfony/http-kernel/blob/7.3/CHANGELOG.md)
- [Commits](https://github.com/symfony/http-kernel/compare/v5.4.48...v5.4.50)

---
updated-dependencies:
- dependency-name: symfony/http-kernel
  dependency-version: 5.4.50
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: symfony-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-17 03:01:26 +00:00
dc4e0d6d69 Merge pull request #8548 from wallabag/dependabot/composer/symfony/http-foundation-5.4.50 2025-11-13 05:03:31 +01:00
246bdbed55 build(deps): bump symfony/http-foundation from 5.4.48 to 5.4.50
Bumps [symfony/http-foundation](https://github.com/symfony/http-foundation) from 5.4.48 to 5.4.50.
- [Release notes](https://github.com/symfony/http-foundation/releases)
- [Changelog](https://github.com/symfony/http-foundation/blob/7.3/CHANGELOG.md)
- [Commits](https://github.com/symfony/http-foundation/compare/v5.4.48...v5.4.50)

---
updated-dependencies:
- dependency-name: symfony/http-foundation
  dependency-version: 5.4.50
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-12 23:51:03 +00:00
9d6c2ade75 Merge pull request #8544 from wallabag/dependabot/composer/friendsofphp/php-cs-fixer-3.89.2 2025-11-12 06:57:54 +01:00
70e8cbbf00 Merge pull request #8545 from wallabag/dependabot/composer/friendsofsymfony/jsrouting-bundle-3.6.1 2025-11-12 06:57:30 +01:00
20a55f3936 Merge pull request #8546 from wallabag/dependabot/composer/doctrine/doctrine-migrations-bundle-3.6.0 2025-11-12 06:56:36 +01:00
1996c671b7 build(deps): bump doctrine/doctrine-migrations-bundle
Bumps [doctrine/doctrine-migrations-bundle](https://github.com/doctrine/DoctrineMigrationsBundle) from 3.5.0 to 3.6.0.
- [Release notes](https://github.com/doctrine/DoctrineMigrationsBundle/releases)
- [Commits](https://github.com/doctrine/DoctrineMigrationsBundle/compare/3.5.0...3.6.0)

---
updated-dependencies:
- dependency-name: doctrine/doctrine-migrations-bundle
  dependency-version: 3.6.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-10 03:02:51 +00:00
d19423d21e build(deps): bump friendsofsymfony/jsrouting-bundle from 3.5.2 to 3.6.1
Bumps [friendsofsymfony/jsrouting-bundle](https://github.com/FriendsOfSymfony/FOSJsRoutingBundle) from 3.5.2 to 3.6.1.
- [Release notes](https://github.com/FriendsOfSymfony/FOSJsRoutingBundle/releases)
- [Changelog](https://github.com/FriendsOfSymfony/FOSJsRoutingBundle/blob/master/CHANGELOG.md)
- [Commits](https://github.com/FriendsOfSymfony/FOSJsRoutingBundle/compare/3.5.2...3.6.1)

---
updated-dependencies:
- dependency-name: friendsofsymfony/jsrouting-bundle
  dependency-version: 3.6.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-10 03:02:38 +00:00
7768740a38 build(deps-dev): bump friendsofphp/php-cs-fixer from 3.89.1 to 3.89.2
Bumps [friendsofphp/php-cs-fixer](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer) from 3.89.1 to 3.89.2.
- [Release notes](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/releases)
- [Changelog](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/blob/master/CHANGELOG.md)
- [Commits](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/compare/v3.89.1...v3.89.2)

---
updated-dependencies:
- dependency-name: friendsofphp/php-cs-fixer
  dependency-version: 3.89.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-10 03:02:14 +00:00
8a6eddb2a3 Merge pull request #8533 from weblate/weblate-wallabag-messages
Translations update from Hosted Weblate
2025-11-06 10:26:11 +01:00
5df4c0ad02 Merge pull request #8537 from wallabag/dependabot/npm_and_yarn/sass-embedded-1.93.3
build(deps-dev): bump sass-embedded from 1.93.2 to 1.93.3
2025-11-06 08:53:27 +00:00
5021d46034 Translated using Weblate (Croatian)
Currently translated at 100.0% (607 of 607 strings)
2025-11-06 08:53:09 +00:00
34b013710c Merge pull request #8522 from wallabag/dependabot/github_actions/actions/setup-node-6
build(deps): bump actions/setup-node from 5 to 6
2025-11-06 09:53:03 +01:00
b52a3ade4f Merge pull request #8520 from wallabag/dependabot/composer/doctrine/data-fixtures-2.2.0
build(deps-dev): bump doctrine/data-fixtures from 2.1.0 to 2.2.0
2025-11-06 09:52:45 +01:00
a414f62183 Merge pull request #8526 from wallabag/dependabot/composer/nelmio/cors-bundle-2.6.0
build(deps): bump nelmio/cors-bundle from 2.5.0 to 2.6.0
2025-11-06 09:52:27 +01:00
f797d6de04 Merge pull request #8527 from wallabag/dependabot/composer/doctrine/collections-2.4.0
build(deps): bump doctrine/collections from 2.3.0 to 2.4.0
2025-11-06 09:51:57 +01:00
fb7e23ce7e Merge pull request #8528 from wallabag/dependabot/composer/friendsofphp/php-cs-fixer-3.89.1
build(deps-dev): bump friendsofphp/php-cs-fixer from 3.88.2 to 3.89.1
2025-11-06 09:51:36 +01:00
faa4e2b984 Merge pull request #8536 from wallabag/dependabot/composer/twig-dependencies-9c20bb8b1b
build(deps): bump the twig-dependencies group with 3 updates
2025-11-06 09:51:03 +01:00
6771fd9171 Merge pull request #8539 from wallabag/dependabot/composer/j0k3r/graby-site-config-1.0.205
build(deps): bump j0k3r/graby-site-config from 1.0.204 to 1.0.205
2025-11-06 09:50:39 +01:00
5d46997b28 Merge pull request #8540 from wallabag/dependabot/composer/laminas/laminas-code-4.17.0
build(deps): bump laminas/laminas-code from 4.16.0 to 4.17.0
2025-11-06 09:50:05 +01:00
e5489fbb8b build(deps): bump laminas/laminas-code from 4.16.0 to 4.17.0
Bumps [laminas/laminas-code](https://github.com/laminas/laminas-code) from 4.16.0 to 4.17.0.
- [Release notes](https://github.com/laminas/laminas-code/releases)
- [Commits](https://github.com/laminas/laminas-code/compare/4.16.0...4.17.0)

---
updated-dependencies:
- dependency-name: laminas/laminas-code
  dependency-version: 4.17.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-03 03:02:54 +00:00
200642fe43 build(deps): bump j0k3r/graby-site-config from 1.0.204 to 1.0.205
Bumps [j0k3r/graby-site-config](https://github.com/j0k3r/graby-site-config) from 1.0.204 to 1.0.205.
- [Release notes](https://github.com/j0k3r/graby-site-config/releases)
- [Changelog](https://github.com/j0k3r/graby-site-config/blob/master/dallasnews.com.txt)
- [Commits](https://github.com/j0k3r/graby-site-config/compare/1.0.204...1.0.205)

---
updated-dependencies:
- dependency-name: j0k3r/graby-site-config
  dependency-version: 1.0.205
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-03 03:02:30 +00:00
1b8337e81d build(deps-dev): bump sass-embedded from 1.93.2 to 1.93.3
Bumps [sass-embedded](https://github.com/sass/embedded-host-node) from 1.93.2 to 1.93.3.
- [Changelog](https://github.com/sass/embedded-host-node/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/embedded-host-node/compare/1.93.2...1.93.3)

---
updated-dependencies:
- dependency-name: sass-embedded
  dependency-version: 1.93.3
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-03 03:01:52 +00:00
4940638d70 build(deps): bump the twig-dependencies group with 3 updates
Bumps the twig-dependencies group with 3 updates: [twig/extra-bundle](https://github.com/twigphp/twig-extra-bundle), [twig/string-extra](https://github.com/twigphp/string-extra) and [twig/twig](https://github.com/twigphp/Twig).


Updates `twig/extra-bundle` from 3.21.0 to 3.22.0
- [Commits](https://github.com/twigphp/twig-extra-bundle/compare/v3.21.0...v3.22.0)

Updates `twig/string-extra` from 3.21.0 to 3.22.0
- [Commits](https://github.com/twigphp/string-extra/compare/v3.21.0...v3.22.0)

Updates `twig/twig` from 3.21.1 to 3.22.0
- [Changelog](https://github.com/twigphp/Twig/blob/3.x/CHANGELOG)
- [Commits](https://github.com/twigphp/Twig/compare/v3.21.1...v3.22.0)

---
updated-dependencies:
- dependency-name: twig/extra-bundle
  dependency-version: 3.22.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: twig-dependencies
- dependency-name: twig/string-extra
  dependency-version: 3.22.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: twig-dependencies
- dependency-name: twig/twig
  dependency-version: 3.22.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: twig-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-03 03:01:37 +00:00
36a52e28f7 Merge pull request #8529 from wallabag/dependabot/npm_and_yarn/sass-loader-16.0.6
build(deps-dev): bump sass-loader from 16.0.5 to 16.0.6
2025-10-27 03:15:49 +00:00
3c9fb6e1a2 Merge pull request #8525 from wallabag/dependabot/npm_and_yarn/babel-dependencies-0601ab6c5a
build(deps-dev): bump the babel-dependencies group with 3 updates
2025-10-27 03:06:43 +00:00
f62f729ffb build(deps-dev): bump sass-loader from 16.0.5 to 16.0.6
Bumps [sass-loader](https://github.com/webpack/sass-loader) from 16.0.5 to 16.0.6.
- [Release notes](https://github.com/webpack/sass-loader/releases)
- [Changelog](https://github.com/webpack/sass-loader/blob/main/CHANGELOG.md)
- [Commits](https://github.com/webpack/sass-loader/compare/v16.0.5...v16.0.6)

---
updated-dependencies:
- dependency-name: sass-loader
  dependency-version: 16.0.6
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-27 03:04:35 +00:00
c0d9a56d1c build(deps-dev): bump friendsofphp/php-cs-fixer from 3.88.2 to 3.89.1
Bumps [friendsofphp/php-cs-fixer](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer) from 3.88.2 to 3.89.1.
- [Release notes](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/releases)
- [Changelog](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/blob/master/CHANGELOG.md)
- [Commits](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/compare/v3.88.2...v3.89.1)

---
updated-dependencies:
- dependency-name: friendsofphp/php-cs-fixer
  dependency-version: 3.89.1
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-27 03:03:56 +00:00
fcc455b7ea build(deps): bump doctrine/collections from 2.3.0 to 2.4.0
Bumps [doctrine/collections](https://github.com/doctrine/collections) from 2.3.0 to 2.4.0.
- [Release notes](https://github.com/doctrine/collections/releases)
- [Commits](https://github.com/doctrine/collections/compare/2.3.0...2.4.0)

---
updated-dependencies:
- dependency-name: doctrine/collections
  dependency-version: 2.4.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-27 03:02:43 +00:00
9f7255be20 build(deps): bump nelmio/cors-bundle from 2.5.0 to 2.6.0
Bumps [nelmio/cors-bundle](https://github.com/nelmio/NelmioCorsBundle) from 2.5.0 to 2.6.0.
- [Release notes](https://github.com/nelmio/NelmioCorsBundle/releases)
- [Changelog](https://github.com/nelmio/NelmioCorsBundle/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nelmio/NelmioCorsBundle/compare/2.5.0...2.6.0)

---
updated-dependencies:
- dependency-name: nelmio/cors-bundle
  dependency-version: 2.6.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-27 03:02:16 +00:00
6d9e399e69 build(deps-dev): bump the babel-dependencies group with 3 updates
Bumps the babel-dependencies group with 3 updates: [@babel/core](https://github.com/babel/babel/tree/HEAD/packages/babel-core), [@babel/eslint-parser](https://github.com/babel/babel/tree/HEAD/eslint/babel-eslint-parser) and [@babel/preset-env](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-env).


Updates `@babel/core` from 7.28.4 to 7.28.5
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.28.5/packages/babel-core)

Updates `@babel/eslint-parser` from 7.28.4 to 7.28.5
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.28.5/eslint/babel-eslint-parser)

Updates `@babel/preset-env` from 7.28.3 to 7.28.5
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.28.5/packages/babel-preset-env)

---
updated-dependencies:
- dependency-name: "@babel/core"
  dependency-version: 7.28.5
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: babel-dependencies
- dependency-name: "@babel/eslint-parser"
  dependency-version: 7.28.5
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: babel-dependencies
- dependency-name: "@babel/preset-env"
  dependency-version: 7.28.5
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: babel-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-27 03:02:15 +00:00
a89e299ef5 build(deps): bump actions/setup-node from 5 to 6
Bumps [actions/setup-node](https://github.com/actions/setup-node) from 5 to 6.
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](https://github.com/actions/setup-node/compare/v5...v6)

---
updated-dependencies:
- dependency-name: actions/setup-node
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-20 02:03:17 +00:00
3f1c1395dc build(deps-dev): bump doctrine/data-fixtures from 2.1.0 to 2.2.0
Bumps [doctrine/data-fixtures](https://github.com/doctrine/data-fixtures) from 2.1.0 to 2.2.0.
- [Release notes](https://github.com/doctrine/data-fixtures/releases)
- [Commits](https://github.com/doctrine/data-fixtures/compare/2.1.0...2.2.0)

---
updated-dependencies:
- dependency-name: doctrine/data-fixtures
  dependency-version: 2.2.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-20 02:02:58 +00:00
313938766e Merge pull request #8513 from wallabag/dependabot/composer/pagerfanta-dependencies-b99cc8d7fb
build(deps): bump the pagerfanta-dependencies group with 3 updates
2025-10-13 09:04:25 +02:00
e8daa8e760 build(deps): bump the pagerfanta-dependencies group with 3 updates
Bumps the pagerfanta-dependencies group with 3 updates: [pagerfanta/core](https://github.com/Pagerfanta/core), [pagerfanta/doctrine-orm-adapter](https://github.com/Pagerfanta/doctrine-orm-adapter) and [pagerfanta/twig](https://github.com/Pagerfanta/twig).


Updates `pagerfanta/core` from 4.7.1 to 4.7.2
- [Commits](https://github.com/Pagerfanta/core/compare/v4.7.1...v4.7.2)

Updates `pagerfanta/doctrine-orm-adapter` from 4.7.1 to 4.7.2
- [Commits](https://github.com/Pagerfanta/doctrine-orm-adapter/compare/v4.7.1...v4.7.2)

Updates `pagerfanta/twig` from 4.7.1 to 4.7.2
- [Commits](https://github.com/Pagerfanta/twig/compare/v4.7.1...v4.7.2)

---
updated-dependencies:
- dependency-name: pagerfanta/core
  dependency-version: 4.7.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: pagerfanta-dependencies
- dependency-name: pagerfanta/doctrine-orm-adapter
  dependency-version: 4.7.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: pagerfanta-dependencies
- dependency-name: pagerfanta/twig
  dependency-version: 4.7.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: pagerfanta-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-13 06:34:53 +00:00
613aa4655e Merge pull request #8512 from wallabag/fix/meta-grouped-update-pagerfanta
Add grouped update for `pagerfanta`
2025-10-13 08:27:49 +02:00
36bff17cc5 Add grouped update for pagerfanta 2025-10-13 08:23:22 +02:00
0844c1b342 Merge pull request #8501 from weblate/weblate-wallabag-messages 2025-10-13 07:39:49 +02:00
e025ffc3f9 Translated using Weblate (Italian)
Currently translated at 90.2% (548 of 607 strings)
2025-10-13 04:47:10 +00:00
d0f2b189ce Translated using Weblate (Turkish)
Currently translated at 100.0% (607 of 607 strings)
2025-10-13 04:47:09 +00:00
1bd05f1e56 Deleted translation using Weblate (Portuguese (Portugal)) 2025-10-13 04:47:09 +00:00
20f261221d Deleted translation using Weblate (Portuguese (Portugal)) 2025-10-13 04:47:08 +00:00
d2ecbdf6aa Deleted translation using Weblate (Portuguese (Portugal)) 2025-10-13 04:47:08 +00:00
5a5ddad1d2 Deleted translation using Weblate (Portuguese (Portugal)) 2025-10-13 04:47:07 +00:00
393a453b58 Added translation using Weblate (Portuguese (Portugal)) 2025-10-13 04:47:07 +00:00
1171778550 Added translation using Weblate (Portuguese (Portugal)) 2025-10-13 04:47:06 +00:00
7285bd2997 Added translation using Weblate (Portuguese (Portugal)) 2025-10-13 04:47:05 +00:00
d706893dcd Added translation using Weblate (Portuguese (Portugal)) 2025-10-13 04:47:05 +00:00
5c73389fda Merge pull request #8506 from wallabag/dependabot/composer/doctrine/doctrine-migrations-bundle-3.5.0 2025-10-13 06:46:59 +02:00
edcb54e27f Merge pull request #8510 from wallabag/dependabot/npm_and_yarn/core-js-3.46.0
build(deps-dev): bump core-js from 3.45.1 to 3.46.0
2025-10-13 02:18:07 +00:00
96e394693c Merge pull request #8511 from wallabag/dependabot/npm_and_yarn/webpack-5.102.1
build(deps-dev): bump webpack from 5.102.0 to 5.102.1
2025-10-13 02:16:50 +00:00
34d7795841 build(deps-dev): bump webpack from 5.102.0 to 5.102.1
Bumps [webpack](https://github.com/webpack/webpack) from 5.102.0 to 5.102.1.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.102.0...v5.102.1)

---
updated-dependencies:
- dependency-name: webpack
  dependency-version: 5.102.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-13 02:03:58 +00:00
413c92b21c build(deps-dev): bump core-js from 3.45.1 to 3.46.0
Bumps [core-js](https://github.com/zloirock/core-js/tree/HEAD/packages/core-js) from 3.45.1 to 3.46.0.
- [Release notes](https://github.com/zloirock/core-js/releases)
- [Changelog](https://github.com/zloirock/core-js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/zloirock/core-js/commits/v3.46.0/packages/core-js)

---
updated-dependencies:
- dependency-name: core-js
  dependency-version: 3.46.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-13 02:03:35 +00:00
1f15617d06 build(deps): bump doctrine/doctrine-migrations-bundle
Bumps [doctrine/doctrine-migrations-bundle](https://github.com/doctrine/DoctrineMigrationsBundle) from 3.4.2 to 3.5.0.
- [Release notes](https://github.com/doctrine/DoctrineMigrationsBundle/releases)
- [Commits](https://github.com/doctrine/DoctrineMigrationsBundle/compare/3.4.2...3.5.0)

---
updated-dependencies:
- dependency-name: doctrine/doctrine-migrations-bundle
  dependency-version: 3.5.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-13 02:02:10 +00:00
dfc243618f Merge pull request #8493 from wallabag/dependabot/composer/j0k3r/graby-site-config-1.0.204 2025-10-06 06:04:44 +02:00
dbad0893bd Merge pull request #8492 from wallabag/dependabot/npm_and_yarn/webpack-5.102.0
build(deps-dev): bump webpack from 5.101.3 to 5.102.0
2025-10-06 02:05:30 +00:00
a8d2c19bf9 build(deps): bump j0k3r/graby-site-config from 1.0.203 to 1.0.204
Bumps [j0k3r/graby-site-config](https://github.com/j0k3r/graby-site-config) from 1.0.203 to 1.0.204.
- [Release notes](https://github.com/j0k3r/graby-site-config/releases)
- [Changelog](https://github.com/j0k3r/graby-site-config/blob/master/dallasnews.com.txt)
- [Commits](https://github.com/j0k3r/graby-site-config/compare/1.0.203...1.0.204)

---
updated-dependencies:
- dependency-name: j0k3r/graby-site-config
  dependency-version: 1.0.204
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-06 02:02:10 +00:00
c75bff2b74 build(deps-dev): bump webpack from 5.101.3 to 5.102.0
Bumps [webpack](https://github.com/webpack/webpack) from 5.101.3 to 5.102.0.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.101.3...v5.102.0)

---
updated-dependencies:
- dependency-name: webpack
  dependency-version: 5.102.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-06 02:01:49 +00:00
17398e68e5 Merge pull request #8490 from weblate/weblate-wallabag-messages
Translations update from Hosted Weblate
2025-10-03 14:04:16 +02:00
376b6e3f0c Translated using Weblate (German)
Currently translated at 100.0% (35 of 35 strings)
2025-10-03 10:02:03 +00:00
a1b795744d Translated using Weblate (German)
Currently translated at 93.9% (570 of 607 strings)
2025-10-03 10:02:01 +00:00
ee3843c464 Merge pull request #7887 from e-adrien/master
Define a custom user-agent for wallabag
2025-10-02 12:13:11 +02:00
a3e48d3f8d Merge pull request #8291 from wallabag/hide-info-error-prod
Hide sensitive information in production
2025-10-02 10:32:21 +02:00
cf30c39d2f Merge pull request #8482 from wallabag/dependabot/npm_and_yarn/sass-embedded-1.93.2
build(deps-dev): bump sass-embedded from 1.93.0 to 1.93.2
2025-09-29 04:31:15 +00:00
8a8e5f456a Merge pull request #8484 from wallabag/dependabot/composer/friendsofphp/php-cs-fixer-3.88.2 2025-09-29 06:27:39 +02:00
de6b984f19 Merge pull request #8483 from wallabag/dependabot/composer/j0k3r/graby-2.5.0 2025-09-29 06:27:17 +02:00
b177d8bec1 Merge pull request #8481 from wallabag/dependabot/composer/sentry/sentry-symfony-5.6.0 2025-09-29 06:25:25 +02:00
16c7f10afd Merge pull request #8480 from wallabag/dependabot/composer/symfony-dependencies-2808ca657a 2025-09-29 06:24:49 +02:00
acce1f01c4 build(deps-dev): bump friendsofphp/php-cs-fixer from 3.87.2 to 3.88.2
Bumps [friendsofphp/php-cs-fixer](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer) from 3.87.2 to 3.88.2.
- [Release notes](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/releases)
- [Changelog](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/blob/master/CHANGELOG.md)
- [Commits](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/compare/v3.87.2...v3.88.2)

---
updated-dependencies:
- dependency-name: friendsofphp/php-cs-fixer
  dependency-version: 3.88.2
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-29 02:04:06 +00:00
f8713d5326 build(deps): bump j0k3r/graby from 2.4.6 to 2.5.0
Bumps [j0k3r/graby](https://github.com/j0k3r/graby) from 2.4.6 to 2.5.0.
- [Release notes](https://github.com/j0k3r/graby/releases)
- [Commits](https://github.com/j0k3r/graby/compare/2.4.6...v2.5.0)

---
updated-dependencies:
- dependency-name: j0k3r/graby
  dependency-version: 2.5.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-29 02:04:00 +00:00
519008306c build(deps-dev): bump sass-embedded from 1.93.0 to 1.93.2
Bumps [sass-embedded](https://github.com/sass/embedded-host-node) from 1.93.0 to 1.93.2.
- [Changelog](https://github.com/sass/embedded-host-node/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/embedded-host-node/compare/1.93.0...1.93.2)

---
updated-dependencies:
- dependency-name: sass-embedded
  dependency-version: 1.93.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-29 02:02:59 +00:00
9a4eae90a7 build(deps): bump sentry/sentry-symfony from 5.5.0 to 5.6.0
Bumps [sentry/sentry-symfony](https://github.com/getsentry/sentry-symfony) from 5.5.0 to 5.6.0.
- [Release notes](https://github.com/getsentry/sentry-symfony/releases)
- [Changelog](https://github.com/getsentry/sentry-symfony/blob/master/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-symfony/compare/5.5.0...5.6.0)

---
updated-dependencies:
- dependency-name: sentry/sentry-symfony
  dependency-version: 5.6.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-29 02:02:32 +00:00
1c5c16a018 build(deps-dev): bump symfony/phpunit-bridge
Bumps the symfony-dependencies group with 1 update: [symfony/phpunit-bridge](https://github.com/symfony/phpunit-bridge).


Updates `symfony/phpunit-bridge` from 7.3.3 to 7.3.4
- [Release notes](https://github.com/symfony/phpunit-bridge/releases)
- [Changelog](https://github.com/symfony/phpunit-bridge/blob/7.4/CHANGELOG.md)
- [Commits](https://github.com/symfony/phpunit-bridge/compare/v7.3.3...v7.3.4)

---
updated-dependencies:
- dependency-name: symfony/phpunit-bridge
  dependency-version: 7.3.4
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: symfony-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-29 02:01:36 +00:00
bed6d09ef2 Merge pull request #8476 from wallabag/dependabot/npm_and_yarn/sass-embedded-1.93.0
build(deps-dev): bump sass-embedded from 1.92.1 to 1.93.0
2025-09-22 02:08:39 +00:00
9b592c6e74 Merge pull request #8475 from wallabag/dependabot/npm_and_yarn/fontsource-dependencies-24981c60a4
build(deps): bump the fontsource-dependencies group with 4 updates
2025-09-22 02:05:56 +00:00
ca52559d95 build(deps-dev): bump sass-embedded from 1.92.1 to 1.93.0
Bumps [sass-embedded](https://github.com/sass/embedded-host-node) from 1.92.1 to 1.93.0.
- [Changelog](https://github.com/sass/embedded-host-node/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/embedded-host-node/compare/1.92.1...1.93.0)

---
updated-dependencies:
- dependency-name: sass-embedded
  dependency-version: 1.93.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-22 02:02:56 +00:00
4f1c3fc689 build(deps): bump the fontsource-dependencies group with 4 updates
Bumps the fontsource-dependencies group with 4 updates: [@fontsource/atkinson-hyperlegible](https://github.com/fontsource/font-files/tree/HEAD/fonts/google/atkinson-hyperlegible), [@fontsource/eb-garamond](https://github.com/fontsource/font-files/tree/HEAD/fonts/google/eb-garamond), [@fontsource/montserrat](https://github.com/fontsource/font-files/tree/HEAD/fonts/google/montserrat) and [@fontsource/oswald](https://github.com/fontsource/font-files/tree/HEAD/fonts/google/oswald).


Updates `@fontsource/atkinson-hyperlegible` from 5.2.7 to 5.2.8
- [Changelog](https://github.com/fontsource/font-files/blob/main/CHANGELOG.md)
- [Commits](https://github.com/fontsource/font-files/commits/HEAD/fonts/google/atkinson-hyperlegible)

Updates `@fontsource/eb-garamond` from 5.2.6 to 5.2.7
- [Changelog](https://github.com/fontsource/font-files/blob/main/CHANGELOG.md)
- [Commits](https://github.com/fontsource/font-files/commits/HEAD/fonts/google/eb-garamond)

Updates `@fontsource/montserrat` from 5.2.7 to 5.2.8
- [Changelog](https://github.com/fontsource/font-files/blob/main/CHANGELOG.md)
- [Commits](https://github.com/fontsource/font-files/commits/HEAD/fonts/google/montserrat)

Updates `@fontsource/oswald` from 5.2.7 to 5.2.8
- [Changelog](https://github.com/fontsource/font-files/blob/main/CHANGELOG.md)
- [Commits](https://github.com/fontsource/font-files/commits/HEAD/fonts/google/oswald)

---
updated-dependencies:
- dependency-name: "@fontsource/atkinson-hyperlegible"
  dependency-version: 5.2.8
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: fontsource-dependencies
- dependency-name: "@fontsource/eb-garamond"
  dependency-version: 5.2.7
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: fontsource-dependencies
- dependency-name: "@fontsource/montserrat"
  dependency-version: 5.2.8
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: fontsource-dependencies
- dependency-name: "@fontsource/oswald"
  dependency-version: 5.2.8
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: fontsource-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-22 02:02:08 +00:00
f458fb1c9b Merge pull request #8466 from wallabag/dependabot/composer/sentry/sentry-symfony-5.5.0 2025-09-15 08:01:02 +02:00
cc396d07a4 Merge pull request #8465 from wallabag/dependabot/composer/friendsofphp/php-cs-fixer-3.87.2 2025-09-15 08:00:42 +02:00
5b4637602a Merge pull request #8464 from wallabag/dependabot/npm_and_yarn/fontsource-dependencies-384217a707
Bump @fontsource/oswald from 5.2.6 to 5.2.7 in the fontsource-dependencies group
2025-09-15 02:05:36 +00:00
6dbc2e547d Bump sentry/sentry-symfony from 5.3.1 to 5.5.0
Bumps [sentry/sentry-symfony](https://github.com/getsentry/sentry-symfony) from 5.3.1 to 5.5.0.
- [Release notes](https://github.com/getsentry/sentry-symfony/releases)
- [Changelog](https://github.com/getsentry/sentry-symfony/blob/master/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-symfony/compare/5.3.1...5.5.0)

---
updated-dependencies:
- dependency-name: sentry/sentry-symfony
  dependency-version: 5.5.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-15 02:02:34 +00:00
6338fd879c Bump friendsofphp/php-cs-fixer from 3.87.1 to 3.87.2
Bumps [friendsofphp/php-cs-fixer](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer) from 3.87.1 to 3.87.2.
- [Release notes](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/releases)
- [Changelog](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/blob/master/CHANGELOG.md)
- [Commits](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/compare/v3.87.1...v3.87.2)

---
updated-dependencies:
- dependency-name: friendsofphp/php-cs-fixer
  dependency-version: 3.87.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-15 02:02:11 +00:00
fb5381370f Bump @fontsource/oswald in the fontsource-dependencies group
Bumps the fontsource-dependencies group with 1 update: [@fontsource/oswald](https://github.com/fontsource/font-files/tree/HEAD/fonts/google/oswald).


Updates `@fontsource/oswald` from 5.2.6 to 5.2.7
- [Changelog](https://github.com/fontsource/font-files/blob/main/CHANGELOG.md)
- [Commits](https://github.com/fontsource/font-files/commits/HEAD/fonts/google/oswald)

---
updated-dependencies:
- dependency-name: "@fontsource/oswald"
  dependency-version: 5.2.7
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: fontsource-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-15 02:01:48 +00:00
c26e648622 Merge pull request #8460 from wallabag/dependabot/composer/friendsofphp/php-cs-fixer-3.87.1 2025-09-08 07:05:39 +02:00
6b3c91391d Merge pull request #8459 from wallabag/dependabot/github_actions/actions/setup-node-5 2025-09-08 07:05:19 +02:00
88745adfc2 Merge pull request #8461 from wallabag/dependabot/composer/ergebnis/composer-normalize-2.48.2 2025-09-08 07:04:49 +02:00
639cd43c03 Merge pull request #8462 from wallabag/dependabot/npm_and_yarn/sass-embedded-1.92.1
Bump sass-embedded from 1.91.0 to 1.92.1
2025-09-08 02:22:42 +00:00
fe705537bd Bump sass-embedded from 1.91.0 to 1.92.1
Bumps [sass-embedded](https://github.com/sass/embedded-host-node) from 1.91.0 to 1.92.1.
- [Changelog](https://github.com/sass/embedded-host-node/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/embedded-host-node/compare/1.91.0...1.92.1)

---
updated-dependencies:
- dependency-name: sass-embedded
  dependency-version: 1.92.1
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-08 02:19:06 +00:00
b37e88d588 Merge pull request #8458 from wallabag/dependabot/npm_and_yarn/postcss-loader-8.2.0
Bump postcss-loader from 8.1.1 to 8.2.0
2025-09-08 02:16:20 +00:00
66253dee66 Merge pull request #8457 from wallabag/dependabot/npm_and_yarn/fontsource-dependencies-9726f92c83
Bump the fontsource-dependencies group with 2 updates
2025-09-08 02:13:34 +00:00
89bcbcf2ad Merge pull request #8456 from wallabag/dependabot/npm_and_yarn/babel-dependencies-6d4cff5ed5
Bump the babel-dependencies group with 2 updates
2025-09-08 02:05:36 +00:00
aa3d6c2de0 Bump ergebnis/composer-normalize from 2.48.0 to 2.48.2
Bumps [ergebnis/composer-normalize](https://github.com/ergebnis/composer-normalize) from 2.48.0 to 2.48.2.
- [Release notes](https://github.com/ergebnis/composer-normalize/releases)
- [Changelog](https://github.com/ergebnis/composer-normalize/blob/main/CHANGELOG.md)
- [Commits](https://github.com/ergebnis/composer-normalize/compare/2.48.0...2.48.2)

---
updated-dependencies:
- dependency-name: ergebnis/composer-normalize
  dependency-version: 2.48.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-08 02:02:45 +00:00
5ed4bd24de Bump friendsofphp/php-cs-fixer from 3.86.0 to 3.87.1
Bumps [friendsofphp/php-cs-fixer](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer) from 3.86.0 to 3.87.1.
- [Release notes](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/releases)
- [Changelog](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/blob/master/CHANGELOG.md)
- [Commits](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/compare/v3.86.0...v3.87.1)

---
updated-dependencies:
- dependency-name: friendsofphp/php-cs-fixer
  dependency-version: 3.87.1
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-08 02:02:19 +00:00
29cb3bce84 Bump actions/setup-node from 4 to 5
Bumps [actions/setup-node](https://github.com/actions/setup-node) from 4 to 5.
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](https://github.com/actions/setup-node/compare/v4...v5)

---
updated-dependencies:
- dependency-name: actions/setup-node
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-08 02:02:19 +00:00
5a3c1edb8a Bump postcss-loader from 8.1.1 to 8.2.0
Bumps [postcss-loader](https://github.com/webpack-contrib/postcss-loader) from 8.1.1 to 8.2.0.
- [Release notes](https://github.com/webpack-contrib/postcss-loader/releases)
- [Changelog](https://github.com/webpack-contrib/postcss-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/postcss-loader/compare/v8.1.1...v8.2.0)

---
updated-dependencies:
- dependency-name: postcss-loader
  dependency-version: 8.2.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-08 02:02:19 +00:00
02084e0ab7 Bump the fontsource-dependencies group with 2 updates
Bumps the fontsource-dependencies group with 2 updates: [@fontsource/atkinson-hyperlegible](https://github.com/fontsource/font-files/tree/HEAD/fonts/google/atkinson-hyperlegible) and [@fontsource/montserrat](https://github.com/fontsource/font-files/tree/HEAD/fonts/google/montserrat).


Updates `@fontsource/atkinson-hyperlegible` from 5.2.6 to 5.2.7
- [Changelog](https://github.com/fontsource/font-files/blob/main/CHANGELOG.md)
- [Commits](https://github.com/fontsource/font-files/commits/HEAD/fonts/google/atkinson-hyperlegible)

Updates `@fontsource/montserrat` from 5.2.6 to 5.2.7
- [Changelog](https://github.com/fontsource/font-files/blob/main/CHANGELOG.md)
- [Commits](https://github.com/fontsource/font-files/commits/HEAD/fonts/google/montserrat)

---
updated-dependencies:
- dependency-name: "@fontsource/atkinson-hyperlegible"
  dependency-version: 5.2.7
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: fontsource-dependencies
- dependency-name: "@fontsource/montserrat"
  dependency-version: 5.2.7
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: fontsource-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-08 02:02:12 +00:00
599d3464bc Bump the babel-dependencies group with 2 updates
Bumps the babel-dependencies group with 2 updates: [@babel/core](https://github.com/babel/babel/tree/HEAD/packages/babel-core) and [@babel/eslint-parser](https://github.com/babel/babel/tree/HEAD/eslint/babel-eslint-parser).


Updates `@babel/core` from 7.28.3 to 7.28.4
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.28.4/packages/babel-core)

Updates `@babel/eslint-parser` from 7.28.0 to 7.28.4
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.28.4/eslint/babel-eslint-parser)

---
updated-dependencies:
- dependency-name: "@babel/core"
  dependency-version: 7.28.4
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: babel-dependencies
- dependency-name: "@babel/eslint-parser"
  dependency-version: 7.28.4
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: babel-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-08 02:01:54 +00:00
ce364e0945 Merge pull request #8451 from wallabag/dependabot/npm_and_yarn/sass-embedded-1.91.0
Bump sass-embedded from 1.90.0 to 1.91.0
2025-09-01 04:20:38 +00:00
0dc7dd1f3d Merge pull request #8450 from wallabag/dependabot/npm_and_yarn/symfony/webpack-encore-5.2.0
Bump @symfony/webpack-encore from 5.1.0 to 5.2.0
2025-09-01 04:16:03 +00:00
9f3443d312 Merge pull request #8449 from wallabag/dependabot/composer/ergebnis/composer-normalize-2.48.0 2025-09-01 06:15:35 +02:00
b2b5609120 Merge pull request #8448 from wallabag/dependabot/composer/j0k3r/graby-site-config-1.0.203 2025-09-01 06:15:01 +02:00
37dbd3719f Merge pull request #8447 from wallabag/dependabot/composer/symfony-dependencies-4a90ebaab7 2025-09-01 06:14:38 +02:00
b5326997c6 Bump sass-embedded from 1.90.0 to 1.91.0
Bumps [sass-embedded](https://github.com/sass/embedded-host-node) from 1.90.0 to 1.91.0.
- [Changelog](https://github.com/sass/embedded-host-node/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/embedded-host-node/compare/1.90.0...1.91.0)

---
updated-dependencies:
- dependency-name: sass-embedded
  dependency-version: 1.91.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-01 04:13:08 +00:00
81764d2503 Bump @symfony/webpack-encore from 5.1.0 to 5.2.0
Bumps [@symfony/webpack-encore](https://github.com/symfony/webpack-encore) from 5.1.0 to 5.2.0.
- [Release notes](https://github.com/symfony/webpack-encore/releases)
- [Changelog](https://github.com/symfony/webpack-encore/blob/main/CHANGELOG.md)
- [Commits](https://github.com/symfony/webpack-encore/compare/v5.1.0...v5.2.0)

---
updated-dependencies:
- dependency-name: "@symfony/webpack-encore"
  dependency-version: 5.2.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-01 04:12:38 +00:00
1551b5affd Bump ergebnis/composer-normalize from 2.47.0 to 2.48.0
Bumps [ergebnis/composer-normalize](https://github.com/ergebnis/composer-normalize) from 2.47.0 to 2.48.0.
- [Release notes](https://github.com/ergebnis/composer-normalize/releases)
- [Changelog](https://github.com/ergebnis/composer-normalize/blob/main/CHANGELOG.md)
- [Commits](https://github.com/ergebnis/composer-normalize/compare/2.47.0...2.48.0)

---
updated-dependencies:
- dependency-name: ergebnis/composer-normalize
  dependency-version: 2.48.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-01 03:48:07 +00:00
4b95ff97e6 Bump j0k3r/graby-site-config from 1.0.202 to 1.0.203
Bumps [j0k3r/graby-site-config](https://github.com/j0k3r/graby-site-config) from 1.0.202 to 1.0.203.
- [Release notes](https://github.com/j0k3r/graby-site-config/releases)
- [Changelog](https://github.com/j0k3r/graby-site-config/blob/master/dallasnews.com.txt)
- [Commits](https://github.com/j0k3r/graby-site-config/compare/1.0.202...1.0.203)

---
updated-dependencies:
- dependency-name: j0k3r/graby-site-config
  dependency-version: 1.0.203
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-01 03:44:27 +00:00
85d1d3788e Bump symfony/phpunit-bridge in the symfony-dependencies group
Bumps the symfony-dependencies group with 1 update: [symfony/phpunit-bridge](https://github.com/symfony/phpunit-bridge).


Updates `symfony/phpunit-bridge` from 7.3.1 to 7.3.3
- [Release notes](https://github.com/symfony/phpunit-bridge/releases)
- [Changelog](https://github.com/symfony/phpunit-bridge/blob/7.4/CHANGELOG.md)
- [Commits](https://github.com/symfony/phpunit-bridge/compare/v7.3.1...v7.3.3)

---
updated-dependencies:
- dependency-name: symfony/phpunit-bridge
  dependency-version: 7.3.3
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: symfony-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-01 03:42:20 +00:00
80cf8d600a Merge pull request #8441 from wallabag/dependabot/composer/doctrine/migrations-3.9.4
Bump doctrine/migrations from 3.9.3 to 3.9.4
2025-08-25 08:23:07 +02:00
69a5e0e8cb Merge pull request #8442 from wallabag/dependabot/composer/guzzlehttp/psr7-2.8.0
Bump guzzlehttp/psr7 from 2.7.1 to 2.8.0
2025-08-25 08:22:50 +02:00
333cb98c86 Merge pull request #8444 from wallabag/dependabot/npm_and_yarn/core-js-3.45.1
Bump core-js from 3.45.0 to 3.45.1
2025-08-25 04:28:29 +00:00
583b5ce419 Merge pull request #8443 from wallabag/dependabot/npm_and_yarn/webpack-5.101.3
Bump webpack from 5.101.2 to 5.101.3
2025-08-25 04:26:19 +00:00
f2d37ba4ff Bump core-js from 3.45.0 to 3.45.1
Bumps [core-js](https://github.com/zloirock/core-js/tree/HEAD/packages/core-js) from 3.45.0 to 3.45.1.
- [Release notes](https://github.com/zloirock/core-js/releases)
- [Changelog](https://github.com/zloirock/core-js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/zloirock/core-js/commits/v3.45.1/packages/core-js)

---
updated-dependencies:
- dependency-name: core-js
  dependency-version: 3.45.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-25 04:23:00 +00:00
3430c2bcd1 Bump webpack from 5.101.2 to 5.101.3
Bumps [webpack](https://github.com/webpack/webpack) from 5.101.2 to 5.101.3.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.101.2...v5.101.3)

---
updated-dependencies:
- dependency-name: webpack
  dependency-version: 5.101.3
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-25 04:22:31 +00:00
6ce5dc7f92 Bump guzzlehttp/psr7 from 2.7.1 to 2.8.0
Bumps [guzzlehttp/psr7](https://github.com/guzzle/psr7) from 2.7.1 to 2.8.0.
- [Release notes](https://github.com/guzzle/psr7/releases)
- [Changelog](https://github.com/guzzle/psr7/blob/2.8/CHANGELOG.md)
- [Commits](https://github.com/guzzle/psr7/compare/2.7.1...2.8.0)

---
updated-dependencies:
- dependency-name: guzzlehttp/psr7
  dependency-version: 2.8.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-25 03:29:25 +00:00
0c90bbff7c Bump doctrine/migrations from 3.9.3 to 3.9.4
Bumps [doctrine/migrations](https://github.com/doctrine/migrations) from 3.9.3 to 3.9.4.
- [Release notes](https://github.com/doctrine/migrations/releases)
- [Commits](https://github.com/doctrine/migrations/compare/3.9.3...3.9.4)

---
updated-dependencies:
- dependency-name: doctrine/migrations
  dependency-version: 3.9.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-25 03:28:23 +00:00
4684abcd18 Merge pull request #8130 from wallabag/dependabot/composer/pagerfanta/core-4.7.1
Bump pagerfanta/core from 3.8.0 to 4.7.1
2025-08-23 22:41:43 +02:00
44849fe5e2 Bump pagerfanta/core from 3.8.0 to 4.7.1
Bumps [pagerfanta/core](https://github.com/Pagerfanta/core) from 3.8.0 to 4.7.1.
- [Commits](https://github.com/Pagerfanta/core/compare/v3.8.0...v4.7.1)

---
updated-dependencies:
- dependency-name: pagerfanta/core
  dependency-version: 4.7.1
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-23 20:37:03 +00:00
7ad4ed9974 Merge pull request #8386 from wallabag/dependabot/composer/php-amqplib/rabbitmq-bundle-2.17.4
Bump php-amqplib/rabbitmq-bundle from 2.17.3 to 2.17.4
2025-08-20 12:40:56 +02:00
ba7c3c2dd0 Bump php-amqplib/rabbitmq-bundle from 2.17.3 to 2.17.4
Bumps [php-amqplib/rabbitmq-bundle](https://github.com/php-amqplib/RabbitMqBundle) from 2.17.3 to 2.17.4.
- [Release notes](https://github.com/php-amqplib/RabbitMqBundle/releases)
- [Changelog](https://github.com/php-amqplib/RabbitMqBundle/blob/master/CHANGELOG)
- [Commits](https://github.com/php-amqplib/RabbitMqBundle/compare/2.17.3...2.17.4)

---
updated-dependencies:
- dependency-name: php-amqplib/rabbitmq-bundle
  dependency-version: 2.17.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-20 10:27:09 +00:00
bc0d9623f7 Merge pull request #8387 from wallabag/dependabot/composer/sentry/sentry-symfony-5.3.1
Bump sentry/sentry-symfony from 5.3.0 to 5.3.1
2025-08-20 12:24:10 +02:00
ae5a4c7628 Bump sentry/sentry-symfony from 5.3.0 to 5.3.1
Bumps [sentry/sentry-symfony](https://github.com/getsentry/sentry-symfony) from 5.3.0 to 5.3.1.
- [Release notes](https://github.com/getsentry/sentry-symfony/releases)
- [Changelog](https://github.com/getsentry/sentry-symfony/blob/master/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-symfony/compare/5.3.0...5.3.1)

---
updated-dependencies:
- dependency-name: sentry/sentry-symfony
  dependency-version: 5.3.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-20 08:38:08 +00:00
1280351d6a Merge pull request #8404 from wallabag/dependabot/composer/doctrine/data-fixtures-2.1.0
Bump doctrine/data-fixtures from 2.0.3 to 2.1.0
2025-08-20 10:36:41 +02:00
e251048557 Bump doctrine/data-fixtures from 2.0.3 to 2.1.0
Bumps [doctrine/data-fixtures](https://github.com/doctrine/data-fixtures) from 2.0.3 to 2.1.0.
- [Release notes](https://github.com/doctrine/data-fixtures/releases)
- [Commits](https://github.com/doctrine/data-fixtures/compare/2.0.3...2.1.0)

---
updated-dependencies:
- dependency-name: doctrine/data-fixtures
  dependency-version: 2.1.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-20 08:29:53 +00:00
3921d5ec71 Merge pull request #8402 from wallabag/dependabot/composer/predis/predis-3.2.0
Bump predis/predis from 2.3.0 to 3.2.0
2025-08-20 10:28:48 +02:00
279dcc2864 Bump predis/predis from 2.3.0 to 3.2.0
Bumps [predis/predis](https://github.com/predis/predis) from 2.3.0 to 3.2.0.
- [Release notes](https://github.com/predis/predis/releases)
- [Changelog](https://github.com/predis/predis/blob/main/CHANGELOG.md)
- [Commits](https://github.com/predis/predis/compare/v2.3.0...v3.2.0)

---
updated-dependencies:
- dependency-name: predis/predis
  dependency-version: 3.2.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-20 08:25:06 +00:00
532cf257a4 Merge pull request #8434 from Akhilanandateja/feat/add-korean-language
feat(locale): Add Korean to the list of available languages
2025-08-20 10:21:15 +02:00
836351a96b feat(locale): Add Korean to the list of available languages
This adds 'ko' to the parameters.wallabag.languages list, making it selectable in the user settings. This resolves issue #8427.
2025-08-20 10:36:45 +05:30
00fce2ceca Merge pull request #8422 from wallabag/dependabot/composer/friendsofphp/php-cs-fixer-3.86.0
Bump friendsofphp/php-cs-fixer from 3.84.0 to 3.86.0
2025-08-19 18:00:59 +02:00
9023d85aad Bump friendsofphp/php-cs-fixer from 3.84.0 to 3.86.0
Bumps [friendsofphp/php-cs-fixer](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer) from 3.84.0 to 3.86.0.
- [Release notes](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/releases)
- [Changelog](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/blob/master/CHANGELOG.md)
- [Commits](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/compare/v3.84.0...v3.86.0)

---
updated-dependencies:
- dependency-name: friendsofphp/php-cs-fixer
  dependency-version: 3.86.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-19 17:52:56 +02:00
dcdd9df3ed Merge pull request #8421 from wallabag/dependabot/composer/doctrine/migrations-3.9.3
Bump doctrine/migrations from 3.9.1 to 3.9.3
2025-08-19 10:48:41 +02:00
c5fad5e80c Bump doctrine/migrations from 3.9.1 to 3.9.3
Bumps [doctrine/migrations](https://github.com/doctrine/migrations) from 3.9.1 to 3.9.3.
- [Release notes](https://github.com/doctrine/migrations/releases)
- [Commits](https://github.com/doctrine/migrations/compare/3.9.1...3.9.3)

---
updated-dependencies:
- dependency-name: doctrine/migrations
  dependency-version: 3.9.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-18 14:03:01 +00:00
a97e84a21e Merge pull request #8425 from wallabag/dependabot/npm_and_yarn/babel-dependencies-7678d992f1
Bump the babel-dependencies group with 2 updates
2025-08-18 09:11:26 +00:00
0371188aa4 Merge pull request #8423 from wallabag/dependabot/github_actions/actions/checkout-5
Bump actions/checkout from 4 to 5
2025-08-18 09:59:38 +02:00
61b1bb9261 Merge pull request #8426 from wallabag/dependabot/npm_and_yarn/mini-css-extract-plugin-2.9.4
Bump mini-css-extract-plugin from 2.9.3 to 2.9.4
2025-08-18 04:14:48 +00:00
7e6de2117f Merge pull request #8424 from wallabag/dependabot/npm_and_yarn/webpack-5.101.2
Bump webpack from 5.101.0 to 5.101.2
2025-08-18 04:09:30 +00:00
7c563b967e Bump mini-css-extract-plugin from 2.9.3 to 2.9.4
Bumps [mini-css-extract-plugin](https://github.com/webpack-contrib/mini-css-extract-plugin) from 2.9.3 to 2.9.4.
- [Release notes](https://github.com/webpack-contrib/mini-css-extract-plugin/releases)
- [Changelog](https://github.com/webpack-contrib/mini-css-extract-plugin/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/mini-css-extract-plugin/compare/v2.9.3...v2.9.4)

---
updated-dependencies:
- dependency-name: mini-css-extract-plugin
  dependency-version: 2.9.4
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-18 04:09:11 +00:00
4517cb3b0a Bump the babel-dependencies group with 2 updates
Bumps the babel-dependencies group with 2 updates: [@babel/core](https://github.com/babel/babel/tree/HEAD/packages/babel-core) and [@babel/preset-env](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-env).


Updates `@babel/core` from 7.28.0 to 7.28.3
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.28.3/packages/babel-core)

Updates `@babel/preset-env` from 7.28.0 to 7.28.3
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.28.3/packages/babel-preset-env)

---
updated-dependencies:
- dependency-name: "@babel/core"
  dependency-version: 7.28.3
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: babel-dependencies
- dependency-name: "@babel/preset-env"
  dependency-version: 7.28.3
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: babel-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-18 04:09:02 +00:00
b1502333a6 Bump webpack from 5.101.0 to 5.101.2
Bumps [webpack](https://github.com/webpack/webpack) from 5.101.0 to 5.101.2.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.101.0...v5.101.2)

---
updated-dependencies:
- dependency-name: webpack
  dependency-version: 5.101.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-18 04:05:57 +00:00
69b6983df6 Bump actions/checkout from 4 to 5
Bumps [actions/checkout](https://github.com/actions/checkout) from 4 to 5.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v4...v5)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-18 03:25:09 +00:00
2ee88ffe4e Merge pull request #8409 from wallabag/dependabot/composer/enshrined/svg-sanitize-0.22.0
Bump enshrined/svg-sanitize from 0.21.0 to 0.22.0
2025-08-13 09:47:53 +02:00
96133123da Bump enshrined/svg-sanitize from 0.21.0 to 0.22.0
Bumps [enshrined/svg-sanitize](https://github.com/darylldoyle/svg-sanitizer) from 0.21.0 to 0.22.0.
- [Release notes](https://github.com/darylldoyle/svg-sanitizer/releases)
- [Commits](https://github.com/darylldoyle/svg-sanitizer/compare/0.21.0...0.22.0)

---
updated-dependencies:
- dependency-name: enshrined/svg-sanitize
  dependency-version: 0.22.0
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-13 04:43:26 +00:00
f6ca2b9ff8 Merge pull request #8407 from wallabag/dependabot/npm_and_yarn/sass-embedded-1.90.0
Bump sass-embedded from 1.89.2 to 1.90.0
2025-08-09 20:59:19 +00:00
6c77dd1d15 Merge pull request #8406 from wallabag/dependabot/npm_and_yarn/mini-css-extract-plugin-2.9.3
Bump mini-css-extract-plugin from 2.9.2 to 2.9.3
2025-08-09 20:58:58 +00:00
f906f62a3f Merge pull request #8403 from wallabag/dependabot/npm_and_yarn/core-js-3.45.0
Bump core-js from 3.44.0 to 3.45.0
2025-08-09 20:57:31 +00:00
6fa6ebc0a4 Bump sass-embedded from 1.89.2 to 1.90.0
Bumps [sass-embedded](https://github.com/sass/embedded-host-node) from 1.89.2 to 1.90.0.
- [Changelog](https://github.com/sass/embedded-host-node/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/embedded-host-node/compare/1.89.2...1.90.0)

---
updated-dependencies:
- dependency-name: sass-embedded
  dependency-version: 1.90.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-09 20:46:28 +00:00
b443e9388d Bump mini-css-extract-plugin from 2.9.2 to 2.9.3
Bumps [mini-css-extract-plugin](https://github.com/webpack-contrib/mini-css-extract-plugin) from 2.9.2 to 2.9.3.
- [Release notes](https://github.com/webpack-contrib/mini-css-extract-plugin/releases)
- [Changelog](https://github.com/webpack-contrib/mini-css-extract-plugin/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/mini-css-extract-plugin/compare/v2.9.2...v2.9.3)

---
updated-dependencies:
- dependency-name: mini-css-extract-plugin
  dependency-version: 2.9.3
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-09 20:46:08 +00:00
925c08fa83 Bump core-js from 3.44.0 to 3.45.0
Bumps [core-js](https://github.com/zloirock/core-js/tree/HEAD/packages/core-js) from 3.44.0 to 3.45.0.
- [Release notes](https://github.com/zloirock/core-js/releases)
- [Changelog](https://github.com/zloirock/core-js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/zloirock/core-js/commits/v3.45.0/packages/core-js)

---
updated-dependencies:
- dependency-name: core-js
  dependency-version: 3.45.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-09 20:45:34 +00:00
896e81b229 Merge pull request #8392 from wallabag/misc/codeowners
Add CODEOWNERS, fix deprecation
2025-08-09 22:43:39 +02:00
efaa129ef1 Merge pull request #8395 from wallabag/dependabot/npm_and_yarn/tmp-0.2.4
Bump tmp from 0.2.3 to 0.2.4
2025-08-06 17:11:30 +00:00
75f9e2a144 Bump tmp from 0.2.3 to 0.2.4
Bumps [tmp](https://github.com/raszi/node-tmp) from 0.2.3 to 0.2.4.
- [Changelog](https://github.com/raszi/node-tmp/blob/master/CHANGELOG.md)
- [Commits](https://github.com/raszi/node-tmp/compare/v0.2.3...v0.2.4)

---
updated-dependencies:
- dependency-name: tmp
  dependency-version: 0.2.4
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-06 17:07:57 +00:00
61a28a5ca2 Add CODEOWNERS, fix deprecation
References:
- https://github.com/wallabag/wallabag/pull/8388#issuecomment-3148942621
- https://github.blog/changelog/2025-04-29-dependabot-reviewers-configuration-option-being-replaced-by-code-owners/
- https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-code-owners

Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2025-08-05 18:25:02 +02:00
0be919c8fd Merge pull request #8388 from wallabag/dependabot/composer/j0k3r/graby-site-config-1.0.202
Bump j0k3r/graby-site-config from 1.0.201 to 1.0.202
2025-08-05 18:10:28 +02:00
c2ae69edbb Merge pull request #8391 from wallabag/dependabot/npm_and_yarn/webpack-5.101.0
Bump webpack from 5.100.2 to 5.101.0
2025-08-04 03:37:55 +00:00
8b6f1696f4 Bump webpack from 5.100.2 to 5.101.0
Bumps [webpack](https://github.com/webpack/webpack) from 5.100.2 to 5.101.0.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.100.2...v5.101.0)

---
updated-dependencies:
- dependency-name: webpack
  dependency-version: 5.101.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-04 03:34:25 +00:00
6f76578a51 Bump j0k3r/graby-site-config from 1.0.201 to 1.0.202
Bumps [j0k3r/graby-site-config](https://github.com/j0k3r/graby-site-config) from 1.0.201 to 1.0.202.
- [Release notes](https://github.com/j0k3r/graby-site-config/releases)
- [Changelog](https://github.com/j0k3r/graby-site-config/blob/master/dallasnews.com.txt)
- [Commits](https://github.com/j0k3r/graby-site-config/compare/1.0.201...1.0.202)

---
updated-dependencies:
- dependency-name: j0k3r/graby-site-config
  dependency-version: 1.0.202
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-04 02:28:19 +00:00
3ad06d69a5 Merge pull request #8142 from wallabag/fix/2fa-setup
Add a two-step setup of OTP
2025-07-28 23:09:51 +02:00
b09224cac1 Add a two-step setup of OTP
Before this change, 2FA with OTP was enabled before the user was able to
submit a code to validate the setup. Thus, this could lead to a
situation where the user is locked out of her account if there was an
issue setting up her application.

Now we rely on a new boolean property that is set to true only after the
user submits a valid code during the setup phase.

Fixes #4867

Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2025-07-28 22:58:43 +02:00
3f6c01103d Merge pull request #8376 from alexislefebvre/patch-1
doc: update link to CI to lead to the main branch
2025-07-22 17:25:08 +02:00
396221376d Merge pull request #8379 from wallabag/dependabot/composer/friendsofphp/php-cs-fixer-3.84.0
Bump friendsofphp/php-cs-fixer from 3.82.2 to 3.84.0
2025-07-21 09:41:44 +02:00
d5c316dcc4 Bump friendsofphp/php-cs-fixer from 3.82.2 to 3.84.0
---
updated-dependencies:
- dependency-name: friendsofphp/php-cs-fixer
  dependency-version: 3.84.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-21 03:04:34 +00:00
24e240ca03 Merge pull request #8378 from wallabag/dependabot/npm_and_yarn/webpack-5.100.2
Bump webpack from 5.100.1 to 5.100.2
2025-07-21 02:32:22 +00:00
96f15e0246 Bump webpack from 5.100.1 to 5.100.2
---
updated-dependencies:
- dependency-name: webpack
  dependency-version: 5.100.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-21 02:28:37 +00:00
10bd1ed3d3 doc: update link to CI to lead to the main branch 2025-07-20 14:57:32 +02:00
487643c5f6 Merge pull request #8374 from wallabag/fix-static-pages
Fix about and quickstart pages
2025-07-18 16:40:02 +02:00
ebc066ec62 Fix about and quickstart pages 2025-07-18 16:32:36 +02:00
5b2e36f4d7 Merge pull request #8368 from wallabag/dependabot/composer/friendsofphp/php-cs-fixer-3.82.2
Bump friendsofphp/php-cs-fixer from 3.80.0 to 3.82.2
2025-07-15 14:27:51 +02:00
faeb9c5049 Merge pull request #8367 from wallabag/dependabot/composer/sentry/sentry-symfony-5.3.0
Bump sentry/sentry-symfony from 5.2.0 to 5.3.0
2025-07-15 14:27:34 +02:00
1064b65ed0 Bump friendsofphp/php-cs-fixer from 3.80.0 to 3.82.2
Bumps [friendsofphp/php-cs-fixer](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer) from 3.80.0 to 3.82.2.
- [Release notes](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/releases)
- [Changelog](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/blob/master/CHANGELOG.md)
- [Commits](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/compare/v3.80.0...v3.82.2)

---
updated-dependencies:
- dependency-name: friendsofphp/php-cs-fixer
  dependency-version: 3.82.2
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-14 03:04:11 +00:00
b4e22ef367 Bump sentry/sentry-symfony from 5.2.0 to 5.3.0
Bumps [sentry/sentry-symfony](https://github.com/getsentry/sentry-symfony) from 5.2.0 to 5.3.0.
- [Release notes](https://github.com/getsentry/sentry-symfony/releases)
- [Changelog](https://github.com/getsentry/sentry-symfony/blob/master/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-symfony/compare/5.2.0...5.3.0)

---
updated-dependencies:
- dependency-name: sentry/sentry-symfony
  dependency-version: 5.3.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-14 03:00:39 +00:00
bdc13b519e Merge pull request #8366 from wallabag/dependabot/npm_and_yarn/core-js-3.44.0
Bump core-js from 3.43.0 to 3.44.0
2025-07-14 02:29:25 +00:00
365ca09d8e Merge pull request #8365 from wallabag/dependabot/npm_and_yarn/webpack-5.100.1
Bump webpack from 5.99.9 to 5.100.1
2025-07-14 02:25:55 +00:00
9539880690 Bump core-js from 3.43.0 to 3.44.0
Bumps [core-js](https://github.com/zloirock/core-js/tree/HEAD/packages/core-js) from 3.43.0 to 3.44.0.
- [Release notes](https://github.com/zloirock/core-js/releases)
- [Changelog](https://github.com/zloirock/core-js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/zloirock/core-js/commits/v3.44.0/packages/core-js)

---
updated-dependencies:
- dependency-name: core-js
  dependency-version: 3.44.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-14 02:25:44 +00:00
30f77732e5 Bump webpack from 5.99.9 to 5.100.1
Bumps [webpack](https://github.com/webpack/webpack) from 5.99.9 to 5.100.1.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.99.9...v5.100.1)

---
updated-dependencies:
- dependency-name: webpack
  dependency-version: 5.100.1
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-14 02:22:21 +00:00
db8acc217e Merge pull request #8339 from skn/master
Add annotations filter to entries API endpoint
2025-07-11 15:07:29 +02:00
9303a2bad8 Merge pull request #8357 from wallabag/dependabot/composer/friendsofphp/php-cs-fixer-3.80.0
Bump friendsofphp/php-cs-fixer from 3.75.0 to 3.80.0
2025-07-11 15:02:42 +02:00
9926868030 Merge pull request #8359 from weblate/weblate-wallabag-messages
Translations update from Hosted Weblate
2025-07-09 09:34:39 +02:00
90e2212b9d Translated using Weblate (Czech)
Currently translated at 100.0% (607 of 607 strings)
2025-07-08 17:01:47 +02:00
62c01abdc7 Merge pull request #8356 from wallabag/dependabot/composer/j0k3r/graby-site-config-1.0.201 2025-07-07 07:02:45 +02:00
27cd2cd190 Bump friendsofphp/php-cs-fixer from 3.75.0 to 3.80.0
Bumps [friendsofphp/php-cs-fixer](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer) from 3.75.0 to 3.80.0.
- [Release notes](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/releases)
- [Changelog](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/blob/master/CHANGELOG.md)
- [Commits](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/compare/v3.75.0...v3.80.0)

---
updated-dependencies:
- dependency-name: friendsofphp/php-cs-fixer
  dependency-version: 3.80.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-07 02:51:00 +00:00
acc1496f60 Bump j0k3r/graby-site-config from 1.0.200 to 1.0.201
Bumps [j0k3r/graby-site-config](https://github.com/j0k3r/graby-site-config) from 1.0.200 to 1.0.201.
- [Release notes](https://github.com/j0k3r/graby-site-config/releases)
- [Changelog](https://github.com/j0k3r/graby-site-config/blob/master/dallasnews.com.txt)
- [Commits](https://github.com/j0k3r/graby-site-config/compare/1.0.200...1.0.201)

---
updated-dependencies:
- dependency-name: j0k3r/graby-site-config
  dependency-version: 1.0.201
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-07 02:44:17 +00:00
3e3650a7a8 Merge pull request #8355 from wallabag/dependabot/npm_and_yarn/babel-dependencies-a5859267d5
Bump the babel-dependencies group with 3 updates
2025-07-07 02:21:00 +00:00
be8ea09f74 Bump the babel-dependencies group with 3 updates
Bumps the babel-dependencies group with 3 updates: [@babel/core](https://github.com/babel/babel/tree/HEAD/packages/babel-core), [@babel/eslint-parser](https://github.com/babel/babel/tree/HEAD/eslint/babel-eslint-parser) and [@babel/preset-env](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-env).


Updates `@babel/core` from 7.27.7 to 7.28.0
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.28.0/packages/babel-core)

Updates `@babel/eslint-parser` from 7.27.5 to 7.28.0
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.28.0/eslint/babel-eslint-parser)

Updates `@babel/preset-env` from 7.27.2 to 7.28.0
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.28.0/packages/babel-preset-env)

---
updated-dependencies:
- dependency-name: "@babel/core"
  dependency-version: 7.28.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: babel-dependencies
- dependency-name: "@babel/eslint-parser"
  dependency-version: 7.28.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: babel-dependencies
- dependency-name: "@babel/preset-env"
  dependency-version: 7.28.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: babel-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-07 02:17:28 +00:00
ce2ac8f758 Add annotations filter to entries API endpoint
Implement a new filter parameter 'annotations' for the GET /api/entries endpoint
that allows filtering entries based on whether they have annotations. When
annotations=1, only entries with one or more annotations are returned. When
annotations=0, only entries without annotations are returned. This feature
enables users to easily find annotated content through the API.
2025-07-03 20:19:05 +04:00
dbab3c1041 Merge pull request #8290 from wallabag/fix-pocket-csv-controller
Fix PocketCsvController to extend AbstractController
2025-07-02 16:22:37 +02:00
42c87ab1d7 Fix PocketCsvController to extend AbstractController 2025-07-02 16:07:17 +02:00
064b9c4415 Merge pull request #8338 from weblate/weblate-wallabag-messages
Translations update from Hosted Weblate
2025-06-30 10:11:32 +02:00
3ef9e56478 Translated using Weblate (Czech)
Currently translated at 99.8% (606 of 607 strings)
2025-06-30 10:00:07 +02:00
9460df5e37 Merge pull request #8333 from wallabag/dependabot/composer/doctrine/migrations-3.9.1
Bump doctrine/migrations from 3.9.0 to 3.9.1
2025-06-30 08:28:05 +02:00
76fa0d940b Merge pull request #8334 from wallabag/dependabot/composer/symfony-dependencies-1ff414851e
Bump symfony/phpunit-bridge from 7.3.0 to 7.3.1 in the symfony-dependencies group
2025-06-30 08:27:54 +02:00
0130cca0c1 Merge pull request #8335 from wallabag/dependabot/composer/doctrine/data-fixtures-2.0.3
Bump doctrine/data-fixtures from 2.0.2 to 2.0.3
2025-06-30 08:27:44 +02:00
17d44e4ff6 Merge pull request #8336 from wallabag/dependabot/npm_and_yarn/babel-dependencies-63ff7120ed
Bump @babel/core from 7.27.4 to 7.27.7 in the babel-dependencies group
2025-06-30 03:42:55 +00:00
f410c36736 Bump @babel/core from 7.27.4 to 7.27.7 in the babel-dependencies group
Bumps the babel-dependencies group with 1 update: [@babel/core](https://github.com/babel/babel/tree/HEAD/packages/babel-core).


Updates `@babel/core` from 7.27.4 to 7.27.7
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.27.7/packages/babel-core)

---
updated-dependencies:
- dependency-name: "@babel/core"
  dependency-version: 7.27.7
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: babel-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-30 03:39:33 +00:00
923cf60604 Bump doctrine/data-fixtures from 2.0.2 to 2.0.3
---
updated-dependencies:
- dependency-name: doctrine/data-fixtures
  dependency-version: 2.0.3
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-30 02:44:27 +00:00
546e20ae5e Bump symfony/phpunit-bridge in the symfony-dependencies group
---
updated-dependencies:
- dependency-name: symfony/phpunit-bridge
  dependency-version: 7.3.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: symfony-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-30 02:43:38 +00:00
5b1bda636e Bump doctrine/migrations from 3.9.0 to 3.9.1
---
updated-dependencies:
- dependency-name: doctrine/migrations
  dependency-version: 3.9.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-30 02:42:28 +00:00
9068e51c54 Merge pull request #8326 from weblate/weblate-wallabag-messages
Translations update from Hosted Weblate
2025-06-29 09:19:39 +02:00
b73638b7ec Translated using Weblate (Czech)
Currently translated at 99.8% (606 of 607 strings)
2025-06-28 20:01:47 +02:00
fbe01e78a4 Merge pull request #8318 from wallabag/dependabot/npm_and_yarn/postcss-8.5.6
Bump postcss from 8.5.5 to 8.5.6
2025-06-23 02:59:13 +00:00
cb6a4cf91a Merge pull request #8317 from wallabag/dependabot/npm_and_yarn/eslint-plugin-import-2.32.0
Bump eslint-plugin-import from 2.31.0 to 2.32.0
2025-06-23 02:57:08 +00:00
99f2d527fc Bump postcss from 8.5.5 to 8.5.6
Bumps [postcss](https://github.com/postcss/postcss) from 8.5.5 to 8.5.6.
- [Release notes](https://github.com/postcss/postcss/releases)
- [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/postcss/postcss/compare/8.5.5...8.5.6)

---
updated-dependencies:
- dependency-name: postcss
  dependency-version: 8.5.6
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-23 02:55:52 +00:00
4f98befd5f Bump eslint-plugin-import from 2.31.0 to 2.32.0
Bumps [eslint-plugin-import](https://github.com/import-js/eslint-plugin-import) from 2.31.0 to 2.32.0.
- [Release notes](https://github.com/import-js/eslint-plugin-import/releases)
- [Changelog](https://github.com/import-js/eslint-plugin-import/blob/main/CHANGELOG.md)
- [Commits](https://github.com/import-js/eslint-plugin-import/compare/v2.31.0...v2.32.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-import
  dependency-version: 2.32.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-23 02:53:20 +00:00
f6a8412a82 Merge pull request #8306 from weblate/weblate-wallabag-messages 2025-06-19 14:13:37 +02:00
02a30c6438 Translated using Weblate (Korean)
Currently translated at 99.6% (605 of 607 strings)
2025-06-19 14:01:50 +02:00
4fd7c7cce7 Merge pull request #8305 from weblate/weblate-wallabag-messages
Translations update from Hosted Weblate
2025-06-18 12:49:34 +02:00
9e1b91b057 Translated using Weblate (Korean)
Currently translated at 92.4% (561 of 607 strings)
2025-06-18 12:39:38 +02:00
5db128a071 Fix tests 2025-06-17 20:19:30 +02:00
c4f615e711 Hide sensitive information in production 2025-06-17 20:17:44 +02:00
54dcb72288 Merge pull request #8298 from wallabag/dependabot/npm_and_yarn/postcss-8.5.5
Bump postcss from 8.5.4 to 8.5.5
2025-06-16 02:32:31 +00:00
97bedb1b0c Merge pull request #8296 from wallabag/dependabot/npm_and_yarn/core-js-3.43.0
Bump core-js from 3.42.0 to 3.43.0
2025-06-16 02:29:43 +00:00
d5fa287d21 Merge pull request #8297 from wallabag/dependabot/npm_and_yarn/eslint-webpack-plugin-5.0.2
Bump eslint-webpack-plugin from 5.0.1 to 5.0.2
2025-06-16 02:29:19 +00:00
a648efdcce Bump postcss from 8.5.4 to 8.5.5
Bumps [postcss](https://github.com/postcss/postcss) from 8.5.4 to 8.5.5.
- [Release notes](https://github.com/postcss/postcss/releases)
- [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/postcss/postcss/compare/8.5.4...8.5.5)

---
updated-dependencies:
- dependency-name: postcss
  dependency-version: 8.5.5
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-16 02:26:32 +00:00
85e53eb903 Merge pull request #8295 from wallabag/dependabot/npm_and_yarn/sass-embedded-1.89.2
Bump sass-embedded from 1.89.0 to 1.89.2
2025-06-16 02:23:47 +00:00
d405145686 Bump eslint-webpack-plugin from 5.0.1 to 5.0.2
Bumps [eslint-webpack-plugin](https://github.com/webpack-contrib/eslint-webpack-plugin) from 5.0.1 to 5.0.2.
- [Release notes](https://github.com/webpack-contrib/eslint-webpack-plugin/releases)
- [Changelog](https://github.com/webpack-contrib/eslint-webpack-plugin/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/eslint-webpack-plugin/compare/v5.0.1...v5.0.2)

---
updated-dependencies:
- dependency-name: eslint-webpack-plugin
  dependency-version: 5.0.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-16 02:20:50 +00:00
4d0b509e7d Bump core-js from 3.42.0 to 3.43.0
Bumps [core-js](https://github.com/zloirock/core-js/tree/HEAD/packages/core-js) from 3.42.0 to 3.43.0.
- [Release notes](https://github.com/zloirock/core-js/releases)
- [Changelog](https://github.com/zloirock/core-js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/zloirock/core-js/commits/v3.43.0/packages/core-js)

---
updated-dependencies:
- dependency-name: core-js
  dependency-version: 3.43.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-16 02:20:30 +00:00
7a4aca6d8c Bump sass-embedded from 1.89.0 to 1.89.2
Bumps [sass-embedded](https://github.com/sass/embedded-host-node) from 1.89.0 to 1.89.2.
- [Changelog](https://github.com/sass/embedded-host-node/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/embedded-host-node/compare/1.89.0...1.89.2)

---
updated-dependencies:
- dependency-name: sass-embedded
  dependency-version: 1.89.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-16 02:20:17 +00:00
189e8f6857 Move wallabag.user_agent to app/config/parameters.yml.dist 2025-06-13 15:57:56 +01:00
1aa67747bb Define a custom user-agent for wallabag 2025-06-13 15:48:28 +01:00
e90bbaf540 Merge pull request #8189 from ldidry/console-command-to-add-url
 — Add command to import URL for user from command-line
2025-06-13 12:57:25 +02:00
049d87e180 Add tests 2025-06-13 12:46:32 +02:00
0d1748c8a8 — Add command to import URL for user from command-line 2025-06-13 12:46:23 +02:00
540483c583 Merge pull request #8248 from casimir/missing-entry-deleted-event
Dispatch EntryDeletedEvent when removing duplicated entries
2025-06-13 09:19:42 +02:00
95de911efd Merge pull request #8285 from weblate/weblate-wallabag-messages
Translations update from Hosted Weblate
2025-06-12 20:13:54 +02:00
9cae4c6410 Translated using Weblate (Tamil)
Currently translated at 100.0% (607 of 607 strings)
2025-06-11 20:04:42 +02:00
fcdcd5dfe3 Merge pull request #8272 from weblate/weblate-wallabag-messages
Translations update from Hosted Weblate
2025-06-10 09:07:44 +02:00
25eeb24960 Translated using Weblate (Dutch)
Currently translated at 100.0% (7 of 7 strings)
2025-06-09 03:20:21 +00:00
edfb821c44 Translated using Weblate (Dutch)
Currently translated at 100.0% (607 of 607 strings)
2025-06-09 03:20:21 +00:00
bd4b474981 Translated using Weblate (Dutch)
Currently translated at 100.0% (35 of 35 strings)
2025-06-09 03:20:20 +00:00
ffe6ad1819 Merge pull request #8280 from wallabag/dependabot/npm_and_yarn/babel-dependencies-695cf01c57
Bump @babel/eslint-parser from 7.27.1 to 7.27.5 in the babel-dependencies group
2025-06-09 03:20:14 +00:00
2a06a4412d Merge pull request #8279 from wallabag/dependabot/npm_and_yarn/fontsource-dependencies-3ee162abf3
Bump the fontsource-dependencies group with 4 updates
2025-06-09 03:17:28 +00:00
9721fd9c63 Bump @babel/eslint-parser in the babel-dependencies group
Bumps the babel-dependencies group with 1 update: [@babel/eslint-parser](https://github.com/babel/babel/tree/HEAD/eslint/babel-eslint-parser).


Updates `@babel/eslint-parser` from 7.27.1 to 7.27.5
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.27.5/eslint/babel-eslint-parser)

---
updated-dependencies:
- dependency-name: "@babel/eslint-parser"
  dependency-version: 7.27.5
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: babel-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-09 03:16:34 +00:00
0ade0f0112 Bump the fontsource-dependencies group with 4 updates
Bumps the fontsource-dependencies group with 4 updates: [@fontsource/atkinson-hyperlegible](https://github.com/fontsource/font-files/tree/HEAD/fonts/google/atkinson-hyperlegible), [@fontsource/eb-garamond](https://github.com/fontsource/font-files/tree/HEAD/fonts/google/eb-garamond), [@fontsource/montserrat](https://github.com/fontsource/font-files/tree/HEAD/fonts/google/montserrat) and [@fontsource/oswald](https://github.com/fontsource/font-files/tree/HEAD/fonts/google/oswald).


Updates `@fontsource/atkinson-hyperlegible` from 5.2.5 to 5.2.6
- [Changelog](https://github.com/fontsource/font-files/blob/main/CHANGELOG.md)
- [Commits](https://github.com/fontsource/font-files/commits/HEAD/fonts/google/atkinson-hyperlegible)

Updates `@fontsource/eb-garamond` from 5.2.5 to 5.2.6
- [Changelog](https://github.com/fontsource/font-files/blob/main/CHANGELOG.md)
- [Commits](https://github.com/fontsource/font-files/commits/HEAD/fonts/google/eb-garamond)

Updates `@fontsource/montserrat` from 5.2.5 to 5.2.6
- [Changelog](https://github.com/fontsource/font-files/blob/main/CHANGELOG.md)
- [Commits](https://github.com/fontsource/font-files/commits/HEAD/fonts/google/montserrat)

Updates `@fontsource/oswald` from 5.2.5 to 5.2.6
- [Changelog](https://github.com/fontsource/font-files/blob/main/CHANGELOG.md)
- [Commits](https://github.com/fontsource/font-files/commits/HEAD/fonts/google/oswald)

---
updated-dependencies:
- dependency-name: "@fontsource/atkinson-hyperlegible"
  dependency-version: 5.2.6
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: fontsource-dependencies
- dependency-name: "@fontsource/eb-garamond"
  dependency-version: 5.2.6
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: fontsource-dependencies
- dependency-name: "@fontsource/montserrat"
  dependency-version: 5.2.6
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: fontsource-dependencies
- dependency-name: "@fontsource/oswald"
  dependency-version: 5.2.6
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: fontsource-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-09 03:13:51 +00:00
c2c4e46294 Merge pull request #8266 from weblate/weblate-wallabag-messages
Translations update from Hosted Weblate
2025-06-06 13:26:18 +02:00
2a042a7735 Translated using Weblate (Galician)
Currently translated at 100.0% (607 of 607 strings)
2025-06-06 12:26:36 +02:00
b340a581c9 Translated using Weblate (Polish)
Currently translated at 100.0% (607 of 607 strings)
2025-06-05 15:26:25 +02:00
98a8adc6f8 Merge pull request #8254 from weblate/weblate-wallabag-messages
Translations update from Hosted Weblate
2025-06-05 08:54:31 +02:00
244c238aff Translated using Weblate (Dutch)
Currently translated at 100.0% (7 of 7 strings)
2025-06-05 00:42:03 +02:00
1efed23313 Translated using Weblate (Dutch)
Currently translated at 93.0% (562 of 604 strings)
2025-06-05 00:42:03 +02:00
2bef2a09c1 Translated using Weblate (Dutch)
Currently translated at 97.1% (34 of 35 strings)
2025-06-05 00:42:03 +02:00
8fd5a5273d Merge branch '2.6' into master 2025-06-05 00:37:56 +02:00
30a22e690b Merge pull request #8252 from weblate/weblate-wallabag-messages
Translations update from Hosted Weblate
2025-06-04 20:39:40 +02:00
4f34cfa6fc Merge pull request #8251 from wallabag/change-version
Change version in wallabag.yml
2025-06-04 18:48:59 +02:00
661fbadbcb Translated using Weblate (Dutch)
Currently translated at 92.8% (561 of 604 strings)
2025-06-04 18:24:48 +02:00
8e90c0f320 Change version in wallabag.yml 2025-06-04 17:41:09 +02:00
6ffd7382c7 Merge pull request #8229 from wallabag/prepare-2613
Prepare 2.6.13 release
2025-06-04 17:29:19 +02:00
46d6e4d923 Update CHANGELOG 2025-06-04 13:59:00 +02:00
09af127446 Unlock php-readability 2025-06-04 13:59:00 +02:00
4c23196304 Prepare 2.6.13 release 2025-06-04 13:59:00 +02:00
42746f418e Merge pull request #8250 from wallabag/update-site-config
Update joker/graby-site-config
2025-06-04 13:54:23 +02:00
35c4feedd8 Update joker/graby-site-config 2025-06-04 13:42:08 +02:00
2dc1a2b94c also dispatch EntryDeletedEvent when removing duplicated entries 2025-06-04 10:55:28 +02:00
d4472a1684 Merge pull request #8246 from weblate/weblate-wallabag-messages
Translations update from Hosted Weblate
2025-06-04 08:16:56 +02:00
cdb1a6fad5 Translated using Weblate (Polish)
Currently translated at 100.0% (35 of 35 strings)
2025-06-04 07:40:05 +02:00
c451cc96e5 Merge pull request #8240 from wallabag/import/pocket-csv
Add support of Pocket CSV import
2025-06-03 13:32:51 +02:00
c4240c866b PocketCsvImport: rework test to ensure we import all entries
This also adds a test for #8217

Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2025-06-03 13:24:27 +02:00
27d66d9e1d Add 'application/vnd.ms-excel' to allowed MIME types config
Backport #8036
2025-06-03 13:24:27 +02:00
c1397f43ac Add Pocket CSV import 2025-06-03 13:24:27 +02:00
52a16bb75f Merge pull request #8193 from wallabag/add-pocket-shaarli-import
Backport Pocket and Shaarli imports from master
2025-06-02 14:23:33 +02:00
f82c87b520 import: fix some tests
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2025-06-02 13:42:44 +02:00
9ec448ab07 Merge pull request #8213 from weblate/weblate-wallabag-messages 2025-06-02 07:06:28 +02:00
f33a11d387 Translated using Weblate (Dutch)
Currently translated at 92.5% (559 of 604 strings)
2025-06-02 06:50:30 +02:00
4a56e00ea6 Translated using Weblate (Polish)
Currently translated at 100.0% (604 of 604 strings)
2025-06-02 06:50:29 +02:00
a083e1f1fd Added translation using Weblate (Kabyle) 2025-06-02 06:50:29 +02:00
2cc4c483ae Added translation using Weblate (Kabyle) 2025-06-02 06:50:28 +02:00
bd5d504b39 Added translation using Weblate (Kabyle) 2025-06-02 06:50:28 +02:00
e8ce4b4e1a Added translation using Weblate (Kabyle) 2025-06-02 06:50:27 +02:00
910b057032 Merge pull request #8234 from wallabag/dependabot/composer/symfony-dependencies-4be4880c9a 2025-06-02 06:50:21 +02:00
46ab120a46 Merge pull request #8235 from wallabag/dependabot/composer/j0k3r/graby-site-config-1.0.200 2025-06-02 06:50:03 +02:00
47d9d92c69 Merge pull request #8236 from wallabag/dependabot/composer/tecnickcom/tcpdf-6.10.0 2025-06-02 06:49:34 +02:00
37e519f2c0 Merge pull request #8237 from wallabag/dependabot/composer/jms/serializer-3.32.5 2025-06-02 06:49:02 +02:00
e874b5d2bc Bump jms/serializer from 3.32.4 to 3.32.5
Bumps [jms/serializer](https://github.com/schmittjoh/serializer) from 3.32.4 to 3.32.5.
- [Release notes](https://github.com/schmittjoh/serializer/releases)
- [Changelog](https://github.com/schmittjoh/serializer/blob/master/CHANGELOG.md)
- [Commits](https://github.com/schmittjoh/serializer/compare/3.32.4...3.32.5)

---
updated-dependencies:
- dependency-name: jms/serializer
  dependency-version: 3.32.5
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-02 02:35:44 +00:00
13909a8054 Bump tecnickcom/tcpdf from 6.9.4 to 6.10.0
Bumps [tecnickcom/tcpdf](https://github.com/tecnickcom/TCPDF) from 6.9.4 to 6.10.0.
- [Changelog](https://github.com/tecnickcom/TCPDF/blob/main/CHANGELOG.TXT)
- [Commits](https://github.com/tecnickcom/TCPDF/compare/6.9.4...6.10.0)

---
updated-dependencies:
- dependency-name: tecnickcom/tcpdf
  dependency-version: 6.10.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-02 02:35:18 +00:00
bbed48e25f Bump j0k3r/graby-site-config from 1.0.199 to 1.0.200
Bumps [j0k3r/graby-site-config](https://github.com/j0k3r/graby-site-config) from 1.0.199 to 1.0.200.
- [Release notes](https://github.com/j0k3r/graby-site-config/releases)
- [Changelog](https://github.com/j0k3r/graby-site-config/blob/master/dallasnews.com.txt)
- [Commits](https://github.com/j0k3r/graby-site-config/compare/1.0.199...1.0.200)

---
updated-dependencies:
- dependency-name: j0k3r/graby-site-config
  dependency-version: 1.0.200
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-02 02:34:52 +00:00
0691d2445d Bump symfony/phpunit-bridge in the symfony-dependencies group
Bumps the symfony-dependencies group with 1 update: [symfony/phpunit-bridge](https://github.com/symfony/phpunit-bridge).


Updates `symfony/phpunit-bridge` from 7.2.6 to 7.3.0
- [Release notes](https://github.com/symfony/phpunit-bridge/releases)
- [Changelog](https://github.com/symfony/phpunit-bridge/blob/7.2/CHANGELOG.md)
- [Commits](https://github.com/symfony/phpunit-bridge/compare/v7.2.6...v7.3.0)

---
updated-dependencies:
- dependency-name: symfony/phpunit-bridge
  dependency-version: 7.3.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: symfony-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-02 02:34:29 +00:00
cfcdbcd1e9 Merge pull request #8233 from wallabag/dependabot/npm_and_yarn/postcss-8.5.4
Bump postcss from 8.5.3 to 8.5.4
2025-06-02 02:18:38 +00:00
e51e5c624b Merge pull request #8231 from wallabag/dependabot/npm_and_yarn/babel-dependencies-f09091c33a
Bump @babel/core from 7.27.1 to 7.27.4 in the babel-dependencies group
2025-06-02 02:15:18 +00:00
ebeb2b105e Bump postcss from 8.5.3 to 8.5.4
Bumps [postcss](https://github.com/postcss/postcss) from 8.5.3 to 8.5.4.
- [Release notes](https://github.com/postcss/postcss/releases)
- [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/postcss/postcss/compare/8.5.3...8.5.4)

---
updated-dependencies:
- dependency-name: postcss
  dependency-version: 8.5.4
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-02 02:12:43 +00:00
81a4b52841 Bump @babel/core from 7.27.1 to 7.27.4 in the babel-dependencies group
Bumps the babel-dependencies group with 1 update: [@babel/core](https://github.com/babel/babel/tree/HEAD/packages/babel-core).


Updates `@babel/core` from 7.27.1 to 7.27.4
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.27.4/packages/babel-core)

---
updated-dependencies:
- dependency-name: "@babel/core"
  dependency-version: 7.27.4
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: babel-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-02 02:11:59 +00:00
47a374270a Merge pull request #8230 from casimir/wallabag-docker-envsubst
fix(docker): install envsubst from source to support more targets
2025-06-01 23:02:37 +02:00
c01408981a fix(docker): install envsubst from source to support more targets 2025-06-01 22:27:34 +02:00
772a802596 Merge pull request #8194 from wallabag/fix-8158
Add j0k3r/php-readability:1.2.10 as a dependency
2025-06-01 16:51:35 +02:00
29162bde9d Pin j0k3r/php-readability to 1.2.10
We pin php-readability to 1.2.10 because of a regression in 1.2.12

Workaround for #8151

Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2025-06-01 16:37:22 +02:00
2e95ae76c2 Merge pull request #8220 from Aldarone/replace-username-in-shared-entry
Show display name on shared entries instead of username
2025-06-01 16:11:54 +02:00
50b3be776a Show display name on shared entries instead of username 2025-05-29 23:22:31 +02:00
cad5a24fb6 Merge pull request #8199 from wallabag/dependabot/npm_and_yarn/webpack-5.99.9
Bump webpack from 5.99.8 to 5.99.9
2025-05-26 02:33:07 +00:00
2cd1df4722 Bump webpack from 5.99.8 to 5.99.9
Bumps [webpack](https://github.com/webpack/webpack) from 5.99.8 to 5.99.9.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.99.8...v5.99.9)

---
updated-dependencies:
- dependency-name: webpack
  dependency-version: 5.99.9
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-26 02:29:37 +00:00
843d177d80 Merge pull request #8190 from weblate/weblate-wallabag-messages
Translations update from Hosted Weblate
2025-05-24 20:47:57 +02:00
b1614e9267 Add Pocket and Shaarli imports 2025-05-24 16:25:48 +02:00
95ff88dae8 Translated using Weblate (Polish)
Currently translated at 100.0% (604 of 604 strings)
2025-05-24 15:28:38 +02:00
34740694fe Merge pull request #8183 from wallabag/dependabot/composer/tecnickcom/tcpdf-6.9.4 2025-05-19 07:09:56 +02:00
1f3c8eeb61 Merge pull request #8181 from wallabag/dependabot/composer/shipmonk/composer-dependency-analyser-1.8.3 2025-05-19 07:09:36 +02:00
d3c448c858 Merge pull request #8180 from wallabag/dependabot/npm_and_yarn/sass-embedded-1.89.0
Bump sass-embedded from 1.88.0 to 1.89.0
2025-05-19 02:31:18 +00:00
f57280a247 Bump tecnickcom/tcpdf from 6.9.3 to 6.9.4
Bumps [tecnickcom/tcpdf](https://github.com/tecnickcom/TCPDF) from 6.9.3 to 6.9.4.
- [Changelog](https://github.com/tecnickcom/TCPDF/blob/main/CHANGELOG.TXT)
- [Commits](https://github.com/tecnickcom/TCPDF/compare/6.9.3...6.9.4)

---
updated-dependencies:
- dependency-name: tecnickcom/tcpdf
  dependency-version: 6.9.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-19 02:28:50 +00:00
366adf0770 Bump shipmonk/composer-dependency-analyser from 1.8.2 to 1.8.3
Bumps [shipmonk/composer-dependency-analyser](https://github.com/shipmonk-rnd/composer-dependency-analyser) from 1.8.2 to 1.8.3.
- [Release notes](https://github.com/shipmonk-rnd/composer-dependency-analyser/releases)
- [Commits](https://github.com/shipmonk-rnd/composer-dependency-analyser/compare/1.8.2...1.8.3)

---
updated-dependencies:
- dependency-name: shipmonk/composer-dependency-analyser
  dependency-version: 1.8.3
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-19 02:28:14 +00:00
29e43a809d Bump sass-embedded from 1.88.0 to 1.89.0
Bumps [sass-embedded](https://github.com/sass/embedded-host-node) from 1.88.0 to 1.89.0.
- [Changelog](https://github.com/sass/embedded-host-node/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/embedded-host-node/compare/1.88.0...1.89.0)

---
updated-dependencies:
- dependency-name: sass-embedded
  dependency-version: 1.89.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-19 02:28:03 +00:00
8c91ff613c Merge pull request #8176 from wallabag/dependabot/github_actions/dependabot/fetch-metadata-2.4.0 2025-05-12 05:40:31 +02:00
33ab6a8b9c Merge pull request #8172 from wallabag/dependabot/composer/doctrine/doctrine-migrations-bundle-3.4.2 2025-05-12 05:40:13 +02:00
2d7f2e84be Bump dependabot/fetch-metadata from 2.3.0 to 2.4.0
Bumps [dependabot/fetch-metadata](https://github.com/dependabot/fetch-metadata) from 2.3.0 to 2.4.0.
- [Release notes](https://github.com/dependabot/fetch-metadata/releases)
- [Commits](https://github.com/dependabot/fetch-metadata/compare/v2.3.0...v2.4.0)

---
updated-dependencies:
- dependency-name: dependabot/fetch-metadata
  dependency-version: 2.4.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-12 02:57:36 +00:00
0b0724cc95 Merge pull request #8174 from wallabag/dependabot/npm_and_yarn/webpack-5.99.8
Bump webpack from 5.99.7 to 5.99.8
2025-05-12 02:22:49 +00:00
3037c374c1 Merge pull request #8175 from wallabag/dependabot/npm_and_yarn/sass-embedded-1.88.0
Bump sass-embedded from 1.87.0 to 1.88.0
2025-05-12 02:21:14 +00:00
2a70f6c1b5 Bump webpack from 5.99.7 to 5.99.8
Bumps [webpack](https://github.com/webpack/webpack) from 5.99.7 to 5.99.8.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.99.7...v5.99.8)

---
updated-dependencies:
- dependency-name: webpack
  dependency-version: 5.99.8
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-12 02:18:28 +00:00
046cdb978b Merge pull request #8173 from wallabag/dependabot/npm_and_yarn/babel-dependencies-9cfe5952ef
Bump @babel/preset-env from 7.27.1 to 7.27.2 in the babel-dependencies group
2025-05-12 02:16:19 +00:00
dcaf6b0713 Bump sass-embedded from 1.87.0 to 1.88.0
Bumps [sass-embedded](https://github.com/sass/embedded-host-node) from 1.87.0 to 1.88.0.
- [Changelog](https://github.com/sass/embedded-host-node/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/embedded-host-node/compare/1.87.0...1.88.0)

---
updated-dependencies:
- dependency-name: sass-embedded
  dependency-version: 1.88.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-12 02:14:04 +00:00
c2d35a35e3 Bump @babel/preset-env in the babel-dependencies group
Bumps the babel-dependencies group with 1 update: [@babel/preset-env](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-env).


Updates `@babel/preset-env` from 7.27.1 to 7.27.2
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.27.2/packages/babel-preset-env)

---
updated-dependencies:
- dependency-name: "@babel/preset-env"
  dependency-version: 7.27.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: babel-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-12 02:13:02 +00:00
48bdeb930d Bump doctrine/doctrine-migrations-bundle from 3.4.1 to 3.4.2
Bumps [doctrine/doctrine-migrations-bundle](https://github.com/doctrine/DoctrineMigrationsBundle) from 3.4.1 to 3.4.2.
- [Release notes](https://github.com/doctrine/DoctrineMigrationsBundle/releases)
- [Commits](https://github.com/doctrine/DoctrineMigrationsBundle/compare/3.4.1...3.4.2)

---
updated-dependencies:
- dependency-name: doctrine/doctrine-migrations-bundle
  dependency-version: 3.4.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-12 02:06:54 +00:00
c60d237fb2 Merge pull request #8166 from wallabag/dependabot/composer/symfony-dependencies-1a593181cc 2025-05-05 06:31:39 +02:00
94ccfff72a Merge pull request #8167 from wallabag/dependabot/composer/twig-dependencies-1852d16abb 2025-05-05 06:31:21 +02:00
ab51a65319 Merge pull request #8169 from wallabag/dependabot/composer/j0k3r/graby-site-config-1.0.199 2025-05-05 06:30:38 +02:00
f4b089e679 Merge pull request #8164 from weblate/weblate-wallabag-messages 2025-05-05 06:30:19 +02:00
db21570517 Translated using Weblate (French)
Currently translated at 100.0% (604 of 604 strings)
2025-05-05 05:04:17 +02:00
38a18f644b Merge pull request #8171 from wallabag/dependabot/npm_and_yarn/core-js-3.42.0
Bump core-js from 3.41.0 to 3.42.0
2025-05-05 03:04:09 +00:00
5d3d639d3c Merge pull request #8170 from wallabag/dependabot/npm_and_yarn/babel-dependencies-d1a4844c32
Bump the babel-dependencies group with 3 updates
2025-05-05 03:02:06 +00:00
e6fc4e038a Bump core-js from 3.41.0 to 3.42.0
Bumps [core-js](https://github.com/zloirock/core-js/tree/HEAD/packages/core-js) from 3.41.0 to 3.42.0.
- [Release notes](https://github.com/zloirock/core-js/releases)
- [Changelog](https://github.com/zloirock/core-js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/zloirock/core-js/commits/v3.42.0/packages/core-js)

---
updated-dependencies:
- dependency-name: core-js
  dependency-version: 3.42.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-05 02:59:06 +00:00
50853f2ad4 Bump the babel-dependencies group with 3 updates
Bumps the babel-dependencies group with 3 updates: [@babel/core](https://github.com/babel/babel/tree/HEAD/packages/babel-core), [@babel/eslint-parser](https://github.com/babel/babel/tree/HEAD/eslint/babel-eslint-parser) and [@babel/preset-env](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-env).


Updates `@babel/core` from 7.26.10 to 7.27.1
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.27.1/packages/babel-core)

Updates `@babel/eslint-parser` from 7.27.0 to 7.27.1
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.27.1/eslint/babel-eslint-parser)

Updates `@babel/preset-env` from 7.26.9 to 7.27.1
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.27.1/packages/babel-preset-env)

---
updated-dependencies:
- dependency-name: "@babel/core"
  dependency-version: 7.27.1
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: babel-dependencies
- dependency-name: "@babel/eslint-parser"
  dependency-version: 7.27.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: babel-dependencies
- dependency-name: "@babel/preset-env"
  dependency-version: 7.27.1
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: babel-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-05 02:58:42 +00:00
14af4f356d Bump j0k3r/graby-site-config from 1.0.198 to 1.0.199
Bumps [j0k3r/graby-site-config](https://github.com/j0k3r/graby-site-config) from 1.0.198 to 1.0.199.
- [Release notes](https://github.com/j0k3r/graby-site-config/releases)
- [Changelog](https://github.com/j0k3r/graby-site-config/blob/master/dallasnews.com.txt)
- [Commits](https://github.com/j0k3r/graby-site-config/compare/1.0.198...1.0.199)

---
updated-dependencies:
- dependency-name: j0k3r/graby-site-config
  dependency-version: 1.0.199
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-05 02:23:50 +00:00
de630c6050 Bump the twig-dependencies group with 3 updates
Bumps the twig-dependencies group with 3 updates: [twig/extra-bundle](https://github.com/twigphp/twig-extra-bundle), [twig/string-extra](https://github.com/twigphp/string-extra) and [twig/twig](https://github.com/twigphp/Twig).


Updates `twig/extra-bundle` from 3.20.0 to 3.21.0
- [Commits](https://github.com/twigphp/twig-extra-bundle/compare/v3.20.0...v3.21.0)

Updates `twig/string-extra` from 3.20.0 to 3.21.0
- [Commits](https://github.com/twigphp/string-extra/compare/v3.20.0...v3.21.0)

Updates `twig/twig` from 3.20.0 to 3.21.1
- [Changelog](https://github.com/twigphp/Twig/blob/3.x/CHANGELOG)
- [Commits](https://github.com/twigphp/Twig/compare/v3.20.0...v3.21.1)

---
updated-dependencies:
- dependency-name: twig/extra-bundle
  dependency-version: 3.21.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: twig-dependencies
- dependency-name: twig/string-extra
  dependency-version: 3.21.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: twig-dependencies
- dependency-name: twig/twig
  dependency-version: 3.21.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: twig-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-05 02:22:54 +00:00
9559492524 Bump symfony/phpunit-bridge in the symfony-dependencies group
Bumps the symfony-dependencies group with 1 update: [symfony/phpunit-bridge](https://github.com/symfony/phpunit-bridge).


Updates `symfony/phpunit-bridge` from 7.2.0 to 7.2.6
- [Release notes](https://github.com/symfony/phpunit-bridge/releases)
- [Changelog](https://github.com/symfony/phpunit-bridge/blob/7.2/CHANGELOG.md)
- [Commits](https://github.com/symfony/phpunit-bridge/compare/v7.2.0...v7.2.6)

---
updated-dependencies:
- dependency-name: symfony/phpunit-bridge
  dependency-version: 7.2.6
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: symfony-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-05 02:22:42 +00:00
ba1020abd5 Merge pull request #8161 from wallabag/dependabot/npm_and_yarn/sass-embedded-1.87.0
Bump sass-embedded from 1.86.3 to 1.87.0
2025-04-28 02:08:10 +00:00
394ef8f935 Merge pull request #8160 from wallabag/dependabot/npm_and_yarn/webpack-5.99.7
Bump webpack from 5.99.6 to 5.99.7
2025-04-28 02:05:48 +00:00
cb1d340fca Bump sass-embedded from 1.86.3 to 1.87.0
Bumps [sass-embedded](https://github.com/sass/embedded-host-node) from 1.86.3 to 1.87.0.
- [Changelog](https://github.com/sass/embedded-host-node/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/embedded-host-node/compare/1.86.3...1.87.0)

---
updated-dependencies:
- dependency-name: sass-embedded
  dependency-version: 1.87.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-28 02:02:38 +00:00
478e10ba4a Bump webpack from 5.99.6 to 5.99.7
Bumps [webpack](https://github.com/webpack/webpack) from 5.99.6 to 5.99.7.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.99.6...v5.99.7)

---
updated-dependencies:
- dependency-name: webpack
  dependency-version: 5.99.7
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-28 02:02:28 +00:00
72a3477a83 Merge pull request #8156 from wallabag/phpstan-level-5
PHPStan level 5
2025-04-22 08:03:58 +02:00
36eb513e1b PHPStan level 5 2025-04-22 07:59:38 +02:00
3ef7064ada Merge pull request #8155 from wallabag/dependabot/npm_and_yarn/webpack-5.99.6
Bump webpack from 5.99.5 to 5.99.6
2025-04-21 08:01:51 +00:00
1f8a30f56d Merge pull request #8151 from wallabag/dependabot/composer/tecnickcom/tcpdf-6.9.3
Bump tecnickcom/tcpdf from 6.9.1 to 6.9.3
2025-04-21 10:01:30 +02:00
a03da9414e Merge pull request #8152 from wallabag/dependabot/composer/ergebnis/composer-normalize-2.47.0
Bump ergebnis/composer-normalize from 2.46.0 to 2.47.0
2025-04-21 10:00:37 +02:00
885e042097 Bump webpack from 5.99.5 to 5.99.6
Bumps [webpack](https://github.com/webpack/webpack) from 5.99.5 to 5.99.6.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.99.5...v5.99.6)

---
updated-dependencies:
- dependency-name: webpack
  dependency-version: 5.99.6
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-21 03:20:53 +00:00
03873e5ac9 Merge pull request #8154 from wallabag/dependabot/npm_and_yarn/symfony/stimulus-bridge-4.0.1
Bump @symfony/stimulus-bridge from 4.0.0 to 4.0.1
2025-04-21 03:19:39 +00:00
1393656e56 Merge pull request #8153 from wallabag/dependabot/npm_and_yarn/eslint-webpack-plugin-5.0.1
Bump eslint-webpack-plugin from 5.0.0 to 5.0.1
2025-04-21 03:16:49 +00:00
16c6f191db Bump @symfony/stimulus-bridge from 4.0.0 to 4.0.1
Bumps @symfony/stimulus-bridge from 4.0.0 to 4.0.1.

---
updated-dependencies:
- dependency-name: "@symfony/stimulus-bridge"
  dependency-version: 4.0.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-21 03:14:07 +00:00
c554bf7d6d Bump eslint-webpack-plugin from 5.0.0 to 5.0.1
Bumps [eslint-webpack-plugin](https://github.com/webpack-contrib/eslint-webpack-plugin) from 5.0.0 to 5.0.1.
- [Release notes](https://github.com/webpack-contrib/eslint-webpack-plugin/releases)
- [Changelog](https://github.com/webpack-contrib/eslint-webpack-plugin/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/eslint-webpack-plugin/compare/v5.0.0...v5.0.1)

---
updated-dependencies:
- dependency-name: eslint-webpack-plugin
  dependency-version: 5.0.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-21 03:13:12 +00:00
9fba643094 Bump ergebnis/composer-normalize from 2.46.0 to 2.47.0
Bumps [ergebnis/composer-normalize](https://github.com/ergebnis/composer-normalize) from 2.46.0 to 2.47.0.
- [Release notes](https://github.com/ergebnis/composer-normalize/releases)
- [Changelog](https://github.com/ergebnis/composer-normalize/blob/main/CHANGELOG.md)
- [Commits](https://github.com/ergebnis/composer-normalize/compare/2.46.0...2.47.0)

---
updated-dependencies:
- dependency-name: ergebnis/composer-normalize
  dependency-version: 2.47.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-21 02:49:22 +00:00
dab0bc520b Bump tecnickcom/tcpdf from 6.9.1 to 6.9.3
Bumps [tecnickcom/tcpdf](https://github.com/tecnickcom/TCPDF) from 6.9.1 to 6.9.3.
- [Changelog](https://github.com/tecnickcom/TCPDF/blob/main/CHANGELOG.TXT)
- [Commits](https://github.com/tecnickcom/TCPDF/compare/6.9.1...6.9.3)

---
updated-dependencies:
- dependency-name: tecnickcom/tcpdf
  dependency-version: 6.9.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-21 02:44:59 +00:00
1f89bed117 Merge pull request #8148 from weblate/weblate-wallabag-messages
Translations update from Hosted Weblate
2025-04-17 09:19:23 +02:00
fed449b1e2 Translated using Weblate (Galician)
Currently translated at 100.0% (604 of 604 strings)
2025-04-17 09:13:57 +02:00
fe4474869c Translated using Weblate (Occitan)
Currently translated at 100.0% (35 of 35 strings)
2025-04-17 09:13:57 +02:00
6937241226 Translated using Weblate (Polish)
Currently translated at 100.0% (604 of 604 strings)
2025-04-17 09:13:57 +02:00
00ad4e0a78 Translated using Weblate (Occitan)
Currently translated at 99.1% (599 of 604 strings)
2025-04-17 09:13:57 +02:00
ef00122edc Merge pull request #8149 from wallabag/fix/ci-use-ubuntu-latest
Use `ubuntu-latest` in CI
2025-04-17 09:13:51 +02:00
ae2a867cdd Use ubuntu-latest in CI
`ubuntu-20.04` is now fully deprecated
2025-04-17 09:08:54 +02:00
7ffcd8f7f6 Merge branch '2.6' into master 2025-04-14 21:56:24 +02:00
96dea32650 Merge pull request #8141 from wallabag/impr/title-ellipsis
Replace hardcoded title truncate with CSS text-overflow
2025-04-14 20:44:50 +02:00
70999075a6 Merge pull request #8139 from wallabag/fix/otp-wrongly-enabled
Avoid non-validated OTP to be enabled
2025-04-14 09:46:17 +02:00
262f674245 Avoid non-validated OTP to be enabled
The OTP code must be required when enabling OTP. If the provided code is wrong, disable OTP, redirect and notice the user.
2025-04-14 09:18:37 +02:00
a3ac567c31 Merge pull request #8145 from wallabag/dependabot/composer/ergebnis/composer-normalize-2.46.0 2025-04-14 07:04:17 +02:00
e7668eabd1 Merge pull request #8146 from wallabag/dependabot/npm_and_yarn/webpack-5.99.5
Bump webpack from 5.98.0 to 5.99.5
2025-04-14 02:55:40 +00:00
df12d66564 Bump webpack from 5.98.0 to 5.99.5
Bumps [webpack](https://github.com/webpack/webpack) from 5.98.0 to 5.99.5.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.98.0...v5.99.5)

---
updated-dependencies:
- dependency-name: webpack
  dependency-version: 5.99.5
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-14 02:52:21 +00:00
8b53d3c9c5 Bump ergebnis/composer-normalize from 2.45.0 to 2.46.0
Bumps [ergebnis/composer-normalize](https://github.com/ergebnis/composer-normalize) from 2.45.0 to 2.46.0.
- [Release notes](https://github.com/ergebnis/composer-normalize/releases)
- [Changelog](https://github.com/ergebnis/composer-normalize/blob/main/CHANGELOG.md)
- [Commits](https://github.com/ergebnis/composer-normalize/compare/2.45.0...2.46.0)

---
updated-dependencies:
- dependency-name: ergebnis/composer-normalize
  dependency-version: 2.46.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-14 02:10:45 +00:00
260beeec68 Replace hardcoded title truncate with CSS text-overflow
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2025-04-13 15:56:37 +02:00
01ffc6c3d5 Merge pull request #8137 from wallabag/prepare-2.6.12-release
Prepare 2.6.12 release
2025-04-10 11:59:57 +02:00
5586930376 Prepare 2.6.12 release 2025-04-10 11:39:50 +02:00
b45116b73e Merge pull request #8136 from wallabag/update-dependencies
Update dependencies
2025-04-10 11:32:25 +02:00
c2e38cedac Update dependencies 2025-04-10 11:22:33 +02:00
35dcc43366 Merge pull request #8135 from wallabag/fix-changelog
Fix changelog
2025-04-10 11:10:58 +02:00
de8f859536 Fix changelog 2025-04-10 10:59:31 +02:00
e6ce9c524c Merge branch '2.6' 2025-04-10 01:45:52 +02:00
5cdac6c0bb Merge pull request #8133 from wallabag/prepare-2.6.11-release
Prepare 2.6.11 release
2025-04-08 22:42:32 +02:00
466cd17d5b Prepare 2.6.11 release 2025-04-08 21:23:58 +02:00
14cdd123ce Update generated assets 2025-04-08 21:23:58 +02:00
bdb420b13f Use ubuntu latest in all jobs 2025-04-08 21:16:07 +02:00
99c8a06594 Merge commit from fork
Protect actions with a CSRF token
2025-04-08 21:00:14 +02:00
387224f830 Merge pull request #8031 from wallabag/use-stimulus
Use Stimulus
2025-04-07 18:40:31 +02:00
e4fb100163 Remove jQuery 2025-04-07 14:56:06 +02:00
e28e1bddb4 Extract Entries Navigation controller 2025-04-07 14:56:06 +02:00
b266d6ca2f Fix esc shortcut after opening add url or search 2025-04-07 14:56:06 +02:00
8b0e6319e4 Extract Shortcuts controller 2025-04-07 14:56:06 +02:00
7eaaf5d38c Extract Dark Theme controller 2025-04-07 14:56:06 +02:00
a8cb9f4f77 Extract Leftbar and Add Tag controllers 2025-04-07 14:56:06 +02:00
c9cfae11f7 Extract Sticky Nav controller 2025-04-07 14:56:06 +02:00
2054be7bd4 Extract Topbar controller 2025-04-07 14:56:06 +02:00
f7c8466231 Extract Batch Edit controller 2025-04-07 14:56:06 +02:00
e438b5e63f Extract Tag controller 2025-04-07 14:56:06 +02:00
1fd861078d Extract Fake Radio controller 2025-04-07 14:56:06 +02:00
a06da68e72 Extract Config controller 2025-04-07 14:56:06 +02:00
9da9e6b004 Extract Clipboard controller 2025-04-07 14:56:06 +02:00
ffeca7f94d Extract Annotations controller 2025-04-07 14:56:06 +02:00
d515e11fe4 Extract Scroll Storage controller 2025-04-07 14:56:06 +02:00
019d252446 Extract Scroll Indicator controller 2025-04-07 14:56:06 +02:00
503b82ea13 Extract Highlight controller 2025-04-07 14:56:06 +02:00
3125eb43ad Extract QRCode controller 2025-04-07 14:56:06 +02:00
e5042074a2 Extract Materialize Toast controller 2025-04-07 14:56:06 +02:00
76c101938d Extract Materialize FAB controller 2025-04-07 14:56:06 +02:00
a7a4c5fefb Extract Materialize Form Select controller 2025-04-07 14:56:06 +02:00
1b683dbb05 Extract Materialize Dropdown controller 2025-04-07 14:56:06 +02:00
a69ea46945 Extract Materialize Collapsible controller 2025-04-07 14:56:06 +02:00
2a2172037e Extract Materialize Tooltip controller 2025-04-07 14:56:06 +02:00
0589066ed1 Extract Materialize Tabs controller 2025-04-07 14:56:06 +02:00
1f76184d02 Extract Materialize Sidenav controller 2025-04-07 14:56:06 +02:00
66c6a25941 Install Stimulus 2025-04-07 14:56:06 +02:00
46f505f69f Merge pull request #8124 from wallabag/phpstan-level-4
PHPStan level 4
2025-04-07 14:20:14 +02:00
b4483023e6 Move to PHPStan level 4 2025-04-07 12:20:06 +02:00
31e1be4191 Add phpstan-baseline target in Makefile 2025-04-07 11:42:05 +02:00
63dc69d70f Merge pull request #8122 from wallabag/modernize-code-base-with-rector
Modernize code base with Rector
2025-04-07 10:03:12 +02:00
4e177e1778 Migrate to SensioLabs attributes 2025-04-07 09:17:32 +02:00
a766826a69 Migrate to JMS attributes 2025-04-07 09:17:32 +02:00
a1440dffda Migrate to Gedmo attributes 2025-04-07 09:17:32 +02:00
2a60d8473d Migrate to Symfony attributes 2025-04-07 09:17:32 +02:00
6a3780ce81 Add root files to Rector configuration 2025-04-07 09:17:32 +02:00
42a63be61a Modernize to app min PHP version 2025-04-07 09:17:32 +02:00
9e2720cddc Modernize to PHP 8.1 2025-04-07 09:17:32 +02:00
ca018c77e3 Migrate to readonly properties 2025-04-07 09:17:32 +02:00
a107773c11 Modernize to PHP 8.0 2025-04-07 09:17:32 +02:00
1d5674a230 Migrate to constructor promoted properties 2025-04-07 09:17:32 +02:00
4168727f36 Modernize to PHP 7.4 2025-04-07 09:17:31 +02:00
ce8ed589d5 Modernize to PHP 7.3 2025-04-07 09:17:31 +02:00
f8c8bb7d93 Modernize to PHP 7.1 2025-04-07 09:17:31 +02:00
241cddc899 Modernize to PHP 7.0 2025-04-07 09:17:31 +02:00
745fef44f4 Modernize to PHP 5.5 2025-04-07 09:17:31 +02:00
99a49bfc96 Add Doctrine attributes set 2025-04-07 09:17:31 +02:00
84eb99c59b Initial Rector fixes with basic configuration 2025-04-07 09:17:31 +02:00
a679117736 Install rector 2025-04-07 09:17:31 +02:00
eadb6838c0 Merge pull request #8126 from wallabag/dependabot/npm_and_yarn/sass-embedded-1.86.3
Bump sass-embedded from 1.86.0 to 1.86.3
2025-04-07 04:39:25 +00:00
5fca2db1e5 Merge pull request #8127 from wallabag/dependabot/composer/jms/serializer-3.32.4 2025-04-07 06:35:34 +02:00
b56d3fef87 Merge pull request #8128 from wallabag/dependabot/composer/j0k3r/graby-site-config-1.0.198 2025-04-07 06:35:08 +02:00
4b652b416c Merge pull request #8129 from wallabag/dependabot/composer/tecnickcom/tcpdf-6.9.1 2025-04-07 06:34:51 +02:00
528650b525 Merge pull request #8131 from wallabag/dependabot/composer/guzzlehttp/psr7-2.7.1 2025-04-07 06:34:22 +02:00
5597f527d5 Merge pull request #8132 from wallabag/dependabot/composer/friendsofphp/php-cs-fixer-3.75.0 2025-04-07 06:34:05 +02:00
c79d4449bd Bump friendsofphp/php-cs-fixer from 3.74.0 to 3.75.0
Bumps [friendsofphp/php-cs-fixer](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer) from 3.74.0 to 3.75.0.
- [Release notes](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/releases)
- [Changelog](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/blob/master/CHANGELOG.md)
- [Commits](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/compare/v3.74.0...v3.75.0)

---
updated-dependencies:
- dependency-name: friendsofphp/php-cs-fixer
  dependency-version: 3.75.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-07 03:01:31 +00:00
07d888a71e Bump guzzlehttp/psr7 from 2.7.0 to 2.7.1
Bumps [guzzlehttp/psr7](https://github.com/guzzle/psr7) from 2.7.0 to 2.7.1.
- [Release notes](https://github.com/guzzle/psr7/releases)
- [Changelog](https://github.com/guzzle/psr7/blob/2.7/CHANGELOG.md)
- [Commits](https://github.com/guzzle/psr7/compare/2.7.0...2.7.1)

---
updated-dependencies:
- dependency-name: guzzlehttp/psr7
  dependency-version: 2.7.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-07 03:01:18 +00:00
10e80a7b9a Bump tecnickcom/tcpdf from 6.8.2 to 6.9.1
Bumps [tecnickcom/tcpdf](https://github.com/tecnickcom/TCPDF) from 6.8.2 to 6.9.1.
- [Changelog](https://github.com/tecnickcom/TCPDF/blob/main/CHANGELOG.TXT)
- [Commits](https://github.com/tecnickcom/TCPDF/compare/6.8.2...6.9.1)

---
updated-dependencies:
- dependency-name: tecnickcom/tcpdf
  dependency-version: 6.9.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-07 03:00:55 +00:00
967ac9f9ac Bump j0k3r/graby-site-config from 1.0.197 to 1.0.198
Bumps [j0k3r/graby-site-config](https://github.com/j0k3r/graby-site-config) from 1.0.197 to 1.0.198.
- [Release notes](https://github.com/j0k3r/graby-site-config/releases)
- [Changelog](https://github.com/j0k3r/graby-site-config/blob/master/dallasnews.com.txt)
- [Commits](https://github.com/j0k3r/graby-site-config/compare/1.0.197...1.0.198)

---
updated-dependencies:
- dependency-name: j0k3r/graby-site-config
  dependency-version: 1.0.198
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-07 03:00:49 +00:00
be9b1ef60a Bump jms/serializer from 3.32.3 to 3.32.4
Bumps [jms/serializer](https://github.com/schmittjoh/serializer) from 3.32.3 to 3.32.4.
- [Release notes](https://github.com/schmittjoh/serializer/releases)
- [Changelog](https://github.com/schmittjoh/serializer/blob/master/CHANGELOG.md)
- [Commits](https://github.com/schmittjoh/serializer/compare/3.32.3...3.32.4)

---
updated-dependencies:
- dependency-name: jms/serializer
  dependency-version: 3.32.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-07 02:59:59 +00:00
d29e757a09 Bump sass-embedded from 1.86.0 to 1.86.3
Bumps [sass-embedded](https://github.com/sass/embedded-host-node) from 1.86.0 to 1.86.3.
- [Changelog](https://github.com/sass/embedded-host-node/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/embedded-host-node/compare/1.86.0...1.86.3)

---
updated-dependencies:
- dependency-name: sass-embedded
  dependency-version: 1.86.3
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-07 02:24:26 +00:00
8a15feb730 Merge pull request #8119 from wallabag/remove-deprecated-scheb-2fa-qr-code-package
Remove deprecated scheb/2fa-qr-code package
2025-04-05 18:16:48 +02:00
d4fbb80dd5 Merge pull request #8121 from wallabag/clean-phpstan-baseline
Clean PHPStan baseline
2025-04-05 18:11:11 +02:00
27a93cc281 Merge pull request #8120 from wallabag/migrate-to-doctrine-attributes
Migrate to Doctrine attributes
2025-04-05 18:09:31 +02:00
e63d473032 Clean PHPStan baseline 2025-04-05 16:19:38 +02:00
41767e8fbc Migrate to Doctrine attributes 2025-04-05 12:59:51 +02:00
c0bb737200 Remove deprecated scheb/2fa-qr-code package 2025-04-05 11:49:08 +02:00
0d93add058 Merge pull request #8117 from wallabag/fix-some-depreciation-notices
Fix some depreciation notices
2025-04-02 21:15:50 +02:00
3f2f57e0c0 Fix some other deprecation notices 2025-04-02 02:13:45 +02:00
412352ff03 Fix direct deprecation notices 2025-04-02 02:13:45 +02:00
4ab26a1902 Fix self deprecation notices 2025-04-02 02:13:45 +02:00
a7f7022229 Replace getQuotedTableName by using DefaultQuoteStrategy 2025-04-02 02:13:45 +02:00
95730754e8 Replace property access by getters 2025-04-02 02:08:55 +02:00
402d80cd30 Replace LifecycleEventArgs by PreRemoveEventArgs 2025-04-02 02:08:55 +02:00
c9301bd0b3 Use built in FOSUserBundle mailer 2025-04-02 02:08:55 +02:00
47d3bd4b69 Replace MASTER_REQUEST by MAIN_REQUEST 2025-04-02 02:08:55 +02:00
f7f5c714ac Replace get by constructor injection 2025-04-02 02:08:55 +02:00
069c09d8d9 Replace query by executeQuery 2025-04-02 02:08:55 +02:00
1127b147c0 Replace AuthenticationEvents::AUTHENTICATION_FAILURE by LoginFailureEvent 2025-04-02 02:08:55 +02:00
c50265c1eb Replace setMethods by onlyMethods 2025-04-02 02:08:55 +02:00
f3e88ec461 Merge pull request #8054 from wallabag/dependabot/npm_and_yarn/eslint-webpack-plugin-5.0.0
Bump eslint-webpack-plugin from 4.2.0 to 5.0.0
2025-04-01 00:18:51 +02:00
5809afd256 Bump eslint-webpack-plugin from 4.2.0 to 5.0.0
Bumps [eslint-webpack-plugin](https://github.com/webpack-contrib/eslint-webpack-plugin) from 4.2.0 to 5.0.0.
- [Release notes](https://github.com/webpack-contrib/eslint-webpack-plugin/releases)
- [Changelog](https://github.com/webpack-contrib/eslint-webpack-plugin/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/eslint-webpack-plugin/compare/v4.2.0...v5.0.0)

---
updated-dependencies:
- dependency-name: eslint-webpack-plugin
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-31 22:14:59 +00:00
2f9d95c2dd Merge pull request #8086 from wallabag/dependabot/composer/friendsofsymfony/jsrouting-bundle-3.5.2
Bump friendsofsymfony/jsrouting-bundle from 2.8.0 to 3.5.2
2025-04-01 00:12:16 +02:00
c860f4db6a Bump friendsofsymfony/jsrouting-bundle from 2.8.0 to 3.5.2
Bumps [friendsofsymfony/jsrouting-bundle](https://github.com/FriendsOfSymfony/FOSJsRoutingBundle) from 2.8.0 to 3.5.2.
- [Release notes](https://github.com/FriendsOfSymfony/FOSJsRoutingBundle/releases)
- [Changelog](https://github.com/FriendsOfSymfony/FOSJsRoutingBundle/blob/master/CHANGELOG.md)
- [Commits](https://github.com/FriendsOfSymfony/FOSJsRoutingBundle/compare/2.8.0...3.5.2)

---
updated-dependencies:
- dependency-name: friendsofsymfony/jsrouting-bundle
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-01 00:08:10 +02:00
ae8d7e2e37 Merge pull request #8084 from wallabag/dependabot/composer/doctrine/data-fixtures-2.0.2
Bump doctrine/data-fixtures from 1.8.1 to 2.0.2
2025-03-31 23:50:12 +02:00
67bd937619 Bump doctrine/data-fixtures from 1.8.1 to 2.0.2
Bumps [doctrine/data-fixtures](https://github.com/doctrine/data-fixtures) from 1.8.1 to 2.0.2.
- [Release notes](https://github.com/doctrine/data-fixtures/releases)
- [Upgrade guide](https://github.com/doctrine/data-fixtures/blob/2.0.x/UPGRADE.md)
- [Commits](https://github.com/doctrine/data-fixtures/compare/1.8.1...2.0.2)

---
updated-dependencies:
- dependency-name: doctrine/data-fixtures
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-31 23:46:13 +02:00
82e49ead7d Merge pull request #8106 from wallabag/dependabot/composer/doctrine/collections-2.3.0
Bump doctrine/collections from 1.8.0 to 2.3.0
2025-03-31 23:39:32 +02:00
a72f7930c4 Bump doctrine/collections from 1.8.0 to 2.3.0
Bumps [doctrine/collections](https://github.com/doctrine/collections) from 1.8.0 to 2.3.0.
- [Release notes](https://github.com/doctrine/collections/releases)
- [Upgrade guide](https://github.com/doctrine/collections/blob/2.3.x/UPGRADE.md)
- [Commits](https://github.com/doctrine/collections/compare/1.8.0...2.3.0)

---
updated-dependencies:
- dependency-name: doctrine/collections
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-31 21:30:46 +00:00
c75e4cf63a Merge pull request #8104 from wallabag/dependabot/composer/egulias/email-validator-4.0.4
Bump egulias/email-validator from 3.2.6 to 4.0.4
2025-03-31 23:29:38 +02:00
a9f9c9d513 Bump egulias/email-validator from 3.2.6 to 4.0.4
Bumps [egulias/email-validator](https://github.com/egulias/EmailValidator) from 3.2.6 to 4.0.4.
- [Release notes](https://github.com/egulias/EmailValidator/releases)
- [Commits](https://github.com/egulias/EmailValidator/compare/3.2.6...4.0.4)

---
updated-dependencies:
- dependency-name: egulias/email-validator
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-31 21:16:04 +00:00
08d2233882 Merge pull request #8082 from wallabag/dependabot/composer/pagerfanta/doctrine-orm-adapter-4.7.1
Bump pagerfanta/doctrine-orm-adapter from 3.8.0 to 4.7.1
2025-03-31 23:14:23 +02:00
2344a23be2 Bump pagerfanta/doctrine-orm-adapter from 3.8.0 to 4.7.1
Bumps [pagerfanta/doctrine-orm-adapter](https://github.com/Pagerfanta/doctrine-orm-adapter) from 3.8.0 to 4.7.1.
- [Commits](https://github.com/Pagerfanta/doctrine-orm-adapter/compare/v3.8.0...v4.7.1)

---
updated-dependencies:
- dependency-name: pagerfanta/doctrine-orm-adapter
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-31 21:04:24 +00:00
6e54f0d0ab Merge pull request #8081 from wallabag/dependabot/composer/pagerfanta/twig-4.7.1
Bump pagerfanta/twig from 3.8.0 to 4.7.1
2025-03-31 23:03:23 +02:00
d6e27feac0 Bump pagerfanta/twig from 3.8.0 to 4.7.1
Bumps [pagerfanta/twig](https://github.com/Pagerfanta/twig) from 3.8.0 to 4.7.1.
- [Commits](https://github.com/Pagerfanta/twig/compare/v3.8.0...v4.7.1)

---
updated-dependencies:
- dependency-name: pagerfanta/twig
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-31 20:49:17 +00:00
1382af1a5d Merge pull request #8085 from wallabag/dependabot/composer/babdev/pagerfanta-bundle-4.5.0
Bump babdev/pagerfanta-bundle from 3.8.0 to 4.5.0
2025-03-31 22:48:20 +02:00
04f29e4a6b Bump babdev/pagerfanta-bundle from 3.8.0 to 4.5.0
Bumps [babdev/pagerfanta-bundle](https://github.com/BabDev/PagerfantaBundle) from 3.8.0 to 4.5.0.
- [Changelog](https://github.com/BabDev/PagerfantaBundle/blob/4.x/CHANGELOG.md)
- [Commits](https://github.com/BabDev/PagerfantaBundle/compare/v3.8.0...v4.5.0)

---
updated-dependencies:
- dependency-name: babdev/pagerfanta-bundle
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-31 20:25:23 +00:00
8ac2e699e0 Merge pull request #8080 from wallabag/dependabot/composer/scssphp/scssphp-2.0.1
Bump scssphp/scssphp from 1.13.0 to 2.0.1
2025-03-31 22:23:37 +02:00
0d9cbcdfcf Merge pull request #8112 from weblate/weblate-wallabag-messages
Translations update from Hosted Weblate
2025-03-31 05:04:28 +02:00
bff0853021 Translated using Weblate (Norwegian Bokmål)
Currently translated at 99.1% (598 of 603 strings)
2025-03-31 04:58:53 +02:00
23565c0784 Merge pull request #8116 from wallabag/dependabot/npm_and_yarn/babel-dependencies-03e2e86deb
Bump @babel/eslint-parser from 7.26.10 to 7.27.0 in the babel-dependencies group
2025-03-31 02:58:49 +00:00
b7648f575e Merge pull request #8115 from wallabag/dependabot/composer/doctrine/migrations-3.9.0
Bump doctrine/migrations from 3.8.3 to 3.9.0
2025-03-31 04:56:50 +02:00
622ab8cf96 Bump @babel/eslint-parser in the babel-dependencies group
Bumps the babel-dependencies group with 1 update: [@babel/eslint-parser](https://github.com/babel/babel/tree/HEAD/eslint/babel-eslint-parser).


Updates `@babel/eslint-parser` from 7.26.10 to 7.27.0
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.27.0/eslint/babel-eslint-parser)

---
updated-dependencies:
- dependency-name: "@babel/eslint-parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: babel-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-31 02:53:59 +00:00
7a407160c1 Bump doctrine/migrations from 3.8.3 to 3.9.0
Bumps [doctrine/migrations](https://github.com/doctrine/migrations) from 3.8.3 to 3.9.0.
- [Release notes](https://github.com/doctrine/migrations/releases)
- [Commits](https://github.com/doctrine/migrations/compare/3.8.3...3.9.0)

---
updated-dependencies:
- dependency-name: doctrine/migrations
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-31 02:50:51 +00:00
985e81e017 Merge pull request #8114 from wallabag/dependabot/composer/friendsofphp/php-cs-fixer-3.74.0
Bump friendsofphp/php-cs-fixer from 3.73.1 to 3.74.0
2025-03-31 04:47:58 +02:00
5bf34d3c72 Bump friendsofphp/php-cs-fixer from 3.73.1 to 3.74.0
Bumps [friendsofphp/php-cs-fixer](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer) from 3.73.1 to 3.74.0.
- [Release notes](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/releases)
- [Changelog](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/blob/master/CHANGELOG.md)
- [Commits](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/compare/v3.73.1...v3.74.0)

---
updated-dependencies:
- dependency-name: friendsofphp/php-cs-fixer
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-31 02:09:23 +00:00
4c52f71895 Add SameSite=lax to session cookie 2025-03-30 06:18:32 +02:00
677b2986bc Use 400 Bad Request errors for invalid CSRF everywhere 2025-03-30 06:18:32 +02:00
5ea5115a72 Protect mass_action with a CSRF token 2025-03-30 06:18:32 +02:00
27f0d94db7 Protect tag_delete with a CSRF token 2025-03-30 06:18:32 +02:00
cf49be6940 Protect tag_this_search with a CSRF token 2025-03-30 06:18:32 +02:00
ddf2e80842 Protect remove_tag with a CSRF token 2025-03-30 06:18:32 +02:00
d1e128900a Protect delete_share with a CSRF token 2025-03-30 06:18:32 +02:00
0d8429dfc7 Protect share with a CSRF token 2025-03-30 06:18:32 +02:00
eb8408b22f Protect delete_entry with a CSRF token 2025-03-30 06:18:32 +02:00
00d0e6f951 Protect star_entry with a CSRF token 2025-03-30 06:18:32 +02:00
edffef8375 Protect archive_entry with a CSRF token 2025-03-30 06:18:32 +02:00
3817010e29 Protect reload_entry with a CSRF token 2025-03-30 06:18:32 +02:00
ed1acf59e1 Protect changeLocale with a CSRF token 2025-03-30 06:18:29 +02:00
56ce98fb9a Merge pull request #8103 from weblate/weblate-wallabag-messages
Translations update from Hosted Weblate
2025-03-24 09:28:36 +01:00
d5aa680054 Translated using Weblate (Tamil)
Currently translated at 100.0% (6 of 6 strings)
2025-03-24 07:06:57 +01:00
6c183081df Merge pull request #8105 from wallabag/dependabot/composer/friendsofphp/php-cs-fixer-3.73.1 2025-03-24 07:06:52 +01:00
d965c25304 Merge pull request #8107 from wallabag/dependabot/composer/doctrine/migrations-3.8.3 2025-03-24 07:06:09 +01:00
8fade1416b Merge pull request #8108 from wallabag/dependabot/npm_and_yarn/sass-embedded-1.86.0
Bump sass-embedded from 1.85.1 to 1.86.0
2025-03-24 03:26:47 +00:00
4d7fdc00db Bump sass-embedded from 1.85.1 to 1.86.0
Bumps [sass-embedded](https://github.com/sass/embedded-host-node) from 1.85.1 to 1.86.0.
- [Changelog](https://github.com/sass/embedded-host-node/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/embedded-host-node/compare/1.85.1...1.86.0)

---
updated-dependencies:
- dependency-name: sass-embedded
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-24 03:23:22 +00:00
a60f8599d8 Bump doctrine/migrations from 3.8.2 to 3.8.3
Bumps [doctrine/migrations](https://github.com/doctrine/migrations) from 3.8.2 to 3.8.3.
- [Release notes](https://github.com/doctrine/migrations/releases)
- [Commits](https://github.com/doctrine/migrations/compare/3.8.2...3.8.3)

---
updated-dependencies:
- dependency-name: doctrine/migrations
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-24 03:11:48 +00:00
3a44ed7943 Bump friendsofphp/php-cs-fixer from 3.72.0 to 3.73.1
Bumps [friendsofphp/php-cs-fixer](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer) from 3.72.0 to 3.73.1.
- [Release notes](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/releases)
- [Changelog](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/blob/master/CHANGELOG.md)
- [Commits](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/compare/v3.72.0...v3.73.1)

---
updated-dependencies:
- dependency-name: friendsofphp/php-cs-fixer
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-24 03:10:43 +00:00
e162408139 Protect switch_view_mode with a CSRF token 2025-03-23 19:13:21 +01:00
6fa61c0f9c Protect delete_ignore_origin_rule with a CSRF token 2025-03-23 19:13:17 +01:00
264f91126e Protect delete_tagging_rule with a CSRF token 2025-03-23 19:13:14 +01:00
ac5b5fb379 Protect revoke_token with a CSRF token 2025-03-23 19:13:09 +01:00
d703fa6a3a Protect generate_token with a CSRF token 2025-03-23 19:13:06 +01:00
2382140a12 Merge pull request #8101 from weblate/weblate-wallabag-messages
Translations update from Hosted Weblate
2025-03-19 11:24:41 +01:00
7ba55697b9 Translated using Weblate (Chinese (Traditional Han script))
Currently translated at 97.0% (585 of 603 strings)
2025-03-19 11:07:24 +01:00
2272d3da66 Merge branch '2.6'
# Conflicts:
#	src/Repository/EntryRepository.php
#	src/Twig/WallabagExtension.php
#	src/Wallabag/CoreBundle/Resources/views/Entry/_card_actions.html.twig
#	src/Wallabag/CoreBundle/Resources/views/Entry/_card_list.html.twig
#	tests/Twig/WallabagExtensionTest.php
2025-03-18 21:02:22 +01:00
7e9e179860 Merge pull request #8098 from wallabag/add-isgranted-to-entryrestcontroller
Add IsGranted to EntryRestController
2025-03-18 12:34:57 +01:00
31ba90b060 Merge pull request #8099 from wallabag/no-class-level-route-annotations
No class level route annotations
2025-03-18 06:27:29 +01:00
c20f37975b No class level route annotations 2025-03-18 01:22:55 +01:00
ecb8b8ff49 Add IsGranted to EntryRestController 2025-03-18 00:15:34 +01:00
67c359a6dd Replace entity manager clear by creating a new client 2025-03-18 00:03:35 +01:00
1393f78005 Merge pull request #8030 from wallabag/back-end-hide-show-of-export-and-filters
Back-end hide/show of random, export and filters
2025-03-17 22:41:01 +01:00
63cf403eaf Initialize filters and export sidenav with common ones 2025-03-17 13:54:33 +01:00
1e61a51e82 Use native form reset for filters 2025-03-17 13:54:33 +01:00
0330d01a49 Back-end hide/show of random, export and filters actions 2025-03-17 13:54:33 +01:00
595f35a1a5 Merge pull request #8093 from wallabag/add-isgranted-to-tagcontroller
Add IsGranted to TagController
2025-03-17 12:47:43 +01:00
943bfd9162 Add IsGranted to TagController 2025-03-17 10:47:57 +01:00
4a1598165f Merge pull request #8095 from wallabag/add-isgranted-to-staticcontroller
Add IsGranted to StaticController
2025-03-17 09:45:18 +01:00
fb11f5870e Merge pull request #8094 from wallabag/add-isgranted-to-configcontroller
Add IsGranted to ConfigController
2025-03-17 09:34:25 +01:00
4b4e021a04 Merge pull request #8074 from wallabag/add-isgranted-to-feedcontroller
Add IsGranted to FeedController
2025-03-17 09:33:49 +01:00
440d2d7c76 Merge pull request #8097 from wallabag/fix-display-thumbnails-checkbox
Fix display thumbnails checkbox
2025-03-17 09:33:23 +01:00
86e15954c5 Merge pull request #8092 from wallabag/add-isgranted-to-searchrestcontroller
Add IsGranted to SearchRestController
2025-03-17 09:22:32 +01:00
9a55f17b42 Merge pull request #8096 from wallabag/fix-tests-namespaces
Fix tests namespaces
2025-03-17 08:47:11 +01:00
7ae25f3cc6 Fix display thumbnails checkbox 2025-03-16 22:25:40 +01:00
787a812f8e Fix tests namespaces 2025-03-16 22:13:12 +01:00
c540bff62b Add IsGranted to StaticController 2025-03-16 22:09:26 +01:00
f3da3a42e8 Add IsGranted to ConfigController 2025-03-16 21:20:34 +01:00
f501c6206e Add IsGranted to SearchRestController 2025-03-14 22:33:59 +01:00
0aedbd7fd7 Add IsGranted to FeedController 2025-03-14 22:30:43 +01:00
f042e7e178 Merge pull request #8091 from wallabag/add-isgranted-to-import-controllers
Add IsGranted to import controllers
2025-03-14 22:29:31 +01:00
b39b361440 Merge pull request #8090 from wallabag/add-isgranted-to-annotationrestcontroller
Add IsGranted to AnnotationRestController
2025-03-14 22:28:11 +01:00
9499b062d0 Add IsGranted to import controllers 2025-03-14 22:24:31 +01:00
f9676270f2 Add IsGranted to AnnotationRestController 2025-03-14 22:00:13 +01:00
e3dc63f739 Merge pull request #8076 from wallabag/add-isgranted-to-exportcontroller
Add IsGranted to ExportController
2025-03-14 10:01:19 +01:00
d2dd7f78d3 Add IsGranted to ExportController 2025-03-14 09:51:17 +01:00
deae27bdae Merge pull request #8073 from wallabag/add-isgranted-to-annotationcontroller
Add IsGranted to AnnotationController
2025-03-14 09:49:23 +01:00
61e2cb37df Add IsGranted to AnnotationController 2025-03-14 09:30:34 +01:00
b9900c311d Merge pull request #8088 from wallabag/dependabot/npm_and_yarn/webpack-manifest-plugin-5.0.1
Bump webpack-manifest-plugin from 5.0.0 to 5.0.1
2025-03-14 09:07:58 +01:00
1afe48e732 Merge pull request #8075 from wallabag/convert-403-errors-to-404-errors
[BC BREAK] Convert 403 errors to 404 errors
2025-03-14 08:59:14 +01:00
198f0a64d0 Merge pull request #8083 from wallabag/dependabot/npm_and_yarn/babel-dependencies-cb0d452a55
Bump the babel-dependencies group with 2 updates
2025-03-14 08:58:14 +01:00
41fe283a94 Bump webpack-manifest-plugin from 5.0.0 to 5.0.1
Bumps [webpack-manifest-plugin](https://github.com/shellscape/webpack-manifest-plugin) from 5.0.0 to 5.0.1.
- [Release notes](https://github.com/shellscape/webpack-manifest-plugin/releases)
- [Commits](https://github.com/shellscape/webpack-manifest-plugin/compare/v5.0.0...v5.0.1)

---
updated-dependencies:
- dependency-name: webpack-manifest-plugin
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-14 07:48:57 +00:00
1f0d4723c6 Bump the babel-dependencies group with 2 updates
Bumps the babel-dependencies group with 2 updates: [@babel/core](https://github.com/babel/babel/tree/HEAD/packages/babel-core) and [@babel/eslint-parser](https://github.com/babel/babel/tree/HEAD/eslint/babel-eslint-parser).


Updates `@babel/core` from 7.26.9 to 7.26.10
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.26.10/packages/babel-core)

Updates `@babel/eslint-parser` from 7.26.8 to 7.26.10
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.26.10/eslint/babel-eslint-parser)

---
updated-dependencies:
- dependency-name: "@babel/core"
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: babel-dependencies
- dependency-name: "@babel/eslint-parser"
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: babel-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-14 07:48:11 +00:00
bc9bdc72f3 Bump scssphp/scssphp from 1.13.0 to 2.0.1
Bumps [scssphp/scssphp](https://github.com/scssphp/scssphp) from 1.13.0 to 2.0.1.
- [Release notes](https://github.com/scssphp/scssphp/releases)
- [Commits](https://github.com/scssphp/scssphp/compare/v1.13.0...v2.0.1)

---
updated-dependencies:
- dependency-name: scssphp/scssphp
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-14 07:47:31 +00:00
7bebe5fd4b Merge pull request #8079 from wallabag/update-dependabot-configuration
Update Dependabot configuration
2025-03-14 08:46:27 +01:00
3bd434091f Convert 403 errors to 404 errors 2025-03-14 06:41:28 +01:00
1acbc91484 Better Symfony ignore rule 2025-03-14 06:08:13 +01:00
b05fb21f2b Remove now invalid ignore rule for lcobucci/jwt 2025-03-14 06:01:52 +01:00
b61611ffd4 Make composer dependency check weekly instead of daily 2025-03-14 06:01:09 +01:00
1447c183a4 Merge pull request #8062 from wallabag/remove-rulerz-php-doctrine-orm
Remove rulerz-php/doctrine-orm
2025-03-14 05:46:17 +01:00
ed2ad4776b Remove rulerz-php/doctrine-orm 2025-03-14 05:40:15 +01:00
8542edc4f1 Merge pull request #8078 from wallabag/dependabot/composer/friendsofphp/php-cs-fixer-3.72.0
Bump friendsofphp/php-cs-fixer from 3.71.0 to 3.72.0
2025-03-14 05:27:04 +01:00
d5126c8a0e Bump friendsofphp/php-cs-fixer from 3.71.0 to 3.72.0
Bumps [friendsofphp/php-cs-fixer](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer) from 3.71.0 to 3.72.0.
- [Release notes](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/releases)
- [Changelog](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/blob/master/CHANGELOG.md)
- [Commits](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/compare/v3.71.0...v3.72.0)

---
updated-dependencies:
- dependency-name: friendsofphp/php-cs-fixer
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-14 04:20:53 +00:00
939e8cf8df Merge pull request #8063 from wallabag/drop-php-7.4-8.0-and-8.1
Drop PHP 7.4, 8.0 and 8.1
2025-03-14 05:19:50 +01:00
991f11cdf2 Remove legacy PHP-CS-Fixer rule configuration 2025-03-13 01:42:02 +01:00
4fa015bddf Bump dependencies 2025-03-13 01:42:02 +01:00
39c71dfdbf Update dependencies 2025-03-13 01:42:02 +01:00
3b68d3ff62 Fix migration 2025-03-13 01:42:02 +01:00
27d07be2b7 Avoid installation of PHP polyfills 2025-03-13 01:42:02 +01:00
206a04bc05 Remove PHP polyfills 2025-03-13 01:42:02 +01:00
78ab273dab Remove PHP platform overrides 2025-03-13 01:42:02 +01:00
530bc71924 Drop PHP 7.4 and 8.0 2025-03-13 01:42:02 +01:00
d082def664 Upgrade PHP Docker base image to 8.2 2025-03-13 01:42:02 +01:00
a4a6eb580b Merge pull request #8066 from wallabag/add-methods-to-all-controllers
Add methods to all controllers
2025-03-10 09:12:26 +01:00
e4249b9ff2 Merge pull request #8067 from wallabag/dependabot/composer/friendsofphp/php-cs-fixer-3.71.0 2025-03-10 06:19:17 +01:00
39694f78b1 Merge pull request #8069 from wallabag/dependabot/npm_and_yarn/autoprefixer-10.4.21
Bump autoprefixer from 10.4.20 to 10.4.21
2025-03-10 03:35:39 +00:00
0ec9b74a98 Merge pull request #8068 from wallabag/dependabot/npm_and_yarn/terser-webpack-plugin-5.3.14
Bump terser-webpack-plugin from 5.3.12 to 5.3.14
2025-03-10 03:32:39 +00:00
9b9fa600bc Bump autoprefixer from 10.4.20 to 10.4.21
Bumps [autoprefixer](https://github.com/postcss/autoprefixer) from 10.4.20 to 10.4.21.
- [Release notes](https://github.com/postcss/autoprefixer/releases)
- [Changelog](https://github.com/postcss/autoprefixer/blob/main/CHANGELOG.md)
- [Commits](https://github.com/postcss/autoprefixer/compare/10.4.20...10.4.21)

---
updated-dependencies:
- dependency-name: autoprefixer
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-10 03:26:54 +00:00
ae2b72b5d2 Bump terser-webpack-plugin from 5.3.12 to 5.3.14
Bumps [terser-webpack-plugin](https://github.com/webpack-contrib/terser-webpack-plugin) from 5.3.12 to 5.3.14.
- [Release notes](https://github.com/webpack-contrib/terser-webpack-plugin/releases)
- [Changelog](https://github.com/webpack-contrib/terser-webpack-plugin/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/terser-webpack-plugin/compare/v5.3.12...v5.3.14)

---
updated-dependencies:
- dependency-name: terser-webpack-plugin
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-10 03:26:41 +00:00
b8ae88b807 Bump friendsofphp/php-cs-fixer from 3.70.2 to 3.71.0
Bumps [friendsofphp/php-cs-fixer](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer) from 3.70.2 to 3.71.0.
- [Release notes](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/releases)
- [Changelog](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/blob/master/CHANGELOG.md)
- [Commits](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/compare/v3.70.2...v3.71.0)

---
updated-dependencies:
- dependency-name: friendsofphp/php-cs-fixer
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-10 03:12:11 +00:00
24784768f5 Add methods to all controllers 2025-03-10 01:37:14 +01:00
a71b78531d Merge pull request #8064 from wallabag/fix-default-domain_name-to-avoid-cross-origin-issues
Fix default DOMAIN_NAME to avoid Cross-Origin issues
2025-03-08 09:49:37 +01:00
d988919448 Fix default DOMAIN_NAME to avoid Cross-Origin issues 2025-03-07 23:58:54 +01:00
a7130bd61a Merge pull request #8033 from wallabag/dependabot/composer/j0k3r/graby-2.4.6
Bump j0k3r/graby from 2.4.5 to 2.4.6
2025-03-04 11:11:49 +01:00
bfd23cdc14 Bump j0k3r/graby from 2.4.5 to 2.4.6
Bumps [j0k3r/graby](https://github.com/j0k3r/graby) from 2.4.5 to 2.4.6.
- [Release notes](https://github.com/j0k3r/graby/releases)
- [Commits](https://github.com/j0k3r/graby/compare/2.4.5...2.4.6)

---
updated-dependencies:
- dependency-name: j0k3r/graby
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-04 09:52:15 +00:00
c7c0ae9d8d Merge pull request #8060 from wallabag/dependabot/composer/sentry/sentry-symfony-5.2.0 2025-03-04 06:58:33 +01:00
c3927c6e10 Merge pull request #8061 from wallabag/dependabot/composer/friendsofphp/php-cs-fixer-3.70.2 2025-03-04 06:58:16 +01:00
8b4efe6cb8 Bump friendsofphp/php-cs-fixer from 3.70.1 to 3.70.2
Bumps [friendsofphp/php-cs-fixer](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer) from 3.70.1 to 3.70.2.
- [Release notes](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/releases)
- [Changelog](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/blob/master/CHANGELOG.md)
- [Commits](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/compare/v3.70.1...v3.70.2)

---
updated-dependencies:
- dependency-name: friendsofphp/php-cs-fixer
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-04 03:17:10 +00:00
c1f6b6257d Bump sentry/sentry-symfony from 5.1.0 to 5.2.0
Bumps [sentry/sentry-symfony](https://github.com/getsentry/sentry-symfony) from 5.1.0 to 5.2.0.
- [Release notes](https://github.com/getsentry/sentry-symfony/releases)
- [Changelog](https://github.com/getsentry/sentry-symfony/blob/master/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-symfony/compare/5.1.0...5.2.0)

---
updated-dependencies:
- dependency-name: sentry/sentry-symfony
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-04 03:16:17 +00:00
e7a70f1e46 Merge pull request #8053 from wallabag/dependabot/npm_and_yarn/annotator-082069d 2025-03-03 08:25:24 +01:00
7ac73407c0 Merge pull request #8050 from wallabag/dependabot/npm_and_yarn/babel-dependencies-8434337095 2025-03-03 08:20:42 +01:00
5505a0289b Merge pull request #8057 from wallabag/dependabot/composer/j0k3r/graby-site-config-1.0.197 2025-03-03 08:19:46 +01:00
8fa5bd2372 Merge pull request #8058 from wallabag/dependabot/composer/friendsofphp/php-cs-fixer-3.70.1 2025-03-03 08:19:30 +01:00
829e1661f4 Bump babel-loader from 9.2.1 to 10.0.0 in the babel-dependencies group
Bumps the babel-dependencies group with 1 update: [babel-loader](https://github.com/babel/babel-loader).


Updates `babel-loader` from 9.2.1 to 10.0.0
- [Release notes](https://github.com/babel/babel-loader/releases)
- [Changelog](https://github.com/babel/babel-loader/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel-loader/compare/v9.2.1...v10.0.0)

---
updated-dependencies:
- dependency-name: babel-loader
  dependency-type: direct:development
  update-type: version-update:semver-major
  dependency-group: babel-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-03 03:30:16 +00:00
e3770399e0 Merge pull request #8056 from wallabag/dependabot/npm_and_yarn/core-js-3.41.0
Bump core-js from 3.40.0 to 3.41.0
2025-03-03 03:28:12 +00:00
defe421ffd Merge pull request #8055 from wallabag/dependabot/npm_and_yarn/terser-webpack-plugin-5.3.12
Bump terser-webpack-plugin from 5.3.11 to 5.3.12
2025-03-03 03:24:40 +00:00
03f8345246 Bump friendsofphp/php-cs-fixer from 3.70.0 to 3.70.1
Bumps [friendsofphp/php-cs-fixer](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer) from 3.70.0 to 3.70.1.
- [Release notes](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/releases)
- [Changelog](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/blob/master/CHANGELOG.md)
- [Commits](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/compare/v3.70.0...v3.70.1)

---
updated-dependencies:
- dependency-name: friendsofphp/php-cs-fixer
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-03 03:24:28 +00:00
d73807a500 Bump j0k3r/graby-site-config from 1.0.196 to 1.0.197
Bumps [j0k3r/graby-site-config](https://github.com/j0k3r/graby-site-config) from 1.0.196 to 1.0.197.
- [Release notes](https://github.com/j0k3r/graby-site-config/releases)
- [Changelog](https://github.com/j0k3r/graby-site-config/blob/master/dallasnews.com.txt)
- [Commits](https://github.com/j0k3r/graby-site-config/compare/1.0.196...1.0.197)

---
updated-dependencies:
- dependency-name: j0k3r/graby-site-config
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-03 03:23:55 +00:00
1f822a826b Merge pull request #8052 from wallabag/dependabot/npm_and_yarn/sass-embedded-1.85.1
Bump sass-embedded from 1.85.0 to 1.85.1
2025-03-03 03:13:55 +00:00
35fe594743 Bump annotator from 3047fc2 to 082069d
Bumps [annotator](https://github.com/wallabag/annotator) from `3047fc2` to `082069d`.
- [Commits](3047fc22c8...082069d777)

---
updated-dependencies:
- dependency-name: annotator
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-03 03:11:46 +00:00
60e8c9399e Merge pull request #8051 from wallabag/dependabot/npm_and_yarn/fontsource-dependencies-524db9a575
Bump the fontsource-dependencies group with 4 updates
2025-03-03 03:10:22 +00:00
87bdac6eac Bump core-js from 3.40.0 to 3.41.0
Bumps [core-js](https://github.com/zloirock/core-js/tree/HEAD/packages/core-js) from 3.40.0 to 3.41.0.
- [Release notes](https://github.com/zloirock/core-js/releases)
- [Changelog](https://github.com/zloirock/core-js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/zloirock/core-js/commits/v3.41.0/packages/core-js)

---
updated-dependencies:
- dependency-name: core-js
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-03 03:03:18 +00:00
41a30dfd20 Bump terser-webpack-plugin from 5.3.11 to 5.3.12
Bumps [terser-webpack-plugin](https://github.com/webpack-contrib/terser-webpack-plugin) from 5.3.11 to 5.3.12.
- [Release notes](https://github.com/webpack-contrib/terser-webpack-plugin/releases)
- [Changelog](https://github.com/webpack-contrib/terser-webpack-plugin/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/terser-webpack-plugin/compare/v5.3.11...v5.3.12)

---
updated-dependencies:
- dependency-name: terser-webpack-plugin
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-03 03:03:09 +00:00
a3239bf416 Bump sass-embedded from 1.85.0 to 1.85.1
Bumps [sass-embedded](https://github.com/sass/embedded-host-node) from 1.85.0 to 1.85.1.
- [Changelog](https://github.com/sass/embedded-host-node/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/embedded-host-node/compare/1.85.0...1.85.1)

---
updated-dependencies:
- dependency-name: sass-embedded
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-03 03:02:39 +00:00
f16b276b63 Bump the fontsource-dependencies group with 4 updates
Bumps the fontsource-dependencies group with 4 updates: [@fontsource/atkinson-hyperlegible](https://github.com/fontsource/font-files/tree/HEAD/fonts/google/atkinson-hyperlegible), [@fontsource/eb-garamond](https://github.com/fontsource/font-files/tree/HEAD/fonts/google/eb-garamond), [@fontsource/montserrat](https://github.com/fontsource/font-files/tree/HEAD/fonts/google/montserrat) and [@fontsource/oswald](https://github.com/fontsource/font-files/tree/HEAD/fonts/google/oswald).


Updates `@fontsource/atkinson-hyperlegible` from 5.1.1 to 5.2.5
- [Changelog](https://github.com/fontsource/font-files/blob/main/CHANGELOG.md)
- [Commits](https://github.com/fontsource/font-files/commits/HEAD/fonts/google/atkinson-hyperlegible)

Updates `@fontsource/eb-garamond` from 5.1.2 to 5.2.5
- [Changelog](https://github.com/fontsource/font-files/blob/main/CHANGELOG.md)
- [Commits](https://github.com/fontsource/font-files/commits/HEAD/fonts/google/eb-garamond)

Updates `@fontsource/montserrat` from 5.1.1 to 5.2.5
- [Changelog](https://github.com/fontsource/font-files/blob/main/CHANGELOG.md)
- [Commits](https://github.com/fontsource/font-files/commits/HEAD/fonts/google/montserrat)

Updates `@fontsource/oswald` from 5.1.1 to 5.2.5
- [Changelog](https://github.com/fontsource/font-files/blob/main/CHANGELOG.md)
- [Commits](https://github.com/fontsource/font-files/commits/HEAD/fonts/google/oswald)

---
updated-dependencies:
- dependency-name: "@fontsource/atkinson-hyperlegible"
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: fontsource-dependencies
- dependency-name: "@fontsource/eb-garamond"
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: fontsource-dependencies
- dependency-name: "@fontsource/montserrat"
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: fontsource-dependencies
- dependency-name: "@fontsource/oswald"
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: fontsource-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-03 03:02:16 +00:00
f1ccc298ec Merge pull request #8043 from wallabag/fix-fab
Fix Floating Action Button
2025-03-02 04:21:42 +01:00
aa003054a5 Fix FAB 2025-03-01 22:55:56 +01:00
ee534a2415 Merge pull request #8040 from wallabag/remove-jquery-animations
Remove jQuery animations
2025-03-01 17:42:23 +01:00
b4b563f15d Merge pull request #8042 from wallabag/fix-toast
Fix toast since Materialize upgrade
2025-03-01 17:41:13 +01:00
43b4562ed2 Merge pull request #8041 from wallabag/fix-focus-card-in-dark-mode
Fix focus card in dark mode
2025-03-01 17:39:25 +01:00
00c618946c Fix toast since Materialize upgrade 2025-03-01 16:59:13 +01:00
cbdfd588fa Fix focus card in dark mode 2025-03-01 16:37:36 +01:00
0da398fd04 Remove jQuery animations 2025-03-01 16:23:08 +01:00
6165e61048 Merge pull request #8039 from wallabag/fix-checkboxes-from-form-type
Fix checkboxes from form type
2025-02-28 07:38:29 +01:00
3ebb4d7c8d Fix checkboxes from form type 2025-02-28 00:32:31 +01:00
9e02a69528 Merge pull request #8036 from ktx/master
Add 'application/vnd.ms-excel' to allowed MIME types config
2025-02-26 15:51:00 +01:00
674d6e7c95 Add 'application/vnd.ms-excel' to allowed MIME types config 2025-02-26 14:03:26 +01:00
5dc46b412c Merge pull request #8027 from yguedidi/update-annotator
Update Annotator
2025-02-24 08:30:45 +01:00
a6134a3e1f Merge pull request #8029 from wallabag/introduce-a-rabbitmq_url
Introduce a RABBITMQ_URL
2025-02-24 08:19:55 +01:00
bd1bcaa43f Update Annotator 2025-02-24 08:18:20 +01:00
f9847a0099 Introduce a RABBITMQ_URL 2025-02-24 08:14:47 +01:00
598515868c Merge pull request #8028 from wallabag/introduce-a-redis_url
Introduce a REDIS_URL
2025-02-24 08:04:50 +01:00
d857293372 Merge pull request #8032 from wallabag/dependabot/composer/friendsofphp/php-cs-fixer-3.70.0
Bump friendsofphp/php-cs-fixer from 3.69.1 to 3.70.0
2025-02-24 07:14:39 +01:00
e59b7b7552 Bump friendsofphp/php-cs-fixer from 3.69.1 to 3.70.0
Bumps [friendsofphp/php-cs-fixer](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer) from 3.69.1 to 3.70.0.
- [Release notes](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/releases)
- [Changelog](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/blob/master/CHANGELOG.md)
- [Commits](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/compare/v3.69.1...v3.70.0)

---
updated-dependencies:
- dependency-name: friendsofphp/php-cs-fixer
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-24 03:54:05 +00:00
eec4a9ab72 Introduce a REDIS_URL 2025-02-22 13:43:45 +01:00
9a95f55b9c Use redis scheme for Redis 2025-02-22 13:34:09 +01:00
43a4f57798 Merge pull request #8025 from wallabag/dependabot/npm_and_yarn/symfony/webpack-encore-5.1.0
Bump @symfony/webpack-encore from 5.0.1 to 5.1.0
2025-02-20 14:37:30 +00:00
fc8029dd3a Merge pull request #8024 from wallabag/dependabot/npm_and_yarn/postcss-8.5.3
Bump postcss from 8.5.2 to 8.5.3
2025-02-20 14:34:17 +00:00
cd731a9520 Bump @symfony/webpack-encore from 5.0.1 to 5.1.0
Bumps [@symfony/webpack-encore](https://github.com/symfony/webpack-encore) from 5.0.1 to 5.1.0.
- [Release notes](https://github.com/symfony/webpack-encore/releases)
- [Changelog](https://github.com/symfony/webpack-encore/blob/main/CHANGELOG.md)
- [Commits](https://github.com/symfony/webpack-encore/compare/v5.0.1...v5.1.0)

---
updated-dependencies:
- dependency-name: "@symfony/webpack-encore"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-20 14:29:06 +00:00
7d3e90eba8 Bump postcss from 8.5.2 to 8.5.3
Bumps [postcss](https://github.com/postcss/postcss) from 8.5.2 to 8.5.3.
- [Release notes](https://github.com/postcss/postcss/releases)
- [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/postcss/postcss/compare/8.5.2...8.5.3)

---
updated-dependencies:
- dependency-name: postcss
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-20 14:28:53 +00:00
15893fa8cd Merge pull request #8023 from wallabag/fix/dependabot-config-syntax
Fix dependabot file
2025-02-20 15:24:01 +01:00
1ebd1ce7ae Fix dependabot file
> (<unknown>): found character that cannot start any token while scanning for the next token at line 18 column 22
2025-02-20 15:03:26 +01:00
1b084f4faf Merge pull request #8015 from yguedidi/remove-unused-rss-limit-parameter
Remove unused RSS limit parameter
2025-02-20 11:15:56 +01:00
ac395cd492 Remove extra sentence in config.form_settings.display_thumbnails_label in ES 2025-02-20 10:29:54 +01:00
787c1ce2ab Remove legacy config.form_rss.* translations 2025-02-20 10:29:54 +01:00
d76465baf2 Rename rss_limit_too_high to feed_limit_too_high 2025-02-20 10:29:54 +01:00
f0cc7fdc27 Remove unused RSS limit parameter 2025-02-20 10:29:54 +01:00
72692dd298 Merge pull request #7920 from e-adrien/user-agent
Use Graby's http headers configuration for the authentication request
2025-02-20 10:24:23 +01:00
d58549472c Use Graby's http headers configuration for the authentication request 2025-02-20 08:47:19 +01:00
7070c075f5 Merge pull request #8019 from wallabag/make-all-parameters-configurable-with-environment-variables
Make all parameters configurable with environment variables
2025-02-20 08:46:46 +01:00
3e20d07f96 Merge pull request #8018 from wallabag/use-constructor-injection-for-registration-parameter
Use constructor injection for registration parameter
2025-02-20 08:46:26 +01:00
b905a2c856 Merge pull request #8017 from wallabag/make-wallabag_url-a-twig-global
Make wallabag_url a Twig global
2025-02-20 08:32:30 +01:00
21183a45be Merge pull request #8022 from wallabag/dependabot/composer/php-amqplib/php-amqplib-3.7.3 2025-02-20 07:05:29 +01:00
9ce9e2de00 Merge pull request #8021 from wallabag/dependabot/composer/friendsofphp/php-cs-fixer-3.69.1 2025-02-20 07:05:14 +01:00
ea03d1e2e6 Bump php-amqplib/php-amqplib from 3.7.2 to 3.7.3
Bumps [php-amqplib/php-amqplib](https://github.com/php-amqplib/php-amqplib) from 3.7.2 to 3.7.3.
- [Release notes](https://github.com/php-amqplib/php-amqplib/releases)
- [Changelog](https://github.com/php-amqplib/php-amqplib/blob/master/CHANGELOG.md)
- [Commits](https://github.com/php-amqplib/php-amqplib/compare/v3.7.2...v3.7.3)

---
updated-dependencies:
- dependency-name: php-amqplib/php-amqplib
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-20 03:32:02 +00:00
3959961bdd Bump friendsofphp/php-cs-fixer from 3.69.0 to 3.69.1
Bumps [friendsofphp/php-cs-fixer](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer) from 3.69.0 to 3.69.1.
- [Release notes](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/releases)
- [Changelog](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/blob/master/CHANGELOG.md)
- [Commits](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/compare/v3.69.0...v3.69.1)

---
updated-dependencies:
- dependency-name: friendsofphp/php-cs-fixer
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-20 03:30:52 +00:00
5473a215ce Merge pull request #8013 from yguedidi/upgrade-materialize
Upgrade Materialize
2025-02-20 00:23:44 +01:00
0ecf990e79 Merge pull request #8020 from wallabag/fix-volatile-test
Fix volatile tests
2025-02-20 00:10:58 +01:00
0a432b0383 Merge pull request #8016 from wallabag/remove-legacy-translation-in-craueconfigbundle
Remove legacy translation in CraueConfigBundle
2025-02-20 00:10:01 +01:00
35251c0083 Make created at filters full width each 2025-02-19 23:01:06 +01:00
3bdd5713de Remove datepicker 2025-02-19 22:59:50 +01:00
3d0bd49730 Fix volatile tests 2025-02-19 21:41:53 +01:00
311675d30b Fix constructor call of AuthCodeMailer in AuthCodeMailerTest 2025-02-19 20:48:33 +01:00
460b509a1d Make all parameters configurable with environment variables 2025-02-19 20:42:37 +01:00
f0cc6ddb49 Use constructor injection for registration parameter 2025-02-19 20:39:26 +01:00
c5c9b130b0 Use wallabag_url in entries.xml 2025-02-19 20:36:20 +01:00
b921abf173 Make wallabag_url a Twig global 2025-02-19 20:36:13 +01:00
1f7fafa47a Remove legacy translation in CraueConfigBundle 2025-02-19 20:33:08 +01:00
f71d8332e0 Merge pull request #7999 from wallabag/fix/menu-entry-with-annotations
Fix entries counter for annotated entries in the menu
2025-02-10 10:12:45 +01:00
3dffcadc03 Fix entries counter for annotated entries in the menu
The query were badly made and return all annotations for the current user instead of the total of entries with annotation(s).
2025-02-10 08:42:06 +01:00
fab0c02ba0 Merge pull request #7993 from wallabag/fix/pocket-api-import 2025-02-07 21:26:07 +01:00
c4857564f3 Change NB_ELEMENTS in pocket importer to 30 to comply with Pocket API restriction. 2025-02-07 18:51:37 +01:00
c7c74de4b8 Merge pull request #7846 from wallabag/fix-title-tag-filter
Fix title tag filter
2024-11-22 14:05:14 +01:00
08b68d4d87 Display tag label instead of tag slug in page title 2024-11-22 13:49:08 +01:00
93e877f086 Merge pull request #7827 from wallabag/fix-redirection-action-search
Fix redirection after action in search results
2024-11-21 13:57:12 +01:00
82430b50c6 Fix redirection after action in search results 2024-11-21 13:36:20 +01:00
381 changed files with 10104 additions and 7994 deletions

2
.github/CODEOWNERS vendored Normal file
View File

@ -0,0 +1,2 @@
# Migrated rules from dependabot.yml
composer.* @Kdecherf @j0k3r @yguedidi

View File

@ -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)

View File

@ -15,13 +15,13 @@ updates:
patterns:
- "*fontsource*"
ignore:
- dependency-name: @materializecss/materialize
- dependency-name: "@materializecss/materialize"
versions:
- "> 1.2.2"
- package-ecosystem: composer
directory: "/"
schedule:
interval: daily
interval: weekly
time: "04:00"
timezone: Europe/Paris
open-pull-requests-limit: 10
@ -35,18 +35,12 @@ updates:
phpstan-dependencies:
patterns:
- "phpstan/*"
reviewers:
- j0k3r
- yguedidi
- Kdecherf
pagerfanta-dependencies:
patterns:
- "pagerfanta/*"
ignore:
- dependency-name: lcobucci/jwt
versions:
- ">= 4.2.0"
# until we add support for Symfony 5+
- dependency-name: symfony/*
versions:
- ">= 5.0.0"
update-types: [ "version-update:semver-major" ]
- package-ecosystem: github-actions
directory: "/"
schedule:

View File

@ -13,17 +13,17 @@ permissions:
jobs:
coding-standards:
name: "CS Fixer, PHPStan & TwigCS"
runs-on: "ubuntu-20.04"
runs-on: ubuntu-latest
steps:
- name: "Checkout"
uses: "actions/checkout@v4"
uses: "actions/checkout@v6"
- name: "Install PHP"
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"
@ -31,7 +31,7 @@ jobs:
COMPOSER_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: "Install Node"
uses: actions/setup-node@v4
uses: actions/setup-node@v6
with:
node-version-file: ".nvmrc"
cache: 'yarn'

View File

@ -16,7 +16,7 @@ env:
jobs:
phpunit:
name: "PHP ${{ matrix.php }} using ${{ matrix.database }}"
runs-on: "ubuntu-20.04"
runs-on: ubuntu-latest
services:
rabbitmq:
image: rabbitmq:3-alpine
@ -31,9 +31,6 @@ jobs:
fail-fast: false
matrix:
php:
- "7.4"
- "8.0"
- "8.1"
- "8.2"
- "8.3"
- "8.4"
@ -44,7 +41,7 @@ jobs:
steps:
- name: "Checkout"
uses: "actions/checkout@v4"
uses: "actions/checkout@v6"
with:
fetch-depth: 2
@ -58,7 +55,7 @@ jobs:
ini-values: "date.timezone=Europe/Paris"
- name: "Install Node"
uses: actions/setup-node@v4
uses: actions/setup-node@v6
with:
node-version-file: ".nvmrc"
cache: 'yarn'
@ -96,7 +93,7 @@ jobs:
phpunit_no_prefix:
name: "PHP ${{ matrix.php }} using ${{ matrix.database }} without prefix"
runs-on: "ubuntu-20.04"
runs-on: ubuntu-latest
services:
rabbitmq:
image: rabbitmq:3-alpine
@ -119,7 +116,7 @@ jobs:
steps:
- name: "Checkout"
uses: "actions/checkout@v4"
uses: "actions/checkout@v6"
with:
fetch-depth: 2
@ -133,7 +130,7 @@ jobs:
ini-values: "date.timezone=Europe/Paris"
- name: "Install Node"
uses: actions/setup-node@v4
uses: actions/setup-node@v6
with:
node-version-file: ".nvmrc"
cache: 'yarn'
@ -176,7 +173,7 @@ jobs:
phpunit-without-rmq-redis:
name: "PHP ${{ matrix.php }} using ${{ matrix.database }} without Rabbit & Redis"
runs-on: "ubuntu-20.04"
runs-on: ubuntu-latest
strategy:
fail-fast: false
@ -190,7 +187,7 @@ jobs:
steps:
- name: "Checkout"
uses: "actions/checkout@v4"
uses: "actions/checkout@v6"
with:
fetch-depth: 2
@ -204,7 +201,7 @@ jobs:
ini-values: "date.timezone=Europe/Paris"
- name: "Install Node"
uses: actions/setup-node@v4
uses: actions/setup-node@v6
with:
node-version-file: ".nvmrc"
cache: 'yarn'

View File

@ -12,7 +12,7 @@ jobs:
steps:
- name: Dependabot metadata
id: metadata
uses: dependabot/fetch-metadata@v2.3.0
uses: dependabot/fetch-metadata@v2.4.0
with:
github-token: '${{ secrets.GITHUB_TOKEN }}'
- name: Approve and merge minor updates

View File

@ -13,16 +13,16 @@ permissions:
jobs:
translations:
name: "Translations"
runs-on: "ubuntu-20.04"
runs-on: ubuntu-latest
strategy:
matrix:
php:
- "7.4"
- "8.2"
steps:
- name: "Checkout"
uses: "actions/checkout@v4"
uses: "actions/checkout@v6"
- name: "Install PHP"
uses: "shivammathur/setup-php@v2"

View File

@ -12,11 +12,11 @@ jobs:
strategy:
matrix:
php:
- "7.4"
- "8.2"
steps:
- name: "Checkout"
uses: "actions/checkout@v4"
uses: "actions/checkout@v6"
- name: "Install PHP"
uses: "shivammathur/setup-php@v2"
@ -30,7 +30,7 @@ jobs:
COMPOSER_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: "Install Node"
uses: actions/setup-node@v4
uses: actions/setup-node@v6
with:
node-version-file: ".nvmrc"
cache: "yarn"

View File

@ -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',
],

View File

@ -2,8 +2,50 @@
## Upcoming changes
* **[BC BREAK]** Convert 403 errors to 404 errors by @yguedidi in https://github.com/wallabag/wallabag/pull/8075
* `wallassets/` folder renamed to `build/`
## [2.6.13](https://github.com/wallabag/wallabag/tree/2.6.13)
[Full Changelog](https://github.com/wallabag/wallabag/compare/2.6.12...2.6.13)
### Improvements
* Add support of Pocket CSV import by @kdecherf and @nicosomb in [https://github.com/wallabag/wallabag/pull/8240](https://github.com/wallabag/wallabag/pull/8240)
* Backport Pocket and Shaarli HTML imports from master by @nicosomb in [https://github.com/wallabag/wallabag/pull/8193](https://github.com/wallabag/wallabag/pull/8193)
### Fixes
* Avoid non-validated OTP to be enabled #8139 by @j0k3r in [https://github.com/wallabag/wallabag/pull/8139](https://github.com/wallabag/wallabag/pull/8139)
### Technical stuff
* Update j0k3r/php-readability:1.2.13 to fix regression (about latin1 instead of UTF-8 used for entries) by @nicosomb [https://github.com/wallabag/wallabag/pull/8194](https://github.com/wallabag/wallabag/pull/8194)
## [2.6.12](https://github.com/wallabag/wallabag/tree/2.6.12)
[Full Changelog](https://github.com/wallabag/wallabag/compare/2.6.11...2.6.12)
### Technical stuff
* Fix changelog by @yguedidi in [https://github.com/wallabag/wallabag/pull/8135](https://github.com/wallabag/wallabag/pull/8135)
* Update dependencies by @yguedidi in [https://github.com/wallabag/wallabag/pull/8136](https://github.com/wallabag/wallabag/pull/8136)
## [2.6.11](https://github.com/wallabag/wallabag/tree/2.6.11)
[Full Changelog](https://github.com/wallabag/wallabag/compare/2.6.10...2.6.11)
### Security fix
* Protect actions with a CSRF token by @yguedidi in https://github.com/wallabag/wallabag/commit/99c8a06594d6ee7480ce4d041ccff3025b353656
### Fixes
* Fix redirection after action in search results by @nicosomb in [https://github.com/wallabag/wallabag/pull/7827](https://github.com/wallabag/wallabag/pull/7827)
* Fix title tag filter by @nicosomb in [https://github.com/wallabag/wallabag/pull/7846](https://github.com/wallabag/wallabag/pull/7846)
* Change NB_ELEMENTS in pocket importer to 30 by @j0k3r in [https://github.com/wallabag/wallabag/pull/7993](https://github.com/wallabag/wallabag/pull/7993)
* Fix entries counter for annotated entries in the menu by @j0k3r in [https://github.com/wallabag/wallabag/pull/7999](https://github.com/wallabag/wallabag/pull/7999)
### Technical stuff
* Prepare 2.6.11 release by @yguedidi in [https://github.com/wallabag/wallabag/pull/8133](https://github.com/wallabag/wallabag/pull/8133)
## [2.6.10](https://github.com/wallabag/wallabag/tree/2.6.10)
[Full Changelog](https://github.com/wallabag/wallabag/compare/2.6.9...2.6.10)

View File

@ -52,6 +52,9 @@ fix-cs: ## Run PHP-CS-Fixer
phpstan: ## Run PHPStan
@$(PHP_NO_XDEBUG) bin/phpstan analyse
phpstan-baseline: ## Generate PHPStan baseline
@$(PHP_NO_XDEBUG) bin/phpstan analyse --generate-baseline
lint-js: ## Run ESLint
@$(YARN) lint:js

View File

@ -1,6 +1,6 @@
# wallabag
![CI](https://github.com/wallabag/wallabag/workflows/CI/badge.svg)
[![CI](https://github.com/wallabag/wallabag/actions/workflows/continuous-integration.yml/badge.svg?branch=master)](https://github.com/wallabag/wallabag/actions/workflows/continuous-integration.yml?query=branch%3Amaster)
[![Matrix](https://matrix.to/img/matrix-badge.svg)](https://matrix.to/#/#wallabag:matrix.org)
[![Donation Status](https://img.shields.io/liberapay/goal/wallabag.svg?logo=liberapay)](https://liberapay.com/wallabag/donate)
[![Translation status](https://hosted.weblate.org/widgets/wallabag/-/svg-badge.svg)](https://hosted.weblate.org/engage/wallabag/?utm_source=widget)

View File

@ -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"
}
}

View File

@ -1,8 +1,39 @@
<?php
use BabDev\PagerfantaBundle\BabDevPagerfantaBundle;
use Bazinga\Bundle\HateoasBundle\BazingaHateoasBundle;
use Craue\ConfigBundle\CraueConfigBundle;
use DAMA\DoctrineTestBundle\DAMADoctrineTestBundle;
use Doctrine\Bundle\DoctrineBundle\DoctrineBundle;
use Doctrine\Bundle\FixturesBundle\DoctrineFixturesBundle;
use Doctrine\Bundle\MigrationsBundle\DoctrineMigrationsBundle;
use FOS\JsRoutingBundle\FOSJsRoutingBundle;
use FOS\OAuthServerBundle\FOSOAuthServerBundle;
use FOS\RestBundle\FOSRestBundle;
use FOS\UserBundle\FOSUserBundle;
use JMS\SerializerBundle\JMSSerializerBundle;
use KPhoen\RulerZBundle\KPhoenRulerZBundle;
use Nelmio\ApiDocBundle\NelmioApiDocBundle;
use Nelmio\CorsBundle\NelmioCorsBundle;
use OldSound\RabbitMqBundle\OldSoundRabbitMqBundle;
use Scheb\TwoFactorBundle\SchebTwoFactorBundle;
use Sensio\Bundle\FrameworkExtraBundle\SensioFrameworkExtraBundle;
use Sentry\SentryBundle\SentryBundle;
use Spiriit\Bundle\FormFilterBundle\SpiriitFormFilterBundle;
use Stof\DoctrineExtensionsBundle\StofDoctrineExtensionsBundle;
use Symfony\Bundle\DebugBundle\DebugBundle;
use Symfony\Bundle\FrameworkBundle\FrameworkBundle;
use Symfony\Bundle\MakerBundle\MakerBundle;
use Symfony\Bundle\MonologBundle\MonologBundle;
use Symfony\Bundle\SecurityBundle\SecurityBundle;
use Symfony\Bundle\TwigBundle\TwigBundle;
use Symfony\Bundle\WebProfilerBundle\WebProfilerBundle;
use Symfony\Bundle\WebServerBundle\WebServerBundle;
use Symfony\Component\Config\Loader\LoaderInterface;
use Symfony\Component\DependencyInjection\ContainerBuilder;
use Symfony\Component\HttpKernel\Kernel;
use Symfony\WebpackEncoreBundle\WebpackEncoreBundle;
use Twig\Extra\TwigExtraBundle\TwigExtraBundle;
use Wallabag\Import\ImportCompilerPass;
class AppKernel extends Kernel
@ -10,45 +41,45 @@ class AppKernel extends Kernel
public function registerBundles()
{
$bundles = [
new Symfony\Bundle\FrameworkBundle\FrameworkBundle(),
new Symfony\Bundle\SecurityBundle\SecurityBundle(),
new Symfony\Bundle\TwigBundle\TwigBundle(),
new Symfony\Bundle\MonologBundle\MonologBundle(),
new Doctrine\Bundle\DoctrineBundle\DoctrineBundle(),
new Sensio\Bundle\FrameworkExtraBundle\SensioFrameworkExtraBundle(),
new FOS\RestBundle\FOSRestBundle(),
new FOS\UserBundle\FOSUserBundle(),
new JMS\SerializerBundle\JMSSerializerBundle(),
new Nelmio\ApiDocBundle\NelmioApiDocBundle(),
new Nelmio\CorsBundle\NelmioCorsBundle(),
new Bazinga\Bundle\HateoasBundle\BazingaHateoasBundle(),
new Spiriit\Bundle\FormFilterBundle\SpiriitFormFilterBundle(),
new FOS\OAuthServerBundle\FOSOAuthServerBundle(),
new Stof\DoctrineExtensionsBundle\StofDoctrineExtensionsBundle(),
new Scheb\TwoFactorBundle\SchebTwoFactorBundle(),
new KPhoen\RulerZBundle\KPhoenRulerZBundle(),
new Doctrine\Bundle\MigrationsBundle\DoctrineMigrationsBundle(),
new Craue\ConfigBundle\CraueConfigBundle(),
new BabDev\PagerfantaBundle\BabDevPagerfantaBundle(),
new FOS\JsRoutingBundle\FOSJsRoutingBundle(),
new OldSound\RabbitMqBundle\OldSoundRabbitMqBundle(),
new Sentry\SentryBundle\SentryBundle(),
new Twig\Extra\TwigExtraBundle\TwigExtraBundle(),
new Symfony\WebpackEncoreBundle\WebpackEncoreBundle(),
new FrameworkBundle(),
new SecurityBundle(),
new TwigBundle(),
new MonologBundle(),
new DoctrineBundle(),
new SensioFrameworkExtraBundle(),
new FOSRestBundle(),
new FOSUserBundle(),
new JMSSerializerBundle(),
new NelmioApiDocBundle(),
new NelmioCorsBundle(),
new BazingaHateoasBundle(),
new SpiriitFormFilterBundle(),
new FOSOAuthServerBundle(),
new StofDoctrineExtensionsBundle(),
new SchebTwoFactorBundle(),
new KPhoenRulerZBundle(),
new DoctrineMigrationsBundle(),
new CraueConfigBundle(),
new BabDevPagerfantaBundle(),
new FOSJsRoutingBundle(),
new OldSoundRabbitMqBundle(),
new SentryBundle(),
new TwigExtraBundle(),
new WebpackEncoreBundle(),
];
if (in_array($this->getEnvironment(), ['dev', 'test'], true)) {
$bundles[] = new Symfony\Bundle\DebugBundle\DebugBundle();
$bundles[] = new Symfony\Bundle\WebProfilerBundle\WebProfilerBundle();
$bundles[] = new Doctrine\Bundle\FixturesBundle\DoctrineFixturesBundle();
$bundles[] = new DebugBundle();
$bundles[] = new WebProfilerBundle();
$bundles[] = new DoctrineFixturesBundle();
if ('test' === $this->getEnvironment()) {
$bundles[] = new DAMA\DoctrineTestBundle\DAMADoctrineTestBundle();
$bundles[] = new DAMADoctrineTestBundle();
}
if ('dev' === $this->getEnvironment()) {
$bundles[] = new Symfony\Bundle\MakerBundle\MakerBundle();
$bundles[] = new Symfony\Bundle\WebServerBundle\WebServerBundle();
$bundles[] = new MakerBundle();
$bundles[] = new WebServerBundle();
}
}
@ -69,14 +100,16 @@ class AppKernel extends Kernel
{
$loader->load($this->getProjectDir() . '/app/config/config_' . $this->getEnvironment() . '.yml');
$loader->load(function (ContainerBuilder $container) {
$loader->load(function (ContainerBuilder $container): void {
// $container->setParameter('container.autowiring.strict_mode', true);
// $container->setParameter('container.dumper.inline_class_loader', true);
$container->addObjectResource($this);
});
$loader->load(function (ContainerBuilder $container) {
$loader->load(function (ContainerBuilder $container): void {
$this->processDatabaseParameters($container);
$this->defineRedisUrlEnvVar($container);
$this->defineRabbitMqUrlEnvVar($container);
});
}
@ -87,19 +120,12 @@ class AppKernel extends Kernel
private function processDatabaseParameters(ContainerBuilder $container)
{
switch ($container->getParameter('database_driver')) {
case 'pdo_mysql':
$scheme = 'mysql';
break;
case 'pdo_pgsql':
$scheme = 'pgsql';
break;
case 'pdo_sqlite':
$scheme = 'sqlite';
break;
default:
throw new RuntimeException('Unsupported database driver: ' . $container->getParameter('database_driver'));
}
$scheme = match ($container->getParameter('database_driver')) {
'pdo_mysql' => 'mysql',
'pdo_pgsql' => 'pgsql',
'pdo_sqlite' => 'sqlite',
default => throw new RuntimeException('Unsupported database driver: ' . $container->getParameter('database_driver')),
};
$container->setParameter('database_scheme', $scheme);
@ -112,4 +138,45 @@ class AppKernel extends Kernel
$container->setParameter('database_port', (string) $container->getParameter('database_port'));
$container->setParameter('database_socket', (string) $container->getParameter('database_socket'));
}
private function defineRedisUrlEnvVar(ContainerBuilder $container)
{
$scheme = $container->getParameter('redis_scheme');
$host = $container->getParameter('redis_host');
$port = $container->getParameter('redis_port');
$path = $container->getParameter('redis_path');
$password = $container->getParameter('redis_password');
$url = $scheme . '://';
if ($password) {
$url .= $password . '@';
}
$url .= $host;
if ($port) {
$url .= ':' . $port;
}
$url .= '/' . ltrim($path, '/');
$container->setParameter('env(REDIS_URL)', $url);
}
private function defineRabbitMqUrlEnvVar(ContainerBuilder $container)
{
$host = $container->getParameter('rabbitmq_host');
$port = $container->getParameter('rabbitmq_port');
$user = $container->getParameter('rabbitmq_user');
$password = $container->getParameter('rabbitmq_password');
$url = 'amqp://' . $user . ':' . $password . '@' . $host;
if ($port) {
$url .= ':' . $port;
}
$container->setParameter('env(RABBITMQ_URL)', $url);
}
}

View File

@ -29,6 +29,8 @@ framework:
handler_id: session.handler.native_file
save_path: "%kernel.project_dir%/var/sessions/%kernel.environment%"
cookie_secure: auto
cookie_samesite: lax
storage_factory_id: session.storage.factory.native
fragments: ~
http_method_override: true
assets:
@ -60,6 +62,7 @@ twig:
form_themes:
- "@SpiriitFormFilter/Form/form_div_layout.html.twig"
globals:
wallabag_url: '%domain_name%'
registration_enabled: '%fosuser_registration%'
# Doctrine Configuration
@ -76,7 +79,7 @@ doctrine:
auto_mapping: true
mappings:
Wallabag:
type: annotation
type: attribute
is_bundle: false
dir: '%kernel.project_dir%/src/Entity'
prefix: 'Wallabag\Entity'
@ -187,7 +190,7 @@ nelmio_cors:
fos_user:
db_driver: orm
firewall_name: secured_area
firewall_name: main
user_class: Wallabag\Entity\User
registration:
confirmation:
@ -196,7 +199,7 @@ fos_user:
address: "%from_email%"
sender_name: wallabag
service:
mailer: Wallabag\Mailer\UserMailer
mailer: fos_user.mailer.twig_symfony
fos_oauth_server:
db_driver: orm
@ -231,19 +234,11 @@ scheb_two_factor:
template: "Authentication/form.html.twig"
mailer: Wallabag\Mailer\AuthCodeMailer
rulerz:
targets:
doctrine: true
old_sound_rabbit_mq:
connections:
default:
host: "%rabbitmq_host%"
port: "%rabbitmq_port%"
user: "%rabbitmq_user%"
password: "%rabbitmq_password%"
vhost: /
lazy: true
url: "%env(RABBITMQ_URL)%"
lazy: true
producers:
import_pocket:
connection: default
@ -310,6 +305,11 @@ old_sound_rabbit_mq:
exchange_options:
name: 'wallabag.import.pocket_html'
type: topic
import_pocket_csv:
connection: default
exchange_options:
name: 'wallabag.import.pocket_csv'
type: topic
consumers:
import_pocket:
connection: default
@ -428,6 +428,15 @@ old_sound_rabbit_mq:
name: 'wallabag.import.pocket_html'
callback: wallabag.consumer.amqp.pocket_html
qos_options: {prefetch_count: "%rabbitmq_prefetch_count%"}
import_pocket_csv:
connection: default
exchange_options:
name: 'wallabag.import.pocket_csv'
type: topic
queue_options:
name: 'wallabag.import.pocket_csv'
callback: wallabag.consumer.amqp.pocket_csv
qos_options: {prefetch_count: "%rabbitmq_prefetch_count%"}
fos_js_routing:
routes_to_expose:

View File

@ -10,7 +10,7 @@ parameters:
framework:
test: ~
session:
storage_id: session.storage.mock_file
storage_factory_id: session.storage.factory.mock_file
profiler:
collect: false
translator:

View File

@ -28,6 +28,8 @@ parameters:
mailer_dsn: smtp://127.0.0.1
wallabag_user_agent: "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.2 (KHTML, like Gecko) Chrome/15.0.874.92 Safari/535.2"
locale: en
# A secret key that's used to generate certain security-related tokens
@ -47,8 +49,6 @@ parameters:
from_email: no-reply@wallabag.org
rss_limit: 50
# RabbitMQ processing
rabbitmq_host: localhost
rabbitmq_port: 5672
@ -57,7 +57,7 @@ parameters:
rabbitmq_prefetch_count: 10
# Redis processing
redis_scheme: tcp
redis_scheme: redis
redis_host: localhost
redis_port: 6379
redis_path: null

View File

@ -13,6 +13,7 @@ doc-api-json:
homepage:
path: "/{page}"
methods: GET
defaults:
_controller: 'Wallabag\Controller\EntryController::showUnreadAction'
page : 1
@ -27,23 +28,27 @@ fos_oauth_server_token:
craue_config_settings_modify:
path: /settings
methods: [GET, POST]
defaults:
_controller: 'Craue\ConfigBundle\Controller\SettingsController::modifyAction'
fos_js_routing:
resource: "@FOSJsRoutingBundle/Resources/config/routing/routing.xml"
resource: "@FOSJsRoutingBundle/Resources/config/routing/routing-sf4.xml"
2fa_login:
path: /2fa
methods: GET
defaults:
_controller: "scheb_two_factor.form_controller:form"
2fa_login_check:
path: /2fa_check
methods: POST
# redirect RSS feed to Atom
rss_to_atom_unread:
path: /{username}/{token}/unread.xml
methods: GET
defaults:
_controller: 'Symfony\Bundle\FrameworkBundle\Controller\RedirectController::redirectAction'
route: unread_feed
@ -51,6 +56,7 @@ rss_to_atom_unread:
rss_to_atom_archive:
path: /{username}/{token}/archive.xml
methods: GET
defaults:
_controller: 'Symfony\Bundle\FrameworkBundle\Controller\RedirectController::redirectAction'
route: archive_feed
@ -58,6 +64,7 @@ rss_to_atom_archive:
rss_to_atom_starred:
path: /{username}/{token}/starred.xml
methods: GET
defaults:
_controller: 'Symfony\Bundle\FrameworkBundle\Controller\RedirectController::redirectAction'
route: starred_feed
@ -65,6 +72,7 @@ rss_to_atom_starred:
rss_to_atom_all:
path: /{username}/{token}/all.xml
methods: GET
defaults:
_controller: 'Symfony\Bundle\FrameworkBundle\Controller\RedirectController::redirectAction'
route: all_feed
@ -72,6 +80,7 @@ rss_to_atom_all:
rss_to_atom_tags:
path: /{username}/{token}/tags/{slug}.xml
methods: GET
defaults:
_controller: 'Symfony\Bundle\FrameworkBundle\Controller\RedirectController::redirectAction'
route: tag_feed

View File

@ -1,5 +1,5 @@
security:
encoders:
password_hashers:
FOS\UserBundle\Model\UserInterface: sha512
role_hierarchy:
@ -37,7 +37,7 @@ security:
pattern: ^/login$
anonymous: ~
secured_area:
main:
pattern: ^/
form_login:
provider: fos_userbundle
@ -70,10 +70,9 @@ security:
- { path: /(unread|starred|archive|annotated|all).xml$, roles: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/locale, role: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: /tags/(.*).xml$, roles: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/feed, roles: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/feed, roles: PUBLIC_ACCESS }
- { path: /(unread|starred|archive|annotated).xml$, roles: IS_AUTHENTICATED_ANONYMOUSLY } # For backwards compatibility
- { path: ^/share, roles: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/settings, roles: ROLE_SUPER_ADMIN }
- { path: ^/annotations, roles: ROLE_USER }
- { path: ^/2fa, role: IS_AUTHENTICATED_2FA_IN_PROGRESS }
- { path: ^/, roles: ROLE_USER }

View File

@ -20,7 +20,13 @@ services:
$encryptionKeyPath: "%wallabag.site_credentials.encryption_key_path%"
$fetchingErrorMessageTitle: "%wallabag.fetching_error_message_title%"
$fetchingErrorMessage: '%wallabag.fetching_error_message%'
$version: "%wallabag.version%"
$paypalUrl: "%wallabag.paypal_url%"
$languages: '%wallabag.languages%'
$feedLimit: "%wallabag.feed_limit%"
$apiLimitMassActions: "%wallabag.api_limit_mass_actions%"
$allowMimetypes: "%wallabag.allow_mimetypes%"
$resourceDir: "%wallabag.resource_dir%"
$lifeTime: '%wallabag.cache_lifetime%'
$logoPath: 'web/img/appicon/apple-touch-icon-152.png'
$registrationEnabled: '%fosuser_registration%'
@ -31,6 +37,8 @@ services:
$supportUrl: '@=service(''craue_config'').get(''wallabag_support_url'')'
$fonts: '%wallabag.fonts%'
$defaultIgnoreOriginInstanceRules: '%wallabag.default_ignore_origin_instance_rules%'
$defaultUserAgent: "%wallabag_user_agent%"
$addonsUrl: "%addons_url%"
Wallabag\:
resource: '../../src/*'
@ -108,6 +116,11 @@ services:
$rabbitMqProducer: '@old_sound_rabbit_mq.import_pocket_html_producer'
$redisProducer: '@wallabag.producer.redis.pocket_html'
Wallabag\Controller\Import\PocketCsvController:
arguments:
$rabbitMqProducer: '@old_sound_rabbit_mq.import_pocket_csv_producer'
$redisProducer: '@wallabag.producer.redis.pocket_csv'
Wallabag\Doctrine\MigrationFactoryDecorator:
decorates: doctrine.migrations.migrations_factory
@ -201,6 +214,8 @@ services:
$config:
error_message: '%wallabag.fetching_error_message%'
error_message_title: '%wallabag.fetching_error_message_title%'
http_client:
ua_browser: "%wallabag_user_agent%"
$client: '@psr18.wallabag.client'
calls:
- [ setLogger, [ "@logger" ] ]
@ -230,30 +245,17 @@ services:
tags:
- { name: rulerz.operator, target: native, operator: matches }
Wallabag\Operator\Doctrine\Matches:
tags:
- { name: rulerz.operator, target: doctrine, operator: matches, inline: true }
Wallabag\Operator\PHP\NotMatches:
tags:
- { name: rulerz.operator, target: native, operator: notmatches }
Wallabag\Operator\Doctrine\NotMatches:
tags:
- { name: rulerz.operator, target: doctrine, operator: notmatches, inline: true }
Wallabag\Operator\PHP\PatternMatches:
tags:
- { name: rulerz.operator, target: native, operator: "~" }
Predis\Client:
arguments:
$parameters:
scheme: '%redis_scheme%'
host: '%redis_host%'
port: '%redis_port%'
path: '%redis_path%'
password: '%redis_password%'
$parameters: '%env(REDIS_URL)%'
Wallabag\Event\Subscriber\SQLiteCascadeDeleteSubscriber:
tags:
@ -273,16 +275,6 @@ services:
$defaultSettings: '%wallabag.default_internal_settings%'
$defaultIgnoreOriginInstanceRules: '%wallabag.default_ignore_origin_instance_rules%'
Wallabag\Mailer\UserMailer:
arguments:
$parameters:
template:
confirmation: '%fos_user.registration.confirmation.template%'
resetting: '%fos_user.resetting.email.template%'
from_email:
confirmation: '%fos_user.registration.confirmation.from_email%'
resetting: '%fos_user.resetting.email.from_email%'
Wallabag\Event\Listener\CreateConfigListener:
arguments:
$itemsOnPage: "%wallabag.items_on_page%"
@ -351,6 +343,10 @@ services:
tags:
- { name: wallabag.import, alias: pocket_html }
Wallabag\Import\PocketCsvImport:
tags:
- { name: wallabag.import, alias: pocket_csv }
# to factorize the proximity and bypass translation for prev & next
pagerfanta.view.default_wallabag:
class: Pagerfanta\View\OptionableView

View File

@ -20,6 +20,7 @@ services:
$elcuratorConsumer: '@old_sound_rabbit_mq.import_elcurator_consumer'
$shaarliConsumer: '@old_sound_rabbit_mq.import_shaarli_consumer'
$pocketHtmlConsumer: '@old_sound_rabbit_mq.import_pocket_html_consumer'
$pocketCsvConsumer: '@old_sound_rabbit_mq.import_pocket_csv_consumer'
$omnivoreConsumer: '@old_sound_rabbit_mq.import_omnivore_consumer'
wallabag.consumer.amqp.pocket:
@ -86,3 +87,8 @@ services:
class: Wallabag\Consumer\AMQPEntryConsumer
arguments:
$import: '@Wallabag\Import\PocketHtmlImport'
wallabag.consumer.amqp.pocket_csv:
class: Wallabag\Consumer\AMQPEntryConsumer
arguments:
$import: '@Wallabag\Import\PocketCsvImport'

View File

@ -212,3 +212,19 @@ services:
class: Wallabag\Consumer\RedisEntryConsumer
arguments:
$import: '@Wallabag\Import\PocketHtmlImport'
# pocket csv
wallabag.queue.redis.pocket_csv:
class: Simpleue\Queue\RedisQueue
arguments:
$queueName: "wallabag.import.pocket_csv"
wallabag.producer.redis.pocket_csv:
class: Wallabag\Redis\Producer
arguments:
- "@wallabag.queue.redis.pocket_csv"
wallabag.consumer.redis.pocket_csv:
class: Wallabag\Consumer\RedisEntryConsumer
arguments:
$import: '@Wallabag\Import\PocketCsvImport'

View File

@ -1,5 +1,5 @@
parameters:
wallabag.version: 2.6.10
wallabag.version: 2.7.0-dev
wallabag.paypal_url: "https://liberapay.com/wallabag/donate"
wallabag.languages:
en: 'English'
@ -18,6 +18,7 @@ parameters:
pt: 'Português'
ru: 'Русский'
ja: '日本語'
ko: '한국어'
zh: '简体中文'
uk: 'Українська'
hr: 'Hrvatski'
@ -175,5 +176,11 @@ parameters:
- 'Montserrat'
- 'OpenDyslexicRegular'
- 'Oswald'
wallabag.allow_mimetypes: ['application/octet-stream', 'application/json', 'text/plain', 'text/csv', 'text/html']
wallabag.allow_mimetypes:
- 'application/octet-stream'
- 'application/json'
- 'text/plain'
- 'text/csv'
- 'text/html'
- 'application/vnd.ms-excel'
wallabag.resource_dir: "%kernel.project_dir%/web/uploads/import"

11
assets/bootstrap.js vendored Normal file
View File

@ -0,0 +1,11 @@
import { startStimulusApp } from '@symfony/stimulus-bridge';
// Registers Stimulus controllers from controllers.json and in the controllers/ directory
export default startStimulusApp(require.context(
'@symfony/stimulus-bridge/lazy-controller-loader!./controllers',
true,
/\.[jt]sx?$/,
));
// register any custom, 3rd party controllers here
// app.register('some_controller_name', SomeImportedController);

4
assets/controllers.json Normal file
View File

@ -0,0 +1,4 @@
{
"controllers": [],
"entrypoints": []
}

View File

@ -0,0 +1,13 @@
import { Controller } from '@hotwired/stimulus';
export default class extends Controller {
static targets = ['input'];
toggle() {
this.element.classList.toggle('hidden');
if (!this.element.classList.contains('hidden')) {
this.inputTarget.focus();
}
}
}

View File

@ -0,0 +1,57 @@
import { Controller } from '@hotwired/stimulus';
import annotator from 'annotator';
export default class extends Controller {
static values = {
entryId: Number,
createUrl: String,
updateUrl: String,
destroyUrl: String,
searchUrl: String,
};
connect() {
this.app = new annotator.App();
this.app.include(annotator.ui.main, {
element: this.element,
});
const authorization = {
permits() { return true; },
};
this.app.registry.registerUtility(authorization, 'authorizationPolicy');
this.app.include(annotator.storage.http, {
prefix: '',
urls: {
create: this.createUrlValue,
update: this.updateUrlValue,
destroy: this.destroyUrlValue,
search: this.searchUrlValue,
},
entryId: this.entryIdValue,
onError(msg, xhr) {
if (!Object.prototype.hasOwnProperty.call(xhr, 'responseJSON')) {
annotator.notification.banner('An error occurred', 'error');
return;
}
Object.values(xhr.responseJSON.children).forEach((v) => {
if (v.errors) {
Object.values(v.errors).forEach((errorText) => {
annotator.notification.banner(errorText, 'error');
});
}
});
},
});
this.app.start().then(() => {
this.app.annotations.load({ entry: this.entryIdValue });
});
}
disconnect() {
this.app.destroy();
}
}

View File

@ -0,0 +1,15 @@
import { Controller } from '@hotwired/stimulus';
export default class extends Controller {
static targets = ['item', 'tagAction'];
toggleSelection(e) {
this.itemTargets.forEach((item) => {
item.checked = e.currentTarget.checked; // eslint-disable-line no-param-reassign
});
}
tagSelection() {
this.element.requestSubmit(this.tagActionTarget);
}
}

View File

@ -0,0 +1,16 @@
import { Controller } from '@hotwired/stimulus';
import ClipboardJS from 'clipboard';
export default class extends Controller {
connect() {
this.clipboard = new ClipboardJS(this.element);
this.clipboard.on('success', (e) => {
e.clearSelection();
});
}
disconnect() {
this.clipboard.destroy();
}
}

View File

@ -0,0 +1,16 @@
import { Controller } from '@hotwired/stimulus';
export default class extends Controller {
static targets = ['previewArticle', 'previewContent', 'font', 'fontSize', 'lineHeight', 'maxWidth'];
connect() {
this.updatePreview();
}
updatePreview() {
this.previewArticleTarget.style.maxWidth = `${this.maxWidthTarget.value}em`;
this.previewContentTarget.style.fontFamily = this.fontTarget.value;
this.previewContentTarget.style.fontSize = `${this.fontSizeTarget.value}em`;
this.previewContentTarget.style.lineHeight = `${this.lineHeightTarget.value}em`;
}
}

View File

@ -0,0 +1,39 @@
import { Controller } from '@hotwired/stimulus';
export default class extends Controller {
connect() {
this.#choose();
this.mql = window.matchMedia('(prefers-color-scheme: dark)');
this.mql.addEventListener('change', this.#choose.bind(this));
}
useLight() {
this.element.classList.remove('dark-theme');
document.cookie = 'theme=light;samesite=Lax;path=/;max-age=31536000';
}
useDark() {
this.element.classList.add('dark-theme');
document.cookie = 'theme=dark;samesite=Lax;path=/;max-age=31536000';
}
useAuto() {
document.cookie = 'theme=auto;samesite=Lax;path=/;max-age=0';
this.#choose();
}
#choose() {
const themeCookieExists = document.cookie.split(';').some((cookie) => cookie.trim().startsWith('theme='));
if (themeCookieExists) {
return;
}
if (this.mql.matches) {
this.element.classList.add('dark-theme');
} else {
this.element.classList.remove('dark-theme');
}
}
}

View File

@ -0,0 +1,58 @@
import { Controller } from '@hotwired/stimulus';
export default class extends Controller {
static targets = ['card', 'paginationWrapper'];
connect() {
this.pagination = this.paginationWrapperTarget.querySelector('.pagination');
this.cardIndex = 0;
this.lastCardIndex = this.cardTargets.length - 1;
/* If we come from next page */
if (window.location.hash === '#prev') {
this.cardIndex = this.lastCardIndex;
}
this.currentCard = this.cardTargets[this.cardIndex];
this.currentCard.classList.add('z-depth-4');
}
selectRightCard() {
if (this.cardIndex >= 0 && this.cardIndex < this.lastCardIndex) {
this.currentCard.classList.remove('z-depth-4');
this.cardIndex += 1;
this.currentCard = this.cardTargets[this.cardIndex];
this.currentCard.classList.add('z-depth-4');
return;
}
if (this.pagination && this.pagination.querySelector('a[rel="next"]')) {
window.location.href = this.pagination.querySelector('a[rel="next"]').href;
}
}
selectLeftCard() {
if (this.cardIndex > 0 && this.cardIndex <= this.lastCardIndex) {
this.currentCard.classList.remove('z-depth-4');
this.cardIndex -= 1;
this.currentCard = this.cardTargets[this.cardIndex];
this.currentCard.classList.add('z-depth-4');
return;
}
if (this.pagination && this.pagination.querySelector('a[rel="prev"]')) {
window.location.href = `${this.pagination.querySelector('a[rel="prev"]').href}#prev`;
}
}
selectCurrentCard() {
const url = this.currentCard.querySelector('a.card-title').href;
if (url) {
window.location.href = url;
}
}
}

View File

@ -0,0 +1,13 @@
import { Controller } from '@hotwired/stimulus';
export default class extends Controller {
static targets = ['emailTwoFactor', 'googleTwoFactor'];
uncheckGoogle() {
this.googleTwoFactorTarget.checked = false;
}
uncheckEmail() {
this.emailTwoFactorTarget.checked = false;
}
}

View File

@ -0,0 +1,11 @@
import { Controller } from '@hotwired/stimulus';
import 'highlight.js/styles/atom-one-light.css';
import hljs from 'highlight.js';
export default class extends Controller {
connect() {
this.element.querySelectorAll('pre code').forEach((element) => {
hljs.highlightElement(element);
});
}
}

View File

@ -0,0 +1,7 @@
import { Controller } from '@hotwired/stimulus';
export default class extends Controller {
toggleAddTagForm() {
this.dispatch('toggleAddTagForm');
}
}

View File

@ -0,0 +1,16 @@
import { Controller } from '@hotwired/stimulus';
import M from '@materializecss/materialize';
export default class extends Controller {
static values = {
accordion: { type: Boolean, default: true },
};
connect() {
this.instance = M.Collapsible.init(this.element, { accordion: this.accordionValue });
}
disconnect() {
this.instance.destroy();
}
}

View File

@ -0,0 +1,16 @@
import { Controller } from '@hotwired/stimulus';
import M from '@materializecss/materialize';
export default class extends Controller {
connect() {
this.instance = M.Dropdown.init(this.element, {
hover: false,
coverTrigger: false,
constrainWidth: false,
});
}
disconnect() {
this.instance.destroy();
}
}

View File

@ -0,0 +1,32 @@
import { Controller } from '@hotwired/stimulus';
import M from '@materializecss/materialize';
export default class extends Controller {
static values = {
edge: { type: String, default: 'left' },
};
connect() {
this.instance = M.FloatingActionButton.init(this.element);
}
autoDisplay() {
const scrolled = (window.innerHeight + window.scrollY) >= document.body.offsetHeight;
if (scrolled) {
this.toggleScroll = true;
this.instance.open();
} else if (this.toggleScroll === true) {
this.toggleScroll = false;
this.instance.close();
}
}
click() {
this.dispatch('click');
}
disconnect() {
this.instance.destroy();
}
}

View File

@ -0,0 +1,12 @@
import { Controller } from '@hotwired/stimulus';
import M from '@materializecss/materialize';
export default class extends Controller {
connect() {
this.instance = M.FormSelect.init(this.element.querySelector('select'));
}
disconnect() {
this.instance.destroy();
}
}

View File

@ -0,0 +1,24 @@
import { Controller } from '@hotwired/stimulus';
import M from '@materializecss/materialize';
const mobileMaxWidth = 993;
export default class extends Controller {
static values = {
edge: { type: String, default: 'left' },
};
connect() {
this.instance = M.Sidenav.init(this.element, { edge: this.edgeValue });
}
close() {
if (window.innerWidth < mobileMaxWidth) {
this.instance.close();
}
}
disconnect() {
this.instance.destroy();
}
}

View File

@ -0,0 +1,12 @@
import { Controller } from '@hotwired/stimulus';
import M from '@materializecss/materialize';
export default class extends Controller {
connect() {
this.instance = M.Tabs.init(this.element);
}
disconnect() {
this.instance.destroy();
}
}

View File

@ -0,0 +1,12 @@
import { Controller } from '@hotwired/stimulus';
import M from '@materializecss/materialize';
export default class extends Controller {
connect() {
this.instance = M.toast({ text: this.element.innerText });
}
disconnect() {
this.instance.dismissAll();
}
}

View File

@ -0,0 +1,12 @@
import { Controller } from '@hotwired/stimulus';
import M from '@materializecss/materialize';
export default class extends Controller {
connect() {
this.instance = M.Tooltip.init(this.element);
}
disconnect() {
this.instance.destroy();
}
}

View File

@ -0,0 +1,10 @@
import { Controller } from '@hotwired/stimulus';
import jrQrcode from 'jr-qrcode';
export default class extends Controller {
static values = { url: String };
connect() {
this.element.setAttribute('src', jrQrcode.getQrBase64(this.urlValue));
}
}

View File

@ -0,0 +1,10 @@
import { Controller } from '@hotwired/stimulus';
export default class extends Controller {
updateWidth() {
const referenceHeight = document.body.offsetHeight - window.innerHeight;
const scrollPercent = (window.scrollY / referenceHeight) * 100;
this.element.style.width = `${scrollPercent}%`;
}
}

View File

@ -0,0 +1,19 @@
import { Controller } from '@hotwired/stimulus';
export default class extends Controller {
static values = { entryId: Number };
connect() {
window.scrollTo({
top: window.innerHeight * localStorage[`wallabag.article.${this.entryIdValue}.percent`],
behavior: 'smooth',
});
}
saveScroll() {
const scrollPercent = window.scrollY / window.innerHeight;
const scrollPercentRounded = Math.round(scrollPercent * 100) / 100;
localStorage[`wallabag.article.${this.entryIdValue}.percent`] = scrollPercentRounded;
}
}

View File

@ -0,0 +1,141 @@
import { Controller } from '@hotwired/stimulus';
import Mousetrap from 'mousetrap';
export default class extends Controller {
static targets = ['openOriginal', 'markAsFavorite', 'markAsRead', 'deleteEntry', 'showAddUrl', 'showSearch', 'showActions'];
static outlets = ['entries-navigation'];
connect() {
/* Go to */
Mousetrap.bind('g u', () => {
window.location.href = Routing.generate('homepage');
});
Mousetrap.bind('g s', () => {
window.location.href = Routing.generate('starred');
});
Mousetrap.bind('g r', () => {
window.location.href = Routing.generate('archive');
});
Mousetrap.bind('g a', () => {
window.location.href = Routing.generate('all');
});
Mousetrap.bind('g t', () => {
window.location.href = Routing.generate('tag');
});
Mousetrap.bind('g c', () => {
window.location.href = Routing.generate('config');
});
Mousetrap.bind('g i', () => {
window.location.href = Routing.generate('import');
});
Mousetrap.bind('g d', () => {
window.location.href = Routing.generate('developer');
});
Mousetrap.bind('?', () => {
window.location.href = Routing.generate('howto');
});
Mousetrap.bind('g l', () => {
window.location.href = Routing.generate('fos_user_security_logout');
});
/* open original article */
Mousetrap.bind('o', () => {
if (!this.hasOpenOriginalTarget) {
return;
}
this.openOriginalTarget.click();
});
/* mark as favorite */
Mousetrap.bind('f', () => {
if (!this.hasMarkAsFavoriteTarget) {
return;
}
this.markAsFavoriteTarget.click();
});
/* mark as read */
Mousetrap.bind('a', () => {
if (!this.hasMarkAsReadTarget) {
return;
}
this.markAsReadTarget.click();
});
/* delete */
Mousetrap.bind('del', () => {
if (!this.hasDeleteEntryTarget) {
return;
}
this.deleteEntryTarget.click();
});
/* Actions */
Mousetrap.bind('g n', (e) => {
if (!this.hasShowAddUrlTarget) {
return;
}
e.preventDefault();
this.showAddUrlTarget.click();
});
Mousetrap.bind('s', (e) => {
if (!this.hasShowSearchTarget) {
return;
}
e.preventDefault();
this.showSearchTarget.click();
});
Mousetrap.bind('esc', (e) => {
if (!this.hasShowActionsTarget) {
return;
}
e.preventDefault();
this.showActionsTarget.click();
});
const originalStopCallback = Mousetrap.prototype.stopCallback;
Mousetrap.prototype.stopCallback = (e, element, combo) => {
// allow esc key to be used in input fields of topbar
if (combo === 'esc' && element.dataset.topbarTarget !== undefined) {
return false;
}
return originalStopCallback(e, element);
};
Mousetrap.bind('right', () => {
if (!this.hasEntriesNavigationOutlet) {
return;
}
this.entriesNavigationOutlet.selectRightCard();
});
Mousetrap.bind('left', () => {
if (!this.hasEntriesNavigationOutlet) {
return;
}
this.entriesNavigationOutlet.selectLeftCard();
});
Mousetrap.bind('enter', () => {
if (!this.hasEntriesNavigationOutlet) {
return;
}
this.entriesNavigationOutlet.selectCurrentCard();
});
}
}

View File

@ -0,0 +1,7 @@
import { Controller } from '@hotwired/stimulus';
export default class extends Controller {
toggle() {
this.element.classList.toggle('entry-nav-top--sticky');
}
}

View File

@ -0,0 +1,12 @@
import { Controller } from '@hotwired/stimulus';
export default class extends Controller {
static targets = ['link', 'edit', 'form', 'input'];
showForm() {
this.formTarget.classList.remove('hidden');
this.editTarget.classList.add('hidden');
this.linkTarget.classList.add('hidden');
this.inputTarget.focus();
}
}

View File

@ -0,0 +1,31 @@
import { Controller } from '@hotwired/stimulus';
export default class extends Controller {
static targets = ['addUrl', 'addUrlInput', 'search', 'searchInput', 'actions'];
showAddUrl() {
this.actionsTarget.style.display = 'none';
this.addUrlTarget.style.display = 'flex';
this.searchTarget.style.display = 'none';
this.addUrlInputTarget.focus();
}
submittingUrl(e) {
e.currentTarget.disabled = true;
this.addUrlInputTarget.readOnly = true;
this.addUrlInputTarget.blur();
}
showSearch() {
this.actionsTarget.style.display = 'none';
this.addUrlTarget.style.display = 'none';
this.searchTarget.style.display = 'flex';
this.searchInputTarget.focus();
}
showActions() {
this.actionsTarget.style.display = 'flex';
this.addUrlTarget.style.display = 'none';
this.searchTarget.style.display = 'none';
}
}

View File

@ -1,18 +1,11 @@
import $ from 'jquery';
import './bootstrap';
/* Materialize imports */
import '@materializecss/materialize/dist/css/materialize.css';
import '@materializecss/materialize/dist/js/materialize';
/* Annotations */
import annotator from 'annotator';
import ClipboardJS from 'clipboard';
import 'mathjax/es5/tex-svg';
/* jrQrcode */
import jrQrcode from 'jr-qrcode';
/* Fonts */
import 'material-design-icons-iconfont/dist/material-design-icons.css';
import 'lato-font/css/lato-font.css';
@ -22,372 +15,5 @@ import '@fontsource/eb-garamond';
import '@fontsource/montserrat';
import '@fontsource/oswald';
/* Highlight */
import './js/highlight';
/* Tools */
import {
savePercent, retrievePercent, initExport, initFilters, initRandom, initPreviewText,
} from './js/tools';
/* Import shortcuts */
import './js/shortcuts/main';
import './js/shortcuts/entry';
/* Theme style */
import './scss/index.scss';
const mobileMaxWidth = 993;
/* ==========================================================================
Annotations & Remember position
========================================================================== */
$(document).ready(() => {
if ($('#article').length) {
const app = new annotator.App();
app.include(annotator.ui.main, {
element: document.querySelector('article'),
});
const authorization = {
permits() { return true; },
};
app.registry.registerUtility(authorization, 'authorizationPolicy');
const x = JSON.parse($('#annotationroutes').html());
app.include(annotator.storage.http, $.extend({}, x, {
onError(msg, xhr) {
if (!Object.prototype.hasOwnProperty.call(xhr, 'responseJSON')) {
annotator.notification.banner('An error occurred', 'error');
return;
}
$.each(xhr.responseJSON.children, (k, v) => {
if (v.errors) {
$.each(v.errors, (n, errorText) => {
annotator.notification.banner(errorText, 'error');
});
}
});
},
}));
app.start().then(() => {
app.annotations.load({ entry: x.entryId });
});
$(window).scroll(() => {
const scrollTop = $(window).scrollTop();
const docHeight = $(document).height();
const scrollPercent = (scrollTop) / (docHeight);
const scrollPercentRounded = Math.round(scrollPercent * 100) / 100;
savePercent(x.entryId, scrollPercentRounded);
});
retrievePercent(x.entryId);
$(window).resize(() => {
retrievePercent(x.entryId, true);
});
}
document.querySelectorAll('[data-handler=tag-rename]').forEach((item) => {
const current = item;
current.wallabag_edit_mode = false;
current.onclick = (event) => {
const target = event.currentTarget;
if (target.wallabag_edit_mode === false) {
$(target.parentNode.querySelector('[data-handle=tag-link]')).addClass('hidden');
$(target.parentNode.querySelector('[data-handle=tag-rename-form]')).removeClass('hidden');
target.parentNode.querySelector('[data-handle=tag-rename-form] input').focus();
target.querySelector('.material-icons').innerHTML = 'done';
target.wallabag_edit_mode = true;
} else {
target.parentNode.querySelector('[data-handle=tag-rename-form]').submit();
}
};
});
// mimic radio button because emailTwoFactor is a boolean
$('#update_user_googleTwoFactor').on('change', () => {
$('#update_user_emailTwoFactor').prop('checked', false);
});
$('#update_user_emailTwoFactor').on('change', () => {
$('#update_user_googleTwoFactor').prop('checked', false);
});
// same mimic for super admin
$('#user_googleTwoFactor').on('change', () => {
$('#user_emailTwoFactor').prop('checked', false);
});
$('#user_emailTwoFactor').on('change', () => {
$('#user_googleTwoFactor').prop('checked', false);
});
// handle copy to clipboard for developer stuff
const clipboard = new ClipboardJS('.btn');
clipboard.on('success', (e) => {
e.clearSelection();
});
});
(function darkTheme() {
const rootEl = document.querySelector('html');
const themeDom = {
darkClass: 'dark-theme',
toggleClass(el) {
return el.classList.toggle(this.darkClass);
},
addClass(el) {
return el.classList.add(this.darkClass);
},
removeClass(el) {
return el.classList.remove(this.darkClass);
},
};
const themeCookie = {
values: {
light: 'light',
dark: 'dark',
},
name: 'theme',
getValue(isDarkTheme) {
return isDarkTheme ? this.values.dark : this.values.light;
},
setCookie(isDarkTheme) {
const value = this.getValue(isDarkTheme);
document.cookie = `${this.name}=${value};samesite=Lax;path=/;max-age=31536000`;
},
removeCookie() {
document.cookie = `${this.name}=auto;samesite=Lax;path=/;max-age=0`;
},
exists() {
return document.cookie.split(';').some((cookie) => cookie.trim().startsWith(`${this.name}=`));
},
};
const preferedColorScheme = {
choose() {
const themeCookieExists = themeCookie.exists();
if (this.isAvailable() && !themeCookieExists) {
const isPreferedColorSchemeDark = window.matchMedia('(prefers-color-scheme: dark)').matches === true;
if (!themeCookieExists) {
themeDom[isPreferedColorSchemeDark ? 'addClass' : 'removeClass'](rootEl);
}
}
},
isAvailable() {
return typeof window.matchMedia === 'function';
},
init() {
if (!this.isAvailable()) {
return false;
}
this.choose();
window.matchMedia('(prefers-color-scheme: dark)').addListener(() => {
this.choose();
});
return true;
},
};
const addDarkThemeListeners = () => {
$(document).ready(() => {
const lightThemeButtons = document.querySelectorAll('.js-theme-toggle[data-theme="light"]');
[...lightThemeButtons].map((lightThemeButton) => {
lightThemeButton.addEventListener('click', (e) => {
e.preventDefault();
themeDom.removeClass(rootEl);
themeCookie.setCookie(false);
});
return true;
});
const darkThemeButtons = document.querySelectorAll('.js-theme-toggle[data-theme="dark"]');
[...darkThemeButtons].map((darkThemeButton) => {
darkThemeButton.addEventListener('click', (e) => {
e.preventDefault();
themeDom.addClass(rootEl);
themeCookie.setCookie(true);
});
return true;
});
const autoThemeButtons = document.querySelectorAll('.js-theme-toggle[data-theme="auto"]');
[...autoThemeButtons].map((autoThemeButton) => {
autoThemeButton.addEventListener('click', (e) => {
e.preventDefault();
themeCookie.removeCookie();
preferedColorScheme.choose();
});
return true;
});
});
};
preferedColorScheme.init();
addDarkThemeListeners();
}());
const stickyNav = () => {
const nav = $('.js-entry-nav-top');
$('[data-toggle="actions"]').click(() => {
nav.toggleClass('entry-nav-top--sticky');
});
};
const articleScroll = () => {
const articleEl = $('#article');
if (articleEl.length > 0) {
$(window).scroll(() => {
const s = $(window).scrollTop();
const d = $(document).height();
const c = $(window).height();
const articleElBottom = articleEl.offset().top + articleEl.height();
const scrollPercent = (s / (d - c)) * 100;
$('.progress .determinate').css('width', `${scrollPercent}%`);
const fixedActionBtn = $('.js-fixed-action-btn');
const toggleScrollDataName = 'toggle-auto';
if ((s + c) > articleElBottom) {
fixedActionBtn.data(toggleScrollDataName, true);
fixedActionBtn.openFAB();
} else if (fixedActionBtn.data(toggleScrollDataName) === true) {
fixedActionBtn.data(toggleScrollDataName, false);
fixedActionBtn.closeFAB();
}
});
}
};
$(document).ready(() => {
// sidenav
$('.sidenav').sidenav();
$('select').formSelect();
$('.collapsible[data-collapsible="accordion"]').collapsible();
$('.collapsible[data-collapsible="expandable"]').collapsible({
accordion: false,
});
$('.datepicker').datepicker({
selectMonths: true,
selectYears: 15,
formatSubmit: 'yyyy-mm-dd',
hiddenName: false,
format: 'yyyy-mm-dd',
container: 'body',
});
$('.dropdown-trigger').dropdown({ hover: false });
$('.dropdown-trigger[data-covertrigger="false"][data-constrainwidth="false"]').dropdown({
hover: false,
coverTrigger: false,
constrainWidth: false,
});
$('.tabs').tabs();
$('.tooltipped').tooltip();
initFilters();
initExport();
initRandom();
stickyNav();
articleScroll();
initPreviewText();
const toggleNav = (toShow, toFocus) => {
$('.nav-panel-actions').hide(100);
$(toShow).show(100);
$(toFocus).focus();
};
$('#nav-btn-add-tag').on('click', () => {
$('.nav-panel-add-tag').toggle(100);
$('.nav-panel-menu').addClass('hidden');
if (window.innerWidth < mobileMaxWidth) {
$('.sidenav').sidenav('close');
}
$('#tag_label').focus();
return false;
});
$('#nav-btn-add').on('click', () => {
toggleNav('.nav-panel-add', '#entry_url');
return false;
});
$('#config_fontsize').on('input', () => {
const value = $('#config_fontsize').val();
const css = `${value}em`;
$('#preview-content').css('font-size', css);
});
$('#config_font').on('change', () => {
const value = $('#config_font').val();
$('#preview-content').css('font-family', value);
});
$('#config_lineHeight').on('input', () => {
const value = $('#config_lineHeight').val();
const css = `${value}em`;
$('#preview-content').css('line-height', css);
});
$('#config_maxWidth').on('input', () => {
const value = $('#config_maxWidth').val();
const css = `${value}em`;
$('#preview-article').css('max-width', css);
});
const materialAddForm = $('.nav-panel-add');
materialAddForm.on('submit', () => {
materialAddForm.addClass('disabled');
$('input#entry_url', materialAddForm).prop('readonly', true).trigger('blur');
});
$('#nav-btn-search').on('click', () => {
toggleNav('.nav-panel-search', '#search_entry_term');
return false;
});
$('.close').on('click', (e) => {
$(e.target).parent('.nav-panel-item').hide(100);
$('.nav-panel-actions').show(100);
return false;
});
const mainCheckboxes = document.querySelectorAll('[data-js="checkboxes-toggle"]');
if (mainCheckboxes.length) {
[...mainCheckboxes].forEach((el) => {
el.addEventListener('click', () => {
const checkboxes = document.querySelectorAll(el.dataset.toggle);
[...checkboxes].forEach((checkbox) => {
const checkboxClone = checkbox;
checkboxClone.checked = el.checked;
});
});
});
}
$('form[name="form_mass_action"] input[name="tags"]').on('keydown', (e) => {
if (e.key === 'Enter') {
e.preventDefault();
$('form[name="form_mass_action"] button[name="tag"]').trigger('click');
}
});
document.querySelectorAll('img.jr-qrcode').forEach((qrcode) => {
const src = jrQrcode.getQrBase64(qrcode.getAttribute('data-url'));
qrcode.setAttribute('src', src);
});
});

View File

@ -1,8 +0,0 @@
import 'highlight.js/styles/atom-one-light.css';
import hljs from 'highlight.js';
window.addEventListener('load', () => {
document.querySelectorAll('pre').forEach((element) => {
hljs.highlightElement(element);
});
});

View File

@ -1,26 +0,0 @@
import Mousetrap from 'mousetrap';
import $ from 'jquery';
$(document).ready(() => {
if ($('#article').length > 0) {
/* open original article */
Mousetrap.bind('o', () => {
$('ul.sidenav a.original i')[0].click();
});
/* mark as favorite */
Mousetrap.bind('f', () => {
$('ul.sidenav a.favorite i')[0].click();
});
/* mark as read */
Mousetrap.bind('a', () => {
$('ul.sidenav a.markasread i')[0].click();
});
/* delete */
Mousetrap.bind('del', () => {
$('ul.sidenav a.delete i')[0].click();
});
}
});

View File

@ -1,104 +0,0 @@
import Mousetrap from 'mousetrap';
import $ from 'jquery';
/* Go to */
Mousetrap.bind('g u', () => { window.location.href = Routing.generate('homepage'); });
Mousetrap.bind('g s', () => { window.location.href = Routing.generate('starred'); });
Mousetrap.bind('g r', () => { window.location.href = Routing.generate('archive'); });
Mousetrap.bind('g a', () => { window.location.href = Routing.generate('all'); });
Mousetrap.bind('g t', () => { window.location.href = Routing.generate('tag'); });
Mousetrap.bind('g c', () => { window.location.href = Routing.generate('config'); });
Mousetrap.bind('g i', () => { window.location.href = Routing.generate('import'); });
Mousetrap.bind('g d', () => { window.location.href = Routing.generate('developer'); });
Mousetrap.bind('?', () => { window.location.href = Routing.generate('howto'); });
Mousetrap.bind('g l', () => { window.location.href = Routing.generate('fos_user_security_logout'); });
function toggleFocus(cardToToogleFocus) {
if (cardToToogleFocus) {
$(cardToToogleFocus).toggleClass('z-depth-4');
}
}
$(document).ready(() => {
const cards = $('#content').find('.card');
const cardNumber = cards.length;
let cardIndex = 0;
/* If we come from next page */
if (window.location.hash === '#prev') {
cardIndex = cardNumber - 1;
}
let card = cards[cardIndex];
const pagination = $('.pagination');
/* Show nothing on quickstart */
if ($('#content > div.quickstart').length > 0) {
return;
}
/* Show nothing on login/register page */
if ($('#username').length > 0 || $('#fos_user_registration_form_username').length > 0) {
return;
}
/* Show nothing on login/register page */
if ($('#username').length > 0 || $('#fos_user_registration_form_username').length > 0) {
return;
}
/* Focus current card */
toggleFocus(card);
/* Actions */
Mousetrap.bind('g n', () => {
$('#nav-btn-add').trigger('click');
return false;
});
Mousetrap.bind('s', () => {
$('#nav-btn-search').trigger('click');
return false;
});
Mousetrap.bind('esc', () => {
$('.close').trigger('click');
});
/* Select right card. If there's a next page, go to next page */
Mousetrap.bind('right', () => {
if (cardIndex >= 0 && cardIndex < cardNumber - 1) {
toggleFocus(card);
cardIndex += 1;
card = cards[cardIndex];
toggleFocus(card);
return;
}
if (pagination.length > 0 && pagination.find('li.next:not(.disabled)').length > 0 && cardIndex === cardNumber - 1) {
window.location.href = window.location.origin + $(pagination).find('li.next a').attr('href');
}
});
/* Select previous card. If there's a previous page, go to next page */
Mousetrap.bind('left', () => {
if (cardIndex > 0 && cardIndex < cardNumber) {
toggleFocus(card);
cardIndex -= 1;
card = cards[cardIndex];
toggleFocus(card);
return;
}
if (pagination.length > 0 && $(pagination).find('li.prev:not(.disabled)').length > 0 && cardIndex === 0) {
window.location.href = `${window.location.origin + $(pagination).find('li.prev a').attr('href')}#prev`;
}
});
Mousetrap.bind('enter', () => {
if (typeof card !== 'object') {
return;
}
const url = $(card).find('.card-title a').attr('href');
if (typeof url === 'string' && url.length > 0) {
window.location.href = window.location.origin + url;
}
});
});

View File

@ -1,83 +0,0 @@
import $ from 'jquery';
function supportsLocalStorage() {
try {
return 'localStorage' in window && window.localStorage !== null;
} catch (e) {
return false;
}
}
function savePercent(id, percent) {
if (!supportsLocalStorage()) { return false; }
localStorage[`wallabag.article.${id}.percent`] = percent;
return true;
}
function retrievePercent(id, resized) {
if (!supportsLocalStorage()) { return false; }
const bheight = $(document).height();
const percent = localStorage[`wallabag.article.${id}.percent`];
const scroll = bheight * percent;
if (!resized) {
$('html,body').animate({ scrollTop: scroll }, 'fast');
}
return true;
}
function initFilters() {
// no display if filters not available
if ($('div').is('#filters')) {
$('#button_filters').show();
$('#filters.sidenav').sidenav({ edge: 'right' });
$('#clear_form_filters').on('click', () => {
$('#filters input').val('');
$('#filters :checked').removeAttr('checked');
return false;
});
}
}
function initExport() {
// no display if export not available
if ($('div').is('#export')) {
$('#button_export').show();
$('#export.sidenav').sidenav({ edge: 'right' });
}
}
function initRandom() {
// no display if export (ie: entries) not available
if ($('div').is('#export')) {
$('#button_random').show();
}
}
function initPreviewText() {
// no display if preview_text not available
if ($('div').is('#preview-article')) {
const defaultFontFamily = $('#config_font').val();
const defaultFontSize = $('#config_fontsize').val();
const defaultLineHeight = $('#config_lineHeight').val();
const defaultMaxWidth = $('#config_maxWidth').val();
const previewContent = $('#preview-content');
previewContent.css('font-family', defaultFontFamily);
previewContent.css('font-size', `${defaultFontSize}em`);
previewContent.css('line-height', `${defaultLineHeight}em`);
$('#preview-article').css('max-width', `${defaultMaxWidth}em`);
}
}
export {
savePercent,
retrievePercent,
initExport,
initFilters,
initRandom,
initPreviewText,
};

View File

@ -154,6 +154,15 @@ a.original:not(.waves-effect) {
}
}
.card .card-content .card-title,
.card-stacked .card-content .card-title {
display: -webkit-box;
overflow: hidden;
text-overflow: ellipsis;
-webkit-box-orient: vertical;
-webkit-line-clamp: 2;
}
.card-entry-labels li,
.card-tag-labels li {
margin: 10px 10px 10px auto;
@ -179,6 +188,7 @@ a.original:not(.waves-effect) {
.card-entry-tags a,
.card-entry-labels a,
.card-tag-labels a,
.card-tag-labels button,
.card-entry-labels-hidden a,
#list .chip a {
text-decoration: none;
@ -186,6 +196,14 @@ a.original:not(.waves-effect) {
color: #fff;
}
.card-tag-labels button {
background: transparent;
border: none;
font-weight: normal;
color: #fff;
cursor: pointer;
}
.card-tag-link {
width: calc(100% - 24px);
line-height: 1.3;
@ -196,6 +214,7 @@ a.original:not(.waves-effect) {
.card-tag-form {
display: flex;
align-items: center;
min-width: 100px;
flex-grow: 1;
}

View File

@ -63,7 +63,9 @@
.input-field input:focus,
.results-item,
.sidenav li > a,
.sidenav li > a > i.material-icons {
.sidenav li > a > i.material-icons,
.sidenav li button,
.sidenav li button > i.material-icons {
color: #dfdfdf;
}
@ -88,6 +90,7 @@
.mass-action-tags .mass-action-tags-input.mass-action-tags-input,
.sidenav li:not(.logo) > a:hover,
.sidenav li:not(.logo) button:hover,
.sidenav .collapsible-header:hover,
.sidenav.sidenav-fixed .collapsible-header:hover {
background-color: #1d1d1d;
@ -142,6 +145,12 @@
background-color: transparent;
}
.z-depth-4 {
box-shadow: 0 16px 24px 2px rgba(255 255 255 / 14%),
0 6px 30px 5px rgba(255 255 255 / 12%),
0 8px 10px -7px rgba(255 255 255 / 20%);
}
@media only screen and (min-width: 992px) {
#article {
background-color: #101010;

View File

@ -6,11 +6,32 @@ nav {
line-height: initial;
}
// adapted from anchor styles from node_modules/@materializecss/materialize/sass/components/_navbar.scss
nav ul button {
transition: background-color .3s;
font-size: 1rem;
color: #fff;
display: block;
padding: 0 15px;
cursor: pointer;
background: none;
border: 0;
&:focus {
background: none;
}
&:hover {
background-color: rgba(0 0 0 / 10%);
}
}
nav {
input {
color: #aaa;
}
ul button:hover,
ul a:hover {
background-color: initial;
}
@ -34,6 +55,7 @@ nav {
justify-content: space-between;
align-items: center;
button,
a {
padding: 10px 15px;
}
@ -143,14 +165,6 @@ nav {
margin: 0 1%;
}
.button-filters {
display: none;
}
.button-export {
display: none;
}
.entry-nav-top--sticky {
position: sticky;
top: 0;

View File

@ -12,6 +12,7 @@
background: initial;
}
& button > i.material-icons.theme-toggle-icon,
& > a > i.material-icons.theme-toggle-icon {
float: none;
margin-left: 0;
@ -22,6 +23,7 @@
margin: 0;
}
&.sidenav-fixed button,
&.sidenav-fixed a {
font-size: 13px;
line-height: 44px;
@ -41,7 +43,35 @@
}
}
.bold > a {
// adapted from anchor styles from node_modules/@materializecss/materialize/sass/components/_sidenav.scss
.sidenav li button {
color: rgba(0 0 0 / 87%);
display: block;
font-size: 14px;
font-weight: 500;
height: 48px;
line-height: 48px;
padding: 0 (16px * 2);
width: 100%;
text-align: left;
&:hover {
background-color: rgba(0 0 0 / 5%);
}
& > i,
& > i.material-icons {
float: left;
height: 48px;
line-height: 48px;
margin: 0 (16px * 2) 0 0;
width: 24px;
color: rgba(0 0 0 / 54%);
}
}
.bold > a,
.bold > button {
font-weight: bold;
}

View File

@ -1,3 +1,5 @@
@use "variables";
/* ==========================================================================
* Various
* ========================================================================== */
@ -38,3 +40,18 @@ nav .input-field input {
.tab {
flex: 1;
}
.btn-link {
background: none;
border: 0;
padding: 0;
color: variables.$blue-accent-color;
&:focus {
background: none;
}
}
.inline-block {
display: inline-block;
}

View File

@ -23,6 +23,7 @@ $config
'friendsoftwig/twigcs',
'incenteev/composer-parameter-handler',
'j0k3r/graby-site-config',
'j0k3r/php-readability',
'laminas/laminas-code',
'lcobucci/jwt',
'mgargano/simplehtmldom',
@ -37,13 +38,11 @@ $config
'phpstan/phpstan-symfony',
'psr/http-client',
'psr/http-factory',
'rulerz-php/doctrine-orm',
'scheb/2fa-qr-code',
'rector/rector',
'scheb/2fa-trusted-device',
'shipmonk/composer-dependency-analyser',
'symfony/asset',
'symfony/css-selector',
'symfony/doctrine-bridge',
'symfony/google-mailer',
'symfony/intl',
'symfony/phpunit-bridge',
@ -64,10 +63,9 @@ $config
'symfony/web-profiler-bundle',
'symfony/web-server-bundle',
], [ErrorType::DEV_DEPENDENCY_IN_PROD])
->ignoreErrorsOnPackages([
'gedmo/doctrine-extensions',
], [ErrorType::SHADOW_DEPENDENCY])
;
if (\PHP_VERSION_ID >= 80000) {
$config->ignoreErrorsOnPackage('symfony/polyfill-php80', [ErrorType::UNUSED_DEPENDENCY]);
}
return $config;

View File

@ -38,7 +38,7 @@
"issues": "https://github.com/wallabag/wallabag/issues"
},
"require": {
"php": ">=7.4",
"php": ">=8.2",
"ext-ctype": "*",
"ext-curl": "*",
"ext-dom": "*",
@ -57,135 +57,147 @@
"ext-tidy": "*",
"ext-tokenizer": "*",
"ext-xml": "*",
"babdev/pagerfanta-bundle": "^3.8",
"babdev/pagerfanta-bundle": "^4.5",
"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/collections": "^2.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",
"egulias/email-validator": "^3.2.6",
"enshrined/svg-sanitize": "^0.21",
"friendsofsymfony/jsrouting-bundle": "^2.8",
"doctrine/migrations": "^3.8.2",
"doctrine/orm": "^2.20.2",
"doctrine/persistence": "^3.4",
"egulias/email-validator": "^4.0.4",
"enshrined/svg-sanitize": "^0.22",
"friendsofsymfony/jsrouting-bundle": "^3.5",
"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",
"j0k3r/php-readability": "^1.2.13",
"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",
"pagerfanta/core": "^4.7",
"pagerfanta/doctrine-orm-adapter": "^4.7",
"pagerfanta/twig": "^4.7",
"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": "^3.2.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",
"scheb/2fa-backup-code": "^5.13.2",
"scheb/2fa-bundle": "^5.13.2",
"scheb/2fa-email": "^5.13.2",
"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": "^2.0.1",
"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": "^2.0.2",
"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",
"rector/rector": "^1.2",
"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": {

3756
composer.lock generated

File diff suppressed because it is too large Load Diff

View File

@ -1,4 +1,13 @@
FROM php:8.1-fpm AS rootless
FROM golang as envsubst
ARG ENVSUBST_VERSION=v1.3.0
# envsubst from gettext can not replace env vars with default values
# this package is not available for ARM32 and we have to build it from source code
# flag -ldflags "-s -w" produces a smaller executable
RUN go install -ldflags "-s -w" -v github.com/a8m/envsubst/cmd/envsubst@${ENVSUBST_VERSION}
FROM php:8.2-fpm-bookworm AS rootless
ARG DEBIAN_FRONTEND=noninteractive
ARG NODE_VERSION=20
@ -50,14 +59,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) \
@ -76,10 +84,8 @@ RUN mkdir -p /tmp/blackfire \
RUN npm install -g yarn
RUN curl -L -o /usr/local/bin/envsubst https://github.com/a8m/envsubst/releases/download/v1.1.0/envsubst-`uname -s`-`uname -m`; \
chmod +x /usr/local/bin/envsubst
COPY --from=composer:latest /usr/bin/composer /usr/local/bin/composer
COPY --from=envsubst /go/bin/envsubst /usr/local/bin/envsubst
COPY entrypoint.sh /entrypoint.sh
COPY config/ /opt/wallabag/config/

View File

@ -7,7 +7,7 @@ parameters:
database_password: ${DATABASE_PASSWORD:-~}
database_path: ${DATABASE_PATH:-"%kernel.project_dir%/data/db/wallabag.sqlite"}
database_table_prefix: ${DATABASE_TABLE_PREFIX:-wallabag_}
database_socket: null
database_socket: ${DATABASE_SOCKET:-~}
database_charset: ${DATABASE_CHARSET:-utf8}
domain_name: ${DOMAIN_NAME:-https://www.example.com}
@ -15,6 +15,8 @@ parameters:
mailer_dsn: ${MAILER_DSN:-"smtp://127.0.0.1"}
wallabag_user_agent: "${WALLABAG_USER_AGENT:-Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.2 (KHTML, like Gecko) Chrome/15.0.874.92 Safari/535.2}"
locale: ${LOCALE:-en}
# A secret key that's used to generate certain security-related tokens
@ -27,22 +29,20 @@ parameters:
fosuser_registration: ${FOSUSER_REGISTRATION:-false}
fosuser_confirmation: ${FOSUSER_CONFIRMATION:-true}
fos_oauth_server_access_token_lifetime: 3600
fos_oauth_server_refresh_token_lifetime: 1209600
fos_oauth_server_access_token_lifetime: ${FOS_OAUTH_SERVER_ACCESS_TOKEN_LIFETIME:-3600}
fos_oauth_server_refresh_token_lifetime: ${FOS_OAUTH_SERVER_REFRESH_TOKEN_LIFETIME:-1209600}
from_email: ${FROM_EMAIL:-wallabag@example.com}
rss_limit: 50
# RabbitMQ processing
rabbitmq_host: ${RABBITMQ_HOST:-rabbitmq}
rabbitmq_port: ${RABBITMQ_PORT:-5672}
rabbitmq_user: ${RABBITMQ_USER:-guest}
rabbitmq_password: ${RABBITMQ_PASSWORD:-guest}
rabbitmq_prefetch_count: 10
rabbitmq_prefetch_count: ${RABBITMQ_PREFETCH_COUNT:-10}
# Redis processing
redis_scheme: ${REDIS_SCHEME:-tcp}
redis_scheme: ${REDIS_SCHEME:-redis}
redis_host: ${REDIS_HOST:-redis}
redis_port: ${REDIS_PORT:-6379}
redis_path: ${REDIS_PATH:-~}

View File

@ -5,8 +5,8 @@ DATABASE_NAME=symfony
DATABASE_USER=root
DATABASE_PASSWORD=~
DATABASE_PATH='"%kernel.project_dir%/data/db/wallabag.sqlite"'
DOMAIN_NAME=http://localhost:8000
DOMAIN_NAME=http://127.0.0.1:8000
SECRET=ch4n63m31fy0uc4n
PHP_SESSION_SAVE_PATH=tcp://redis:6379?database=2
PHP_SESSION_SAVE_PATH=redis://redis:6379?database=2
PHP_SESSION_HANDLER=redis
TRUSTED_PROXIES=0.0.0.0/0

View File

@ -43,7 +43,7 @@ class AnnotationFixtures extends Fixture implements DependentFixtureInterface
$manager->flush();
}
public function getDependencies()
public function getDependencies(): array
{
return [
EntryFixtures::class,

View File

@ -55,7 +55,7 @@ class ConfigFixtures extends Fixture implements DependentFixtureInterface
$manager->flush();
}
public function getDependencies()
public function getDependencies(): array
{
return [
UserFixtures::class,

View File

@ -155,7 +155,7 @@ class EntryFixtures extends Fixture implements DependentFixtureInterface
$manager->flush();
}
public function getDependencies()
public function getDependencies(): array
{
return [
UserFixtures::class,

View File

@ -8,11 +8,9 @@ use Wallabag\Entity\IgnoreOriginInstanceRule;
class IgnoreOriginInstanceRuleFixtures extends Fixture
{
private array $defaultIgnoreOriginInstanceRules;
public function __construct(array $defaultIgnoreOriginInstanceRules)
{
$this->defaultIgnoreOriginInstanceRules = $defaultIgnoreOriginInstanceRules;
public function __construct(
private readonly array $defaultIgnoreOriginInstanceRules,
) {
}
public function load(ObjectManager $manager): void

View File

@ -21,7 +21,7 @@ class IgnoreOriginUserRuleFixtures extends Fixture implements DependentFixtureIn
$manager->flush();
}
public function getDependencies()
public function getDependencies(): array
{
return [
UserFixtures::class,

View File

@ -8,11 +8,9 @@ use Wallabag\Entity\InternalSetting;
class InternalSettingFixtures extends Fixture
{
private array $defaultInternalSettings;
public function __construct(array $defaultInternalSettings)
{
$this->defaultInternalSettings = $defaultInternalSettings;
public function __construct(
private readonly array $defaultInternalSettings,
) {
}
public function load(ObjectManager $manager): void

View File

@ -11,11 +11,9 @@ use Wallabag\Helper\CryptoProxy;
class SiteCredentialFixtures extends Fixture implements DependentFixtureInterface
{
private CryptoProxy $cryptoProxy;
public function __construct(CryptoProxy $cryptoProxy)
{
$this->cryptoProxy = $cryptoProxy;
public function __construct(
private readonly CryptoProxy $cryptoProxy,
) {
}
public function load(ObjectManager $manager): void
@ -37,7 +35,7 @@ class SiteCredentialFixtures extends Fixture implements DependentFixtureInterfac
$manager->flush();
}
public function getDependencies()
public function getDependencies(): array
{
return [
UserFixtures::class,

View File

@ -58,7 +58,7 @@ class TaggingRuleFixtures extends Fixture implements DependentFixtureInterface
$manager->flush();
}
public function getDependencies()
public function getDependencies(): array
{
return [
ConfigFixtures::class,

View File

@ -27,7 +27,7 @@ class Version20161001072726 extends WallabagMigration
// remove all FK from entry_tag
switch (true) {
case $platform instanceof MySQLPlatform:
$query = $this->connection->query("
$query = $this->connection->executeQuery("
SELECT CONSTRAINT_NAME
FROM information_schema.key_column_usage
WHERE TABLE_NAME = '" . $this->getTable('entry_tag', WallabagMigration::UN_ESCAPED_TABLE) . "' AND CONSTRAINT_NAME LIKE 'FK_%'
@ -40,7 +40,7 @@ class Version20161001072726 extends WallabagMigration
break;
case $platform instanceof PostgreSQLPlatform:
// http://dba.stackexchange.com/questions/36979/retrieving-all-pk-and-fk
$query = $this->connection->query("
$query = $this->connection->executeQuery("
SELECT conrelid::regclass AS table_from
,conname
,pg_get_constraintdef(c.oid)
@ -64,7 +64,7 @@ class Version20161001072726 extends WallabagMigration
switch (true) {
case $platform instanceof MySQLPlatform:
$query = $this->connection->query("
$query = $this->connection->executeQuery("
SELECT CONSTRAINT_NAME
FROM information_schema.key_column_usage
WHERE TABLE_NAME = '" . $this->getTable('annotation', WallabagMigration::UN_ESCAPED_TABLE) . "'
@ -79,7 +79,7 @@ class Version20161001072726 extends WallabagMigration
break;
case $platform instanceof PostgreSQLPlatform:
// http://dba.stackexchange.com/questions/36979/retrieving-all-pk-and-fk
$query = $this->connection->query("
$query = $this->connection->executeQuery("
SELECT conrelid::regclass AS table_from
,conname
,pg_get_constraintdef(c.oid)

View File

@ -20,7 +20,7 @@ class Version20170719231144 extends WallabagMigration
}
// Find tags which need to be merged
$dupTags = $this->connection->query('
$dupTags = $this->connection->executeQuery('
SELECT LOWER(label) AS lower_label
FROM ' . $this->getTable('tag') . '
GROUP BY LOWER(label)
@ -31,7 +31,7 @@ class Version20170719231144 extends WallabagMigration
$label = $duplicates['lower_label'];
// Retrieve all duplicate tags for a given tag
$tags = $this->connection->query('
$tags = $this->connection->executeQuery('
SELECT id
FROM ' . $this->getTable('tag') . '
WHERE LOWER(label) = :label

View File

@ -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'] . "');");
}
}
}

View File

@ -0,0 +1,47 @@
<?php
declare(strict_types=1);
namespace Application\Migrations;
use Doctrine\DBAL\Schema\Schema;
use Wallabag\Doctrine\WallabagMigration;
/**
* Add boolean for two-step setup for google authenticator.
*/
final class Version20250413133131 extends WallabagMigration
{
public function up(Schema $schema): void
{
$userTable = $schema->getTable($this->getTable('user'));
$this->skipIf($userTable->hasColumn('google_authenticator'), 'It seems that you already played this migration.');
$userTable->addColumn('google_authenticator', 'boolean', [
'default' => false,
'notnull' => true,
]);
}
/**
* Query to update data in user table, as it's not possible to perform this in the `up` method.
*/
public function postUp(Schema $schema): void
{
$this->skipIf(!$schema->getTable($this->getTable('user'))->hasColumn('google_authenticator'), 'Unable to update google_authenticator column');
$this->connection->executeQuery(
'UPDATE ' . $this->getTable('user') . ' SET google_authenticator = :googleAuthenticator WHERE googleAuthenticatorSecret IS NOT NULL AND googleAuthenticatorSecret <> :emptyString',
[
'googleAuthenticator' => true,
'emptyString' => '',
]
);
}
public function down(Schema $schema): void
{
$userTable = $schema->getTable($this->getTable('user'));
$userTable->dropColumn('google_authenticator');
}
}

View File

@ -41,53 +41,53 @@
"url": "https://github.com/wallabag/wallabag/issues"
},
"devDependencies": {
"@babel/core": "^7.26.9",
"@babel/eslint-parser": "^7.26.8",
"@babel/preset-env": "^7.26.9",
"@symfony/webpack-encore": "^5.0.1",
"autoprefixer": "^10.4.20",
"babel-loader": "^9.2.1",
"core-js": "^3.23.0",
"@babel/core": "^7.28.5",
"@babel/eslint-parser": "^7.28.5",
"@babel/preset-env": "^7.28.5",
"@symfony/webpack-encore": "^5.3.1",
"autoprefixer": "^10.4.23",
"babel-loader": "^10.0.0",
"core-js": "^3.47.0",
"css-loader": "^7.1.2",
"eslint": "^8.57.1",
"eslint-config-airbnb-base": "^15.0.0",
"eslint-plugin-import": "^2.31.0",
"eslint-webpack-plugin": "^4.2.0",
"eslint-plugin-import": "^2.32.0",
"eslint-webpack-plugin": "^5.0.2",
"file-loader": "^6.2.0",
"lato-font": "^3.0.0",
"mini-css-extract-plugin": "^2.9.2",
"postcss": "^8.5.2",
"postcss-loader": "^8.1.1",
"mini-css-extract-plugin": "^2.9.4",
"postcss": "^8.5.6",
"postcss-loader": "^8.2.0",
"postcss-scss": "^4.0.9",
"regenerator-runtime": "^0.14.1",
"sass-embedded": "^1.85.0",
"sass-loader": "^16.0.5",
"sass-embedded": "^1.97.1",
"sass-loader": "^16.0.6",
"style-loader": "^4.0.0",
"stylelint": "^15.11.0",
"stylelint-config-standard": "^34.0.0",
"stylelint-config-standard-scss": "^11.1.0",
"stylelint-scss": "^5.3.2",
"terser-webpack-plugin": "^5.3.11",
"terser-webpack-plugin": "^5.3.16",
"url-loader": "^4.1.1",
"webpack": "^5.98.0",
"webpack": "^5.104.1",
"webpack-cli": "^5.1.4",
"webpack-manifest-plugin": "^5.0.0",
"webpack-manifest-plugin": "^5.0.1",
"webpack-merge": "^6.0.1",
"webpack-notifier": "^1.15.0"
},
"dependencies": {
"@fontsource/atkinson-hyperlegible": "^5.1.1",
"@fontsource/eb-garamond": "^5.1.2",
"@fontsource/montserrat": "^5.1.1",
"@fontsource/oswald": "^5.1.1",
"@fontsource/atkinson-hyperlegible": "^5.2.8",
"@fontsource/eb-garamond": "^5.2.7",
"@fontsource/montserrat": "^5.2.8",
"@fontsource/oswald": "^5.2.8",
"@hotwired/stimulus": "^3.2.2",
"@materializecss/materialize": "^1.2.2",
"@symfony/stimulus-bridge": "^4.0.1",
"annotator": "wallabag/annotator#master",
"clipboard": "^2.0.11",
"hammerjs": "^2.0.8",
"highlight.js": "^11.11.1",
"icomoon-free-npm": "^0.0.0",
"jquery": "^3.7.1",
"jquery.cookie": "^1.4.1",
"jr-qrcode": "^1.2.1",
"material-design-icons-iconfont": "^6.7.0",
"mathjax": "^3.2.2",
@ -100,7 +100,7 @@
"build:dev": "encore dev",
"watch": "encore dev --watch",
"build:prod": "encore production --progress",
"lint:js": "eslint assets/*.js assets/js/*.js assets/js/**/*.js",
"lint:js": "eslint assets/*.js assets/controllers/*.js",
"lint:scss": "stylelint assets/scss/*.scss assets/scss/**/*.scss"
}
}

View File

@ -1,76 +1,6 @@
parameters:
ignoreErrors:
-
message: "#^Method Wallabag\\\\Controller\\\\AnnotationController\\:\\:postAnnotationAction\\(\\) should return Symfony\\\\Component\\\\HttpFoundation\\\\JsonResponse but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\<mixed\\>\\.$#"
message: "#^Strict comparison using \\=\\=\\= between null and string will always evaluate to false\\.$#"
count: 1
path: src/Controller/AnnotationController.php
-
message: "#^Method Wallabag\\\\Controller\\\\AnnotationController\\:\\:putAnnotationAction\\(\\) should return Symfony\\\\Component\\\\HttpFoundation\\\\JsonResponse but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\<null\\>\\.$#"
count: 1
path: src/Controller/AnnotationController.php
-
message: "#^Call to an undefined method Wallabag\\\\Entity\\\\RuleInterface\\:\\:getConfig\\(\\)\\.$#"
count: 1
path: src/Controller/ConfigController.php
-
message: "#^Method FOS\\\\UserBundle\\\\Model\\\\UserManagerInterface\\:\\:updateUser\\(\\) invoked with 2 parameters, 1 required\\.$#"
count: 6
path: src/Controller/ConfigController.php
-
message: "#^Call to an undefined method Wallabag\\\\Import\\\\ImportInterface\\:\\:setFilepath\\(\\)\\.$#"
count: 1
path: src/Controller/Import/BrowserController.php
-
message: "#^Call to an undefined method Wallabag\\\\Import\\\\ImportInterface\\:\\:setUser\\(\\)\\.$#"
count: 1
path: src/Controller/Import/BrowserController.php
-
message: "#^Call to an undefined method Wallabag\\\\Import\\\\ImportInterface\\:\\:setFilepath\\(\\)\\.$#"
count: 1
path: src/Controller/Import/HtmlController.php
-
message: "#^Call to an undefined method Wallabag\\\\Import\\\\ImportInterface\\:\\:setUser\\(\\)\\.$#"
count: 1
path: src/Controller/Import/HtmlController.php
-
message: "#^Call to an undefined method Wallabag\\\\Import\\\\ImportInterface\\:\\:setFilepath\\(\\)\\.$#"
count: 1
path: src/Controller/Import/WallabagController.php
-
message: "#^Call to an undefined method Wallabag\\\\Import\\\\ImportInterface\\:\\:setUser\\(\\)\\.$#"
count: 1
path: src/Controller/Import/WallabagController.php
-
message: "#^Call to an undefined method Spiriit\\\\Bundle\\\\FormFilterBundle\\\\Filter\\\\Query\\\\QueryInterface\\:\\:getExpressionBuilder\\(\\)\\.$#"
count: 1
path: src/Event/Subscriber/CustomDoctrineORMSubscriber.php
-
message: "#^Call to an undefined method Spiriit\\\\Bundle\\\\FormFilterBundle\\\\Filter\\\\Query\\\\QueryInterface\\:\\:getExpr\\(\\)\\.$#"
count: 10
path: src/Form/Type/EntryFilterType.php
-
message: "#^Call to an undefined method Scheb\\\\TwoFactorBundle\\\\Model\\\\Email\\\\TwoFactorInterface\\:\\:getName\\(\\)\\.$#"
count: 2
path: src/Mailer/AuthCodeMailer.php
-
message: "#^PHPDoc type Symfony\\\\Component\\\\Mailer\\\\MailerInterface of property Wallabag\\\\Mailer\\\\UserMailer\\:\\:\\$mailer is not covariant with PHPDoc type Swift_Mailer of overridden property FOS\\\\UserBundle\\\\Mailer\\\\TwigSwiftMailer\\:\\:\\$mailer\\.$#"
count: 1
path: src/Mailer/UserMailer.php
-
message: "#^Call to an undefined method DOMNode\\:\\:getAttribute\\(\\)\\.$#"
count: 1
path: tests/Controller/FeedControllerTest.php
path: src/ParamConverter/UsernameFeedTokenConverter.php

View File

@ -2,7 +2,7 @@ includes:
- phpstan-baseline.neon
parameters:
level: 3
level: 5
paths:
- src
- tests

28
rector.php Normal file
View File

@ -0,0 +1,28 @@
<?php
declare(strict_types=1);
use Rector\Config\RectorConfig;
use Rector\Php80\Rector\Class_\ClassPropertyAssignToConstructorPromotionRector;
return RectorConfig::configure()
->withPaths([
__DIR__ . '/app',
__DIR__ . '/fixtures',
__DIR__ . '/src',
__DIR__ . '/tests',
__DIR__ . '/web',
])
->withRootFiles()
->withImportNames(importShortClasses: false)
->withAttributesSets(symfony: true, doctrine: true, gedmo: true, jms: true, sensiolabs: true)
->withConfiguredRule(ClassPropertyAssignToConstructorPromotionRector::class, [
'inline_public' => true,
])
->withSkip([
ClassPropertyAssignToConstructorPromotionRector::class => [
__DIR__ . '/src/Entity/*',
],
])
->withPhpSets()
->withTypeCoverageLevel(0);

View File

@ -16,14 +16,10 @@ class CleanDownloadedImagesCommand extends Command
protected static $defaultName = 'wallabag:clean-downloaded-images';
protected static $defaultDescription = 'Cleans downloaded images which are no more associated to an entry';
private EntryRepository $entryRepository;
private DownloadImages $downloadImages;
public function __construct(EntryRepository $entryRepository, DownloadImages $downloadImages)
{
$this->entryRepository = $entryRepository;
$this->downloadImages = $downloadImages;
public function __construct(
private readonly EntryRepository $entryRepository,
private readonly DownloadImages $downloadImages,
) {
parent::__construct();
}

View File

@ -9,8 +9,9 @@ use Symfony\Component\Console\Input\InputArgument;
use Symfony\Component\Console\Input\InputInterface;
use Symfony\Component\Console\Output\OutputInterface;
use Symfony\Component\Console\Style\SymfonyStyle;
use Wallabag\Entity\Entry;
use Symfony\Component\EventDispatcher\EventDispatcherInterface;
use Wallabag\Entity\User;
use Wallabag\Event\EntryDeletedEvent;
use Wallabag\Repository\EntryRepository;
use Wallabag\Repository\UserRepository;
@ -21,16 +22,13 @@ class CleanDuplicatesCommand extends Command
protected SymfonyStyle $io;
protected int $duplicates = 0;
private EntityManagerInterface $entityManager;
private EntryRepository $entryRepository;
private UserRepository $userRepository;
public function __construct(EntityManagerInterface $entityManager, EntryRepository $entryRepository, UserRepository $userRepository)
{
$this->entityManager = $entityManager;
$this->entryRepository = $entryRepository;
$this->userRepository = $userRepository;
public function __construct(
private readonly EntityManagerInterface $entityManager,
private readonly EntryRepository $entryRepository,
private readonly UserRepository $userRepository,
private readonly EventDispatcherInterface $eventDispatcher,
) {
parent::__construct();
}
@ -55,7 +53,7 @@ class CleanDuplicatesCommand extends Command
try {
$user = $this->getUser($username);
$this->cleanDuplicates($user);
} catch (NoResultException $e) {
} catch (NoResultException) {
$this->io->error(\sprintf('User "%s" not found.', $username));
return 1;
@ -90,7 +88,12 @@ class CleanDuplicatesCommand extends Command
if (\in_array($url, $urls, true)) {
++$duplicatesCount;
$this->entityManager->remove($this->entryRepository->find($entry['id']));
$entryToDelete = $this->entryRepository->find($entry['id']);
// entry deleted, dispatch event about it!
$this->eventDispatcher->dispatch(new EntryDeletedEvent($entryToDelete), EntryDeletedEvent::NAME);
$this->entityManager->remove($entryToDelete);
$this->entityManager->flush(); // Flushing at the end of the loop would require the instance not being online
} else {
$urls[] = $entry['url'];
@ -104,8 +107,8 @@ class CleanDuplicatesCommand extends Command
private function similarUrl($url)
{
if (\in_array(substr($url, -1), ['/', '#'], true)) { // get rid of "/" and "#" and the end of urls
return substr($url, 0, \strlen($url));
if (\in_array(substr((string) $url, -1), ['/', '#'], true)) { // get rid of "/" and "#" and the end of urls
return substr((string) $url, 0, \strlen((string) $url));
}
return $url;

View File

@ -17,18 +17,12 @@ class ExportCommand extends Command
protected static $defaultName = 'wallabag:export';
protected static $defaultDescription = 'Export all entries for an user';
private EntryRepository $entryRepository;
private UserRepository $userRepository;
private EntriesExport $entriesExport;
private string $projectDir;
public function __construct(EntryRepository $entryRepository, UserRepository $userRepository, EntriesExport $entriesExport, string $projectDir)
{
$this->entryRepository = $entryRepository;
$this->userRepository = $userRepository;
$this->entriesExport = $entriesExport;
$this->projectDir = $projectDir;
public function __construct(
private readonly EntryRepository $entryRepository,
private readonly UserRepository $userRepository,
private readonly EntriesExport $entriesExport,
private readonly string $projectDir,
) {
parent::__construct();
}

View File

@ -19,16 +19,12 @@ class GenerateUrlHashesCommand extends Command
protected static $defaultDescription = 'Generates hashed urls for each entry';
protected OutputInterface $output;
private EntityManagerInterface $entityManager;
private EntryRepository $entryRepository;
private UserRepository $userRepository;
public function __construct(EntityManagerInterface $entityManager, EntryRepository $entryRepository, UserRepository $userRepository)
{
$this->entityManager = $entityManager;
$this->entryRepository = $entryRepository;
$this->userRepository = $userRepository;
public function __construct(
private readonly EntityManagerInterface $entityManager,
private readonly EntryRepository $entryRepository,
private readonly UserRepository $userRepository,
) {
parent::__construct();
}
@ -49,7 +45,7 @@ class GenerateUrlHashesCommand extends Command
try {
$user = $this->getUser($username);
$this->generateHashedUrls($user);
} catch (NoResultException $e) {
} catch (NoResultException) {
$output->writeln(\sprintf('<error>User "%s" not found.</error>', $username));
return 1;

View File

@ -21,6 +21,7 @@ use Wallabag\Import\FirefoxImport;
use Wallabag\Import\InstapaperImport;
use Wallabag\Import\OmnivoreImport;
use Wallabag\Import\PinboardImport;
use Wallabag\Import\PocketCsvImport;
use Wallabag\Import\PocketHtmlImport;
use Wallabag\Import\ReadabilityImport;
use Wallabag\Import\ShaarliImport;
@ -33,55 +34,24 @@ class ImportCommand extends Command
protected static $defaultName = 'wallabag:import';
protected static $defaultDescription = 'Import entries from a JSON export';
private EntityManagerInterface $entityManager;
private TokenStorageInterface $tokenStorage;
private UserRepository $userRepository;
private WallabagV2Import $wallabagV2Import;
private FirefoxImport $firefoxImport;
private ChromeImport $chromeImport;
private ReadabilityImport $readabilityImport;
private InstapaperImport $instapaperImport;
private PinboardImport $pinboardImport;
private DeliciousImport $deliciousImport;
private OmnivoreImport $omnivoreImport;
private WallabagV1Import $wallabagV1Import;
private ElcuratorImport $elcuratorImport;
private ShaarliImport $shaarliImport;
private PocketHtmlImport $pocketHtmlImport;
public function __construct(
EntityManagerInterface $entityManager,
TokenStorageInterface $tokenStorage,
UserRepository $userRepository,
WallabagV2Import $wallabagV2Import,
FirefoxImport $firefoxImport,
ChromeImport $chromeImport,
ReadabilityImport $readabilityImport,
InstapaperImport $instapaperImport,
PinboardImport $pinboardImport,
DeliciousImport $deliciousImport,
WallabagV1Import $wallabagV1Import,
ElcuratorImport $elcuratorImport,
ShaarliImport $shaarliImport,
PocketHtmlImport $pocketHtmlImport,
OmnivoreImport $omnivoreImport
private readonly EntityManagerInterface $entityManager,
private readonly TokenStorageInterface $tokenStorage,
private readonly UserRepository $userRepository,
private readonly WallabagV2Import $wallabagV2Import,
private readonly FirefoxImport $firefoxImport,
private readonly ChromeImport $chromeImport,
private readonly ReadabilityImport $readabilityImport,
private readonly InstapaperImport $instapaperImport,
private readonly PinboardImport $pinboardImport,
private readonly DeliciousImport $deliciousImport,
private readonly WallabagV1Import $wallabagV1Import,
private readonly ElcuratorImport $elcuratorImport,
private readonly ShaarliImport $shaarliImport,
private readonly PocketHtmlImport $pocketHtmlImport,
private readonly PocketCsvImport $pocketCsvImport,
private readonly OmnivoreImport $omnivoreImport,
) {
$this->entityManager = $entityManager;
$this->tokenStorage = $tokenStorage;
$this->userRepository = $userRepository;
$this->wallabagV2Import = $wallabagV2Import;
$this->firefoxImport = $firefoxImport;
$this->chromeImport = $chromeImport;
$this->readabilityImport = $readabilityImport;
$this->instapaperImport = $instapaperImport;
$this->pinboardImport = $pinboardImport;
$this->deliciousImport = $deliciousImport;
$this->omnivoreImport = $omnivoreImport;
$this->wallabagV1Import = $wallabagV1Import;
$this->elcuratorImport = $elcuratorImport;
$this->shaarliImport = $shaarliImport;
$this->pocketHtmlImport = $pocketHtmlImport;
parent::__construct();
}
@ -90,7 +60,7 @@ class ImportCommand extends Command
$this
->addArgument('username', InputArgument::REQUIRED, 'User to populate')
->addArgument('filepath', InputArgument::REQUIRED, 'Path to the JSON file')
->addOption('importer', null, InputOption::VALUE_OPTIONAL, 'The importer to use: v1, v2, instapaper, pinboard, delicious, readability, firefox, chrome, elcurator, shaarli or pocket', 'v1')
->addOption('importer', null, InputOption::VALUE_OPTIONAL, 'The importer to use: v1, v2, instapaper, pinboard, delicious, readability, firefox, chrome, elcurator, shaarli, pocket or pocket_csv', 'v1')
->addOption('markAsRead', null, InputOption::VALUE_OPTIONAL, 'Mark all entries as read', false)
->addOption('useUserId', null, InputOption::VALUE_NONE, 'Use user id instead of username to find account')
->addOption('disableContentUpdate', null, InputOption::VALUE_NONE, 'Disable fetching updated content from URL')
@ -107,9 +77,7 @@ class ImportCommand extends Command
// Turning off doctrine default logs queries for saving memory
$middlewares = $this->entityManager->getConnection()->getConfiguration()->getMiddlewares();
$middlewaresWithoutLogging = array_filter($middlewares, function (Middleware $middleware) {
return !$middleware instanceof LoggingMiddleware;
});
$middlewaresWithoutLogging = array_filter($middlewares, fn (Middleware $middleware) => !$middleware instanceof LoggingMiddleware);
$this->entityManager->getConnection()->getConfiguration()->setMiddlewares($middlewaresWithoutLogging);
if ($input->getOption('useUserId')) {
@ -130,44 +98,23 @@ class ImportCommand extends Command
$this->tokenStorage->setToken($token);
$user = $this->tokenStorage->getToken()->getUser();
\assert($user instanceof User);
switch ($input->getOption('importer')) {
case 'v2':
$import = $this->wallabagV2Import;
break;
case 'firefox':
$import = $this->firefoxImport;
break;
case 'chrome':
$import = $this->chromeImport;
break;
case 'readability':
$import = $this->readabilityImport;
break;
case 'instapaper':
$import = $this->instapaperImport;
break;
case 'pinboard':
$import = $this->pinboardImport;
break;
case 'delicious':
$import = $this->deliciousImport;
break;
case 'elcurator':
$import = $this->elcuratorImport;
break;
case 'shaarli':
$import = $this->shaarliImport;
break;
case 'pocket':
$import = $this->pocketHtmlImport;
break;
case 'omnivore':
$import = $this->omnivoreImport;
break;
default:
$import = $this->wallabagV1Import;
}
$import = match ($input->getOption('importer')) {
'v2' => $this->wallabagV2Import,
'firefox' => $this->firefoxImport,
'chrome' => $this->chromeImport,
'readability' => $this->readabilityImport,
'instapaper' => $this->instapaperImport,
'pinboard' => $this->pinboardImport,
'delicious' => $this->deliciousImport,
'elcurator' => $this->elcuratorImport,
'shaarli' => $this->shaarliImport,
'pocket' => $this->pocketHtmlImport,
'pocket_csv' => $this->pocketCsvImport,
'omnivore' => $this->omnivoreImport,
default => $this->wallabagV1Import,
};
$import->setMarkAsRead($input->getOption('markAsRead'));
$import->setDisableContentUpdate($input->getOption('disableContentUpdate'));

View File

@ -16,12 +16,9 @@ class RedisWorkerCommand extends Command
protected static $defaultName = 'wallabag:import:redis-worker';
protected static $defaultDescription = 'Launch Redis worker';
private $container;
public function __construct(ContainerInterface $container)
{
$this->container = $container;
public function __construct(
private readonly ContainerInterface $container,
) {
parent::__construct();
}

View File

@ -0,0 +1,118 @@
<?php
namespace Wallabag\Command\Import;
use Doctrine\DBAL\Driver\Middleware;
use Doctrine\DBAL\Logging\Middleware as LoggingMiddleware;
use Doctrine\ORM\EntityManagerInterface;
use Symfony\Component\Config\Definition\Exception\Exception;
use Symfony\Component\Console\Command\Command;
use Symfony\Component\Console\Input\InputArgument;
use Symfony\Component\Console\Input\InputInterface;
use Symfony\Component\Console\Input\InputOption;
use Symfony\Component\Console\Output\OutputInterface;
use Symfony\Component\Security\Core\Authentication\Token\Storage\TokenStorageInterface;
use Symfony\Component\Security\Core\Authentication\Token\UsernamePasswordToken;
use Wallabag\Entity\Entry;
use Wallabag\Entity\User;
use Wallabag\Helper\ContentProxy;
use Wallabag\Helper\TagsAssigner;
use Wallabag\Repository\UserRepository;
class UrlCommand extends Command
{
public function __construct(
private readonly EntityManagerInterface $entityManager,
private readonly TokenStorageInterface $tokenStorage,
private readonly UserRepository $userRepository,
private readonly ContentProxy $contentProxy,
private readonly TagsAssigner $tagsAssigner,
) {
parent::__construct();
}
protected function configure()
{
$this
->setName('wallabag:import:url')
->setDescription('Import a single URL')
->addArgument('username', InputArgument::REQUIRED, 'User to add the URL to (value: username or id)')
->addArgument('url', InputArgument::REQUIRED, 'URL to import')
->addArgument('tags', InputArgument::OPTIONAL, 'Comma-separated list of tags to add')
->addOption('markAsRead', null, InputOption::VALUE_OPTIONAL, 'Mark entry as read', false)
->addOption('useUserId', null, InputOption::VALUE_NONE, 'Use user id instead of username to find account')
;
}
protected function execute(InputInterface $input, OutputInterface $output): int
{
// Turning off doctrine default logs queries for saving memory
$middlewares = $this->entityManager->getConnection()->getConfiguration()->getMiddlewares();
$middlewaresWithoutLogging = array_filter($middlewares, fn (Middleware $middleware) => !$middleware instanceof LoggingMiddleware);
$this->entityManager->getConnection()->getConfiguration()->setMiddlewares($middlewaresWithoutLogging);
if ($input->getOption('useUserId')) {
$entityUser = $this->userRepository->findOneById($input->getArgument('username'));
} else {
$entityUser = $this->userRepository->findOneByUsername($input->getArgument('username'));
}
if (!\is_object($entityUser)) {
throw new Exception(\sprintf('User "%s" not found', $input->getArgument('username')));
}
// Authenticate user for paywalled websites
$token = new UsernamePasswordToken(
$entityUser,
'main',
$entityUser->getRoles()
);
$this->tokenStorage->setToken($token);
$user = $this->tokenStorage->getToken()->getUser();
\assert($user instanceof User);
$url = $input->getArgument('url');
$existingEntry = $this->entityManager
->getRepository(Entry::class)
->findByUrlAndUserId($url, $user->getId());
if (false !== $existingEntry) {
$output->writeln(\sprintf('The URL %s is already in users entries.', $url));
return 1;
}
$entry = new Entry($user);
try {
$this->contentProxy->updateEntry($entry, $url);
} catch (\Exception $e) {
$output->writeln(\sprintf('Error trying to import the URL %s: %s.', $url, $e->getMessage()));
return 1;
}
if ($input->getOption('markAsRead')) {
$entry->updateArchived(true);
}
$this->entityManager->persist($entry);
$tags = explode(',', $input->getArgument('tags'));
if (\count($tags) > 1) {
$this->tagsAssigner->assignTagsToEntry(
$entry,
$tags,
$this->entityManager->getUnitOfWork()->getScheduledEntityInsertions()
);
}
$this->entityManager->flush();
$output->writeln(\sprintf('URL %s successfully imported.', $url));
return 0;
}
}

View File

@ -37,24 +37,15 @@ class InstallCommand extends Command
'curl_multi_init',
];
private EntityManagerInterface $entityManager;
private EventDispatcherInterface $dispatcher;
private UserManagerInterface $userManager;
private TableMetadataStorageConfiguration $tableMetadataStorageConfiguration;
private string $databaseDriver;
private array $defaultSettings;
private array $defaultIgnoreOriginInstanceRules;
public function __construct(EntityManagerInterface $entityManager, EventDispatcherInterface $dispatcher, UserManagerInterface $userManager, TableMetadataStorageConfiguration $tableMetadataStorageConfiguration, string $databaseDriver, array $defaultSettings, array $defaultIgnoreOriginInstanceRules)
{
$this->entityManager = $entityManager;
$this->dispatcher = $dispatcher;
$this->userManager = $userManager;
$this->tableMetadataStorageConfiguration = $tableMetadataStorageConfiguration;
$this->databaseDriver = $databaseDriver;
$this->defaultSettings = $defaultSettings;
$this->defaultIgnoreOriginInstanceRules = $defaultIgnoreOriginInstanceRules;
public function __construct(
private readonly EntityManagerInterface $entityManager,
private readonly EventDispatcherInterface $dispatcher,
private readonly UserManagerInterface $userManager,
private readonly TableMetadataStorageConfiguration $tableMetadataStorageConfiguration,
private readonly string $databaseDriver,
private readonly array $defaultSettings,
private readonly array $defaultIgnoreOriginInstanceRules,
) {
parent::__construct();
}
@ -138,7 +129,7 @@ class InstallCommand extends Command
// now check if MySQL isn't too old to handle utf8mb4
if ($conn->isConnected() && $conn->getDatabasePlatform() instanceof MySQLPlatform) {
$version = $conn->query('select version()')->fetchOne();
$version = $conn->executeQuery('select version()')->fetchOne();
$minimalVersion = '5.5.4';
if (false === version_compare($version, $minimalVersion, '>')) {
@ -151,9 +142,9 @@ class InstallCommand extends Command
// testing if PostgreSQL > 9.1
if ($conn->isConnected() && $conn->getDatabasePlatform() instanceof PostgreSQLPlatform) {
// return version should be like "PostgreSQL 9.5.4 on x86_64-apple-darwin15.6.0, compiled by Apple LLVM version 8.0.0 (clang-800.0.38), 64-bit"
$version = $conn->query('SELECT version();')->fetchOne();
$version = $conn->executeQuery('SELECT version();')->fetchOne();
preg_match('/PostgreSQL ([0-9\.]+)/i', $version, $matches);
preg_match('/PostgreSQL ([0-9\.]+)/i', (string) $version, $matches);
if (isset($matches[1]) & version_compare($matches[1], '9.2.0', '<')) {
$fulfilled = false;
@ -411,7 +402,7 @@ class InstallCommand extends Command
try {
return \in_array($databaseName, $schemaManager->listDatabases(), true);
} catch (DriverException $e) {
} catch (DriverException) {
// it means we weren't able to get database list, assume the database doesn't exist
return false;

View File

@ -15,12 +15,9 @@ class ListUserCommand extends Command
protected static $defaultName = 'wallabag:user:list';
protected static $defaultDescription = 'List all users';
private UserRepository $userRepository;
public function __construct(UserRepository $userRepository)
{
$this->userRepository = $userRepository;
public function __construct(
private readonly UserRepository $userRepository,
) {
parent::__construct();
}

View File

@ -21,20 +21,13 @@ class ReloadEntryCommand extends Command
protected static $defaultName = 'wallabag:entry:reload';
protected static $defaultDescription = 'Reload entries';
private EntryRepository $entryRepository;
private UserRepository $userRepository;
private EntityManagerInterface $entityManager;
private ContentProxy $contentProxy;
private EventDispatcherInterface $dispatcher;
public function __construct(EntryRepository $entryRepository, UserRepository $userRepository, EntityManagerInterface $entityManager, ContentProxy $contentProxy, EventDispatcherInterface $dispatcher)
{
$this->entryRepository = $entryRepository;
$this->userRepository = $userRepository;
$this->entityManager = $entityManager;
$this->contentProxy = $contentProxy;
$this->dispatcher = $dispatcher;
public function __construct(
private readonly EntryRepository $entryRepository,
private readonly UserRepository $userRepository,
private readonly EntityManagerInterface $entityManager,
private readonly ContentProxy $contentProxy,
private readonly EventDispatcherInterface $dispatcher,
) {
parent::__construct();
}
@ -62,7 +55,7 @@ class ReloadEntryCommand extends Command
$userId = $this->userRepository
->findOneByUserName($username)
->getId();
} catch (NoResultException $e) {
} catch (NoResultException) {
$io->error(\sprintf('User "%s" not found.', $username));
return 1;

View File

@ -17,12 +17,10 @@ class ShowUserCommand extends Command
protected static $defaultDescription = 'Show user details';
protected SymfonyStyle $io;
private UserRepository $userRepository;
public function __construct(UserRepository $userRepository)
{
$this->userRepository = $userRepository;
public function __construct(
private readonly UserRepository $userRepository,
) {
parent::__construct();
}
@ -46,7 +44,7 @@ class ShowUserCommand extends Command
try {
$user = $this->getUser($username);
$this->showUser($user);
} catch (NoResultException $e) {
} catch (NoResultException) {
$this->io->error(\sprintf('User "%s" not found.', $username));
return 1;

View File

@ -18,16 +18,11 @@ class TagAllCommand extends Command
protected static $defaultName = 'wallabag:tag:all';
protected static $defaultDescription = 'Tag all entries using the tagging rules.';
private EntityManagerInterface $entityManager;
private RuleBasedTagger $ruleBasedTagger;
private UserRepository $userRepository;
public function __construct(EntityManagerInterface $entityManager, RuleBasedTagger $ruleBasedTagger, UserRepository $userRepository)
{
$this->entityManager = $entityManager;
$this->ruleBasedTagger = $ruleBasedTagger;
$this->userRepository = $userRepository;
public function __construct(
private readonly EntityManagerInterface $entityManager,
private readonly RuleBasedTagger $ruleBasedTagger,
private readonly UserRepository $userRepository,
) {
parent::__construct();
}
@ -48,7 +43,7 @@ class TagAllCommand extends Command
try {
$user = $this->getUser($input->getArgument('username'));
} catch (NoResultException $e) {
} catch (NoResultException) {
$io->error(\sprintf('User "%s" not found.', $input->getArgument('username')));
return 1;

View File

@ -15,15 +15,11 @@ class UpdatePicturesPathCommand extends Command
protected static $defaultName = 'wallabag:update-pictures-path';
protected static $defaultDescription = 'Update the path of the pictures for each entry when you changed your wallabag instance URL.';
private EntityManagerInterface $entityManager;
private EntryRepository $entryRepository;
private string $wallabagUrl;
public function __construct(EntityManagerInterface $entityManager, EntryRepository $entryRepository, $wallabagUrl)
{
$this->entityManager = $entityManager;
$this->entryRepository = $entryRepository;
$this->wallabagUrl = $wallabagUrl;
public function __construct(
private readonly EntityManagerInterface $entityManager,
private readonly EntryRepository $entryRepository,
private readonly string $wallabagUrl,
) {
parent::__construct();
}

View File

@ -7,8 +7,8 @@ use PhpAmqpLib\Message\AMQPMessage;
class AMQPEntryConsumer extends AbstractConsumer implements ConsumerInterface
{
public function execute(AMQPMessage $msg)
public function execute(AMQPMessage $msg): int|bool
{
return $this->handleMessage($msg->body);
return $this->handleMessage($msg->getBody());
}
}

View File

@ -7,25 +7,19 @@ use Psr\Log\LoggerInterface;
use Psr\Log\NullLogger;
use Symfony\Component\EventDispatcher\EventDispatcherInterface;
use Wallabag\Entity\Entry;
use Wallabag\Entity\Tag;
use Wallabag\Event\EntrySavedEvent;
use Wallabag\Import\AbstractImport;
use Wallabag\Repository\UserRepository;
abstract class AbstractConsumer
{
protected $em;
protected $userRepository;
protected $import;
protected $eventDispatcher;
protected $logger;
public function __construct(EntityManagerInterface $em, UserRepository $userRepository, AbstractImport $import, EventDispatcherInterface $eventDispatcher, ?LoggerInterface $logger = null)
{
$this->em = $em;
$this->userRepository = $userRepository;
$this->import = $import;
$this->eventDispatcher = $eventDispatcher;
public function __construct(
protected EntityManagerInterface $em,
protected UserRepository $userRepository,
protected AbstractImport $import,
protected EventDispatcherInterface $eventDispatcher,
protected ?LoggerInterface $logger = null,
) {
$this->logger = $logger ?: new NullLogger();
}
@ -74,9 +68,7 @@ abstract class AbstractConsumer
// entry saved, dispatch event about it!
$this->eventDispatcher->dispatch(new EntrySavedEvent($entry), EntrySavedEvent::NAME);
// clear only affected entities
$this->em->clear(Entry::class);
$this->em->clear(Tag::class);
$this->em->clear();
} catch (\Exception $e) {
$this->logger->warning('Unable to save entry', ['entry' => $storedEntry, 'exception' => $e]);

View File

@ -10,48 +10,22 @@ use OldSound\RabbitMqBundle\RabbitMq\Consumer;
*/
class RabbitMQConsumerTotalProxy
{
private Consumer $pocketConsumer;
private Consumer $readabilityConsumer;
private Consumer $wallabagV1Consumer;
private Consumer $wallabagV2Consumer;
private Consumer $firefoxConsumer;
private Consumer $chromeConsumer;
private Consumer $instapaperConsumer;
private Consumer $pinboardConsumer;
private Consumer $deliciousConsumer;
private Consumer $elcuratorConsumer;
private Consumer $shaarliConsumer;
private Consumer $pocketHtmlConsumer;
private Consumer $omnivoreConsumer;
public function __construct(
Consumer $pocketConsumer,
Consumer $readabilityConsumer,
Consumer $wallabagV1Consumer,
Consumer $wallabagV2Consumer,
Consumer $firefoxConsumer,
Consumer $chromeConsumer,
Consumer $instapaperConsumer,
Consumer $pinboardConsumer,
Consumer $deliciousConsumer,
Consumer $elcuratorConsumer,
Consumer $shaarliConsumer,
Consumer $pocketHtmlConsumer,
Consumer $omnivoreConsumer
private readonly Consumer $pocketConsumer,
private readonly Consumer $readabilityConsumer,
private readonly Consumer $wallabagV1Consumer,
private readonly Consumer $wallabagV2Consumer,
private readonly Consumer $firefoxConsumer,
private readonly Consumer $chromeConsumer,
private readonly Consumer $instapaperConsumer,
private readonly Consumer $pinboardConsumer,
private readonly Consumer $deliciousConsumer,
private readonly Consumer $elcuratorConsumer,
private readonly Consumer $shaarliConsumer,
private readonly Consumer $pocketHtmlConsumer,
private readonly Consumer $pocketCsvConsumer,
private readonly Consumer $omnivoreConsumer,
) {
$this->pocketConsumer = $pocketConsumer;
$this->readabilityConsumer = $readabilityConsumer;
$this->wallabagV1Consumer = $wallabagV1Consumer;
$this->wallabagV2Consumer = $wallabagV2Consumer;
$this->firefoxConsumer = $firefoxConsumer;
$this->chromeConsumer = $chromeConsumer;
$this->instapaperConsumer = $instapaperConsumer;
$this->pinboardConsumer = $pinboardConsumer;
$this->deliciousConsumer = $deliciousConsumer;
$this->elcuratorConsumer = $elcuratorConsumer;
$this->shaarliConsumer = $shaarliConsumer;
$this->pocketHtmlConsumer = $pocketHtmlConsumer;
$this->omnivoreConsumer = $omnivoreConsumer;
}
/**
@ -102,6 +76,9 @@ class RabbitMQConsumerTotalProxy
case 'pocket_html':
$consumer = $this->pocketHtmlConsumer;
break;
case 'pocket_csv':
$consumer = $this->pocketCsvConsumer;
break;
case 'omnivore':
$consumer = $this->omnivoreConsumer;
break;
@ -115,6 +92,6 @@ class RabbitMQConsumerTotalProxy
return 0;
}
return $message->delivery_info['message_count'] + 1;
return $message->getMessageCount() + 1;
}
}

View File

@ -5,6 +5,7 @@ namespace Wallabag\Controller;
use Doctrine\ORM\EntityManagerInterface;
use FOS\RestBundle\Controller\AbstractFOSRestController;
use JMS\Serializer\SerializerInterface;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\IsGranted;
use Symfony\Component\Form\FormFactoryInterface;
use Symfony\Component\HttpFoundation\JsonResponse;
use Symfony\Component\HttpFoundation\Request;
@ -19,15 +20,11 @@ use Wallabag\Repository\AnnotationRepository;
class AnnotationController extends AbstractFOSRestController
{
protected EntityManagerInterface $entityManager;
protected SerializerInterface $serializer;
protected FormFactoryInterface $formFactory;
public function __construct(EntityManagerInterface $entityManager, SerializerInterface $serializer, FormFactoryInterface $formFactory)
{
$this->entityManager = $entityManager;
$this->serializer = $serializer;
$this->formFactory = $formFactory;
public function __construct(
protected EntityManagerInterface $entityManager,
protected SerializerInterface $serializer,
protected FormFactoryInterface $formFactory,
) {
}
/**
@ -35,10 +32,10 @@ class AnnotationController extends AbstractFOSRestController
*
* @see Api\WallabagRestController
*
* @Route("/annotations/{entry}.{_format}", methods={"GET"}, name="annotations_get_annotations", defaults={"_format": "json"})
*
* @return JsonResponse
*/
#[Route(path: '/annotations/{entry}.{_format}', name: 'annotations_get_annotations', methods: ['GET'], defaults: ['_format' => 'json'])]
#[IsGranted('LIST_ANNOTATIONS', subject: 'entry')]
public function getAnnotationsAction(Entry $entry, AnnotationRepository $annotationRepository)
{
$annotationRows = $annotationRepository->findByEntryIdAndUserId($entry->getId(), $this->getUser()->getId());
@ -56,10 +53,10 @@ class AnnotationController extends AbstractFOSRestController
*
* @see Api\WallabagRestController
*
* @Route("/annotations/{entry}.{_format}", methods={"POST"}, name="annotations_post_annotation", defaults={"_format": "json"})
*
* @return JsonResponse
*/
#[Route(path: '/annotations/{entry}.{_format}', name: 'annotations_post_annotation', methods: ['POST'], defaults: ['_format' => 'json'])]
#[IsGranted('CREATE_ANNOTATIONS', subject: 'entry')]
public function postAnnotationAction(Request $request, Entry $entry)
{
$data = json_decode($request->getContent(), true);
@ -82,7 +79,7 @@ class AnnotationController extends AbstractFOSRestController
return JsonResponse::fromJsonString($json);
}
return $form;
return new JsonResponse(status: 400);
}
/**
@ -90,15 +87,13 @@ class AnnotationController extends AbstractFOSRestController
*
* @see Api\WallabagRestController
*
* @Route("/annotations/{annotation}.{_format}", methods={"PUT"}, name="annotations_put_annotation", defaults={"_format": "json"})
*
* @return JsonResponse
*/
public function putAnnotationAction(Request $request, AnnotationRepository $annotationRepository, int $annotation)
#[Route(path: '/annotations/{annotation}.{_format}', name: 'annotations_put_annotation', methods: ['PUT'], defaults: ['_format' => 'json'])]
#[IsGranted('EDIT', subject: 'annotation')]
public function putAnnotationAction(Request $request, Annotation $annotation)
{
try {
$annotation = $this->validateAnnotation($annotationRepository, $annotation, $this->getUser()->getId());
$data = json_decode($request->getContent(), true, 512, \JSON_THROW_ON_ERROR);
$form = $this->formFactory->createNamed('', EditAnnotationType::class, $annotation, [
@ -116,7 +111,7 @@ class AnnotationController extends AbstractFOSRestController
return JsonResponse::fromJsonString($json);
}
return $form;
return new JsonResponse(status: 400);
} catch (\InvalidArgumentException $e) {
throw new NotFoundHttpException($e);
}
@ -127,15 +122,13 @@ class AnnotationController extends AbstractFOSRestController
*
* @see Api\WallabagRestController
*
* @Route("/annotations/{annotation}.{_format}", methods={"DELETE"}, name="annotations_delete_annotation", defaults={"_format": "json"})
*
* @return JsonResponse
*/
public function deleteAnnotationAction(AnnotationRepository $annotationRepository, int $annotation)
#[Route(path: '/annotations/{annotation}.{_format}', name: 'annotations_delete_annotation', methods: ['DELETE'], defaults: ['_format' => 'json'])]
#[IsGranted('DELETE', subject: 'annotation')]
public function deleteAnnotationAction(Annotation $annotation)
{
try {
$annotation = $this->validateAnnotation($annotationRepository, $annotation, $this->getUser()->getId());
$this->entityManager->remove($annotation);
$this->entityManager->flush();
@ -157,15 +150,4 @@ class AnnotationController extends AbstractFOSRestController
return $user;
}
private function validateAnnotation(AnnotationRepository $annotationRepository, int $annotationId, int $userId)
{
$annotation = $annotationRepository->findOneByIdAndUserId($annotationId, $userId);
if (null === $annotation) {
throw new NotFoundHttpException();
}
return $annotation;
}
}

View File

@ -4,6 +4,7 @@ namespace Wallabag\Controller\Api;
use Nelmio\ApiDocBundle\Annotation\Operation;
use OpenApi\Annotations as OA;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\IsGranted;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Annotation\Route;
@ -34,14 +35,12 @@ class AnnotationRestController extends WallabagRestController
* )
* )
*
* @Route("/api/annotations/{entry}.{_format}", methods={"GET"}, name="api_get_annotations", defaults={"_format": "json"})
*
* @return Response
*/
#[Route(path: '/api/annotations/{entry}.{_format}', name: 'api_get_annotations', methods: ['GET'], defaults: ['_format' => 'json'])]
#[IsGranted('LIST_ANNOTATIONS', subject: 'entry')]
public function getAnnotationsAction(Entry $entry)
{
$this->validateAuthentication();
return $this->forward('Wallabag\Controller\AnnotationController::getAnnotationsAction', [
'entry' => $entry,
]);
@ -100,14 +99,12 @@ class AnnotationRestController extends WallabagRestController
* )
* )
*
* @Route("/api/annotations/{entry}.{_format}", methods={"POST"}, name="api_post_annotation", defaults={"_format": "json"})
*
* @return Response
*/
#[Route(path: '/api/annotations/{entry}.{_format}', name: 'api_post_annotation', methods: ['POST'], defaults: ['_format' => 'json'])]
#[IsGranted('CREATE_ANNOTATIONS', subject: 'entry')]
public function postAnnotationAction(Request $request, Entry $entry)
{
$this->validateAuthentication();
return $this->forward('Wallabag\Controller\AnnotationController::postAnnotationAction', [
'request' => $request,
'entry' => $entry,
@ -136,14 +133,12 @@ class AnnotationRestController extends WallabagRestController
* )
* )
*
* @Route("/api/annotations/{annotation}.{_format}", methods={"PUT"}, name="api_put_annotation", defaults={"_format": "json"})
*
* @return Response
*/
public function putAnnotationAction(int $annotation, Request $request)
#[Route(path: '/api/annotations/{annotation}.{_format}', name: 'api_put_annotation', methods: ['PUT'], defaults: ['_format' => 'json'])]
#[IsGranted('EDIT', subject: 'annotation')]
public function putAnnotationAction(Annotation $annotation, Request $request)
{
$this->validateAuthentication();
return $this->forward('Wallabag\Controller\AnnotationController::putAnnotationAction', [
'annotation' => $annotation,
'request' => $request,
@ -172,14 +167,12 @@ class AnnotationRestController extends WallabagRestController
* )
* )
*
* @Route("/api/annotations/{annotation}.{_format}", methods={"DELETE"}, name="api_delete_annotation", defaults={"_format": "json"})
*
* @return Response
*/
public function deleteAnnotationAction(int $annotation)
#[Route(path: '/api/annotations/{annotation}.{_format}', name: 'api_delete_annotation', methods: ['DELETE'], defaults: ['_format' => 'json'])]
#[IsGranted('DELETE', subject: 'annotation')]
public function deleteAnnotationAction(Annotation $annotation)
{
$this->validateAuthentication();
return $this->forward('Wallabag\Controller\AnnotationController::deleteAnnotationAction', [
'annotation' => $annotation,
]);

Some files were not shown because too many files have changed in this diff Show More