Compare commits

..

624 Commits

Author SHA1 Message Date
42c4ad0f93 WIP 2020-06-15 10:33:58 +02:00
d388debcab Merge pull request #4439 from wallabag/dependabot/composer/symfony/symfony-3.4.42
Bump symfony/symfony from 3.4.41 to 3.4.42
2020-06-15 07:04:24 +02:00
a3da7e0686 Bump symfony/symfony from 3.4.41 to 3.4.42
Bumps [symfony/symfony](https://github.com/symfony/symfony) from 3.4.41 to 3.4.42.
- [Release notes](https://github.com/symfony/symfony/releases)
- [Changelog](https://github.com/symfony/symfony/blob/v3.4.42/CHANGELOG-3.4.md)
- [Commits](https://github.com/symfony/symfony/compare/v3.4.41...v3.4.42)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-06-15 02:23:05 +00:00
a29a15c98d Merge pull request #4438 from wallabag/dependabot/composer/scheb/two-factor-bundle-4.18.0
Bump scheb/two-factor-bundle from 4.16.0 to 4.18.0
2020-06-13 10:10:48 +02:00
bd79c8244e Bump scheb/two-factor-bundle from 4.16.0 to 4.18.0
Bumps [scheb/two-factor-bundle](https://github.com/scheb/two-factor-bundle) from 4.16.0 to 4.18.0.
- [Release notes](https://github.com/scheb/two-factor-bundle/releases)
- [Commits](https://github.com/scheb/two-factor-bundle/compare/v4.16.0...v4.18.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-06-13 05:43:07 +00:00
6c56444c4e Merge pull request #4421 from wallabag/fix/security-two-factor
Upgrade scheb/two-factor-bundle to fix vulnerability
2020-06-13 07:38:37 +02:00
a0c838507d Merge pull request #4433 from wallabag/dependabot/npm_and_yarn/websocket-extensions-0.1.4
Bump websocket-extensions from 0.1.3 to 0.1.4
2020-06-08 05:05:18 +02:00
ba6d991f6e Bump websocket-extensions from 0.1.3 to 0.1.4
Bumps [websocket-extensions](https://github.com/faye/websocket-extensions-node) from 0.1.3 to 0.1.4.
- [Release notes](https://github.com/faye/websocket-extensions-node/releases)
- [Changelog](https://github.com/faye/websocket-extensions-node/blob/master/CHANGELOG.md)
- [Commits](https://github.com/faye/websocket-extensions-node/compare/0.1.3...0.1.4)

Signed-off-by: dependabot[bot] <support@github.com>
2020-06-06 13:56:31 +00:00
79f1a8a0cc Merge pull request #4428 from wallabag/dependabot/composer/j0k3r/graby-2.2.1
Bump j0k3r/graby from 2.2.0 to 2.2.1
2020-06-04 04:52:37 +02:00
c99caa0968 Bump j0k3r/graby from 2.2.0 to 2.2.1
Bumps [j0k3r/graby](https://github.com/j0k3r/graby) from 2.2.0 to 2.2.1.
- [Release notes](https://github.com/j0k3r/graby/releases)
- [Commits](https://github.com/j0k3r/graby/compare/2.2.0...2.2.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-06-04 02:16:58 +00:00
2a253d24ca Upgrade scheb/two-factor-bundle to fix vulnerability
The bundle was locked to a version which contains a security bug.
Jumping to the most recent fix the issue.

But we'll have the `ListenerInterface` issue, again.
So, downgrading sentry-symfony instead.

See 0cf743f6fb
2020-06-02 07:53:26 +02:00
3095c0d51f Merge pull request #4425 from wallabag/dependabot/composer/symfony/symfony-3.4.41
Bump symfony/symfony from 3.4.40 to 3.4.41
2020-06-02 07:45:49 +02:00
e2a6487b4f Merge pull request #4423 from wallabag/dependabot/composer/symfony/maker-bundle-1.19.0
Bump symfony/maker-bundle from 1.18.0 to 1.19.0
2020-06-02 05:48:01 +02:00
aaedb0ad3c Bump symfony/symfony from 3.4.40 to 3.4.41
Bumps [symfony/symfony](https://github.com/symfony/symfony) from 3.4.40 to 3.4.41.
- [Release notes](https://github.com/symfony/symfony/releases)
- [Changelog](https://github.com/symfony/symfony/blob/v3.4.41/CHANGELOG-3.4.md)
- [Commits](https://github.com/symfony/symfony/compare/v3.4.40...v3.4.41)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-06-01 02:24:42 +00:00
b83855b00b Bump symfony/maker-bundle from 1.18.0 to 1.19.0
Bumps [symfony/maker-bundle](https://github.com/symfony/maker-bundle) from 1.18.0 to 1.19.0.
- [Release notes](https://github.com/symfony/maker-bundle/releases)
- [Changelog](https://github.com/symfony/maker-bundle/blob/master/CHANGELOG.md)
- [Commits](https://github.com/symfony/maker-bundle/compare/v1.18.0...v1.19.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-06-01 02:19:10 +00:00
b75b649eff Merge pull request #4418 from wallabag/dependabot/composer/doctrine/doctrine-bundle-1.12.10
Bump doctrine/doctrine-bundle from 1.12.8 to 1.12.10
2020-05-26 06:05:09 +02:00
03ac06a84e Bump doctrine/doctrine-bundle from 1.12.8 to 1.12.10
Bumps [doctrine/doctrine-bundle](https://github.com/doctrine/DoctrineBundle) from 1.12.8 to 1.12.10.
- [Release notes](https://github.com/doctrine/DoctrineBundle/releases)
- [Commits](https://github.com/doctrine/DoctrineBundle/compare/1.12.8...1.12.10)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-05-26 02:43:32 +00:00
d647e50597 Merge pull request #4416 from wallabag/update-deps
Update deps
2020-05-25 18:10:41 +02:00
0cf743f6fb Lock scheb/two-factor-bundle to avoid issue with ListenerInterface / TwoFactorListener
- v4.6.0 introduce a fix for "deprecated listener for Symfony < 4.3"
- but sentry-symfony 3.3.0 introduce a bug in the workaround previous fix
- which was fixed in sentry-symfony 3.4.2
- we can't upgrade to that version because it requires sentry/sdk 2.1 which use `php-http/guzzle6-adapter` instead of curl
- as we are using guzzle5, we can't upgrade and fix the listerner issue
2020-05-25 07:14:00 +02:00
2a74acb77f Update deps
- Clean Travis config file
  - Only cache deps from composer (avoiding metadata to invalid Travis cache)
  - Update config file to match future version from Travis
  - Remove useless (not so working) `travis_fold`
- Remove `SensioGeneratorBundle` and use `MakerBundle`
  ```
  Package sensio/generator-bundle is abandoned, you should avoid using it. Use symfony/maker-bundle instead.
  ```
- Sort packages in `composer.json`
- Use `laminas/*` package to remove deprecated `zendframework/*` ones:
  ```
  Package zendframework/zend-code is abandoned, you should avoid using it. Use laminas/laminas-code instead.
  Package zendframework/zend-diactoros is abandoned, you should avoid using it. Use laminas/laminas-diactoros instead.
  Package zendframework/zend-eventmanager is abandoned, you should avoid using it. Use laminas/laminas-eventmanager instead.
  ```
2020-05-25 06:28:04 +02:00
372810b687 Merge pull request #4410 from wallabag/dependabot/composer/friendsofsymfony/jsrouting-bundle-2.6.0
Bump friendsofsymfony/jsrouting-bundle from 2.5.4 to 2.6.0
2020-05-25 06:09:33 +02:00
9dfceff022 Fix test 2020-05-25 05:50:11 +02:00
0db1322941 Bump friendsofsymfony/jsrouting-bundle from 2.5.4 to 2.6.0
Bumps [friendsofsymfony/jsrouting-bundle](https://github.com/FriendsOfSymfony/FOSJsRoutingBundle) from 2.5.4 to 2.6.0.
- [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.5.4...2.6.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-05-21 02:18:41 +00:00
bf7cf20b44 Merge pull request #4385 from Simounet/feat/side-nav-hidden-mobile-add-tag
Side nav hidden on mobile tag adding
2020-05-13 05:05:15 +02:00
29e16095f4 Merge pull request #4392 from wallabag/dependabot/composer/scheb/two-factor-bundle-4.16.0
Bump scheb/two-factor-bundle from 4.15.0 to 4.16.0
2020-05-11 05:16:33 +02:00
27113f4562 Bump scheb/two-factor-bundle from 4.15.0 to 4.16.0
Bumps [scheb/two-factor-bundle](https://github.com/scheb/two-factor-bundle) from 4.15.0 to 4.16.0.
- [Release notes](https://github.com/scheb/two-factor-bundle/releases)
- [Commits](https://github.com/scheb/two-factor-bundle/compare/v4.15.0...v4.16.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-05-11 02:23:56 +00:00
a5ac604683 Side nav hidden on mobile tag adding 2020-05-06 22:27:11 +02:00
557e810c1f Merge pull request #4363 from wallabag/piwik-to-matomo
Upgrade Piwik Twig Extension to Matomo
2020-04-30 09:14:52 +02:00
23ea2c8f74 Merge pull request #4370 from wallabag/dependabot/composer/scheb/two-factor-bundle-4.15.0
Bump scheb/two-factor-bundle from 4.14.0 to 4.15.0
2020-04-30 06:28:38 +02:00
b3223101d0 Bump scheb/two-factor-bundle from 4.14.0 to 4.15.0
Bumps [scheb/two-factor-bundle](https://github.com/scheb/two-factor-bundle) from 4.14.0 to 4.15.0.
- [Release notes](https://github.com/scheb/two-factor-bundle/releases)
- [Commits](https://github.com/scheb/two-factor-bundle/compare/v4.14.0...v4.15.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-30 02:19:01 +00:00
9717d01298 Upgrade Piwik Twig Extension to Matomo 2020-04-29 14:19:31 +02:00
0914a6f2fd Merge pull request #4366 from AKKED/patch-8
Update Japanese translation (messages.ja.yml)
2020-04-29 09:54:48 +02:00
438a05c3c8 Update Japanese translation (messages.ja.yml) 2020-04-29 15:53:37 +09:00
ba9e1c02ae Merge pull request #4364 from wallabag/dependabot/composer/symfony/symfony-3.4.40
Bump symfony/symfony from 3.4.39 to 3.4.40
2020-04-29 04:43:16 +02:00
5e39e5b6a9 Bump symfony/symfony from 3.4.39 to 3.4.40
Bumps [symfony/symfony](https://github.com/symfony/symfony) from 3.4.39 to 3.4.40.
- [Release notes](https://github.com/symfony/symfony/releases)
- [Changelog](https://github.com/symfony/symfony/blob/v3.4.40/CHANGELOG-3.4.md)
- [Commits](https://github.com/symfony/symfony/compare/v3.4.39...v3.4.40)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-29 02:19:13 +00:00
d50c93f055 Merge pull request #4358 from JeanGauthier/master
Update messages.oc.yml
2020-04-28 09:21:54 +02:00
976b4bbb11 Merge pull request #4360 from wallabag/config-mass-delete
Added confirmation before mass deleting articles
2020-04-27 17:57:25 +02:00
b33226c3a2 Update messages.oc.yml 2020-04-27 11:49:02 +02:00
e247450ade Added confirmation before mass deleting articles 2020-04-27 11:42:41 +02:00
61007d58dd Update messages.oc.yml 2020-04-27 11:17:57 +02:00
34fe51454a Merge pull request #4309 from wallabag/fix/php-7.4
Replace wallabag's fork of tcpdf with the original one, PHP 7.4 support
2020-04-27 08:59:56 +02:00
b23d9403ec Merge pull request #4343 from wallabag/enhance-material-nav
Enhanced navigation menu in material theme
2020-04-27 06:08:10 +02:00
a08b0bf828 Update messages.oc.yml 2020-04-26 22:56:18 +02:00
d9a68f6ced Enhanced navigation menu in material theme 2020-04-26 21:08:22 +02:00
7f88c7423f Replace wallabag's fork of tcpdf with the original one, fix notices for PHP 7.4
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2020-04-26 18:29:34 +02:00
0e8a0f77d0 Merge pull request #4026 from wallabag/3760-ignorelist-db
Move Ignore Origin rules to database
2020-04-26 15:39:57 +02:00
71f7e58fbd tests: add a NetworkCalls group for tests making network calls
Excluding this group can decrease the run time of tests during
development.

Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2020-04-25 15:59:23 +02:00
25c754f62f views: Add doc and translations on ignore origin rules forms
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2020-04-25 15:59:23 +02:00
7408a6cb68 Add controller, views and translations for ignore origin instance rules
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2020-04-25 15:59:23 +02:00
b22eb27623 ContentProxy: replace ignoreUrl with new RuleBasedIgnoreOriginProcessor
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2020-04-25 15:59:23 +02:00
2495b19761 Add default system-wide ignore origin rules with install support
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2020-04-25 15:59:23 +02:00
f39c5a2a70 Add new Helper to process Ignore Origin rules and RulerZ operator
This commits adds a new helper like RuleBasedTagger for processing
ignore origin rules. It also adds a new custom RulerZ operator for the
'~' pattern matching rule.

Renames 'pattern' with '_all' in IgnoreOriginRule entity.

Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2020-04-25 15:59:23 +02:00
24230a5130 Add new Ignore Origin rules tab, update ConfigController
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2020-04-25 15:59:23 +02:00
c675bd11c6 Add IgnoreOriginRule-related entities, db migration, update config
Add IgnoreOriginUserRule for user-defined rules and
IgnoreOriginInstanceRule for system-wide rules. Add an interface for
these two new entities.

Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2020-04-25 15:59:23 +02:00
8a8a78a64c Merge pull request #4326 from wallabag/mass-actions
Added mass actions for Material design in list view
2020-04-24 09:37:23 +02:00
467327771a Added mass actions for Material design in list view 2020-04-24 09:12:57 +02:00
31e3a233a4 Merge pull request #4353 from wallabag/dependabot/composer/friendsofsymfony/rest-bundle-2.7.4
Bump friendsofsymfony/rest-bundle from 2.7.3 to 2.7.4
2020-04-24 05:43:54 +02:00
4e3d0afc73 Merge pull request #4354 from wallabag/dependabot/composer/doctrine/doctrine-bundle-1.12.8
Bump doctrine/doctrine-bundle from 1.12.7 to 1.12.8
2020-04-24 05:43:16 +02:00
1ae6f32b82 Bump doctrine/doctrine-bundle from 1.12.7 to 1.12.8
Bumps [doctrine/doctrine-bundle](https://github.com/doctrine/DoctrineBundle) from 1.12.7 to 1.12.8.
- [Release notes](https://github.com/doctrine/DoctrineBundle/releases)
- [Commits](https://github.com/doctrine/DoctrineBundle/compare/1.12.7...1.12.8)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-24 02:27:52 +00:00
26e5b452a6 Bump friendsofsymfony/rest-bundle from 2.7.3 to 2.7.4
Bumps [friendsofsymfony/rest-bundle](https://github.com/FriendsOfSymfony/FOSRestBundle) from 2.7.3 to 2.7.4.
- [Release notes](https://github.com/FriendsOfSymfony/FOSRestBundle/releases)
- [Changelog](https://github.com/FriendsOfSymfony/FOSRestBundle/blob/master/CHANGELOG.md)
- [Commits](https://github.com/FriendsOfSymfony/FOSRestBundle/compare/2.7.3...2.7.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-24 02:20:59 +00:00
3252f20102 Merge pull request #4349 from wallabag/dependabot/composer/j0k3r/graby-2.2.0
Bump j0k3r/graby from 2.1.1 to 2.2.0
2020-04-23 06:41:30 +02:00
692501f23e Bump j0k3r/graby from 2.1.1 to 2.2.0
Bumps [j0k3r/graby](https://github.com/j0k3r/graby) from 2.1.1 to 2.2.0.
- [Release notes](https://github.com/j0k3r/graby/releases)
- [Commits](https://github.com/j0k3r/graby/compare/2.1.1...2.2.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-23 02:15:52 +00:00
6bd8f626e4 Merge pull request #4347 from wallabag/article-stats-grey
🎨 Changed visibility for article stats
2020-04-22 15:12:37 +02:00
01f8a776a4 Fixed unit tests 2020-04-22 14:58:37 +02:00
a6b5b8f7a9 Changed visibility for article stats 2020-04-22 14:58:24 +02:00
b367534991 Merge pull request #4346 from wallabag/add-color-coherence
🎨 Added more coherence with color links for material theme
2020-04-22 12:25:26 +02:00
558651783a Added more coherence with color links for material theme 2020-04-21 17:30:39 +02:00
2ca2ed39fd Merge pull request #4310 from wallabag/fix/4216
TagController: fix duplicated tags when renaming them
2020-04-20 18:02:31 +02:00
7443da479f Merge pull request #4136 from wallabag/improve-tags-list
Improved tags list
2020-04-20 12:14:54 +02:00
5434577883 Improved tags list for material view 2020-04-20 11:39:35 +02:00
361aa02e2a Merge pull request #4338 from wallabag/dependabot/composer/html2text/html2text-4.3.1
Bump html2text/html2text from 4.2.1 to 4.3.1
2020-04-20 05:20:49 +02:00
ca7e0756db Bump html2text/html2text from 4.2.1 to 4.3.1
Bumps [html2text/html2text](https://github.com/mtibben/html2text) from 4.2.1 to 4.3.1.
- [Release notes](https://github.com/mtibben/html2text/releases)
- [Commits](https://github.com/mtibben/html2text/compare/4.2.1...4.3.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-20 02:41:47 +00:00
48f9a9632d TagController: support merging labels when renaming one with label of another
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2020-04-18 18:12:33 +02:00
a19caf8a37 TagController: prevent tag deletion when renaming a tag with the same label
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2020-04-18 18:09:07 +02:00
39133eb796 TagController: fix duplicated tags when renaming them
The fix relies on a workaround available on TagsAssigner, see the
AssignTagsToEntry() signature for detail.

I replaced the findOneByLabel in the corresponding test to assert that
there is no duplicate.

Fixes #4216

Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2020-04-18 18:09:07 +02:00
f3565ea2bf Merge pull request #4336 from wallabag/dependabot/composer/friendsofsymfony/jsrouting-bundle-2.5.4
Bump friendsofsymfony/jsrouting-bundle from 2.5.3 to 2.5.4
2020-04-16 05:05:19 +02:00
395e6bfcee Bump friendsofsymfony/jsrouting-bundle from 2.5.3 to 2.5.4
Bumps [friendsofsymfony/jsrouting-bundle](https://github.com/FriendsOfSymfony/FOSJsRoutingBundle) from 2.5.3 to 2.5.4.
- [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.5.3...2.5.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-16 02:36:24 +00:00
7b948005be Merge pull request #4335 from wallabag/dependabot/composer/friendsofphp/php-cs-fixer-2.16.3
Bump friendsofphp/php-cs-fixer from 2.16.2 to 2.16.3
2020-04-16 04:36:09 +02:00
facf7511ca Bump friendsofphp/php-cs-fixer from 2.16.2 to 2.16.3
Bumps [friendsofphp/php-cs-fixer](https://github.com/FriendsOfPHP/PHP-CS-Fixer) from 2.16.2 to 2.16.3.
- [Release notes](https://github.com/FriendsOfPHP/PHP-CS-Fixer/releases)
- [Changelog](https://github.com/FriendsOfPHP/PHP-CS-Fixer/blob/2.16/CHANGELOG.md)
- [Commits](https://github.com/FriendsOfPHP/PHP-CS-Fixer/compare/v2.16.2...v2.16.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-16 02:21:51 +00:00
35359a23c1 Merge pull request #4329 from wallabag/add-2fa-disable
Added a button to disable 2FA when enabled
2020-04-14 19:59:54 +02:00
e349c879fa Changed color for disable button 2020-04-14 16:12:55 +02:00
2b21cc8869 Merge pull request #4325 from wallabag/fix-paywall-import-cron
Added authentication during import command for paywalled websites
2020-04-13 18:27:52 +02:00
4ff1efa418 Added a button to disable 2FA when enabled 2020-04-13 17:00:53 +02:00
b4ecbf2bb2 Merge pull request #4328 from wallabag/dependabot/composer/doctrine/doctrine-fixtures-bundle-3.3.1
Bump doctrine/doctrine-fixtures-bundle from 3.3.0 to 3.3.1
2020-04-13 05:36:53 +02:00
fc096bdc32 Merge pull request #4327 from wallabag/dependabot/composer/friendsofphp/php-cs-fixer-2.16.2
Bump friendsofphp/php-cs-fixer from 2.16.1 to 2.16.2
2020-04-13 05:36:22 +02:00
20a99c772a Bump doctrine/doctrine-fixtures-bundle from 3.3.0 to 3.3.1
Bumps [doctrine/doctrine-fixtures-bundle](https://github.com/doctrine/DoctrineFixturesBundle) from 3.3.0 to 3.3.1.
- [Release notes](https://github.com/doctrine/DoctrineFixturesBundle/releases)
- [Changelog](https://github.com/doctrine/DoctrineFixturesBundle/blob/master/CHANGELOG-3.1.md)
- [Commits](https://github.com/doctrine/DoctrineFixturesBundle/compare/3.3.0...3.3.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-13 02:32:39 +00:00
78eae449aa Bump friendsofphp/php-cs-fixer from 2.16.1 to 2.16.2
Bumps [friendsofphp/php-cs-fixer](https://github.com/FriendsOfPHP/PHP-CS-Fixer) from 2.16.1 to 2.16.2.
- [Release notes](https://github.com/FriendsOfPHP/PHP-CS-Fixer/releases)
- [Changelog](https://github.com/FriendsOfPHP/PHP-CS-Fixer/blob/2.16/CHANGELOG.md)
- [Commits](https://github.com/FriendsOfPHP/PHP-CS-Fixer/compare/v2.16.1...v2.16.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-13 02:18:53 +00:00
607e1a1a13 Added authentication during import command for paywalled websites 2020-04-12 15:35:00 +02:00
365b3dd21f Merge pull request #4319 from wallabag/feature/token-lifetime-parameters
Add ability to define lifetime token for the API
2020-04-08 15:18:21 +02:00
d20a8c5fb4 Add ability to define lifetime token for the API
It'll allow admin of a wallabag instance to define its own lifetime for the refresh token and the access token.
The default value are the recommended one from the wallabag team.
2020-04-08 09:18:17 +02:00
023c8117ec Merge pull request #4318 from wallabag/change-auth-graby
Changed authentication order in GrabySiteConfigBuilder
2020-04-07 17:23:20 +02:00
de9b5b5f4c Changed authentication order in GrabySiteConfigBuilder 2020-04-07 17:12:19 +02:00
b283ee0d6d Merge pull request #4315 from wallabag/add-published-date-epub
Added publication date on epub export
2020-04-06 19:58:33 +02:00
4d3478ec53 Merge pull request #4317 from wallabag/enhance-article-display
Enhanced article display
2020-04-06 18:00:36 +02:00
a0cb41c509 Merge pull request #4316 from wallabag/fix-remove-pictures-api
Fixed bug when we delete entry via API
2020-04-06 17:59:58 +02:00
1598d13248 Enhanced article display
Fixes #4153
2020-04-06 16:32:09 +02:00
0bddd34847 Added publication date on epub export 2020-04-06 16:14:36 +02:00
a07872238b Fixed bug when we delete entry via API
Fixes #4291
2020-04-06 16:11:05 +02:00
fbfeb20062 Merge pull request #4308 from AKKED/patch-6
update Japanese translation
2020-04-03 23:39:26 +02:00
f547e4a7d4 update Japanese translation
- Some mistranslations have been corrected.
- Some expressions have been updated to make them easier to understand.
2020-04-04 04:31:05 +09:00
8b165a9a50 Merge pull request #4305 from wallabag/dependabot/composer/symfony/symfony-3.4.39
Bump symfony/symfony from 3.4.38 to 3.4.39
2020-03-31 16:11:28 +02:00
3cd659fc34 Fix tests 2020-03-31 15:56:48 +02:00
fdf90f8411 Bump symfony/symfony from 3.4.38 to 3.4.39
Bumps [symfony/symfony](https://github.com/symfony/symfony) from 3.4.38 to 3.4.39.
- [Release notes](https://github.com/symfony/symfony/releases)
- [Changelog](https://github.com/symfony/symfony/blob/v3.4.39/CHANGELOG-3.4.md)
- [Commits](https://github.com/symfony/symfony/compare/v3.4.38...v3.4.39)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-03-31 02:28:49 +00:00
d31f70bfac Merge pull request #4302 from wallabag/9f88d2f8
Replace grandt/phpepub with wallabag version
2020-03-30 10:14:19 +02:00
bbf909ae6e Merge pull request #4304 from wallabag/dependabot/composer/friendsofsymfony/rest-bundle-2.7.3
Bump friendsofsymfony/rest-bundle from 2.7.2 to 2.7.3
2020-03-30 05:48:32 +02:00
ff6272204e Bump friendsofsymfony/rest-bundle from 2.7.2 to 2.7.3
Bumps [friendsofsymfony/rest-bundle](https://github.com/FriendsOfSymfony/FOSRestBundle) from 2.7.2 to 2.7.3.
- [Release notes](https://github.com/FriendsOfSymfony/FOSRestBundle/releases)
- [Changelog](https://github.com/FriendsOfSymfony/FOSRestBundle/blob/master/CHANGELOG.md)
- [Commits](https://github.com/FriendsOfSymfony/FOSRestBundle/compare/2.7.2...2.7.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-03-30 02:39:21 +00:00
9d196fcc15 composer: replace grandt/phpepub with wallabag version
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2020-03-29 16:27:31 +02:00
6277578d4f Merge pull request #4303 from wallabag/fix/cleanup-cookie
Cleanup cookie jar
2020-03-29 15:30:13 +02:00
b12e23ad8a Cleanup cookie jar
As of latest Guzzle release, it's fixed so we can removed that code.
2020-03-29 11:39:49 +02:00
c9b83a13c0 Merge pull request #4274 from AKKED/add_ja
add Japanese translation
2020-03-28 17:16:37 +01:00
11079d204d Merge pull request #4272 from Simounet/feat/load-custom-css-only-if-exists
Load custom.css only if exists
2020-03-28 16:49:29 +01:00
7d4176b27b Add Japanese translation 2020-03-28 16:47:44 +01:00
d8a40d703e Merge pull request #4281 from lizyn/zh_translation
Added language support for Simplified Chinese(简体中文)
2020-03-28 16:39:17 +01:00
26467fa6b4 Merge pull request #4299 from wallabag/fix/4133
Fix createdAt filter on material
2020-03-28 16:38:12 +01:00
dcfce54681 Merge pull request #4285 from wallabag/dependabot/composer/symfony/symfony-3.4.38
Bump symfony/symfony from 3.4.37 to 3.4.38
2020-03-27 15:55:49 +01:00
d15be99648 Merge pull request #4295 from wallabag/dependabot/composer/incenteev/composer-parameter-handler-2.1.4
Bump incenteev/composer-parameter-handler from 2.1.3 to 2.1.4
2020-03-27 15:52:14 +01:00
8ee7b1603d Fix createdAt date range filter
- hiddenName has been disabled in order to fix the missing date range
  values when using the material theme
- data format has been changed to 'Y-m-d' in order to comply with the
  browser date input default format
- tests: date() and strtotime have been replaced with DateTime-related
  objects

Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2020-03-22 17:01:39 +01:00
ef81e3c89b tests: replace baggy theme used in EntryController tests
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2020-03-22 17:01:39 +01:00
7fc38f667b misc: reindent EntryFilterType
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2020-03-21 00:43:01 +01:00
91c318e870 Bump incenteev/composer-parameter-handler from 2.1.3 to 2.1.4
Bumps [incenteev/composer-parameter-handler](https://github.com/Incenteev/ParameterHandler) from 2.1.3 to 2.1.4.
- [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.1.3...v2.1.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-03-18 03:54:46 +00:00
f3b1ec121d Merge pull request #4293 from wallabag/dependabot/composer/friendsofsymfony/oauth2-php-1.3.0
[Security] Bump friendsofsymfony/oauth2-php from 1.2.3 to 1.3.0
2020-03-15 16:51:37 +01:00
2226c81340 Merge pull request #4290 from wallabag/ab0c5ef1
Remove capistrano-related files
2020-03-15 13:55:14 +01:00
f38b8f0d86 Merge pull request #4278 from wallabag/fix/4240
Fix entries export from search view
2020-03-15 13:54:44 +01:00
f3db257902 [Security] Bump friendsofsymfony/oauth2-php from 1.2.3 to 1.3.0
Bumps [friendsofsymfony/oauth2-php](https://github.com/FriendsOfSymfony/oauth2-php) from 1.2.3 to 1.3.0. **This update includes a security fix.**
- [Release notes](https://github.com/FriendsOfSymfony/oauth2-php/releases)
- [Changelog](https://github.com/FriendsOfSymfony/oauth2-php/blob/master/CHANGELOG.txt)
- [Commits](https://github.com/FriendsOfSymfony/oauth2-php/compare/1.2.3...1.3.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-03-15 11:27:16 +00:00
899ab0d04f Remove capistrano-related files
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2020-03-08 17:00:51 +01:00
ba820b12b6 Merge pull request #4287 from wallabag/dependabot/composer/friendsofsymfony/rest-bundle-2.7.2
Bump friendsofsymfony/rest-bundle from 2.7.1 to 2.7.2
2020-03-06 16:52:04 +01:00
552957bbf1 Bump friendsofsymfony/rest-bundle from 2.7.1 to 2.7.2
Bumps [friendsofsymfony/rest-bundle](https://github.com/FriendsOfSymfony/FOSRestBundle) from 2.7.1 to 2.7.2.
- [Release notes](https://github.com/FriendsOfSymfony/FOSRestBundle/releases)
- [Changelog](https://github.com/FriendsOfSymfony/FOSRestBundle/blob/master/CHANGELOG.md)
- [Commits](https://github.com/FriendsOfSymfony/FOSRestBundle/compare/2.7.1...2.7.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-03-05 03:49:44 +00:00
ec37106f32 Bump symfony/symfony from 3.4.37 to 3.4.38
Bumps [symfony/symfony](https://github.com/symfony/symfony) from 3.4.37 to 3.4.38.
- [Release notes](https://github.com/symfony/symfony/releases)
- [Changelog](https://github.com/symfony/symfony/blob/v3.4.38/CHANGELOG-3.4.md)
- [Commits](https://github.com/symfony/symfony/compare/v3.4.37...v3.4.38)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-03-02 03:30:42 +00:00
a167f002bb Merge pull request #4282 from wallabag/dependabot/composer/friendsofsymfony/rest-bundle-2.7.1
Bump friendsofsymfony/rest-bundle from 2.7.0 to 2.7.1
2020-02-29 12:20:33 +01:00
d3c8bf87c2 Bump friendsofsymfony/rest-bundle from 2.7.0 to 2.7.1
Bumps [friendsofsymfony/rest-bundle](https://github.com/FriendsOfSymfony/FOSRestBundle) from 2.7.0 to 2.7.1.
- [Release notes](https://github.com/FriendsOfSymfony/FOSRestBundle/releases)
- [Changelog](https://github.com/FriendsOfSymfony/FOSRestBundle/blob/2.7.1/CHANGELOG.md)
- [Commits](https://github.com/FriendsOfSymfony/FOSRestBundle/compare/2.7.0...2.7.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-02-25 04:01:53 +00:00
9ce18f06c3 Added Simplified Chinese as a language option 2020-02-25 00:19:04 +08:00
4a654ae49a Added translation in Simplified Chinese(简体中文) 2020-02-25 00:13:26 +08:00
b19df31d78 Merge pull request #1 from wallabag/master
Keep up with the master again
2020-02-24 10:04:13 +08:00
80609790ca travis: remove double triggers for PR, remove nightly
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2020-02-23 00:43:26 +01:00
93c5b47e88 ExportController: fix entries export from search view
Fixes #4240

Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2020-02-23 00:43:21 +01:00
04d918cae0 Merge pull request #4280 from wallabag/dependabot/composer/scheb/two-factor-bundle-4.14.0
Bump scheb/two-factor-bundle from 4.13.0 to 4.14.0
2020-02-19 21:35:16 +01:00
de166a37d4 Bump scheb/two-factor-bundle from 4.13.0 to 4.14.0
Bumps [scheb/two-factor-bundle](https://github.com/scheb/two-factor-bundle) from 4.13.0 to 4.14.0.
- [Release notes](https://github.com/scheb/two-factor-bundle/releases)
- [Commits](https://github.com/scheb/two-factor-bundle/compare/v4.13.0...v4.14.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-02-17 04:06:40 +00:00
33e3eeaec8 Load custom.css only if exists 2020-02-07 13:21:48 +01:00
3bf941c4a4 Merge pull request #4277 from wallabag/dependabot/composer/symfony/phpunit-bridge-4.3.11
Bump symfony/phpunit-bridge from 4.3.10 to 4.3.11
2020-02-03 07:23:56 +01:00
c1a201a472 Merge pull request #4276 from wallabag/dependabot/composer/scheb/two-factor-bundle-4.13.0
Bump scheb/two-factor-bundle from 4.12.0 to 4.13.0
2020-02-03 07:23:22 +01:00
e09f585232 Merge pull request #4275 from wallabag/dependabot/composer/friendsofsymfony/rest-bundle-2.7.0
Bump friendsofsymfony/rest-bundle from 2.6.0 to 2.7.0
2020-02-03 07:22:35 +01:00
2a59cfa331 Bump symfony/phpunit-bridge from 4.3.10 to 4.3.11
Bumps [symfony/phpunit-bridge](https://github.com/symfony/phpunit-bridge) from 4.3.10 to 4.3.11.
- [Release notes](https://github.com/symfony/phpunit-bridge/releases)
- [Changelog](https://github.com/symfony/phpunit-bridge/blob/master/CHANGELOG.md)
- [Commits](https://github.com/symfony/phpunit-bridge/compare/v4.3.10...v4.3.11)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-02-03 04:16:45 +00:00
2ffaf28458 Bump scheb/two-factor-bundle from 4.12.0 to 4.13.0
Bumps [scheb/two-factor-bundle](https://github.com/scheb/two-factor-bundle) from 4.12.0 to 4.13.0.
- [Release notes](https://github.com/scheb/two-factor-bundle/releases)
- [Commits](https://github.com/scheb/two-factor-bundle/compare/v4.12.0...v4.13.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-02-03 04:08:18 +00:00
0c801a4758 Bump friendsofsymfony/rest-bundle from 2.6.0 to 2.7.0
Bumps [friendsofsymfony/rest-bundle](https://github.com/FriendsOfSymfony/FOSRestBundle) from 2.6.0 to 2.7.0.
- [Release notes](https://github.com/FriendsOfSymfony/FOSRestBundle/releases)
- [Changelog](https://github.com/FriendsOfSymfony/FOSRestBundle/blob/master/CHANGELOG.md)
- [Commits](https://github.com/FriendsOfSymfony/FOSRestBundle/compare/2.6.0...2.7.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-02-03 03:57:51 +00:00
62107f50d3 Merge pull request #4264 from herrriehm/master
cosmetic changes
2020-01-28 10:07:22 +01:00
8afcb3a647 Merge pull request #4257 from Simounet/feat/lang-attribute
Use lang attribute
2020-01-28 10:06:30 +01:00
1de4a8f938 Update messages.es.yml 2020-01-27 20:05:49 +01:00
97c6561d5c Merge pull request #4263 from wallabag/4251-firefox-print
Fix print of long pages
2020-01-27 08:50:57 +01:00
6fb7d4a7ae fixed annoying typo 2020-01-26 09:48:17 +01:00
20349b02dd Update wallabag.yml
reverted generic urls
2020-01-26 09:45:31 +01:00
1e921a657f cosmetic changes:
- http to https
- replaced generic .com by specific TLD
- updated some dead urls
2020-01-25 16:16:43 +01:00
3dcb701975 baggy: remove logo from printed pages
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2020-01-25 15:42:43 +01:00
45582f2992 material: replace display: flex with block in print mode
This change is a workaround for a reported issue with printing flex
items on Firefox

See: https://bugzilla.mozilla.org/show_bug.cgi?id=939897

Fixes #4251

Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2020-01-25 15:40:29 +01:00
52cd86f1c2 Merge pull request #4261 from wallabag/dependabot/composer/j0k3r/graby-2.1.1
Bump j0k3r/graby from 2.1.0 to 2.1.1
2020-01-24 07:26:32 +01:00
514c55a161 Bump j0k3r/graby from 2.1.0 to 2.1.1
Bumps [j0k3r/graby](https://github.com/j0k3r/graby) from 2.1.0 to 2.1.1.
- [Release notes](https://github.com/j0k3r/graby/releases)
- [Commits](https://github.com/j0k3r/graby/compare/2.1.0...2.1.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-24 03:48:48 +00:00
416d44d0ae Use lang attribute 2020-01-23 21:21:54 +01:00
fdb885ddbf Merge pull request #4260 from wallabag/dependabot/composer/symfony/symfony-3.4.37
Bump symfony/symfony from 3.4.36 to 3.4.37
2020-01-23 07:09:29 +01:00
94e7ba3174 Bump symfony/symfony from 3.4.36 to 3.4.37
Bumps [symfony/symfony](https://github.com/symfony/symfony) from 3.4.36 to 3.4.37.
- [Release notes](https://github.com/symfony/symfony/releases)
- [Changelog](https://github.com/symfony/symfony/blob/v3.4.37/CHANGELOG-3.4.md)
- [Commits](https://github.com/symfony/symfony/compare/v3.4.36...v3.4.37)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-23 04:33:53 +00:00
6f43803c58 Merge pull request #4258 from wallabag/dependabot/composer/symfony/phpunit-bridge-4.3.10
Bump symfony/phpunit-bridge from 4.3.9 to 4.3.10
2020-01-22 06:02:53 +01:00
509097b841 Bump symfony/phpunit-bridge from 4.3.9 to 4.3.10
Bumps [symfony/phpunit-bridge](https://github.com/symfony/phpunit-bridge) from 4.3.9 to 4.3.10.
- [Release notes](https://github.com/symfony/phpunit-bridge/releases)
- [Changelog](https://github.com/symfony/phpunit-bridge/blob/master/CHANGELOG.md)
- [Commits](https://github.com/symfony/phpunit-bridge/compare/v4.3.9...v4.3.10)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-22 04:21:14 +00:00
7937ed0c20 Merge pull request #4255 from Simounet/feat/actions-from-sticky-btn
Feat/actions from sticky btn
2020-01-21 15:32:41 +01:00
dc23bf9f29 Entry action buttons displayed on page end reached 2020-01-21 14:06:08 +01:00
cfd77d1c2a Sticky nav on entry action button click 2020-01-21 12:00:21 +01:00
996b2ec170 Merge pull request #4254 from Simounet/feat/sidebar-sub-entries-no-hover
Sidebar sub entries not conditioned by hover anymore
2020-01-21 10:31:03 +01:00
a5afdc539f Merge pull request #4256 from wallabag/dependabot/composer/doctrine/doctrine-bundle-1.12.7
Bump doctrine/doctrine-bundle from 1.12.6 to 1.12.7
2020-01-20 06:54:33 +01:00
0f4e90c1ac Bump doctrine/doctrine-bundle from 1.12.6 to 1.12.7
Bumps [doctrine/doctrine-bundle](https://github.com/doctrine/DoctrineBundle) from 1.12.6 to 1.12.7.
- [Release notes](https://github.com/doctrine/DoctrineBundle/releases)
- [Commits](https://github.com/doctrine/DoctrineBundle/compare/1.12.6...1.12.7)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-20 04:02:00 +00:00
0a81f9b9d9 Sidebar sub entries not conditioned by hover anymore 2020-01-19 11:01:24 +01:00
913c3bc7aa Merge pull request #4249 from wallabag/fix/env-not-well-defined
Ensure ENV is well defined when using make
2020-01-14 14:30:17 +01:00
29f5515959 Improve check by using list
See https://stackoverflow.com/a/27335439/569101
2020-01-13 15:58:59 +01:00
7dc4cbe70f Merge pull request #4250 from wallabag/fix-twitter-sharing
Fixed URL to share entry via twitter
2020-01-13 15:38:03 +01:00
62682c073b Fixed URL to share entry via twitter 2020-01-13 15:17:06 +01:00
49eb5405de Ensure ENV is well defined when using make
This command should fail before calling other commands (which will fail to because the environment is wrong):

```
ENV=toto make install
```
2020-01-13 14:26:10 +01:00
68fd40e4fc Merge pull request #4247 from wallabag/dependabot/composer/friendsofsymfony/jsrouting-bundle-2.5.3
Bump friendsofsymfony/jsrouting-bundle from 2.5.1 to 2.5.3
2020-01-13 06:58:54 +01:00
15f8a1f09c Merge pull request #4248 from wallabag/dependabot/composer/scheb/two-factor-bundle-4.12.0
Bump scheb/two-factor-bundle from 4.11.1 to 4.12.0
2020-01-13 06:45:40 +01:00
36eab58bb3 Bump scheb/two-factor-bundle from 4.11.1 to 4.12.0
Bumps [scheb/two-factor-bundle](https://github.com/scheb/two-factor-bundle) from 4.11.1 to 4.12.0.
- [Release notes](https://github.com/scheb/two-factor-bundle/releases)
- [Commits](https://github.com/scheb/two-factor-bundle/compare/v4.11.1...v4.12.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-13 03:58:51 +00:00
3d850ba9ac Bump friendsofsymfony/jsrouting-bundle from 2.5.1 to 2.5.3
Bumps [friendsofsymfony/jsrouting-bundle](https://github.com/FriendsOfSymfony/FOSJsRoutingBundle) from 2.5.1 to 2.5.3.
- [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.5.1...v2.5.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-13 03:50:53 +00:00
66d91fa116 Merge pull request #4245 from wallabag/dependabot/composer/m6web/redis-mock-5.0.0
Bump m6web/redis-mock from 4.7.0 to 5.0.0
2020-01-09 11:36:49 +01:00
501d5fd102 Bump m6web/redis-mock from 4.7.0 to 5.0.0
Bumps [m6web/redis-mock](https://github.com/M6Web/RedisMock) from 4.7.0 to 5.0.0.
- [Release notes](https://github.com/M6Web/RedisMock/releases)
- [Commits](https://github.com/M6Web/RedisMock/compare/v4.7.0...v5.0.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-01-09 03:56:31 +00:00
27db0551c9 Merge pull request #4238 from prcmt/master
Change API URL used in dev docs to app.wallabag.it
2020-01-02 08:17:08 +01:00
3f3b5058aa Change API URL used in dev docs to app.wallabag.it
Currently the documentation uses the defunct v2.wallabag.org URL which
can be confusing to someone configuring their first API client with
wallabag.it.
2019-12-31 21:31:59 +00:00
3a9576a889 Merge pull request #4237 from JENkt4k/master
Fix broken ENV file - removed "export"s
2019-12-31 09:32:09 +01:00
0ca270f385 Update env 2019-12-31 09:19:02 +01:00
5a071f29b7 Fix broken ENV file - removed "export"s 2019-12-30 14:29:20 -06:00
bdb66a226e Merge pull request #4235 from wallabag/update-deps
Update deps
2019-12-28 15:28:35 +01:00
0f38757722 Update deps
- Updating fig/link-util (1.0.0 => 1.1.0)
  - Updating j0k3r/graby-site-config (1.0.97 => 1.0.98)
  - Updating monolog/monolog (1.25.2 => 1.25.3)
  - Updating simplepie/simplepie (1.5.3 => 1.5.4)
  - Updating symfony/mime (v4.4.1 => v4.4.2)
  - Updating php-http/httplug (v2.0.0 => 2.1.0)
  - Updating php-http/stopwatch-plugin (1.2.0 => 1.3.0)
  - Updating nette/utils (v3.0.2 => v3.0.3)
  - Updating nette/robot-loader (v3.2.0 => v3.2.1)
  - Updating nette/neon (v3.0.0 => v3.1.0)
  - Updating nette/di (v3.0.1 => v3.0.2)
  - Updating egulias/email-validator (2.1.11 => 2.1.12)
  - Updating php-http/discovery (1.7.0 => 1.7.2)
  - Updating php-http/curl-client (2.0.0 => 2.1.0)
2019-12-27 17:45:16 +01:00
de686b43e5 Merge pull request #4230 from wallabag/dependabot/composer/sentry/sentry-symfony-3.2.1
Bump sentry/sentry-symfony from 3.2.0 to 3.2.1
2019-12-20 07:30:39 +01:00
139b9aeadc Merge pull request #4233 from wallabag/dependabot/composer/doctrine/doctrine-bundle-1.12.6
Bump doctrine/doctrine-bundle from 1.12.5 to 1.12.6
2019-12-20 07:27:49 +01:00
2b90f21fe0 Merge pull request #4232 from wallabag/dependabot/composer/php-http/mock-client-1.3.1
Bump php-http/mock-client from 1.3.0 to 1.3.1
2019-12-20 07:27:06 +01:00
6e8f2ff97d Merge pull request #4231 from wallabag/dependabot/composer/scheb/two-factor-bundle-4.11.1
Bump scheb/two-factor-bundle from 4.11.0 to 4.11.1
2019-12-20 07:26:39 +01:00
afe5e7f4ba Bump doctrine/doctrine-bundle from 1.12.5 to 1.12.6
Bumps [doctrine/doctrine-bundle](https://github.com/doctrine/DoctrineBundle) from 1.12.5 to 1.12.6.
- [Release notes](https://github.com/doctrine/DoctrineBundle/releases)
- [Commits](https://github.com/doctrine/DoctrineBundle/compare/1.12.5...1.12.6)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-12-20 04:22:48 +00:00
5619a0f7ac Bump php-http/mock-client from 1.3.0 to 1.3.1
Bumps [php-http/mock-client](https://github.com/php-http/mock-client) from 1.3.0 to 1.3.1.
- [Release notes](https://github.com/php-http/mock-client/releases)
- [Changelog](https://github.com/php-http/mock-client/blob/master/CHANGELOG.md)
- [Commits](https://github.com/php-http/mock-client/compare/1.3.0...1.3.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-12-20 04:11:15 +00:00
725a702eb0 Bump scheb/two-factor-bundle from 4.11.0 to 4.11.1
Bumps [scheb/two-factor-bundle](https://github.com/scheb/two-factor-bundle) from 4.11.0 to 4.11.1.
- [Release notes](https://github.com/scheb/two-factor-bundle/releases)
- [Commits](https://github.com/scheb/two-factor-bundle/compare/v4.11.0...v4.11.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-12-20 04:08:45 +00:00
8a74cb8338 Bump sentry/sentry-symfony from 3.2.0 to 3.2.1
Bumps [sentry/sentry-symfony](https://github.com/getsentry/sentry-symfony) from 3.2.0 to 3.2.1.
- [Release notes](https://github.com/getsentry/sentry-symfony/releases)
- [Changelog](https://github.com/getsentry/sentry-symfony/blob/3.2.1/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-symfony/compare/3.2.0...3.2.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-12-20 04:05:33 +00:00
2e267a88a5 Merge pull request #4229 from wallabag/dependabot/composer/doctrine/doctrine-bundle-1.12.5
Bump doctrine/doctrine-bundle from 1.12.2 to 1.12.5
2019-12-19 08:01:47 +01:00
34154ecf1d Bump doctrine/doctrine-bundle from 1.12.2 to 1.12.5
Bumps [doctrine/doctrine-bundle](https://github.com/doctrine/DoctrineBundle) from 1.12.2 to 1.12.5.
- [Release notes](https://github.com/doctrine/DoctrineBundle/releases)
- [Commits](https://github.com/doctrine/DoctrineBundle/compare/1.12.2...1.12.5)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-12-19 04:13:45 +00:00
878a886365 Merge pull request #4227 from wallabag/update-deps
Update deps
2019-12-17 18:50:11 +01:00
6ba1d7345b Update deps
- Updating doctrine/persistence (1.2.0 => 1.3.3)
  - Updating j0k3r/graby-site-config (1.0.95 => 1.0.97)
  - Updating phpoption/phpoption (1.5.2 => 1.7.2)
  - Updating michelf/php-markdown (1.8.0 => 1.9.0)
  - Updating symfony/polyfill-php72 (v1.12.0 => v1.13.1)
  - Updating symfony/polyfill-intl-idn (v1.12.0 => v1.13.1)
  - Updating symfony/mime (v4.4.0 => v4.4.1)
  - Updating zendframework/zend-code (3.4.0 => 3.4.1)
  - Updating symfony/polyfill-php73 (v1.12.0 => v1.13.1)
  - Updating gedmo/doctrine-extensions (v2.4.37 => v2.4.38)
  - Updating symfony/polyfill-iconv (v1.12.0 => v1.13.1)
  - Updating ramsey/uuid (3.8.0 => 3.9.2)
  - Installing symfony/service-contracts (v1.1.8)
  - Updating symfony/http-client (v4.3.8 => v4.4.1)
  - Updating sentry/sentry (2.2.4 => 2.2.5)
2019-12-17 12:47:29 +01:00
817b3a2157 Merge pull request #4223 from wallabag/dependabot/composer/scheb/two-factor-bundle-4.11.0
Bump scheb/two-factor-bundle from 4.10.0 to 4.11.0
2019-12-15 19:21:46 -08:00
c8c656fa23 Bump scheb/two-factor-bundle from 4.10.0 to 4.11.0
Bumps [scheb/two-factor-bundle](https://github.com/scheb/two-factor-bundle) from 4.10.0 to 4.11.0.
- [Release notes](https://github.com/scheb/two-factor-bundle/releases)
- [Commits](https://github.com/scheb/two-factor-bundle/compare/v4.10.0...v4.11.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-12-09 04:10:15 +00:00
d816ef0530 Merge pull request #4161 from aaa2000/bug-empty-quote
API return an error with empty quote
2019-12-04 16:09:49 -08:00
43141054d1 Merge pull request #4220 from wallabag/dependabot/composer/craue/config-bundle-2.4.0
Bump craue/config-bundle from 2.3.0 to 2.4.0
2019-12-04 11:58:44 -08:00
f28720f81a Bump craue/config-bundle from 2.3.0 to 2.4.0
Bumps [craue/config-bundle](https://github.com/craue/CraueConfigBundle) from 2.3.0 to 2.4.0.
- [Release notes](https://github.com/craue/CraueConfigBundle/releases)
- [Changelog](https://github.com/craue/CraueConfigBundle/blob/master/CHANGELOG.md)
- [Commits](https://github.com/craue/CraueConfigBundle/compare/2.3.0...2.4.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-12-04 03:56:35 +00:00
7b8f63f731 Merge pull request #4213 from wallabag/fix-elcurator
Fixed elCurator check for RabbitMQ / Redis
2019-12-03 15:33:34 +01:00
e32e6c27f1 Merge pull request #4218 from wallabag/dependabot/composer/white-october/pagerfanta-bundle-1.3.2
Bump white-october/pagerfanta-bundle from 1.3.1 to 1.3.2
2019-12-03 08:26:30 +01:00
6f6037d19e Merge pull request #4219 from wallabag/dependabot/composer/friendsofsymfony/jsrouting-bundle-2.5.1
Bump friendsofsymfony/jsrouting-bundle from 2.5.0 to 2.5.1
2019-12-03 08:26:07 +01:00
1f767ffe9b Bump friendsofsymfony/jsrouting-bundle from 2.5.0 to 2.5.1
Bumps [friendsofsymfony/jsrouting-bundle](https://github.com/FriendsOfSymfony/FOSJsRoutingBundle) from 2.5.0 to 2.5.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/2.5.0...2.5.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-12-03 04:09:48 +00:00
28236284c3 Bump white-october/pagerfanta-bundle from 1.3.1 to 1.3.2
Bumps [white-october/pagerfanta-bundle](https://github.com/whiteoctober/WhiteOctoberPagerfantaBundle) from 1.3.1 to 1.3.2.
- [Release notes](https://github.com/whiteoctober/WhiteOctoberPagerfantaBundle/releases)
- [Commits](https://github.com/whiteoctober/WhiteOctoberPagerfantaBundle/compare/v1.3.1...v1.3.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-12-03 03:58:21 +00:00
304d0cb6bf Merge pull request #4209 from wallabag/dependabot/composer/doctrine/doctrine-cache-bundle-1.4.0
Bump doctrine/doctrine-cache-bundle from 1.3.5 to 1.4.0
2019-12-02 17:43:09 +01:00
f2ee6af467 Merge pull request #4210 from wallabag/dependabot/composer/symfony/phpunit-bridge-4.3.9
Bump symfony/phpunit-bridge from 4.3.8 to 4.3.9
2019-12-02 17:42:45 +01:00
adedf85602 Merge pull request #4211 from wallabag/dependabot/composer/friendsofsymfony/jsrouting-bundle-2.5.0
Bump friendsofsymfony/jsrouting-bundle from 2.4.0 to 2.5.0
2019-12-02 17:42:25 +01:00
9773c082c4 Merge pull request #4212 from wallabag/dependabot/composer/symfony/symfony-3.4.36
Bump symfony/symfony from 3.4.35 to 3.4.36
2019-12-02 17:41:55 +01:00
f3d20097cd Fixed elCurator check for RabbitMQ / Redis 2019-12-02 12:36:05 +01:00
d063ef651b Bump symfony/symfony from 3.4.35 to 3.4.36
Bumps [symfony/symfony](https://github.com/symfony/symfony) from 3.4.35 to 3.4.36.
- [Release notes](https://github.com/symfony/symfony/releases)
- [Changelog](https://github.com/symfony/symfony/blob/v3.4.36/CHANGELOG-3.4.md)
- [Commits](https://github.com/symfony/symfony/compare/v3.4.35...v3.4.36)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-12-02 04:17:20 +00:00
149b8c1b1d Bump friendsofsymfony/jsrouting-bundle from 2.4.0 to 2.5.0
Bumps [friendsofsymfony/jsrouting-bundle](https://github.com/FriendsOfSymfony/FOSJsRoutingBundle) from 2.4.0 to 2.5.0.
- [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.4.0...2.5.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-12-02 04:08:58 +00:00
83d2c0a25c Bump symfony/phpunit-bridge from 4.3.8 to 4.3.9
Bumps [symfony/phpunit-bridge](https://github.com/symfony/phpunit-bridge) from 4.3.8 to 4.3.9.
- [Release notes](https://github.com/symfony/phpunit-bridge/releases)
- [Changelog](https://github.com/symfony/phpunit-bridge/blob/master/CHANGELOG.md)
- [Commits](https://github.com/symfony/phpunit-bridge/compare/v4.3.8...v4.3.9)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-12-02 04:05:44 +00:00
7dddb5bc24 Bump doctrine/doctrine-cache-bundle from 1.3.5 to 1.4.0
Bumps [doctrine/doctrine-cache-bundle](https://github.com/doctrine/DoctrineCacheBundle) from 1.3.5 to 1.4.0.
- [Release notes](https://github.com/doctrine/DoctrineCacheBundle/releases)
- [Commits](https://github.com/doctrine/DoctrineCacheBundle/compare/1.3.5...1.4.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-12-02 03:57:54 +00:00
b76bf31bca Merge pull request #4207 from wallabag/dependabot/composer/doctrine/doctrine-bundle-1.12.2
Bump doctrine/doctrine-bundle from 1.12.0 to 1.12.2
2019-11-29 07:38:20 +01:00
c6663a8853 Bump doctrine/doctrine-bundle from 1.12.0 to 1.12.2
Bumps [doctrine/doctrine-bundle](https://github.com/doctrine/DoctrineBundle) from 1.12.0 to 1.12.2.
- [Release notes](https://github.com/doctrine/DoctrineBundle/releases)
- [Commits](https://github.com/doctrine/DoctrineBundle/compare/1.12.0...1.12.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-29 03:52:14 +00:00
6a0d49ab7a Fix tests 2019-11-27 14:46:27 +01:00
86c1751186 Optionnal quote because the frontend does not use it 2019-11-27 14:38:35 +01:00
8197f08266 API return an error with empty quote
Fix #4137
2019-11-27 14:38:35 +01:00
a406434701 Merge pull request #4203 from wallabag/dependabot/composer/friendsofphp/php-cs-fixer-2.16.1
Bump friendsofphp/php-cs-fixer from 2.16.0 to 2.16.1
2019-11-26 06:55:23 +01:00
02cf65ee47 Bump friendsofphp/php-cs-fixer from 2.16.0 to 2.16.1
Bumps [friendsofphp/php-cs-fixer](https://github.com/FriendsOfPHP/PHP-CS-Fixer) from 2.16.0 to 2.16.1.
- [Release notes](https://github.com/FriendsOfPHP/PHP-CS-Fixer/releases)
- [Changelog](https://github.com/FriendsOfPHP/PHP-CS-Fixer/blob/2.16/CHANGELOG.md)
- [Commits](https://github.com/FriendsOfPHP/PHP-CS-Fixer/compare/v2.16.0...v2.16.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-26 04:18:05 +00:00
4c43b82fed Merge pull request #4202 from wallabag/dependabot/composer/scheb/two-factor-bundle-4.10.0
Bump scheb/two-factor-bundle from 4.9.0 to 4.10.0
2019-11-25 07:56:10 +01:00
33aa6ef110 Bump scheb/two-factor-bundle from 4.9.0 to 4.10.0
Bumps [scheb/two-factor-bundle](https://github.com/scheb/two-factor-bundle) from 4.9.0 to 4.10.0.
- [Release notes](https://github.com/scheb/two-factor-bundle/releases)
- [Commits](https://github.com/scheb/two-factor-bundle/compare/v4.9.0...v4.10.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-25 04:22:25 +00:00
77728731a4 Merge pull request #4200 from wallabag/dependabot/composer/symfony/phpunit-bridge-5.0.0
Lock symfony/phpunit-bridge to 4.3.8
2019-11-22 23:01:04 +01:00
d3847ac125 Lock PHPUnit-Bridge
Version 4.4.0 & 5.0.0 will install PHPUnit 8.3.x by default which required PHP > 7.1.
We could lock the PHPUnit version using `SYMFONY_PHPUNIT_VERSION` env variable but we'll have an issue with PHP 5 then because there is no PHPUnit version compatible with both PHP 5 & PHP 7.

Also update deps:
  - Updating ocramius/package-versions (1.4.0 => 1.4.2)
  - Updating j0k3r/graby-site-config (1.0.94 => 1.0.95)
  - Updating php-http/client-common (2.0.0 => 2.1.0)
  - Updating symfony/mime (v4.3.8 => v4.4.0)
  - Updating white-october/pagerfanta-bundle (v1.2.4 => v1.3.1)
  - Installing phpseclib/phpseclib (2.0.23)
  - Updating php-amqplib/php-amqplib (v2.10.1 => v2.11.0)
  - Updating nette/php-generator (v3.2.3 => v3.3.1)
  - Updating zendframework/zend-diactoros (2.2.0 => 2.2.1)
2019-11-22 22:38:42 +01:00
df5f0990ec Merge pull request #4199 from wallabag/dependabot/composer/white-october/pagerfanta-bundle-1.3.1
Bump white-october/pagerfanta-bundle from 1.2.4 to 1.3.1
2019-11-22 09:57:29 +01:00
47b1f433dd Bump symfony/phpunit-bridge from 4.3.8 to 5.0.0
Bumps [symfony/phpunit-bridge](https://github.com/symfony/phpunit-bridge) from 4.3.8 to 5.0.0.
- [Release notes](https://github.com/symfony/phpunit-bridge/releases)
- [Changelog](https://github.com/symfony/phpunit-bridge/blob/master/CHANGELOG.md)
- [Commits](https://github.com/symfony/phpunit-bridge/compare/v4.3.8...v5.0.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-22 04:15:10 +00:00
4421e2a402 Bump white-october/pagerfanta-bundle from 1.2.4 to 1.3.1
Bumps [white-october/pagerfanta-bundle](https://github.com/whiteoctober/WhiteOctoberPagerfantaBundle) from 1.2.4 to 1.3.1.
- [Release notes](https://github.com/whiteoctober/WhiteOctoberPagerfantaBundle/releases)
- [Commits](https://github.com/whiteoctober/WhiteOctoberPagerfantaBundle/compare/v1.2.4...v1.3.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-22 04:11:00 +00:00
a43ebdb6a3 Merge pull request #4198 from wallabag/dependabot/composer/scheb/two-factor-bundle-4.9.0
Bump scheb/two-factor-bundle from 4.8.0 to 4.9.0
2019-11-21 06:56:52 +01:00
8d84ed16b7 Bump scheb/two-factor-bundle from 4.8.0 to 4.9.0
Bumps [scheb/two-factor-bundle](https://github.com/scheb/two-factor-bundle) from 4.8.0 to 4.9.0.
- [Release notes](https://github.com/scheb/two-factor-bundle/releases)
- [Commits](https://github.com/scheb/two-factor-bundle/compare/v4.8.0...v4.9.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-21 04:06:32 +00:00
bda2e169aa Merge pull request #4197 from wallabag/dependabot/composer/doctrine/doctrine-bundle-1.12.0
Bump doctrine/doctrine-bundle from 1.11.2 to 1.12.0
2019-11-20 06:20:34 +01:00
38adc00267 Bump doctrine/doctrine-bundle from 1.11.2 to 1.12.0
Bumps [doctrine/doctrine-bundle](https://github.com/doctrine/DoctrineBundle) from 1.11.2 to 1.12.0.
- [Release notes](https://github.com/doctrine/DoctrineBundle/releases)
- [Commits](https://github.com/doctrine/DoctrineBundle/compare/1.11.2...1.12.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-20 04:09:50 +00:00
48b0163d24 Merge pull request #4151 from ldidry/fix-4060
 Allow custom styles system wide
2019-11-19 14:25:41 +01:00
8668796106 Merge pull request #4152 from ldidry/add-env-var-dev.sh
Add environment variables to control scripts/dev.sh behavior
2019-11-19 14:24:35 +01:00
a9753ef990 Merge pull request #4150 from ldidry/fix-3804
💄 Add untagged list link to filter menu
2019-11-19 14:23:49 +01:00
31579b75fc Merge pull request #4195 from wallabag/dependabot/composer/doctrine/orm-2.6.6
Bump doctrine/orm from 2.6.4 to 2.6.6
2019-11-19 14:22:42 +01:00
bff82c3202 Fix tests (again..) 2019-11-19 13:28:32 +01:00
93a4cefdbc Bump doctrine/orm from 2.6.4 to 2.6.6
Bumps [doctrine/orm](https://github.com/doctrine/orm) from 2.6.4 to 2.6.6.
- [Release notes](https://github.com/doctrine/orm/releases)
- [Commits](https://github.com/doctrine/orm/compare/v2.6.4...v2.6.6)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-19 04:03:23 +00:00
069229e19c Merge pull request #4175 from wallabag/import-elcurator
Added elCurator import
2019-11-15 16:38:30 +01:00
958e77e6a7 Added elCurator import 2019-11-15 16:08:36 +01:00
3c5aa05311 Merge pull request #4190 from wallabag/dependabot/composer/symfony/monolog-bundle-3.5.0
Bump symfony/monolog-bundle from 3.4.0 to 3.5.0
2019-11-14 16:47:00 +01:00
e5bc1e84d1 Merge pull request #4188 from wallabag/dependabot/composer/doctrine/doctrine-fixtures-bundle-3.3.0
Bump doctrine/doctrine-fixtures-bundle from 3.2.2 to 3.3.0
2019-11-14 16:46:52 +01:00
1ddd66ae70 Bump doctrine/doctrine-fixtures-bundle from 3.2.2 to 3.3.0
Bumps [doctrine/doctrine-fixtures-bundle](https://github.com/doctrine/DoctrineFixturesBundle) from 3.2.2 to 3.3.0.
- [Release notes](https://github.com/doctrine/DoctrineFixturesBundle/releases)
- [Changelog](https://github.com/doctrine/DoctrineFixturesBundle/blob/master/CHANGELOG-3.1.md)
- [Commits](https://github.com/doctrine/DoctrineFixturesBundle/compare/3.2.2...3.3.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-14 14:24:20 +00:00
9baf99adb4 Bump symfony/monolog-bundle from 3.4.0 to 3.5.0
Bumps [symfony/monolog-bundle](https://github.com/symfony/monolog-bundle) from 3.4.0 to 3.5.0.
- [Release notes](https://github.com/symfony/monolog-bundle/releases)
- [Changelog](https://github.com/symfony/monolog-bundle/blob/master/CHANGELOG.md)
- [Commits](https://github.com/symfony/monolog-bundle/compare/v3.4.0...v3.5.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-14 14:24:11 +00:00
98d8e0c1b9 Merge pull request #4183 from wallabag/update-deps
Update deps
2019-11-14 15:19:18 +01:00
4a31f3b6a2 Fix tests 2019-11-13 13:05:58 +01:00
092b042342 Security update
- Updating symfony/symfony (v3.4.34 => v3.4.35)
  - Updating monolog/monolog (1.25.1 => 1.25.2)
  - Updating j0k3r/graby (2.0.2 => 2.1.0)
  - Updating symfony/http-client (v4.3.7 => v4.3.8)
  - Updating symfony/mime (v4.3.7 => v4.3.8)
  - Updating symfony/phpunit-bridge (v4.3.7 => v4.3.8)
  - Updating zendframework/zend-diactoros (2.1.5 => 2.2.0)
2019-11-13 12:59:33 +01:00
7f2ae89d0d Locked dbal to 2.9.2
Because the 2.9.3 seems to break test.
Like a conflict with `DoctrineTestBundle` I guess (which can't be updated because we are still allowing PHP 7.1 and is not).

The generated error usually appear when we update data using a service during test (like changing the craue config).
Here is the error:

```
Testing tests/Wallabag/CoreBundle/Controller/
PHP Fatal error:  Uncaught PDOException: There is no active transaction in /Users/jeremy/Sites/github/wallabag/vendor/dama/doctrine-test-bundle/src/DAMA/DoctrineTestBundle/Doctrine/DBAL/StaticDriver.php:142
Stack trace:
#0 /Users/jeremy/Sites/github/wallabag/vendor/dama/doctrine-test-bundle/src/DAMA/DoctrineTestBundle/Doctrine/DBAL/StaticDriver.php(142): PDO->rollBack()
#1 /Users/jeremy/Sites/github/wallabag/vendor/dama/doctrine-test-bundle/src/DAMA/DoctrineTestBundle/PHPUnit/PHPUnitListener.php(39): DAMA\DoctrineTestBundle\Doctrine\DBAL\StaticDriver::rollBack()
#2 /Users/jeremy/Sites/github/wallabag/vendor/bin/.phpunit/phpunit-7.4/src/Framework/TestResult.php(412): DAMA\DoctrineTestBundle\PHPUnit\PHPUnitListener->endTest(Object(Tests\Wallabag\CoreBundle\Controller\ConfigControllerTest), 3.3917479515076)
#3 /Users/jeremy/Sites/github/wallabag/vendor/bin/.phpunit/phpunit-7.4/src/Framework/TestResult.php(893): PHPUnit\Framework\TestResult->endTest(Object(Tests\Wallabag\CoreBundle\Controller\ConfigControllerTest), 3.3917479515076 in /Users/jeremy/Sites/github/wallabag/vendor/symfony/symfony/src/Symfony/Component/HttpKernel/Controller/ControllerResolver.php on line 91

Fatal error: Uncaught PDOException: There is no active transaction in /Users/jeremy/Sites/github/wallabag/vendor/symfony/symfony/src/Symfony/Component/HttpKernel/Controller/ControllerResolver.php on line 91

InvalidArgumentException: The controller for URI "/config" is not callable. The "kernel" service is synthetic, it needs to be set at boot time before it can be used. in /Users/jeremy/Sites/github/wallabag/vendor/symfony/symfony/src/Symfony/Component/HttpKernel/Controller/ControllerResolver.php on line 91

Call Stack:
    3.4732   57305872   1. Symfony\Component\Debug\ErrorHandler->handleException() /Users/jeremy/Sites/github/wallabag/vendor/symfony/symfony/src/Symfony/Component/Debug/ErrorHandler.php:0
    3.5000   58014320   2. Symfony\Component\Debug\ErrorHandler->handleException() /Users/jeremy/Sites/github/wallabag/vendor/symfony/symfony/src/Symfony/Component/Debug/ErrorHandler.php:613
```
2019-11-12 15:34:10 +01:00
075a3b3e0a Fix tests 2019-11-12 14:33:45 +01:00
8d4ed0df06 Update deps
Also CS (because cs-fixer got an update)

Package operations: 0 installs, 26 updates, 0 removals
  - Updating twig/twig (v2.12.1 => v2.12.2)
  - Updating symfony/symfony (v3.4.33 => v3.4.34)
  - Updating doctrine/event-manager (v1.0.0 => 1.1.0)
  - Updating doctrine/collections (v1.6.2 => 1.6.3)
  - Updating doctrine/cache (v1.8.1 => 1.9.0)
  - Updating doctrine/persistence (1.1.1 => 1.2.0)
  - Updating doctrine/inflector (v1.3.0 => 1.3.1)
  - Updating symfony/mime (v4.3.5 => v4.3.7)
  - Updating swiftmailer/swiftmailer (v6.2.1 => v6.2.3)
  - Updating symfony/swiftmailer-bundle (v3.3.0 => v3.3.1)
  - Updating doctrine/dbal (v2.9.2 => v2.9.3)
  - Updating doctrine/instantiator (1.2.0 => 1.3.0)
  - Updating j0k3r/graby-site-config (1.0.93 => 1.0.94)
  - Updating phpoption/phpoption (1.5.0 => 1.5.2)
  - Updating symfony/http-client-contracts (v1.1.7 => v1.1.8)
  - Updating symfony/http-client (v4.3.5 => v4.3.7)
  - Updating sensiolabs/security-checker (v6.0.2 => v6.0.3)
  - Updating paragonie/constant_time_encoding (v2.2.3 => v2.3.0)
  - Updating scheb/two-factor-bundle (v4.7.1 => v4.8.0)
  - Updating symfony/phpunit-bridge (v4.3.6 => v4.3.7)
  - Updating composer/xdebug-handler (1.3.3 => 1.4.0)
  - Updating friendsofphp/php-cs-fixer (v2.15.3 => v2.16.0)
  - Updating doctrine/data-fixtures (v1.3.2 => 1.3.3)
  - Updating nette/schema (v1.0.0 => v1.0.1)
  - Updating nikic/php-parser (v4.2.4 => v4.3.0)
  - Updating sentry/sentry (2.2.2 => 2.2.4)
2019-11-12 14:18:58 +01:00
8d8d6818fb Merge pull request #4163 from aaa2000/docker-increase-php-memory-limit
Increase php memory limit PHP Docker
2019-11-12 13:58:13 +01:00
638f799af3 Merge pull request #4162 from aaa2000/docker-add-extensions
Add package and PHP extension to PHP docker
2019-11-12 13:57:49 +01:00
76fe5dfb71 Merge pull request #4171 from wallabag/dependabot/composer/symfony/phpunit-bridge-4.3.6
Bump symfony/phpunit-bridge from 4.3.5 to 4.3.6
2019-11-11 11:49:08 +01:00
240aff0df6 Merge pull request #4170 from wallabag/dependabot/composer/symfony/symfony-3.4.33
Bump symfony/symfony from 3.4.32 to 3.4.33
2019-11-11 11:48:47 +01:00
3b51b1e438 Merge pull request #4167 from wallabag/dependabot/composer/guzzlehttp/guzzle-5.3.4
Bump guzzlehttp/guzzle from 5.3.3 to 5.3.4
2019-11-11 11:48:25 +01:00
3ae2549537 Merge pull request #4174 from wallabag/dependabot/composer/m6web/redis-mock-4.7.0
Bump m6web/redis-mock from 4.6.1 to 4.7.0
2019-11-11 11:47:54 +01:00
34e5cf096d Bump m6web/redis-mock from 4.6.1 to 4.7.0
Bumps [m6web/redis-mock](https://github.com/M6Web/RedisMock) from 4.6.1 to 4.7.0.
- [Release notes](https://github.com/M6Web/RedisMock/releases)
- [Commits](https://github.com/M6Web/RedisMock/compare/v4.6.1...v4.7.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-05 04:08:03 +00:00
a4141aa934 Bump symfony/phpunit-bridge from 4.3.5 to 4.3.6
Bumps [symfony/phpunit-bridge](https://github.com/symfony/phpunit-bridge) from 4.3.5 to 4.3.6.
- [Release notes](https://github.com/symfony/phpunit-bridge/releases)
- [Changelog](https://github.com/symfony/phpunit-bridge/blob/master/CHANGELOG.md)
- [Commits](https://github.com/symfony/phpunit-bridge/compare/v4.3.5...v4.3.6)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-04 05:29:05 +00:00
ddd3700cb5 Bump symfony/symfony from 3.4.32 to 3.4.33
Bumps [symfony/symfony](https://github.com/symfony/symfony) from 3.4.32 to 3.4.33.
- [Release notes](https://github.com/symfony/symfony/releases)
- [Changelog](https://github.com/symfony/symfony/blob/v3.4.33/CHANGELOG-3.4.md)
- [Commits](https://github.com/symfony/symfony/compare/v3.4.32...v3.4.33)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-11-04 05:21:32 +00:00
181dbaaadf Bump guzzlehttp/guzzle from 5.3.3 to 5.3.4
Bumps [guzzlehttp/guzzle](https://github.com/guzzle/guzzle) from 5.3.3 to 5.3.4.
- [Release notes](https://github.com/guzzle/guzzle/releases)
- [Changelog](https://github.com/guzzle/guzzle/blob/5.3.4/CHANGELOG.md)
- [Commits](https://github.com/guzzle/guzzle/compare/5.3.3...5.3.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-31 11:55:16 +00:00
64885da458 Increase php memory limit PHP Docker 2019-10-27 19:25:47 +01:00
2068b4458d Add package and PHP extension to PHP docker 2019-10-27 19:04:04 +01:00
3b79c1ac4e Merge pull request #4160 from wallabag/dependabot/composer/phpstan/phpstan-0.11.19
Bump phpstan/phpstan from 0.11.18 to 0.11.19
2019-10-23 07:08:31 +02:00
3d8eaa3ade Bump phpstan/phpstan from 0.11.18 to 0.11.19
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 0.11.18 to 0.11.19.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Commits](https://github.com/phpstan/phpstan/compare/0.11.18...0.11.19)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-23 02:42:25 +00:00
ba32a8a7c5 Merge pull request #4159 from wallabag/fix/tests-update-deps
Fix tests & update deps
2019-10-22 20:48:27 +02:00
987237d588 Fix tests & update deps
- Updating twig/twig (v2.12.0 => v2.12.1)
  - Updating symfony/mime (v4.3.4 => v4.3.5)
  - Updating friendsofsymfony/rest-bundle (2.5.0 => 2.6.0)
  - Updating j0k3r/graby-site-config (1.0.91 => 1.0.93)
  - Updating monolog/monolog (1.24.0 => 1.25.1)
  - Updating simplepie/simplepie (1.5.2 => 1.5.3)
  - Updating symfony/http-client-contracts (v1.1.6 => v1.1.7)
  - Updating symfony/http-client (v4.3.4 => v4.3.5)
  - Updating nette/utils (v3.0.1 => v3.0.2)
  - Updating phpstan/phpstan (0.11.17 => 0.11.18)
  - Updating zendframework/zend-code (3.3.2 => 3.4.0)
  - Updating php-amqplib/php-amqplib (v2.10.0 => v2.10.1)
  - Updating beberlei/assert (v3.2.3 => v3.2.6)
  - Updating zendframework/zend-diactoros (2.1.3 => 2.1.5)
  - Updating sentry/sentry (2.2.1 => 2.2.2)
2019-10-22 16:56:33 +02:00
d69cdfbd74 Merge pull request #4156 from wallabag/dependabot/composer/phpstan/phpstan-0.11.17
Bump phpstan/phpstan from 0.11.16 to 0.11.17
2019-10-21 11:32:23 +02:00
96d5bb1bf5 Merge pull request #4155 from wallabag/dependabot/composer/symfony/swiftmailer-bundle-3.3.0
Bump symfony/swiftmailer-bundle from 3.2.8 to 3.3.0
2019-10-21 11:18:02 +02:00
07c66a7435 Bump phpstan/phpstan from 0.11.16 to 0.11.17
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 0.11.16 to 0.11.17.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Commits](https://github.com/phpstan/phpstan/compare/0.11.16...0.11.17)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-21 02:27:02 +00:00
bc3ebfd1a8 Bump symfony/swiftmailer-bundle from 3.2.8 to 3.3.0
Bumps [symfony/swiftmailer-bundle](https://github.com/symfony/swiftmailer-bundle) from 3.2.8 to 3.3.0.
- [Release notes](https://github.com/symfony/swiftmailer-bundle/releases)
- [Changelog](https://github.com/symfony/swiftmailer-bundle/blob/master/CHANGELOG)
- [Commits](https://github.com/symfony/swiftmailer-bundle/compare/v3.2.8...v3.3.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-21 02:19:58 +00:00
7a4c375ebf Allow custom styles system wide
Should fix #4060
2019-10-11 10:40:25 +02:00
ce4c2ead4b Merge pull request #4149 from ldidry/fix-4130
🐛 — Fix duplicated icons on "Search engine" and "new link" forms
2019-10-11 09:08:58 +02:00
d8e961bdb5 💄 Add untagged list link to filter menu
Fix #3804
2019-10-10 10:37:29 +02:00
488e3d7a91 Add environment variables to control scripts/dev.sh behavior 2019-10-09 19:33:27 +02:00
652cb58d59 🐛 — Fix duplicated icons on "Search engine" and "new link" forms 2019-10-09 00:57:08 +02:00
afe486531d Merge pull request #4141 from SofLesc/portuguese-translations
Updating portuguese translations
2019-10-08 11:19:00 +02:00
797fd5fa24 Merge pull request #4147 from wallabag/add-code-of-conduct-1
Create code of conduct
2019-10-08 10:56:12 +02:00
0d0d1dae5a Create code of conduct 2019-10-08 09:50:06 +02:00
0e23ce4ac6 Merge pull request #4145 from wallabag/dependabot/composer/symfony/phpunit-bridge-4.3.5
Bump symfony/phpunit-bridge from 4.3.4 to 4.3.5
2019-10-08 06:37:44 +02:00
195414ef0a Bump symfony/phpunit-bridge from 4.3.4 to 4.3.5
Bumps [symfony/phpunit-bridge](https://github.com/symfony/phpunit-bridge) from 4.3.4 to 4.3.5.
- [Release notes](https://github.com/symfony/phpunit-bridge/releases)
- [Changelog](https://github.com/symfony/phpunit-bridge/blob/master/CHANGELOG.md)
- [Commits](https://github.com/symfony/phpunit-bridge/compare/v4.3.4...v4.3.5)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-08 03:49:20 +00:00
5ab30ba997 Merge pull request #4146 from wallabag/dependabot/composer/symfony/symfony-3.4.32
Bump symfony/symfony from 3.4.31 to 3.4.32
2019-10-08 05:43:37 +02:00
41fd648711 Bump symfony/symfony from 3.4.31 to 3.4.32
Bumps [symfony/symfony](https://github.com/symfony/symfony) from 3.4.31 to 3.4.32.
- [Release notes](https://github.com/symfony/symfony/releases)
- [Changelog](https://github.com/symfony/symfony/blob/v3.4.32/CHANGELOG-3.4.md)
- [Commits](https://github.com/symfony/symfony/compare/v3.4.31...v3.4.32)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-08 02:32:27 +00:00
7ed081fbce Updating portuguese translations 2019-10-07 18:46:07 +02:00
1d7c4e75d3 Merge pull request #4139 from SofLesc/spanish-translations
Update spanish translations
2019-10-07 15:20:52 +02:00
0ff962829a Update spanish translations 2019-10-07 13:33:20 +02:00
ad5213609f Merge pull request #4143 from wallabag/dependabot/composer/sentry/sentry-symfony-3.2.0
Bump sentry/sentry-symfony from 3.1.0 to 3.2.0
2019-10-07 09:11:38 +02:00
eb0fa19089 Bump sentry/sentry-symfony from 3.1.0 to 3.2.0
Bumps [sentry/sentry-symfony](https://github.com/getsentry/sentry-symfony) from 3.1.0 to 3.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/3.1.0...3.2.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-07 02:17:57 +00:00
43fab7363d Merge pull request #4134 from wallabag/fix-2fa-translation
Fixed translation for 2FA
2019-09-30 13:38:16 +02:00
3824f0dc3c Fixed translation for 2FA 2019-09-30 11:46:08 +02:00
14b73c6a1e Merge pull request #4128 from wallabag/add-mathjax
Added MathJax support
2019-09-27 17:08:20 +02:00
819269f0f2 Merge pull request #4129 from wallabag/fix-fr-translation
Fixed some 🇫🇷 typos
2019-09-27 16:46:03 +02:00
088804537e Added prod js files 2019-09-27 16:27:47 +02:00
90d28270d5 Fixed some 🇫🇷 typos 2019-09-27 16:20:35 +02:00
2f5fa30aad Added MathJax support 2019-09-27 16:01:55 +02:00
ed59ec63aa Merge pull request #4124 from wallabag/dependabot/composer/doctrine/orm-2.6.4
Bump doctrine/orm from 2.6.3 to 2.6.4
2019-09-24 08:43:48 +02:00
2133ca3116 Bump doctrine/orm from 2.6.3 to 2.6.4
Bumps [doctrine/orm](https://github.com/doctrine/orm) from 2.6.3 to 2.6.4.
- [Release notes](https://github.com/doctrine/orm/releases)
- [Commits](https://github.com/doctrine/orm/compare/v2.6.3...v2.6.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-24 02:20:34 +00:00
492aacd194 Merge pull request #4123 from wallabag/fix-reading-speed-install
Fixed default value for reading speed
2019-09-19 14:51:30 +02:00
af7b22a3be Fixed default value for reading speed 2019-09-19 14:23:06 +02:00
c7fce40b44 Bump phpstan/phpstan from 0.11.15 to 0.11.16 (#4121)
Bump phpstan/phpstan from 0.11.15 to 0.11.16
2019-09-18 07:44:25 +02:00
1a75823045 Bump phpstan/phpstan from 0.11.15 to 0.11.16
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 0.11.15 to 0.11.16.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Commits](https://github.com/phpstan/phpstan/compare/0.11.15...0.11.16)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-18 02:22:26 +00:00
ad8971856a Merge pull request #4119 from wallabag/dependabot/composer/phpstan/phpstan-doctrine-0.11.6
Bump phpstan/phpstan-doctrine from 0.11.5 to 0.11.6
2019-09-16 06:58:50 +02:00
cc7b2b912a Bump phpstan/phpstan-doctrine from 0.11.5 to 0.11.6
Bumps [phpstan/phpstan-doctrine](https://github.com/phpstan/phpstan-doctrine) from 0.11.5 to 0.11.6.
- [Release notes](https://github.com/phpstan/phpstan-doctrine/releases)
- [Commits](https://github.com/phpstan/phpstan-doctrine/compare/0.11.5...0.11.6)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-16 02:30:17 +00:00
63e4ce5ce3 Merge pull request #4111 from wallabag/update-deps
Update deps
2019-09-04 16:20:31 +02:00
3f6700fd6c Merge pull request #4105 from shtrom/dev-build
Make dev depend on build
2019-09-04 09:19:20 +02:00
3f2e602f36 Update deps 2019-09-04 09:17:08 +02:00
33b75b3b51 Merge pull request #4109 from wallabag/dependabot/composer/scheb/two-factor-bundle-4.7.1
Bump scheb/two-factor-bundle from 4.7.0 to 4.7.1
2019-09-03 06:20:56 +02:00
31363f3687 Bump scheb/two-factor-bundle from 4.7.0 to 4.7.1
Bumps [scheb/two-factor-bundle](https://github.com/scheb/two-factor-bundle) from 4.7.0 to 4.7.1.
- [Release notes](https://github.com/scheb/two-factor-bundle/releases)
- [Commits](https://github.com/scheb/two-factor-bundle/compare/v4.7.0...v4.7.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-03 02:21:33 +00:00
bdf8630c8d Merge pull request #4107 from wallabag/dependabot/composer/friendsofphp/php-cs-fixer-2.15.3
Bump friendsofphp/php-cs-fixer from 2.15.2 to 2.15.3
2019-09-02 08:10:17 +02:00
6642600115 Bump friendsofphp/php-cs-fixer from 2.15.2 to 2.15.3
Bumps [friendsofphp/php-cs-fixer](https://github.com/FriendsOfPHP/PHP-CS-Fixer) from 2.15.2 to 2.15.3.
- [Release notes](https://github.com/FriendsOfPHP/PHP-CS-Fixer/releases)
- [Changelog](https://github.com/FriendsOfPHP/PHP-CS-Fixer/blob/2.15/CHANGELOG.md)
- [Commits](https://github.com/FriendsOfPHP/PHP-CS-Fixer/compare/v2.15.2...v2.15.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-02 02:27:16 +00:00
b1574a3987 Make dev depend on build
Also, run `npm install` before building.

Signed-off-by: Olivier Mehani <shtrom@ssji.net>
2019-08-29 21:27:56 +10:00
e337267d76 Merge pull request #4104 from wallabag/dependabot/npm_and_yarn/mixin-deep-1.3.2
Bump mixin-deep from 1.3.1 to 1.3.2
2019-08-29 08:57:35 +02:00
77808a1874 Bump mixin-deep from 1.3.1 to 1.3.2
Bumps [mixin-deep](https://github.com/jonschlinkert/mixin-deep) from 1.3.1 to 1.3.2.
- [Release notes](https://github.com/jonschlinkert/mixin-deep/releases)
- [Commits](https://github.com/jonschlinkert/mixin-deep/compare/1.3.1...1.3.2)

Signed-off-by: dependabot[bot] <support@github.com>
2019-08-29 02:07:29 +00:00
ba863a801e Merge pull request #4103 from wallabag/dependabot/composer/friendsofphp/php-cs-fixer-2.15.2
Bump friendsofphp/php-cs-fixer from 2.15.1 to 2.15.2
2019-08-28 10:23:23 +02:00
5e8d8ff594 Bump friendsofphp/php-cs-fixer from 2.15.1 to 2.15.2
Bumps [friendsofphp/php-cs-fixer](https://github.com/FriendsOfPHP/PHP-CS-Fixer) from 2.15.1 to 2.15.2.
- [Release notes](https://github.com/FriendsOfPHP/PHP-CS-Fixer/releases)
- [Changelog](https://github.com/FriendsOfPHP/PHP-CS-Fixer/blob/2.15/CHANGELOG.md)
- [Commits](https://github.com/FriendsOfPHP/PHP-CS-Fixer/compare/v2.15.1...v2.15.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-28 02:17:17 +00:00
ea1a9f6f4d Merge pull request #4100 from wallabag/dependabot/npm_and_yarn/fstream-1.0.12
Bump fstream from 1.0.11 to 1.0.12
2019-08-27 09:37:24 +02:00
5c3f772c34 Bump fstream from 1.0.11 to 1.0.12
Bumps [fstream](https://github.com/npm/fstream) from 1.0.11 to 1.0.12.
- [Release notes](https://github.com/npm/fstream/releases)
- [Commits](https://github.com/npm/fstream/compare/v1.0.11...v1.0.12)

Signed-off-by: dependabot[bot] <support@github.com>
2019-08-27 06:59:53 +00:00
7c12ee1d94 Merge pull request #4099 from wallabag/dependabot/composer/symfony/symfony-3.4.31
Bump symfony/symfony from 3.4.30 to 3.4.31
2019-08-27 08:59:07 +02:00
86e60812fb Merge pull request #4098 from wallabag/dependabot/composer/symfony/phpunit-bridge-4.3.4
Bump symfony/phpunit-bridge from 4.3.3 to 4.3.4
2019-08-27 08:46:33 +02:00
a123881a83 Bump symfony/symfony from 3.4.30 to 3.4.31
Bumps [symfony/symfony](https://github.com/symfony/symfony) from 3.4.30 to 3.4.31.
- [Release notes](https://github.com/symfony/symfony/releases)
- [Changelog](https://github.com/symfony/symfony/blob/v3.4.31/CHANGELOG-3.4.md)
- [Commits](https://github.com/symfony/symfony/compare/v3.4.30...v3.4.31)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-27 02:27:17 +00:00
89b23fb8ed Bump symfony/phpunit-bridge from 4.3.3 to 4.3.4
Bumps [symfony/phpunit-bridge](https://github.com/symfony/phpunit-bridge) from 4.3.3 to 4.3.4.
- [Release notes](https://github.com/symfony/phpunit-bridge/releases)
- [Changelog](https://github.com/symfony/phpunit-bridge/blob/master/CHANGELOG.md)
- [Commits](https://github.com/symfony/phpunit-bridge/compare/v4.3.3...v4.3.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-27 02:24:22 +00:00
e7ceabf476 Merge pull request #4096 from wallabag/dependabot/composer/scheb/two-factor-bundle-4.7.0
Bump scheb/two-factor-bundle from 4.6.0 to 4.7.0
2019-08-26 08:53:21 +02:00
dab8b3958b Bump scheb/two-factor-bundle from 4.6.0 to 4.7.0
Bumps [scheb/two-factor-bundle](https://github.com/scheb/two-factor-bundle) from 4.6.0 to 4.7.0.
- [Release notes](https://github.com/scheb/two-factor-bundle/releases)
- [Commits](https://github.com/scheb/two-factor-bundle/compare/v4.6.0...v4.7.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-26 02:18:12 +00:00
0c46b5469a Merge pull request #4095 from wallabag/update-deps
Update deps
2019-08-24 13:36:26 +02:00
61e53dda3c Update deps
Which aren't handled by dependabot.
2019-08-23 08:09:45 +02:00
02efa4d457 Merge pull request #4094 from wallabag/dependabot/composer/scheb/two-factor-bundle-4.6.0
Bump scheb/two-factor-bundle from 4.5.0 to 4.6.0
2019-08-23 07:49:32 +02:00
997d10a06d Bump scheb/two-factor-bundle from 4.5.0 to 4.6.0
Bumps [scheb/two-factor-bundle](https://github.com/scheb/two-factor-bundle) from 4.5.0 to 4.6.0.
- [Release notes](https://github.com/scheb/two-factor-bundle/releases)
- [Commits](https://github.com/scheb/two-factor-bundle/compare/v4.5.0...v4.6.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-23 02:17:32 +00:00
795de6daa7 Merge pull request #4093 from Simounet/feat/material-design-icons-iconfont-from-3.0.3-to-5.0.1
material-design-icons-iconfont upgraded from 3.0.3 to 5.0.1
2019-08-22 07:43:05 +02:00
b2439a8e4e material-design-icons-iconfont upgraded from 3.0.3 to 5.0.1 2019-08-21 19:20:26 +02:00
8ecab22d32 Merge pull request #4092 from wallabag/dependabot/composer/m6web/redis-mock-4.6.1
Bump m6web/redis-mock from 4.6.0 to 4.6.1
2019-08-21 07:30:57 +02:00
984d63df8d Bump m6web/redis-mock from 4.6.0 to 4.6.1
Bumps [m6web/redis-mock](https://github.com/M6Web/RedisMock) from 4.6.0 to 4.6.1.
- [Release notes](https://github.com/M6Web/RedisMock/releases)
- [Commits](https://github.com/M6Web/RedisMock/compare/v4.6.0...v4.6.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-21 02:24:46 +00:00
1b49417fc6 Merge pull request #4091 from wallabag/dependabot/composer/phpstan/phpstan-0.11.15
Bump phpstan/phpstan from 0.11.12 to 0.11.15
2019-08-19 11:42:24 +02:00
773cf64c20 Merge pull request #4087 from wallabag/dependabot/composer/friendsofsymfony/jsrouting-bundle-2.4.0
Bump friendsofsymfony/jsrouting-bundle from 2.3.1 to 2.4.0
2019-08-19 11:24:47 +02:00
e9ccc686ac Bump phpstan/phpstan from 0.11.12 to 0.11.15
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 0.11.12 to 0.11.15.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Commits](https://github.com/phpstan/phpstan/compare/0.11.12...0.11.15)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-19 02:23:17 +00:00
56d3942385 Bump friendsofsymfony/jsrouting-bundle from 2.3.1 to 2.4.0
Bumps [friendsofsymfony/jsrouting-bundle](https://github.com/FriendsOfSymfony/FOSJsRoutingBundle) from 2.3.1 to 2.4.0.
- [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.3.1...2.4.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-12 02:24:17 +00:00
5d08dd2799 Merge pull request #4084 from wallabag/feature/internal-setting
Rename internal settings table
2019-08-08 16:40:59 +02:00
1576905e03 Rename internal settings table
In fact it's not _just_ a rename.
We are now able to use our own entity with the CraueConfigBundle which allow us to enforce a custom length on string field and avoid error with utf8mb4 on MySQL.
To fix that issue before we were in need to fork CraueConfigBundle to hard apply these length changes.

The recent 2.3.0 release fix that issue. That's why we are in need to rename the table (getting rid of the bundle name from it)

Also updating deps:
  - Updating symfony/polyfill-mbstring (v1.11.0 => v1.12.0)
  - Updating symfony/polyfill-ctype (v1.11.0 => v1.12.0)
  - Updating symfony/polyfill-php70 (v1.11.0 => v1.12.0)
  - Updating symfony/polyfill-util (v1.11.0 => v1.12.0)
  - Updating symfony/polyfill-php56 (v1.11.0 => v1.12.0)
  - Updating symfony/polyfill-intl-icu (v1.11.0 => v1.12.0)
  - Updating symfony/polyfill-apcu (v1.11.0 => v1.12.0)
  - Updating j0k3r/graby-site-config (1.0.88 => 1.0.89)
  - Updating php-http/message (1.7.2 => 1.8.0)
  - Updating symfony/polyfill-php73 (v1.11.0 => v1.12.0)
  - Updating symfony/http-client (v4.3.2 => v4.3.3)
  - Updating symfony/polyfill-php72 (v1.11.0 => v1.12.0)
  - Updating symfony/polyfill-intl-idn (v1.11.0 => v1.12.0)
  - Updating symfony/mime (v4.3.2 => v4.3.3)
  - Updating craue/config-bundle (dev-utf8mb4 46cfd37 => 2.3.0)
  - Updating masterminds/html5 (2.6.0 => 2.7.0)
  - Updating nette/di (v3.0.0 => v3.0.1)
  - Updating symfony/polyfill-iconv (v1.11.0 => v1.12.0)
  - Updating wallabag/php-mobi (1.0.1 => 1.1.0)
2019-08-08 16:03:20 +02:00
97c678a0b2 Merge pull request #4081 from shtrom/fix-slow-queries
Fix slow/unindexed queries
2019-08-08 15:27:49 +02:00
00567d9ccd CS 2019-08-08 11:45:39 +02:00
0810c75e0b Add tag_label & config_feed_token index 2019-08-08 09:36:03 +02:00
1a6980dbd1 Merge pull request #4082 from wallabag/dependabot/composer/scheb/two-factor-bundle-4.5.0
Bump scheb/two-factor-bundle from 4.4.0 to 4.5.0
2019-08-08 07:50:18 +02:00
06825216bc Merge pull request #4083 from wallabag/dependabot/composer/m6web/redis-mock-4.6.0
Bump m6web/redis-mock from 4.5.0 to 4.6.0
2019-08-08 07:48:52 +02:00
a634bcee1e Bump m6web/redis-mock from 4.5.0 to 4.6.0
Bumps [m6web/redis-mock](https://github.com/M6Web/RedisMock) from 4.5.0 to 4.6.0.
- [Release notes](https://github.com/M6Web/RedisMock/releases)
- [Commits](https://github.com/M6Web/RedisMock/compare/v4.5.0...v4.6.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-08 02:26:25 +00:00
ccf0fa9d70 Bump scheb/two-factor-bundle from 4.4.0 to 4.5.0
Bumps [scheb/two-factor-bundle](https://github.com/scheb/two-factor-bundle) from 4.4.0 to 4.5.0.
- [Release notes](https://github.com/scheb/two-factor-bundle/releases)
- [Commits](https://github.com/scheb/two-factor-bundle/compare/v4.4.0...v4.5.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-08 02:23:48 +00:00
2b0f4e86b2 Add user_created index
Signed-off-by: Olivier Mehani <shtrom@ssji.net>
2019-08-07 22:02:37 +10:00
588de419e0 Add user_archived index
Signed-off-by: Olivier Mehani <shtrom@ssji.net>
2019-08-07 21:44:00 +10:00
b700b38e17 Fix PG migration 2019-08-07 11:46:58 +02:00
24acf2e0f3 Fix migrations 2019-08-07 11:25:55 +02:00
5071c8c9cf Add index on starred entries
Fixes #4079

Signed-off-by: Olivier Mehani <shtrom@ssji.net>
2019-08-06 23:21:47 +10:00
d1dbe10e84 Update language in Entry model, and add index
Fixes #4080

Signed-off-by: Olivier Mehani <shtrom@ssji.net>
2019-08-06 23:21:18 +10:00
08a3ed1c68 Merge pull request #4077 from wallabag/dependabot/composer/m6web/redis-mock-4.5.0
Bump m6web/redis-mock from 4.4.1 to 4.5.0
2019-08-01 07:46:01 +02:00
12c03239b3 Bump m6web/redis-mock from 4.4.1 to 4.5.0
Bumps [m6web/redis-mock](https://github.com/M6Web/RedisMock) from 4.4.1 to 4.5.0.
- [Release notes](https://github.com/M6Web/RedisMock/releases)
- [Commits](https://github.com/M6Web/RedisMock/compare/v4.4.1...v4.5.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-01 02:16:43 +00:00
7f0e0b3f38 Merge pull request #4072 from wallabag/fix/travis-php-7.4
Test on PHP 7.4 instead of PHP 8.0 on Travis
2019-07-29 09:20:16 +02:00
03c818bbfb Merge pull request #4075 from wallabag/dependabot/composer/symfony/phpunit-bridge-4.3.3
Bump symfony/phpunit-bridge from 4.3.2 to 4.3.3
2019-07-29 09:11:21 +02:00
8f015c2107 Bump symfony/phpunit-bridge from 4.3.2 to 4.3.3
Bumps [symfony/phpunit-bridge](https://github.com/symfony/phpunit-bridge) from 4.3.2 to 4.3.3.
- [Release notes](https://github.com/symfony/phpunit-bridge/releases)
- [Changelog](https://github.com/symfony/phpunit-bridge/blob/master/CHANGELOG.md)
- [Commits](https://github.com/symfony/phpunit-bridge/compare/v4.3.2...v4.3.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-29 05:46:41 +00:00
8bbd0bf0a1 Merge pull request #4074 from wallabag/dependabot/composer/m6web/redis-mock-4.4.1
Bump m6web/redis-mock from 4.3.0 to 4.4.1
2019-07-29 07:41:25 +02:00
aea7d05770 Merge pull request #4076 from wallabag/dependabot/composer/symfony/symfony-3.4.30
Bump symfony/symfony from 3.4.29 to 3.4.30
2019-07-29 07:40:29 +02:00
38d2e25123 Bump symfony/symfony from 3.4.29 to 3.4.30
Bumps [symfony/symfony](https://github.com/symfony/symfony) from 3.4.29 to 3.4.30.
- [Release notes](https://github.com/symfony/symfony/releases)
- [Changelog](https://github.com/symfony/symfony/blob/v3.4.30/CHANGELOG-3.4.md)
- [Commits](https://github.com/symfony/symfony/compare/v3.4.29...v3.4.30)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-29 02:26:53 +00:00
4c25546235 Bump m6web/redis-mock from 4.3.0 to 4.4.1
Bumps [m6web/redis-mock](https://github.com/M6Web/RedisMock) from 4.3.0 to 4.4.1.
- [Release notes](https://github.com/M6Web/RedisMock/releases)
- [Commits](https://github.com/M6Web/RedisMock/compare/v4.3.0...4.4.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-29 02:20:32 +00:00
883ccc235e Re-add nightly 2019-07-26 16:37:12 +02:00
13fddc353e Merge pull request #4068 from wallabag/dependabot/composer/scheb/two-factor-bundle-4.4.0
Bump scheb/two-factor-bundle from 3.21.0 to 4.4.0
2019-07-26 14:10:17 +02:00
affa6602f0 Test on PHP 7.4 instead of PHP 8.0 on Travis
PHP 7.4 will be available before the 8.0
2019-07-26 13:59:39 +02:00
1ebc8e1f02 Fix tests 2019-07-26 13:37:44 +02:00
02a7eb8435 Merge pull request #4071 from Quenty31/master
Update of Occitan language
2019-07-26 13:36:32 +02:00
62665a32bb Upgrade to 4.0 2019-07-26 13:22:48 +02:00
b0ba7ff446 Update of Occitan language 2019-07-26 13:16:18 +02:00
b7cf2fa190 Merge pull request #4069 from wallabag/dependabot/composer/j0k3r/graby-2.0.2
Bump j0k3r/graby from 2.0.1 to 2.0.2
2019-07-26 07:57:14 +02:00
313d735078 Bump j0k3r/graby from 2.0.1 to 2.0.2
Bumps [j0k3r/graby](https://github.com/j0k3r/graby) from 2.0.1 to 2.0.2.
- [Release notes](https://github.com/j0k3r/graby/releases)
- [Commits](https://github.com/j0k3r/graby/compare/2.0.1...2.0.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-26 02:26:53 +00:00
28378675f1 Bump scheb/two-factor-bundle from 3.21.0 to 4.4.0
Bumps [scheb/two-factor-bundle](https://github.com/scheb/two-factor-bundle) from 3.21.0 to 4.4.0.
- [Release notes](https://github.com/scheb/two-factor-bundle/releases)
- [Upgrade guide](https://github.com/scheb/two-factor-bundle/blob/master/UPGRADE.md)
- [Commits](https://github.com/scheb/two-factor-bundle/compare/v3.21.0...v4.4.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-26 02:18:22 +00:00
3a9aa28558 Merge pull request #4063 from wallabag/fix/cookiejar
Use a custom cookiejar to avoid error when the cookie is badly saved
2019-07-24 16:57:04 +02:00
51d7f62b31 Add logger to FileCookieJar 2019-07-24 16:07:38 +02:00
9a80dcf11e Use a custom cookiejar to avoid error when the cookie is badly saved
It happens sometimes on wallabag.it, the json inside the cookie is badly saved and the json isn't valid. It generates an exception and avoid people to use the api and import contents.
To fix that, we use a dedicated `FileCookieJar`, which extends the default one from Guzzle to fix these issues.

Also updated deps
2019-07-24 10:42:20 +02:00
3a08e81969 Merge pull request #4058 from wallabag/feature/copy-client-info
Copy client info to clipboard
2019-07-17 17:04:14 +02:00
4910361ac4 Merge pull request #4059 from wallabag/dependabot/npm_and_yarn/lodash.mergewith-4.6.2
Bump lodash.mergewith from 4.6.1 to 4.6.2
2019-07-11 11:14:35 +02:00
f5f759e389 Bump lodash.mergewith from 4.6.1 to 4.6.2
Bumps [lodash.mergewith](https://github.com/lodash/lodash) from 4.6.1 to 4.6.2.
- [Release notes](https://github.com/lodash/lodash/releases)
- [Commits](https://github.com/lodash/lodash/commits)

Signed-off-by: dependabot[bot] <support@github.com>
2019-07-11 08:48:07 +00:00
879f8eaa18 Fixed typo in wallabag name 2019-07-10 09:59:07 +02:00
df45126a14 Update translations
Remove log
2019-07-09 15:54:59 +02:00
2f62f3abfe Fix tests 2019-07-09 14:02:58 +02:00
66fa0c26ab Copy client info to clipboard
From the listing page and the create summary page, you can now copy client info to the clipboard using dedicated buttons.
2019-07-09 13:46:02 +02:00
ff8fe22f2e Merge pull request #4054 from wallabag/fix/phpunit-lock
Remove PHPUnit lock
2019-07-09 11:53:49 +02:00
4f46330087 Merge pull request #4053 from wallabag/feature/manual-input-reading-speed
Add ability to manually define the reading speed
2019-07-09 11:53:20 +02:00
41022cb289 Add ability to manually define the reading speed
Instead of using a select, let the user decide its own speed.
2019-07-08 20:18:59 +02:00
d0cf488dd4 Remove PHPUnit lock
It should now be PHPUnit 7.4.
Update PHPStan configuration accordingly.
Also, enable `inferPrivatePropertyTypeFromConstructor` for better phpDoc support in constructors.
2019-07-08 14:12:53 +02:00
8effd6e99e Merge pull request #4028 from wallabag/feature/import-export-tagging-rules
Add ability to import/export tagging rules
2019-07-08 12:48:25 +02:00
34be2d5de4 Add ability to import/export tagging rules
- Add missing translations
- Add some tests
- Add `/api/taggingrule/export` API endpoint
- Add baggy theme
- Add error message when importing tagging rules failed
- Also fix all translations (I think we are good now)
2019-07-08 09:38:32 +02:00
92cd51aa2c Merge pull request #4052 from wallabag/dependabot/composer/phpstan/phpstan-0.11.10
Bump phpstan/phpstan from 0.11.9 to 0.11.10
2019-07-08 07:59:02 +02:00
849959e380 Bump phpstan/phpstan from 0.11.9 to 0.11.10
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 0.11.9 to 0.11.10.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Commits](https://github.com/phpstan/phpstan/compare/0.11.9...0.11.10)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-08 02:16:55 +00:00
d0841c7a27 Merge pull request #4049 from wallabag/fix/tidy-docker
Add missing tidy extension on Docker
2019-07-07 23:03:44 +02:00
8b0aa0a39d Merge pull request #4050 from wallabag/update-deps
Update deps
2019-07-07 00:43:36 +02:00
154d09745f Update deps
They are not direct deps, which means dependabot can't submit them.

  - Updating ralouphie/getallheaders (2.0.5 => 3.0.3)
  - Updating guzzlehttp/psr7 (1.5.2 => 1.6.1)
  - Updating symfony/http-client (v4.3.1 => v4.3.2)
  - Updating symfony/mime (v4.3.1 => v4.3.2)
  - Updating scheb/two-factor-bundle (v3.19.0 => v3.19.1)
  - Updating egulias/email-validator (2.1.8 => 2.1.9)
  - Updating nette/php-generator (v3.2.2 => v3.2.3)
2019-07-06 23:00:57 +02:00
0deec4082f Add missing tidy extension on Docker
It's required in the 2.4 version
2019-07-06 22:03:40 +02:00
830cce45b3 Merge pull request #4045 from wallabag/dependabot/composer/phpstan/phpstan-0.11.9
Bump phpstan/phpstan from 0.11.8 to 0.11.9
2019-07-04 06:52:04 +02:00
eba75bf295 Merge pull request #4044 from wallabag/dependabot/composer/sensio/framework-extra-bundle-5.4.0
Bump sensio/framework-extra-bundle from 5.3.1 to 5.4.0
2019-07-04 06:51:37 +02:00
6f80db6970 Bump phpstan/phpstan from 0.11.8 to 0.11.9
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 0.11.8 to 0.11.9.
- [Release notes](https://github.com/phpstan/phpstan/releases)
- [Commits](https://github.com/phpstan/phpstan/compare/0.11.8...0.11.9)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-04 02:20:25 +00:00
2c8dcab738 Bump sensio/framework-extra-bundle from 5.3.1 to 5.4.0
Bumps [sensio/framework-extra-bundle](https://github.com/sensiolabs/SensioFrameworkExtraBundle) from 5.3.1 to 5.4.0.
- [Release notes](https://github.com/sensiolabs/SensioFrameworkExtraBundle/releases)
- [Changelog](https://github.com/sensiolabs/SensioFrameworkExtraBundle/blob/master/CHANGELOG.md)
- [Commits](https://github.com/sensiolabs/SensioFrameworkExtraBundle/compare/v5.3.1...v5.4.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-04 02:16:23 +00:00
d269cf1257 Merge pull request #4040 from wallabag/dependabot/composer/sentry/sentry-symfony-3.1.0
Bump sentry/sentry-symfony from 3.0.0 to 3.1.0
2019-07-03 06:46:23 +02:00
4ef4b64cc2 Bump sentry/sentry-symfony from 3.0.0 to 3.1.0
Bumps [sentry/sentry-symfony](https://github.com/getsentry/sentry-symfony) from 3.0.0 to 3.1.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/3.0.0...3.1.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-03 02:16:39 +00:00
bbc67a5589 Merge pull request #4039 from wallabag/fix/missing-wallabag-prefix-migration
Fix hardcoded `wallabag_` prefix in migrations
2019-07-01 20:35:09 +02:00
b8fa1b13a6 Fix hardcoded wallabag_ prefix in migration
Again.
Looks like there are still some which were missing to be replaced.
2019-07-01 13:38:53 +02:00
5c29ae4cf6 Merge pull request #4033 from wallabag/dependabot/composer/j0k3r/graby-2.0.1
Bump j0k3r/graby from 2.0.0 to 2.0.1
2019-06-28 07:34:47 +02:00
b0817af024 Bump j0k3r/graby from 2.0.0 to 2.0.1
Bumps [j0k3r/graby](https://github.com/j0k3r/graby) from 2.0.0 to 2.0.1.
- [Release notes](https://github.com/j0k3r/graby/releases)
- [Commits](https://github.com/j0k3r/graby/compare/2.0.0...2.0.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-28 02:21:00 +00:00
cfff90c5af Merge pull request #4029 from wallabag/dependabot/composer/symfony/symfony-3.4.29
Bump symfony/symfony from 3.4.28 to 3.4.29
2019-06-27 08:59:31 +02:00
04bc1faa73 Merge pull request #4030 from wallabag/dependabot/composer/symfony/phpunit-bridge-4.3.2
Bump symfony/phpunit-bridge from 4.3.1 to 4.3.2
2019-06-27 08:58:37 +02:00
38f87f5d61 Bump symfony/phpunit-bridge from 4.3.1 to 4.3.2
Bumps [symfony/phpunit-bridge](https://github.com/symfony/phpunit-bridge) from 4.3.1 to 4.3.2.
- [Release notes](https://github.com/symfony/phpunit-bridge/releases)
- [Changelog](https://github.com/symfony/phpunit-bridge/blob/master/CHANGELOG.md)
- [Commits](https://github.com/symfony/phpunit-bridge/compare/v4.3.1...v4.3.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-27 02:24:19 +00:00
dbe56d5c4f Bump symfony/symfony from 3.4.28 to 3.4.29
Bumps [symfony/symfony](https://github.com/symfony/symfony) from 3.4.28 to 3.4.29.
- [Release notes](https://github.com/symfony/symfony/releases)
- [Changelog](https://github.com/symfony/symfony/blob/v3.4.29/CHANGELOG-3.4.md)
- [Commits](https://github.com/symfony/symfony/compare/v3.4.28...v3.4.29)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-27 02:19:44 +00:00
689b5fdf80 Merge pull request #4027 from wallabag/dependabot/composer/mnapoli/piwik-twig-extension-2.0.1
Bump mnapoli/piwik-twig-extension from 1.0.0 to 2.0.1
2019-06-24 10:18:07 +02:00
c546548ec3 Bump mnapoli/piwik-twig-extension from 1.0.0 to 2.0.1
Bumps [mnapoli/piwik-twig-extension](https://github.com/mnapoli/PiwikTwigExtension) from 1.0.0 to 2.0.1.
- [Release notes](https://github.com/mnapoli/PiwikTwigExtension/releases)
- [Commits](https://github.com/mnapoli/PiwikTwigExtension/compare/1.0.0...2.0.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-24 05:35:27 +00:00
ac4fda6ae9 Merge pull request #4021 from wallabag/doc/improve-contributing
Improve CONTRIBUTING guide
2019-06-24 07:31:25 +02:00
bd6a7622d3 Merge pull request #4020 from wallabag/fix/sqlite-reading-time-null
Fix `reading_time` being NULL on SQLite
2019-06-24 07:31:13 +02:00
29fa957587 Merge pull request #4018 from wallabag/fix/wallabag_user-migration
Fix migration with prefix table name
2019-06-24 07:30:57 +02:00
cdf458722d Merge pull request #4024 from wallabag/update-deps
Update deps
2019-06-24 07:30:35 +02:00
ac5844a68e Typo 2019-06-21 12:54:52 +02:00
a2f4efe6d2 Use Twig 2.0
`mnapoli/piwik-twig-extension` locked Twig to the 1.10 version. The new version is compatible with Twig 2.0
2019-06-21 12:46:53 +02:00
0a01a5f195 Update deps 2019-06-21 11:34:26 +02:00
c1a5dfe5e4 Use skipIf instead of abortIf
This is to avoid migration using an other SGBD to break.
2019-06-21 09:15:35 +02:00
8bfcb20f65 Merge pull request #4023 from wallabag/dependabot/composer/symfony/monolog-bundle-3.4.0
Bump symfony/monolog-bundle from 3.3.1 to 3.4.0
2019-06-21 07:04:45 +02:00
7319e7e0b3 Bump symfony/monolog-bundle from 3.3.1 to 3.4.0
Bumps [symfony/monolog-bundle](https://github.com/symfony/monolog-bundle) from 3.3.1 to 3.4.0.
- [Release notes](https://github.com/symfony/monolog-bundle/releases)
- [Changelog](https://github.com/symfony/monolog-bundle/blob/master/CHANGELOG.md)
- [Commits](https://github.com/symfony/monolog-bundle/compare/v3.3.1...v3.4.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-21 02:21:27 +00:00
1f36a21887 Fix reading_time being NULL on SQLite 2019-06-20 09:50:07 +02:00
0896bb3067 Merge pull request #4019 from wallabag/dependabot/composer/sensio/distribution-bundle-5.0.25
Bump sensio/distribution-bundle from 5.0.24 to 5.0.25
2019-06-20 09:49:29 +02:00
e06303d8ec Bump sensio/distribution-bundle from 5.0.24 to 5.0.25
Bumps [sensio/distribution-bundle](https://github.com/sensiolabs/SensioDistributionBundle) from 5.0.24 to 5.0.25.
- [Release notes](https://github.com/sensiolabs/SensioDistributionBundle/releases)
- [Commits](https://github.com/sensiolabs/SensioDistributionBundle/compare/v5.0.24...v5.0.25)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-20 04:52:35 +00:00
a59227db6b Merge pull request #4022 from wallabag/dependabot/composer/liip/theme-bundle-1.7.0
Bump liip/theme-bundle from 1.6.1 to 1.7.0
2019-06-20 06:47:19 +02:00
a531536522 Bump liip/theme-bundle from 1.6.1 to 1.7.0
Bumps [liip/theme-bundle](https://github.com/liip/LiipThemeBundle) from 1.6.1 to 1.7.0.
- [Release notes](https://github.com/liip/LiipThemeBundle/releases)
- [Commits](https://github.com/liip/LiipThemeBundle/compare/1.6.1...1.7.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-20 02:21:25 +00:00
2a61e13fae Improve CONTRIBUTING guide
Also:

- update the docker-compose to use Alpine image (lighter)
- update the PHP Dockerfile to use Imagick instead of GD (for GIF support when downloading images) and add support for SQLite
2019-06-19 14:54:38 +02:00
227e44d49c Fix PG migration 2019-06-19 09:06:58 +02:00
4552f1c117 Update test url
The previous URL started to report title as `snippet intertitre` instead of the previous title which contains Google.
It looks like a bug on the website side. Instead of updating the test to match that new title, I prefer to use a more recent url instead.
2019-06-18 22:40:05 +02:00
22807de7c5 Fix migration with prefix table name
Looks like we missed one `wallabag_user` in migration.
It can work for most people but if someone use a different prefix, it'll break.
2019-06-18 22:10:46 +02:00
3ed30d3415 Merge pull request #4016 from wallabag/dependabot/composer/nelmio/cors-bundle-1.5.6
Bump nelmio/cors-bundle from 1.5.5 to 1.5.6
2019-06-18 10:17:51 +02:00
1d699489b5 Merge pull request #4017 from wallabag/dependabot/composer/friendsofsymfony/jsrouting-bundle-2.3.1
Bump friendsofsymfony/jsrouting-bundle from 2.3.0 to 2.3.1
2019-06-18 09:41:59 +02:00
9b36a93b52 Bump friendsofsymfony/jsrouting-bundle from 2.3.0 to 2.3.1
Bumps [friendsofsymfony/jsrouting-bundle](https://github.com/FriendsOfSymfony/FOSJsRoutingBundle) from 2.3.0 to 2.3.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/2.3.0...2.3.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-18 02:25:21 +00:00
6657b11995 Bump nelmio/cors-bundle from 1.5.5 to 1.5.6
Bumps [nelmio/cors-bundle](https://github.com/nelmio/NelmioCorsBundle) from 1.5.5 to 1.5.6.
- [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/1.5.5...1.5.6)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-18 02:17:58 +00:00
f981d1d732 Merge pull request #4009 from wallabag/fix/check-git-directory
Check if .git directory exist before making the update
2019-06-17 08:19:16 +02:00
0a258f85be Return a different code when git isn't installed 2019-06-14 11:28:23 +02:00
1bbdd35731 Merge pull request #4010 from wallabag/dependabot/composer/doctrine/doctrine-fixtures-bundle-3.2.2
Bump doctrine/doctrine-fixtures-bundle from 3.2.0 to 3.2.2
2019-06-14 10:29:05 +02:00
7a82953b3e Check if .git directory exist
If that folder doesn’t exist, it means the udpate script won’t be able to run because it uses git to retrieve the update.
2019-06-14 10:13:40 +02:00
be8e2916c5 Bump doctrine/doctrine-fixtures-bundle from 3.2.0 to 3.2.2
Bumps [doctrine/doctrine-fixtures-bundle](https://github.com/doctrine/DoctrineFixturesBundle) from 3.2.0 to 3.2.2.
- [Release notes](https://github.com/doctrine/DoctrineFixturesBundle/releases)
- [Changelog](https://github.com/doctrine/DoctrineFixturesBundle/blob/master/CHANGELOG-3.1.md)
- [Commits](https://github.com/doctrine/DoctrineFixturesBundle/compare/3.2.0...3.2.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-14 08:08:21 +00:00
50bcf225e9 Merge pull request #4008 from wallabag/travis-xenial
Fix Travis build on Xenial dist
2019-06-14 10:01:36 +02:00
1009b286c9 Merge pull request #3995 from wallabag/feature/config-display-login
Display login in config / user
2019-06-12 21:36:00 +02:00
865707f929 Fix Travis build on Xenial dist 2019-06-12 20:34:12 +02:00
eeae34375d Typo 2019-06-12 17:44:28 +02:00
76cc8ca26f Update FUNDING.yml
"Some users provided are not enrolled in GitHub Sponsors."
2019-06-12 17:43:15 +02:00
12d7edd0d5 Merge pull request #4006 from wallabag/add-sponsor-badge
Create FUNDING.yml
2019-06-12 17:42:22 +02:00
a73b74a0f2 Create FUNDING.yml 2019-06-12 10:48:46 +02:00
a97f2bb8ed Merge pull request #4004 from wallabag/dependabot/composer/php-http/httplug-bundle-1.16.0
Bump php-http/httplug-bundle from 1.15.2 to 1.16.0
2019-06-12 07:24:36 +02:00
de6171a531 Bump php-http/httplug-bundle from 1.15.2 to 1.16.0
Bumps [php-http/httplug-bundle](https://github.com/php-http/HttplugBundle) from 1.15.2 to 1.16.0.
- [Release notes](https://github.com/php-http/HttplugBundle/releases)
- [Changelog](https://github.com/php-http/HttplugBundle/blob/master/CHANGELOG.md)
- [Commits](https://github.com/php-http/HttplugBundle/compare/1.15.2...1.16.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-12 02:18:54 +00:00
8d37ca56f6 Merge pull request #3999 from wallabag/dependabot/composer/symfony/phpunit-bridge-4.3.1
Bump symfony/phpunit-bridge from 4.3.0 to 4.3.1
2019-06-11 10:47:45 +02:00
90cf1e358f Bump symfony/phpunit-bridge from 4.3.0 to 4.3.1
Bumps [symfony/phpunit-bridge](https://github.com/symfony/phpunit-bridge) from 4.3.0 to 4.3.1.
- [Release notes](https://github.com/symfony/phpunit-bridge/releases)
- [Changelog](https://github.com/symfony/phpunit-bridge/blob/master/CHANGELOG.md)
- [Commits](https://github.com/symfony/phpunit-bridge/compare/v4.3.0...v4.3.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-11 07:20:04 +00:00
d4f465526e Merge pull request #3998 from wallabag/dependabot/composer/doctrine/doctrine-fixtures-bundle-3.2.0
Bump doctrine/doctrine-fixtures-bundle from 3.1.0 to 3.2.0
2019-06-11 09:12:54 +02:00
cb4108b44e Bump doctrine/doctrine-fixtures-bundle from 3.1.0 to 3.2.0
Bumps [doctrine/doctrine-fixtures-bundle](https://github.com/doctrine/DoctrineFixturesBundle) from 3.1.0 to 3.2.0.
- [Release notes](https://github.com/doctrine/DoctrineFixturesBundle/releases)
- [Changelog](https://github.com/doctrine/DoctrineFixturesBundle/blob/master/CHANGELOG-3.1.md)
- [Commits](https://github.com/doctrine/DoctrineFixturesBundle/compare/3.1.0...3.2.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-11 02:26:46 +00:00
871216861a Update translations 2019-06-06 15:14:41 +02:00
9c7997db8e Show untagged entries count on tag list (#3993)
Show untagged entries count on tag list
2019-06-06 14:09:23 +02:00
35c4c80148 Display login in config / user
Just so the user can see its login
2019-06-06 13:51:25 +02:00
35c7819cb6 Remove link when there are no untagged articles 2019-06-06 13:34:20 +02:00
c19845a7ae Merge pull request #3959 from wallabag/mig-tag-collation
mysql: change collation of tag label
2019-06-06 12:03:37 +02:00
2b04b300f8 Merge pull request #3994 from wallabag/feature/revoke-feed-token
Add ability to revoke feed token
2019-06-05 18:32:21 +02:00
c4bf12aade Add ability to revoke feed token 2019-06-05 17:55:13 +02:00
757ca53f63 Merge pull request #3992 from wallabag/feature/menu-quickstart
Add quickstart into the menu
2019-06-05 17:13:21 +02:00
0f2d24feb4 Fix typo & CS 2019-06-05 17:09:05 +02:00
ad51743e8b Show untagged entries count on tag list
Closes #3235

Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2019-06-05 17:03:51 +02:00
d010bdd44b Add quickstart into the menu
Just in case people want to see that page again.
2019-06-05 15:51:22 +02:00
7e5b7e029a Merge pull request #3990 from wallabag/feature/sentry
Add Sentry support
2019-06-05 14:41:42 +02:00
4fa63260e4 Merge pull request #3991 from wallabag/fix/secret
Try to force people to update the secret
2019-06-05 14:37:11 +02:00
c822b20835 Try to force people to update the secret 2019-06-05 14:14:17 +02:00
955a3bde17 Add Sentry support
Only enable in production
2019-06-05 13:15:15 +02:00
16e1c07553 Merge pull request #3271 from wallabag/store-resolved-url
Add `given_url` in Entry table to check if a redirected url has already added
2019-06-05 11:38:00 +02:00
d8809f70ea Typos 2019-06-05 10:54:43 +02:00
70df4c3359 Use two indexes instead of one for hashed urls
When using `OR` in a where clause, a composite index can't be used. We should use a `UNION` to take advantages of it.
Instead, create 2 indexes on each hashed urls and make 2 queries to find an url. It'll be faster than the previous solution.
2019-06-05 10:53:15 +02:00
8671da5ead Merge pull request #3987 from wallabag/fix/drop-simplepie
Drop SimplePie
2019-05-29 21:00:36 +02:00
7abda3ba52 Drop SimplePie
It was only used to make an absolute url when downloading images.
The deps is still there (in the `composer.lock`) because Graby use it (not for absolute but for encoding).
2019-05-29 17:05:12 +02:00
f3bfb875e9 Use hash given url to avoid duplicate
Using hashed url we can ensure an index on them to ensure it's fast.
2019-05-29 15:56:20 +02:00
ecd54aa57e Merge pull request #3986 from wallabag/fix/scrutinizer-issues
Fix some Scrutinizer issues
2019-05-29 14:40:01 +02:00
b7fa51ae7d Added given_url in entry table
- Added index on entry table for given_url field
- Fix tests:

    The previous `bit.ly` url redirected to doc.wallabag but that url doesn't exist in the fixtures.
    I used our own internal "redirector" to create a redirect to an url which exist in the fixtures.

Also, updating current migration to use the new `WallabagMigration`.
2019-05-29 13:50:59 +02:00
52e8d93248 Fix some Scrutinizer issues 2019-05-29 12:50:44 +02:00
e9579d6de9 Merge pull request #3985 from wallabag/update-composer
Keep composer.lock
2019-05-29 12:49:32 +02:00
2770b6d77d Typos 2019-05-29 12:02:24 +02:00
6546aca4a3 Keep composer.lock
We initially ignored the `composer.lock` because it generated a lock of rebase on PR when someone updated it and the master updated it too.
Now we have less contributions (sadly) so I think we won't run against that problem.
Also, it'll solve issue about people cloning the master and got angry because composer eat all the available memory to determine packages to install.
It'll also be much easier to make release.
Scrutinizer & Travis will be faster too.
2019-05-29 11:41:07 +02:00
73ec68b1ff Merge pull request #3984 from wallabag/2.4
Merge 2.4 into master
2019-05-29 11:14:00 +02:00
2cbee36a01 Merge pull request #3944 from shtrom/always-hash-exists-url
Always hash exists url
2019-05-28 14:18:33 +02:00
48d136d3a0 Merge pull request #3390 from aaa2000/httplug
Use httplug and graby 2.0
2019-05-28 14:00:22 +02:00
6e68417f03 Fix tests after rebase 2019-05-28 12:02:17 +02:00
36b0d52ee4 CS & fix tests 2019-05-28 11:44:21 +02:00
b6c1e1bacc Fix some tests 2019-05-28 11:44:20 +02:00
a91a3150fb CS 2019-05-28 11:42:27 +02:00
448d99f84e CS 2019-05-28 11:42:27 +02:00
1048c9c4a8 Configure timeout 2019-05-28 11:42:27 +02:00
5f08426201 Fix because of some breaking changes of Graby 2.0 2019-05-28 11:42:27 +02:00
bf9ace0643 Use httplug 2019-05-28 11:40:41 +02:00
92a6683562 Merge remote-tracking branch 'origin/master' into 2.4 2019-05-27 10:46:01 +02:00
2ba365c7c4 Merge pull request #3982 from wallabag/fix/https-test
Fix http/https test
2019-05-27 10:22:03 +02:00
d6cc0b249e Fix test 2019-05-27 09:38:07 +02:00
5c0701ba41 Merge pull request #3965 from nicofrand/previewPic
Preview picture: use the 1st pic retrieved if no og:image set
2019-05-26 17:47:44 +02:00
cc9731bf2b Merge pull request #3980 from wallabag/fix/instapaper-date-import
Fix Instapaper import date order
2019-05-24 16:03:05 +02:00
629a3797bc Remove useless methods
Also fix a phpdoc block
2019-05-24 15:46:28 +02:00
0132ccd2a2 Change the way to define algorithm for hashing url 2019-05-24 15:17:46 +02:00
4a5516376b Add Wallabag\CoreBundle\Helper\UrlHasher
Signed-off-by: Olivier Mehani <shtrom@ssji.net>
2019-05-24 15:17:46 +02:00
d5744bf0df Delegate findByUrlAndUserId to findByHashedUrlAndUserId
Signed-off-by: Olivier Mehani <shtrom@ssji.net>
2019-05-24 15:17:46 +02:00
31e276fc16 EntryRestController::getEntriesExistsAction: always find by hashed url
Simplify the logic from #3158 by hashing all the urls from the request,
and only doing a search by hash. This allows to get performance benefits
from the new indexed hash column even when using older clients that do
not hash the URL in the request.

Fixes: #3158, #3919

Signed-off-by: Olivier Mehani <shtrom@ssji.net>
2019-05-24 15:17:45 +02:00
9ca670c801 Fix Instapaper import date 2019-05-24 14:37:54 +02:00
65b495e75b Merge pull request #3977 from wallabag/fix/7.2-dockerfile
Force PHP version in Dockerfile
2019-05-23 11:57:07 +02:00
c1a1c46e9d Force PHP version in Dockerfile 2019-05-23 08:51:54 +02:00
d99e6423f4 [tests] Fix pre-existing tests (preview now imported + records added) 2019-05-21 20:38:22 +02:00
715fabf8f2 [tests] Set first picture as preview picture 2019-05-21 20:38:22 +02:00
423efadefc Set first picture as preview picture 2019-05-21 20:38:22 +02:00
a2b5d67560 Merge pull request #3960 from wallabag/api-entries-2817
api/entries: add parameter detail to exclude or include content in response
2019-05-21 11:18:19 +02:00
feb239ea10 mysql: change collation of tag table
utf8mb4_unicode_ci considers that 'caché' is equal to 'cache' which
can lead to attaching incorrect tags to entries. This issue is due to
some unicode normalization done by MySQL.

utf8mb4_bin makes no unicode normalization, letting wallabag to consider
'cache' and 'caché' as two different tags.

We change the collation of the whole table as Doctrine does not support
setting a collation on a column for a specific platform (it tries to
apply utf8mb4_bin even for pgsql and sqlite).

Fixes #3302

Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2019-05-19 23:37:49 +02:00
2c290747cb api/entries: add parameter detail to exclude or include content in response
detail=metadata will nullify the content field of entries in order to
make smaller responses.

detail=full keeps the former behavior, it sends the content of entries.
It's the default, for backward compatibility.

Fixes #2817

Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2019-05-18 18:11:08 +02:00
b8b37ccdea CS 2019-05-15 14:58:40 +02:00
9f0957b831 Merge remote-tracking branch 'origin/master' into 2.4 2019-05-15 14:38:07 +02:00
9e2194e9cb Merge pull request #3956 from wallabag/fix/delete-cascade-oauth2
Cascade delete on oauth2 table when deleting a user
2019-05-13 06:41:16 +02:00
754bf12e67 Fix SQLite constraint 2019-05-10 21:15:46 +02:00
d2ef2d6df8 Fix SQLite migration 2019-05-10 20:36:45 +02:00
637f0df976 Cascade delete on oauth2 table when deleting a user 2019-05-10 20:36:45 +02:00
de1162b91a Merge pull request #3955 from wallabag/fix/gif-animation-imagick
Use Imagick to keep GIF animation
2019-05-10 21:24:06 +03:00
844fd9fafc Fallback to default solution if Imagick fails 2019-05-10 16:52:01 +02:00
77bd7f690d CS 2019-05-10 15:49:39 +02:00
1ca9310f5e Setup Imagick for Travis
To avoid error from phpstan about class not found
2019-05-10 15:47:47 +02:00
9306c2a368 Use Imagick to keep GIF animation
If Imagick is available, GIF will be saved using it to keep animation.
Otherwise the previous method will be used and the animation won't be kept.
2019-05-10 15:33:36 +02:00
6e67f41152 Merge pull request #3223 from wallabag/rss2atom
Changed RSS to Atom feed and improve paging
2019-05-09 15:21:21 +03:00
68a90821a3 Handle redirection from previous feeds 2019-04-26 13:40:58 +02:00
f277bc042c Fix tests & cs & migration 2019-04-26 12:53:21 +02:00
531c8d0a5c Changed RSS to Atom feed and improve paging 2019-04-25 13:46:31 +02:00
522e37ad27 Merge pull request #3158 from wallabag/hash-exist-url
Hash exist url
2019-04-25 13:28:09 +02:00
76bc05ebc0 Fix ApiDoc about md5/sha1 2019-04-02 22:59:50 +02:00
5cc0646e66 Fix index on MySQL 2019-04-01 15:45:17 +02:00
c579ce2306 Some cleanup
Also, do not run the hashed_url migration into a Doctrine migration
2019-04-01 14:34:20 +02:00
8a64566298 Use a better index for hashed_url
It'll most often be used in addition to the `user_id`.
Also, automatically generate the hash when saving the url.
Switch from `md5` to `sha1`.
2019-04-01 13:51:57 +02:00
9c2b2aae70 Keep url in exists endpoint
- Add migration
- Use md5 instead of sha512 (we don't need security here, just a hash)
- Update tests
2019-04-01 13:24:40 +02:00
bfe02a0b48 Hash the urls to check if they exist
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-04-01 13:24:40 +02:00
3620dae1e6 Merge remote-tracking branch 'origin/master' into 2.4 2019-04-01 13:16:15 +02:00
b886ee923d Merge pull request #3868 from Nadrieril/fix-3662
Add missing entries in craue_config_setting.
2019-03-02 17:20:18 +01:00
85403dae04 Disable down for that migration 2019-03-01 20:26:59 +01:00
fcd54e2447 Test each internal settings before creating them 2019-03-01 20:26:58 +01:00
c2efb5a306 Add missing entries in craue_config_setting.
Should fix https://github.com/wallabag/wallabag/issues/3662
2019-03-01 20:26:58 +01:00
fc4c1f50b4 Merge pull request #3857 from wallabag/php73
Replace continue; with break; to avoid PHP 7.3 warnings
2019-02-27 15:31:57 +01:00
8c0ba95307 Adding more tests 2019-02-27 15:01:03 +01:00
ea925bb112 CS 2019-02-27 14:33:26 +01:00
3784688a88 Replace continue; with break; to avoid PHP 7.3 warnings
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-02-27 14:29:14 +01:00
a86c3f1759 Merge pull request #3879 from wallabag/fix/url-default-protocol
Force default_protocol to generate an url input
2019-02-08 15:39:51 +01:00
baa5ee2d42 Force default_protocol to generate an url input 2019-02-08 15:03:52 +01:00
18460b2d79 Merge remote-tracking branch 'origin/master' into 2.4 2019-02-07 18:01:15 +01:00
2e5b3fa361 Merge pull request #3798 from wallabag/update-two-factor-bundle
Enable OTP 2FA
2019-01-30 01:02:27 +01:00
4654a83b64 Hash backup codes in the database using password_hash 2019-01-23 14:43:39 +01:00
7485a272ff Revert PG on Travis about drop/create the database 2019-01-23 13:47:51 +01:00
c416ed485f CS 2019-01-23 13:28:24 +01:00
a0c5eb003f Change the way to enable 2FA
And add a step to validate a generated code from the OTP app
2019-01-23 13:28:24 +01:00
4c0e747940 Remove secret from admin 2019-01-23 13:28:24 +01:00
e073090b8d Update translation 2019-01-23 13:28:24 +01:00
6df8b9c6a9 Fix PG & Travis drop/create database 2019-01-23 13:28:24 +01:00
842af5c357 Add SQLite & PG migration
Also remove the forced `server_version` from dbal config to avoid an
hard overriding across all database.
2019-01-23 13:28:23 +01:00
dfd0a7bc5f Add backup codes 2019-01-23 13:28:03 +01:00
6e4fc956ab Better translations
Replace “Google Authenticator” by “Google Authenticator, Authy or FreeOTP” in all text.

Translate how to use the code / qr code.
2019-01-23 13:28:02 +01:00
43ccf4b178 Cleanup 2019-01-23 13:28:02 +01:00
2dfbe9e5fa Fix tests 2019-01-23 13:28:02 +01:00
edc79ad886 Fix test for custom version of the tidy extension 2019-01-23 13:28:02 +01:00
a6b242a1fd Enable OTP 2FA
- Update SchebTwoFactorBundle to version 3
- Enable Google 2fa on the bundle
- Disallow ability to use both email and google as 2fa
- Update Ocramius Proxy Manager to handle typed function & attributes (from PHP 7)
- use `$this->addFlash` shortcut instead of `$this->get('session')->getFlashBag()->add`
- update admin to be able to create/reset the 2fa
2019-01-23 13:28:02 +01:00
acd4412080 Create a dedicated tab to reset data 2019-01-23 13:28:01 +01:00
c6024246b7 Merge pull request #3627 from craig0990/feature/add-search-api-endpoint
Add a basic Search REST endpoint
2019-01-23 09:19:37 +01:00
a8f4f7665c Merge pull request #3864 from wallabag/fix/database-init-version
Removed hardcoded database version
2019-01-23 09:04:54 +01:00
e19fc02665 Avoid creating PG database on Travis
And Travis build on PHP 7.3 should not fail.
2019-01-22 21:43:15 +01:00
8010425444 Fix third argument to Route 2019-01-22 20:42:25 +01:00
019e1acc49 Factorize sendResponse between Api controllers
And run newer cs fixer
2019-01-22 20:42:25 +01:00
9133bd02d1 [wallabag/wallabag#2611] Fix PHPCS lint errors 2019-01-22 20:42:25 +01:00
b32057980e Fixes [wallabag/wallabag#2611] Add a basic Search REST endpoint
- Adds a new `search` key to `src/Wallabag/ApiBundle/Resources/config/routing_rest.yml`
- Reuses the `getBuilderForSearchByUser` method from the EntryRepository
- Supports, `term`, `page`, and `perPage` query parameters
- Some very basic tests
2019-01-22 20:42:24 +01:00
6113dbbc20 Removed hardcoded database version 2019-01-22 20:38:28 +01:00
3527c30021 Merge pull request #3526 from wallabag/add-random-article
Add random feature
2019-01-22 18:30:02 +01:00
fe5850d6e2 Update icon to casino 2019-01-22 17:05:21 +01:00
091bafeb4c Handle no random result found 2019-01-19 22:30:50 +01:00
2491c50b6b Fix status from Instapaper
That status was used as `http_status` in ContentProxy->stockEntry
2019-01-19 22:24:52 +01:00
50f35f0db2 Move icon into the top menu bar
Change the way to select a random entry:
- select all ids from the given user (with filters)
- choose randomly one in php
- find that entry
2019-01-19 22:24:10 +01:00
9a57653aec Redirect to the current view instead of homepage 2019-01-19 21:10:16 +01:00
90a0d086a8 Better icon 2019-01-19 21:10:16 +01:00
062fad434a Better random function 2019-01-19 21:09:33 +01:00
0447a75b06 Use only one method to randomize
Instead of one per type, one for all is ok.
2019-01-19 21:09:33 +01:00
f85d220c19 Fix tests 2019-01-19 21:09:33 +01:00
09ef25c3c3 Added random feature 2019-01-19 21:09:32 +01:00
c73025ad8b Merge pull request #3858 from wallabag/bump-ocramius
Bump ocramius/proxy-manager
2019-01-18 16:50:24 +01:00
963b873626 CS 2019-01-18 16:05:20 +01:00
6bfbf16eeb Merge pull request #3859 from wallabag/phpstan
Enable PHPStan
2019-01-18 15:56:39 +01:00
1e0d8ad7b7 Enable PHPStan
- Fix error for level 0 & 1 (level 7 has 699 errors...)
- Add `updated_at` to site_credential (so the `timestamps()` method applies correctly)
2019-01-18 15:25:50 +01:00
9666fb70fc Bump ocramius/proxy-manager
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-01-17 12:47:24 +01:00
8445ad4790 Merge pull request #3845 from wallabag/feature/api-info-endpoint
Add a new endpoint to retrieve information from the wallabag instance
2019-01-15 12:22:35 +01:00
3bd65991ad Add a new endpoint to retrieve information from the wallabag instance
Useful for api client which required some information.
We might add more inside them in the future.

The endpoint /api/version should be avoided now as it contains not so much information rather the version.
2019-01-15 10:17:11 +01:00
3afc87426d CS 2019-01-15 09:49:22 +01:00
5419a8368e Merge remote-tracking branch 'origin/master' into 2.4 2019-01-15 09:41:18 +01:00
5c331bf0f9 Merge pull request #3799 from wallabag/mruminski-patch-1
Update messages.pl.yml
2018-12-02 19:30:13 +01:00
e014fa0395 Update messages.pl.yml
Add missing translation
2018-12-02 18:14:21 +01:00
39502b4748 Merge pull request #3758 from wallabag/dropping-php5
Dropping PHP < 7.1
2018-11-29 16:41:23 +01:00
877787e5fe Fix utf8mb4 on vendor tables
When creating the schema for test these tables use default length for
string: 255. Which fail when using utf8mb4.

> Syntax error or access violation: 1071 Specified key was too long; max key length is 767 bytes

Also move the `setKeepStaticConnections` in before and after class to
avoid:

> SAVEPOINT DOCTRINE2_SAVEPOINT_2 does not exist

See https://github.com/dmaicher/doctrine-test-bundle#troubleshooting
2018-11-28 22:04:55 +01:00
9a8a1bdfdb Use our own fork for CraueConfigBundle
Mostly to fix utf8mb4 issue
2018-11-28 22:04:55 +01:00
f168642b50 Force PHPUnit
Looks like "dama/doctrine-test-bundle" isn't compatible with PHPUnit 5.7
(required automatically by PHPUnit Bridge)
2018-11-28 22:04:55 +01:00
b13b2ef052 CS 2018-11-28 22:04:55 +01:00
8f2038e5b1 Fix tests 2018-11-28 22:04:55 +01:00
1b6b77f029 Remove custom Postgres class
Because PG > 10 is now supported by DBAL >= 2.6.0
2018-11-28 22:04:54 +01:00
db9b6d8d0d Update fixtures 2018-11-28 22:04:54 +01:00
9394e8098a Jump to unrelease predis
To fix deprecated message regarding `each()`
2018-11-28 22:04:54 +01:00
6fc95673df Cleanup 2018-11-28 22:04:54 +01:00
0f159f8fc1 Fix RulerZBundle
People should really follow semver and provide UPGRADE file when they
provide a library ...
2018-11-25 10:08:45 +01:00
3c7900d0cd Jump to PHP 7.1+ 2018-11-25 10:08:45 +01:00
b878be4cc9 Merge remote-tracking branch 'origin/master' into 2.4
# Conflicts:
#	web/wallassets/baggy.js
#	web/wallassets/manifest.json
#	web/wallassets/material.css
#	web/wallassets/material.js
2018-11-25 09:58:18 +01:00
e673b54f70 Merge pull request #3574 from shulard/feature/rename-tags
Allow to rename tags from the web interface.
2018-10-15 08:32:59 +00:00
5bb01c0344 Merge pull request #3216 from wallabag/change-locale-register
Added possibility to change locale from login/register pages
2018-10-15 08:31:42 +00:00
4d4147b228 Ensure language is valid
- Do not override locale if user has choosen a locale from the login screen.
- Add some tests about locale url
2018-10-13 09:39:00 +02:00
be417ef236 Added possibility to change locale from login/register pages 2018-10-13 09:39:00 +02:00
43b6f3a8a8 Merge pull request #3596 from glego/add-secure-email
Add secure email
2018-10-11 09:34:52 +00:00
6a3187066f Add secure email 2018-10-11 07:57:11 +02:00
102f57941e Merge pull request #3731 from wallabag/symfony3.4
Jump to Symfony 3.4
2018-10-08 08:00:07 +00:00
115de64e5b Jump to Symfony 3.4
Thanks to the BC compatibility, almost nothing have to be changed.
All changes are related to new bundle version of:
- SensioFrameworkExtraBundle
- DoctrineFixturesBundle
2018-10-04 14:11:57 +02:00
84d59603c5 Update assets 2018-09-25 10:21:21 +02:00
03b2058dbe Add tests about the tag renaming process. 2018-09-25 10:18:36 +02:00
32968bd30e Add specific styles for the card tag form element.
Also add a `.hidden` class in the baggy theme to have consistency with material.
2018-09-25 10:18:35 +02:00
559f708cae Add translations about latest Tag changes.
Add new translations in each language file.
2018-09-25 10:18:08 +02:00
9b0aef9171 Update tag list template to allow renaming.
* Add a form on each tag to handle rename action.
* Add JavaScript to handle action on the corresponding page inside the global index.js file.
* Add support for the 2 active themes : material / baggy

The form solution is cleaner than an Ajax one because it let the browser validate input data and make the POST easier without the need to handle JSON response.
2018-09-25 10:18:08 +02:00
b846c1e4d0 Add RenameForm as tag list view parameters.
This will help handling the CSRF protection token and use symfony HTML generation layer.
Also a FormView instance is generated for each tag because we need to render a form for each tag and FormView are not reusable.
2018-09-25 10:18:08 +02:00
be326a22f9 Create a new Tag action to rename tags.
The current tag is removed from all the current logged user entries. Then the new one is created and attached.
2018-09-25 10:18:08 +02:00
a664a1d876 Rename Tag : Add a new FormType 2018-09-25 10:18:08 +02:00
2b6380f5ac Merge pull request #3630 from sviande/archived_at
Entry: add archived_at property and updateArchived method
2018-09-21 09:46:58 +00:00
9007fe0062 Sort archive page by archived at 2018-09-21 11:18:29 +02:00
7c0d682687 Code Style 2018-09-21 10:33:33 +02:00
0e70e81227 Entry: add sort parameter archived 2018-09-21 10:33:33 +02:00
7975395d10 Entry: add archived_at property and updateArchived method 2018-09-21 10:33:33 +02:00
2f3af70e1a Merge remote-tracking branch 'origin/master' into 2.4 2018-09-21 10:17:38 +02:00
b6d72e0c91 Merge remote-tracking branch 'origin/master' into 2.4 2018-09-16 19:45:37 +02:00
7083c0a21d Merge remote-tracking branch 'origin/master' into 2.4 2018-09-07 13:46:30 +02:00
44043ebe82 Merge remote-tracking branch 'origin/master' into 2.4 2018-07-03 13:55:25 +02:00
375 changed files with 17628 additions and 4730 deletions

View File

@ -13,5 +13,5 @@ insert_final_newline = true
indent_style = space
indent_size = 2
[Makefile]
[*akefile]
indent_style = tab

View File

@ -1,11 +1,41 @@
# How to contribute
## Test it locally
### Using Docker
- Clone the repository
- Ensure your Docker daemon is running
- Launch `docker-compose up`
You'll then have:
- a web server (nginx)
- a PHP daemon (using FPM)
- a Redis database (to handle imports)
- a SQLite database to store articles
You can now access your wallabag instance using that url: `http://127.0.0.1:8000`
If you want to test using an other database than SQLite, uncomment the `postgres` or `mariadb` code from the `docker-compose.yml` file at the root of the repo. Also uncomment related line in the `php` section so the database will be linked to your PHP instance.
### Using your own PHP server
- Ensure you are running PHP > 7.1.
- 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)
- Then `php bin/console wallabag:install`
- If you got some errors, fix them (they might be related to some missing PHP extension from your machine)
- Run `php bin/console server:run`
You can now access your wallabag instance using that url: `http://127.0.0.1:8000`
## You found a bug
Please [open a new issue](https://github.com/wallabag/wallabag/issues/new).
To fix the bug quickly, we need some infos: please answer to the questions in the issue form.
If you have the skills, look for errors into php, server and application (see `var/logs`) logs.
If you have the skills, look for errors into PHP, server and application logs (see `var/logs`).
Note : If you have large portions of text, use [Github's Gist service](https://gist.github.com/) or other pastebin-like.

2
.github/FUNDING.yml vendored Normal file
View File

@ -0,0 +1,2 @@
# github: [nicosomb, j0k3r, tcitworld, Kdecherf]
liberapay: wallabag

7
.gitignore vendored
View File

@ -32,6 +32,7 @@ web/uploads/
# Build
/app/build
/build
/coverage
# Composer PHAR
/composer.phar
@ -43,9 +44,6 @@ data/db/wallabag*.sqlite
docker/logs/
docker/data/
# To avoid crazy stuff on some PR, we must manually FORCE ADD IT on each new release
composer.lock
# assets stuff
node_modules/
bin
@ -57,3 +55,6 @@ app/Resources/build/
admin-export.json
specialexport.json
/data/site-credentials-secret-key.txt
# Custom CSS file
web/custom.css

View File

@ -1,31 +1,31 @@
os: linux
dist: xenial
language: php
services:
- mysql
- postgresql
- rabbitmq
- redis
# used for HHVM
addons:
apt:
packages:
- tidy
# cache vendor dirs
cache:
apt: true
directories:
- vendor
- $HOME/.composer/cache
- $HOME/.composer/cache/files
- node_modules
- $HOME/.npm
- $HOME/.yarn-cache
if: |
type = pull_request OR \
branch = master
php:
- 5.6
- 7.0
- 7.1
- 7.2
- nightly
- 7.3
- 7.4
node_js:
- "5"
@ -35,13 +35,11 @@ env:
- DB=pgsql
- DB=sqlite
matrix:
jobs:
fast_finish: true
include:
- php: 7.0
- php: 7.3
env: CS_FIXER=run VALIDATE_TRANSLATION_FILE=run ASSETS=build DB=sqlite
allow_failures:
- php: nightly
# exclude v1 branches
branches:
@ -50,39 +48,30 @@ branches:
before_install:
- if [[ $TRAVIS_REPO_SLUG = wallabag/wallabag ]]; then cp .composer-auth.json ~/.composer/auth.json; fi;
- PHP=$TRAVIS_PHP_VERSION
- echo "memory_limit=-1" >> ~/.phpenv/versions/$(phpenv version-name)/etc/conf.d/travis.ini
- phpenv config-rm xdebug.ini || echo "xdebug not available"
- composer self-update --no-progress
# install imagick
- pear config-set preferred_state beta
- pecl channel-update pecl.php.net
- yes | pecl install imagick
install:
- if [[ $ASSETS = build ]]; then source ~/.nvm/nvm.sh && nvm install 6.10; fi;
- if [[ $ASSETS = build ]]; then npm install -g yarn@latest; fi;
- if [[ $ASSETS = build ]]; then yarn install; fi;
- composer install -o --no-interaction --no-progress --prefer-dist --no-suggest
- php bin/simple-phpunit install
before_script:
- PHP=$TRAVIS_PHP_VERSION
- if [[ ! $PHP = hhvm* ]]; then echo "memory_limit=-1" >> ~/.phpenv/versions/$(phpenv version-name)/etc/conf.d/travis.ini; fi;
# xdebug isn't enable for PHP 7.1
- if [[ ! $PHP = hhvm* ]]; then phpenv config-rm xdebug.ini || echo "xdebug not available"; fi
- composer self-update --no-progress
- if [[ $DB = pgsql ]]; then psql -c 'create database wallabag_test;' -U postgres; fi;
# increase swap to avoid "proc_open(): fork failed - Cannot allocate memory"
# this should be removed when no more PHP 5 build will be defined
- sudo swapon -s
- sudo fallocate -l 4G /swapfile
- sudo chmod 600 /swapfile
- sudo mkswap /swapfile
- sudo swapon /swapfile
- sudo swapon -s
- make prepare DB=$DB
- make fixtures
script:
- travis_wait bash composer update -o --no-interaction --no-progress --prefer-dist
- echo "travis_fold:start:prepare"
- make prepare DB=$DB
- echo "travis_fold:end:prepare"
- echo "travis_fold:start:fixtures"
- php bin/console doctrine:fixtures:load --no-interaction --env=test
- echo "travis_fold:end:fixtures"
- if [[ $VALIDATE_TRANSLATION_FILE = '' ]]; then ./bin/simple-phpunit -v ; fi;
# PHPStan needs PHPUnit to be installed and cache app to be generated
- if [[ $VALIDATE_TRANSLATION_FILE = '' ]]; then php bin/phpstan analyse src tests --no-progress --level 1 ; fi;
- if [[ $CS_FIXER = run ]]; then php bin/php-cs-fixer fix --verbose --dry-run ; fi;
- if [[ $VALIDATE_TRANSLATION_FILE = run ]]; then php bin/console lint:yaml src/Wallabag/CoreBundle/Resources/translations -v ; fi;
- if [[ $VALIDATE_TRANSLATION_FILE = run ]]; then php bin/console lint:yaml app/Resources/CraueConfigBundle/translations -v ; fi;

View File

@ -1,26 +0,0 @@
# see https://zappr.opensource.zalan.do/
autobranch: false
commit: false
approvals:
minimum: 1
ignore: pr_opener
pattern: "^(:\\+1:|👍)$"
veto:
pattern: "^(:\\-1:|👎)$"
from:
orgs:
- wallabag
collaborators: true
specification:
title:
minimum-length:
enabled: true
length: 8
body:
minimum-length:
enabled: true
length: 8
contains-url: false
contains-issue-number: false
template:
differs-from-body: true

76
CODE_OF_CONDUCT.md Normal file
View File

@ -0,0 +1,76 @@
# Contributor Covenant Code of Conduct
## Our Pledge
In the interest of fostering an open and welcoming environment, we as
contributors and maintainers pledge to making participation in our project and
our community a harassment-free experience for everyone, regardless of age, body
size, disability, ethnicity, sex characteristics, gender identity and expression,
level of experience, education, socio-economic status, nationality, personal
appearance, race, religion, or sexual identity and orientation.
## Our Standards
Examples of behavior that contributes to creating a positive environment
include:
* Using welcoming and inclusive language
* Being respectful of differing viewpoints and experiences
* Gracefully accepting constructive criticism
* Focusing on what is best for the community
* Showing empathy towards other community members
Examples of unacceptable behavior by participants include:
* The use of sexualized language or imagery and unwelcome sexual attention or
advances
* Trolling, insulting/derogatory comments, and personal or political attacks
* Public or private harassment
* Publishing others' private information, such as a physical or electronic
address, without explicit permission
* Other conduct which could reasonably be considered inappropriate in a
professional setting
## Our Responsibilities
Project maintainers are responsible for clarifying the standards of acceptable
behavior and are expected to take appropriate and fair corrective action in
response to any instances of unacceptable behavior.
Project maintainers have the right and responsibility to remove, edit, or
reject comments, commits, code, wiki edits, issues, and other contributions
that are not aligned to this Code of Conduct, or to ban temporarily or
permanently any contributor for other behaviors that they deem inappropriate,
threatening, offensive, or harmful.
## Scope
This Code of Conduct applies both within project spaces and in public spaces
when an individual is representing the project or its community. Examples of
representing a project or community include using an official project e-mail
address, posting via an official social media account, or acting as an appointed
representative at an online or offline event. Representation of a project may be
further defined and clarified by project maintainers.
## Enforcement
Instances of abusive, harassing, or otherwise unacceptable behavior may be
reported by contacting the project team at hello@wallabag.org. All
complaints will be reviewed and investigated and will result in a response that
is deemed necessary and appropriate to the circumstances. The project team is
obligated to maintain confidentiality with regard to the reporter of an incident.
Further details of specific enforcement policies may be posted separately.
Project maintainers who do not follow or enforce the Code of Conduct in good
faith may face temporary or permanent repercussions as determined by other
members of the project's leadership.
## Attribution
This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4,
available at https://www.contributor-covenant.org/version/1/4/code-of-conduct.html
[homepage]: https://www.contributor-covenant.org
For answers to common questions about this code of conduct, see
https://www.contributor-covenant.org/faq

View File

@ -1,4 +1,4 @@
Copyright (c) 2013-2017 Nicolas Lœuillet
Copyright (c) 2013-current Nicolas Lœuillet
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal

15
Capfile
View File

@ -1,15 +0,0 @@
set :deploy_config_path, 'app/config/capistrano/deploy.rb'
set :stage_config_path, 'app/config/capistrano/deploy'
# Load DSL and set up stages
require 'capistrano/setup'
# Include default deployment tasks
require 'capistrano/deploy'
require 'capistrano/composer'
require 'capistrano/file-permissions'
require 'capistrano/symfony'
# Load custom tasks from `lib/capistrano/tasks` if you have any defined
Dir.glob('lib/capistrano/tasks/*.rake').each { |r| import r }

View File

@ -2,7 +2,14 @@ SHELL=bash
TMP_FOLDER=/tmp
RELEASE_FOLDER=wllbg-release
ENV ?= prod
# ensure the ENV variable is well defined
AVAILABLE_ENV := prod dev test
ifneq ($(filter $(ENV),$(AVAILABLE_ENV)),)
# all good
else
# not good, force it to "prod"
override ENV = prod
endif
help: ## Display this help menu
@grep -E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-30s\033[0m %s\n", $$1, $$2}'
@ -16,13 +23,15 @@ install: ## Install wallabag with the latest version
update: ## Update the wallabag installation to the latest version
@./scripts/update.sh $(ENV)
dev: ## Install the latest dev version
dev: ENV=dev
dev: build ## Install the latest dev version
@./scripts/dev.sh
run: ## Run the wallabag built-in server
@php bin/console server:run --env=dev
build: ## Run webpack
@npm install
@npm run build:$(ENV)
prepare: clean ## Prepare database for testsuite

View File

@ -1,6 +0,0 @@
source "https://rubygems.org"
gem 'capistrano', '~> 3.4'
gem 'capistrano-composer'
gem 'capistrano-symfony', '~> 1.0.0.rc1'
gem 'capistrano-file-permissions'

View File

@ -1,37 +0,0 @@
GEM
remote: https://rubygems.org/
specs:
capistrano (3.4.0)
i18n
rake (>= 10.0.0)
sshkit (~> 1.3)
capistrano-composer (0.0.6)
capistrano (>= 3.0.0.pre)
capistrano-file-permissions (1.0.0)
capistrano (~> 3.0)
capistrano-symfony (1.0.0.rc1)
capistrano (~> 3.1)
capistrano-composer (~> 0.0.3)
capistrano-file-permissions (~> 1.0)
colorize (0.7.7)
i18n (0.7.0)
net-scp (1.2.1)
net-ssh (>= 2.6.5)
net-ssh (2.9.2)
rake (10.4.2)
sshkit (1.7.1)
colorize (>= 0.7.0)
net-scp (>= 1.1.2)
net-ssh (>= 2.8.0)
PLATFORMS
ruby
DEPENDENCIES
capistrano (~> 3.4)
capistrano-composer
capistrano-file-permissions
capistrano-symfony (~> 1.0.0.rc1)
BUNDLED WITH
1.13.5

View File

@ -19,10 +19,10 @@ Then you can install wallabag by executing the following commands:
```
git clone https://github.com/wallabag/wallabag.git
cd wallabag && make install
cd wallabag && make install
```
Now, [configure a virtual host](https://doc.wallabag.org/en/admin/installation/virtualhosts.html) to use your wallabag.
Now, [configure a virtual host](https://doc.wallabag.org/en/admin/installation/virtualhosts.html) to use your wallabag.
# Run on YunoHost
[![Install Wallabag with YunoHost](https://install-app.yunohost.org/install-with-yunohost.png)](https://install-app.yunohost.org/?app=wallabag2)
@ -30,6 +30,6 @@ Now, [configure a virtual host](https://doc.wallabag.org/en/admin/installation/v
Wallabag app for [YunoHost](https://yunohost.org). See [here](https://github.com/YunoHost-Apps/wallabag2_ynh)
# License
Copyright © 2013-2018 Nicolas Lœuillet <nicolas@loeuillet.org>
Copyright © 2013-current Nicolas Lœuillet <nicolas@loeuillet.org>
This work is free. You can redistribute it and/or modify it under the
terms of the MIT License. See the COPYING file for more details.

View File

@ -22,58 +22,42 @@ During this documentation, we assume the release is `$LAST_WALLABAG_RELEASE` (li
git checkout master
git pull origin master
git checkout -b release-$LAST_WALLABAG_RELEASE
SYMFONY_ENV=prod composer up --no-dev
```
- Update `.travis.yml` file and replace the composer line with this one:
```diff
script:
- - travis_wait bash composer install -o --no-interaction --no-progress --prefer-dist
+ - travis_wait bash composer update -o --no-interaction --no-progress --prefer-dist
composer up
```
- Then continue with these commands:
```
git add --force composer.lock .travis.yml
git add composer.lock
git commit -m "Release wallabag $LAST_WALLABAG_RELEASE"
git push origin release-$LAST_WALLABAG_RELEASE
```
- Create a new pull request with this title `DON'T MERGE Release wallabag $LAST_WALLABAG_RELEASE`. This pull request is used to launch builds on Travis-CI.
- Run these command to create the package:
- Create a new pull request with this title `Release wallabag $LAST_WALLABAG_RELEASE`. This pull request is used to launch builds on Travis-CI.
- Once PR is green, merge it and delete the branch.
- Run this command to create the package:
```
make release VERSION=$LAST_WALLABAG_RELEASE
```
- [Create the new release on GitHub](https://github.com/wallabag/wallabag/releases/new) by targetting the `release-$LAST_WALLABAG_RELEASE` branch. You have to upload the package (generated previously).
- Close the previously created pull request (**DO NOT MERGE IT**) and delete the `release-$LAST_WALLABAG_RELEASE` branch.
- Update the URL shortener (used on `wllbg.org` to generate links like `https://wllbg.org/latest-v2-package` or `http://wllbg.org/latest-v2`)
- [Create the new release on GitHub](https://github.com/wallabag/wallabag/releases/new) by targetting the `master` branch or any appropriate branch (for instance backports). You have to upload the package (generated previously).
- Update the URL shortener (used on `wllbg.org` to update links like `https://wllbg.org/latest-v2-package` or `http://wllbg.org/latest-v2`)
- Update Dockerfile https://github.com/wallabag/docker (and create a new tag)
- Update wallabag.org website (downloads, MD5 sum, releases and new blog post)
- Put the next patch version suffixed with `-dev` in `app/config/wallabag.yml` (`wallabag_core.version`)
- Drink a :beer:!
### `composer.lock`
A release tag must contain a `composer.lock` file. It sets which dependencies were available at the time a release was done,
making it easier to fix issues after the release. It also speeds up `composer install` on stable versions a LOT, by skipping the
dependencies resolution part.
Since `composer.lock` is ignored by default, either it must be removed from `.gitignore` _in the release branch_,
or it must be added using `git add --force composer.lock`.
### 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 7), a more common one should
If the PHP version used to generate the .lock isn't a widely available one (like PHP 8), a more common one should
be locally specified in `composer.lock`:
```json
"config": {
"platform": {
"php": "5.5.9",
"php": "7.1.3",
"ext-something": "4.0"
}
}

View File

@ -1,6 +1,7 @@
<?php
use Symfony\Component\Config\Loader\LoaderInterface;
use Symfony\Component\DependencyInjection\ContainerBuilder;
use Symfony\Component\HttpKernel\Kernel;
class AppKernel extends Kernel
@ -32,6 +33,9 @@ class AppKernel extends Kernel
new WhiteOctober\PagerfantaBundle\WhiteOctoberPagerfantaBundle(),
new FOS\JsRoutingBundle\FOSJsRoutingBundle(),
new BD\GuzzleSiteAuthenticatorBundle\BDGuzzleSiteAuthenticatorBundle(),
new OldSound\RabbitMqBundle\OldSoundRabbitMqBundle(),
new Http\HttplugBundle\HttplugBundle(),
new Sentry\SentryBundle\SentryBundle(),
// wallabag bundles
new Wallabag\CoreBundle\WallabagCoreBundle(),
@ -39,25 +43,32 @@ class AppKernel extends Kernel
new Wallabag\UserBundle\WallabagUserBundle(),
new Wallabag\ImportBundle\WallabagImportBundle(),
new Wallabag\AnnotationBundle\WallabagAnnotationBundle(),
new OldSound\RabbitMqBundle\OldSoundRabbitMqBundle(),
];
if (in_array($this->getEnvironment(), ['dev', 'test'], true)) {
$bundles[] = new Symfony\Bundle\DebugBundle\DebugBundle();
$bundles[] = new Symfony\Bundle\WebProfilerBundle\WebProfilerBundle();
$bundles[] = new Sensio\Bundle\DistributionBundle\SensioDistributionBundle();
$bundles[] = new Sensio\Bundle\GeneratorBundle\SensioGeneratorBundle();
$bundles[] = new Doctrine\Bundle\FixturesBundle\DoctrineFixturesBundle();
$bundles[] = new Symfony\Bundle\WebServerBundle\WebServerBundle();
if ('test' === $this->getEnvironment()) {
$bundles[] = new DAMA\DoctrineTestBundle\DAMADoctrineTestBundle();
}
if ('dev' === $this->getEnvironment()) {
$bundles[] = new Symfony\Bundle\MakerBundle\MakerBundle();
$bundles[] = new Symfony\Bundle\WebServerBundle\WebServerBundle();
}
}
return $bundles;
}
public function getRootDir()
{
return __DIR__;
}
public function getCacheDir()
{
return dirname(__DIR__) . '/var/cache/' . $this->getEnvironment();
@ -70,7 +81,8 @@ class AppKernel extends Kernel
public function registerContainerConfiguration(LoaderInterface $loader)
{
$loader->load($this->getProjectDir() . '/app/config/config_' . $this->getEnvironment() . '.yml');
$loader->load($this->getRootDir() . '/config/config_' . $this->getEnvironment() . '.yml');
$loader->load(function ($container) {
if ($container->getParameter('use_webpack_dev_server')) {
$container->loadFromExtension('framework', [
@ -86,5 +98,11 @@ class AppKernel extends Kernel
]);
}
});
$loader->load(function (ContainerBuilder $container) {
// $container->setParameter('container.autowiring.strict_mode', true);
// $container->setParameter('container.dumper.inline_class_loader', true);
$container->addObjectResource($this);
});
}
}

View File

@ -10,9 +10,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
*/
class Version20160401000000 extends WallabagMigration
{
/**
* @param Schema $schema
*/
public function up(Schema $schema)
{
$this->skipIf($schema->hasTable($this->getTable('entry')), 'Database already initialized');
@ -167,9 +164,6 @@ SQL
}
}
/**
* @param Schema $schema
*/
public function down(Schema $schema)
{
$this->addSql("DROP TABLE {$this->getTable('craue_config_setting')}");

View File

@ -10,9 +10,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
*/
class Version20160410190541 extends WallabagMigration
{
/**
* @param Schema $schema
*/
public function up(Schema $schema)
{
$entryTable = $schema->getTable($this->getTable('entry'));
@ -34,9 +31,6 @@ class Version20160410190541 extends WallabagMigration
}
}
/**
* @param Schema $schema
*/
public function down(Schema $schema)
{
$entryTable = $schema->getTable($this->getTable('entry'));

View File

@ -10,9 +10,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
*/
class Version20160812120952 extends WallabagMigration
{
/**
* @param Schema $schema
*/
public function up(Schema $schema)
{
$clientsTable = $schema->getTable($this->getTable('oauth2_clients'));
@ -34,9 +31,6 @@ class Version20160812120952 extends WallabagMigration
}
}
/**
* @param Schema $schema
*/
public function down(Schema $schema)
{
$clientsTable = $schema->getTable($this->getTable('oauth2_clients'));

View File

@ -10,9 +10,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
*/
class Version20160911214952 extends WallabagMigration
{
/**
* @param Schema $schema
*/
public function up(Schema $schema)
{
$redis = $this->container
@ -36,9 +33,6 @@ class Version20160911214952 extends WallabagMigration
$this->skipIf(false !== $rabbitmq && false !== $redis, 'It seems that you already played this migration.');
}
/**
* @param Schema $schema
*/
public function down(Schema $schema)
{
$this->addSql('DELETE FROM ' . $this->getTable('craue_config_setting') . " WHERE name = 'import_with_redis';");

View File

@ -10,9 +10,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
*/
class Version20160916201049 extends WallabagMigration
{
/**
* @param Schema $schema
*/
public function up(Schema $schema)
{
$configTable = $schema->getTable($this->getTable('config'));
@ -23,9 +20,6 @@ class Version20160916201049 extends WallabagMigration
$this->addSql('DELETE FROM ' . $this->getTable('craue_config_setting') . " WHERE name = 'pocket_consumer_key';");
}
/**
* @param Schema $schema
*/
public function down(Schema $schema)
{
$configTable = $schema->getTable($this->getTable('config'));

View File

@ -11,9 +11,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
*/
class Version20161001072726 extends WallabagMigration
{
/**
* @param Schema $schema
*/
public function up(Schema $schema)
{
$this->skipIf('sqlite' === $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'mysql\' or \'postgresql\'.');
@ -98,9 +95,6 @@ class Version20161001072726 extends WallabagMigration
$this->addSql('ALTER TABLE ' . $this->getTable('annotation') . ' ADD CONSTRAINT FK_annotation_entry FOREIGN KEY (entry_id) REFERENCES ' . $this->getTable('entry') . ' (id) ON DELETE CASCADE');
}
/**
* @param Schema $schema
*/
public function down(Schema $schema)
{
throw new SkipMigrationException('Too complex ...');

View File

@ -10,9 +10,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
*/
class Version20161022134138 extends WallabagMigration
{
/**
* @param Schema $schema
*/
public function up(Schema $schema)
{
$this->skipIf('mysql' !== $this->connection->getDatabasePlatform()->getName(), 'This migration only apply to MySQL');
@ -41,9 +38,6 @@ class Version20161022134138 extends WallabagMigration
$this->addSql('ALTER TABLE ' . $this->getTable('user') . ' CHANGE `name` `name` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;');
}
/**
* @param Schema $schema
*/
public function down(Schema $schema)
{
$this->skipIf('mysql' !== $this->connection->getDatabasePlatform()->getName(), 'This migration only apply to MySQL');

View File

@ -12,9 +12,6 @@ class Version20161024212538 extends WallabagMigration
{
private $constraintName = 'IDX_user_oauth_client';
/**
* @param Schema $schema
*/
public function up(Schema $schema)
{
$clientsTable = $schema->getTable($this->getTable('oauth2_clients'));
@ -32,9 +29,6 @@ class Version20161024212538 extends WallabagMigration
);
}
/**
* @param Schema $schema
*/
public function down(Schema $schema)
{
$clientsTable = $schema->getTable($this->getTable('oauth2_clients'));

View File

@ -10,9 +10,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
*/
class Version20161031132655 extends WallabagMigration
{
/**
* @param Schema $schema
*/
public function up(Schema $schema)
{
$images = $this->container
@ -25,9 +22,6 @@ class Version20161031132655 extends WallabagMigration
$this->addSql('INSERT INTO ' . $this->getTable('craue_config_setting') . " (name, value, section) VALUES ('download_images_enabled', 0, 'misc')");
}
/**
* @param Schema $schema
*/
public function down(Schema $schema)
{
$this->addSql('DELETE FROM ' . $this->getTable('craue_config_setting') . " WHERE name = 'download_images_enabled';");

View File

@ -12,9 +12,6 @@ class Version20161104073720 extends WallabagMigration
{
private $indexName = 'IDX_entry_created_at';
/**
* @param Schema $schema
*/
public function up(Schema $schema)
{
$entryTable = $schema->getTable($this->getTable('entry'));
@ -23,9 +20,6 @@ class Version20161104073720 extends WallabagMigration
$entryTable->addIndex(['created_at'], $this->indexName);
}
/**
* @param Schema $schema
*/
public function down(Schema $schema)
{
$entryTable = $schema->getTable($this->getTable('entry'));

View File

@ -10,9 +10,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
*/
class Version20161106113822 extends WallabagMigration
{
/**
* @param Schema $schema
*/
public function up(Schema $schema)
{
$configTable = $schema->getTable($this->getTable('config'));
@ -25,9 +22,6 @@ class Version20161106113822 extends WallabagMigration
]);
}
/**
* @param Schema $schema
*/
public function down(Schema $schema)
{
$configTable = $schema->getTable($this->getTable('config'));

View File

@ -10,9 +10,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
*/
class Version20161117071626 extends WallabagMigration
{
/**
* @param Schema $schema
*/
public function up(Schema $schema)
{
$share = $this->container
@ -36,9 +33,6 @@ class Version20161117071626 extends WallabagMigration
$this->skipIf(false !== $share && false !== $unmark, 'It seems that you already played this migration.');
}
/**
* @param Schema $schema
*/
public function down(Schema $schema)
{
$this->addSql('DELETE FROM ' . $this->getTable('craue_config_setting') . " WHERE name = 'share_unmark';");

View File

@ -10,9 +10,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
*/
class Version20161118134328 extends WallabagMigration
{
/**
* @param Schema $schema
*/
public function up(Schema $schema)
{
$entryTable = $schema->getTable($this->getTable('entry'));
@ -25,9 +22,6 @@ class Version20161118134328 extends WallabagMigration
]);
}
/**
* @param Schema $schema
*/
public function down(Schema $schema)
{
$entryTable = $schema->getTable($this->getTable('entry'));

View File

@ -10,9 +10,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
*/
class Version20161122144743 extends WallabagMigration
{
/**
* @param Schema $schema
*/
public function up(Schema $schema)
{
$access = $this->container
@ -25,9 +22,6 @@ class Version20161122144743 extends WallabagMigration
$this->addSql('INSERT INTO ' . $this->getTable('craue_config_setting') . " (name, value, section) VALUES ('restricted_access', 0, 'entry')");
}
/**
* @param Schema $schema
*/
public function down(Schema $schema)
{
$this->addSql('DELETE FROM ' . $this->getTable('craue_config_setting') . " WHERE name = 'restricted_access';");

View File

@ -18,9 +18,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
*/
class Version20161122203647 extends WallabagMigration
{
/**
* @param Schema $schema
*/
public function up(Schema $schema)
{
$userTable = $schema->getTable($this->getTable('user'));
@ -31,9 +28,6 @@ class Version20161122203647 extends WallabagMigration
$userTable->dropColumn('credentials_expired');
}
/**
* @param Schema $schema
*/
public function down(Schema $schema)
{
$userTable = $schema->getTable($this->getTable('user'));

View File

@ -10,9 +10,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
*/
class Version20161128084725 extends WallabagMigration
{
/**
* @param Schema $schema
*/
public function up(Schema $schema)
{
$configTable = $schema->getTable($this->getTable('config'));
@ -21,9 +18,6 @@ class Version20161128084725 extends WallabagMigration
$configTable->addColumn('list_mode', 'integer', ['notnull' => false]);
}
/**
* @param Schema $schema
*/
public function down(Schema $schema)
{
$configTable = $schema->getTable($this->getTable('config'));

View File

@ -16,9 +16,6 @@ class Version20161128131503 extends WallabagMigration
'expires_at' => 'datetime',
];
/**
* @param Schema $schema
*/
public function up(Schema $schema)
{
$userTable = $schema->getTable($this->getTable('user'));
@ -29,9 +26,6 @@ class Version20161128131503 extends WallabagMigration
}
}
/**
* @param Schema $schema
*/
public function down(Schema $schema)
{
$userTable = $schema->getTable($this->getTable('user'));

View File

@ -10,9 +10,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
*/
class Version20161214094402 extends WallabagMigration
{
/**
* @param Schema $schema
*/
public function up(Schema $schema)
{
$entryTable = $schema->getTable($this->getTable('entry'));
@ -35,9 +32,6 @@ class Version20161214094402 extends WallabagMigration
}
}
/**
* @param Schema $schema
*/
public function down(Schema $schema)
{
$entryTable = $schema->getTable($this->getTable('entry'));

View File

@ -12,9 +12,6 @@ class Version20161214094403 extends WallabagMigration
{
private $indexName = 'IDX_entry_uid';
/**
* @param Schema $schema
*/
public function up(Schema $schema)
{
$entryTable = $schema->getTable($this->getTable('entry'));
@ -23,9 +20,6 @@ class Version20161214094403 extends WallabagMigration
$entryTable->addIndex(['uid'], $this->indexName);
}
/**
* @param Schema $schema
*/
public function down(Schema $schema)
{
$entryTable = $schema->getTable($this->getTable('entry'));

View File

@ -13,9 +13,6 @@ class Version20170127093841 extends WallabagMigration
private $indexStarredName = 'IDX_entry_starred';
private $indexArchivedName = 'IDX_entry_archived';
/**
* @param Schema $schema
*/
public function up(Schema $schema)
{
$entryTable = $schema->getTable($this->getTable('entry'));
@ -25,9 +22,6 @@ class Version20170127093841 extends WallabagMigration
$entryTable->addIndex(['is_archived'], $this->indexArchivedName);
}
/**
* @param Schema $schema
*/
public function down(Schema $schema)
{
$entryTable = $schema->getTable($this->getTable('entry'));

View File

@ -10,9 +10,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
*/
class Version20170327194233 extends WallabagMigration
{
/**
* @param Schema $schema
*/
public function up(Schema $schema)
{
$scuttle = $this->container
@ -26,9 +23,6 @@ class Version20170327194233 extends WallabagMigration
$this->addSql('INSERT INTO ' . $this->getTable('craue_config_setting') . " (name, value, section) VALUES ('scuttle_url', 'http://scuttle.org', 'entry')");
}
/**
* @param Schema $schema
*/
public function down(Schema $schema)
{
$this->addSql('DELETE FROM ' . $this->getTable('craue_config_setting') . " WHERE name = 'share_scuttle';");

View File

@ -10,9 +10,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
*/
class Version20170405182620 extends WallabagMigration
{
/**
* @param Schema $schema
*/
public function up(Schema $schema)
{
$entryTable = $schema->getTable($this->getTable('entry'));
@ -30,9 +27,6 @@ class Version20170405182620 extends WallabagMigration
]);
}
/**
* @param Schema $schema
*/
public function down(Schema $schema)
{
$entryTable = $schema->getTable($this->getTable('entry'));

View File

@ -10,9 +10,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
*/
class Version20170407200919 extends WallabagMigration
{
/**
* @param Schema $schema
*/
public function up(Schema $schema)
{
$entryTable = $schema->getTable($this->getTable('entry'));
@ -21,9 +18,6 @@ class Version20170407200919 extends WallabagMigration
$entryTable->dropColumn('is_public');
}
/**
* @param Schema $schema
*/
public function down(Schema $schema)
{
$entryTable = $schema->getTable($this->getTable('entry'));

View File

@ -10,17 +10,11 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
*/
class Version20170420134133 extends WallabagMigration
{
/**
* @param Schema $schema
*/
public function up(Schema $schema)
{
$this->addSql('DELETE FROM ' . $this->getTable('craue_config_setting') . " WHERE name = 'download_pictures';");
}
/**
* @param Schema $schema
*/
public function down(Schema $schema)
{
$downloadPictures = $this->container

View File

@ -10,9 +10,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
*/
class Version20170501115751 extends WallabagMigration
{
/**
* @param Schema $schema
*/
public function up(Schema $schema)
{
$this->skipIf($schema->hasTable($this->getTable('site_credential')), 'It seems that you already played this migration.');
@ -34,9 +31,6 @@ class Version20170501115751 extends WallabagMigration
}
}
/**
* @param Schema $schema
*/
public function down(Schema $schema)
{
$schema->dropTable($this->getTable('site_credential'));

View File

@ -17,9 +17,6 @@ class Version20170510082609 extends WallabagMigration
'email_canonical',
];
/**
* @param Schema $schema
*/
public function up(Schema $schema)
{
$this->skipIf('mysql' !== $this->connection->getDatabasePlatform()->getName(), 'This migration only apply to MySQL');
@ -29,9 +26,6 @@ class Version20170510082609 extends WallabagMigration
}
}
/**
* @param Schema $schema
*/
public function down(Schema $schema)
{
$this->skipIf('mysql' !== $this->connection->getDatabasePlatform()->getName(), 'This migration only apply to MySQL');

View File

@ -10,9 +10,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
*/
class Version20170511115400 extends WallabagMigration
{
/**
* @param Schema $schema
*/
public function up(Schema $schema)
{
$entryTable = $schema->getTable($this->getTable('entry'));
@ -24,9 +21,6 @@ class Version20170511115400 extends WallabagMigration
]);
}
/**
* @param Schema $schema
*/
public function down(Schema $schema)
{
$entryTable = $schema->getTable($this->getTable('entry'));

View File

@ -13,19 +13,21 @@ class Version20170511211659 extends WallabagMigration
{
public function up(Schema $schema)
{
$tableName = $this->getTable('annotation');
switch ($this->connection->getDatabasePlatform()->getName()) {
case 'sqlite':
$annotationTableName = $this->getTable('annotation', true);
$userTableName = $this->getTable('user', true);
$entryTableName = $this->getTable('entry', true);
$this->addSql(<<<EOD
CREATE TEMPORARY TABLE __temp__wallabag_annotation AS
SELECT id, user_id, entry_id, text, created_at, updated_at, quote, ranges
FROM ${tableName}
FROM ${annotationTableName}
EOD
);
$this->addSql('DROP TABLE ' . $tableName);
$this->addSql('DROP TABLE ' . $annotationTableName);
$this->addSql(<<<EOD
CREATE TABLE ${tableName}
CREATE TABLE ${annotationTableName}
(
id INTEGER PRIMARY KEY NOT NULL,
user_id INTEGER DEFAULT NULL,
@ -35,16 +37,16 @@ CREATE TABLE ${tableName}
updated_at DATETIME NOT NULL,
quote CLOB NOT NULL,
ranges CLOB NOT NULL,
CONSTRAINT FK_A7AED006A76ED395 FOREIGN KEY (user_id) REFERENCES wallabag_user (id),
CONSTRAINT FK_A7AED006BA364942 FOREIGN KEY (entry_id) REFERENCES wallabag_entry (id) ON DELETE CASCADE
CONSTRAINT FK_A7AED006A76ED395 FOREIGN KEY (user_id) REFERENCES ${userTableName} (id),
CONSTRAINT FK_A7AED006BA364942 FOREIGN KEY (entry_id) REFERENCES ${entryTableName} (id) ON DELETE CASCADE
);
CREATE INDEX IDX_A7AED006A76ED395 ON wallabag_annotation (user_id);
CREATE INDEX IDX_A7AED006BA364942 ON wallabag_annotation (entry_id);
CREATE INDEX IDX_A7AED006A76ED395 ON ${annotationTableName} (user_id);
CREATE INDEX IDX_A7AED006BA364942 ON ${annotationTableName} (entry_id);
EOD
);
$this->addSql(<<<EOD
INSERT INTO ${tableName} (id, user_id, entry_id, text, created_at, updated_at, quote, ranges)
INSERT INTO ${annotationTableName} (id, user_id, entry_id, text, created_at, updated_at, quote, ranges)
SELECT id, user_id, entry_id, text, created_at, updated_at, quote, ranges
FROM __temp__wallabag_annotation;
EOD
@ -52,10 +54,10 @@ EOD
$this->addSql('DROP TABLE __temp__wallabag_annotation');
break;
case 'mysql':
$this->addSql('ALTER TABLE ' . $tableName . ' MODIFY quote TEXT NOT NULL');
$this->addSql('ALTER TABLE ' . $this->getTable('annotation') . ' MODIFY quote TEXT NOT NULL');
break;
case 'postgresql':
$this->addSql('ALTER TABLE ' . $tableName . ' ALTER COLUMN quote TYPE TEXT');
$this->addSql('ALTER TABLE ' . $this->getTable('annotation') . ' ALTER COLUMN quote TYPE TEXT');
break;
}
}

View File

@ -10,9 +10,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
*/
class Version20170602075214 extends WallabagMigration
{
/**
* @param Schema $schema
*/
public function up(Schema $schema)
{
$apiUserRegistration = $this->container
@ -25,9 +22,6 @@ class Version20170602075214 extends WallabagMigration
$this->addSql('INSERT INTO ' . $this->getTable('craue_config_setting') . " (name, value, section) VALUES ('api_user_registration', '0', 'api')");
}
/**
* @param Schema $schema
*/
public function down(Schema $schema)
{
$this->addSql('DELETE FROM ' . $this->getTable('craue_config_setting') . " WHERE name = 'api_user_registration';");

View File

@ -11,9 +11,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
*/
class Version20170606155640 extends WallabagMigration
{
/**
* @param Schema $schema
*/
public function up(Schema $schema)
{
$apiUserRegistration = $this->container
@ -26,9 +23,6 @@ class Version20170606155640 extends WallabagMigration
$this->addSql('DELETE FROM ' . $this->getTable('craue_config_setting') . " WHERE name = 'wallabag_url'");
}
/**
* @param Schema $schema
*/
public function down(Schema $schema)
{
$this->addSql('INSERT INTO ' . $this->getTable('craue_config_setting') . " (name, value, section) VALUES ('wallabag_url', 'wallabag.me', 'misc')");

View File

@ -10,9 +10,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
*/
class Version20170719231144 extends WallabagMigration
{
/**
* @param Schema $schema
*/
public function up(Schema $schema)
{
$this->skipIf('sqlite' === $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'mysql\' or \'postgresql\'.');
@ -89,9 +86,6 @@ class Version20170719231144 extends WallabagMigration
);
}
/**
* @param Schema $schema
*/
public function down(Schema $schema)
{
throw new SkipMigrationException('Too complex ...');

View File

@ -10,9 +10,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
*/
class Version20170824113337 extends WallabagMigration
{
/**
* @param Schema $schema
*/
public function up(Schema $schema)
{
$entryTable = $schema->getTable($this->getTable('entry'));
@ -37,9 +34,6 @@ class Version20170824113337 extends WallabagMigration
);
}
/**
* @param Schema $schema
*/
public function down(Schema $schema)
{
$entryTable = $schema->getTable($this->getTable('entry'));

View File

@ -10,9 +10,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
*/
class Version20171008195606 extends WallabagMigration
{
/**
* @param Schema $schema
*/
public function up(Schema $schema)
{
$this->skipIf('sqlite' === $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'mysql\' or \'postgresql\'.');
@ -29,9 +26,6 @@ class Version20171008195606 extends WallabagMigration
}
}
/**
* @param Schema $schema
*/
public function down(Schema $schema)
{
$this->skipIf('sqlite' === $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'mysql\' or \'postgresql\'.');

View File

@ -10,9 +10,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
*/
class Version20171105202000 extends WallabagMigration
{
/**
* @param Schema $schema
*/
public function up(Schema $schema)
{
$entryTable = $schema->getTable($this->getTable('entry'));
@ -24,9 +21,6 @@ class Version20171105202000 extends WallabagMigration
]);
}
/**
* @param Schema $schema
*/
public function down(Schema $schema)
{
$entryTable = $schema->getTable($this->getTable('entry'));

View File

@ -10,9 +10,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
*/
class Version20171120163128 extends WallabagMigration
{
/**
* @param Schema $schema
*/
public function up(Schema $schema)
{
$storeArticleHeaders = $this->container
@ -25,9 +22,6 @@ class Version20171120163128 extends WallabagMigration
$this->addSql('INSERT INTO ' . $this->getTable('craue_config_setting') . " (name, value, section) VALUES ('store_article_headers', '0', 'entry')");
}
/**
* @param Schema $schema
*/
public function down(Schema $schema)
{
$this->addSql('DELETE FROM ' . $this->getTable('craue_config_setting') . " WHERE name = 'store_article_headers';");

View File

@ -10,9 +10,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
*/
class Version20171125164500 extends WallabagMigration
{
/**
* @param Schema $schema
*/
public function up(Schema $schema)
{
$shaarliShareOriginUrl = $this->container
@ -25,9 +22,6 @@ class Version20171125164500 extends WallabagMigration
$this->addSql('INSERT INTO ' . $this->getTable('craue_config_setting') . " (name, value, section) VALUES ('shaarli_share_origin_url', '0', 'entry')");
}
/**
* @param Schema $schema
*/
public function down(Schema $schema)
{
$this->addSql('DELETE FROM ' . $this->getTable('craue_config_setting') . " WHERE name = 'shaarli_share_origin_url';");

View File

@ -0,0 +1,45 @@
<?php
namespace Application\Migrations;
use Doctrine\DBAL\Schema\Schema;
use Wallabag\CoreBundle\Doctrine\WallabagMigration;
/**
* Add archived_at column and set its value to updated_at for is_archived entries.
*/
class Version20180405182455 extends WallabagMigration
{
public function up(Schema $schema)
{
$entryTable = $schema->getTable($this->getTable('entry'));
$this->skipIf($entryTable->hasColumn('archived_at'), 'It seems that you already played this migration.');
$entryTable->addColumn('archived_at', 'datetime', [
'notnull' => false,
]);
}
public function postUp(Schema $schema)
{
$entryTable = $schema->getTable($this->getTable('entry'));
$this->skipIf(!$entryTable->hasColumn('archived_at'), 'Unable to add archived_at colum');
$this->connection->executeQuery(
'UPDATE ' . $this->getTable('entry') . ' SET archived_at = updated_at WHERE is_archived = :is_archived',
[
'is_archived' => true,
]
);
}
public function down(Schema $schema)
{
$entryTable = $schema->getTable($this->getTable('entry'));
$this->skipIf(!$entryTable->hasColumn('archived_at'), 'It seems that you already played this migration.');
$entryTable->dropColumn('archived_at');
}
}

View File

@ -0,0 +1,42 @@
<?php
namespace Application\Migrations;
use Doctrine\DBAL\Schema\Schema;
use Wallabag\CoreBundle\Doctrine\WallabagMigration;
/**
* Fix varchar field from vendor to work with utf8mb4.
*/
class Version20181128203230 extends WallabagMigration
{
public function up(Schema $schema)
{
$this->skipIf('mysql' !== $this->connection->getDatabasePlatform()->getName(), 'This migration can only be applied on \'mysql\'.');
$this->addSql('ALTER TABLE ' . $this->getTable('oauth2_access_tokens') . ' CHANGE `token` `token` varchar(191) NOT NULL');
$this->addSql('ALTER TABLE ' . $this->getTable('oauth2_access_tokens') . ' CHANGE `scope` `scope` varchar(191)');
$this->addSql('ALTER TABLE ' . $this->getTable('oauth2_auth_codes') . ' CHANGE `token` `token` varchar(191) NOT NULL');
$this->addSql('ALTER TABLE ' . $this->getTable('oauth2_auth_codes') . ' CHANGE `scope` `scope` varchar(191)');
$this->addSql('ALTER TABLE ' . $this->getTable('oauth2_refresh_tokens') . ' CHANGE `token` `token` varchar(191) NOT NULL');
$this->addSql('ALTER TABLE ' . $this->getTable('oauth2_refresh_tokens') . ' CHANGE `scope` `scope` varchar(191)');
$this->addSql('ALTER TABLE ' . $this->getTable('craue_config_setting') . ' CHANGE `name` `name` varchar(191)');
$this->addSql('ALTER TABLE ' . $this->getTable('craue_config_setting') . ' CHANGE `section` `section` varchar(191)');
$this->addSql('ALTER TABLE ' . $this->getTable('craue_config_setting') . ' CHANGE `value` `value` varchar(191)');
}
public function down(Schema $schema)
{
$this->skipIf('mysql' !== $this->connection->getDatabasePlatform()->getName(), 'This migration can only be applied on \'mysql\'.');
$this->addSql('ALTER TABLE ' . $this->getTable('oauth2_access_tokens') . ' CHANGE `token` `token` varchar(255) NOT NULL');
$this->addSql('ALTER TABLE ' . $this->getTable('oauth2_access_tokens') . ' CHANGE `scope` `scope` varchar(255)');
$this->addSql('ALTER TABLE ' . $this->getTable('oauth2_auth_codes') . ' CHANGE `token` `token` varchar(255) NOT NULL');
$this->addSql('ALTER TABLE ' . $this->getTable('oauth2_auth_codes') . ' CHANGE `scope` `scope` varchar(255)');
$this->addSql('ALTER TABLE ' . $this->getTable('oauth2_refresh_tokens') . ' CHANGE `token` `token` varchar(255) NOT NULL');
$this->addSql('ALTER TABLE ' . $this->getTable('oauth2_refresh_tokens') . ' CHANGE `scope` `scope` varchar(255)');
$this->addSql('ALTER TABLE ' . $this->getTable('craue_config_setting') . ' CHANGE `name` `name` varchar(255)');
$this->addSql('ALTER TABLE ' . $this->getTable('craue_config_setting') . ' CHANGE `section` `section` varchar(255)');
$this->addSql('ALTER TABLE ' . $this->getTable('craue_config_setting') . ' CHANGE `value` `value` varchar(255)');
}
}

View File

@ -0,0 +1,76 @@
<?php
namespace Application\Migrations;
use Doctrine\DBAL\Schema\Schema;
use Wallabag\CoreBundle\Doctrine\WallabagMigration;
/**
* Add 2fa OTP stuff.
*/
final class Version20181202073750 extends WallabagMigration
{
public function up(Schema $schema): void
{
switch ($this->connection->getDatabasePlatform()->getName()) {
case 'sqlite':
$this->addSql('DROP INDEX UNIQ_1D63E7E5C05FB297');
$this->addSql('DROP INDEX UNIQ_1D63E7E5A0D96FBF');
$this->addSql('DROP INDEX UNIQ_1D63E7E592FC23A8');
$this->addSql('CREATE TEMPORARY TABLE __temp__' . $this->getTable('user', true) . ' AS SELECT id, username, username_canonical, email, email_canonical, enabled, salt, password, last_login, confirmation_token, password_requested_at, roles, name, created_at, updated_at, authCode, twoFactorAuthentication FROM ' . $this->getTable('user', true) . '');
$this->addSql('DROP TABLE ' . $this->getTable('user', true) . '');
$this->addSql('CREATE TABLE ' . $this->getTable('user', true) . ' (id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, username VARCHAR(180) NOT NULL COLLATE BINARY, username_canonical VARCHAR(180) NOT NULL COLLATE BINARY, email VARCHAR(180) NOT NULL COLLATE BINARY, email_canonical VARCHAR(180) NOT NULL COLLATE BINARY, enabled BOOLEAN NOT NULL, password VARCHAR(255) NOT NULL COLLATE BINARY, last_login DATETIME DEFAULT NULL, password_requested_at DATETIME DEFAULT NULL, name CLOB DEFAULT NULL COLLATE BINARY, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, authCode INTEGER DEFAULT NULL, emailTwoFactor BOOLEAN NOT NULL, salt VARCHAR(255) DEFAULT NULL, confirmation_token VARCHAR(180) DEFAULT NULL, roles CLOB NOT NULL --(DC2Type:array)
, googleAuthenticatorSecret VARCHAR(255) DEFAULT NULL, backupCodes CLOB DEFAULT NULL --(DC2Type:json_array)
)');
$this->addSql('INSERT INTO ' . $this->getTable('user', true) . ' (id, username, username_canonical, email, email_canonical, enabled, salt, password, last_login, confirmation_token, password_requested_at, roles, name, created_at, updated_at, authCode, emailTwoFactor) SELECT id, username, username_canonical, email, email_canonical, enabled, salt, password, last_login, confirmation_token, password_requested_at, roles, name, created_at, updated_at, authCode, twoFactorAuthentication FROM __temp__' . $this->getTable('user', true) . '');
$this->addSql('DROP TABLE __temp__' . $this->getTable('user', true) . '');
$this->addSql('CREATE UNIQUE INDEX UNIQ_1D63E7E5C05FB297 ON ' . $this->getTable('user', true) . ' (confirmation_token)');
$this->addSql('CREATE UNIQUE INDEX UNIQ_1D63E7E5A0D96FBF ON ' . $this->getTable('user', true) . ' (email_canonical)');
$this->addSql('CREATE UNIQUE INDEX UNIQ_1D63E7E592FC23A8 ON ' . $this->getTable('user', true) . ' (username_canonical)');
break;
case 'mysql':
$this->addSql('ALTER TABLE ' . $this->getTable('user') . ' ADD googleAuthenticatorSecret VARCHAR(191) DEFAULT NULL');
$this->addSql('ALTER TABLE ' . $this->getTable('user') . ' CHANGE twoFactorAuthentication emailTwoFactor BOOLEAN NOT NULL');
$this->addSql('ALTER TABLE ' . $this->getTable('user') . ' DROP trusted');
$this->addSql('ALTER TABLE ' . $this->getTable('user') . ' ADD backupCodes LONGTEXT DEFAULT NULL COMMENT \'(DC2Type:json_array)\'');
break;
case 'postgresql':
$this->addSql('ALTER TABLE ' . $this->getTable('user') . ' ADD googleAuthenticatorSecret VARCHAR(191) DEFAULT NULL');
$this->addSql('ALTER TABLE ' . $this->getTable('user') . ' RENAME COLUMN twofactorauthentication TO emailTwoFactor');
$this->addSql('ALTER TABLE ' . $this->getTable('user') . ' DROP trusted');
$this->addSql('ALTER TABLE ' . $this->getTable('user') . ' ADD backupCodes TEXT DEFAULT NULL');
break;
}
}
public function down(Schema $schema): void
{
switch ($this->connection->getDatabasePlatform()->getName()) {
case 'sqlite':
$this->addSql('DROP INDEX UNIQ_1D63E7E592FC23A8');
$this->addSql('DROP INDEX UNIQ_1D63E7E5A0D96FBF');
$this->addSql('DROP INDEX UNIQ_1D63E7E5C05FB297');
$this->addSql('CREATE TEMPORARY TABLE __temp__' . $this->getTable('user', true) . ' AS SELECT id, username, username_canonical, email, email_canonical, enabled, salt, password, last_login, confirmation_token, password_requested_at, roles, name, created_at, updated_at, authCode, emailTwoFactor FROM "' . $this->getTable('user', true) . '"');
$this->addSql('DROP TABLE "' . $this->getTable('user', true) . '"');
$this->addSql('CREATE TABLE "' . $this->getTable('user', true) . '" (id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, username VARCHAR(180) NOT NULL, username_canonical VARCHAR(180) NOT NULL, email VARCHAR(180) NOT NULL, email_canonical VARCHAR(180) NOT NULL, enabled BOOLEAN NOT NULL, password VARCHAR(255) NOT NULL, last_login DATETIME DEFAULT NULL, password_requested_at DATETIME DEFAULT NULL, name CLOB DEFAULT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, authCode INTEGER DEFAULT NULL, twoFactorAuthentication BOOLEAN NOT NULL, salt VARCHAR(255) NOT NULL COLLATE BINARY, confirmation_token VARCHAR(255) DEFAULT NULL COLLATE BINARY, roles CLOB NOT NULL COLLATE BINARY, trusted CLOB DEFAULT NULL COLLATE BINARY)');
$this->addSql('INSERT INTO "' . $this->getTable('user', true) . '" (id, username, username_canonical, email, email_canonical, enabled, salt, password, last_login, confirmation_token, password_requested_at, roles, name, created_at, updated_at, authCode, twoFactorAuthentication) SELECT id, username, username_canonical, email, email_canonical, enabled, salt, password, last_login, confirmation_token, password_requested_at, roles, name, created_at, updated_at, authCode, emailTwoFactor FROM __temp__' . $this->getTable('user', true) . '');
$this->addSql('DROP TABLE __temp__' . $this->getTable('user', true) . '');
$this->addSql('CREATE UNIQUE INDEX UNIQ_1D63E7E592FC23A8 ON "' . $this->getTable('user', true) . '" (username_canonical)');
$this->addSql('CREATE UNIQUE INDEX UNIQ_1D63E7E5A0D96FBF ON "' . $this->getTable('user', true) . '" (email_canonical)');
$this->addSql('CREATE UNIQUE INDEX UNIQ_1D63E7E5C05FB297 ON "' . $this->getTable('user', true) . '" (confirmation_token)');
break;
case 'mysql':
$this->addSql('ALTER TABLE `' . $this->getTable('user') . '` DROP googleAuthenticatorSecret');
$this->addSql('ALTER TABLE `' . $this->getTable('user') . '` CHANGE emailtwofactor twoFactorAuthentication BOOLEAN NOT NULL');
$this->addSql('ALTER TABLE `' . $this->getTable('user') . '` ADD trusted TEXT DEFAULT NULL');
$this->addSql('ALTER TABLE `' . $this->getTable('user') . '` DROP backupCodes');
break;
case 'postgresql':
$this->addSql('ALTER TABLE ' . $this->getTable('user') . ' DROP googleAuthenticatorSecret');
$this->addSql('ALTER TABLE ' . $this->getTable('user') . ' RENAME COLUMN emailTwoFactor TO twofactorauthentication');
$this->addSql('ALTER TABLE ' . $this->getTable('user') . ' ADD trusted TEXT DEFAULT NULL');
$this->addSql('ALTER TABLE ' . $this->getTable('user') . ' DROP backupCodes');
break;
}
}
}

View File

@ -0,0 +1,32 @@
<?php
namespace Application\Migrations;
use Doctrine\DBAL\Schema\Schema;
use Wallabag\CoreBundle\Doctrine\WallabagMigration;
/**
* Add updated_at fields to site_credential table.
*/
final class Version20190117131816 extends WallabagMigration
{
public function up(Schema $schema): void
{
$siteCredentialTable = $schema->getTable($this->getTable('site_credential'));
$this->skipIf($siteCredentialTable->hasColumn('updated_at'), 'It seems that you already played this migration.');
$siteCredentialTable->addColumn('updated_at', 'datetime', [
'notnull' => false,
]);
}
public function down(Schema $schema): void
{
$siteCredentialTable = $schema->getTable($this->getTable('site_credential'));
$this->skipIf(!$siteCredentialTable->hasColumn('updated_at'), 'It seems that you already played this migration.');
$siteCredentialTable->dropColumn('updated_at');
}
}

View File

@ -0,0 +1,141 @@
<?php
namespace Application\Migrations;
use Doctrine\DBAL\Schema\Schema;
use Wallabag\CoreBundle\Doctrine\WallabagMigration;
/**
* Add missing entries in craue_config_setting.
*/
final class Version20190129120000 extends WallabagMigration
{
private $settings = [
[
'name' => 'carrot',
'value' => '1',
'section' => 'entry',
],
[
'name' => 'share_diaspora',
'value' => '1',
'section' => 'entry',
],
[
'name' => 'diaspora_url',
'value' => 'http://diasporapod.com',
'section' => 'entry',
],
[
'name' => 'share_shaarli',
'value' => '1',
'section' => 'entry',
],
[
'name' => 'shaarli_url',
'value' => 'http://myshaarli.com',
'section' => 'entry',
],
[
'name' => 'share_mail',
'value' => '1',
'section' => 'entry',
],
[
'name' => 'share_twitter',
'value' => '1',
'section' => 'entry',
],
[
'name' => 'show_printlink',
'value' => '1',
'section' => 'entry',
],
[
'name' => 'export_epub',
'value' => '1',
'section' => 'export',
],
[
'name' => 'export_mobi',
'value' => '1',
'section' => 'export',
],
[
'name' => 'export_pdf',
'value' => '1',
'section' => 'export',
],
[
'name' => 'export_csv',
'value' => '1',
'section' => 'export',
],
[
'name' => 'export_json',
'value' => '1',
'section' => 'export',
],
[
'name' => 'export_txt',
'value' => '1',
'section' => 'export',
],
[
'name' => 'export_xml',
'value' => '1',
'section' => 'export',
],
[
'name' => 'piwik_enabled',
'value' => '0',
'section' => 'analytics',
],
[
'name' => 'piwik_host',
'value' => 'v2.wallabag.org',
'section' => 'analytics',
],
[
'name' => 'piwik_site_id',
'value' => '1',
'section' => 'analytics',
],
[
'name' => 'demo_mode_enabled',
'value' => '0',
'section' => 'misc',
],
[
'name' => 'demo_mode_username',
'value' => 'wallabag',
'section' => 'misc',
],
[
'name' => 'wallabag_support_url',
'value' => 'https://www.wallabag.org/pages/support.html',
'section' => 'misc',
],
];
public function up(Schema $schema)
{
foreach ($this->settings as $setting) {
$settingEnabled = $this->container
->get('doctrine.orm.default_entity_manager')
->getConnection()
->fetchArray('SELECT * FROM ' . $this->getTable('craue_config_setting') . " WHERE name = '" . $setting['name'] . "'");
if (false !== $settingEnabled) {
continue;
}
$this->addSql('INSERT INTO ' . $this->getTable('craue_config_setting') . " (name, value, section) VALUES ('" . $setting['name'] . "', '" . $setting['value'] . "', '" . $setting['section'] . "');");
}
}
public function down(Schema $schema)
{
$this->skipIf(true, 'These settings are required and should not be removed.');
}
}

View File

@ -0,0 +1,36 @@
<?php
namespace Application\Migrations;
use Doctrine\DBAL\Schema\Schema;
use Wallabag\CoreBundle\Doctrine\WallabagMigration;
/**
* Add hashed_url in entry.
*/
class Version20190401105353 extends WallabagMigration
{
public function up(Schema $schema)
{
$entryTable = $schema->getTable($this->getTable('entry'));
$this->skipIf($entryTable->hasColumn('hashed_url'), 'It seems that you already played this migration.');
$entryTable->addColumn('hashed_url', 'text', [
'length' => 40,
'notnull' => false,
]);
$entryTable->addIndex(['user_id', 'hashed_url'], 'hashed_url_user_id', [], ['lengths' => [null, 40]]);
}
public function down(Schema $schema)
{
$entryTable = $schema->getTable($this->getTable('entry'));
$this->skipIf(!$entryTable->hasColumn('hashed_url'), 'It seems that you already played this migration.');
$entryTable->dropIndex('hashed_url_user_id');
$entryTable->dropColumn('hashed_url');
}
}

View File

@ -0,0 +1,58 @@
<?php
namespace Application\Migrations;
use Doctrine\DBAL\Schema\Schema;
use Wallabag\CoreBundle\Doctrine\WallabagMigration;
/**
* Rename rss_token & rss_limit to feed_token & feed_limit.
*/
final class Version20190425115043 extends WallabagMigration
{
public function up(Schema $schema): void
{
switch ($this->connection->getDatabasePlatform()->getName()) {
case 'sqlite':
$this->addSql('DROP INDEX UNIQ_87E64C53A76ED395');
$this->addSql('CREATE TEMPORARY TABLE __temp__' . $this->getTable('config', true) . ' AS SELECT id, user_id, theme, items_per_page, language, rss_token, rss_limit, reading_speed, pocket_consumer_key, action_mark_as_read, list_mode FROM ' . $this->getTable('config', true));
$this->addSql('DROP TABLE ' . $this->getTable('config', true));
$this->addSql('CREATE TABLE ' . $this->getTable('config', true) . ' (id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, user_id INTEGER DEFAULT NULL, theme VARCHAR(255) NOT NULL COLLATE BINARY, items_per_page INTEGER NOT NULL, language VARCHAR(255) NOT NULL COLLATE BINARY, reading_speed DOUBLE PRECISION DEFAULT NULL, pocket_consumer_key VARCHAR(255) DEFAULT NULL COLLATE BINARY, action_mark_as_read INTEGER DEFAULT 0, list_mode INTEGER DEFAULT NULL, feed_token VARCHAR(255) DEFAULT NULL, feed_limit INTEGER DEFAULT NULL, CONSTRAINT FK_87E64C53A76ED395 FOREIGN KEY (user_id) REFERENCES "' . $this->getTable('user', true) . '" (id) NOT DEFERRABLE INITIALLY IMMEDIATE)');
$this->addSql('INSERT INTO ' . $this->getTable('config', true) . ' (id, user_id, theme, items_per_page, language, feed_token, feed_limit, reading_speed, pocket_consumer_key, action_mark_as_read, list_mode) SELECT id, user_id, theme, items_per_page, language, rss_token, rss_limit, reading_speed, pocket_consumer_key, action_mark_as_read, list_mode FROM __temp__' . $this->getTable('config', true));
$this->addSql('DROP TABLE __temp__' . $this->getTable('config', true));
$this->addSql('CREATE UNIQUE INDEX UNIQ_87E64C53A76ED395 ON ' . $this->getTable('config', true) . ' (user_id)');
break;
case 'mysql':
$this->addSql('ALTER TABLE ' . $this->getTable('config') . ' CHANGE rss_token feed_token VARCHAR(255) DEFAULT NULL');
$this->addSql('ALTER TABLE ' . $this->getTable('config') . ' CHANGE rss_limit feed_limit INT DEFAULT NULL');
break;
case 'postgresql':
$this->addSql('ALTER TABLE ' . $this->getTable('config') . ' RENAME COLUMN rss_token TO feed_token');
$this->addSql('ALTER TABLE ' . $this->getTable('config') . ' RENAME COLUMN rss_limit TO feed_limit');
break;
}
}
public function down(Schema $schema): void
{
switch ($this->connection->getDatabasePlatform()->getName()) {
case 'sqlite':
$this->addSql('DROP INDEX UNIQ_87E64C53A76ED395');
$this->addSql('CREATE TEMPORARY TABLE __temp__' . $this->getTable('config', true) . ' AS SELECT id, user_id, theme, items_per_page, language, feed_token, feed_limit, reading_speed, pocket_consumer_key, action_mark_as_read, list_mode FROM "' . $this->getTable('config', true) . '"');
$this->addSql('DROP TABLE "' . $this->getTable('config', true) . '"');
$this->addSql('CREATE TABLE "' . $this->getTable('config', true) . '" (id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, user_id INTEGER DEFAULT NULL, theme VARCHAR(255) NOT NULL, items_per_page INTEGER NOT NULL, language VARCHAR(255) NOT NULL, reading_speed DOUBLE PRECISION DEFAULT NULL, pocket_consumer_key VARCHAR(255) DEFAULT NULL, action_mark_as_read INTEGER DEFAULT 0, list_mode INTEGER DEFAULT NULL, rss_token VARCHAR(255) DEFAULT NULL COLLATE BINARY, rss_limit INTEGER DEFAULT NULL)');
$this->addSql('INSERT INTO "' . $this->getTable('config', true) . '" (id, user_id, theme, items_per_page, language, rss_token, rss_limit, reading_speed, pocket_consumer_key, action_mark_as_read, list_mode) SELECT id, user_id, theme, items_per_page, language, feed_token, feed_limit, reading_speed, pocket_consumer_key, action_mark_as_read, list_mode FROM __temp__' . $this->getTable('config', true));
$this->addSql('DROP TABLE __temp__' . $this->getTable('config', true));
$this->addSql('CREATE UNIQUE INDEX UNIQ_87E64C53A76ED395 ON "' . $this->getTable('config', true) . '" (user_id)');
break;
case 'mysql':
$this->addSql('ALTER TABLE ' . $this->getTable('config') . ' CHANGE feed_token rss_token');
$this->addSql('ALTER TABLE ' . $this->getTable('config') . ' CHANGE feed_limit rss_limit');
break;
case 'postgresql':
$this->addSql('ALTER TABLE ' . $this->getTable('config') . ' RENAME COLUMN feed_token TO rss_token');
$this->addSql('ALTER TABLE ' . $this->getTable('config') . ' RENAME COLUMN feed_limit TO rss_limit');
break;
}
}
}

View File

@ -0,0 +1,96 @@
<?php
namespace Application\Migrations;
use Doctrine\DBAL\Migrations\SkipMigrationException;
use Doctrine\DBAL\Schema\Schema;
use Wallabag\CoreBundle\Doctrine\WallabagMigration;
/**
* Enable cascade delete when deleting a user on:
* - oauth2_access_tokens
* - oauth2_clients
* - oauth2_refresh_tokens
* - oauth2_auth_codes.
*/
final class Version20190510141130 extends WallabagMigration
{
public function up(Schema $schema): void
{
switch ($this->connection->getDatabasePlatform()->getName()) {
case 'sqlite':
$this->addSql('DROP INDEX IDX_368A4209A76ED395');
$this->addSql('DROP INDEX IDX_368A420919EB6921');
$this->addSql('DROP INDEX UNIQ_368A42095F37A13B');
$this->addSql('CREATE TEMPORARY TABLE __temp__' . $this->getTable('oauth2_access_tokens', true) . ' AS SELECT id, client_id, user_id, token, expires_at, scope FROM ' . $this->getTable('oauth2_access_tokens', true));
$this->addSql('DROP TABLE ' . $this->getTable('oauth2_access_tokens', true));
$this->addSql('CREATE TABLE ' . $this->getTable('oauth2_access_tokens', true) . ' (id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, client_id INTEGER NOT NULL, user_id INTEGER DEFAULT NULL, expires_at INTEGER DEFAULT NULL, token VARCHAR(191) NOT NULL, scope VARCHAR(191) NULL, CONSTRAINT FK_368A420919EB6921 FOREIGN KEY (client_id) REFERENCES ' . $this->getTable('oauth2_clients', true) . ' (id) NOT DEFERRABLE INITIALLY IMMEDIATE, CONSTRAINT FK_368A4209A76ED395 FOREIGN KEY (user_id) REFERENCES "' . $this->getTable('oauth2_clients', true) . '" (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE)');
$this->addSql('INSERT INTO ' . $this->getTable('oauth2_access_tokens', true) . ' (id, client_id, user_id, token, expires_at, scope) SELECT id, client_id, user_id, token, expires_at, scope FROM __temp__' . $this->getTable('oauth2_access_tokens', true));
$this->addSql('DROP TABLE __temp__' . $this->getTable('oauth2_access_tokens', true));
$this->addSql('CREATE INDEX IDX_368A4209A76ED395 ON ' . $this->getTable('oauth2_access_tokens', true) . ' (user_id)');
$this->addSql('CREATE INDEX IDX_368A420919EB6921 ON ' . $this->getTable('oauth2_access_tokens', true) . ' (client_id)');
$this->addSql('DROP INDEX IDX_635D765EA76ED395');
$this->addSql('CREATE TEMPORARY TABLE __temp__' . $this->getTable('oauth2_clients', true) . ' AS SELECT id, user_id, random_id, secret, redirect_uris, allowed_grant_types, name FROM ' . $this->getTable('oauth2_clients', true));
$this->addSql('DROP TABLE ' . $this->getTable('oauth2_clients', true));
$this->addSql('CREATE TABLE ' . $this->getTable('oauth2_clients', true) . ' (id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, user_id INTEGER DEFAULT NULL, random_id VARCHAR(255) NOT NULL COLLATE BINARY, secret VARCHAR(255) NOT NULL COLLATE BINARY, name CLOB NOT NULL COLLATE BINARY, redirect_uris CLOB NOT NULL, allowed_grant_types CLOB NOT NULL, CONSTRAINT FK_635D765EA76ED395 FOREIGN KEY (user_id) REFERENCES "' . $this->getTable('oauth2_clients', true) . '" (id) NOT DEFERRABLE INITIALLY IMMEDIATE)');
$this->addSql('INSERT INTO ' . $this->getTable('oauth2_clients', true) . ' (id, user_id, random_id, secret, redirect_uris, allowed_grant_types, name) SELECT id, user_id, random_id, secret, redirect_uris, allowed_grant_types, name FROM __temp__' . $this->getTable('oauth2_clients', true));
$this->addSql('DROP TABLE __temp__' . $this->getTable('oauth2_clients', true));
$this->addSql('CREATE INDEX IDX_635D765EA76ED395 ON ' . $this->getTable('oauth2_clients', true) . ' (user_id)');
$this->addSql('DROP INDEX IDX_20C9FB24A76ED395');
$this->addSql('DROP INDEX IDX_20C9FB2419EB6921');
$this->addSql('DROP INDEX UNIQ_20C9FB245F37A13B');
$this->addSql('CREATE TEMPORARY TABLE __temp__' . $this->getTable('oauth2_refresh_tokens', true) . ' AS SELECT id, client_id, user_id, token, expires_at, scope FROM ' . $this->getTable('oauth2_refresh_tokens', true));
$this->addSql('DROP TABLE ' . $this->getTable('oauth2_refresh_tokens', true));
$this->addSql('CREATE TABLE ' . $this->getTable('oauth2_refresh_tokens', true) . ' (id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, client_id INTEGER NOT NULL, user_id INTEGER DEFAULT NULL, expires_at INTEGER DEFAULT NULL, token VARCHAR(191) NOT NULL, scope VARCHAR(191) NULL, CONSTRAINT FK_20C9FB2419EB6921 FOREIGN KEY (client_id) REFERENCES ' . $this->getTable('oauth2_clients', true) . ' (id) NOT DEFERRABLE INITIALLY IMMEDIATE, CONSTRAINT FK_20C9FB24A76ED395 FOREIGN KEY (user_id) REFERENCES "' . $this->getTable('oauth2_clients', true) . '" (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE)');
$this->addSql('INSERT INTO ' . $this->getTable('oauth2_refresh_tokens', true) . ' (id, client_id, user_id, token, expires_at, scope) SELECT id, client_id, user_id, token, expires_at, scope FROM __temp__' . $this->getTable('oauth2_refresh_tokens', true));
$this->addSql('DROP TABLE __temp__' . $this->getTable('oauth2_refresh_tokens', true));
$this->addSql('CREATE INDEX IDX_20C9FB24A76ED395 ON ' . $this->getTable('oauth2_refresh_tokens', true) . ' (user_id)');
$this->addSql('CREATE INDEX IDX_20C9FB2419EB6921 ON ' . $this->getTable('oauth2_refresh_tokens', true) . ' (client_id)');
$this->addSql('DROP INDEX IDX_EE52E3FAA76ED395');
$this->addSql('DROP INDEX IDX_EE52E3FA19EB6921');
$this->addSql('DROP INDEX UNIQ_EE52E3FA5F37A13B');
$this->addSql('CREATE TEMPORARY TABLE __temp__' . $this->getTable('oauth2_auth_codes', true) . ' AS SELECT id, client_id, user_id, token, redirect_uri, expires_at, scope FROM ' . $this->getTable('oauth2_auth_codes', true));
$this->addSql('DROP TABLE ' . $this->getTable('oauth2_auth_codes', true));
$this->addSql('CREATE TABLE ' . $this->getTable('oauth2_auth_codes', true) . ' (id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, client_id INTEGER NOT NULL, user_id INTEGER DEFAULT NULL, redirect_uri CLOB NOT NULL COLLATE BINARY, expires_at INTEGER DEFAULT NULL, token VARCHAR(191) NOT NULL, scope VARCHAR(191) NULL, CONSTRAINT FK_EE52E3FA19EB6921 FOREIGN KEY (client_id) REFERENCES ' . $this->getTable('oauth2_clients', true) . ' (id) NOT DEFERRABLE INITIALLY IMMEDIATE, CONSTRAINT FK_EE52E3FAA76ED395 FOREIGN KEY (user_id) REFERENCES "' . $this->getTable('oauth2_clients', true) . '" (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE)');
$this->addSql('INSERT INTO ' . $this->getTable('oauth2_auth_codes', true) . ' (id, client_id, user_id, token, redirect_uri, expires_at, scope) SELECT id, client_id, user_id, token, redirect_uri, expires_at, scope FROM __temp__' . $this->getTable('oauth2_auth_codes', true));
$this->addSql('DROP TABLE __temp__' . $this->getTable('oauth2_auth_codes', true));
$this->addSql('CREATE INDEX IDX_EE52E3FAA76ED395 ON ' . $this->getTable('oauth2_auth_codes', true) . ' (user_id)');
$this->addSql('CREATE INDEX IDX_EE52E3FA19EB6921 ON ' . $this->getTable('oauth2_auth_codes', true) . ' (client_id)');
break;
case 'mysql':
$this->addSql('ALTER TABLE ' . $this->getTable('oauth2_access_tokens') . ' DROP FOREIGN KEY FK_368A4209A76ED395');
$this->addSql('ALTER TABLE ' . $this->getTable('oauth2_access_tokens') . ' ADD CONSTRAINT FK_368A4209A76ED395 FOREIGN KEY (user_id) REFERENCES ' . $this->getTable('user') . ' (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE ' . $this->getTable('oauth2_clients') . ' DROP FOREIGN KEY IDX_user_oauth_client');
$this->addSql('ALTER TABLE ' . $this->getTable('oauth2_clients') . ' ADD CONSTRAINT FK_635D765EA76ED395 FOREIGN KEY (user_id) REFERENCES ' . $this->getTable('user') . ' (id)');
$this->addSql('ALTER TABLE ' . $this->getTable('oauth2_refresh_tokens') . ' DROP FOREIGN KEY FK_20C9FB24A76ED395');
$this->addSql('ALTER TABLE ' . $this->getTable('oauth2_refresh_tokens') . ' ADD CONSTRAINT FK_20C9FB24A76ED395 FOREIGN KEY (user_id) REFERENCES ' . $this->getTable('user') . ' (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE ' . $this->getTable('oauth2_auth_codes') . ' DROP FOREIGN KEY FK_EE52E3FAA76ED395');
$this->addSql('ALTER TABLE ' . $this->getTable('oauth2_auth_codes') . ' ADD CONSTRAINT FK_EE52E3FAA76ED395 FOREIGN KEY (user_id) REFERENCES ' . $this->getTable('user') . ' (id) ON DELETE CASCADE');
break;
case 'postgresql':
$this->addSql('ALTER TABLE ' . $this->getTable('oauth2_access_tokens') . ' DROP CONSTRAINT FK_368A4209A76ED395');
$this->addSql('ALTER TABLE ' . $this->getTable('oauth2_access_tokens') . ' ADD CONSTRAINT FK_368A4209A76ED395 FOREIGN KEY (user_id) REFERENCES ' . $this->getTable('user') . ' (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE');
$this->addSql('ALTER TABLE ' . $this->getTable('oauth2_clients') . ' DROP CONSTRAINT idx_user_oauth_client');
$this->addSql('ALTER TABLE ' . $this->getTable('oauth2_clients') . ' ADD CONSTRAINT FK_635D765EA76ED395 FOREIGN KEY (user_id) REFERENCES ' . $this->getTable('user') . ' (id) NOT DEFERRABLE INITIALLY IMMEDIATE');
$this->addSql('ALTER TABLE ' . $this->getTable('oauth2_refresh_tokens') . ' DROP CONSTRAINT FK_20C9FB24A76ED395');
$this->addSql('ALTER TABLE ' . $this->getTable('oauth2_refresh_tokens') . ' ADD CONSTRAINT FK_20C9FB24A76ED395 FOREIGN KEY (user_id) REFERENCES ' . $this->getTable('user') . ' (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE');
$this->addSql('ALTER TABLE ' . $this->getTable('oauth2_auth_codes') . ' DROP CONSTRAINT FK_EE52E3FAA76ED395');
$this->addSql('ALTER TABLE ' . $this->getTable('oauth2_auth_codes') . ' ADD CONSTRAINT FK_EE52E3FAA76ED395 FOREIGN KEY (user_id) REFERENCES ' . $this->getTable('user') . ' (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE');
break;
}
}
public function down(Schema $schema): void
{
throw new SkipMigrationException('Too complex ...');
}
}

View File

@ -0,0 +1,30 @@
<?php
declare(strict_types=1);
namespace Application\Migrations;
use Doctrine\DBAL\Schema\Schema;
use Wallabag\CoreBundle\Doctrine\WallabagMigration;
/**
* Convert tab label to utf8mb4_bin (MySQL only).
*/
final class Version20190511165128 extends WallabagMigration
{
public function up(Schema $schema): void
{
$this->skipIf('mysql' !== $this->connection->getDatabasePlatform()->getName(), 'This migration only apply to MySQL');
$this->addSql('ALTER TABLE ' . $this->getTable('tag') . ' CHANGE `label` `label` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;');
$this->addSql('ALTER TABLE ' . $this->getTable('tag') . ' CHANGE `slug` `slug` VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;');
}
public function down(Schema $schema): void
{
$this->skipIf('mysql' !== $this->connection->getDatabasePlatform()->getName(), 'This migration only apply to MySQL');
$this->addSql('ALTER TABLE ' . $this->getTable('tag') . ' CHANGE `slug` `slug` VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;');
$this->addSql('ALTER TABLE ' . $this->getTable('tag') . ' CHANGE `label` `label` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;');
}
}

View File

@ -0,0 +1,48 @@
<?php
namespace Application\Migrations;
use Doctrine\DBAL\Schema\Schema;
use Wallabag\CoreBundle\Doctrine\WallabagMigration;
/**
* Added `given_url` & `hashed_given_url` field in entry table.
*/
class Version20190601125843 extends WallabagMigration
{
public function up(Schema $schema)
{
$entryTable = $schema->getTable($this->getTable('entry'));
if (!$entryTable->hasColumn('given_url')) {
$entryTable->addColumn('given_url', 'text', [
'notnull' => false,
]);
}
if (!$entryTable->hasColumn('hashed_given_url')) {
$entryTable->addColumn('hashed_given_url', 'text', [
'length' => 40,
'notnull' => false,
]);
}
// 40 = length of sha1 field hashed_given_url
$entryTable->addIndex(['user_id', 'hashed_given_url'], 'hashed_given_url_user_id', [], ['lengths' => [null, 40]]);
}
public function down(Schema $schema)
{
$entryTable = $schema->getTable($this->getTable('entry'));
if ($entryTable->hasColumn('given_url')) {
$entryTable->dropColumn('given_url');
}
if ($entryTable->hasColumn('hashed_given_url')) {
$entryTable->dropColumn('hashed_given_url');
}
$entryTable->dropIndex('hashed_given_url_user_id');
}
}

View File

@ -0,0 +1,65 @@
<?php
namespace Application\Migrations;
use Doctrine\DBAL\Schema\Schema;
use Wallabag\CoreBundle\Doctrine\WallabagMigration;
/**
* Change reading_time field on SQLite to be integer NOT NULL
* It was forgotten in a previous migration (Version20171008195606.php).
*/
final class Version20190619093534 extends WallabagMigration
{
public function up(Schema $schema): void
{
// this up() migration is auto-generated, please modify it to your needs
$this->skipIf('sqlite' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'sqlite\'.');
$this->addSql('UPDATE ' . $this->getTable('entry', true) . ' SET reading_time = 0 WHERE reading_time IS NULL;');
$this->addSql('DROP INDEX hashed_given_url_user_id');
$this->addSql('DROP INDEX IDX_entry_uid');
$this->addSql('DROP INDEX IDX_F4D18282A76ED395');
$this->addSql('DROP INDEX IDX_entry_created_at');
$this->addSql('DROP INDEX IDX_entry_starred');
$this->addSql('DROP INDEX IDX_entry_archived');
$this->addSql('DROP INDEX hashed_url_user_id');
$this->addSql('CREATE TEMPORARY TABLE __temp__' . $this->getTable('entry', true) . ' AS SELECT id, user_id, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, uid, http_status, published_at, published_by, headers, starred_at, origin_url, archived_at, hashed_url, given_url, hashed_given_url FROM ' . $this->getTable('entry', true) . '');
$this->addSql('DROP TABLE ' . $this->getTable('entry', true) . '');
$this->addSql('CREATE TABLE ' . $this->getTable('entry', true) . ' (id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, user_id INTEGER DEFAULT NULL, title CLOB DEFAULT NULL COLLATE BINARY, url CLOB DEFAULT NULL COLLATE BINARY, is_archived BOOLEAN NOT NULL, is_starred BOOLEAN NOT NULL, content CLOB DEFAULT NULL COLLATE BINARY, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, mimetype CLOB DEFAULT NULL COLLATE BINARY, language CLOB DEFAULT NULL COLLATE BINARY, domain_name CLOB DEFAULT NULL COLLATE BINARY, preview_picture CLOB DEFAULT NULL COLLATE BINARY, uid VARCHAR(23) DEFAULT NULL COLLATE BINARY, http_status VARCHAR(3) DEFAULT NULL COLLATE BINARY, published_at DATETIME DEFAULT NULL, starred_at DATETIME DEFAULT NULL, origin_url CLOB DEFAULT NULL COLLATE BINARY, archived_at DATETIME DEFAULT NULL, given_url CLOB DEFAULT NULL COLLATE BINARY, reading_time INTEGER NOT NULL, published_by CLOB DEFAULT NULL --(DC2Type:array)
, headers CLOB DEFAULT NULL --(DC2Type:array)
, hashed_url VARCHAR(40) DEFAULT NULL, hashed_given_url VARCHAR(40) DEFAULT NULL, CONSTRAINT FK_F4D18282A76ED395 FOREIGN KEY (user_id) REFERENCES "' . $this->getTable('user', true) . '" (id) NOT DEFERRABLE INITIALLY IMMEDIATE)');
$this->addSql('INSERT INTO ' . $this->getTable('entry', true) . ' (id, user_id, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, uid, http_status, published_at, published_by, headers, starred_at, origin_url, archived_at, hashed_url, given_url, hashed_given_url) SELECT id, user_id, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, uid, http_status, published_at, published_by, headers, starred_at, origin_url, archived_at, hashed_url, given_url, hashed_given_url FROM __temp__' . $this->getTable('entry', true) . '');
$this->addSql('DROP TABLE __temp__' . $this->getTable('entry', true) . '');
$this->addSql('CREATE INDEX hashed_given_url_user_id ON ' . $this->getTable('entry', true) . ' (user_id, hashed_given_url)');
$this->addSql('CREATE INDEX IDX_F4D18282A76ED395 ON ' . $this->getTable('entry', true) . ' (user_id)');
$this->addSql('CREATE INDEX hashed_url_user_id ON ' . $this->getTable('entry', true) . ' (user_id, hashed_url)');
$this->addSql('CREATE INDEX created_at ON ' . $this->getTable('entry', true) . ' (created_at)');
$this->addSql('CREATE INDEX uid ON ' . $this->getTable('entry', true) . ' (uid)');
}
public function down(Schema $schema): void
{
// this down() migration is auto-generated, please modify it to your needs
$this->skipIf('sqlite' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'sqlite\'.');
$this->addSql('DROP INDEX IDX_F4D18282A76ED395');
$this->addSql('DROP INDEX created_at');
$this->addSql('DROP INDEX uid');
$this->addSql('DROP INDEX hashed_url_user_id');
$this->addSql('DROP INDEX hashed_given_url_user_id');
$this->addSql('CREATE TEMPORARY TABLE __temp__' . $this->getTable('entry', true) . ' AS SELECT id, user_id, uid, title, url, hashed_url, origin_url, given_url, hashed_given_url, is_archived, archived_at, is_starred, content, created_at, updated_at, published_at, published_by, starred_at, mimetype, language, reading_time, domain_name, preview_picture, http_status, headers FROM "' . $this->getTable('entry', true) . '"');
$this->addSql('DROP TABLE "' . $this->getTable('entry', true) . '"');
$this->addSql('CREATE TABLE "' . $this->getTable('entry', true) . '" (id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, user_id INTEGER DEFAULT NULL, uid VARCHAR(23) DEFAULT NULL, title CLOB DEFAULT NULL, url CLOB DEFAULT NULL, origin_url CLOB DEFAULT NULL, given_url CLOB DEFAULT NULL, is_archived BOOLEAN NOT NULL, archived_at DATETIME DEFAULT NULL, is_starred BOOLEAN NOT NULL, content CLOB DEFAULT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, published_at DATETIME DEFAULT NULL, starred_at DATETIME DEFAULT NULL, mimetype CLOB DEFAULT NULL, language CLOB DEFAULT NULL, domain_name CLOB DEFAULT NULL, preview_picture CLOB DEFAULT NULL, http_status VARCHAR(3) DEFAULT NULL, hashed_url CLOB DEFAULT NULL COLLATE BINARY, hashed_given_url CLOB DEFAULT NULL COLLATE BINARY, published_by CLOB DEFAULT NULL COLLATE BINARY, reading_time INTEGER DEFAULT NULL, headers CLOB DEFAULT NULL COLLATE BINARY)');
$this->addSql('INSERT INTO "' . $this->getTable('entry', true) . '" (id, user_id, uid, title, url, hashed_url, origin_url, given_url, hashed_given_url, is_archived, archived_at, is_starred, content, created_at, updated_at, published_at, published_by, starred_at, mimetype, language, reading_time, domain_name, preview_picture, http_status, headers) SELECT id, user_id, uid, title, url, hashed_url, origin_url, given_url, hashed_given_url, is_archived, archived_at, is_starred, content, created_at, updated_at, published_at, published_by, starred_at, mimetype, language, reading_time, domain_name, preview_picture, http_status, headers FROM __temp__' . $this->getTable('entry', true) . '');
$this->addSql('DROP TABLE __temp__' . $this->getTable('entry', true) . '');
$this->addSql('CREATE INDEX IDX_F4D18282A76ED395 ON "' . $this->getTable('entry', true) . '" (user_id)');
$this->addSql('CREATE INDEX hashed_url_user_id ON "' . $this->getTable('entry', true) . '" (user_id, hashed_url)');
$this->addSql('CREATE INDEX hashed_given_url_user_id ON "' . $this->getTable('entry', true) . '" (user_id, hashed_given_url)');
$this->addSql('CREATE INDEX IDX_entry_starred ON "' . $this->getTable('entry', true) . '" (is_starred)');
$this->addSql('CREATE INDEX IDX_entry_archived ON "' . $this->getTable('entry', true) . '" (is_archived)');
$this->addSql('CREATE INDEX IDX_entry_uid ON "' . $this->getTable('entry', true) . '" (uid)');
$this->addSql('CREATE INDEX IDX_entry_created_at ON "' . $this->getTable('entry', true) . '" (created_at)');
}
}

View File

@ -0,0 +1,22 @@
<?php
namespace Application\Migrations;
use Doctrine\DBAL\Schema\Schema;
use Wallabag\CoreBundle\Doctrine\WallabagMigration;
/**
* Change reading speed value.
*/
final class Version20190708122957 extends WallabagMigration
{
public function up(Schema $schema): void
{
$this->addSql('UPDATE ' . $this->getTable('config', true) . ' SET reading_speed = reading_speed*200');
}
public function down(Schema $schema): void
{
$this->addSql('UPDATE ' . $this->getTable('config', true) . ' SET reading_speed = reading_speed/200');
}
}

View File

@ -0,0 +1,116 @@
<?php
namespace Application\Migrations;
use Doctrine\DBAL\Schema\Schema;
use Wallabag\CoreBundle\Doctrine\WallabagMigration;
/**
* Adding more index to kill some slow queries:
* - user_language
* - user_archived
* - user_created
* - user_starred
* - tag_label
* - config_feed_token.
*/
final class Version20190806130304 extends WallabagMigration
{
public function up(Schema $schema): void
{
switch ($this->connection->getDatabasePlatform()->getName()) {
case 'sqlite':
$this->addSql('DROP INDEX uid');
$this->addSql('DROP INDEX created_at');
$this->addSql('DROP INDEX hashed_url_user_id');
$this->addSql('DROP INDEX IDX_F4D18282A76ED395');
$this->addSql('DROP INDEX hashed_given_url_user_id');
$this->addSql('CREATE TEMPORARY TABLE __temp__wallabag_entry AS SELECT id, user_id, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, domain_name, preview_picture, uid, http_status, published_at, starred_at, origin_url, archived_at, given_url, reading_time, published_by, headers, hashed_url, hashed_given_url FROM ' . $this->getTable('entry', true));
$this->addSql('DROP TABLE ' . $this->getTable('entry', true));
$this->addSql('CREATE TABLE ' . $this->getTable('entry', true) . ' (id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, user_id INTEGER DEFAULT NULL, title CLOB DEFAULT NULL COLLATE BINARY, url CLOB DEFAULT NULL COLLATE BINARY, is_archived BOOLEAN NOT NULL, is_starred BOOLEAN NOT NULL, content CLOB DEFAULT NULL COLLATE BINARY, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, mimetype CLOB DEFAULT NULL COLLATE BINARY, domain_name CLOB DEFAULT NULL COLLATE BINARY, preview_picture CLOB DEFAULT NULL COLLATE BINARY, uid VARCHAR(23) DEFAULT NULL COLLATE BINARY, http_status VARCHAR(3) DEFAULT NULL COLLATE BINARY, published_at DATETIME DEFAULT NULL, starred_at DATETIME DEFAULT NULL, origin_url CLOB DEFAULT NULL COLLATE BINARY, archived_at DATETIME DEFAULT NULL, given_url CLOB DEFAULT NULL COLLATE BINARY, reading_time INTEGER NOT NULL, published_by CLOB DEFAULT NULL COLLATE BINARY --(DC2Type:array)
, headers CLOB DEFAULT NULL COLLATE BINARY --(DC2Type:array)
, hashed_url VARCHAR(40) DEFAULT NULL COLLATE BINARY, hashed_given_url VARCHAR(40) DEFAULT NULL COLLATE BINARY, language VARCHAR(20) DEFAULT NULL, CONSTRAINT FK_F4D18282A76ED395 FOREIGN KEY (user_id) REFERENCES "wallabag_user" (id) NOT DEFERRABLE INITIALLY IMMEDIATE)');
$this->addSql('INSERT INTO ' . $this->getTable('entry', true) . ' (id, user_id, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, domain_name, preview_picture, uid, http_status, published_at, starred_at, origin_url, archived_at, given_url, reading_time, published_by, headers, hashed_url, hashed_given_url) SELECT id, user_id, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, domain_name, preview_picture, uid, http_status, published_at, starred_at, origin_url, archived_at, given_url, reading_time, published_by, headers, hashed_url, hashed_given_url FROM __temp__wallabag_entry');
$this->addSql('DROP TABLE __temp__wallabag_entry');
$this->addSql('CREATE INDEX uid ON ' . $this->getTable('entry', true) . ' (uid)');
$this->addSql('CREATE INDEX created_at ON ' . $this->getTable('entry', true) . ' (created_at)');
$this->addSql('CREATE INDEX hashed_url_user_id ON ' . $this->getTable('entry', true) . ' (user_id, hashed_url)');
$this->addSql('CREATE INDEX IDX_F4D18282A76ED395 ON ' . $this->getTable('entry', true) . ' (user_id)');
$this->addSql('CREATE INDEX hashed_given_url_user_id ON ' . $this->getTable('entry', true) . ' (user_id, hashed_given_url)');
$this->addSql('CREATE INDEX user_language ON ' . $this->getTable('entry', true) . ' (language, user_id)');
$this->addSql('CREATE INDEX user_archived ON ' . $this->getTable('entry', true) . ' (user_id, is_archived, archived_at)');
$this->addSql('CREATE INDEX user_created ON ' . $this->getTable('entry', true) . ' (user_id, created_at)');
$this->addSql('CREATE INDEX user_starred ON ' . $this->getTable('entry', true) . ' (user_id, is_starred, starred_at)');
$this->addSql('CREATE INDEX tag_label ON ' . $this->getTable('tag', true) . ' (label)');
$this->addSql('CREATE INDEX config_feed_token ON ' . $this->getTable('config', true) . ' (feed_token)');
break;
case 'mysql':
$this->addSql('ALTER TABLE ' . $this->getTable('entry') . ' MODIFY language VARCHAR(20) DEFAULT NULL');
$this->addSql('CREATE INDEX user_language ON ' . $this->getTable('entry') . ' (language, user_id)');
$this->addSql('CREATE INDEX user_archived ON ' . $this->getTable('entry') . ' (user_id, is_archived, archived_at)');
$this->addSql('CREATE INDEX user_created ON ' . $this->getTable('entry') . ' (user_id, created_at)');
$this->addSql('CREATE INDEX user_starred ON ' . $this->getTable('entry') . ' (user_id, is_starred, starred_at)');
$this->addSql('CREATE INDEX tag_label ON ' . $this->getTable('tag') . ' (label (255))');
$this->addSql('CREATE INDEX config_feed_token ON ' . $this->getTable('config') . ' (feed_token (255))');
break;
case 'postgresql':
$this->addSql('ALTER TABLE ' . $this->getTable('entry') . ' ALTER language TYPE VARCHAR(20)');
$this->addSql('CREATE INDEX user_language ON ' . $this->getTable('entry') . ' (language, user_id)');
$this->addSql('CREATE INDEX user_archived ON ' . $this->getTable('entry') . ' (user_id, is_archived, archived_at)');
$this->addSql('CREATE INDEX user_created ON ' . $this->getTable('entry') . ' (user_id, created_at)');
$this->addSql('CREATE INDEX user_starred ON ' . $this->getTable('entry') . ' (user_id, is_starred, starred_at)');
$this->addSql('CREATE INDEX tag_label ON ' . $this->getTable('tag') . ' (label)');
$this->addSql('CREATE INDEX config_feed_token ON ' . $this->getTable('config') . ' (feed_token)');
break;
}
}
public function down(Schema $schema): void
{
switch ($this->connection->getDatabasePlatform()->getName()) {
case 'sqlite':
$this->addSql('DROP INDEX IDX_F4D18282A76ED395');
$this->addSql('DROP INDEX created_at');
$this->addSql('DROP INDEX uid');
$this->addSql('DROP INDEX hashed_url_user_id');
$this->addSql('DROP INDEX hashed_given_url_user_id');
$this->addSql('DROP INDEX user_language');
$this->addSql('DROP INDEX user_archived');
$this->addSql('DROP INDEX user_created');
$this->addSql('DROP INDEX user_starred');
$this->addSql('DROP INDEX tag_label');
$this->addSql('DROP INDEX config_feed_token');
$this->addSql('CREATE TEMPORARY TABLE __temp__wallabag_entry AS SELECT id, user_id, uid, title, url, hashed_url, origin_url, given_url, hashed_given_url, is_archived, archived_at, is_starred, content, created_at, updated_at, published_at, published_by, starred_at, mimetype, language, reading_time, domain_name, preview_picture, http_status, headers FROM ' . $this->getTable('entry', true));
$this->addSql('DROP TABLE ' . $this->getTable('entry', true));
$this->addSql('CREATE TABLE ' . $this->getTable('entry', true) . ' (id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, user_id INTEGER DEFAULT NULL, uid VARCHAR(23) DEFAULT NULL, title CLOB DEFAULT NULL, url CLOB DEFAULT NULL, hashed_url VARCHAR(40) DEFAULT NULL, origin_url CLOB DEFAULT NULL, given_url CLOB DEFAULT NULL, hashed_given_url VARCHAR(40) DEFAULT NULL, is_archived BOOLEAN NOT NULL, archived_at DATETIME DEFAULT NULL, is_starred BOOLEAN NOT NULL, content CLOB DEFAULT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, published_at DATETIME DEFAULT NULL, published_by CLOB DEFAULT NULL --(DC2Type:array)
, starred_at DATETIME DEFAULT NULL, mimetype CLOB DEFAULT NULL, reading_time INTEGER NOT NULL, domain_name CLOB DEFAULT NULL, preview_picture CLOB DEFAULT NULL, http_status VARCHAR(3) DEFAULT NULL, headers CLOB DEFAULT NULL --(DC2Type:array)
, language CLOB DEFAULT NULL COLLATE BINARY)');
$this->addSql('INSERT INTO ' . $this->getTable('entry', true) . ' (id, user_id, uid, title, url, hashed_url, origin_url, given_url, hashed_given_url, is_archived, archived_at, is_starred, content, created_at, updated_at, published_at, published_by, starred_at, mimetype, language, reading_time, domain_name, preview_picture, http_status, headers) SELECT id, user_id, uid, title, url, hashed_url, origin_url, given_url, hashed_given_url, is_archived, archived_at, is_starred, content, created_at, updated_at, published_at, published_by, starred_at, mimetype, language, reading_time, domain_name, preview_picture, http_status, headers FROM __temp__wallabag_entry');
$this->addSql('DROP TABLE __temp__wallabag_entry');
$this->addSql('CREATE INDEX IDX_F4D18282A76ED395 ON ' . $this->getTable('entry', true) . ' (user_id)');
$this->addSql('CREATE INDEX created_at ON ' . $this->getTable('entry', true) . ' (created_at)');
$this->addSql('CREATE INDEX uid ON ' . $this->getTable('entry', true) . ' (uid)');
$this->addSql('CREATE INDEX hashed_url_user_id ON ' . $this->getTable('entry', true) . ' (user_id, hashed_url)');
$this->addSql('CREATE INDEX hashed_given_url_user_id ON ' . $this->getTable('entry', true) . ' (user_id, hashed_given_url)');
break;
case 'mysql':
$this->addSql('ALTER TABLE ' . $this->getTable('entry') . ' MODIFY language LONGTEXT DEFAULT NULL');
$this->addSql('DROP INDEX user_language ON ' . $this->getTable('entry'));
$this->addSql('DROP INDEX user_archived ON ' . $this->getTable('entry'));
$this->addSql('DROP INDEX user_created ON ' . $this->getTable('entry'));
$this->addSql('DROP INDEX user_starred ON ' . $this->getTable('entry'));
$this->addSql('DROP INDEX tag_label ON ' . $this->getTable('tag'));
$this->addSql('DROP INDEX config_feed_token ON ' . $this->getTable('config'));
break;
case 'postgresql':
$this->addSql('ALTER TABLE ' . $this->getTable('entry') . ' ALTER language TYPE TEXT');
$this->addSql('DROP INDEX user_language ON ' . $this->getTable('entry'));
$this->addSql('DROP INDEX user_archived ON ' . $this->getTable('entry'));
$this->addSql('DROP INDEX user_created ON ' . $this->getTable('entry'));
$this->addSql('DROP INDEX user_starred ON ' . $this->getTable('entry'));
$this->addSql('DROP INDEX tag_label ON ' . $this->getTable('tag'));
$this->addSql('DROP INDEX config_feed_token ON ' . $this->getTable('config'));
break;
}
}
}

View File

@ -0,0 +1,42 @@
<?php
namespace Application\Migrations;
use Doctrine\DBAL\Schema\Schema;
use Wallabag\CoreBundle\Doctrine\WallabagMigration;
/**
* Change the internal setting table name.
*/
final class Version20190808124957 extends WallabagMigration
{
public function up(Schema $schema): void
{
switch ($this->connection->getDatabasePlatform()->getName()) {
case 'sqlite':
$this->addSql('ALTER TABLE ' . $this->getTable('craue_config_setting', true) . ' RENAME TO ' . $this->getTable('internal_setting', true));
break;
case 'mysql':
$this->addSql('ALTER TABLE ' . $this->getTable('craue_config_setting') . ' RENAME ' . $this->getTable('internal_setting'));
break;
case 'postgresql':
$this->addSql('ALTER TABLE ' . $this->getTable('craue_config_setting') . ' RENAME TO ' . $this->getTable('internal_setting'));
break;
}
}
public function down(Schema $schema): void
{
switch ($this->connection->getDatabasePlatform()->getName()) {
case 'sqlite':
$this->addSql('ALTER TABLE ' . $this->getTable('internal_setting', true) . ' RENAME TO ' . $this->getTable('craue_config_setting', true));
break;
case 'mysql':
$this->addSql('ALTER TABLE ' . $this->getTable('internal_setting') . ' RENAME ' . $this->getTable('craue_config_setting'));
break;
case 'postgresql':
$this->addSql('ALTER TABLE ' . $this->getTable('internal_setting') . ' RENAME TO ' . $this->getTable('craue_config_setting'));
break;
}
}
}

View File

@ -0,0 +1,64 @@
<?php
declare(strict_types=1);
namespace Application\Migrations;
use Doctrine\DBAL\Schema\Schema;
use Wallabag\CoreBundle\Doctrine\WallabagMigration;
/**
* Add tables for the ignore origin rules.
*/
final class Version20190826204730 extends WallabagMigration
{
public function up(Schema $schema): void
{
if (false === $schema->hasTable($this->getTable('ignore_origin_user_rule'))) {
$userTable = $schema->createTable($this->getTable('ignore_origin_user_rule', true));
$userTable->addColumn('id', 'integer', ['autoincrement' => true]);
$userTable->addColumn('config_id', 'integer');
$userTable->addColumn('rule', 'string', ['length' => 255]);
$userTable->addIndex(['config_id'], 'idx_config');
$userTable->setPrimaryKey(['id']);
$userTable->addForeignKeyConstraint($this->getTable('config'), ['config_id'], ['id'], [], 'fk_config');
if ('postgresql' === $this->connection->getDatabasePlatform()->getName()) {
$schema->dropSequence('ignore_origin_user_rule_id_seq');
$schema->createSequence('ignore_origin_user_rule_id_seq');
}
}
if (false === $schema->hasTable($this->getTable('ignore_origin_instance_rule'))) {
$instanceTable = $schema->createTable($this->getTable('ignore_origin_instance_rule', true));
$instanceTable->addColumn('id', 'integer', ['autoincrement' => true]);
$instanceTable->addColumn('rule', 'string', ['length' => 255]);
$instanceTable->setPrimaryKey(['id']);
if ('postgresql' === $this->connection->getDatabasePlatform()->getName()) {
$schema->dropSequence('ignore_origin_instance_rule_id_seq');
$schema->createSequence('ignore_origin_instance_rule_id_seq');
}
}
}
public function postUp(Schema $schema): void
{
foreach ($this->container->getParameter('wallabag_core.default_ignore_origin_instance_rules') as $entity) {
$previous_rule = $this->container
->get('doctrine.orm.default_entity_manager')
->getConnection()
->fetchArray('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'] . "');");
}
}
}
public function down(Schema $schema): void
{
$schema->dropTable($this->getTable('ignore_origin_user_rule'));
$schema->dropTable($this->getTable('ignore_origin_instance_rule'));
}
}

View File

@ -0,0 +1,28 @@
<?php
declare(strict_types=1);
namespace Application\Migrations;
use Doctrine\DBAL\Schema\Schema;
use Wallabag\CoreBundle\Doctrine\WallabagMigration;
/**
* Renamed Piwik to Matomo in configuration.
*/
final class Version20200428072628 extends WallabagMigration
{
public function up(Schema $schema): void
{
$this->addSql('UPDATE ' . $this->getTable('internal_setting', true) . " SET name = 'matomo_enabled' where name = 'piwik_enabled';");
$this->addSql('UPDATE ' . $this->getTable('internal_setting', true) . " SET name = 'matomo_host' where name = 'piwik_host';");
$this->addSql('UPDATE ' . $this->getTable('internal_setting', true) . " SET name = 'matomo_site_id' where name = 'piwik_site_id';");
}
public function down(Schema $schema): void
{
$this->addSql('UPDATE ' . $this->getTable('internal_setting', true) . " SET name = 'piwik_enabled' where name = 'matomo_enabled';");
$this->addSql('UPDATE ' . $this->getTable('internal_setting', true) . " SET name = 'piwik_host' where name = 'matomo_host';");
$this->addSql('UPDATE ' . $this->getTable('internal_setting', true) . " SET name = 'piwik_site_id' where name = 'matomo_site_id';");
}
}

View File

@ -27,9 +27,9 @@ export: "eksport"
import: "import"
misc: "misc"
modify_settings: "Gem ændring"
piwik_host: Hosting af din side hos Piwik (uden http:// eller https://)
piwik_site_id: ID for din side hos Piwik
piwik_enabled: Aktiver Piwik
matomo_host: Hosting af din side hos Matomo (uden http:// eller https://)
matomo_site_id: ID for din side hos Matomo
matomo_enabled: Aktiver Matomo
demo_mode_enabled: "Aktiver demo-indstilling? (anvendes kun til wallabags offentlige demo)"
demo_mode_username: "Demobruger"
# share_public: Allow public url for entries

View File

@ -27,9 +27,9 @@ export: 'Export'
import: 'Import'
misc: 'Verschiedenes'
modify_settings: 'Übernehmen'
piwik_host: 'Host deiner Webseite in Piwik (ohne http:// oder https://)'
piwik_site_id: 'ID deiner Webseite in Piwik'
piwik_enabled: 'Piwik aktivieren'
matomo_host: 'Host deiner Webseite in Matomo (ohne http:// oder https://)'
matomo_site_id: 'ID deiner Webseite in Matomo'
matomo_enabled: 'Matomo aktivieren'
demo_mode_enabled: 'Test-Modus aktivieren? (nur für die öffentliche wallabag-Demo genutzt)'
demo_mode_username: 'Test-Benutzer'
share_public: 'Erlaube eine öffentliche URL für Einträge'

View File

@ -27,9 +27,9 @@ export: "export"
import: "import"
misc: "misc"
modify_settings: "apply"
piwik_host: Host of your website in Piwik (without http:// or https://)
piwik_site_id: ID of your website in Piwik
piwik_enabled: Enable Piwik
matomo_host: Host of your website in Matomo (without http:// or https://)
matomo_site_id: ID of your website in Matomo
matomo_enabled: Enable Matomo
demo_mode_enabled: "Enable demo mode? (Only used for the public wallabag demo)"
demo_mode_username: "Demo user"
share_public: Allow public URL for entries

View File

@ -27,9 +27,9 @@ export: "exportar"
import: "importar"
misc: "misc"
modify_settings: "guardar"
piwik_host: Host de tu website en Piwik (sin http:// o https://)
piwik_site_id: ID de tu website en Piwik
piwik_enabled: Activar Piwik
matomo_host: Host de tu website en Matomo (sin http:// o https://)
matomo_site_id: ID de tu website en Matomo
matomo_enabled: Activar Matomo
demo_mode_enabled: "Activar modo demo (sólo usado en la demo pública de wallabag)"
demo_mode_username: "Nombre de usuario demo"
share_public: Permitir URL pública para los artículos

View File

@ -27,9 +27,9 @@ export: "برون‌سپاری"
import: "درون‌ریزی"
misc: "غیره"
modify_settings: "اعمال"
# piwik_host: Host of your website in Piwik (without http:// or https://)
# piwik_site_id: ID of your website in Piwik
# piwik_enabled: Enable Piwik
# matomo_host: Host of your website in Matomo (without http:// or https://)
# matomo_site_id: ID of your website in Matomo
# matomo_enabled: Enable Matomo
# demo_mode_enabled: "Enable demo mode ? (only used for the wallabag public demo)"
# demo_mode_username: "Demo user"
# share_public: Allow public url for entries

View File

@ -27,9 +27,9 @@ export: "export"
import: "import"
misc: "divers"
modify_settings: "appliquer"
piwik_host: URL de votre site dans Piwik (sans http:// ou https://)
piwik_site_id: ID de votre site dans Piwik
piwik_enabled: Activer Piwik
matomo_host: URL de votre site dans Matomo (sans http:// ou https://)
matomo_site_id: ID de votre site dans Matomo
matomo_enabled: Activer Matomo
demo_mode_enabled: "Activer le mode démo ? (utiliser uniquement pour la démo publique de wallabag)"
demo_mode_username: "Utilisateur de la démo"
share_public: Autoriser une URL publique pour les articles

View File

@ -27,9 +27,9 @@ export: "esporta"
import: "importa"
misc: "misc"
modify_settings: "applica"
piwik_host: Host del tuo sito in Piwik (senza http:// o https://)
piwik_site_id: ID del tuo sito in Piwik
piwik_enabled: Abilita Piwik
matomo_host: Host del tuo sito in Matomo (senza http:// o https://)
matomo_site_id: ID del tuo sito in Matomo
matomo_enabled: Abilita Matomo
demo_mode_enabled: "Abilita modalità demo ? (usato solo per la demo pubblica di wallabag)"
demo_mode_username: "Utente Demo"
# share_public: Allow public url for entries

View File

@ -0,0 +1,40 @@
settings_changed: 構成が更新されました
download_pictures: 画像をあなたのサーバにダウンロード
carrot: Carrot への共有を有効にする
diaspora_url: diaspora* URL、サービスが有効な場合
export_epub: ePub 形式でのエクスポートを有効にする
export_mobi: .mobi 形式でのエクスポートを有効にする
export_pdf: PDF 形式でのエクスポートを有効にする
export_csv: CSV 形式でのエクスポートを有効にする
export_json: JSON 形式でのエクスポートを有効にする
export_txt: TXT 形式でのエクスポートを有効にする
export_xml: XML 形式でのエクスポートを有効にする
import_with_rabbitmq: データを非同期的にインポートする RabbitMQ を有効にする
import_with_redis: データを非同期的にインポートする Redis を有効にする
shaarli_url: Shaarli URL、サービスが有効な場合
scuttle_url: Scuttle URL、サービスが有効な場合
unmark_url: Unmark URL、サービスが有効な場合
share_diaspora: diaspora* への共有を有効にする
share_mail: 電子メールでの共有を有効にする
share_shaarli: Shaarli への共有を有効にする
share_scuttle: Scuttle への共有を有効にする
share_twitter: Twitter への共有を有効にする
share_unmark: Unmark.it への共有を有効にする
show_printlink: コンテンツを印刷するためのリンクを表示する
wallabag_support_url: Wallabag のサポート URL
entry: "記事"
export: "エクスポート"
import: "インポート"
misc: "misc"
modify_settings: "適用"
matomo_host: Matomo でのウェブサイトのホスト (http:// または https:// は不要)
matomo_site_id: Matomo でのあなたのウェブサイトの ID
matomo_enabled: Matomo を有効にする
demo_mode_enabled: "デモモードを有効にしますか? (パブリック Wallabag のデモにのみ使用)"
demo_mode_username: "デモユーザー"
share_public: 記事の公開 URL を許可する
download_images_enabled: 画像をローカルにダウンロードする
restricted_access: ペイウォールウェブサイトの認証を有効にする
api_user_registration: API を使用してユーザーを登録できるようにする
store_article_headers: 各記事の HTTP ヘッダーを Wallabag が格納する場合に有効にする
shaarli_share_origin_url: サービスが有効になっている場合、Shaarli へのオリジン URL の共有を有効にする

View File

@ -27,9 +27,9 @@ export: "expòrt"
import: "impòrt"
misc: "divèrs"
modify_settings: "aplicar"
piwik_host: URL de vòstre site dins Piwik (sense http:// o https://)
piwik_site_id: ID de vòstre site dins Piwik
piwik_enabled: Activar Piwik
matomo_host: URL de vòstre site dins Matomo (sense http:// o https://)
matomo_site_id: ID de vòstre site dins Matomo
matomo_enabled: Activar Matomo
demo_mode_enabled: "Activar lo mode demostracion ? (utilizar solament per la demostracion publica de wallabag)"
demo_mode_username: "Utilizaire de la demostracion"
share_public: Autorizar una URL publica pels articles

View File

@ -26,9 +26,9 @@ export: "eksport"
import: "import"
misc: "różne"
modify_settings: "zatwierdź"
piwik_host: Host twojej strony Piwik (bez http:// lub https://)
piwik_site_id: ID twojej strony Piwik
piwik_enabled: Włacz Piwik
matomo_host: Host twojej strony Matomo (bez http:// lub https://)
matomo_site_id: ID twojej strony Matomo
matomo_enabled: Włacz Matomo
demo_mode_enabled: "Włacz tryb demo? (używany wyłącznie dla publicznej demonstracji Wallabag)"
demo_mode_username: "Użytkownik Demonstracyjny"
share_public: Zezwalaj na publiczny adres url dla wpisow

View File

@ -28,9 +28,9 @@ export: "exportar"
import: "importar"
misc: "misc"
modify_settings: "aplicar"
piwik_host: Host de seu website Piwik
piwik_site_id: ID de seu website Piwik
piwik_enabled: Habilitar Piwik
matomo_host: Host de seu website Matomo
matomo_site_id: ID de seu website Matomo
matomo_enabled: Habilitar Matomo
demo_mode_enabled: "Habilitar modo demo? (somente usado para o demo público do wallabag)"
demo_mode_username: "Usuário demo"
# share_public: Allow public url for entries

View File

@ -27,9 +27,9 @@ export: "exportă"
import: "importă"
misc: "diverse"
modify_settings: "aplică"
# piwik_host: Host of your website in Piwik (without http:// or https://)
# piwik_site_id: ID of your website in Piwik
# piwik_enabled: Enable Piwik
# matomo_host: Host of your website in Matomo (without http:// or https://)
# matomo_site_id: ID of your website in Matomo
# matomo_enabled: Enable Matomo
# demo_mode_enabled: "Enable demo mode ? (only used for the wallabag public demo)"
# demo_mode_username: "Demo user"
# share_public: Allow public url for entries

View File

@ -27,9 +27,9 @@ export: "экспорт"
import: "импорт"
misc: "разное"
modify_settings: "применить"
piwik_host: "Ссылка на Ваш сайт на Piwik (с http:// или https://)"
piwik_site_id: "ID Вашего сайта на Piwik"
piwik_enabled: "Включить Piwik"
matomo_host: "Ссылка на Ваш сайт на Matomo (с http:// или https://)"
matomo_site_id: "ID Вашего сайта на Matomo"
matomo_enabled: "Включить Matomo"
demo_mode_enabled: "Включить демо режим ? (только для публичной демонстрации wallabag)"
demo_mode_username: "Демо пользователь"
share_public: "Разрешить публичные ссылки на записи"

View File

@ -25,9 +25,9 @@ export: "นำข้อมูลออก"
import: "นำเข้าข้อมูล"
misc: "เบ็ดเตล็ด"
modify_settings: "ปรับใช้"
piwik_host: โฮสบนเว็บไซต์ของคุณใน Piwik (ยกเว้น http:// หรือ https://)
piwik_site_id: ไอดีบนเว็บไซต์ของคุณใน Piwik
piwik_enabled: เปิดการใช้ Piwik
matomo_host: โฮสบนเว็บไซต์ของคุณใน Matomo (ยกเว้น http:// หรือ https://)
matomo_site_id: ไอดีบนเว็บไซต์ของคุณใน Matomo
matomo_enabled: เปิดการใช้ Matomo
demo_mode_enabled: "เปิดการใช้งานโหมดเดโม ? (เฉพาะการใช้สำหรับเดโมสาธารณะของ wallabag)"
demo_mode_username: "ผู้ใช้ส่วนเดโม"
share_public: ยอมรับ URL สาธารณะจากการเข้าถึงข้อมูล

View File

@ -28,9 +28,9 @@
# import: "import"
# misc: "misc"
# modify_settings: "apply"
# piwik_host: Host of your website in Piwik (without http:// or https://)
# piwik_site_id: ID of your website in Piwik
# piwik_enabled: Enable Piwik
# matomo_host: Host of your website in Matomo (without http:// or https://)
# matomo_site_id: ID of your website in Matomo
# matomo_enabled: Enable Matomo
# demo_mode_enabled: "Enable demo mode ? (only used for the wallabag public demo)"
# demo_mode_username: "Demo user"
# share_public: Allow public url for entries

View File

@ -0,0 +1,40 @@
settings_changed: 配置已更新
download_pictures: 在你的服务器上缓存图片
carrot: 启用分享到 Carrot
diaspora_url: diaspora* 链接,如果该服务已被启用
export_epub: 启用 ePub 导出
export_mobi: 启用 .mobi 导出
export_pdf: 启用 PDF 导出
export_csv: 启用 CSV 导出
export_json: 启用 JSON 导出
export_txt: 启用 TXT 导出
export_xml: 启用 XML 导出
import_with_rabbitmq: 启用 RabbitMQ 来异步导入数据
import_with_redis: 启用 Redis 来异步导入数据
shaarli_url: Shaarli 链接,如果该服务已被启用
scuttle_url: Scuttle 链接,如果该服务已被启用
unmark_url: Unmark 链接,如果该服务已被启用
share_diaspora: 启用分享到 diaspora*
share_mail: 启用邮件分享
share_shaarli: 启用分享到 Shaarli
share_scuttle: 启用分享到 Scuttle
share_twitter: 启用分享到 Twitter
share_unmark: 启用分享到 Unmark.it
show_printlink: 展示一个用于打印内容的链接
wallabag_support_url: wallabag 的支持链接
entry: "文章"
export: "导出"
import: "导入"
misc: "杂项"
modify_settings: "申请"
matomo_host: 你的网站在 Matomo 的主机名(不包括 http:// or https://
matomo_site_id: 你的网站在 Matomo 的 ID
matomo_enabled: 启用 Matomo
demo_mode_enabled: "启用演示模式?(仅用于 wallabag 公开演示)"
demo_mode_username: "Demo user"
share_public: 允许为项目启用公开链接
download_images_enabled: 在本地缓存图片
restricted_access: 启用针对带有付费墙网站的认证
api_user_registration: 允许新用户通过 API 注册
store_article_headers: 让 wallabag 存储每篇文章的 HTTP header
shaarli_share_origin_url: 选择分享原始链接到 Shaarli如果该服务已被启用

View File

@ -4,6 +4,9 @@ import $ from 'jquery';
/* Annotations */
import annotator from 'annotator';
import ClipboardJS from 'clipboard';
import 'mathjax/es5/tex-svg';
/* Fonts */
import 'material-design-icons-iconfont/dist/material-design-icons.css';
import 'lato-font/css/lato-font.css';
@ -70,4 +73,47 @@ $(document).ready(() => {
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();
});
});

View File

@ -85,7 +85,7 @@ blockquote {
color: #999;
}
.icon-rss {
.icon-feed {
background-color: #000;
color: #fff;
padding: 0.2em 0.5em;
@ -101,8 +101,8 @@ blockquote {
margin-bottom: 0.5em;
}
.icon-rss:hover,
.icon-rss:focus {
.icon-feed:hover,
.icon-feed:focus {
background-color: #fff;
color: #000;
text-decoration: none;

View File

@ -295,6 +295,15 @@ div.pagination ul {
}
}
.hide {
.card-tag-form {
display: inline-block;
}
.card-tag-form input[type="text"] {
min-width: 20em;
}
.hide,
.hidden {
display: none;
}

View File

@ -170,3 +170,9 @@
width: 100%;
}
}
@media only print {
header h1.logo {
display: none;
}
}

View File

@ -136,7 +136,7 @@
content: "\ea3a";
}
.icon-rss::before {
.icon-feed::before {
content: "\e808";
}

View File

@ -6,6 +6,9 @@
font-size: 20px;
margin: 0 auto;
max-width: 45em;
padding: 5px 20px;
background-color: #fff;
box-shadow: 0 0 10px #ccc;
article {
color: #424242;
@ -51,7 +54,7 @@
}
a {
border-bottom: 1px dotted #03a9f4;
border-bottom: 1px dotted $blueAccentColor;
text-decoration: none;
}
@ -108,7 +111,7 @@
flex-flow: row wrap;
.stats {
font-size: 0.8em;
font-size: 0.7em;
margin: 8px 5px 5px;
li {
@ -119,6 +122,7 @@
i.material-icons {
color: #3e3e3e;
margin-right: 3px;
font-size: 18px;
}
}
@ -135,10 +139,12 @@
}
.chip {
background-color: $blueAccentColor;
background-color: #9e9e9e;
padding: 0 15px 0 10px;
margin: auto 2px;
border-radius: 6px;
height: 18px;
line-height: 18px;
a,
i {
@ -147,8 +153,8 @@
i.material-icons {
float: right;
font-size: 20px;
line-height: 32px;
font-size: 16px;
line-height: 18px;
padding-left: 8px;
}
}
@ -172,18 +178,18 @@
&:hover {
width: 260px !important;
.collapsible-body {
height: auto;
li a i.material-icons {
margin: auto 5px auto -8px;
}
}
span {
opacity: 1;
}
}
.collapsible-body {
height: auto;
li a i.material-icons {
margin: auto 5px auto -8px;
}
}
}
.progress {

View File

@ -173,7 +173,6 @@ a.original:not(.waves-effect) {
.card-tag-labels li {
display: flex;
justify-content: space-between;
}
.card-entry-tags a,
@ -186,30 +185,36 @@ a.original:not(.waves-effect) {
color: #fff;
}
.card-tag-labels a {
height: 100%;
align-items: center;
.card-tag-link {
width: calc(100% - 48px);
line-height: 1.3;
white-space: nowrap;
text-overflow: ellipsis;
overflow: hidden;
}
.card-tag-link {
.card-tag-form {
display: flex;
min-width: 100px;
flex-grow: 1;
}
.card-tag-rss {
.card-tag-form input {
margin-bottom: 0;
height: 1.8rem;
}
.card-tag-icon {
display: flex;
}
.card-tag-labels {
display: flex;
flex-wrap: wrap;
display: grid;
grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
}
.card-tag-labels li {
margin: 10px;
flex-basis: 19%;
flex-grow: 1;
align-items: center;
}

View File

@ -2,6 +2,42 @@
* Entries
* ========================================================================== */
.mass-buttons {
margin: 5px;
#selectAll {
position: relative;
opacity: initial;
left: 0;
}
span {
padding: 3px;
}
button {
i {
font-size: 12px;
}
height: 24px;
line-height: 24px;
padding: 0 0.5rem;
}
}
.card-stacked {
input[type=checkbox] {
position: relative;
opacity: initial;
left: 0;
}
.entry-checkbox {
margin-right: 10px;
}
}
.collection {
margin: 15px 15px 0;

View File

@ -18,6 +18,10 @@ body {
border-bottom: 1px solid #ddd;
}
a {
color: $blueAccentColor;
}
main,
#content,
.valign-wrapper {

View File

@ -12,10 +12,6 @@
.pagination {
margin-left: auto;
}
.card-tag-labels li {
max-width: 50%;
}
}
@media screen and (min-width: 993px) {
@ -187,3 +183,9 @@
display: none;
}
}
@media only print {
body {
display: block;
}
}

View File

@ -131,8 +131,25 @@ nav {
display: none;
}
.entry-nav-top--sticky {
position: sticky;
top: 0;
}
@media (min-width: 993px) {
.button-collapse {
display: none;
}
}
.dropdown-content {
min-width: 300px;
.material-icons {
line-height: initial !important;
}
li > a {
padding: 10px;
}
}

View File

@ -2,4 +2,4 @@
Variables
========================================================================== */
$blueAccentColor: rgba(0, 151, 167, 0.85);
$blueAccentColor: #00acc1;

View File

@ -8,7 +8,7 @@ import 'materialize-css/dist/js/materialize';
import '../_global/index';
/* Tools */
import { initExport, initFilters } from './js/tools';
import { initExport, initFilters, initRandom } from './js/tools';
/* Import shortcuts */
import './js/shortcuts/main';
@ -17,6 +17,38 @@ import './js/shortcuts/entry';
/* Theme style */
import './css/index.scss';
const mobileMaxWidth = 993;
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
$('.button-collapse').sideNav();
@ -27,13 +59,19 @@ $(document).ready(() => {
$('.datepicker').pickadate({
selectMonths: true,
selectYears: 15,
formatSubmit: 'dd/mm/yyyy',
hiddenName: true,
format: 'dd/mm/yyyy',
formatSubmit: 'yyyy-mm-dd',
hiddenName: false,
format: 'yyyy-mm-dd',
container: 'body',
});
$('.dropdown-trigger').dropdown({ hover: false });
initFilters();
initExport();
initRandom();
stickyNav();
articleScroll();
const toggleNav = (toShow, toFocus) => {
$('.nav-panel-actions').hide(100);
@ -45,33 +83,46 @@ $(document).ready(() => {
$('#nav-btn-add-tag').on('click', () => {
$('.nav-panel-add-tag').toggle(100);
$('.nav-panel-menu').addClass('hidden');
if (window.innerWidth < mobileMaxWidth) {
$('.side-nav').sideNav('hide');
}
$('#tag_label').focus();
return false;
});
$('#nav-btn-add').on('click', () => {
toggleNav('.nav-panel-add', '#entry_url');
return false;
});
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);
$('.nav-panels').css('background', 'transparent');
return false;
});
$(window).scroll(() => {
const s = $(window).scrollTop();
const d = $(document).height();
const c = $(window).height();
const scrollPercent = (s / (d - c)) * 100;
$('.progress .determinate').css('width', `${scrollPercent}%`);
});
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;
});
});
});
}
});

View File

@ -8,6 +8,7 @@ function initFilters() {
$('#clear_form_filters').on('click', () => {
$('#filters input').val('');
$('#filters :checked').removeAttr('checked');
return false;
});
}
@ -21,4 +22,15 @@ function initExport() {
}
}
export { initExport, initFilters };
function initRandom() {
// no display if export (ie: entries) not available
if ($('div').is('#export')) {
$('#button_random').show();
}
}
export {
initExport,
initFilters,
initRandom,
};

View File

@ -1,13 +0,0 @@
<?php
use Composer\Autoload\ClassLoader;
use Doctrine\Common\Annotations\AnnotationRegistry;
/**
* @var ClassLoader
*/
$loader = require __DIR__ . '/../vendor/autoload.php';
AnnotationRegistry::registerLoader([$loader, 'loadClass']);
return $loader;

View File

@ -1,19 +0,0 @@
# config valid only for current version of Capistrano
set :application, 'wallabag'
set :repo_url, 'git@github.com:wallabag/wallabag.git'
set :ssh_user, 'framasoft_bag'
server '78.46.248.87', user: fetch(:ssh_user), roles: %w{web app db}
set :format, :pretty
set :log_level, :info
# set :log_level, :debug
set :composer_install_flags, '--no-dev --prefer-dist --no-interaction --optimize-autoloader'
set :linked_files, %w{app/config/parameters.yml}
set :linked_dirs, [fetch(:log_path), "var/sessions", "web/uploads", "data"]
set :keep_releases, 3
after 'deploy:updated', 'symfony:cache:clear'

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