aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--app/DoctrineMigrations/Version20160401000000.php6
-rw-r--r--app/DoctrineMigrations/Version20160410190541.php6
-rw-r--r--app/DoctrineMigrations/Version20160812120952.php6
-rw-r--r--app/DoctrineMigrations/Version20160911214952.php6
-rw-r--r--app/DoctrineMigrations/Version20160916201049.php6
-rw-r--r--app/DoctrineMigrations/Version20161001072726.php6
-rw-r--r--app/DoctrineMigrations/Version20161022134138.php6
-rw-r--r--app/DoctrineMigrations/Version20161024212538.php6
-rw-r--r--app/DoctrineMigrations/Version20161031132655.php6
-rw-r--r--app/DoctrineMigrations/Version20161104073720.php6
-rw-r--r--app/DoctrineMigrations/Version20161106113822.php6
-rw-r--r--app/DoctrineMigrations/Version20161117071626.php6
-rw-r--r--app/DoctrineMigrations/Version20161118134328.php6
-rw-r--r--app/DoctrineMigrations/Version20161122144743.php6
-rw-r--r--app/DoctrineMigrations/Version20161122203647.php6
-rw-r--r--app/DoctrineMigrations/Version20161128084725.php6
-rw-r--r--app/DoctrineMigrations/Version20161128131503.php6
-rw-r--r--app/DoctrineMigrations/Version20161214094402.php6
-rw-r--r--app/DoctrineMigrations/Version20161214094403.php6
-rw-r--r--app/DoctrineMigrations/Version20170127093841.php6
-rw-r--r--app/DoctrineMigrations/Version20170327194233.php6
-rw-r--r--app/DoctrineMigrations/Version20170405182620.php6
-rw-r--r--app/DoctrineMigrations/Version20170407200919.php6
-rw-r--r--app/DoctrineMigrations/Version20170420134133.php6
-rw-r--r--app/DoctrineMigrations/Version20170501115751.php6
-rw-r--r--app/DoctrineMigrations/Version20170510082609.php6
-rw-r--r--app/DoctrineMigrations/Version20170511115400.php6
-rw-r--r--app/DoctrineMigrations/Version20170602075214.php6
-rw-r--r--app/DoctrineMigrations/Version20170606155640.php6
-rw-r--r--app/DoctrineMigrations/Version20170719231144.php6
-rw-r--r--app/DoctrineMigrations/Version20170824113337.php6
-rw-r--r--app/DoctrineMigrations/Version20171008195606.php6
-rw-r--r--app/DoctrineMigrations/Version20171105202000.php6
-rw-r--r--app/DoctrineMigrations/Version20171120163128.php6
-rw-r--r--app/DoctrineMigrations/Version20171125164500.php6
-rwxr-xr-xapp/DoctrineMigrations/Version20180405182455.php6
-rw-r--r--app/DoctrineMigrations/Version20181128203230.php3
-rw-r--r--app/DoctrineMigrations/Version20190129120000.php6
-rw-r--r--app/DoctrineMigrations/Version20190401105353.php6
-rw-r--r--app/DoctrineMigrations/Version20190601125843.php6
-rw-r--r--app/config/config.yml14
-rw-r--r--composer.json1
-rw-r--r--composer.lock676
-rw-r--r--docker/php/Dockerfile11
-rw-r--r--src/Wallabag/AnnotationBundle/Controller/WallabagAnnotationController.php10
-rw-r--r--src/Wallabag/ApiBundle/Controller/AnnotationRestController.php10
-rw-r--r--src/Wallabag/ApiBundle/Controller/DeveloperController.php4
-rw-r--r--src/Wallabag/ApiBundle/Controller/EntryRestController.php2
-rw-r--r--src/Wallabag/ApiBundle/Controller/UserRestController.php1
-rw-r--r--src/Wallabag/CoreBundle/Command/CleanDuplicatesCommand.php3
-rw-r--r--src/Wallabag/CoreBundle/Command/GenerateUrlHashesCommand.php3
-rw-r--r--src/Wallabag/CoreBundle/Command/InstallCommand.php4
-rw-r--r--src/Wallabag/CoreBundle/Command/ShowUserCommand.php3
-rw-r--r--src/Wallabag/CoreBundle/Controller/ConfigController.php21
-rw-r--r--src/Wallabag/CoreBundle/Controller/EntryController.php57
-rw-r--r--src/Wallabag/CoreBundle/Controller/ExportController.php1
-rw-r--r--src/Wallabag/CoreBundle/Controller/FeedController.php4
-rw-r--r--src/Wallabag/CoreBundle/Controller/SiteCredentialController.php8
-rw-r--r--src/Wallabag/CoreBundle/Controller/TagController.php7
-rw-r--r--src/Wallabag/CoreBundle/Entity/Config.php2
-rw-r--r--src/Wallabag/CoreBundle/Entity/Entry.php12
-rw-r--r--src/Wallabag/CoreBundle/Entity/Tag.php6
-rw-r--r--src/Wallabag/CoreBundle/Entity/TaggingRule.php2
-rw-r--r--src/Wallabag/CoreBundle/Event/Listener/UserLocaleListener.php3
-rw-r--r--src/Wallabag/CoreBundle/Event/Subscriber/CustomDoctrineORMSubscriber.php3
-rw-r--r--src/Wallabag/CoreBundle/Event/Subscriber/DownloadImagesSubscriber.php8
-rw-r--r--src/Wallabag/CoreBundle/Event/Subscriber/SQLiteCascadeDeleteSubscriber.php5
-rw-r--r--src/Wallabag/CoreBundle/Form/Type/EntryFilterType.php3
-rw-r--r--src/Wallabag/CoreBundle/GuzzleSiteAuthenticator/GrabySiteConfigBuilder.php5
-rw-r--r--src/Wallabag/CoreBundle/Helper/ContentProxy.php10
-rw-r--r--src/Wallabag/CoreBundle/Helper/DownloadImages.php2
-rw-r--r--src/Wallabag/CoreBundle/Helper/HttpClientFactory.php8
-rw-r--r--src/Wallabag/CoreBundle/Helper/PreparePagerForEntries.php3
-rw-r--r--src/Wallabag/CoreBundle/Helper/RuleBasedTagger.php4
-rw-r--r--src/Wallabag/CoreBundle/Helper/TagsAssigner.php1
-rw-r--r--src/Wallabag/CoreBundle/Helper/UrlHasher.php1
-rw-r--r--src/Wallabag/CoreBundle/Repository/EntryRepository.php6
-rw-r--r--src/Wallabag/CoreBundle/Resources/translations/messages.da.yml3
-rw-r--r--src/Wallabag/CoreBundle/Resources/translations/messages.de.yml3
-rw-r--r--src/Wallabag/CoreBundle/Resources/translations/messages.en.yml3
-rw-r--r--src/Wallabag/CoreBundle/Resources/translations/messages.es.yml3
-rw-r--r--src/Wallabag/CoreBundle/Resources/translations/messages.fa.yml3
-rw-r--r--src/Wallabag/CoreBundle/Resources/translations/messages.fr.yml3
-rw-r--r--src/Wallabag/CoreBundle/Resources/translations/messages.it.yml3
-rw-r--r--src/Wallabag/CoreBundle/Resources/translations/messages.oc.yml3
-rw-r--r--src/Wallabag/CoreBundle/Resources/translations/messages.pl.yml3
-rw-r--r--src/Wallabag/CoreBundle/Resources/translations/messages.pt.yml3
-rw-r--r--src/Wallabag/CoreBundle/Resources/translations/messages.ro.yml3
-rw-r--r--src/Wallabag/CoreBundle/Resources/translations/messages.ru.yml3
-rw-r--r--src/Wallabag/CoreBundle/Resources/translations/messages.th.yml3
-rw-r--r--src/Wallabag/CoreBundle/Resources/translations/messages.tr.yml3
-rw-r--r--src/Wallabag/CoreBundle/Resources/views/themes/baggy/Entry/entries.html.twig6
-rw-r--r--src/Wallabag/CoreBundle/Resources/views/themes/material/Entry/entries.html.twig6
-rw-r--r--src/Wallabag/CoreBundle/Resources/views/themes/material/Entry/new_form.html.twig4
-rw-r--r--src/Wallabag/CoreBundle/Resources/views/themes/material/Entry/search_form.html.twig4
-rw-r--r--src/Wallabag/ImportBundle/Controller/BrowserController.php2
-rw-r--r--src/Wallabag/ImportBundle/Controller/ElcuratorController.php41
-rw-r--r--src/Wallabag/ImportBundle/Controller/WallabagController.php2
-rw-r--r--src/Wallabag/ImportBundle/Import/AbstractImport.php14
-rw-r--r--src/Wallabag/ImportBundle/Import/BrowserImport.php4
-rw-r--r--src/Wallabag/ImportBundle/Import/ElcuratorImport.php54
-rw-r--r--src/Wallabag/ImportBundle/Import/ImportChain.php3
-rw-r--r--src/Wallabag/ImportBundle/Import/PocketImport.php3
-rw-r--r--src/Wallabag/ImportBundle/Resources/config/rabbit.yml8
-rw-r--r--src/Wallabag/ImportBundle/Resources/config/redis.yml21
-rw-r--r--src/Wallabag/ImportBundle/Resources/config/services.yml12
-rw-r--r--src/Wallabag/ImportBundle/Resources/views/Elcurator/index.html.twig3
-rw-r--r--src/Wallabag/UserBundle/Controller/ManageController.php3
-rw-r--r--src/Wallabag/UserBundle/Entity/User.php4
-rw-r--r--src/Wallabag/UserBundle/Form/UserType.php7
-rw-r--r--src/Wallabag/UserBundle/Mailer/AuthCodeMailer.php12
-rw-r--r--tests/Wallabag/CoreBundle/Controller/EntryControllerTest.php6
-rw-r--r--tests/Wallabag/ImportBundle/Controller/ElcuratorControllerTest.php132
-rw-r--r--tests/Wallabag/ImportBundle/Controller/ImportControllerTest.php2
-rw-r--r--tests/Wallabag/ImportBundle/Controller/PinboardControllerTest.php2
-rw-r--r--tests/Wallabag/ImportBundle/fixtures/elcurator.json13
116 files changed, 748 insertions, 823 deletions
diff --git a/app/DoctrineMigrations/Version20160401000000.php b/app/DoctrineMigrations/Version20160401000000.php
index c80e3e1f..9417935b 100644
--- a/app/DoctrineMigrations/Version20160401000000.php
+++ b/app/DoctrineMigrations/Version20160401000000.php
@@ -10,9 +10,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
10 */ 10 */
11class Version20160401000000 extends WallabagMigration 11class Version20160401000000 extends WallabagMigration
12{ 12{
13 /**
14 * @param Schema $schema
15 */
16 public function up(Schema $schema) 13 public function up(Schema $schema)
17 { 14 {
18 $this->skipIf($schema->hasTable($this->getTable('entry')), 'Database already initialized'); 15 $this->skipIf($schema->hasTable($this->getTable('entry')), 'Database already initialized');
@@ -167,9 +164,6 @@ SQL
167 } 164 }
168 } 165 }
169 166
170 /**
171 * @param Schema $schema
172 */
173 public function down(Schema $schema) 167 public function down(Schema $schema)
174 { 168 {
175 $this->addSql("DROP TABLE {$this->getTable('craue_config_setting')}"); 169 $this->addSql("DROP TABLE {$this->getTable('craue_config_setting')}");
diff --git a/app/DoctrineMigrations/Version20160410190541.php b/app/DoctrineMigrations/Version20160410190541.php
index e1bd3e5c..5b6d83dc 100644
--- a/app/DoctrineMigrations/Version20160410190541.php
+++ b/app/DoctrineMigrations/Version20160410190541.php
@@ -10,9 +10,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
10 */ 10 */
11class Version20160410190541 extends WallabagMigration 11class Version20160410190541 extends WallabagMigration
12{ 12{
13 /**
14 * @param Schema $schema
15 */
16 public function up(Schema $schema) 13 public function up(Schema $schema)
17 { 14 {
18 $entryTable = $schema->getTable($this->getTable('entry')); 15 $entryTable = $schema->getTable($this->getTable('entry'));
@@ -34,9 +31,6 @@ class Version20160410190541 extends WallabagMigration
34 } 31 }
35 } 32 }
36 33
37 /**
38 * @param Schema $schema
39 */
40 public function down(Schema $schema) 34 public function down(Schema $schema)
41 { 35 {
42 $entryTable = $schema->getTable($this->getTable('entry')); 36 $entryTable = $schema->getTable($this->getTable('entry'));
diff --git a/app/DoctrineMigrations/Version20160812120952.php b/app/DoctrineMigrations/Version20160812120952.php
index d09aefa0..f5f90850 100644
--- a/app/DoctrineMigrations/Version20160812120952.php
+++ b/app/DoctrineMigrations/Version20160812120952.php
@@ -10,9 +10,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
10 */ 10 */
11class Version20160812120952 extends WallabagMigration 11class Version20160812120952 extends WallabagMigration
12{ 12{
13 /**
14 * @param Schema $schema
15 */
16 public function up(Schema $schema) 13 public function up(Schema $schema)
17 { 14 {
18 $clientsTable = $schema->getTable($this->getTable('oauth2_clients')); 15 $clientsTable = $schema->getTable($this->getTable('oauth2_clients'));
@@ -34,9 +31,6 @@ class Version20160812120952 extends WallabagMigration
34 } 31 }
35 } 32 }
36 33
37 /**
38 * @param Schema $schema
39 */
40 public function down(Schema $schema) 34 public function down(Schema $schema)
41 { 35 {
42 $clientsTable = $schema->getTable($this->getTable('oauth2_clients')); 36 $clientsTable = $schema->getTable($this->getTable('oauth2_clients'));
diff --git a/app/DoctrineMigrations/Version20160911214952.php b/app/DoctrineMigrations/Version20160911214952.php
index 9dc225fd..4d7e0f7e 100644
--- a/app/DoctrineMigrations/Version20160911214952.php
+++ b/app/DoctrineMigrations/Version20160911214952.php
@@ -10,9 +10,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
10 */ 10 */
11class Version20160911214952 extends WallabagMigration 11class Version20160911214952 extends WallabagMigration
12{ 12{
13 /**
14 * @param Schema $schema
15 */
16 public function up(Schema $schema) 13 public function up(Schema $schema)
17 { 14 {
18 $redis = $this->container 15 $redis = $this->container
@@ -36,9 +33,6 @@ class Version20160911214952 extends WallabagMigration
36 $this->skipIf(false !== $rabbitmq && false !== $redis, 'It seems that you already played this migration.'); 33 $this->skipIf(false !== $rabbitmq && false !== $redis, 'It seems that you already played this migration.');
37 } 34 }
38 35
39 /**
40 * @param Schema $schema
41 */
42 public function down(Schema $schema) 36 public function down(Schema $schema)
43 { 37 {
44 $this->addSql('DELETE FROM ' . $this->getTable('craue_config_setting') . " WHERE name = 'import_with_redis';"); 38 $this->addSql('DELETE FROM ' . $this->getTable('craue_config_setting') . " WHERE name = 'import_with_redis';");
diff --git a/app/DoctrineMigrations/Version20160916201049.php b/app/DoctrineMigrations/Version20160916201049.php
index 13f99ce1..fc5e04ae 100644
--- a/app/DoctrineMigrations/Version20160916201049.php
+++ b/app/DoctrineMigrations/Version20160916201049.php
@@ -10,9 +10,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
10 */ 10 */
11class Version20160916201049 extends WallabagMigration 11class Version20160916201049 extends WallabagMigration
12{ 12{
13 /**
14 * @param Schema $schema
15 */
16 public function up(Schema $schema) 13 public function up(Schema $schema)
17 { 14 {
18 $configTable = $schema->getTable($this->getTable('config')); 15 $configTable = $schema->getTable($this->getTable('config'));
@@ -23,9 +20,6 @@ class Version20160916201049 extends WallabagMigration
23 $this->addSql('DELETE FROM ' . $this->getTable('craue_config_setting') . " WHERE name = 'pocket_consumer_key';"); 20 $this->addSql('DELETE FROM ' . $this->getTable('craue_config_setting') . " WHERE name = 'pocket_consumer_key';");
24 } 21 }
25 22
26 /**
27 * @param Schema $schema
28 */
29 public function down(Schema $schema) 23 public function down(Schema $schema)
30 { 24 {
31 $configTable = $schema->getTable($this->getTable('config')); 25 $configTable = $schema->getTable($this->getTable('config'));
diff --git a/app/DoctrineMigrations/Version20161001072726.php b/app/DoctrineMigrations/Version20161001072726.php
index 4e19a54a..497cb2a1 100644
--- a/app/DoctrineMigrations/Version20161001072726.php
+++ b/app/DoctrineMigrations/Version20161001072726.php
@@ -11,9 +11,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
11 */ 11 */
12class Version20161001072726 extends WallabagMigration 12class Version20161001072726 extends WallabagMigration
13{ 13{
14 /**
15 * @param Schema $schema
16 */
17 public function up(Schema $schema) 14 public function up(Schema $schema)
18 { 15 {
19 $this->skipIf('sqlite' === $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'mysql\' or \'postgresql\'.'); 16 $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
98 $this->addSql('ALTER TABLE ' . $this->getTable('annotation') . ' ADD CONSTRAINT FK_annotation_entry FOREIGN KEY (entry_id) REFERENCES ' . $this->getTable('entry') . ' (id) ON DELETE CASCADE'); 95 $this->addSql('ALTER TABLE ' . $this->getTable('annotation') . ' ADD CONSTRAINT FK_annotation_entry FOREIGN KEY (entry_id) REFERENCES ' . $this->getTable('entry') . ' (id) ON DELETE CASCADE');
99 } 96 }
100 97
101 /**
102 * @param Schema $schema
103 */
104 public function down(Schema $schema) 98 public function down(Schema $schema)
105 { 99 {
106 throw new SkipMigrationException('Too complex ...'); 100 throw new SkipMigrationException('Too complex ...');
diff --git a/app/DoctrineMigrations/Version20161022134138.php b/app/DoctrineMigrations/Version20161022134138.php
index 231aada7..d993363c 100644
--- a/app/DoctrineMigrations/Version20161022134138.php
+++ b/app/DoctrineMigrations/Version20161022134138.php
@@ -10,9 +10,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
10 */ 10 */
11class Version20161022134138 extends WallabagMigration 11class Version20161022134138 extends WallabagMigration
12{ 12{
13 /**
14 * @param Schema $schema
15 */
16 public function up(Schema $schema) 13 public function up(Schema $schema)
17 { 14 {
18 $this->skipIf('mysql' !== $this->connection->getDatabasePlatform()->getName(), 'This migration only apply to MySQL'); 15 $this->skipIf('mysql' !== $this->connection->getDatabasePlatform()->getName(), 'This migration only apply to MySQL');
@@ -41,9 +38,6 @@ class Version20161022134138 extends WallabagMigration
41 $this->addSql('ALTER TABLE ' . $this->getTable('user') . ' CHANGE `name` `name` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;'); 38 $this->addSql('ALTER TABLE ' . $this->getTable('user') . ' CHANGE `name` `name` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;');
42 } 39 }
43 40
44 /**
45 * @param Schema $schema
46 */
47 public function down(Schema $schema) 41 public function down(Schema $schema)
48 { 42 {
49 $this->skipIf('mysql' !== $this->connection->getDatabasePlatform()->getName(), 'This migration only apply to MySQL'); 43 $this->skipIf('mysql' !== $this->connection->getDatabasePlatform()->getName(), 'This migration only apply to MySQL');
diff --git a/app/DoctrineMigrations/Version20161024212538.php b/app/DoctrineMigrations/Version20161024212538.php
index a7e3c3c8..fa028ac0 100644
--- a/app/DoctrineMigrations/Version20161024212538.php
+++ b/app/DoctrineMigrations/Version20161024212538.php
@@ -12,9 +12,6 @@ class Version20161024212538 extends WallabagMigration
12{ 12{
13 private $constraintName = 'IDX_user_oauth_client'; 13 private $constraintName = 'IDX_user_oauth_client';
14 14
15 /**
16 * @param Schema $schema
17 */
18 public function up(Schema $schema) 15 public function up(Schema $schema)
19 { 16 {
20 $clientsTable = $schema->getTable($this->getTable('oauth2_clients')); 17 $clientsTable = $schema->getTable($this->getTable('oauth2_clients'));
@@ -32,9 +29,6 @@ class Version20161024212538 extends WallabagMigration
32 ); 29 );
33 } 30 }
34 31
35 /**
36 * @param Schema $schema
37 */
38 public function down(Schema $schema) 32 public function down(Schema $schema)
39 { 33 {
40 $clientsTable = $schema->getTable($this->getTable('oauth2_clients')); 34 $clientsTable = $schema->getTable($this->getTable('oauth2_clients'));
diff --git a/app/DoctrineMigrations/Version20161031132655.php b/app/DoctrineMigrations/Version20161031132655.php
index 8d576862..ec58cb2a 100644
--- a/app/DoctrineMigrations/Version20161031132655.php
+++ b/app/DoctrineMigrations/Version20161031132655.php
@@ -10,9 +10,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
10 */ 10 */
11class Version20161031132655 extends WallabagMigration 11class Version20161031132655 extends WallabagMigration
12{ 12{
13 /**
14 * @param Schema $schema
15 */
16 public function up(Schema $schema) 13 public function up(Schema $schema)
17 { 14 {
18 $images = $this->container 15 $images = $this->container
@@ -25,9 +22,6 @@ class Version20161031132655 extends WallabagMigration
25 $this->addSql('INSERT INTO ' . $this->getTable('craue_config_setting') . " (name, value, section) VALUES ('download_images_enabled', 0, 'misc')"); 22 $this->addSql('INSERT INTO ' . $this->getTable('craue_config_setting') . " (name, value, section) VALUES ('download_images_enabled', 0, 'misc')");
26 } 23 }
27 24
28 /**
29 * @param Schema $schema
30 */
31 public function down(Schema $schema) 25 public function down(Schema $schema)
32 { 26 {
33 $this->addSql('DELETE FROM ' . $this->getTable('craue_config_setting') . " WHERE name = 'download_images_enabled';"); 27 $this->addSql('DELETE FROM ' . $this->getTable('craue_config_setting') . " WHERE name = 'download_images_enabled';");
diff --git a/app/DoctrineMigrations/Version20161104073720.php b/app/DoctrineMigrations/Version20161104073720.php
index e2b18a46..e0289ec9 100644
--- a/app/DoctrineMigrations/Version20161104073720.php
+++ b/app/DoctrineMigrations/Version20161104073720.php
@@ -12,9 +12,6 @@ class Version20161104073720 extends WallabagMigration
12{ 12{
13 private $indexName = 'IDX_entry_created_at'; 13 private $indexName = 'IDX_entry_created_at';
14 14
15 /**
16 * @param Schema $schema
17 */
18 public function up(Schema $schema) 15 public function up(Schema $schema)
19 { 16 {
20 $entryTable = $schema->getTable($this->getTable('entry')); 17 $entryTable = $schema->getTable($this->getTable('entry'));
@@ -23,9 +20,6 @@ class Version20161104073720 extends WallabagMigration
23 $entryTable->addIndex(['created_at'], $this->indexName); 20 $entryTable->addIndex(['created_at'], $this->indexName);
24 } 21 }
25 22
26 /**
27 * @param Schema $schema
28 */
29 public function down(Schema $schema) 23 public function down(Schema $schema)
30 { 24 {
31 $entryTable = $schema->getTable($this->getTable('entry')); 25 $entryTable = $schema->getTable($this->getTable('entry'));
diff --git a/app/DoctrineMigrations/Version20161106113822.php b/app/DoctrineMigrations/Version20161106113822.php
index 3a3c90db..5a4831f4 100644
--- a/app/DoctrineMigrations/Version20161106113822.php
+++ b/app/DoctrineMigrations/Version20161106113822.php
@@ -10,9 +10,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
10 */ 10 */
11class Version20161106113822 extends WallabagMigration 11class Version20161106113822 extends WallabagMigration
12{ 12{
13 /**
14 * @param Schema $schema
15 */
16 public function up(Schema $schema) 13 public function up(Schema $schema)
17 { 14 {
18 $configTable = $schema->getTable($this->getTable('config')); 15 $configTable = $schema->getTable($this->getTable('config'));
@@ -25,9 +22,6 @@ class Version20161106113822 extends WallabagMigration
25 ]); 22 ]);
26 } 23 }
27 24
28 /**
29 * @param Schema $schema
30 */
31 public function down(Schema $schema) 25 public function down(Schema $schema)
32 { 26 {
33 $configTable = $schema->getTable($this->getTable('config')); 27 $configTable = $schema->getTable($this->getTable('config'));
diff --git a/app/DoctrineMigrations/Version20161117071626.php b/app/DoctrineMigrations/Version20161117071626.php
index fc66e7e3..bafb70da 100644
--- a/app/DoctrineMigrations/Version20161117071626.php
+++ b/app/DoctrineMigrations/Version20161117071626.php
@@ -10,9 +10,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
10 */ 10 */
11class Version20161117071626 extends WallabagMigration 11class Version20161117071626 extends WallabagMigration
12{ 12{
13 /**
14 * @param Schema $schema
15 */
16 public function up(Schema $schema) 13 public function up(Schema $schema)
17 { 14 {
18 $share = $this->container 15 $share = $this->container
@@ -36,9 +33,6 @@ class Version20161117071626 extends WallabagMigration
36 $this->skipIf(false !== $share && false !== $unmark, 'It seems that you already played this migration.'); 33 $this->skipIf(false !== $share && false !== $unmark, 'It seems that you already played this migration.');
37 } 34 }
38 35
39 /**
40 * @param Schema $schema
41 */
42 public function down(Schema $schema) 36 public function down(Schema $schema)
43 { 37 {
44 $this->addSql('DELETE FROM ' . $this->getTable('craue_config_setting') . " WHERE name = 'share_unmark';"); 38 $this->addSql('DELETE FROM ' . $this->getTable('craue_config_setting') . " WHERE name = 'share_unmark';");
diff --git a/app/DoctrineMigrations/Version20161118134328.php b/app/DoctrineMigrations/Version20161118134328.php
index 8302408e..2298447a 100644
--- a/app/DoctrineMigrations/Version20161118134328.php
+++ b/app/DoctrineMigrations/Version20161118134328.php
@@ -10,9 +10,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
10 */ 10 */
11class Version20161118134328 extends WallabagMigration 11class Version20161118134328 extends WallabagMigration
12{ 12{
13 /**
14 * @param Schema $schema
15 */
16 public function up(Schema $schema) 13 public function up(Schema $schema)
17 { 14 {
18 $entryTable = $schema->getTable($this->getTable('entry')); 15 $entryTable = $schema->getTable($this->getTable('entry'));
@@ -25,9 +22,6 @@ class Version20161118134328 extends WallabagMigration
25 ]); 22 ]);
26 } 23 }
27 24
28 /**
29 * @param Schema $schema
30 */
31 public function down(Schema $schema) 25 public function down(Schema $schema)
32 { 26 {
33 $entryTable = $schema->getTable($this->getTable('entry')); 27 $entryTable = $schema->getTable($this->getTable('entry'));
diff --git a/app/DoctrineMigrations/Version20161122144743.php b/app/DoctrineMigrations/Version20161122144743.php
index 08a41f48..e628f058 100644
--- a/app/DoctrineMigrations/Version20161122144743.php
+++ b/app/DoctrineMigrations/Version20161122144743.php
@@ -10,9 +10,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
10 */ 10 */
11class Version20161122144743 extends WallabagMigration 11class Version20161122144743 extends WallabagMigration
12{ 12{
13 /**
14 * @param Schema $schema
15 */
16 public function up(Schema $schema) 13 public function up(Schema $schema)
17 { 14 {
18 $access = $this->container 15 $access = $this->container
@@ -25,9 +22,6 @@ class Version20161122144743 extends WallabagMigration
25 $this->addSql('INSERT INTO ' . $this->getTable('craue_config_setting') . " (name, value, section) VALUES ('restricted_access', 0, 'entry')"); 22 $this->addSql('INSERT INTO ' . $this->getTable('craue_config_setting') . " (name, value, section) VALUES ('restricted_access', 0, 'entry')");
26 } 23 }
27 24
28 /**
29 * @param Schema $schema
30 */
31 public function down(Schema $schema) 25 public function down(Schema $schema)
32 { 26 {
33 $this->addSql('DELETE FROM ' . $this->getTable('craue_config_setting') . " WHERE name = 'restricted_access';"); 27 $this->addSql('DELETE FROM ' . $this->getTable('craue_config_setting') . " WHERE name = 'restricted_access';");
diff --git a/app/DoctrineMigrations/Version20161122203647.php b/app/DoctrineMigrations/Version20161122203647.php
index 60ddeb08..27fe7d2c 100644
--- a/app/DoctrineMigrations/Version20161122203647.php
+++ b/app/DoctrineMigrations/Version20161122203647.php
@@ -18,9 +18,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
18 */ 18 */
19class Version20161122203647 extends WallabagMigration 19class Version20161122203647 extends WallabagMigration
20{ 20{
21 /**
22 * @param Schema $schema
23 */
24 public function up(Schema $schema) 21 public function up(Schema $schema)
25 { 22 {
26 $userTable = $schema->getTable($this->getTable('user')); 23 $userTable = $schema->getTable($this->getTable('user'));
@@ -31,9 +28,6 @@ class Version20161122203647 extends WallabagMigration
31 $userTable->dropColumn('credentials_expired'); 28 $userTable->dropColumn('credentials_expired');
32 } 29 }
33 30
34 /**
35 * @param Schema $schema
36 */
37 public function down(Schema $schema) 31 public function down(Schema $schema)
38 { 32 {
39 $userTable = $schema->getTable($this->getTable('user')); 33 $userTable = $schema->getTable($this->getTable('user'));
diff --git a/app/DoctrineMigrations/Version20161128084725.php b/app/DoctrineMigrations/Version20161128084725.php
index ef747154..e22e842f 100644
--- a/app/DoctrineMigrations/Version20161128084725.php
+++ b/app/DoctrineMigrations/Version20161128084725.php
@@ -10,9 +10,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
10 */ 10 */
11class Version20161128084725 extends WallabagMigration 11class Version20161128084725 extends WallabagMigration
12{ 12{
13 /**
14 * @param Schema $schema
15 */
16 public function up(Schema $schema) 13 public function up(Schema $schema)
17 { 14 {
18 $configTable = $schema->getTable($this->getTable('config')); 15 $configTable = $schema->getTable($this->getTable('config'));
@@ -21,9 +18,6 @@ class Version20161128084725 extends WallabagMigration
21 $configTable->addColumn('list_mode', 'integer', ['notnull' => false]); 18 $configTable->addColumn('list_mode', 'integer', ['notnull' => false]);
22 } 19 }
23 20
24 /**
25 * @param Schema $schema
26 */
27 public function down(Schema $schema) 21 public function down(Schema $schema)
28 { 22 {
29 $configTable = $schema->getTable($this->getTable('config')); 23 $configTable = $schema->getTable($this->getTable('config'));
diff --git a/app/DoctrineMigrations/Version20161128131503.php b/app/DoctrineMigrations/Version20161128131503.php
index cd434617..2a34d448 100644
--- a/app/DoctrineMigrations/Version20161128131503.php
+++ b/app/DoctrineMigrations/Version20161128131503.php
@@ -16,9 +16,6 @@ class Version20161128131503 extends WallabagMigration
16 'expires_at' => 'datetime', 16 'expires_at' => 'datetime',
17 ]; 17 ];
18 18
19 /**
20 * @param Schema $schema
21 */
22 public function up(Schema $schema) 19 public function up(Schema $schema)
23 { 20 {
24 $userTable = $schema->getTable($this->getTable('user')); 21 $userTable = $schema->getTable($this->getTable('user'));
@@ -29,9 +26,6 @@ class Version20161128131503 extends WallabagMigration
29 } 26 }
30 } 27 }
31 28
32 /**
33 * @param Schema $schema
34 */
35 public function down(Schema $schema) 29 public function down(Schema $schema)
36 { 30 {
37 $userTable = $schema->getTable($this->getTable('user')); 31 $userTable = $schema->getTable($this->getTable('user'));
diff --git a/app/DoctrineMigrations/Version20161214094402.php b/app/DoctrineMigrations/Version20161214094402.php
index e9f1a302..0240f599 100644
--- a/app/DoctrineMigrations/Version20161214094402.php
+++ b/app/DoctrineMigrations/Version20161214094402.php
@@ -10,9 +10,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
10 */ 10 */
11class Version20161214094402 extends WallabagMigration 11class Version20161214094402 extends WallabagMigration
12{ 12{
13 /**
14 * @param Schema $schema
15 */
16 public function up(Schema $schema) 13 public function up(Schema $schema)
17 { 14 {
18 $entryTable = $schema->getTable($this->getTable('entry')); 15 $entryTable = $schema->getTable($this->getTable('entry'));
@@ -35,9 +32,6 @@ class Version20161214094402 extends WallabagMigration
35 } 32 }
36 } 33 }
37 34
38 /**
39 * @param Schema $schema
40 */
41 public function down(Schema $schema) 35 public function down(Schema $schema)
42 { 36 {
43 $entryTable = $schema->getTable($this->getTable('entry')); 37 $entryTable = $schema->getTable($this->getTable('entry'));
diff --git a/app/DoctrineMigrations/Version20161214094403.php b/app/DoctrineMigrations/Version20161214094403.php
index 1f9e1f6b..c6003cb3 100644
--- a/app/DoctrineMigrations/Version20161214094403.php
+++ b/app/DoctrineMigrations/Version20161214094403.php
@@ -12,9 +12,6 @@ class Version20161214094403 extends WallabagMigration
12{ 12{
13 private $indexName = 'IDX_entry_uid'; 13 private $indexName = 'IDX_entry_uid';
14 14
15 /**
16 * @param Schema $schema
17 */
18 public function up(Schema $schema) 15 public function up(Schema $schema)
19 { 16 {
20 $entryTable = $schema->getTable($this->getTable('entry')); 17 $entryTable = $schema->getTable($this->getTable('entry'));
@@ -23,9 +20,6 @@ class Version20161214094403 extends WallabagMigration
23 $entryTable->addIndex(['uid'], $this->indexName); 20 $entryTable->addIndex(['uid'], $this->indexName);
24 } 21 }
25 22
26 /**
27 * @param Schema $schema
28 */
29 public function down(Schema $schema) 23 public function down(Schema $schema)
30 { 24 {
31 $entryTable = $schema->getTable($this->getTable('entry')); 25 $entryTable = $schema->getTable($this->getTable('entry'));
diff --git a/app/DoctrineMigrations/Version20170127093841.php b/app/DoctrineMigrations/Version20170127093841.php
index 491b9383..d8eb34e5 100644
--- a/app/DoctrineMigrations/Version20170127093841.php
+++ b/app/DoctrineMigrations/Version20170127093841.php
@@ -13,9 +13,6 @@ class Version20170127093841 extends WallabagMigration
13 private $indexStarredName = 'IDX_entry_starred'; 13 private $indexStarredName = 'IDX_entry_starred';
14 private $indexArchivedName = 'IDX_entry_archived'; 14 private $indexArchivedName = 'IDX_entry_archived';
15 15
16 /**
17 * @param Schema $schema
18 */
19 public function up(Schema $schema) 16 public function up(Schema $schema)
20 { 17 {
21 $entryTable = $schema->getTable($this->getTable('entry')); 18 $entryTable = $schema->getTable($this->getTable('entry'));
@@ -25,9 +22,6 @@ class Version20170127093841 extends WallabagMigration
25 $entryTable->addIndex(['is_archived'], $this->indexArchivedName); 22 $entryTable->addIndex(['is_archived'], $this->indexArchivedName);
26 } 23 }
27 24
28 /**
29 * @param Schema $schema
30 */
31 public function down(Schema $schema) 25 public function down(Schema $schema)
32 { 26 {
33 $entryTable = $schema->getTable($this->getTable('entry')); 27 $entryTable = $schema->getTable($this->getTable('entry'));
diff --git a/app/DoctrineMigrations/Version20170327194233.php b/app/DoctrineMigrations/Version20170327194233.php
index 1aa20eb5..268f8cde 100644
--- a/app/DoctrineMigrations/Version20170327194233.php
+++ b/app/DoctrineMigrations/Version20170327194233.php
@@ -10,9 +10,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
10 */ 10 */
11class Version20170327194233 extends WallabagMigration 11class Version20170327194233 extends WallabagMigration
12{ 12{
13 /**
14 * @param Schema $schema
15 */
16 public function up(Schema $schema) 13 public function up(Schema $schema)
17 { 14 {
18 $scuttle = $this->container 15 $scuttle = $this->container
@@ -26,9 +23,6 @@ class Version20170327194233 extends WallabagMigration
26 $this->addSql('INSERT INTO ' . $this->getTable('craue_config_setting') . " (name, value, section) VALUES ('scuttle_url', 'http://scuttle.org', 'entry')"); 23 $this->addSql('INSERT INTO ' . $this->getTable('craue_config_setting') . " (name, value, section) VALUES ('scuttle_url', 'http://scuttle.org', 'entry')");
27 } 24 }
28 25
29 /**
30 * @param Schema $schema
31 */
32 public function down(Schema $schema) 26 public function down(Schema $schema)
33 { 27 {
34 $this->addSql('DELETE FROM ' . $this->getTable('craue_config_setting') . " WHERE name = 'share_scuttle';"); 28 $this->addSql('DELETE FROM ' . $this->getTable('craue_config_setting') . " WHERE name = 'share_scuttle';");
diff --git a/app/DoctrineMigrations/Version20170405182620.php b/app/DoctrineMigrations/Version20170405182620.php
index c7752664..798c72af 100644
--- a/app/DoctrineMigrations/Version20170405182620.php
+++ b/app/DoctrineMigrations/Version20170405182620.php
@@ -10,9 +10,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
10 */ 10 */
11class Version20170405182620 extends WallabagMigration 11class Version20170405182620 extends WallabagMigration
12{ 12{
13 /**
14 * @param Schema $schema
15 */
16 public function up(Schema $schema) 13 public function up(Schema $schema)
17 { 14 {
18 $entryTable = $schema->getTable($this->getTable('entry')); 15 $entryTable = $schema->getTable($this->getTable('entry'));
@@ -30,9 +27,6 @@ class Version20170405182620 extends WallabagMigration
30 ]); 27 ]);
31 } 28 }
32 29
33 /**
34 * @param Schema $schema
35 */
36 public function down(Schema $schema) 30 public function down(Schema $schema)
37 { 31 {
38 $entryTable = $schema->getTable($this->getTable('entry')); 32 $entryTable = $schema->getTable($this->getTable('entry'));
diff --git a/app/DoctrineMigrations/Version20170407200919.php b/app/DoctrineMigrations/Version20170407200919.php
index ad05eadf..d9fff6c3 100644
--- a/app/DoctrineMigrations/Version20170407200919.php
+++ b/app/DoctrineMigrations/Version20170407200919.php
@@ -10,9 +10,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
10 */ 10 */
11class Version20170407200919 extends WallabagMigration 11class Version20170407200919 extends WallabagMigration
12{ 12{
13 /**
14 * @param Schema $schema
15 */
16 public function up(Schema $schema) 13 public function up(Schema $schema)
17 { 14 {
18 $entryTable = $schema->getTable($this->getTable('entry')); 15 $entryTable = $schema->getTable($this->getTable('entry'));
@@ -21,9 +18,6 @@ class Version20170407200919 extends WallabagMigration
21 $entryTable->dropColumn('is_public'); 18 $entryTable->dropColumn('is_public');
22 } 19 }
23 20
24 /**
25 * @param Schema $schema
26 */
27 public function down(Schema $schema) 21 public function down(Schema $schema)
28 { 22 {
29 $entryTable = $schema->getTable($this->getTable('entry')); 23 $entryTable = $schema->getTable($this->getTable('entry'));
diff --git a/app/DoctrineMigrations/Version20170420134133.php b/app/DoctrineMigrations/Version20170420134133.php
index c1732578..2bf05346 100644
--- a/app/DoctrineMigrations/Version20170420134133.php
+++ b/app/DoctrineMigrations/Version20170420134133.php
@@ -10,17 +10,11 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
10 */ 10 */
11class Version20170420134133 extends WallabagMigration 11class Version20170420134133 extends WallabagMigration
12{ 12{
13 /**
14 * @param Schema $schema
15 */
16 public function up(Schema $schema) 13 public function up(Schema $schema)
17 { 14 {
18 $this->addSql('DELETE FROM ' . $this->getTable('craue_config_setting') . " WHERE name = 'download_pictures';"); 15 $this->addSql('DELETE FROM ' . $this->getTable('craue_config_setting') . " WHERE name = 'download_pictures';");
19 } 16 }
20 17
21 /**
22 * @param Schema $schema
23 */
24 public function down(Schema $schema) 18 public function down(Schema $schema)
25 { 19 {
26 $downloadPictures = $this->container 20 $downloadPictures = $this->container
diff --git a/app/DoctrineMigrations/Version20170501115751.php b/app/DoctrineMigrations/Version20170501115751.php
index fd238cef..a879cd44 100644
--- a/app/DoctrineMigrations/Version20170501115751.php
+++ b/app/DoctrineMigrations/Version20170501115751.php
@@ -10,9 +10,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
10 */ 10 */
11class Version20170501115751 extends WallabagMigration 11class Version20170501115751 extends WallabagMigration
12{ 12{
13 /**
14 * @param Schema $schema
15 */
16 public function up(Schema $schema) 13 public function up(Schema $schema)
17 { 14 {
18 $this->skipIf($schema->hasTable($this->getTable('site_credential')), 'It seems that you already played this migration.'); 15 $this->skipIf($schema->hasTable($this->getTable('site_credential')), 'It seems that you already played this migration.');
@@ -34,9 +31,6 @@ class Version20170501115751 extends WallabagMigration
34 } 31 }
35 } 32 }
36 33
37 /**
38 * @param Schema $schema
39 */
40 public function down(Schema $schema) 34 public function down(Schema $schema)
41 { 35 {
42 $schema->dropTable($this->getTable('site_credential')); 36 $schema->dropTable($this->getTable('site_credential'));
diff --git a/app/DoctrineMigrations/Version20170510082609.php b/app/DoctrineMigrations/Version20170510082609.php
index 541ae1fd..ddc894a6 100644
--- a/app/DoctrineMigrations/Version20170510082609.php
+++ b/app/DoctrineMigrations/Version20170510082609.php
@@ -17,9 +17,6 @@ class Version20170510082609 extends WallabagMigration
17 'email_canonical', 17 'email_canonical',
18 ]; 18 ];
19 19
20 /**
21 * @param Schema $schema
22 */
23 public function up(Schema $schema) 20 public function up(Schema $schema)
24 { 21 {
25 $this->skipIf('mysql' !== $this->connection->getDatabasePlatform()->getName(), 'This migration only apply to MySQL'); 22 $this->skipIf('mysql' !== $this->connection->getDatabasePlatform()->getName(), 'This migration only apply to MySQL');
@@ -29,9 +26,6 @@ class Version20170510082609 extends WallabagMigration
29 } 26 }
30 } 27 }
31 28
32 /**
33 * @param Schema $schema
34 */
35 public function down(Schema $schema) 29 public function down(Schema $schema)
36 { 30 {
37 $this->skipIf('mysql' !== $this->connection->getDatabasePlatform()->getName(), 'This migration only apply to MySQL'); 31 $this->skipIf('mysql' !== $this->connection->getDatabasePlatform()->getName(), 'This migration only apply to MySQL');
diff --git a/app/DoctrineMigrations/Version20170511115400.php b/app/DoctrineMigrations/Version20170511115400.php
index cb80dd45..9a89cfb8 100644
--- a/app/DoctrineMigrations/Version20170511115400.php
+++ b/app/DoctrineMigrations/Version20170511115400.php
@@ -10,9 +10,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
10 */ 10 */
11class Version20170511115400 extends WallabagMigration 11class Version20170511115400 extends WallabagMigration
12{ 12{
13 /**
14 * @param Schema $schema
15 */
16 public function up(Schema $schema) 13 public function up(Schema $schema)
17 { 14 {
18 $entryTable = $schema->getTable($this->getTable('entry')); 15 $entryTable = $schema->getTable($this->getTable('entry'));
@@ -24,9 +21,6 @@ class Version20170511115400 extends WallabagMigration
24 ]); 21 ]);
25 } 22 }
26 23
27 /**
28 * @param Schema $schema
29 */
30 public function down(Schema $schema) 24 public function down(Schema $schema)
31 { 25 {
32 $entryTable = $schema->getTable($this->getTable('entry')); 26 $entryTable = $schema->getTable($this->getTable('entry'));
diff --git a/app/DoctrineMigrations/Version20170602075214.php b/app/DoctrineMigrations/Version20170602075214.php
index 12997c71..f72839b2 100644
--- a/app/DoctrineMigrations/Version20170602075214.php
+++ b/app/DoctrineMigrations/Version20170602075214.php
@@ -10,9 +10,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
10 */ 10 */
11class Version20170602075214 extends WallabagMigration 11class Version20170602075214 extends WallabagMigration
12{ 12{
13 /**
14 * @param Schema $schema
15 */
16 public function up(Schema $schema) 13 public function up(Schema $schema)
17 { 14 {
18 $apiUserRegistration = $this->container 15 $apiUserRegistration = $this->container
@@ -25,9 +22,6 @@ class Version20170602075214 extends WallabagMigration
25 $this->addSql('INSERT INTO ' . $this->getTable('craue_config_setting') . " (name, value, section) VALUES ('api_user_registration', '0', 'api')"); 22 $this->addSql('INSERT INTO ' . $this->getTable('craue_config_setting') . " (name, value, section) VALUES ('api_user_registration', '0', 'api')");
26 } 23 }
27 24
28 /**
29 * @param Schema $schema
30 */
31 public function down(Schema $schema) 25 public function down(Schema $schema)
32 { 26 {
33 $this->addSql('DELETE FROM ' . $this->getTable('craue_config_setting') . " WHERE name = 'api_user_registration';"); 27 $this->addSql('DELETE FROM ' . $this->getTable('craue_config_setting') . " WHERE name = 'api_user_registration';");
diff --git a/app/DoctrineMigrations/Version20170606155640.php b/app/DoctrineMigrations/Version20170606155640.php
index 153d31b8..099e5329 100644
--- a/app/DoctrineMigrations/Version20170606155640.php
+++ b/app/DoctrineMigrations/Version20170606155640.php
@@ -11,9 +11,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
11 */ 11 */
12class Version20170606155640 extends WallabagMigration 12class Version20170606155640 extends WallabagMigration
13{ 13{
14 /**
15 * @param Schema $schema
16 */
17 public function up(Schema $schema) 14 public function up(Schema $schema)
18 { 15 {
19 $apiUserRegistration = $this->container 16 $apiUserRegistration = $this->container
@@ -26,9 +23,6 @@ class Version20170606155640 extends WallabagMigration
26 $this->addSql('DELETE FROM ' . $this->getTable('craue_config_setting') . " WHERE name = 'wallabag_url'"); 23 $this->addSql('DELETE FROM ' . $this->getTable('craue_config_setting') . " WHERE name = 'wallabag_url'");
27 } 24 }
28 25
29 /**
30 * @param Schema $schema
31 */
32 public function down(Schema $schema) 26 public function down(Schema $schema)
33 { 27 {
34 $this->addSql('INSERT INTO ' . $this->getTable('craue_config_setting') . " (name, value, section) VALUES ('wallabag_url', 'wallabag.me', 'misc')"); 28 $this->addSql('INSERT INTO ' . $this->getTable('craue_config_setting') . " (name, value, section) VALUES ('wallabag_url', 'wallabag.me', 'misc')");
diff --git a/app/DoctrineMigrations/Version20170719231144.php b/app/DoctrineMigrations/Version20170719231144.php
index 93fe7f26..7a9731d4 100644
--- a/app/DoctrineMigrations/Version20170719231144.php
+++ b/app/DoctrineMigrations/Version20170719231144.php
@@ -10,9 +10,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
10 */ 10 */
11class Version20170719231144 extends WallabagMigration 11class Version20170719231144 extends WallabagMigration
12{ 12{
13 /**
14 * @param Schema $schema
15 */
16 public function up(Schema $schema) 13 public function up(Schema $schema)
17 { 14 {
18 $this->skipIf('sqlite' === $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'mysql\' or \'postgresql\'.'); 15 $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
89 ); 86 );
90 } 87 }
91 88
92 /**
93 * @param Schema $schema
94 */
95 public function down(Schema $schema) 89 public function down(Schema $schema)
96 { 90 {
97 throw new SkipMigrationException('Too complex ...'); 91 throw new SkipMigrationException('Too complex ...');
diff --git a/app/DoctrineMigrations/Version20170824113337.php b/app/DoctrineMigrations/Version20170824113337.php
index 5fc31de9..dc20f6d9 100644
--- a/app/DoctrineMigrations/Version20170824113337.php
+++ b/app/DoctrineMigrations/Version20170824113337.php
@@ -10,9 +10,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
10 */ 10 */
11class Version20170824113337 extends WallabagMigration 11class Version20170824113337 extends WallabagMigration
12{ 12{
13 /**
14 * @param Schema $schema
15 */
16 public function up(Schema $schema) 13 public function up(Schema $schema)
17 { 14 {
18 $entryTable = $schema->getTable($this->getTable('entry')); 15 $entryTable = $schema->getTable($this->getTable('entry'));
@@ -37,9 +34,6 @@ class Version20170824113337 extends WallabagMigration
37 ); 34 );
38 } 35 }
39 36
40 /**
41 * @param Schema $schema
42 */
43 public function down(Schema $schema) 37 public function down(Schema $schema)
44 { 38 {
45 $entryTable = $schema->getTable($this->getTable('entry')); 39 $entryTable = $schema->getTable($this->getTable('entry'));
diff --git a/app/DoctrineMigrations/Version20171008195606.php b/app/DoctrineMigrations/Version20171008195606.php
index 6974232a..60d8777f 100644
--- a/app/DoctrineMigrations/Version20171008195606.php
+++ b/app/DoctrineMigrations/Version20171008195606.php
@@ -10,9 +10,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
10 */ 10 */
11class Version20171008195606 extends WallabagMigration 11class Version20171008195606 extends WallabagMigration
12{ 12{
13 /**
14 * @param Schema $schema
15 */
16 public function up(Schema $schema) 13 public function up(Schema $schema)
17 { 14 {
18 $this->skipIf('sqlite' === $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'mysql\' or \'postgresql\'.'); 15 $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
29 } 26 }
30 } 27 }
31 28
32 /**
33 * @param Schema $schema
34 */
35 public function down(Schema $schema) 29 public function down(Schema $schema)
36 { 30 {
37 $this->skipIf('sqlite' === $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'mysql\' or \'postgresql\'.'); 31 $this->skipIf('sqlite' === $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'mysql\' or \'postgresql\'.');
diff --git a/app/DoctrineMigrations/Version20171105202000.php b/app/DoctrineMigrations/Version20171105202000.php
index 5ed787b9..5313a336 100644
--- a/app/DoctrineMigrations/Version20171105202000.php
+++ b/app/DoctrineMigrations/Version20171105202000.php
@@ -10,9 +10,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
10 */ 10 */
11class Version20171105202000 extends WallabagMigration 11class Version20171105202000 extends WallabagMigration
12{ 12{
13 /**
14 * @param Schema $schema
15 */
16 public function up(Schema $schema) 13 public function up(Schema $schema)
17 { 14 {
18 $entryTable = $schema->getTable($this->getTable('entry')); 15 $entryTable = $schema->getTable($this->getTable('entry'));
@@ -24,9 +21,6 @@ class Version20171105202000 extends WallabagMigration
24 ]); 21 ]);
25 } 22 }
26 23
27 /**
28 * @param Schema $schema
29 */
30 public function down(Schema $schema) 24 public function down(Schema $schema)
31 { 25 {
32 $entryTable = $schema->getTable($this->getTable('entry')); 26 $entryTable = $schema->getTable($this->getTable('entry'));
diff --git a/app/DoctrineMigrations/Version20171120163128.php b/app/DoctrineMigrations/Version20171120163128.php
index 48f10f1d..a6d126a5 100644
--- a/app/DoctrineMigrations/Version20171120163128.php
+++ b/app/DoctrineMigrations/Version20171120163128.php
@@ -10,9 +10,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
10 */ 10 */
11class Version20171120163128 extends WallabagMigration 11class Version20171120163128 extends WallabagMigration
12{ 12{
13 /**
14 * @param Schema $schema
15 */
16 public function up(Schema $schema) 13 public function up(Schema $schema)
17 { 14 {
18 $storeArticleHeaders = $this->container 15 $storeArticleHeaders = $this->container
@@ -25,9 +22,6 @@ class Version20171120163128 extends WallabagMigration
25 $this->addSql('INSERT INTO ' . $this->getTable('craue_config_setting') . " (name, value, section) VALUES ('store_article_headers', '0', 'entry')"); 22 $this->addSql('INSERT INTO ' . $this->getTable('craue_config_setting') . " (name, value, section) VALUES ('store_article_headers', '0', 'entry')");
26 } 23 }
27 24
28 /**
29 * @param Schema $schema
30 */
31 public function down(Schema $schema) 25 public function down(Schema $schema)
32 { 26 {
33 $this->addSql('DELETE FROM ' . $this->getTable('craue_config_setting') . " WHERE name = 'store_article_headers';"); 27 $this->addSql('DELETE FROM ' . $this->getTable('craue_config_setting') . " WHERE name = 'store_article_headers';");
diff --git a/app/DoctrineMigrations/Version20171125164500.php b/app/DoctrineMigrations/Version20171125164500.php
index a72463f0..2ee49d87 100644
--- a/app/DoctrineMigrations/Version20171125164500.php
+++ b/app/DoctrineMigrations/Version20171125164500.php
@@ -10,9 +10,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
10 */ 10 */
11class Version20171125164500 extends WallabagMigration 11class Version20171125164500 extends WallabagMigration
12{ 12{
13 /**
14 * @param Schema $schema
15 */
16 public function up(Schema $schema) 13 public function up(Schema $schema)
17 { 14 {
18 $shaarliShareOriginUrl = $this->container 15 $shaarliShareOriginUrl = $this->container
@@ -25,9 +22,6 @@ class Version20171125164500 extends WallabagMigration
25 $this->addSql('INSERT INTO ' . $this->getTable('craue_config_setting') . " (name, value, section) VALUES ('shaarli_share_origin_url', '0', 'entry')"); 22 $this->addSql('INSERT INTO ' . $this->getTable('craue_config_setting') . " (name, value, section) VALUES ('shaarli_share_origin_url', '0', 'entry')");
26 } 23 }
27 24
28 /**
29 * @param Schema $schema
30 */
31 public function down(Schema $schema) 25 public function down(Schema $schema)
32 { 26 {
33 $this->addSql('DELETE FROM ' . $this->getTable('craue_config_setting') . " WHERE name = 'shaarli_share_origin_url';"); 27 $this->addSql('DELETE FROM ' . $this->getTable('craue_config_setting') . " WHERE name = 'shaarli_share_origin_url';");
diff --git a/app/DoctrineMigrations/Version20180405182455.php b/app/DoctrineMigrations/Version20180405182455.php
index 50fe97c7..1b8c3b0e 100755
--- a/app/DoctrineMigrations/Version20180405182455.php
+++ b/app/DoctrineMigrations/Version20180405182455.php
@@ -10,9 +10,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
10 */ 10 */
11class Version20180405182455 extends WallabagMigration 11class Version20180405182455 extends WallabagMigration
12{ 12{
13 /**
14 * @param Schema $schema
15 */
16 public function up(Schema $schema) 13 public function up(Schema $schema)
17 { 14 {
18 $entryTable = $schema->getTable($this->getTable('entry')); 15 $entryTable = $schema->getTable($this->getTable('entry'));
@@ -37,9 +34,6 @@ class Version20180405182455 extends WallabagMigration
37 ); 34 );
38 } 35 }
39 36
40 /**
41 * @param Schema $schema
42 */
43 public function down(Schema $schema) 37 public function down(Schema $schema)
44 { 38 {
45 $entryTable = $schema->getTable($this->getTable('entry')); 39 $entryTable = $schema->getTable($this->getTable('entry'));
diff --git a/app/DoctrineMigrations/Version20181128203230.php b/app/DoctrineMigrations/Version20181128203230.php
index d1b09fc7..add161cd 100644
--- a/app/DoctrineMigrations/Version20181128203230.php
+++ b/app/DoctrineMigrations/Version20181128203230.php
@@ -10,9 +10,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
10 */ 10 */
11class Version20181128203230 extends WallabagMigration 11class Version20181128203230 extends WallabagMigration
12{ 12{
13 /**
14 * @param Schema $schema
15 */
16 public function up(Schema $schema) 13 public function up(Schema $schema)
17 { 14 {
18 $this->skipIf('mysql' !== $this->connection->getDatabasePlatform()->getName(), 'This migration can only be applied on \'mysql\'.'); 15 $this->skipIf('mysql' !== $this->connection->getDatabasePlatform()->getName(), 'This migration can only be applied on \'mysql\'.');
diff --git a/app/DoctrineMigrations/Version20190129120000.php b/app/DoctrineMigrations/Version20190129120000.php
index 3632e762..8c5e28ca 100644
--- a/app/DoctrineMigrations/Version20190129120000.php
+++ b/app/DoctrineMigrations/Version20190129120000.php
@@ -118,9 +118,6 @@ final class Version20190129120000 extends WallabagMigration
118 ], 118 ],
119 ]; 119 ];
120 120
121 /**
122 * @param Schema $schema
123 */
124 public function up(Schema $schema) 121 public function up(Schema $schema)
125 { 122 {
126 foreach ($this->settings as $setting) { 123 foreach ($this->settings as $setting) {
@@ -137,9 +134,6 @@ final class Version20190129120000 extends WallabagMigration
137 } 134 }
138 } 135 }
139 136
140 /**
141 * @param Schema $schema
142 */
143 public function down(Schema $schema) 137 public function down(Schema $schema)
144 { 138 {
145 $this->skipIf(true, 'These settings are required and should not be removed.'); 139 $this->skipIf(true, 'These settings are required and should not be removed.');
diff --git a/app/DoctrineMigrations/Version20190401105353.php b/app/DoctrineMigrations/Version20190401105353.php
index d27962db..600fc162 100644
--- a/app/DoctrineMigrations/Version20190401105353.php
+++ b/app/DoctrineMigrations/Version20190401105353.php
@@ -10,9 +10,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
10 */ 10 */
11class Version20190401105353 extends WallabagMigration 11class Version20190401105353 extends WallabagMigration
12{ 12{
13 /**
14 * @param Schema $schema
15 */
16 public function up(Schema $schema) 13 public function up(Schema $schema)
17 { 14 {
18 $entryTable = $schema->getTable($this->getTable('entry')); 15 $entryTable = $schema->getTable($this->getTable('entry'));
@@ -27,9 +24,6 @@ class Version20190401105353 extends WallabagMigration
27 $entryTable->addIndex(['user_id', 'hashed_url'], 'hashed_url_user_id', [], ['lengths' => [null, 40]]); 24 $entryTable->addIndex(['user_id', 'hashed_url'], 'hashed_url_user_id', [], ['lengths' => [null, 40]]);
28 } 25 }
29 26
30 /**
31 * @param Schema $schema
32 */
33 public function down(Schema $schema) 27 public function down(Schema $schema)
34 { 28 {
35 $entryTable = $schema->getTable($this->getTable('entry')); 29 $entryTable = $schema->getTable($this->getTable('entry'));
diff --git a/app/DoctrineMigrations/Version20190601125843.php b/app/DoctrineMigrations/Version20190601125843.php
index 0e97606e..cbb92edc 100644
--- a/app/DoctrineMigrations/Version20190601125843.php
+++ b/app/DoctrineMigrations/Version20190601125843.php
@@ -10,9 +10,6 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
10 */ 10 */
11class Version20190601125843 extends WallabagMigration 11class Version20190601125843 extends WallabagMigration
12{ 12{
13 /**
14 * @param Schema $schema
15 */
16 public function up(Schema $schema) 13 public function up(Schema $schema)
17 { 14 {
18 $entryTable = $schema->getTable($this->getTable('entry')); 15 $entryTable = $schema->getTable($this->getTable('entry'));
@@ -34,9 +31,6 @@ class Version20190601125843 extends WallabagMigration
34 $entryTable->addIndex(['user_id', 'hashed_given_url'], 'hashed_given_url_user_id', [], ['lengths' => [null, 40]]); 31 $entryTable->addIndex(['user_id', 'hashed_given_url'], 'hashed_given_url_user_id', [], ['lengths' => [null, 40]]);
35 } 32 }
36 33
37 /**
38 * @param Schema $schema
39 */
40 public function down(Schema $schema) 34 public function down(Schema $schema)
41 { 35 {
42 $entryTable = $schema->getTable($this->getTable('entry')); 36 $entryTable = $schema->getTable($this->getTable('entry'));
diff --git a/app/config/config.yml b/app/config/config.yml
index 642e198d..0b325afe 100644
--- a/app/config/config.yml
+++ b/app/config/config.yml
@@ -261,6 +261,11 @@ old_sound_rabbit_mq:
261 exchange_options: 261 exchange_options:
262 name: 'wallabag.import.wallabag_v2' 262 name: 'wallabag.import.wallabag_v2'
263 type: topic 263 type: topic
264 import_elcurator:
265 connection: default
266 exchange_options:
267 name: 'wallabag.import.elcurator'
268 type: topic
264 import_firefox: 269 import_firefox:
265 connection: default 270 connection: default
266 exchange_options: 271 exchange_options:
@@ -326,6 +331,15 @@ old_sound_rabbit_mq:
326 name: 'wallabag.import.wallabag_v2' 331 name: 'wallabag.import.wallabag_v2'
327 callback: wallabag_import.consumer.amqp.wallabag_v2 332 callback: wallabag_import.consumer.amqp.wallabag_v2
328 qos_options: {prefetch_count: "%rabbitmq_prefetch_count%"} 333 qos_options: {prefetch_count: "%rabbitmq_prefetch_count%"}
334 import_elcurator:
335 connection: default
336 exchange_options:
337 name: 'wallabag.import.elcurator'
338 type: topic
339 queue_options:
340 name: 'wallabag.import.elcurator'
341 callback: wallabag_import.consumer.amqp.elcurator
342 qos_options: {prefetch_count: "%rabbitmq_prefetch_count%"}
329 import_firefox: 343 import_firefox:
330 connection: default 344 connection: default
331 exchange_options: 345 exchange_options:
diff --git a/composer.json b/composer.json
index e7fc256a..0ce9622f 100644
--- a/composer.json
+++ b/composer.json
@@ -51,6 +51,7 @@
51 "doctrine/orm": "^2.6", 51 "doctrine/orm": "^2.6",
52 "doctrine/doctrine-bundle": "^1.9", 52 "doctrine/doctrine-bundle": "^1.9",
53 "doctrine/doctrine-cache-bundle": "^1.3", 53 "doctrine/doctrine-cache-bundle": "^1.3",
54 "doctrine/dbal": "2.9.2",
54 "twig/extensions": "^1.5", 55 "twig/extensions": "^1.5",
55 "symfony/swiftmailer-bundle": "^3.2", 56 "symfony/swiftmailer-bundle": "^3.2",
56 "symfony/monolog-bundle": "^3.1", 57 "symfony/monolog-bundle": "^3.1",
diff --git a/composer.lock b/composer.lock
index ad41e6d5..1e546e8d 100644
--- a/composer.lock
+++ b/composer.lock
@@ -4,7 +4,7 @@
4 "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", 4 "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
5 "This file is @generated automatically" 5 "This file is @generated automatically"
6 ], 6 ],
7 "content-hash": "02ec26b02dc55d65cb9353ad99be7ebe", 7 "content-hash": "bc03955d5e8ea3079c82f32de2e26c98",
8 "packages": [ 8 "packages": [
9 { 9 {
10 "name": "bdunogier/guzzle-site-authenticator", 10 "name": "bdunogier/guzzle-site-authenticator",
@@ -58,21 +58,20 @@
58 }, 58 },
59 { 59 {
60 "name": "beberlei/assert", 60 "name": "beberlei/assert",
61 "version": "v3.2.3", 61 "version": "v3.2.6",
62 "source": { 62 "source": {
63 "type": "git", 63 "type": "git",
64 "url": "https://github.com/beberlei/assert.git", 64 "url": "https://github.com/beberlei/assert.git",
65 "reference": "65b8152224aef7d3c197d5db05211d4319711b66" 65 "reference": "99508be011753690fe108ded450f5caaae180cfa"
66 }, 66 },
67 "dist": { 67 "dist": {
68 "type": "zip", 68 "type": "zip",
69 "url": "https://api.github.com/repos/beberlei/assert/zipball/65b8152224aef7d3c197d5db05211d4319711b66", 69 "url": "https://api.github.com/repos/beberlei/assert/zipball/99508be011753690fe108ded450f5caaae180cfa",
70 "reference": "65b8152224aef7d3c197d5db05211d4319711b66", 70 "reference": "99508be011753690fe108ded450f5caaae180cfa",
71 "shasum": "" 71 "shasum": ""
72 }, 72 },
73 "require": { 73 "require": {
74 "ext-ctype": "*", 74 "ext-ctype": "*",
75 "ext-intl": "*",
76 "ext-json": "*", 75 "ext-json": "*",
77 "ext-mbstring": "*", 76 "ext-mbstring": "*",
78 "ext-simplexml": "*", 77 "ext-simplexml": "*",
@@ -83,6 +82,9 @@
83 "phpstan/phpstan-shim": "*", 82 "phpstan/phpstan-shim": "*",
84 "phpunit/phpunit": ">=6.0.0 <8" 83 "phpunit/phpunit": ">=6.0.0 <8"
85 }, 84 },
85 "suggest": {
86 "ext-intl": "Needed to allow Assertion::count(), Assertion::isCountable(), Assertion::minCount(), and Assertion::maxCount() to operate on ResourceBundles"
87 },
86 "type": "library", 88 "type": "library",
87 "autoload": { 89 "autoload": {
88 "psr-4": { 90 "psr-4": {
@@ -114,7 +116,7 @@
114 "assertion", 116 "assertion",
115 "validation" 117 "validation"
116 ], 118 ],
117 "time": "2019-08-23T17:56:26+00:00" 119 "time": "2019-10-10T10:33:57+00:00"
118 }, 120 },
119 { 121 {
120 "name": "behat/transliterator", 122 "name": "behat/transliterator",
@@ -410,16 +412,16 @@
410 }, 412 },
411 { 413 {
412 "name": "doctrine/cache", 414 "name": "doctrine/cache",
413 "version": "v1.8.0", 415 "version": "1.9.1",
414 "source": { 416 "source": {
415 "type": "git", 417 "type": "git",
416 "url": "https://github.com/doctrine/cache.git", 418 "url": "https://github.com/doctrine/cache.git",
417 "reference": "d768d58baee9a4862ca783840eca1b9add7a7f57" 419 "reference": "89a5c76c39c292f7798f964ab3c836c3f8192a55"
418 }, 420 },
419 "dist": { 421 "dist": {
420 "type": "zip", 422 "type": "zip",
421 "url": "https://api.github.com/repos/doctrine/cache/zipball/d768d58baee9a4862ca783840eca1b9add7a7f57", 423 "url": "https://api.github.com/repos/doctrine/cache/zipball/89a5c76c39c292f7798f964ab3c836c3f8192a55",
422 "reference": "d768d58baee9a4862ca783840eca1b9add7a7f57", 424 "reference": "89a5c76c39c292f7798f964ab3c836c3f8192a55",
423 "shasum": "" 425 "shasum": ""
424 }, 426 },
425 "require": { 427 "require": {
@@ -430,7 +432,7 @@
430 }, 432 },
431 "require-dev": { 433 "require-dev": {
432 "alcaeus/mongo-php-adapter": "^1.1", 434 "alcaeus/mongo-php-adapter": "^1.1",
433 "doctrine/coding-standard": "^4.0", 435 "doctrine/coding-standard": "^6.0",
434 "mongodb/mongodb": "^1.1", 436 "mongodb/mongodb": "^1.1",
435 "phpunit/phpunit": "^7.0", 437 "phpunit/phpunit": "^7.0",
436 "predis/predis": "~1.0" 438 "predis/predis": "~1.0"
@@ -441,7 +443,7 @@
441 "type": "library", 443 "type": "library",
442 "extra": { 444 "extra": {
443 "branch-alias": { 445 "branch-alias": {
444 "dev-master": "1.8.x-dev" 446 "dev-master": "1.9.x-dev"
445 } 447 }
446 }, 448 },
447 "autoload": { 449 "autoload": {
@@ -455,6 +457,10 @@
455 ], 457 ],
456 "authors": [ 458 "authors": [
457 { 459 {
460 "name": "Guilherme Blanco",
461 "email": "guilhermeblanco@gmail.com"
462 },
463 {
458 "name": "Roman Borschel", 464 "name": "Roman Borschel",
459 "email": "roman@code-factory.org" 465 "email": "roman@code-factory.org"
460 }, 466 },
@@ -463,10 +469,6 @@
463 "email": "kontakt@beberlei.de" 469 "email": "kontakt@beberlei.de"
464 }, 470 },
465 { 471 {
466 "name": "Guilherme Blanco",
467 "email": "guilhermeblanco@gmail.com"
468 },
469 {
470 "name": "Jonathan Wage", 472 "name": "Jonathan Wage",
471 "email": "jonwage@gmail.com" 473 "email": "jonwage@gmail.com"
472 }, 474 },
@@ -475,26 +477,34 @@
475 "email": "schmittjoh@gmail.com" 477 "email": "schmittjoh@gmail.com"
476 } 478 }
477 ], 479 ],
478 "description": "Caching library offering an object-oriented API for many cache backends", 480 "description": "PHP Doctrine Cache library is a popular cache implementation that supports many different drivers such as redis, memcache, apc, mongodb and others.",
479 "homepage": "https://www.doctrine-project.org", 481 "homepage": "https://www.doctrine-project.org/projects/cache.html",
480 "keywords": [ 482 "keywords": [
483 "abstraction",
484 "apcu",
481 "cache", 485 "cache",
482 "caching" 486 "caching",
487 "couchdb",
488 "memcached",
489 "php",
490 "redis",
491 "riak",
492 "xcache"
483 ], 493 ],
484 "time": "2018-08-21T18:01:43+00:00" 494 "time": "2019-11-15T14:31:57+00:00"
485 }, 495 },
486 { 496 {
487 "name": "doctrine/collections", 497 "name": "doctrine/collections",
488 "version": "v1.6.2", 498 "version": "1.6.4",
489 "source": { 499 "source": {
490 "type": "git", 500 "type": "git",
491 "url": "https://github.com/doctrine/collections.git", 501 "url": "https://github.com/doctrine/collections.git",
492 "reference": "c5e0bc17b1620e97c968ac409acbff28b8b850be" 502 "reference": "6b1e4b2b66f6d6e49983cebfe23a21b7ccc5b0d7"
493 }, 503 },
494 "dist": { 504 "dist": {
495 "type": "zip", 505 "type": "zip",
496 "url": "https://api.github.com/repos/doctrine/collections/zipball/c5e0bc17b1620e97c968ac409acbff28b8b850be", 506 "url": "https://api.github.com/repos/doctrine/collections/zipball/6b1e4b2b66f6d6e49983cebfe23a21b7ccc5b0d7",
497 "reference": "c5e0bc17b1620e97c968ac409acbff28b8b850be", 507 "reference": "6b1e4b2b66f6d6e49983cebfe23a21b7ccc5b0d7",
498 "shasum": "" 508 "shasum": ""
499 }, 509 },
500 "require": { 510 "require": {
@@ -523,6 +533,10 @@
523 ], 533 ],
524 "authors": [ 534 "authors": [
525 { 535 {
536 "name": "Guilherme Blanco",
537 "email": "guilhermeblanco@gmail.com"
538 },
539 {
526 "name": "Roman Borschel", 540 "name": "Roman Borschel",
527 "email": "roman@code-factory.org" 541 "email": "roman@code-factory.org"
528 }, 542 },
@@ -531,10 +545,6 @@
531 "email": "kontakt@beberlei.de" 545 "email": "kontakt@beberlei.de"
532 }, 546 },
533 { 547 {
534 "name": "Guilherme Blanco",
535 "email": "guilhermeblanco@gmail.com"
536 },
537 {
538 "name": "Jonathan Wage", 548 "name": "Jonathan Wage",
539 "email": "jonwage@gmail.com" 549 "email": "jonwage@gmail.com"
540 }, 550 },
@@ -551,7 +561,7 @@
551 "iterators", 561 "iterators",
552 "php" 562 "php"
553 ], 563 ],
554 "time": "2019-06-09T13:48:14+00:00" 564 "time": "2019-11-13T13:07:11+00:00"
555 }, 565 },
556 { 566 {
557 "name": "doctrine/common", 567 "name": "doctrine/common",
@@ -961,16 +971,16 @@
961 }, 971 },
962 { 972 {
963 "name": "doctrine/event-manager", 973 "name": "doctrine/event-manager",
964 "version": "v1.0.0", 974 "version": "1.1.0",
965 "source": { 975 "source": {
966 "type": "git", 976 "type": "git",
967 "url": "https://github.com/doctrine/event-manager.git", 977 "url": "https://github.com/doctrine/event-manager.git",
968 "reference": "a520bc093a0170feeb6b14e9d83f3a14452e64b3" 978 "reference": "629572819973f13486371cb611386eb17851e85c"
969 }, 979 },
970 "dist": { 980 "dist": {
971 "type": "zip", 981 "type": "zip",
972 "url": "https://api.github.com/repos/doctrine/event-manager/zipball/a520bc093a0170feeb6b14e9d83f3a14452e64b3", 982 "url": "https://api.github.com/repos/doctrine/event-manager/zipball/629572819973f13486371cb611386eb17851e85c",
973 "reference": "a520bc093a0170feeb6b14e9d83f3a14452e64b3", 983 "reference": "629572819973f13486371cb611386eb17851e85c",
974 "shasum": "" 984 "shasum": ""
975 }, 985 },
976 "require": { 986 "require": {
@@ -980,7 +990,7 @@
980 "doctrine/common": "<2.9@dev" 990 "doctrine/common": "<2.9@dev"
981 }, 991 },
982 "require-dev": { 992 "require-dev": {
983 "doctrine/coding-standard": "^4.0", 993 "doctrine/coding-standard": "^6.0",
984 "phpunit/phpunit": "^7.0" 994 "phpunit/phpunit": "^7.0"
985 }, 995 },
986 "type": "library", 996 "type": "library",
@@ -1000,6 +1010,10 @@
1000 ], 1010 ],
1001 "authors": [ 1011 "authors": [
1002 { 1012 {
1013 "name": "Guilherme Blanco",
1014 "email": "guilhermeblanco@gmail.com"
1015 },
1016 {
1003 "name": "Roman Borschel", 1017 "name": "Roman Borschel",
1004 "email": "roman@code-factory.org" 1018 "email": "roman@code-factory.org"
1005 }, 1019 },
@@ -1008,10 +1022,6 @@
1008 "email": "kontakt@beberlei.de" 1022 "email": "kontakt@beberlei.de"
1009 }, 1023 },
1010 { 1024 {
1011 "name": "Guilherme Blanco",
1012 "email": "guilhermeblanco@gmail.com"
1013 },
1014 {
1015 "name": "Jonathan Wage", 1025 "name": "Jonathan Wage",
1016 "email": "jonwage@gmail.com" 1026 "email": "jonwage@gmail.com"
1017 }, 1027 },
@@ -1024,27 +1034,29 @@
1024 "email": "ocramius@gmail.com" 1034 "email": "ocramius@gmail.com"
1025 } 1035 }
1026 ], 1036 ],
1027 "description": "Doctrine Event Manager component", 1037 "description": "The Doctrine Event Manager is a simple PHP event system that was built to be used with the various Doctrine projects.",
1028 "homepage": "https://www.doctrine-project.org/projects/event-manager.html", 1038 "homepage": "https://www.doctrine-project.org/projects/event-manager.html",
1029 "keywords": [ 1039 "keywords": [
1030 "event", 1040 "event",
1031 "eventdispatcher", 1041 "event dispatcher",
1032 "eventmanager" 1042 "event manager",
1043 "event system",
1044 "events"
1033 ], 1045 ],
1034 "time": "2018-06-11T11:59:03+00:00" 1046 "time": "2019-11-10T09:48:07+00:00"
1035 }, 1047 },
1036 { 1048 {
1037 "name": "doctrine/inflector", 1049 "name": "doctrine/inflector",
1038 "version": "v1.3.0", 1050 "version": "1.3.1",
1039 "source": { 1051 "source": {
1040 "type": "git", 1052 "type": "git",
1041 "url": "https://github.com/doctrine/inflector.git", 1053 "url": "https://github.com/doctrine/inflector.git",
1042 "reference": "5527a48b7313d15261292c149e55e26eae771b0a" 1054 "reference": "ec3a55242203ffa6a4b27c58176da97ff0a7aec1"
1043 }, 1055 },
1044 "dist": { 1056 "dist": {
1045 "type": "zip", 1057 "type": "zip",
1046 "url": "https://api.github.com/repos/doctrine/inflector/zipball/5527a48b7313d15261292c149e55e26eae771b0a", 1058 "url": "https://api.github.com/repos/doctrine/inflector/zipball/ec3a55242203ffa6a4b27c58176da97ff0a7aec1",
1047 "reference": "5527a48b7313d15261292c149e55e26eae771b0a", 1059 "reference": "ec3a55242203ffa6a4b27c58176da97ff0a7aec1",
1048 "shasum": "" 1060 "shasum": ""
1049 }, 1061 },
1050 "require": { 1062 "require": {
@@ -1070,6 +1082,10 @@
1070 ], 1082 ],
1071 "authors": [ 1083 "authors": [
1072 { 1084 {
1085 "name": "Guilherme Blanco",
1086 "email": "guilhermeblanco@gmail.com"
1087 },
1088 {
1073 "name": "Roman Borschel", 1089 "name": "Roman Borschel",
1074 "email": "roman@code-factory.org" 1090 "email": "roman@code-factory.org"
1075 }, 1091 },
@@ -1078,10 +1094,6 @@
1078 "email": "kontakt@beberlei.de" 1094 "email": "kontakt@beberlei.de"
1079 }, 1095 },
1080 { 1096 {
1081 "name": "Guilherme Blanco",
1082 "email": "guilhermeblanco@gmail.com"
1083 },
1084 {
1085 "name": "Jonathan Wage", 1097 "name": "Jonathan Wage",
1086 "email": "jonwage@gmail.com" 1098 "email": "jonwage@gmail.com"
1087 }, 1099 },
@@ -1098,20 +1110,20 @@
1098 "singularize", 1110 "singularize",
1099 "string" 1111 "string"
1100 ], 1112 ],
1101 "time": "2018-01-09T20:05:19+00:00" 1113 "time": "2019-10-30T19:59:35+00:00"
1102 }, 1114 },
1103 { 1115 {
1104 "name": "doctrine/instantiator", 1116 "name": "doctrine/instantiator",
1105 "version": "1.2.0", 1117 "version": "1.3.0",
1106 "source": { 1118 "source": {
1107 "type": "git", 1119 "type": "git",
1108 "url": "https://github.com/doctrine/instantiator.git", 1120 "url": "https://github.com/doctrine/instantiator.git",
1109 "reference": "a2c590166b2133a4633738648b6b064edae0814a" 1121 "reference": "ae466f726242e637cebdd526a7d991b9433bacf1"
1110 }, 1122 },
1111 "dist": { 1123 "dist": {
1112 "type": "zip", 1124 "type": "zip",
1113 "url": "https://api.github.com/repos/doctrine/instantiator/zipball/a2c590166b2133a4633738648b6b064edae0814a", 1125 "url": "https://api.github.com/repos/doctrine/instantiator/zipball/ae466f726242e637cebdd526a7d991b9433bacf1",
1114 "reference": "a2c590166b2133a4633738648b6b064edae0814a", 1126 "reference": "ae466f726242e637cebdd526a7d991b9433bacf1",
1115 "shasum": "" 1127 "shasum": ""
1116 }, 1128 },
1117 "require": { 1129 "require": {
@@ -1154,7 +1166,7 @@
1154 "constructor", 1166 "constructor",
1155 "instantiate" 1167 "instantiate"
1156 ], 1168 ],
1157 "time": "2019-03-17T17:37:11+00:00" 1169 "time": "2019-10-21T16:45:58+00:00"
1158 }, 1170 },
1159 { 1171 {
1160 "name": "doctrine/lexer", 1172 "name": "doctrine/lexer",
@@ -1292,16 +1304,16 @@
1292 }, 1304 },
1293 { 1305 {
1294 "name": "doctrine/orm", 1306 "name": "doctrine/orm",
1295 "version": "v2.6.4", 1307 "version": "v2.6.6",
1296 "source": { 1308 "source": {
1297 "type": "git", 1309 "type": "git",
1298 "url": "https://github.com/doctrine/orm.git", 1310 "url": "https://github.com/doctrine/orm.git",
1299 "reference": "b52ef5a1002f99ab506a5a2d6dba5a2c236c5f43" 1311 "reference": "2d9b9351831d1230881c52f006011cbf72fe944e"
1300 }, 1312 },
1301 "dist": { 1313 "dist": {
1302 "type": "zip", 1314 "type": "zip",
1303 "url": "https://api.github.com/repos/doctrine/orm/zipball/b52ef5a1002f99ab506a5a2d6dba5a2c236c5f43", 1315 "url": "https://api.github.com/repos/doctrine/orm/zipball/2d9b9351831d1230881c52f006011cbf72fe944e",
1304 "reference": "b52ef5a1002f99ab506a5a2d6dba5a2c236c5f43", 1316 "reference": "2d9b9351831d1230881c52f006011cbf72fe944e",
1305 "shasum": "" 1317 "shasum": ""
1306 }, 1318 },
1307 "require": { 1319 "require": {
@@ -1369,20 +1381,20 @@
1369 "database", 1381 "database",
1370 "orm" 1382 "orm"
1371 ], 1383 ],
1372 "time": "2019-09-20T14:30:26+00:00" 1384 "time": "2019-11-18T22:01:21+00:00"
1373 }, 1385 },
1374 { 1386 {
1375 "name": "doctrine/persistence", 1387 "name": "doctrine/persistence",
1376 "version": "1.1.1", 1388 "version": "1.2.0",
1377 "source": { 1389 "source": {
1378 "type": "git", 1390 "type": "git",
1379 "url": "https://github.com/doctrine/persistence.git", 1391 "url": "https://github.com/doctrine/persistence.git",
1380 "reference": "3da7c9d125591ca83944f477e65ed3d7b4617c48" 1392 "reference": "43526ae63312942e5316100bb3ed589ba1aba491"
1381 }, 1393 },
1382 "dist": { 1394 "dist": {
1383 "type": "zip", 1395 "type": "zip",
1384 "url": "https://api.github.com/repos/doctrine/persistence/zipball/3da7c9d125591ca83944f477e65ed3d7b4617c48", 1396 "url": "https://api.github.com/repos/doctrine/persistence/zipball/43526ae63312942e5316100bb3ed589ba1aba491",
1385 "reference": "3da7c9d125591ca83944f477e65ed3d7b4617c48", 1397 "reference": "43526ae63312942e5316100bb3ed589ba1aba491",
1386 "shasum": "" 1398 "shasum": ""
1387 }, 1399 },
1388 "require": { 1400 "require": {
@@ -1404,7 +1416,7 @@
1404 "type": "library", 1416 "type": "library",
1405 "extra": { 1417 "extra": {
1406 "branch-alias": { 1418 "branch-alias": {
1407 "dev-master": "1.1.x-dev" 1419 "dev-master": "1.2.x-dev"
1408 } 1420 }
1409 }, 1421 },
1410 "autoload": { 1422 "autoload": {
@@ -1418,6 +1430,10 @@
1418 ], 1430 ],
1419 "authors": [ 1431 "authors": [
1420 { 1432 {
1433 "name": "Guilherme Blanco",
1434 "email": "guilhermeblanco@gmail.com"
1435 },
1436 {
1421 "name": "Roman Borschel", 1437 "name": "Roman Borschel",
1422 "email": "roman@code-factory.org" 1438 "email": "roman@code-factory.org"
1423 }, 1439 },
@@ -1426,10 +1442,6 @@
1426 "email": "kontakt@beberlei.de" 1442 "email": "kontakt@beberlei.de"
1427 }, 1443 },
1428 { 1444 {
1429 "name": "Guilherme Blanco",
1430 "email": "guilhermeblanco@gmail.com"
1431 },
1432 {
1433 "name": "Jonathan Wage", 1445 "name": "Jonathan Wage",
1434 "email": "jonwage@gmail.com" 1446 "email": "jonwage@gmail.com"
1435 }, 1447 },
@@ -1451,7 +1463,7 @@
1451 "orm", 1463 "orm",
1452 "persistence" 1464 "persistence"
1453 ], 1465 ],
1454 "time": "2019-04-23T08:28:24+00:00" 1466 "time": "2019-04-23T12:39:21+00:00"
1455 }, 1467 },
1456 { 1468 {
1457 "name": "doctrine/reflection", 1469 "name": "doctrine/reflection",
@@ -1943,33 +1955,32 @@
1943 }, 1955 },
1944 { 1956 {
1945 "name": "friendsofsymfony/rest-bundle", 1957 "name": "friendsofsymfony/rest-bundle",
1946 "version": "2.5.0", 1958 "version": "2.6.0",
1947 "source": { 1959 "source": {
1948 "type": "git", 1960 "type": "git",
1949 "url": "https://github.com/FriendsOfSymfony/FOSRestBundle.git", 1961 "url": "https://github.com/FriendsOfSymfony/FOSRestBundle.git",
1950 "reference": "a5fc73b84bdb2f0fdf58a717b322ceb6997f7bf3" 1962 "reference": "54758949bff9fc520997415341323eebf3f54892"
1951 }, 1963 },
1952 "dist": { 1964 "dist": {
1953 "type": "zip", 1965 "type": "zip",
1954 "url": "https://api.github.com/repos/FriendsOfSymfony/FOSRestBundle/zipball/a5fc73b84bdb2f0fdf58a717b322ceb6997f7bf3", 1966 "url": "https://api.github.com/repos/FriendsOfSymfony/FOSRestBundle/zipball/54758949bff9fc520997415341323eebf3f54892",
1955 "reference": "a5fc73b84bdb2f0fdf58a717b322ceb6997f7bf3", 1967 "reference": "54758949bff9fc520997415341323eebf3f54892",
1956 "shasum": "" 1968 "shasum": ""
1957 }, 1969 },
1958 "require": { 1970 "require": {
1959 "doctrine/inflector": "^1.0", 1971 "doctrine/inflector": "^1.0",
1960 "php": "^5.5.9|~7.0", 1972 "php": "^7.1",
1961 "psr/log": "^1.0", 1973 "psr/log": "^1.0",
1962 "symfony/config": "^3.4|^4.0", 1974 "symfony/config": "^3.4|^4.3",
1963 "symfony/debug": "^3.4|^4.0", 1975 "symfony/debug": "^3.4|^4.3",
1964 "symfony/dependency-injection": "^3.4|^4.0", 1976 "symfony/dependency-injection": "^3.4|^4.3",
1965 "symfony/event-dispatcher": "^3.4|^4.0", 1977 "symfony/event-dispatcher": "^3.4|^4.3",
1966 "symfony/finder": "^3.4|^4.0", 1978 "symfony/finder": "^3.4|^4.3",
1967 "symfony/framework-bundle": "^3.4|^4.0", 1979 "symfony/framework-bundle": "^3.4|^4.3",
1968 "symfony/http-foundation": "^3.4|^4.0", 1980 "symfony/http-foundation": "^3.4|^4.3",
1969 "symfony/http-kernel": "^3.4|^4.0", 1981 "symfony/http-kernel": "^3.4|^4.3",
1970 "symfony/routing": "^3.4|^4.0", 1982 "symfony/routing": "^3.4|^4.3",
1971 "symfony/security-core": "^3.4|^4.0", 1983 "symfony/security-core": "^3.4|^4.3",
1972 "symfony/templating": "^3.4|^4.0",
1973 "willdurand/jsonp-callback-validator": "^1.0", 1984 "willdurand/jsonp-callback-validator": "^1.0",
1974 "willdurand/negotiation": "^2.0" 1985 "willdurand/negotiation": "^2.0"
1975 }, 1986 },
@@ -1984,19 +1995,19 @@
1984 "phpoption/phpoption": "^1.1", 1995 "phpoption/phpoption": "^1.1",
1985 "psr/http-message": "^1.0", 1996 "psr/http-message": "^1.0",
1986 "sensio/framework-extra-bundle": "^3.0.13|^4.0|^5.0", 1997 "sensio/framework-extra-bundle": "^3.0.13|^4.0|^5.0",
1987 "symfony/asset": "^3.4|^4.0", 1998 "symfony/asset": "^3.4|^4.3",
1988 "symfony/browser-kit": "^3.4|^4.0", 1999 "symfony/browser-kit": "^3.4|^4.3",
1989 "symfony/css-selector": "^3.4|^4.0", 2000 "symfony/css-selector": "^3.4|^4.3",
1990 "symfony/dependency-injection": "^2.7.20|^3.0|^4.0", 2001 "symfony/expression-language": "^3.4|^4.3",
1991 "symfony/expression-language": "~2.7|^3.0|^4.0", 2002 "symfony/form": "^3.4|^4.3",
1992 "symfony/form": "^3.4|^4.0",
1993 "symfony/phpunit-bridge": "^4.1.8", 2003 "symfony/phpunit-bridge": "^4.1.8",
1994 "symfony/security-bundle": "^3.4|^4.0", 2004 "symfony/security-bundle": "^3.4|^4.3",
1995 "symfony/serializer": "^2.7.11|^3.0.4|^4.0", 2005 "symfony/serializer": "^3.4|^4.3",
1996 "symfony/twig-bundle": "^3.4|^4.0", 2006 "symfony/templating": "^3.4|^4.3",
1997 "symfony/validator": "^3.4|^4.0", 2007 "symfony/twig-bundle": "^3.4|^4.3",
1998 "symfony/web-profiler-bundle": "^3.4|^4.0", 2008 "symfony/validator": "^3.4|^4.3",
1999 "symfony/yaml": "^3.4|^4.0" 2009 "symfony/web-profiler-bundle": "^3.4|^4.3",
2010 "symfony/yaml": "^3.4|^4.3"
2000 }, 2011 },
2001 "suggest": { 2012 "suggest": {
2002 "jms/serializer-bundle": "Add support for advanced serialization capabilities, recommended, requires ^2.0|^3.0", 2013 "jms/serializer-bundle": "Add support for advanced serialization capabilities, recommended, requires ^2.0|^3.0",
@@ -2008,7 +2019,7 @@
2008 "type": "symfony-bundle", 2019 "type": "symfony-bundle",
2009 "extra": { 2020 "extra": {
2010 "branch-alias": { 2021 "branch-alias": {
2011 "dev-master": "2.5-dev" 2022 "dev-master": "2.6-dev"
2012 } 2023 }
2013 }, 2024 },
2014 "autoload": { 2025 "autoload": {
@@ -2029,12 +2040,12 @@
2029 "email": "smith@pooteeweet.org" 2040 "email": "smith@pooteeweet.org"
2030 }, 2041 },
2031 { 2042 {
2032 "name": "FriendsOfSymfony Community",
2033 "homepage": "https://github.com/friendsofsymfony/FOSRestBundle/contributors"
2034 },
2035 {
2036 "name": "Konstantin Kudryashov", 2043 "name": "Konstantin Kudryashov",
2037 "email": "ever.zet@gmail.com" 2044 "email": "ever.zet@gmail.com"
2045 },
2046 {
2047 "name": "FriendsOfSymfony Community",
2048 "homepage": "https://github.com/friendsofsymfony/FOSRestBundle/contributors"
2038 } 2049 }
2039 ], 2050 ],
2040 "description": "This Bundle provides various tools to rapidly develop RESTful API's with Symfony", 2051 "description": "This Bundle provides various tools to rapidly develop RESTful API's with Symfony",
@@ -2042,7 +2053,7 @@
2042 "keywords": [ 2053 "keywords": [
2043 "rest" 2054 "rest"
2044 ], 2055 ],
2045 "time": "2019-01-03T13:05:12+00:00" 2056 "time": "2019-10-21T08:22:30+00:00"
2046 }, 2057 },
2047 { 2058 {
2048 "name": "friendsofsymfony/user-bundle", 2059 "name": "friendsofsymfony/user-bundle",
@@ -2456,16 +2467,16 @@
2456 }, 2467 },
2457 { 2468 {
2458 "name": "guzzlehttp/guzzle", 2469 "name": "guzzlehttp/guzzle",
2459 "version": "5.3.3", 2470 "version": "5.3.4",
2460 "source": { 2471 "source": {
2461 "type": "git", 2472 "type": "git",
2462 "url": "https://github.com/guzzle/guzzle.git", 2473 "url": "https://github.com/guzzle/guzzle.git",
2463 "reference": "93bbdb30d59be6cd9839495306c65f2907370eb9" 2474 "reference": "b87eda7a7162f95574032da17e9323c9899cb6b2"
2464 }, 2475 },
2465 "dist": { 2476 "dist": {
2466 "type": "zip", 2477 "type": "zip",
2467 "url": "https://api.github.com/repos/guzzle/guzzle/zipball/93bbdb30d59be6cd9839495306c65f2907370eb9", 2478 "url": "https://api.github.com/repos/guzzle/guzzle/zipball/b87eda7a7162f95574032da17e9323c9899cb6b2",
2468 "reference": "93bbdb30d59be6cd9839495306c65f2907370eb9", 2479 "reference": "b87eda7a7162f95574032da17e9323c9899cb6b2",
2469 "shasum": "" 2480 "shasum": ""
2470 }, 2481 },
2471 "require": { 2482 "require": {
@@ -2505,7 +2516,7 @@
2505 "rest", 2516 "rest",
2506 "web service" 2517 "web service"
2507 ], 2518 ],
2508 "time": "2018-07-31T13:33:10+00:00" 2519 "time": "2019-10-30T09:32:00+00:00"
2509 }, 2520 },
2510 { 2521 {
2511 "name": "guzzlehttp/promises", 2522 "name": "guzzlehttp/promises",
@@ -3711,16 +3722,16 @@
3711 }, 3722 },
3712 { 3723 {
3713 "name": "j0k3r/graby", 3724 "name": "j0k3r/graby",
3714 "version": "2.0.2", 3725 "version": "2.1.0",
3715 "source": { 3726 "source": {
3716 "type": "git", 3727 "type": "git",
3717 "url": "https://github.com/j0k3r/graby.git", 3728 "url": "https://github.com/j0k3r/graby.git",
3718 "reference": "5ed35e8959be03cb36335605a70e05571eb8157a" 3729 "reference": "8dcacf79bd2bc18438dc3c93cdee1fa59f9a848b"
3719 }, 3730 },
3720 "dist": { 3731 "dist": {
3721 "type": "zip", 3732 "type": "zip",
3722 "url": "https://api.github.com/repos/j0k3r/graby/zipball/5ed35e8959be03cb36335605a70e05571eb8157a", 3733 "url": "https://api.github.com/repos/j0k3r/graby/zipball/8dcacf79bd2bc18438dc3c93cdee1fa59f9a848b",
3723 "reference": "5ed35e8959be03cb36335605a70e05571eb8157a", 3734 "reference": "8dcacf79bd2bc18438dc3c93cdee1fa59f9a848b",
3724 "shasum": "" 3735 "shasum": ""
3725 }, 3736 },
3726 "require": { 3737 "require": {
@@ -3781,20 +3792,20 @@
3781 } 3792 }
3782 ], 3793 ],
3783 "description": "Graby helps you extract article content from web pages", 3794 "description": "Graby helps you extract article content from web pages",
3784 "time": "2019-07-22T07:05:28+00:00" 3795 "time": "2019-11-12T13:10:23+00:00"
3785 }, 3796 },
3786 { 3797 {
3787 "name": "j0k3r/graby-site-config", 3798 "name": "j0k3r/graby-site-config",
3788 "version": "1.0.91", 3799 "version": "1.0.94",
3789 "source": { 3800 "source": {
3790 "type": "git", 3801 "type": "git",
3791 "url": "https://github.com/j0k3r/graby-site-config.git", 3802 "url": "https://github.com/j0k3r/graby-site-config.git",
3792 "reference": "2f21c86f0b25911c413d94957a326b812ddbd54d" 3803 "reference": "429ee12aa7d9dd95596b15ec0889bd7202d5723a"
3793 }, 3804 },
3794 "dist": { 3805 "dist": {
3795 "type": "zip", 3806 "type": "zip",
3796 "url": "https://api.github.com/repos/j0k3r/graby-site-config/zipball/2f21c86f0b25911c413d94957a326b812ddbd54d", 3807 "url": "https://api.github.com/repos/j0k3r/graby-site-config/zipball/429ee12aa7d9dd95596b15ec0889bd7202d5723a",
3797 "reference": "2f21c86f0b25911c413d94957a326b812ddbd54d", 3808 "reference": "429ee12aa7d9dd95596b15ec0889bd7202d5723a",
3798 "shasum": "" 3809 "shasum": ""
3799 }, 3810 },
3800 "require": { 3811 "require": {
@@ -3821,7 +3832,7 @@
3821 } 3832 }
3822 ], 3833 ],
3823 "description": "Graby site config files", 3834 "description": "Graby site config files",
3824 "time": "2019-09-04T07:11:32+00:00" 3835 "time": "2019-11-12T06:56:59+00:00"
3825 }, 3836 },
3826 { 3837 {
3827 "name": "j0k3r/httplug-ssrf-plugin", 3838 "name": "j0k3r/httplug-ssrf-plugin",
@@ -4934,16 +4945,16 @@
4934 }, 4945 },
4935 { 4946 {
4936 "name": "monolog/monolog", 4947 "name": "monolog/monolog",
4937 "version": "1.24.0", 4948 "version": "1.25.2",
4938 "source": { 4949 "source": {
4939 "type": "git", 4950 "type": "git",
4940 "url": "https://github.com/Seldaek/monolog.git", 4951 "url": "https://github.com/Seldaek/monolog.git",
4941 "reference": "bfc9ebb28f97e7a24c45bdc3f0ff482e47bb0266" 4952 "reference": "d5e2fb341cb44f7e2ab639d12a1e5901091ec287"
4942 }, 4953 },
4943 "dist": { 4954 "dist": {
4944 "type": "zip", 4955 "type": "zip",
4945 "url": "https://api.github.com/repos/Seldaek/monolog/zipball/bfc9ebb28f97e7a24c45bdc3f0ff482e47bb0266", 4956 "url": "https://api.github.com/repos/Seldaek/monolog/zipball/d5e2fb341cb44f7e2ab639d12a1e5901091ec287",
4946 "reference": "bfc9ebb28f97e7a24c45bdc3f0ff482e47bb0266", 4957 "reference": "d5e2fb341cb44f7e2ab639d12a1e5901091ec287",
4947 "shasum": "" 4958 "shasum": ""
4948 }, 4959 },
4949 "require": { 4960 "require": {
@@ -5008,7 +5019,7 @@
5008 "logging", 5019 "logging",
5009 "psr-3" 5020 "psr-3"
5010 ], 5021 ],
5011 "time": "2018-11-05T09:00:11+00:00" 5022 "time": "2019-11-13T10:00:05+00:00"
5012 }, 5023 },
5013 { 5024 {
5014 "name": "nelmio/api-doc-bundle", 5025 "name": "nelmio/api-doc-bundle",
@@ -5343,24 +5354,24 @@
5343 }, 5354 },
5344 { 5355 {
5345 "name": "paragonie/constant_time_encoding", 5356 "name": "paragonie/constant_time_encoding",
5346 "version": "v2.2.3", 5357 "version": "v2.3.0",
5347 "source": { 5358 "source": {
5348 "type": "git", 5359 "type": "git",
5349 "url": "https://github.com/paragonie/constant_time_encoding.git", 5360 "url": "https://github.com/paragonie/constant_time_encoding.git",
5350 "reference": "55af0dc01992b4d0da7f6372e2eac097bbbaffdb" 5361 "reference": "47a1cedd2e4d52688eb8c96469c05ebc8fd28fa2"
5351 }, 5362 },
5352 "dist": { 5363 "dist": {
5353 "type": "zip", 5364 "type": "zip",
5354 "url": "https://api.github.com/repos/paragonie/constant_time_encoding/zipball/55af0dc01992b4d0da7f6372e2eac097bbbaffdb", 5365 "url": "https://api.github.com/repos/paragonie/constant_time_encoding/zipball/47a1cedd2e4d52688eb8c96469c05ebc8fd28fa2",
5355 "reference": "55af0dc01992b4d0da7f6372e2eac097bbbaffdb", 5366 "reference": "47a1cedd2e4d52688eb8c96469c05ebc8fd28fa2",
5356 "shasum": "" 5367 "shasum": ""
5357 }, 5368 },
5358 "require": { 5369 "require": {
5359 "php": "^7" 5370 "php": "^7|^8"
5360 }, 5371 },
5361 "require-dev": { 5372 "require-dev": {
5362 "phpunit/phpunit": "^6|^7", 5373 "phpunit/phpunit": "^6|^7",
5363 "vimeo/psalm": "^1|^2" 5374 "vimeo/psalm": "^1|^2|^3"
5364 }, 5375 },
5365 "type": "library", 5376 "type": "library",
5366 "autoload": { 5377 "autoload": {
@@ -5401,7 +5412,7 @@
5401 "hex2bin", 5412 "hex2bin",
5402 "rfc4648" 5413 "rfc4648"
5403 ], 5414 ],
5404 "time": "2019-01-03T20:26:31+00:00" 5415 "time": "2019-11-06T19:20:29+00:00"
5405 }, 5416 },
5406 { 5417 {
5407 "name": "paragonie/random_compat", 5418 "name": "paragonie/random_compat",
@@ -5454,16 +5465,16 @@
5454 }, 5465 },
5455 { 5466 {
5456 "name": "php-amqplib/php-amqplib", 5467 "name": "php-amqplib/php-amqplib",
5457 "version": "v2.10.0", 5468 "version": "v2.10.1",
5458 "source": { 5469 "source": {
5459 "type": "git", 5470 "type": "git",
5460 "url": "https://github.com/php-amqplib/php-amqplib.git", 5471 "url": "https://github.com/php-amqplib/php-amqplib.git",
5461 "reference": "04e5366f032906d5f716890427e425e71307d3a8" 5472 "reference": "6e2b2501e021e994fb64429e5a78118f83b5c200"
5462 }, 5473 },
5463 "dist": { 5474 "dist": {
5464 "type": "zip", 5475 "type": "zip",
5465 "url": "https://api.github.com/repos/php-amqplib/php-amqplib/zipball/04e5366f032906d5f716890427e425e71307d3a8", 5476 "url": "https://api.github.com/repos/php-amqplib/php-amqplib/zipball/6e2b2501e021e994fb64429e5a78118f83b5c200",
5466 "reference": "04e5366f032906d5f716890427e425e71307d3a8", 5477 "reference": "6e2b2501e021e994fb64429e5a78118f83b5c200",
5467 "shasum": "" 5478 "shasum": ""
5468 }, 5479 },
5469 "require": { 5480 "require": {
@@ -5477,7 +5488,6 @@
5477 "require-dev": { 5488 "require-dev": {
5478 "ext-curl": "*", 5489 "ext-curl": "*",
5479 "nategood/httpful": "^0.2.20", 5490 "nategood/httpful": "^0.2.20",
5480 "phpdocumentor/phpdocumentor": "dev-master",
5481 "phpunit/phpunit": "^5.7|^6.5|^7.0", 5491 "phpunit/phpunit": "^5.7|^6.5|^7.0",
5482 "squizlabs/php_codesniffer": "^2.5" 5492 "squizlabs/php_codesniffer": "^2.5"
5483 }, 5493 },
@@ -5524,7 +5534,7 @@
5524 "queue", 5534 "queue",
5525 "rabbitmq" 5535 "rabbitmq"
5526 ], 5536 ],
5527 "time": "2019-08-08T18:28:18+00:00" 5537 "time": "2019-10-10T13:23:40+00:00"
5528 }, 5538 },
5529 { 5539 {
5530 "name": "php-amqplib/rabbitmq-bundle", 5540 "name": "php-amqplib/rabbitmq-bundle",
@@ -6344,28 +6354,28 @@
6344 }, 6354 },
6345 { 6355 {
6346 "name": "phpoption/phpoption", 6356 "name": "phpoption/phpoption",
6347 "version": "1.5.0", 6357 "version": "1.5.2",
6348 "source": { 6358 "source": {
6349 "type": "git", 6359 "type": "git",
6350 "url": "https://github.com/schmittjoh/php-option.git", 6360 "url": "https://github.com/schmittjoh/php-option.git",
6351 "reference": "94e644f7d2051a5f0fcf77d81605f152eecff0ed" 6361 "reference": "2ba2586380f8d2b44ad1b9feb61c371020b27793"
6352 }, 6362 },
6353 "dist": { 6363 "dist": {
6354 "type": "zip", 6364 "type": "zip",
6355 "url": "https://api.github.com/repos/schmittjoh/php-option/zipball/94e644f7d2051a5f0fcf77d81605f152eecff0ed", 6365 "url": "https://api.github.com/repos/schmittjoh/php-option/zipball/2ba2586380f8d2b44ad1b9feb61c371020b27793",
6356 "reference": "94e644f7d2051a5f0fcf77d81605f152eecff0ed", 6366 "reference": "2ba2586380f8d2b44ad1b9feb61c371020b27793",
6357 "shasum": "" 6367 "shasum": ""
6358 }, 6368 },
6359 "require": { 6369 "require": {
6360 "php": ">=5.3.0" 6370 "php": ">=5.3.0"
6361 }, 6371 },
6362 "require-dev": { 6372 "require-dev": {
6363 "phpunit/phpunit": "4.7.*" 6373 "phpunit/phpunit": "^4.7|^5.0"
6364 }, 6374 },
6365 "type": "library", 6375 "type": "library",
6366 "extra": { 6376 "extra": {
6367 "branch-alias": { 6377 "branch-alias": {
6368 "dev-master": "1.3-dev" 6378 "dev-master": "1.5-dev"
6369 } 6379 }
6370 }, 6380 },
6371 "autoload": { 6381 "autoload": {
@@ -6375,7 +6385,7 @@
6375 }, 6385 },
6376 "notification-url": "https://packagist.org/downloads/", 6386 "notification-url": "https://packagist.org/downloads/",
6377 "license": [ 6387 "license": [
6378 "Apache2" 6388 "Apache-2.0"
6379 ], 6389 ],
6380 "authors": [ 6390 "authors": [
6381 { 6391 {
@@ -6390,7 +6400,7 @@
6390 "php", 6400 "php",
6391 "type" 6401 "type"
6392 ], 6402 ],
6393 "time": "2015-07-25T16:39:46+00:00" 6403 "time": "2019-11-06T22:27:00+00:00"
6394 }, 6404 },
6395 { 6405 {
6396 "name": "phpzip/phpzip", 6406 "name": "phpzip/phpzip",
@@ -6927,16 +6937,16 @@
6927 }, 6937 },
6928 { 6938 {
6929 "name": "psr/log", 6939 "name": "psr/log",
6930 "version": "1.1.0", 6940 "version": "1.1.2",
6931 "source": { 6941 "source": {
6932 "type": "git", 6942 "type": "git",
6933 "url": "https://github.com/php-fig/log.git", 6943 "url": "https://github.com/php-fig/log.git",
6934 "reference": "6c001f1daafa3a3ac1d8ff69ee4db8e799a654dd" 6944 "reference": "446d54b4cb6bf489fc9d75f55843658e6f25d801"
6935 }, 6945 },
6936 "dist": { 6946 "dist": {
6937 "type": "zip", 6947 "type": "zip",
6938 "url": "https://api.github.com/repos/php-fig/log/zipball/6c001f1daafa3a3ac1d8ff69ee4db8e799a654dd", 6948 "url": "https://api.github.com/repos/php-fig/log/zipball/446d54b4cb6bf489fc9d75f55843658e6f25d801",
6939 "reference": "6c001f1daafa3a3ac1d8ff69ee4db8e799a654dd", 6949 "reference": "446d54b4cb6bf489fc9d75f55843658e6f25d801",
6940 "shasum": "" 6950 "shasum": ""
6941 }, 6951 },
6942 "require": { 6952 "require": {
@@ -6945,7 +6955,7 @@
6945 "type": "library", 6955 "type": "library",
6946 "extra": { 6956 "extra": {
6947 "branch-alias": { 6957 "branch-alias": {
6948 "dev-master": "1.0.x-dev" 6958 "dev-master": "1.1.x-dev"
6949 } 6959 }
6950 }, 6960 },
6951 "autoload": { 6961 "autoload": {
@@ -6970,7 +6980,7 @@
6970 "psr", 6980 "psr",
6971 "psr-3" 6981 "psr-3"
6972 ], 6982 ],
6973 "time": "2018-11-20T15:27:04+00:00" 6983 "time": "2019-11-01T11:05:21+00:00"
6974 }, 6984 },
6975 { 6985 {
6976 "name": "psr/simple-cache", 6986 "name": "psr/simple-cache",
@@ -7190,16 +7200,16 @@
7190 }, 7200 },
7191 { 7201 {
7192 "name": "scheb/two-factor-bundle", 7202 "name": "scheb/two-factor-bundle",
7193 "version": "v4.7.1", 7203 "version": "v4.8.0",
7194 "source": { 7204 "source": {
7195 "type": "git", 7205 "type": "git",
7196 "url": "https://github.com/scheb/two-factor-bundle.git", 7206 "url": "https://github.com/scheb/two-factor-bundle.git",
7197 "reference": "170895e91bdbe2c21983f195271d42e2fcfb3d62" 7207 "reference": "2864c770fedb723ac05aa56ff2761e4a8e1537ca"
7198 }, 7208 },
7199 "dist": { 7209 "dist": {
7200 "type": "zip", 7210 "type": "zip",
7201 "url": "https://api.github.com/repos/scheb/two-factor-bundle/zipball/170895e91bdbe2c21983f195271d42e2fcfb3d62", 7211 "url": "https://api.github.com/repos/scheb/two-factor-bundle/zipball/2864c770fedb723ac05aa56ff2761e4a8e1537ca",
7202 "reference": "170895e91bdbe2c21983f195271d42e2fcfb3d62", 7212 "reference": "2864c770fedb723ac05aa56ff2761e4a8e1537ca",
7203 "shasum": "" 7213 "shasum": ""
7204 }, 7214 },
7205 "require": { 7215 "require": {
@@ -7220,7 +7230,9 @@
7220 "require-dev": { 7230 "require-dev": {
7221 "doctrine/lexer": "^1.0.1", 7231 "doctrine/lexer": "^1.0.1",
7222 "doctrine/orm": "^2.6", 7232 "doctrine/orm": "^2.6",
7233 "escapestudios/symfony2-coding-standard": "^3.9",
7223 "phpunit/phpunit": "^7.0|^8.0", 7234 "phpunit/phpunit": "^7.0|^8.0",
7235 "squizlabs/php_codesniffer": "^3.5",
7224 "swiftmailer/swiftmailer": "^6.0", 7236 "swiftmailer/swiftmailer": "^6.0",
7225 "symfony/yaml": "^3.4|^4.0" 7237 "symfony/yaml": "^3.4|^4.0"
7226 }, 7238 },
@@ -7228,7 +7240,10 @@
7228 "autoload": { 7240 "autoload": {
7229 "psr-4": { 7241 "psr-4": {
7230 "Scheb\\TwoFactorBundle\\": "" 7242 "Scheb\\TwoFactorBundle\\": ""
7231 } 7243 },
7244 "exclude-from-classmap": [
7245 "/Tests/"
7246 ]
7232 }, 7247 },
7233 "notification-url": "https://packagist.org/downloads/", 7248 "notification-url": "https://packagist.org/downloads/",
7234 "license": [ 7249 "license": [
@@ -7249,7 +7264,7 @@
7249 "two-factor", 7264 "two-factor",
7250 "two-step" 7265 "two-step"
7251 ], 7266 ],
7252 "time": "2019-09-02T18:36:37+00:00" 7267 "time": "2019-11-07T19:29:43+00:00"
7253 }, 7268 },
7254 { 7269 {
7255 "name": "sensio/distribution-bundle", 7270 "name": "sensio/distribution-bundle",
@@ -7378,23 +7393,23 @@
7378 }, 7393 },
7379 { 7394 {
7380 "name": "sensiolabs/security-checker", 7395 "name": "sensiolabs/security-checker",
7381 "version": "v6.0.2", 7396 "version": "v6.0.3",
7382 "source": { 7397 "source": {
7383 "type": "git", 7398 "type": "git",
7384 "url": "https://github.com/sensiolabs/security-checker.git", 7399 "url": "https://github.com/sensiolabs/security-checker.git",
7385 "reference": "ce8d0552dcb8d3677ab9adb6d19a5837949bfec4" 7400 "reference": "a576c01520d9761901f269c4934ba55448be4a54"
7386 }, 7401 },
7387 "dist": { 7402 "dist": {
7388 "type": "zip", 7403 "type": "zip",
7389 "url": "https://api.github.com/repos/sensiolabs/security-checker/zipball/ce8d0552dcb8d3677ab9adb6d19a5837949bfec4", 7404 "url": "https://api.github.com/repos/sensiolabs/security-checker/zipball/a576c01520d9761901f269c4934ba55448be4a54",
7390 "reference": "ce8d0552dcb8d3677ab9adb6d19a5837949bfec4", 7405 "reference": "a576c01520d9761901f269c4934ba55448be4a54",
7391 "shasum": "" 7406 "shasum": ""
7392 }, 7407 },
7393 "require": { 7408 "require": {
7394 "php": ">=7.1.3", 7409 "php": ">=7.1.3",
7395 "symfony/console": "^2.8|^3.4|^4.2", 7410 "symfony/console": "^2.8|^3.4|^4.2|^5.0",
7396 "symfony/http-client": "^4.3", 7411 "symfony/http-client": "^4.3|^5.0",
7397 "symfony/mime": "^4.3", 7412 "symfony/mime": "^4.3|^5.0",
7398 "symfony/polyfill-ctype": "^1.11" 7413 "symfony/polyfill-ctype": "^1.11"
7399 }, 7414 },
7400 "bin": [ 7415 "bin": [
@@ -7422,7 +7437,7 @@
7422 } 7437 }
7423 ], 7438 ],
7424 "description": "A security checker for your composer.lock", 7439 "description": "A security checker for your composer.lock",
7425 "time": "2019-06-08T06:46:26+00:00" 7440 "time": "2019-11-01T13:20:14+00:00"
7426 }, 7441 },
7427 { 7442 {
7428 "name": "sentry/sdk", 7443 "name": "sentry/sdk",
@@ -7459,16 +7474,16 @@
7459 }, 7474 },
7460 { 7475 {
7461 "name": "sentry/sentry", 7476 "name": "sentry/sentry",
7462 "version": "2.2.1", 7477 "version": "2.2.4",
7463 "source": { 7478 "source": {
7464 "type": "git", 7479 "type": "git",
7465 "url": "https://github.com/getsentry/sentry-php.git", 7480 "url": "https://github.com/getsentry/sentry-php.git",
7466 "reference": "5896f9f0a00a7525797764ba42091dfbde22a746" 7481 "reference": "a74999536b9119257cb1a4b1aa038e4a08439f67"
7467 }, 7482 },
7468 "dist": { 7483 "dist": {
7469 "type": "zip", 7484 "type": "zip",
7470 "url": "https://api.github.com/repos/getsentry/sentry-php/zipball/5896f9f0a00a7525797764ba42091dfbde22a746", 7485 "url": "https://api.github.com/repos/getsentry/sentry-php/zipball/a74999536b9119257cb1a4b1aa038e4a08439f67",
7471 "reference": "5896f9f0a00a7525797764ba42091dfbde22a746", 7486 "reference": "a74999536b9119257cb1a4b1aa038e4a08439f67",
7472 "shasum": "" 7487 "shasum": ""
7473 }, 7488 },
7474 "require": { 7489 "require": {
@@ -7502,6 +7517,9 @@
7502 "symfony/phpunit-bridge": "^4.3", 7517 "symfony/phpunit-bridge": "^4.3",
7503 "vimeo/psalm": "^3.4" 7518 "vimeo/psalm": "^3.4"
7504 }, 7519 },
7520 "suggest": {
7521 "monolog/monolog": "Allow sending log messages to Sentry by using the included Monolog handler."
7522 },
7505 "type": "library", 7523 "type": "library",
7506 "extra": { 7524 "extra": {
7507 "branch-alias": { 7525 "branch-alias": {
@@ -7537,7 +7555,7 @@
7537 "logging", 7555 "logging",
7538 "sentry" 7556 "sentry"
7539 ], 7557 ],
7540 "time": "2019-09-23T11:52:12+00:00" 7558 "time": "2019-11-04T10:30:51+00:00"
7541 }, 7559 },
7542 { 7560 {
7543 "name": "sentry/sentry-symfony", 7561 "name": "sentry/sentry-symfony",
@@ -7617,16 +7635,16 @@
7617 }, 7635 },
7618 { 7636 {
7619 "name": "simplepie/simplepie", 7637 "name": "simplepie/simplepie",
7620 "version": "1.5.2", 7638 "version": "1.5.3",
7621 "source": { 7639 "source": {
7622 "type": "git", 7640 "type": "git",
7623 "url": "https://github.com/simplepie/simplepie.git", 7641 "url": "https://github.com/simplepie/simplepie.git",
7624 "reference": "0e8fe72132dad765d25db4cabc69a91139af1263" 7642 "reference": "173663382a9346acd53df60c7ffb20689c9cf1f6"
7625 }, 7643 },
7626 "dist": { 7644 "dist": {
7627 "type": "zip", 7645 "type": "zip",
7628 "url": "https://api.github.com/repos/simplepie/simplepie/zipball/0e8fe72132dad765d25db4cabc69a91139af1263", 7646 "url": "https://api.github.com/repos/simplepie/simplepie/zipball/173663382a9346acd53df60c7ffb20689c9cf1f6",
7629 "reference": "0e8fe72132dad765d25db4cabc69a91139af1263", 7647 "reference": "173663382a9346acd53df60c7ffb20689c9cf1f6",
7630 "shasum": "" 7648 "shasum": ""
7631 }, 7649 },
7632 "require": { 7650 "require": {
@@ -7680,7 +7698,7 @@
7680 "feeds", 7698 "feeds",
7681 "rss" 7699 "rss"
7682 ], 7700 ],
7683 "time": "2018-08-02T05:43:58+00:00" 7701 "time": "2019-09-22T23:21:30+00:00"
7684 }, 7702 },
7685 { 7703 {
7686 "name": "smalot/pdfparser", 7704 "name": "smalot/pdfparser",
@@ -7860,16 +7878,16 @@
7860 }, 7878 },
7861 { 7879 {
7862 "name": "swiftmailer/swiftmailer", 7880 "name": "swiftmailer/swiftmailer",
7863 "version": "v6.2.1", 7881 "version": "v6.2.3",
7864 "source": { 7882 "source": {
7865 "type": "git", 7883 "type": "git",
7866 "url": "https://github.com/swiftmailer/swiftmailer.git", 7884 "url": "https://github.com/swiftmailer/swiftmailer.git",
7867 "reference": "5397cd05b0a0f7937c47b0adcb4c60e5ab936b6a" 7885 "reference": "149cfdf118b169f7840bbe3ef0d4bc795d1780c9"
7868 }, 7886 },
7869 "dist": { 7887 "dist": {
7870 "type": "zip", 7888 "type": "zip",
7871 "url": "https://api.github.com/repos/swiftmailer/swiftmailer/zipball/5397cd05b0a0f7937c47b0adcb4c60e5ab936b6a", 7889 "url": "https://api.github.com/repos/swiftmailer/swiftmailer/zipball/149cfdf118b169f7840bbe3ef0d4bc795d1780c9",
7872 "reference": "5397cd05b0a0f7937c47b0adcb4c60e5ab936b6a", 7890 "reference": "149cfdf118b169f7840bbe3ef0d4bc795d1780c9",
7873 "shasum": "" 7891 "shasum": ""
7874 }, 7892 },
7875 "require": { 7893 "require": {
@@ -7918,26 +7936,26 @@
7918 "mail", 7936 "mail",
7919 "mailer" 7937 "mailer"
7920 ], 7938 ],
7921 "time": "2019-04-21T09:21:45+00:00" 7939 "time": "2019-11-12T09:31:26+00:00"
7922 }, 7940 },
7923 { 7941 {
7924 "name": "symfony/http-client", 7942 "name": "symfony/http-client",
7925 "version": "v4.3.4", 7943 "version": "v4.3.8",
7926 "source": { 7944 "source": {
7927 "type": "git", 7945 "type": "git",
7928 "url": "https://github.com/symfony/http-client.git", 7946 "url": "https://github.com/symfony/http-client.git",
7929 "reference": "9a4fa769269ed730196a5c52c742b30600cf1e87" 7947 "reference": "ae3a9cd491f1aadb5583f34a6bda5cca34081ce8"
7930 }, 7948 },
7931 "dist": { 7949 "dist": {
7932 "type": "zip", 7950 "type": "zip",
7933 "url": "https://api.github.com/repos/symfony/http-client/zipball/9a4fa769269ed730196a5c52c742b30600cf1e87", 7951 "url": "https://api.github.com/repos/symfony/http-client/zipball/ae3a9cd491f1aadb5583f34a6bda5cca34081ce8",
7934 "reference": "9a4fa769269ed730196a5c52c742b30600cf1e87", 7952 "reference": "ae3a9cd491f1aadb5583f34a6bda5cca34081ce8",
7935 "shasum": "" 7953 "shasum": ""
7936 }, 7954 },
7937 "require": { 7955 "require": {
7938 "php": "^7.1.3", 7956 "php": "^7.1.3",
7939 "psr/log": "^1.0", 7957 "psr/log": "^1.0",
7940 "symfony/http-client-contracts": "^1.1.6", 7958 "symfony/http-client-contracts": "^1.1.7",
7941 "symfony/polyfill-php73": "^1.11" 7959 "symfony/polyfill-php73": "^1.11"
7942 }, 7960 },
7943 "provide": { 7961 "provide": {
@@ -7980,20 +7998,20 @@
7980 ], 7998 ],
7981 "description": "Symfony HttpClient component", 7999 "description": "Symfony HttpClient component",
7982 "homepage": "https://symfony.com", 8000 "homepage": "https://symfony.com",
7983 "time": "2019-08-20T14:27:59+00:00" 8001 "time": "2019-11-08T08:23:45+00:00"
7984 }, 8002 },
7985 { 8003 {
7986 "name": "symfony/http-client-contracts", 8004 "name": "symfony/http-client-contracts",
7987 "version": "v1.1.6", 8005 "version": "v1.1.8",
7988 "source": { 8006 "source": {
7989 "type": "git", 8007 "type": "git",
7990 "url": "https://github.com/symfony/http-client-contracts.git", 8008 "url": "https://github.com/symfony/http-client-contracts.git",
7991 "reference": "6005fe61a33724405d56eb5b055d5d370192a1bd" 8009 "reference": "088bae75cfa2ec5eb6d33dce17dbd8613150ce6e"
7992 }, 8010 },
7993 "dist": { 8011 "dist": {
7994 "type": "zip", 8012 "type": "zip",
7995 "url": "https://api.github.com/repos/symfony/http-client-contracts/zipball/6005fe61a33724405d56eb5b055d5d370192a1bd", 8013 "url": "https://api.github.com/repos/symfony/http-client-contracts/zipball/088bae75cfa2ec5eb6d33dce17dbd8613150ce6e",
7996 "reference": "6005fe61a33724405d56eb5b055d5d370192a1bd", 8014 "reference": "088bae75cfa2ec5eb6d33dce17dbd8613150ce6e",
7997 "shasum": "" 8015 "shasum": ""
7998 }, 8016 },
7999 "require": { 8017 "require": {
@@ -8037,20 +8055,20 @@
8037 "interoperability", 8055 "interoperability",
8038 "standards" 8056 "standards"
8039 ], 8057 ],
8040 "time": "2019-08-08T10:05:21+00:00" 8058 "time": "2019-11-07T12:44:51+00:00"
8041 }, 8059 },
8042 { 8060 {
8043 "name": "symfony/mime", 8061 "name": "symfony/mime",
8044 "version": "v4.3.4", 8062 "version": "v4.3.8",
8045 "source": { 8063 "source": {
8046 "type": "git", 8064 "type": "git",
8047 "url": "https://github.com/symfony/mime.git", 8065 "url": "https://github.com/symfony/mime.git",
8048 "reference": "987a05df1c6ac259b34008b932551353f4f408df" 8066 "reference": "22aecf6b11638ef378fab25d6c5a2da8a31a1448"
8049 }, 8067 },
8050 "dist": { 8068 "dist": {
8051 "type": "zip", 8069 "type": "zip",
8052 "url": "https://api.github.com/repos/symfony/mime/zipball/987a05df1c6ac259b34008b932551353f4f408df", 8070 "url": "https://api.github.com/repos/symfony/mime/zipball/22aecf6b11638ef378fab25d6c5a2da8a31a1448",
8053 "reference": "987a05df1c6ac259b34008b932551353f4f408df", 8071 "reference": "22aecf6b11638ef378fab25d6c5a2da8a31a1448",
8054 "shasum": "" 8072 "shasum": ""
8055 }, 8073 },
8056 "require": { 8074 "require": {
@@ -8096,34 +8114,34 @@
8096 "mime", 8114 "mime",
8097 "mime-type" 8115 "mime-type"
8098 ], 8116 ],
8099 "time": "2019-08-22T08:16:11+00:00" 8117 "time": "2019-11-12T13:10:02+00:00"
8100 }, 8118 },
8101 { 8119 {
8102 "name": "symfony/monolog-bundle", 8120 "name": "symfony/monolog-bundle",
8103 "version": "v3.4.0", 8121 "version": "v3.5.0",
8104 "source": { 8122 "source": {
8105 "type": "git", 8123 "type": "git",
8106 "url": "https://github.com/symfony/monolog-bundle.git", 8124 "url": "https://github.com/symfony/monolog-bundle.git",
8107 "reference": "7fbecb371c1c614642c93c6b2cbcdf723ae8809d" 8125 "reference": "dd80460fcfe1fa2050a7103ad818e9d0686ce6fd"
8108 }, 8126 },
8109 "dist": { 8127 "dist": {
8110 "type": "zip", 8128 "type": "zip",
8111 "url": "https://api.github.com/repos/symfony/monolog-bundle/zipball/7fbecb371c1c614642c93c6b2cbcdf723ae8809d", 8129 "url": "https://api.github.com/repos/symfony/monolog-bundle/zipball/dd80460fcfe1fa2050a7103ad818e9d0686ce6fd",
8112 "reference": "7fbecb371c1c614642c93c6b2cbcdf723ae8809d", 8130 "reference": "dd80460fcfe1fa2050a7103ad818e9d0686ce6fd",
8113 "shasum": "" 8131 "shasum": ""
8114 }, 8132 },
8115 "require": { 8133 "require": {
8116 "monolog/monolog": "~1.22", 8134 "monolog/monolog": "~1.22 || ~2.0",
8117 "php": ">=5.6", 8135 "php": ">=5.6",
8118 "symfony/config": "~3.4|~4.0", 8136 "symfony/config": "~3.4 || ~4.0 || ^5.0",
8119 "symfony/dependency-injection": "~3.4.10|^4.0.10", 8137 "symfony/dependency-injection": "~3.4.10 || ^4.0.10 || ^5.0",
8120 "symfony/http-kernel": "~3.4|~4.0", 8138 "symfony/http-kernel": "~3.4 || ~4.0 || ^5.0",
8121 "symfony/monolog-bridge": "~3.4|~4.0" 8139 "symfony/monolog-bridge": "~3.4 || ~4.0 || ^5.0"
8122 }, 8140 },
8123 "require-dev": { 8141 "require-dev": {
8124 "symfony/console": "~3.4|~4.0", 8142 "symfony/console": "~3.4 || ~4.0 || ^5.0",
8125 "symfony/phpunit-bridge": "^3.4.19|^4.0", 8143 "symfony/phpunit-bridge": "^3.4.19 || ^4.0 || ^5.0",
8126 "symfony/yaml": "~3.4|~4.0" 8144 "symfony/yaml": "~3.4 || ~4.0 || ^5.0"
8127 }, 8145 },
8128 "type": "symfony-bundle", 8146 "type": "symfony-bundle",
8129 "extra": { 8147 "extra": {
@@ -8145,12 +8163,12 @@
8145 ], 8163 ],
8146 "authors": [ 8164 "authors": [
8147 { 8165 {
8148 "name": "Symfony Community",
8149 "homepage": "http://symfony.com/contributors"
8150 },
8151 {
8152 "name": "Fabien Potencier", 8166 "name": "Fabien Potencier",
8153 "email": "fabien@symfony.com" 8167 "email": "fabien@symfony.com"
8168 },
8169 {
8170 "name": "Symfony Community",
8171 "homepage": "http://symfony.com/contributors"
8154 } 8172 }
8155 ], 8173 ],
8156 "description": "Symfony MonologBundle", 8174 "description": "Symfony MonologBundle",
@@ -8159,7 +8177,7 @@
8159 "log", 8177 "log",
8160 "logging" 8178 "logging"
8161 ], 8179 ],
8162 "time": "2019-06-20T12:18:19+00:00" 8180 "time": "2019-11-13T13:11:14+00:00"
8163 }, 8181 },
8164 { 8182 {
8165 "name": "symfony/polyfill-apcu", 8183 "name": "symfony/polyfill-apcu",
@@ -8795,33 +8813,33 @@
8795 }, 8813 },
8796 { 8814 {
8797 "name": "symfony/swiftmailer-bundle", 8815 "name": "symfony/swiftmailer-bundle",
8798 "version": "v3.2.8", 8816 "version": "v3.3.1",
8799 "source": { 8817 "source": {
8800 "type": "git", 8818 "type": "git",
8801 "url": "https://github.com/symfony/swiftmailer-bundle.git", 8819 "url": "https://github.com/symfony/swiftmailer-bundle.git",
8802 "reference": "cb125b3648f132fb8070b55393f20cb310907d3b" 8820 "reference": "defa9bdfc0191ed70b389cb93c550c6c82cf1745"
8803 }, 8821 },
8804 "dist": { 8822 "dist": {
8805 "type": "zip", 8823 "type": "zip",
8806 "url": "https://api.github.com/repos/symfony/swiftmailer-bundle/zipball/cb125b3648f132fb8070b55393f20cb310907d3b", 8824 "url": "https://api.github.com/repos/symfony/swiftmailer-bundle/zipball/defa9bdfc0191ed70b389cb93c550c6c82cf1745",
8807 "reference": "cb125b3648f132fb8070b55393f20cb310907d3b", 8825 "reference": "defa9bdfc0191ed70b389cb93c550c6c82cf1745",
8808 "shasum": "" 8826 "shasum": ""
8809 }, 8827 },
8810 "require": { 8828 "require": {
8811 "php": ">=7.0.0", 8829 "php": ">=7.0.0",
8812 "swiftmailer/swiftmailer": "^6.1.3", 8830 "swiftmailer/swiftmailer": "^6.1.3",
8813 "symfony/config": "~2.8|~3.3|~4.0", 8831 "symfony/config": "^3.4|^4.0|^5.0",
8814 "symfony/dependency-injection": "~2.7|~3.3|~4.0", 8832 "symfony/dependency-injection": "^3.4|^4.0|^5.0",
8815 "symfony/http-kernel": "~2.7|~3.3|~4.0" 8833 "symfony/http-kernel": "^3.4|^4.0|^5.0"
8816 }, 8834 },
8817 "conflict": { 8835 "conflict": {
8818 "twig/twig": "<1.41|<2.10" 8836 "twig/twig": "<1.41|<2.10"
8819 }, 8837 },
8820 "require-dev": { 8838 "require-dev": {
8821 "symfony/console": "~2.7|~3.3|~4.0", 8839 "symfony/console": "^3.4|^4.0|^5.0",
8822 "symfony/framework-bundle": "~2.7|~3.3|~4.0", 8840 "symfony/framework-bundle": "^3.4|^4.0|^5.0",
8823 "symfony/phpunit-bridge": "~3.3|~4.0", 8841 "symfony/phpunit-bridge": "^3.4.32|^4.3.5|^5.0",
8824 "symfony/yaml": "~2.7|~3.3|~4.0" 8842 "symfony/yaml": "^3.4|^4.0|^5.0"
8825 }, 8843 },
8826 "suggest": { 8844 "suggest": {
8827 "psr/log": "Allows logging" 8845 "psr/log": "Allows logging"
@@ -8829,7 +8847,7 @@
8829 "type": "symfony-bundle", 8847 "type": "symfony-bundle",
8830 "extra": { 8848 "extra": {
8831 "branch-alias": { 8849 "branch-alias": {
8832 "dev-master": "3.2-dev" 8850 "dev-master": "3.3-dev"
8833 } 8851 }
8834 }, 8852 },
8835 "autoload": { 8853 "autoload": {
@@ -8846,30 +8864,30 @@
8846 ], 8864 ],
8847 "authors": [ 8865 "authors": [
8848 { 8866 {
8849 "name": "Symfony Community",
8850 "homepage": "http://symfony.com/contributors"
8851 },
8852 {
8853 "name": "Fabien Potencier", 8867 "name": "Fabien Potencier",
8854 "email": "fabien@symfony.com" 8868 "email": "fabien@symfony.com"
8869 },
8870 {
8871 "name": "Symfony Community",
8872 "homepage": "http://symfony.com/contributors"
8855 } 8873 }
8856 ], 8874 ],
8857 "description": "Symfony SwiftmailerBundle", 8875 "description": "Symfony SwiftmailerBundle",
8858 "homepage": "http://symfony.com", 8876 "homepage": "http://symfony.com",
8859 "time": "2019-06-18T15:27:04+00:00" 8877 "time": "2019-11-07T21:01:35+00:00"
8860 }, 8878 },
8861 { 8879 {
8862 "name": "symfony/symfony", 8880 "name": "symfony/symfony",
8863 "version": "v3.4.32", 8881 "version": "v3.4.35",
8864 "source": { 8882 "source": {
8865 "type": "git", 8883 "type": "git",
8866 "url": "https://github.com/symfony/symfony.git", 8884 "url": "https://github.com/symfony/symfony.git",
8867 "reference": "2815d1fa34d417b8b87450667f166edbefff3177" 8885 "reference": "2adc85d49cbe14e346068fa7e9c2e1f08ab31de6"
8868 }, 8886 },
8869 "dist": { 8887 "dist": {
8870 "type": "zip", 8888 "type": "zip",
8871 "url": "https://api.github.com/repos/symfony/symfony/zipball/2815d1fa34d417b8b87450667f166edbefff3177", 8889 "url": "https://api.github.com/repos/symfony/symfony/zipball/2adc85d49cbe14e346068fa7e9c2e1f08ab31de6",
8872 "reference": "2815d1fa34d417b8b87450667f166edbefff3177", 8890 "reference": "2adc85d49cbe14e346068fa7e9c2e1f08ab31de6",
8873 "shasum": "" 8891 "shasum": ""
8874 }, 8892 },
8875 "require": { 8893 "require": {
@@ -9011,7 +9029,7 @@
9011 "keywords": [ 9029 "keywords": [
9012 "framework" 9030 "framework"
9013 ], 9031 ],
9014 "time": "2019-10-07T14:42:16+00:00" 9032 "time": "2019-11-13T08:45:05+00:00"
9015 }, 9033 },
9016 { 9034 {
9017 "name": "true/punycode", 9035 "name": "true/punycode",
@@ -9116,16 +9134,16 @@
9116 }, 9134 },
9117 { 9135 {
9118 "name": "twig/twig", 9136 "name": "twig/twig",
9119 "version": "v2.12.0", 9137 "version": "v2.12.2",
9120 "source": { 9138 "source": {
9121 "type": "git", 9139 "type": "git",
9122 "url": "https://github.com/twigphp/Twig.git", 9140 "url": "https://github.com/twigphp/Twig.git",
9123 "reference": "c7a85fd08348ca04b4d8f234f49583d9910906aa" 9141 "reference": "d761fd1f1c6b867ae09a7d8119a6d95d06dc44ed"
9124 }, 9142 },
9125 "dist": { 9143 "dist": {
9126 "type": "zip", 9144 "type": "zip",
9127 "url": "https://api.github.com/repos/twigphp/Twig/zipball/c7a85fd08348ca04b4d8f234f49583d9910906aa", 9145 "url": "https://api.github.com/repos/twigphp/Twig/zipball/d761fd1f1c6b867ae09a7d8119a6d95d06dc44ed",
9128 "reference": "c7a85fd08348ca04b4d8f234f49583d9910906aa", 9146 "reference": "d761fd1f1c6b867ae09a7d8119a6d95d06dc44ed",
9129 "shasum": "" 9147 "shasum": ""
9130 }, 9148 },
9131 "require": { 9149 "require": {
@@ -9179,7 +9197,7 @@
9179 "keywords": [ 9197 "keywords": [
9180 "templating" 9198 "templating"
9181 ], 9199 ],
9182 "time": "2019-10-05T16:42:38+00:00" 9200 "time": "2019-11-11T16:52:09+00:00"
9183 }, 9201 },
9184 { 9202 {
9185 "name": "wallabag/php-mobi", 9203 "name": "wallabag/php-mobi",
@@ -9567,16 +9585,16 @@
9567 }, 9585 },
9568 { 9586 {
9569 "name": "zendframework/zend-code", 9587 "name": "zendframework/zend-code",
9570 "version": "3.3.2", 9588 "version": "3.4.0",
9571 "source": { 9589 "source": {
9572 "type": "git", 9590 "type": "git",
9573 "url": "https://github.com/zendframework/zend-code.git", 9591 "url": "https://github.com/zendframework/zend-code.git",
9574 "reference": "936fa7ad4d53897ea3e3eb41b5b760828246a20b" 9592 "reference": "46feaeecea14161734b56c1ace74f28cb329f194"
9575 }, 9593 },
9576 "dist": { 9594 "dist": {
9577 "type": "zip", 9595 "type": "zip",
9578 "url": "https://api.github.com/repos/zendframework/zend-code/zipball/936fa7ad4d53897ea3e3eb41b5b760828246a20b", 9596 "url": "https://api.github.com/repos/zendframework/zend-code/zipball/46feaeecea14161734b56c1ace74f28cb329f194",
9579 "reference": "936fa7ad4d53897ea3e3eb41b5b760828246a20b", 9597 "reference": "46feaeecea14161734b56c1ace74f28cb329f194",
9580 "shasum": "" 9598 "shasum": ""
9581 }, 9599 },
9582 "require": { 9600 "require": {
@@ -9586,7 +9604,7 @@
9586 "require-dev": { 9604 "require-dev": {
9587 "doctrine/annotations": "^1.0", 9605 "doctrine/annotations": "^1.0",
9588 "ext-phar": "*", 9606 "ext-phar": "*",
9589 "phpunit/phpunit": "^7.5.15", 9607 "phpunit/phpunit": "^7.5.16 || ^8.4",
9590 "zendframework/zend-coding-standard": "^1.0", 9608 "zendframework/zend-coding-standard": "^1.0",
9591 "zendframework/zend-stdlib": "^2.7 || ^3.0" 9609 "zendframework/zend-stdlib": "^2.7 || ^3.0"
9592 }, 9610 },
@@ -9597,8 +9615,8 @@
9597 "type": "library", 9615 "type": "library",
9598 "extra": { 9616 "extra": {
9599 "branch-alias": { 9617 "branch-alias": {
9600 "dev-master": "3.3.x-dev", 9618 "dev-master": "3.4.x-dev",
9601 "dev-develop": "3.4.x-dev" 9619 "dev-develop": "3.5.x-dev"
9602 } 9620 }
9603 }, 9621 },
9604 "autoload": { 9622 "autoload": {
@@ -9616,20 +9634,20 @@
9616 "code", 9634 "code",
9617 "zf" 9635 "zf"
9618 ], 9636 ],
9619 "time": "2019-08-31T14:14:34+00:00" 9637 "time": "2019-10-05T23:18:22+00:00"
9620 }, 9638 },
9621 { 9639 {
9622 "name": "zendframework/zend-diactoros", 9640 "name": "zendframework/zend-diactoros",
9623 "version": "2.1.3", 9641 "version": "2.2.0",
9624 "source": { 9642 "source": {
9625 "type": "git", 9643 "type": "git",
9626 "url": "https://github.com/zendframework/zend-diactoros.git", 9644 "url": "https://github.com/zendframework/zend-diactoros.git",
9627 "reference": "279723778c40164bcf984a2df12ff2c6ec5e61c1" 9645 "reference": "66eded992a75bfe75a829005a2884aae5ca86daa"
9628 }, 9646 },
9629 "dist": { 9647 "dist": {
9630 "type": "zip", 9648 "type": "zip",
9631 "url": "https://api.github.com/repos/zendframework/zend-diactoros/zipball/279723778c40164bcf984a2df12ff2c6ec5e61c1", 9649 "url": "https://api.github.com/repos/zendframework/zend-diactoros/zipball/66eded992a75bfe75a829005a2884aae5ca86daa",
9632 "reference": "279723778c40164bcf984a2df12ff2c6ec5e61c1", 9650 "reference": "66eded992a75bfe75a829005a2884aae5ca86daa",
9633 "shasum": "" 9651 "shasum": ""
9634 }, 9652 },
9635 "require": { 9653 "require": {
@@ -9642,6 +9660,7 @@
9642 "psr/http-message-implementation": "1.0" 9660 "psr/http-message-implementation": "1.0"
9643 }, 9661 },
9644 "require-dev": { 9662 "require-dev": {
9663 "ext-curl": "*",
9645 "ext-dom": "*", 9664 "ext-dom": "*",
9646 "ext-libxml": "*", 9665 "ext-libxml": "*",
9647 "http-interop/http-factory-tests": "^0.5.0", 9666 "http-interop/http-factory-tests": "^0.5.0",
@@ -9682,7 +9701,7 @@
9682 "psr", 9701 "psr",
9683 "psr-7" 9702 "psr-7"
9684 ], 9703 ],
9685 "time": "2019-07-10T16:13:25+00:00" 9704 "time": "2019-11-12T17:26:16+00:00"
9686 }, 9705 },
9687 { 9706 {
9688 "name": "zendframework/zend-eventmanager", 9707 "name": "zendframework/zend-eventmanager",
@@ -9804,24 +9823,24 @@
9804 }, 9823 },
9805 { 9824 {
9806 "name": "composer/xdebug-handler", 9825 "name": "composer/xdebug-handler",
9807 "version": "1.3.3", 9826 "version": "1.4.0",
9808 "source": { 9827 "source": {
9809 "type": "git", 9828 "type": "git",
9810 "url": "https://github.com/composer/xdebug-handler.git", 9829 "url": "https://github.com/composer/xdebug-handler.git",
9811 "reference": "46867cbf8ca9fb8d60c506895449eb799db1184f" 9830 "reference": "cbe23383749496fe0f373345208b79568e4bc248"
9812 }, 9831 },
9813 "dist": { 9832 "dist": {
9814 "type": "zip", 9833 "type": "zip",
9815 "url": "https://api.github.com/repos/composer/xdebug-handler/zipball/46867cbf8ca9fb8d60c506895449eb799db1184f", 9834 "url": "https://api.github.com/repos/composer/xdebug-handler/zipball/cbe23383749496fe0f373345208b79568e4bc248",
9816 "reference": "46867cbf8ca9fb8d60c506895449eb799db1184f", 9835 "reference": "cbe23383749496fe0f373345208b79568e4bc248",
9817 "shasum": "" 9836 "shasum": ""
9818 }, 9837 },
9819 "require": { 9838 "require": {
9820 "php": "^5.3.2 || ^7.0", 9839 "php": "^5.3.2 || ^7.0 || ^8.0",
9821 "psr/log": "^1.0" 9840 "psr/log": "^1.0"
9822 }, 9841 },
9823 "require-dev": { 9842 "require-dev": {
9824 "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.5" 9843 "phpunit/phpunit": "^4.8.35 || ^5.7 || 6.5 - 8"
9825 }, 9844 },
9826 "type": "library", 9845 "type": "library",
9827 "autoload": { 9846 "autoload": {
@@ -9839,12 +9858,12 @@
9839 "email": "john-stevenson@blueyonder.co.uk" 9858 "email": "john-stevenson@blueyonder.co.uk"
9840 } 9859 }
9841 ], 9860 ],
9842 "description": "Restarts a process without xdebug.", 9861 "description": "Restarts a process without Xdebug.",
9843 "keywords": [ 9862 "keywords": [
9844 "Xdebug", 9863 "Xdebug",
9845 "performance" 9864 "performance"
9846 ], 9865 ],
9847 "time": "2019-05-27T17:52:04+00:00" 9866 "time": "2019-11-06T16:40:04+00:00"
9848 }, 9867 },
9849 { 9868 {
9850 "name": "dama/doctrine-test-bundle", 9869 "name": "dama/doctrine-test-bundle",
@@ -9907,16 +9926,16 @@
9907 }, 9926 },
9908 { 9927 {
9909 "name": "doctrine/data-fixtures", 9928 "name": "doctrine/data-fixtures",
9910 "version": "v1.3.2", 9929 "version": "1.3.3",
9911 "source": { 9930 "source": {
9912 "type": "git", 9931 "type": "git",
9913 "url": "https://github.com/doctrine/data-fixtures.git", 9932 "url": "https://github.com/doctrine/data-fixtures.git",
9914 "reference": "09b16943b27f3d80d63988d100ff256148c2f78b" 9933 "reference": "f0ee99c64922fc3f863715232b615c478a61b0a3"
9915 }, 9934 },
9916 "dist": { 9935 "dist": {
9917 "type": "zip", 9936 "type": "zip",
9918 "url": "https://api.github.com/repos/doctrine/data-fixtures/zipball/09b16943b27f3d80d63988d100ff256148c2f78b", 9937 "url": "https://api.github.com/repos/doctrine/data-fixtures/zipball/f0ee99c64922fc3f863715232b615c478a61b0a3",
9919 "reference": "09b16943b27f3d80d63988d100ff256148c2f78b", 9938 "reference": "f0ee99c64922fc3f863715232b615c478a61b0a3",
9920 "shasum": "" 9939 "shasum": ""
9921 }, 9940 },
9922 "require": { 9941 "require": {
@@ -9927,7 +9946,9 @@
9927 "doctrine/phpcr-odm": "<1.3.0" 9946 "doctrine/phpcr-odm": "<1.3.0"
9928 }, 9947 },
9929 "require-dev": { 9948 "require-dev": {
9949 "alcaeus/mongo-php-adapter": "^1.1",
9930 "doctrine/dbal": "^2.5.4", 9950 "doctrine/dbal": "^2.5.4",
9951 "doctrine/mongodb-odm": "^1.3.0",
9931 "doctrine/orm": "^2.5.4", 9952 "doctrine/orm": "^2.5.4",
9932 "phpunit/phpunit": "^7.0" 9953 "phpunit/phpunit": "^7.0"
9933 }, 9954 },
@@ -9963,39 +9984,42 @@
9963 "keywords": [ 9984 "keywords": [
9964 "database" 9985 "database"
9965 ], 9986 ],
9966 "time": "2019-07-10T18:30:35+00:00" 9987 "time": "2019-10-24T04:52:28+00:00"
9967 }, 9988 },
9968 { 9989 {
9969 "name": "doctrine/doctrine-fixtures-bundle", 9990 "name": "doctrine/doctrine-fixtures-bundle",
9970 "version": "3.2.2", 9991 "version": "3.3.0",
9971 "source": { 9992 "source": {
9972 "type": "git", 9993 "type": "git",
9973 "url": "https://github.com/doctrine/DoctrineFixturesBundle.git", 9994 "url": "https://github.com/doctrine/DoctrineFixturesBundle.git",
9974 "reference": "90e4a4f968b2dae40e290a6ee516957af043f16c" 9995 "reference": "8f07fcfdac7f3591f3c4bf13a50cbae05f65ed70"
9975 }, 9996 },
9976 "dist": { 9997 "dist": {
9977 "type": "zip", 9998 "type": "zip",
9978 "url": "https://api.github.com/repos/doctrine/DoctrineFixturesBundle/zipball/90e4a4f968b2dae40e290a6ee516957af043f16c", 9999 "url": "https://api.github.com/repos/doctrine/DoctrineFixturesBundle/zipball/8f07fcfdac7f3591f3c4bf13a50cbae05f65ed70",
9979 "reference": "90e4a4f968b2dae40e290a6ee516957af043f16c", 10000 "reference": "8f07fcfdac7f3591f3c4bf13a50cbae05f65ed70",
9980 "shasum": "" 10001 "shasum": ""
9981 }, 10002 },
9982 "require": { 10003 "require": {
9983 "doctrine/data-fixtures": "^1.3", 10004 "doctrine/data-fixtures": "^1.3",
9984 "doctrine/doctrine-bundle": "^1.6", 10005 "doctrine/doctrine-bundle": "^1.11|^2.0",
9985 "doctrine/orm": "^2.6.0", 10006 "doctrine/orm": "^2.6.0",
9986 "php": "^7.1", 10007 "php": "^7.1",
9987 "symfony/doctrine-bridge": "~3.4|^4.1", 10008 "symfony/config": "^3.4|^4.3|^5.0",
9988 "symfony/framework-bundle": "^3.4|^4.1" 10009 "symfony/console": "^3.4|^4.3|^5.0",
10010 "symfony/dependency-injection": "^3.4|^4.3|^5.0",
10011 "symfony/doctrine-bridge": "^3.4|^4.1|^5.0",
10012 "symfony/http-kernel": "^3.4|^4.3|^5.0"
9989 }, 10013 },
9990 "require-dev": { 10014 "require-dev": {
9991 "doctrine/coding-standard": "^6.0", 10015 "doctrine/coding-standard": "^6.0",
9992 "phpunit/phpunit": "^7.4", 10016 "phpunit/phpunit": "^7.4",
9993 "symfony/phpunit-bridge": "^4.1" 10017 "symfony/phpunit-bridge": "^4.1|^5.0"
9994 }, 10018 },
9995 "type": "symfony-bundle", 10019 "type": "symfony-bundle",
9996 "extra": { 10020 "extra": {
9997 "branch-alias": { 10021 "branch-alias": {
9998 "dev-master": "3.2.x-dev" 10022 "dev-master": "3.3.x-dev"
9999 } 10023 }
10000 }, 10024 },
10001 "autoload": { 10025 "autoload": {
@@ -10009,16 +10033,16 @@
10009 ], 10033 ],
10010 "authors": [ 10034 "authors": [
10011 { 10035 {
10012 "name": "Symfony Community", 10036 "name": "Fabien Potencier",
10013 "homepage": "http://symfony.com/contributors" 10037 "email": "fabien@symfony.com"
10014 }, 10038 },
10015 { 10039 {
10016 "name": "Doctrine Project", 10040 "name": "Doctrine Project",
10017 "homepage": "http://www.doctrine-project.org" 10041 "homepage": "http://www.doctrine-project.org"
10018 }, 10042 },
10019 { 10043 {
10020 "name": "Fabien Potencier", 10044 "name": "Symfony Community",
10021 "email": "fabien@symfony.com" 10045 "homepage": "http://symfony.com/contributors"
10022 } 10046 }
10023 ], 10047 ],
10024 "description": "Symfony DoctrineFixturesBundle", 10048 "description": "Symfony DoctrineFixturesBundle",
@@ -10027,20 +10051,20 @@
10027 "Fixture", 10051 "Fixture",
10028 "persistence" 10052 "persistence"
10029 ], 10053 ],
10030 "time": "2019-06-12T12:03:37+00:00" 10054 "time": "2019-11-13T15:46:58+00:00"
10031 }, 10055 },
10032 { 10056 {
10033 "name": "friendsofphp/php-cs-fixer", 10057 "name": "friendsofphp/php-cs-fixer",
10034 "version": "v2.15.3", 10058 "version": "v2.16.0",
10035 "source": { 10059 "source": {
10036 "type": "git", 10060 "type": "git",
10037 "url": "https://github.com/FriendsOfPHP/PHP-CS-Fixer.git", 10061 "url": "https://github.com/FriendsOfPHP/PHP-CS-Fixer.git",
10038 "reference": "705490b0f282f21017d73561e9498d2b622ee34c" 10062 "reference": "ceaff36bee1ed3f1bbbedca36d2528c0826c336d"
10039 }, 10063 },
10040 "dist": { 10064 "dist": {
10041 "type": "zip", 10065 "type": "zip",
10042 "url": "https://api.github.com/repos/FriendsOfPHP/PHP-CS-Fixer/zipball/705490b0f282f21017d73561e9498d2b622ee34c", 10066 "url": "https://api.github.com/repos/FriendsOfPHP/PHP-CS-Fixer/zipball/ceaff36bee1ed3f1bbbedca36d2528c0826c336d",
10043 "reference": "705490b0f282f21017d73561e9498d2b622ee34c", 10067 "reference": "ceaff36bee1ed3f1bbbedca36d2528c0826c336d",
10044 "shasum": "" 10068 "shasum": ""
10045 }, 10069 },
10046 "require": { 10070 "require": {
@@ -10116,20 +10140,20 @@
10116 } 10140 }
10117 ], 10141 ],
10118 "description": "A tool to automatically fix PHP code style", 10142 "description": "A tool to automatically fix PHP code style",
10119 "time": "2019-08-31T12:51:54+00:00" 10143 "time": "2019-11-03T13:31:09+00:00"
10120 }, 10144 },
10121 { 10145 {
10122 "name": "m6web/redis-mock", 10146 "name": "m6web/redis-mock",
10123 "version": "v4.6.1", 10147 "version": "v4.7.0",
10124 "source": { 10148 "source": {
10125 "type": "git", 10149 "type": "git",
10126 "url": "https://github.com/M6Web/RedisMock.git", 10150 "url": "https://github.com/M6Web/RedisMock.git",
10127 "reference": "5f8821e8a39055ca4ef0d4b51dbc063aa000a2dc" 10151 "reference": "057ad8e1bea903aee54642e310d900bdb794372c"
10128 }, 10152 },
10129 "dist": { 10153 "dist": {
10130 "type": "zip", 10154 "type": "zip",
10131 "url": "https://api.github.com/repos/M6Web/RedisMock/zipball/5f8821e8a39055ca4ef0d4b51dbc063aa000a2dc", 10155 "url": "https://api.github.com/repos/M6Web/RedisMock/zipball/057ad8e1bea903aee54642e310d900bdb794372c",
10132 "reference": "5f8821e8a39055ca4ef0d4b51dbc063aa000a2dc", 10156 "reference": "057ad8e1bea903aee54642e310d900bdb794372c",
10133 "shasum": "" 10157 "shasum": ""
10134 }, 10158 },
10135 "require": { 10159 "require": {
@@ -10161,20 +10185,20 @@
10161 "mock", 10185 "mock",
10162 "redis" 10186 "redis"
10163 ], 10187 ],
10164 "time": "2019-08-20T13:03:26+00:00" 10188 "time": "2019-11-04T09:03:23+00:00"
10165 }, 10189 },
10166 { 10190 {
10167 "name": "nette/bootstrap", 10191 "name": "nette/bootstrap",
10168 "version": "v3.0.0", 10192 "version": "v3.0.1",
10169 "source": { 10193 "source": {
10170 "type": "git", 10194 "type": "git",
10171 "url": "https://github.com/nette/bootstrap.git", 10195 "url": "https://github.com/nette/bootstrap.git",
10172 "reference": "e1075af05c211915e03e0c86542f3ba5433df4a3" 10196 "reference": "b45a1e33b6a44beb307756522396551e5a9ff249"
10173 }, 10197 },
10174 "dist": { 10198 "dist": {
10175 "type": "zip", 10199 "type": "zip",
10176 "url": "https://api.github.com/repos/nette/bootstrap/zipball/e1075af05c211915e03e0c86542f3ba5433df4a3", 10200 "url": "https://api.github.com/repos/nette/bootstrap/zipball/b45a1e33b6a44beb307756522396551e5a9ff249",
10177 "reference": "e1075af05c211915e03e0c86542f3ba5433df4a3", 10201 "reference": "b45a1e33b6a44beb307756522396551e5a9ff249",
10178 "shasum": "" 10202 "shasum": ""
10179 }, 10203 },
10180 "require": { 10204 "require": {
@@ -10182,6 +10206,9 @@
10182 "nette/utils": "^3.0", 10206 "nette/utils": "^3.0",
10183 "php": ">=7.1" 10207 "php": ">=7.1"
10184 }, 10208 },
10209 "conflict": {
10210 "tracy/tracy": "<2.6"
10211 },
10185 "require-dev": { 10212 "require-dev": {
10186 "latte/latte": "^2.2", 10213 "latte/latte": "^2.2",
10187 "nette/application": "^3.0", 10214 "nette/application": "^3.0",
@@ -10234,7 +10261,7 @@
10234 "configurator", 10261 "configurator",
10235 "nette" 10262 "nette"
10236 ], 10263 ],
10237 "time": "2019-03-26T12:59:07+00:00" 10264 "time": "2019-09-30T08:19:38+00:00"
10238 }, 10265 },
10239 { 10266 {
10240 "name": "nette/di", 10267 "name": "nette/di",
@@ -10555,16 +10582,16 @@
10555 }, 10582 },
10556 { 10583 {
10557 "name": "nette/schema", 10584 "name": "nette/schema",
10558 "version": "v1.0.0", 10585 "version": "v1.0.1",
10559 "source": { 10586 "source": {
10560 "type": "git", 10587 "type": "git",
10561 "url": "https://github.com/nette/schema.git", 10588 "url": "https://github.com/nette/schema.git",
10562 "reference": "6241d8d4da39e825dd6cb5bfbe4242912f4d7e4d" 10589 "reference": "337117df1dade22e2ba1fdc4a4b832c1e9b06b76"
10563 }, 10590 },
10564 "dist": { 10591 "dist": {
10565 "type": "zip", 10592 "type": "zip",
10566 "url": "https://api.github.com/repos/nette/schema/zipball/6241d8d4da39e825dd6cb5bfbe4242912f4d7e4d", 10593 "url": "https://api.github.com/repos/nette/schema/zipball/337117df1dade22e2ba1fdc4a4b832c1e9b06b76",
10567 "reference": "6241d8d4da39e825dd6cb5bfbe4242912f4d7e4d", 10594 "reference": "337117df1dade22e2ba1fdc4a4b832c1e9b06b76",
10568 "shasum": "" 10595 "shasum": ""
10569 }, 10596 },
10570 "require": { 10597 "require": {
@@ -10608,20 +10635,20 @@
10608 "config", 10635 "config",
10609 "nette" 10636 "nette"
10610 ], 10637 ],
10611 "time": "2019-04-03T15:53:25+00:00" 10638 "time": "2019-10-31T20:52:19+00:00"
10612 }, 10639 },
10613 { 10640 {
10614 "name": "nette/utils", 10641 "name": "nette/utils",
10615 "version": "v3.0.1", 10642 "version": "v3.0.2",
10616 "source": { 10643 "source": {
10617 "type": "git", 10644 "type": "git",
10618 "url": "https://github.com/nette/utils.git", 10645 "url": "https://github.com/nette/utils.git",
10619 "reference": "bd961f49b211997202bda1d0fbc410905be370d4" 10646 "reference": "c133e18c922dcf3ad07673077d92d92cef25a148"
10620 }, 10647 },
10621 "dist": { 10648 "dist": {
10622 "type": "zip", 10649 "type": "zip",
10623 "url": "https://api.github.com/repos/nette/utils/zipball/bd961f49b211997202bda1d0fbc410905be370d4", 10650 "url": "https://api.github.com/repos/nette/utils/zipball/c133e18c922dcf3ad07673077d92d92cef25a148",
10624 "reference": "bd961f49b211997202bda1d0fbc410905be370d4", 10651 "reference": "c133e18c922dcf3ad07673077d92d92cef25a148",
10625 "shasum": "" 10652 "shasum": ""
10626 }, 10653 },
10627 "require": { 10654 "require": {
@@ -10637,6 +10664,7 @@
10637 "ext-intl": "to use Strings::webalize(), toAscii(), normalize() and compare()", 10664 "ext-intl": "to use Strings::webalize(), toAscii(), normalize() and compare()",
10638 "ext-json": "to use Nette\\Utils\\Json", 10665 "ext-json": "to use Nette\\Utils\\Json",
10639 "ext-mbstring": "to use Strings::lower() etc...", 10666 "ext-mbstring": "to use Strings::lower() etc...",
10667 "ext-tokenizer": "to use Nette\\Utils\\Reflection::getUseStatements()",
10640 "ext-xml": "to use Strings::length() etc. when mbstring is not available" 10668 "ext-xml": "to use Strings::length() etc. when mbstring is not available"
10641 }, 10669 },
10642 "type": "library", 10670 "type": "library",
@@ -10684,20 +10712,20 @@
10684 "utility", 10712 "utility",
10685 "validation" 10713 "validation"
10686 ], 10714 ],
10687 "time": "2019-03-22T01:00:30+00:00" 10715 "time": "2019-10-21T20:40:16+00:00"
10688 }, 10716 },
10689 { 10717 {
10690 "name": "nikic/php-parser", 10718 "name": "nikic/php-parser",
10691 "version": "v4.2.4", 10719 "version": "v4.3.0",
10692 "source": { 10720 "source": {
10693 "type": "git", 10721 "type": "git",
10694 "url": "https://github.com/nikic/PHP-Parser.git", 10722 "url": "https://github.com/nikic/PHP-Parser.git",
10695 "reference": "97e59c7a16464196a8b9c77c47df68e4a39a45c4" 10723 "reference": "9a9981c347c5c49d6dfe5cf826bb882b824080dc"
10696 }, 10724 },
10697 "dist": { 10725 "dist": {
10698 "type": "zip", 10726 "type": "zip",
10699 "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/97e59c7a16464196a8b9c77c47df68e4a39a45c4", 10727 "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/9a9981c347c5c49d6dfe5cf826bb882b824080dc",
10700 "reference": "97e59c7a16464196a8b9c77c47df68e4a39a45c4", 10728 "reference": "9a9981c347c5c49d6dfe5cf826bb882b824080dc",
10701 "shasum": "" 10729 "shasum": ""
10702 }, 10730 },
10703 "require": { 10731 "require": {
@@ -10705,6 +10733,7 @@
10705 "php": ">=7.0" 10733 "php": ">=7.0"
10706 }, 10734 },
10707 "require-dev": { 10735 "require-dev": {
10736 "ircmaxell/php-yacc": "0.0.5",
10708 "phpunit/phpunit": "^6.5 || ^7.0 || ^8.0" 10737 "phpunit/phpunit": "^6.5 || ^7.0 || ^8.0"
10709 }, 10738 },
10710 "bin": [ 10739 "bin": [
@@ -10713,7 +10742,7 @@
10713 "type": "library", 10742 "type": "library",
10714 "extra": { 10743 "extra": {
10715 "branch-alias": { 10744 "branch-alias": {
10716 "dev-master": "4.2-dev" 10745 "dev-master": "4.3-dev"
10717 } 10746 }
10718 }, 10747 },
10719 "autoload": { 10748 "autoload": {
@@ -10735,7 +10764,7 @@
10735 "parser", 10764 "parser",
10736 "php" 10765 "php"
10737 ], 10766 ],
10738 "time": "2019-09-01T07:51:21+00:00" 10767 "time": "2019-11-08T13:50:10+00:00"
10739 }, 10768 },
10740 { 10769 {
10741 "name": "php-cs-fixer/diff", 10770 "name": "php-cs-fixer/diff",
@@ -10897,16 +10926,16 @@
10897 }, 10926 },
10898 { 10927 {
10899 "name": "phpstan/phpstan", 10928 "name": "phpstan/phpstan",
10900 "version": "0.11.16", 10929 "version": "0.11.19",
10901 "source": { 10930 "source": {
10902 "type": "git", 10931 "type": "git",
10903 "url": "https://github.com/phpstan/phpstan.git", 10932 "url": "https://github.com/phpstan/phpstan.git",
10904 "reference": "635cf20f3b92ce34ee94a8d2f282d62eb9dc6e1b" 10933 "reference": "63cc502f6957b7f74efbac444b4cf219dcadffd7"
10905 }, 10934 },
10906 "dist": { 10935 "dist": {
10907 "type": "zip", 10936 "type": "zip",
10908 "url": "https://api.github.com/repos/phpstan/phpstan/zipball/635cf20f3b92ce34ee94a8d2f282d62eb9dc6e1b", 10937 "url": "https://api.github.com/repos/phpstan/phpstan/zipball/63cc502f6957b7f74efbac444b4cf219dcadffd7",
10909 "reference": "635cf20f3b92ce34ee94a8d2f282d62eb9dc6e1b", 10938 "reference": "63cc502f6957b7f74efbac444b4cf219dcadffd7",
10910 "shasum": "" 10939 "shasum": ""
10911 }, 10940 },
10912 "require": { 10941 "require": {
@@ -10914,6 +10943,7 @@
10914 "jean85/pretty-package-versions": "^1.0.3", 10943 "jean85/pretty-package-versions": "^1.0.3",
10915 "nette/bootstrap": "^2.4 || ^3.0", 10944 "nette/bootstrap": "^2.4 || ^3.0",
10916 "nette/di": "^2.4.7 || ^3.0", 10945 "nette/di": "^2.4.7 || ^3.0",
10946 "nette/neon": "^2.4.3 || ^3.0",
10917 "nette/robot-loader": "^3.0.1", 10947 "nette/robot-loader": "^3.0.1",
10918 "nette/schema": "^1.0", 10948 "nette/schema": "^1.0",
10919 "nette/utils": "^2.4.5 || ^3.0", 10949 "nette/utils": "^2.4.5 || ^3.0",
@@ -10967,7 +10997,7 @@
10967 "MIT" 10997 "MIT"
10968 ], 10998 ],
10969 "description": "PHPStan - PHP Static Analysis Tool", 10999 "description": "PHPStan - PHP Static Analysis Tool",
10970 "time": "2019-09-17T11:19:51+00:00" 11000 "time": "2019-10-22T20:20:22+00:00"
10971 }, 11001 },
10972 { 11002 {
10973 "name": "phpstan/phpstan-doctrine", 11003 "name": "phpstan/phpstan-doctrine",
@@ -11215,16 +11245,16 @@
11215 }, 11245 },
11216 { 11246 {
11217 "name": "symfony/phpunit-bridge", 11247 "name": "symfony/phpunit-bridge",
11218 "version": "v4.3.5", 11248 "version": "v4.3.8",
11219 "source": { 11249 "source": {
11220 "type": "git", 11250 "type": "git",
11221 "url": "https://github.com/symfony/phpunit-bridge.git", 11251 "url": "https://github.com/symfony/phpunit-bridge.git",
11222 "reference": "a7fd9e742c31ac2b607b166c9016bab51a36c574" 11252 "reference": "c216b32261358a820bb4217eb3a20e3f437a484e"
11223 }, 11253 },
11224 "dist": { 11254 "dist": {
11225 "type": "zip", 11255 "type": "zip",
11226 "url": "https://api.github.com/repos/symfony/phpunit-bridge/zipball/a7fd9e742c31ac2b607b166c9016bab51a36c574", 11256 "url": "https://api.github.com/repos/symfony/phpunit-bridge/zipball/c216b32261358a820bb4217eb3a20e3f437a484e",
11227 "reference": "a7fd9e742c31ac2b607b166c9016bab51a36c574", 11257 "reference": "c216b32261358a820bb4217eb3a20e3f437a484e",
11228 "shasum": "" 11258 "shasum": ""
11229 }, 11259 },
11230 "require": { 11260 "require": {
@@ -11276,7 +11306,7 @@
11276 ], 11306 ],
11277 "description": "Symfony PHPUnit Bridge", 11307 "description": "Symfony PHPUnit Bridge",
11278 "homepage": "https://symfony.com", 11308 "homepage": "https://symfony.com",
11279 "time": "2019-10-02T08:36:26+00:00" 11309 "time": "2019-10-30T12:58:49+00:00"
11280 } 11310 }
11281 ], 11311 ],
11282 "aliases": [], 11312 "aliases": [],
diff --git a/docker/php/Dockerfile b/docker/php/Dockerfile
index ffdf33c9..171e12fc 100644
--- a/docker/php/Dockerfile
+++ b/docker/php/Dockerfile
@@ -2,6 +2,7 @@ FROM php:7.2-fpm
2 2
3# Default timezone. To change it, use the argument in the docker-compose.yml file 3# Default timezone. To change it, use the argument in the docker-compose.yml file
4ARG timezone='Europe/Paris' 4ARG timezone='Europe/Paris'
5ARG memorylimit='512M'
5 6
6RUN apt-get update && apt-get install -y \ 7RUN apt-get update && apt-get install -y \
7 libmcrypt-dev \ 8 libmcrypt-dev \
@@ -13,20 +14,26 @@ RUN apt-get update && apt-get install -y \
13 libsqlite3-dev \ 14 libsqlite3-dev \
14 imagemagick \ 15 imagemagick \
15 libmagickwand-dev \ 16 libmagickwand-dev \
16 libtidy-dev 17 libtidy-dev \
18 git
17RUN docker-php-ext-install \ 19RUN docker-php-ext-install \
18 iconv \ 20 iconv \
19 mbstring \ 21 mbstring \
22 gd \
20 intl \ 23 intl \
21 pdo \ 24 pdo \
22 pdo_mysql \ 25 pdo_mysql \
23 pdo_pgsql \ 26 pdo_pgsql \
24 pdo_sqlite \ 27 pdo_sqlite \
25 tidy 28 sockets \
29 tidy \
30 bcmath \
31 zip
26 32
27RUN printf "\n" | pecl install imagick && docker-php-ext-enable imagick 33RUN printf "\n" | pecl install imagick && docker-php-ext-enable imagick
28 34
29RUN echo "date.timezone="$timezone > /usr/local/etc/php/conf.d/date_timezone.ini 35RUN echo "date.timezone="$timezone > /usr/local/etc/php/conf.d/date_timezone.ini
36RUN echo "memory_limit ="$memorylimit > /usr/local/etc/php/conf.d/memory_limit.ini
30 37
31RUN usermod -u 1000 www-data 38RUN usermod -u 1000 www-data
32 39
diff --git a/src/Wallabag/AnnotationBundle/Controller/WallabagAnnotationController.php b/src/Wallabag/AnnotationBundle/Controller/WallabagAnnotationController.php
index 3a7421c7..883ce4a8 100644
--- a/src/Wallabag/AnnotationBundle/Controller/WallabagAnnotationController.php
+++ b/src/Wallabag/AnnotationBundle/Controller/WallabagAnnotationController.php
@@ -16,8 +16,6 @@ class WallabagAnnotationController extends FOSRestController
16 /** 16 /**
17 * Retrieve annotations for an entry. 17 * Retrieve annotations for an entry.
18 * 18 *
19 * @param Entry $entry
20 *
21 * @see Wallabag\ApiBundle\Controller\WallabagRestController 19 * @see Wallabag\ApiBundle\Controller\WallabagRestController
22 * 20 *
23 * @return JsonResponse 21 * @return JsonResponse
@@ -39,9 +37,6 @@ class WallabagAnnotationController extends FOSRestController
39 /** 37 /**
40 * Creates a new annotation. 38 * Creates a new annotation.
41 * 39 *
42 * @param Request $request
43 * @param Entry $entry
44 *
45 * @return JsonResponse 40 * @return JsonResponse
46 * 41 *
47 * @see Wallabag\ApiBundle\Controller\WallabagRestController 42 * @see Wallabag\ApiBundle\Controller\WallabagRestController
@@ -79,9 +74,6 @@ class WallabagAnnotationController extends FOSRestController
79 * 74 *
80 * @ParamConverter("annotation", class="WallabagAnnotationBundle:Annotation") 75 * @ParamConverter("annotation", class="WallabagAnnotationBundle:Annotation")
81 * 76 *
82 * @param Annotation $annotation
83 * @param Request $request
84 *
85 * @return JsonResponse 77 * @return JsonResponse
86 */ 78 */
87 public function putAnnotationAction(Annotation $annotation, Request $request) 79 public function putAnnotationAction(Annotation $annotation, Request $request)
@@ -114,8 +106,6 @@ class WallabagAnnotationController extends FOSRestController
114 * 106 *
115 * @ParamConverter("annotation", class="WallabagAnnotationBundle:Annotation") 107 * @ParamConverter("annotation", class="WallabagAnnotationBundle:Annotation")
116 * 108 *
117 * @param Annotation $annotation
118 *
119 * @return JsonResponse 109 * @return JsonResponse
120 */ 110 */
121 public function deleteAnnotationAction(Annotation $annotation) 111 public function deleteAnnotationAction(Annotation $annotation)
diff --git a/src/Wallabag/ApiBundle/Controller/AnnotationRestController.php b/src/Wallabag/ApiBundle/Controller/AnnotationRestController.php
index 28d55ba9..f59431e4 100644
--- a/src/Wallabag/ApiBundle/Controller/AnnotationRestController.php
+++ b/src/Wallabag/ApiBundle/Controller/AnnotationRestController.php
@@ -20,8 +20,6 @@ class AnnotationRestController extends WallabagRestController
20 * } 20 * }
21 * ) 21 * )
22 * 22 *
23 * @param Entry $entry
24 *
25 * @return JsonResponse 23 * @return JsonResponse
26 */ 24 */
27 public function getAnnotationsAction(Entry $entry) 25 public function getAnnotationsAction(Entry $entry)
@@ -44,9 +42,6 @@ class AnnotationRestController extends WallabagRestController
44 * } 42 * }
45 * ) 43 * )
46 * 44 *
47 * @param Request $request
48 * @param Entry $entry
49 *
50 * @return JsonResponse 45 * @return JsonResponse
51 */ 46 */
52 public function postAnnotationAction(Request $request, Entry $entry) 47 public function postAnnotationAction(Request $request, Entry $entry)
@@ -70,9 +65,6 @@ class AnnotationRestController extends WallabagRestController
70 * 65 *
71 * @ParamConverter("annotation", class="WallabagAnnotationBundle:Annotation") 66 * @ParamConverter("annotation", class="WallabagAnnotationBundle:Annotation")
72 * 67 *
73 * @param Annotation $annotation
74 * @param Request $request
75 *
76 * @return JsonResponse 68 * @return JsonResponse
77 */ 69 */
78 public function putAnnotationAction(Annotation $annotation, Request $request) 70 public function putAnnotationAction(Annotation $annotation, Request $request)
@@ -96,8 +88,6 @@ class AnnotationRestController extends WallabagRestController
96 * 88 *
97 * @ParamConverter("annotation", class="WallabagAnnotationBundle:Annotation") 89 * @ParamConverter("annotation", class="WallabagAnnotationBundle:Annotation")
98 * 90 *
99 * @param Annotation $annotation
100 *
101 * @return JsonResponse 91 * @return JsonResponse
102 */ 92 */
103 public function deleteAnnotationAction(Annotation $annotation) 93 public function deleteAnnotationAction(Annotation $annotation)
diff --git a/src/Wallabag/ApiBundle/Controller/DeveloperController.php b/src/Wallabag/ApiBundle/Controller/DeveloperController.php
index ae7e83da..3224d789 100644
--- a/src/Wallabag/ApiBundle/Controller/DeveloperController.php
+++ b/src/Wallabag/ApiBundle/Controller/DeveloperController.php
@@ -29,8 +29,6 @@ class DeveloperController extends Controller
29 /** 29 /**
30 * Create a client (an app). 30 * Create a client (an app).
31 * 31 *
32 * @param Request $request
33 *
34 * @Route("/developer/client/create", name="developer_create_client") 32 * @Route("/developer/client/create", name="developer_create_client")
35 * 33 *
36 * @return \Symfony\Component\HttpFoundation\Response 34 * @return \Symfony\Component\HttpFoundation\Response
@@ -67,8 +65,6 @@ class DeveloperController extends Controller
67 /** 65 /**
68 * Remove a client. 66 * Remove a client.
69 * 67 *
70 * @param Client $client
71 *
72 * @Route("/developer/client/delete/{id}", requirements={"id" = "\d+"}, name="developer_delete_client") 68 * @Route("/developer/client/delete/{id}", requirements={"id" = "\d+"}, name="developer_delete_client")
73 * 69 *
74 * @return \Symfony\Component\HttpFoundation\RedirectResponse 70 * @return \Symfony\Component\HttpFoundation\RedirectResponse
diff --git a/src/Wallabag/ApiBundle/Controller/EntryRestController.php b/src/Wallabag/ApiBundle/Controller/EntryRestController.php
index 9f933adb..c09fdaeb 100644
--- a/src/Wallabag/ApiBundle/Controller/EntryRestController.php
+++ b/src/Wallabag/ApiBundle/Controller/EntryRestController.php
@@ -822,8 +822,6 @@ class EntryRestController extends WallabagRestController
822 * Retrieve value from the request. 822 * Retrieve value from the request.
823 * Used for POST & PATCH on a an entry. 823 * Used for POST & PATCH on a an entry.
824 * 824 *
825 * @param Request $request
826 *
827 * @return array 825 * @return array
828 */ 826 */
829 private function retrieveValueFromRequest(Request $request) 827 private function retrieveValueFromRequest(Request $request)
diff --git a/src/Wallabag/ApiBundle/Controller/UserRestController.php b/src/Wallabag/ApiBundle/Controller/UserRestController.php
index 1b10a076..922ab7bb 100644
--- a/src/Wallabag/ApiBundle/Controller/UserRestController.php
+++ b/src/Wallabag/ApiBundle/Controller/UserRestController.php
@@ -119,7 +119,6 @@ class UserRestController extends WallabagRestController
119 /** 119 /**
120 * Send user response. 120 * Send user response.
121 * 121 *
122 * @param User $user
123 * @param string $group Used to define with serialized group might be used 122 * @param string $group Used to define with serialized group might be used
124 * @param int $status HTTP Status code to send 123 * @param int $status HTTP Status code to send
125 * 124 *
diff --git a/src/Wallabag/CoreBundle/Command/CleanDuplicatesCommand.php b/src/Wallabag/CoreBundle/Command/CleanDuplicatesCommand.php
index 99170967..64b91520 100644
--- a/src/Wallabag/CoreBundle/Command/CleanDuplicatesCommand.php
+++ b/src/Wallabag/CoreBundle/Command/CleanDuplicatesCommand.php
@@ -63,9 +63,6 @@ class CleanDuplicatesCommand extends ContainerAwareCommand
63 return 0; 63 return 0;
64 } 64 }
65 65
66 /**
67 * @param User $user
68 */
69 private function cleanDuplicates(User $user) 66 private function cleanDuplicates(User $user)
70 { 67 {
71 $em = $this->getContainer()->get('doctrine.orm.entity_manager'); 68 $em = $this->getContainer()->get('doctrine.orm.entity_manager');
diff --git a/src/Wallabag/CoreBundle/Command/GenerateUrlHashesCommand.php b/src/Wallabag/CoreBundle/Command/GenerateUrlHashesCommand.php
index 8f2bff11..a0e9221e 100644
--- a/src/Wallabag/CoreBundle/Command/GenerateUrlHashesCommand.php
+++ b/src/Wallabag/CoreBundle/Command/GenerateUrlHashesCommand.php
@@ -54,9 +54,6 @@ class GenerateUrlHashesCommand extends ContainerAwareCommand
54 return 0; 54 return 0;
55 } 55 }
56 56
57 /**
58 * @param User $user
59 */
60 private function generateHashedUrls(User $user) 57 private function generateHashedUrls(User $user)
61 { 58 {
62 $em = $this->getContainer()->get('doctrine.orm.entity_manager'); 59 $em = $this->getContainer()->get('doctrine.orm.entity_manager');
diff --git a/src/Wallabag/CoreBundle/Command/InstallCommand.php b/src/Wallabag/CoreBundle/Command/InstallCommand.php
index f73e0696..3aa332f1 100644
--- a/src/Wallabag/CoreBundle/Command/InstallCommand.php
+++ b/src/Wallabag/CoreBundle/Command/InstallCommand.php
@@ -326,9 +326,7 @@ class InstallCommand extends ContainerAwareCommand
326 if (0 !== $exitCode) { 326 if (0 !== $exitCode) {
327 $this->getApplication()->setAutoExit(true); 327 $this->getApplication()->setAutoExit(true);
328 328
329 throw new \RuntimeException( 329 throw new \RuntimeException('The command "' . $command . "\" generates some errors: \n\n" . $output->fetch());
330 'The command "' . $command . "\" generates some errors: \n\n"
331 . $output->fetch());
332 } 330 }
333 331
334 return $this; 332 return $this;
diff --git a/src/Wallabag/CoreBundle/Command/ShowUserCommand.php b/src/Wallabag/CoreBundle/Command/ShowUserCommand.php
index c95efbf3..87bccf71 100644
--- a/src/Wallabag/CoreBundle/Command/ShowUserCommand.php
+++ b/src/Wallabag/CoreBundle/Command/ShowUserCommand.php
@@ -46,9 +46,6 @@ class ShowUserCommand extends ContainerAwareCommand
46 return 0; 46 return 0;
47 } 47 }
48 48
49 /**
50 * @param User $user
51 */
52 private function showUser(User $user) 49 private function showUser(User $user)
53 { 50 {
54 $this->io->listing([ 51 $this->io->listing([
diff --git a/src/Wallabag/CoreBundle/Controller/ConfigController.php b/src/Wallabag/CoreBundle/Controller/ConfigController.php
index 0db90ba4..6655ef93 100644
--- a/src/Wallabag/CoreBundle/Controller/ConfigController.php
+++ b/src/Wallabag/CoreBundle/Controller/ConfigController.php
@@ -26,8 +26,6 @@ use Wallabag\CoreBundle\Tools\Utils;
26class ConfigController extends Controller 26class ConfigController extends Controller
27{ 27{
28 /** 28 /**
29 * @param Request $request
30 *
31 * @Route("/config", name="config") 29 * @Route("/config", name="config")
32 */ 30 */
33 public function indexAction(Request $request) 31 public function indexAction(Request $request)
@@ -279,8 +277,6 @@ class ConfigController extends Controller
279 /** 277 /**
280 * Validate OTP code. 278 * Validate OTP code.
281 * 279 *
282 * @param Request $request
283 *
284 * @Route("/config/otp/app/check", name="config_otp_app_check") 280 * @Route("/config/otp/app/check", name="config_otp_app_check")
285 */ 281 */
286 public function otpAppCheckAction(Request $request) 282 public function otpAppCheckAction(Request $request)
@@ -308,8 +304,6 @@ class ConfigController extends Controller
308 } 304 }
309 305
310 /** 306 /**
311 * @param Request $request
312 *
313 * @Route("/generate-token", name="generate_token") 307 * @Route("/generate-token", name="generate_token")
314 * 308 *
315 * @return RedirectResponse|JsonResponse 309 * @return RedirectResponse|JsonResponse
@@ -336,8 +330,6 @@ class ConfigController extends Controller
336 } 330 }
337 331
338 /** 332 /**
339 * @param Request $request
340 *
341 * @Route("/revoke-token", name="revoke_token") 333 * @Route("/revoke-token", name="revoke_token")
342 * 334 *
343 * @return RedirectResponse|JsonResponse 335 * @return RedirectResponse|JsonResponse
@@ -366,8 +358,6 @@ class ConfigController extends Controller
366 /** 358 /**
367 * Deletes a tagging rule and redirect to the config homepage. 359 * Deletes a tagging rule and redirect to the config homepage.
368 * 360 *
369 * @param TaggingRule $rule
370 *
371 * @Route("/tagging-rule/delete/{id}", requirements={"id" = "\d+"}, name="delete_tagging_rule") 361 * @Route("/tagging-rule/delete/{id}", requirements={"id" = "\d+"}, name="delete_tagging_rule")
372 * 362 *
373 * @return RedirectResponse 363 * @return RedirectResponse
@@ -391,8 +381,6 @@ class ConfigController extends Controller
391 /** 381 /**
392 * Edit a tagging rule. 382 * Edit a tagging rule.
393 * 383 *
394 * @param TaggingRule $rule
395 *
396 * @Route("/tagging-rule/edit/{id}", requirements={"id" = "\d+"}, name="edit_tagging_rule") 384 * @Route("/tagging-rule/edit/{id}", requirements={"id" = "\d+"}, name="edit_tagging_rule")
397 * 385 *
398 * @return RedirectResponse 386 * @return RedirectResponse
@@ -459,8 +447,6 @@ class ConfigController extends Controller
459 * 447 *
460 * @Route("/account/delete", name="delete_account") 448 * @Route("/account/delete", name="delete_account")
461 * 449 *
462 * @param Request $request
463 *
464 * @throws AccessDeniedHttpException 450 * @throws AccessDeniedHttpException
465 * 451 *
466 * @return \Symfony\Component\HttpFoundation\RedirectResponse 452 * @return \Symfony\Component\HttpFoundation\RedirectResponse
@@ -491,8 +477,6 @@ class ConfigController extends Controller
491 * 477 *
492 * @Route("/config/view-mode", name="switch_view_mode") 478 * @Route("/config/view-mode", name="switch_view_mode")
493 * 479 *
494 * @param Request $request
495 *
496 * @return \Symfony\Component\HttpFoundation\RedirectResponse 480 * @return \Symfony\Component\HttpFoundation\RedirectResponse
497 */ 481 */
498 public function changeViewModeAction(Request $request) 482 public function changeViewModeAction(Request $request)
@@ -510,8 +494,7 @@ class ConfigController extends Controller
510 /** 494 /**
511 * Change the locale for the current user. 495 * Change the locale for the current user.
512 * 496 *
513 * @param Request $request 497 * @param string $language
514 * @param string $language
515 * 498 *
516 * @Route("/locale/{language}", name="changeLocale") 499 * @Route("/locale/{language}", name="changeLocale")
517 * 500 *
@@ -620,8 +603,6 @@ class ConfigController extends Controller
620 603
621 /** 604 /**
622 * Validate that a rule can be edited/deleted by the current user. 605 * Validate that a rule can be edited/deleted by the current user.
623 *
624 * @param TaggingRule $rule
625 */ 606 */
626 private function validateRuleAction(TaggingRule $rule) 607 private function validateRuleAction(TaggingRule $rule)
627 { 608 {
diff --git a/src/Wallabag/CoreBundle/Controller/EntryController.php b/src/Wallabag/CoreBundle/Controller/EntryController.php
index 5c8ecb40..ba5bfbe2 100644
--- a/src/Wallabag/CoreBundle/Controller/EntryController.php
+++ b/src/Wallabag/CoreBundle/Controller/EntryController.php
@@ -21,8 +21,7 @@ use Wallabag\CoreBundle\Form\Type\SearchEntryType;
21class EntryController extends Controller 21class EntryController extends Controller
22{ 22{
23 /** 23 /**
24 * @param Request $request 24 * @param int $page
25 * @param int $page
26 * 25 *
27 * @Route("/search/{page}", name="search", defaults={"page" = 1}) 26 * @Route("/search/{page}", name="search", defaults={"page" = 1})
28 * 27 *
@@ -53,8 +52,6 @@ class EntryController extends Controller
53 } 52 }
54 53
55 /** 54 /**
56 * @param Request $request
57 *
58 * @Route("/new-entry", name="new_entry") 55 * @Route("/new-entry", name="new_entry")
59 * 56 *
60 * @return \Symfony\Component\HttpFoundation\Response 57 * @return \Symfony\Component\HttpFoundation\Response
@@ -97,8 +94,6 @@ class EntryController extends Controller
97 } 94 }
98 95
99 /** 96 /**
100 * @param Request $request
101 *
102 * @Route("/bookmarklet", name="bookmarklet") 97 * @Route("/bookmarklet", name="bookmarklet")
103 * 98 *
104 * @return \Symfony\Component\HttpFoundation\Response 99 * @return \Symfony\Component\HttpFoundation\Response
@@ -135,9 +130,6 @@ class EntryController extends Controller
135 /** 130 /**
136 * Edit an entry content. 131 * Edit an entry content.
137 * 132 *
138 * @param Request $request
139 * @param Entry $entry
140 *
141 * @Route("/edit/{id}", requirements={"id" = "\d+"}, name="edit") 133 * @Route("/edit/{id}", requirements={"id" = "\d+"}, name="edit")
142 * 134 *
143 * @return \Symfony\Component\HttpFoundation\Response 135 * @return \Symfony\Component\HttpFoundation\Response
@@ -171,8 +163,7 @@ class EntryController extends Controller
171 /** 163 /**
172 * Shows all entries for current user. 164 * Shows all entries for current user.
173 * 165 *
174 * @param Request $request 166 * @param int $page
175 * @param int $page
176 * 167 *
177 * @Route("/all/list/{page}", name="all", defaults={"page" = "1"}) 168 * @Route("/all/list/{page}", name="all", defaults={"page" = "1"})
178 * 169 *
@@ -186,8 +177,7 @@ class EntryController extends Controller
186 /** 177 /**
187 * Shows unread entries for current user. 178 * Shows unread entries for current user.
188 * 179 *
189 * @param Request $request 180 * @param int $page
190 * @param int $page
191 * 181 *
192 * @Route("/unread/list/{page}", name="unread", defaults={"page" = "1"}) 182 * @Route("/unread/list/{page}", name="unread", defaults={"page" = "1"})
193 * 183 *
@@ -206,8 +196,7 @@ class EntryController extends Controller
206 /** 196 /**
207 * Shows read entries for current user. 197 * Shows read entries for current user.
208 * 198 *
209 * @param Request $request 199 * @param int $page
210 * @param int $page
211 * 200 *
212 * @Route("/archive/list/{page}", name="archive", defaults={"page" = "1"}) 201 * @Route("/archive/list/{page}", name="archive", defaults={"page" = "1"})
213 * 202 *
@@ -221,8 +210,7 @@ class EntryController extends Controller
221 /** 210 /**
222 * Shows starred entries for current user. 211 * Shows starred entries for current user.
223 * 212 *
224 * @param Request $request 213 * @param int $page
225 * @param int $page
226 * 214 *
227 * @Route("/starred/list/{page}", name="starred", defaults={"page" = "1"}) 215 * @Route("/starred/list/{page}", name="starred", defaults={"page" = "1"})
228 * 216 *
@@ -236,8 +224,7 @@ class EntryController extends Controller
236 /** 224 /**
237 * Shows untagged articles for current user. 225 * Shows untagged articles for current user.
238 * 226 *
239 * @param Request $request 227 * @param int $page
240 * @param int $page
241 * 228 *
242 * @Route("/untagged/list/{page}", name="untagged", defaults={"page" = "1"}) 229 * @Route("/untagged/list/{page}", name="untagged", defaults={"page" = "1"})
243 * 230 *
@@ -276,8 +263,6 @@ class EntryController extends Controller
276 /** 263 /**
277 * Shows entry content. 264 * Shows entry content.
278 * 265 *
279 * @param Entry $entry
280 *
281 * @Route("/view/{id}", requirements={"id" = "\d+"}, name="view") 266 * @Route("/view/{id}", requirements={"id" = "\d+"}, name="view")
282 * 267 *
283 * @return \Symfony\Component\HttpFoundation\Response 268 * @return \Symfony\Component\HttpFoundation\Response
@@ -296,8 +281,6 @@ class EntryController extends Controller
296 * Reload an entry. 281 * Reload an entry.
297 * Refetch content from the website and make it readable again. 282 * Refetch content from the website and make it readable again.
298 * 283 *
299 * @param Entry $entry
300 *
301 * @Route("/reload/{id}", requirements={"id" = "\d+"}, name="reload_entry") 284 * @Route("/reload/{id}", requirements={"id" = "\d+"}, name="reload_entry")
302 * 285 *
303 * @return \Symfony\Component\HttpFoundation\RedirectResponse 286 * @return \Symfony\Component\HttpFoundation\RedirectResponse
@@ -330,9 +313,6 @@ class EntryController extends Controller
330 /** 313 /**
331 * Changes read status for an entry. 314 * Changes read status for an entry.
332 * 315 *
333 * @param Request $request
334 * @param Entry $entry
335 *
336 * @Route("/archive/{id}", requirements={"id" = "\d+"}, name="archive_entry") 316 * @Route("/archive/{id}", requirements={"id" = "\d+"}, name="archive_entry")
337 * 317 *
338 * @return \Symfony\Component\HttpFoundation\RedirectResponse 318 * @return \Symfony\Component\HttpFoundation\RedirectResponse
@@ -362,9 +342,6 @@ class EntryController extends Controller
362 /** 342 /**
363 * Changes starred status for an entry. 343 * Changes starred status for an entry.
364 * 344 *
365 * @param Request $request
366 * @param Entry $entry
367 *
368 * @Route("/star/{id}", requirements={"id" = "\d+"}, name="star_entry") 345 * @Route("/star/{id}", requirements={"id" = "\d+"}, name="star_entry")
369 * 346 *
370 * @return \Symfony\Component\HttpFoundation\RedirectResponse 347 * @return \Symfony\Component\HttpFoundation\RedirectResponse
@@ -395,8 +372,6 @@ class EntryController extends Controller
395 /** 372 /**
396 * Deletes entry and redirect to the homepage or the last viewed page. 373 * Deletes entry and redirect to the homepage or the last viewed page.
397 * 374 *
398 * @param Entry $entry
399 *
400 * @Route("/delete/{id}", requirements={"id" = "\d+"}, name="delete_entry") 375 * @Route("/delete/{id}", requirements={"id" = "\d+"}, name="delete_entry")
401 * 376 *
402 * @return \Symfony\Component\HttpFoundation\RedirectResponse 377 * @return \Symfony\Component\HttpFoundation\RedirectResponse
@@ -437,8 +412,6 @@ class EntryController extends Controller
437 /** 412 /**
438 * Get public URL for entry (and generate it if necessary). 413 * Get public URL for entry (and generate it if necessary).
439 * 414 *
440 * @param Entry $entry
441 *
442 * @Route("/share/{id}", requirements={"id" = "\d+"}, name="share") 415 * @Route("/share/{id}", requirements={"id" = "\d+"}, name="share")
443 * 416 *
444 * @return \Symfony\Component\HttpFoundation\Response 417 * @return \Symfony\Component\HttpFoundation\Response
@@ -463,8 +436,6 @@ class EntryController extends Controller
463 /** 436 /**
464 * Disable public sharing for an entry. 437 * Disable public sharing for an entry.
465 * 438 *
466 * @param Entry $entry
467 *
468 * @Route("/share/delete/{id}", requirements={"id" = "\d+"}, name="delete_share") 439 * @Route("/share/delete/{id}", requirements={"id" = "\d+"}, name="delete_share")
469 * 440 *
470 * @return \Symfony\Component\HttpFoundation\Response 441 * @return \Symfony\Component\HttpFoundation\Response
@@ -487,8 +458,6 @@ class EntryController extends Controller
487 /** 458 /**
488 * Ability to view a content publicly. 459 * Ability to view a content publicly.
489 * 460 *
490 * @param Entry $entry
491 *
492 * @Route("/share/{uid}", requirements={"uid" = ".+"}, name="share_entry") 461 * @Route("/share/{uid}", requirements={"uid" = ".+"}, name="share_entry")
493 * @Cache(maxage="25200", smaxage="25200", public=true) 462 * @Cache(maxage="25200", smaxage="25200", public=true)
494 * 463 *
@@ -510,9 +479,8 @@ class EntryController extends Controller
510 * Global method to retrieve entries depending on the given type 479 * Global method to retrieve entries depending on the given type
511 * It returns the response to be send. 480 * It returns the response to be send.
512 * 481 *
513 * @param string $type Entries type: unread, starred or archive 482 * @param string $type Entries type: unread, starred or archive
514 * @param Request $request 483 * @param int $page
515 * @param int $page
516 * 484 *
517 * @return \Symfony\Component\HttpFoundation\Response 485 * @return \Symfony\Component\HttpFoundation\Response
518 */ 486 */
@@ -567,6 +535,9 @@ class EntryController extends Controller
567 } 535 }
568 } 536 }
569 537
538 $nbEntriesUntagged = $this->get('wallabag_core.entry_repository')
539 ->countUntaggedEntriesByUser($this->getUser()->getId());
540
570 return $this->render( 541 return $this->render(
571 'WallabagCoreBundle:Entry:entries.html.twig', [ 542 'WallabagCoreBundle:Entry:entries.html.twig', [
572 'form' => $form->createView(), 543 'form' => $form->createView(),
@@ -574,6 +545,7 @@ class EntryController extends Controller
574 'currentPage' => $page, 545 'currentPage' => $page,
575 'searchTerm' => $searchTerm, 546 'searchTerm' => $searchTerm,
576 'isFiltered' => $form->isSubmitted(), 547 'isFiltered' => $form->isSubmitted(),
548 'nbEntriesUntagged' => $nbEntriesUntagged,
577 ] 549 ]
578 ); 550 );
579 } 551 }
@@ -582,7 +554,6 @@ class EntryController extends Controller
582 * Fetch content and update entry. 554 * Fetch content and update entry.
583 * In case it fails, $entry->getContent will return an error message. 555 * In case it fails, $entry->getContent will return an error message.
584 * 556 *
585 * @param Entry $entry
586 * @param string $prefixMessage Should be the translation key: entry_saved or entry_reloaded 557 * @param string $prefixMessage Should be the translation key: entry_saved or entry_reloaded
587 */ 558 */
588 private function updateEntry(Entry $entry, $prefixMessage = 'entry_saved') 559 private function updateEntry(Entry $entry, $prefixMessage = 'entry_saved')
@@ -613,8 +584,6 @@ class EntryController extends Controller
613 584
614 /** 585 /**
615 * Check if the logged user can manage the given entry. 586 * Check if the logged user can manage the given entry.
616 *
617 * @param Entry $entry
618 */ 587 */
619 private function checkUserAction(Entry $entry) 588 private function checkUserAction(Entry $entry)
620 { 589 {
@@ -626,8 +595,6 @@ class EntryController extends Controller
626 /** 595 /**
627 * Check for existing entry, if it exists, redirect to it with a message. 596 * Check for existing entry, if it exists, redirect to it with a message.
628 * 597 *
629 * @param Entry $entry
630 *
631 * @return Entry|bool 598 * @return Entry|bool
632 */ 599 */
633 private function checkIfEntryAlreadyExists(Entry $entry) 600 private function checkIfEntryAlreadyExists(Entry $entry)
diff --git a/src/Wallabag/CoreBundle/Controller/ExportController.php b/src/Wallabag/CoreBundle/Controller/ExportController.php
index 9ff35ff5..282fd733 100644
--- a/src/Wallabag/CoreBundle/Controller/ExportController.php
+++ b/src/Wallabag/CoreBundle/Controller/ExportController.php
@@ -17,7 +17,6 @@ class ExportController extends Controller
17 /** 17 /**
18 * Gets one entry content. 18 * Gets one entry content.
19 * 19 *
20 * @param Entry $entry
21 * @param string $format 20 * @param string $format
22 * 21 *
23 * @Route("/export/{id}.{format}", name="export_entry", requirements={ 22 * @Route("/export/{id}.{format}", name="export_entry", requirements={
diff --git a/src/Wallabag/CoreBundle/Controller/FeedController.php b/src/Wallabag/CoreBundle/Controller/FeedController.php
index 9f671735..95c3427b 100644
--- a/src/Wallabag/CoreBundle/Controller/FeedController.php
+++ b/src/Wallabag/CoreBundle/Controller/FeedController.php
@@ -23,7 +23,6 @@ class FeedController extends Controller
23 * 23 *
24 * @ParamConverter("user", class="WallabagUserBundle:User", converter="username_feed_token_converter") 24 * @ParamConverter("user", class="WallabagUserBundle:User", converter="username_feed_token_converter")
25 * 25 *
26 * @param User $user
27 * @param $page 26 * @param $page
28 * 27 *
29 * @return \Symfony\Component\HttpFoundation\Response 28 * @return \Symfony\Component\HttpFoundation\Response
@@ -40,7 +39,6 @@ class FeedController extends Controller
40 * 39 *
41 * @ParamConverter("user", class="WallabagUserBundle:User", converter="username_feed_token_converter") 40 * @ParamConverter("user", class="WallabagUserBundle:User", converter="username_feed_token_converter")
42 * 41 *
43 * @param User $user
44 * @param $page 42 * @param $page
45 * 43 *
46 * @return \Symfony\Component\HttpFoundation\Response 44 * @return \Symfony\Component\HttpFoundation\Response
@@ -57,7 +55,6 @@ class FeedController extends Controller
57 * 55 *
58 * @ParamConverter("user", class="WallabagUserBundle:User", converter="username_feed_token_converter") 56 * @ParamConverter("user", class="WallabagUserBundle:User", converter="username_feed_token_converter")
59 * 57 *
60 * @param User $user
61 * @param $page 58 * @param $page
62 * 59 *
63 * @return \Symfony\Component\HttpFoundation\Response 60 * @return \Symfony\Component\HttpFoundation\Response
@@ -147,7 +144,6 @@ class FeedController extends Controller
147 * It returns the response to be send. 144 * It returns the response to be send.
148 * 145 *
149 * @param string $type Entries type: unread, starred or archive 146 * @param string $type Entries type: unread, starred or archive
150 * @param User $user
151 * @param int $page 147 * @param int $page
152 * 148 *
153 * @return \Symfony\Component\HttpFoundation\Response 149 * @return \Symfony\Component\HttpFoundation\Response
diff --git a/src/Wallabag/CoreBundle/Controller/SiteCredentialController.php b/src/Wallabag/CoreBundle/Controller/SiteCredentialController.php
index 51bc1d94..4320c5ff 100644
--- a/src/Wallabag/CoreBundle/Controller/SiteCredentialController.php
+++ b/src/Wallabag/CoreBundle/Controller/SiteCredentialController.php
@@ -36,8 +36,6 @@ class SiteCredentialController extends Controller
36 * 36 *
37 * @Route("/new", name="site_credentials_new", methods={"GET", "POST"}) 37 * @Route("/new", name="site_credentials_new", methods={"GET", "POST"})
38 * 38 *
39 * @param Request $request
40 *
41 * @return \Symfony\Component\HttpFoundation\Response 39 * @return \Symfony\Component\HttpFoundation\Response
42 */ 40 */
43 public function newAction(Request $request) 41 public function newAction(Request $request)
@@ -76,9 +74,6 @@ class SiteCredentialController extends Controller
76 * 74 *
77 * @Route("/{id}/edit", name="site_credentials_edit", methods={"GET", "POST"}) 75 * @Route("/{id}/edit", name="site_credentials_edit", methods={"GET", "POST"})
78 * 76 *
79 * @param Request $request
80 * @param SiteCredential $siteCredential
81 *
82 * @return \Symfony\Component\HttpFoundation\Response 77 * @return \Symfony\Component\HttpFoundation\Response
83 */ 78 */
84 public function editAction(Request $request, SiteCredential $siteCredential) 79 public function editAction(Request $request, SiteCredential $siteCredential)
@@ -119,9 +114,6 @@ class SiteCredentialController extends Controller
119 * 114 *
120 * @Route("/{id}", name="site_credentials_delete", methods={"DELETE"}) 115 * @Route("/{id}", name="site_credentials_delete", methods={"DELETE"})
121 * 116 *
122 * @param Request $request
123 * @param SiteCredential $siteCredential
124 *
125 * @return \Symfony\Component\HttpFoundation\RedirectResponse 117 * @return \Symfony\Component\HttpFoundation\RedirectResponse
126 */ 118 */
127 public function deleteAction(Request $request, SiteCredential $siteCredential) 119 public function deleteAction(Request $request, SiteCredential $siteCredential)
diff --git a/src/Wallabag/CoreBundle/Controller/TagController.php b/src/Wallabag/CoreBundle/Controller/TagController.php
index 90d36d71..a6ad131f 100644
--- a/src/Wallabag/CoreBundle/Controller/TagController.php
+++ b/src/Wallabag/CoreBundle/Controller/TagController.php
@@ -16,9 +16,6 @@ use Wallabag\CoreBundle\Form\Type\RenameTagType;
16class TagController extends Controller 16class TagController extends Controller
17{ 17{
18 /** 18 /**
19 * @param Request $request
20 * @param Entry $entry
21 *
22 * @Route("/new-tag/{entry}", requirements={"entry" = "\d+"}, name="new_tag") 19 * @Route("/new-tag/{entry}", requirements={"entry" = "\d+"}, name="new_tag")
23 * 20 *
24 * @return \Symfony\Component\HttpFoundation\Response 21 * @return \Symfony\Component\HttpFoundation\Response
@@ -103,7 +100,6 @@ class TagController extends Controller
103 } 100 }
104 101
105 /** 102 /**
106 * @param Tag $tag
107 * @param int $page 103 * @param int $page
108 * 104 *
109 * @Route("/tag/list/{slug}/{page}", name="tag_entries", defaults={"page" = "1"}) 105 * @Route("/tag/list/{slug}/{page}", name="tag_entries", defaults={"page" = "1"})
@@ -145,9 +141,6 @@ class TagController extends Controller
145 * Rename a given tag with a new label 141 * Rename a given tag with a new label
146 * Create a new tag with the new name and drop the old one. 142 * Create a new tag with the new name and drop the old one.
147 * 143 *
148 * @param Tag $tag
149 * @param Request $request
150 *
151 * @Route("/tag/rename/{slug}", name="tag_rename") 144 * @Route("/tag/rename/{slug}", name="tag_rename")
152 * @ParamConverter("tag", options={"mapping": {"slug": "slug"}}) 145 * @ParamConverter("tag", options={"mapping": {"slug": "slug"}})
153 * 146 *
diff --git a/src/Wallabag/CoreBundle/Entity/Config.php b/src/Wallabag/CoreBundle/Entity/Config.php
index 35be9655..fe7942ee 100644
--- a/src/Wallabag/CoreBundle/Entity/Config.php
+++ b/src/Wallabag/CoreBundle/Entity/Config.php
@@ -371,8 +371,6 @@ class Config
371 } 371 }
372 372
373 /** 373 /**
374 * @param TaggingRule $rule
375 *
376 * @return Config 374 * @return Config
377 */ 375 */
378 public function addTaggingRule(TaggingRule $rule) 376 public function addTaggingRule(TaggingRule $rule)
diff --git a/src/Wallabag/CoreBundle/Entity/Entry.php b/src/Wallabag/CoreBundle/Entity/Entry.php
index 4acec261..beda581a 100644
--- a/src/Wallabag/CoreBundle/Entity/Entry.php
+++ b/src/Wallabag/CoreBundle/Entity/Entry.php
@@ -550,8 +550,6 @@ class Entry
550 * Set created_at. 550 * Set created_at.
551 * Only used when importing data from an other service. 551 * Only used when importing data from an other service.
552 * 552 *
553 * @param \DateTime $createdAt
554 *
555 * @return Entry 553 * @return Entry
556 */ 554 */
557 public function setCreatedAt(\DateTime $createdAt) 555 public function setCreatedAt(\DateTime $createdAt)
@@ -623,9 +621,6 @@ class Entry
623 return $this->annotations; 621 return $this->annotations;
624 } 622 }
625 623
626 /**
627 * @param Annotation $annotation
628 */
629 public function setAnnotation(Annotation $annotation) 624 public function setAnnotation(Annotation $annotation)
630 { 625 {
631 $this->annotations[] = $annotation; 626 $this->annotations[] = $annotation;
@@ -702,9 +697,6 @@ class Entry
702 return $data; 697 return $data;
703 } 698 }
704 699
705 /**
706 * @param Tag $tag
707 */
708 public function addTag(Tag $tag) 700 public function addTag(Tag $tag)
709 { 701 {
710 if ($this->tags->contains($tag)) { 702 if ($this->tags->contains($tag)) {
@@ -725,8 +717,6 @@ class Entry
725 717
726 /** 718 /**
727 * Remove the given tag from the entry (if the tag is associated). 719 * Remove the given tag from the entry (if the tag is associated).
728 *
729 * @param Tag $tag
730 */ 720 */
731 public function removeTag(Tag $tag) 721 public function removeTag(Tag $tag)
732 { 722 {
@@ -874,8 +864,6 @@ class Entry
874 } 864 }
875 865
876 /** 866 /**
877 * @param \Datetime $publishedAt
878 *
879 * @return Entry 867 * @return Entry
880 */ 868 */
881 public function setPublishedAt(\Datetime $publishedAt) 869 public function setPublishedAt(\Datetime $publishedAt)
diff --git a/src/Wallabag/CoreBundle/Entity/Tag.php b/src/Wallabag/CoreBundle/Entity/Tag.php
index 3ccb20a5..9fb2f94f 100644
--- a/src/Wallabag/CoreBundle/Entity/Tag.php
+++ b/src/Wallabag/CoreBundle/Entity/Tag.php
@@ -104,9 +104,6 @@ class Tag
104 return $this->slug; 104 return $this->slug;
105 } 105 }
106 106
107 /**
108 * @param Entry $entry
109 */
110 public function addEntry(Entry $entry) 107 public function addEntry(Entry $entry)
111 { 108 {
112 if ($this->entries->contains($entry)) { 109 if ($this->entries->contains($entry)) {
@@ -117,9 +114,6 @@ class Tag
117 $entry->addTag($this); 114 $entry->addTag($this);
118 } 115 }
119 116
120 /**
121 * @param Entry $entry
122 */
123 public function removeEntry(Entry $entry) 117 public function removeEntry(Entry $entry)
124 { 118 {
125 if (!$this->entries->contains($entry)) { 119 if (!$this->entries->contains($entry)) {
diff --git a/src/Wallabag/CoreBundle/Entity/TaggingRule.php b/src/Wallabag/CoreBundle/Entity/TaggingRule.php
index eac53fa3..f7166087 100644
--- a/src/Wallabag/CoreBundle/Entity/TaggingRule.php
+++ b/src/Wallabag/CoreBundle/Entity/TaggingRule.php
@@ -121,8 +121,6 @@ class TaggingRule
121 /** 121 /**
122 * Set config. 122 * Set config.
123 * 123 *
124 * @param Config $config
125 *
126 * @return TaggingRule 124 * @return TaggingRule
127 */ 125 */
128 public function setConfig(Config $config) 126 public function setConfig(Config $config)
diff --git a/src/Wallabag/CoreBundle/Event/Listener/UserLocaleListener.php b/src/Wallabag/CoreBundle/Event/Listener/UserLocaleListener.php
index dc1db5c7..1b5d61ad 100644
--- a/src/Wallabag/CoreBundle/Event/Listener/UserLocaleListener.php
+++ b/src/Wallabag/CoreBundle/Event/Listener/UserLocaleListener.php
@@ -25,9 +25,6 @@ class UserLocaleListener
25 $this->session = $session; 25 $this->session = $session;
26 } 26 }
27 27
28 /**
29 * @param InteractiveLoginEvent $event
30 */
31 public function onInteractiveLogin(InteractiveLoginEvent $event) 28 public function onInteractiveLogin(InteractiveLoginEvent $event)
32 { 29 {
33 $user = $event->getAuthenticationToken()->getUser(); 30 $user = $event->getAuthenticationToken()->getUser();
diff --git a/src/Wallabag/CoreBundle/Event/Subscriber/CustomDoctrineORMSubscriber.php b/src/Wallabag/CoreBundle/Event/Subscriber/CustomDoctrineORMSubscriber.php
index cabb3eca..b8f6e1d6 100644
--- a/src/Wallabag/CoreBundle/Event/Subscriber/CustomDoctrineORMSubscriber.php
+++ b/src/Wallabag/CoreBundle/Event/Subscriber/CustomDoctrineORMSubscriber.php
@@ -12,9 +12,6 @@ use Symfony\Component\EventDispatcher\EventSubscriberInterface;
12 */ 12 */
13class CustomDoctrineORMSubscriber extends DoctrineORMSubscriber implements EventSubscriberInterface 13class CustomDoctrineORMSubscriber extends DoctrineORMSubscriber implements EventSubscriberInterface
14{ 14{
15 /**
16 * @param GetFilterConditionEvent $event
17 */
18 public function filterDateRange(GetFilterConditionEvent $event) 15 public function filterDateRange(GetFilterConditionEvent $event)
19 { 16 {
20 $expr = $event->getFilterQuery()->getExpressionBuilder(); 17 $expr = $event->getFilterQuery()->getExpressionBuilder();
diff --git a/src/Wallabag/CoreBundle/Event/Subscriber/DownloadImagesSubscriber.php b/src/Wallabag/CoreBundle/Event/Subscriber/DownloadImagesSubscriber.php
index 1dd0a1a4..ef8d7d3b 100644
--- a/src/Wallabag/CoreBundle/Event/Subscriber/DownloadImagesSubscriber.php
+++ b/src/Wallabag/CoreBundle/Event/Subscriber/DownloadImagesSubscriber.php
@@ -35,8 +35,6 @@ class DownloadImagesSubscriber implements EventSubscriberInterface
35 35
36 /** 36 /**
37 * Download images and updated the data into the entry. 37 * Download images and updated the data into the entry.
38 *
39 * @param EntrySavedEvent $event
40 */ 38 */
41 public function onEntrySaved(EntrySavedEvent $event) 39 public function onEntrySaved(EntrySavedEvent $event)
42 { 40 {
@@ -69,8 +67,6 @@ class DownloadImagesSubscriber implements EventSubscriberInterface
69 67
70 /** 68 /**
71 * Remove images related to the entry. 69 * Remove images related to the entry.
72 *
73 * @param EntryDeletedEvent $event
74 */ 70 */
75 public function onEntryDeleted(EntryDeletedEvent $event) 71 public function onEntryDeleted(EntryDeletedEvent $event)
76 { 72 {
@@ -88,8 +84,6 @@ class DownloadImagesSubscriber implements EventSubscriberInterface
88 * 84 *
89 * @todo If we want to add async download, it should be done in that method 85 * @todo If we want to add async download, it should be done in that method
90 * 86 *
91 * @param Entry $entry
92 *
93 * @return string|false False in case of async 87 * @return string|false False in case of async
94 */ 88 */
95 private function downloadImages(Entry $entry) 89 private function downloadImages(Entry $entry)
@@ -106,8 +100,6 @@ class DownloadImagesSubscriber implements EventSubscriberInterface
106 * 100 *
107 * @todo If we want to add async download, it should be done in that method 101 * @todo If we want to add async download, it should be done in that method
108 * 102 *
109 * @param Entry $entry
110 *
111 * @return string|false False in case of async 103 * @return string|false False in case of async
112 */ 104 */
113 private function downloadPreviewImage(Entry $entry) 105 private function downloadPreviewImage(Entry $entry)
diff --git a/src/Wallabag/CoreBundle/Event/Subscriber/SQLiteCascadeDeleteSubscriber.php b/src/Wallabag/CoreBundle/Event/Subscriber/SQLiteCascadeDeleteSubscriber.php
index 9c1d8a1d..dcadeedf 100644
--- a/src/Wallabag/CoreBundle/Event/Subscriber/SQLiteCascadeDeleteSubscriber.php
+++ b/src/Wallabag/CoreBundle/Event/Subscriber/SQLiteCascadeDeleteSubscriber.php
@@ -18,9 +18,6 @@ class SQLiteCascadeDeleteSubscriber implements EventSubscriber
18{ 18{
19 private $doctrine; 19 private $doctrine;
20 20
21 /**
22 * @param \Doctrine\Bundle\DoctrineBundle\Registry $doctrine
23 */
24 public function __construct(Registry $doctrine) 21 public function __construct(Registry $doctrine)
25 { 22 {
26 $this->doctrine = $doctrine; 23 $this->doctrine = $doctrine;
@@ -39,8 +36,6 @@ class SQLiteCascadeDeleteSubscriber implements EventSubscriber
39 /** 36 /**
40 * We removed everything related to the upcoming removed entry because SQLite can't handle it on it own. 37 * We removed everything related to the upcoming removed entry because SQLite can't handle it on it own.
41 * We do it in the preRemove, because we can't retrieve tags in the postRemove (because the entry id is gone). 38 * We do it in the preRemove, because we can't retrieve tags in the postRemove (because the entry id is gone).
42 *
43 * @param LifecycleEventArgs $args
44 */ 39 */
45 public function preRemove(LifecycleEventArgs $args) 40 public function preRemove(LifecycleEventArgs $args)
46 { 41 {
diff --git a/src/Wallabag/CoreBundle/Form/Type/EntryFilterType.php b/src/Wallabag/CoreBundle/Form/Type/EntryFilterType.php
index 8a575b68..17070c59 100644
--- a/src/Wallabag/CoreBundle/Form/Type/EntryFilterType.php
+++ b/src/Wallabag/CoreBundle/Form/Type/EntryFilterType.php
@@ -23,9 +23,6 @@ class EntryFilterType extends AbstractType
23 23
24 /** 24 /**
25 * Repository & user are used to get a list of language entries for this user. 25 * Repository & user are used to get a list of language entries for this user.
26 *
27 * @param EntityRepository $entryRepository
28 * @param TokenStorageInterface $tokenStorage
29 */ 26 */
30 public function __construct(EntityRepository $entryRepository, TokenStorageInterface $tokenStorage) 27 public function __construct(EntityRepository $entryRepository, TokenStorageInterface $tokenStorage)
31 { 28 {
diff --git a/src/Wallabag/CoreBundle/GuzzleSiteAuthenticator/GrabySiteConfigBuilder.php b/src/Wallabag/CoreBundle/GuzzleSiteAuthenticator/GrabySiteConfigBuilder.php
index c7502bac..b0be2176 100644
--- a/src/Wallabag/CoreBundle/GuzzleSiteAuthenticator/GrabySiteConfigBuilder.php
+++ b/src/Wallabag/CoreBundle/GuzzleSiteAuthenticator/GrabySiteConfigBuilder.php
@@ -34,11 +34,6 @@ class GrabySiteConfigBuilder implements SiteConfigBuilder
34 34
35 /** 35 /**
36 * GrabySiteConfigBuilder constructor. 36 * GrabySiteConfigBuilder constructor.
37 *
38 * @param ConfigBuilder $grabyConfigBuilder
39 * @param TokenStorage $token
40 * @param SiteCredentialRepository $credentialRepository
41 * @param LoggerInterface $logger
42 */ 37 */
43 public function __construct(ConfigBuilder $grabyConfigBuilder, TokenStorage $token, SiteCredentialRepository $credentialRepository, LoggerInterface $logger) 38 public function __construct(ConfigBuilder $grabyConfigBuilder, TokenStorage $token, SiteCredentialRepository $credentialRepository, LoggerInterface $logger)
44 { 39 {
diff --git a/src/Wallabag/CoreBundle/Helper/ContentProxy.php b/src/Wallabag/CoreBundle/Helper/ContentProxy.php
index 5901df8b..9c6fa8db 100644
--- a/src/Wallabag/CoreBundle/Helper/ContentProxy.php
+++ b/src/Wallabag/CoreBundle/Helper/ContentProxy.php
@@ -86,7 +86,6 @@ class ContentProxy
86 /** 86 /**
87 * Use a Symfony validator to ensure the language is well formatted. 87 * Use a Symfony validator to ensure the language is well formatted.
88 * 88 *
89 * @param Entry $entry
90 * @param string $value Language to validate and save 89 * @param string $value Language to validate and save
91 */ 90 */
92 public function updateLanguage(Entry $entry, $value) 91 public function updateLanguage(Entry $entry, $value)
@@ -112,7 +111,6 @@ class ContentProxy
112 /** 111 /**
113 * Use a Symfony validator to ensure the preview picture is a real url. 112 * Use a Symfony validator to ensure the preview picture is a real url.
114 * 113 *
115 * @param Entry $entry
116 * @param string $value URL to validate and save 114 * @param string $value URL to validate and save
117 */ 115 */
118 public function updatePreviewPicture(Entry $entry, $value) 116 public function updatePreviewPicture(Entry $entry, $value)
@@ -134,7 +132,6 @@ class ContentProxy
134 /** 132 /**
135 * Update date. 133 * Update date.
136 * 134 *
137 * @param Entry $entry
138 * @param string $value Date to validate and save 135 * @param string $value Date to validate and save
139 */ 136 */
140 public function updatePublishedAt(Entry $entry, $value) 137 public function updatePublishedAt(Entry $entry, $value)
@@ -161,8 +158,6 @@ class ContentProxy
161 158
162 /** 159 /**
163 * Helper to extract and save host from entry url. 160 * Helper to extract and save host from entry url.
164 *
165 * @param Entry $entry
166 */ 161 */
167 public function setEntryDomainName(Entry $entry) 162 public function setEntryDomainName(Entry $entry)
168 { 163 {
@@ -176,8 +171,6 @@ class ContentProxy
176 * Helper to set a default title using: 171 * Helper to set a default title using:
177 * - url basename, if applicable 172 * - url basename, if applicable
178 * - hostname. 173 * - hostname.
179 *
180 * @param Entry $entry
181 */ 174 */
182 public function setDefaultEntryTitle(Entry $entry) 175 public function setDefaultEntryTitle(Entry $entry)
183 { 176 {
@@ -333,7 +326,6 @@ class ContentProxy
333 * Update the origin_url field when a redirection occurs 326 * Update the origin_url field when a redirection occurs
334 * This field is set if it is empty and new url does not match ignore list. 327 * This field is set if it is empty and new url does not match ignore list.
335 * 328 *
336 * @param Entry $entry
337 * @param string $url 329 * @param string $url
338 */ 330 */
339 private function updateOriginUrl(Entry $entry, $url) 331 private function updateOriginUrl(Entry $entry, $url)
@@ -441,8 +433,6 @@ class ContentProxy
441 /** 433 /**
442 * Validate that the given content has at least a title, an html and a url. 434 * Validate that the given content has at least a title, an html and a url.
443 * 435 *
444 * @param array $content
445 *
446 * @return bool true if valid otherwise false 436 * @return bool true if valid otherwise false
447 */ 437 */
448 private function validateContent(array $content) 438 private function validateContent(array $content)
diff --git a/src/Wallabag/CoreBundle/Helper/DownloadImages.php b/src/Wallabag/CoreBundle/Helper/DownloadImages.php
index 1d361d6d..1d98fd1a 100644
--- a/src/Wallabag/CoreBundle/Helper/DownloadImages.php
+++ b/src/Wallabag/CoreBundle/Helper/DownloadImages.php
@@ -213,8 +213,6 @@ class DownloadImages
213 /** 213 /**
214 * Get images urls from the srcset image attribute. 214 * Get images urls from the srcset image attribute.
215 * 215 *
216 * @param Crawler $imagesCrawler
217 *
218 * @return array An array of urls 216 * @return array An array of urls
219 */ 217 */
220 private static function getSrcsetUrls(Crawler $imagesCrawler) 218 private static function getSrcsetUrls(Crawler $imagesCrawler)
diff --git a/src/Wallabag/CoreBundle/Helper/HttpClientFactory.php b/src/Wallabag/CoreBundle/Helper/HttpClientFactory.php
index b8e95381..ea864acb 100644
--- a/src/Wallabag/CoreBundle/Helper/HttpClientFactory.php
+++ b/src/Wallabag/CoreBundle/Helper/HttpClientFactory.php
@@ -27,9 +27,7 @@ class HttpClientFactory implements ClientFactory
27 /** 27 /**
28 * HttpClientFactory constructor. 28 * HttpClientFactory constructor.
29 * 29 *
30 * @param \GuzzleHttp\Cookie\CookieJar $cookieJar 30 * @param string $restrictedAccess This param is a kind of boolean. Values: 0 or 1
31 * @param string $restrictedAccess This param is a kind of boolean. Values: 0 or 1
32 * @param LoggerInterface $logger
33 */ 31 */
34 public function __construct(CookieJar $cookieJar, $restrictedAccess, LoggerInterface $logger) 32 public function __construct(CookieJar $cookieJar, $restrictedAccess, LoggerInterface $logger)
35 { 33 {
@@ -40,8 +38,6 @@ class HttpClientFactory implements ClientFactory
40 38
41 /** 39 /**
42 * Adds a subscriber to the HTTP client. 40 * Adds a subscriber to the HTTP client.
43 *
44 * @param SubscriberInterface $subscriber
45 */ 41 */
46 public function addSubscriber(SubscriberInterface $subscriber) 42 public function addSubscriber(SubscriberInterface $subscriber)
47 { 43 {
@@ -51,8 +47,6 @@ class HttpClientFactory implements ClientFactory
51 /** 47 /**
52 * Input an array of configuration to be able to create a HttpClient. 48 * Input an array of configuration to be able to create a HttpClient.
53 * 49 *
54 * @param array $config
55 *
56 * @return HttpClient 50 * @return HttpClient
57 */ 51 */
58 public function createClient(array $config = []) 52 public function createClient(array $config = [])
diff --git a/src/Wallabag/CoreBundle/Helper/PreparePagerForEntries.php b/src/Wallabag/CoreBundle/Helper/PreparePagerForEntries.php
index 04abc6d0..3d56a6d8 100644
--- a/src/Wallabag/CoreBundle/Helper/PreparePagerForEntries.php
+++ b/src/Wallabag/CoreBundle/Helper/PreparePagerForEntries.php
@@ -20,8 +20,7 @@ class PreparePagerForEntries
20 } 20 }
21 21
22 /** 22 /**
23 * @param AdapterInterface $adapter 23 * @param User $user If user isn't logged in, we can force it (like for feed)
24 * @param User $user If user isn't logged in, we can force it (like for feed)
25 * 24 *
26 * @return Pagerfanta|null 25 * @return Pagerfanta|null
27 */ 26 */
diff --git a/src/Wallabag/CoreBundle/Helper/RuleBasedTagger.php b/src/Wallabag/CoreBundle/Helper/RuleBasedTagger.php
index fbdf2ac7..d48e2469 100644
--- a/src/Wallabag/CoreBundle/Helper/RuleBasedTagger.php
+++ b/src/Wallabag/CoreBundle/Helper/RuleBasedTagger.php
@@ -56,8 +56,6 @@ class RuleBasedTagger
56 /** 56 /**
57 * Apply all the tagging rules defined by a user on its entries. 57 * Apply all the tagging rules defined by a user on its entries.
58 * 58 *
59 * @param User $user
60 *
61 * @return array<Entry> A list of modified entries 59 * @return array<Entry> A list of modified entries
62 */ 60 */
63 public function tagAllForUser(User $user) 61 public function tagAllForUser(User $user)
@@ -109,8 +107,6 @@ class RuleBasedTagger
109 /** 107 /**
110 * Retrieves the tagging rules for a given user. 108 * Retrieves the tagging rules for a given user.
111 * 109 *
112 * @param User $user
113 *
114 * @return array<TaggingRule> 110 * @return array<TaggingRule>
115 */ 111 */
116 private function getRulesForUser(User $user) 112 private function getRulesForUser(User $user)
diff --git a/src/Wallabag/CoreBundle/Helper/TagsAssigner.php b/src/Wallabag/CoreBundle/Helper/TagsAssigner.php
index e6b4989f..433b09fe 100644
--- a/src/Wallabag/CoreBundle/Helper/TagsAssigner.php
+++ b/src/Wallabag/CoreBundle/Helper/TagsAssigner.php
@@ -21,7 +21,6 @@ class TagsAssigner
21 /** 21 /**
22 * Assign some tags to an entry. 22 * Assign some tags to an entry.
23 * 23 *
24 * @param Entry $entry
25 * @param array|string $tags An array of tag or a string coma separated of tag 24 * @param array|string $tags An array of tag or a string coma separated of tag
26 * @param array $entitiesReady Entities from the EntityManager which are persisted but not yet flushed 25 * @param array $entitiesReady Entities from the EntityManager which are persisted but not yet flushed
27 * It is mostly to fix duplicate tag on import @see http://stackoverflow.com/a/7879164/569101 26 * It is mostly to fix duplicate tag on import @see http://stackoverflow.com/a/7879164/569101
diff --git a/src/Wallabag/CoreBundle/Helper/UrlHasher.php b/src/Wallabag/CoreBundle/Helper/UrlHasher.php
index d123eaba..6753745f 100644
--- a/src/Wallabag/CoreBundle/Helper/UrlHasher.php
+++ b/src/Wallabag/CoreBundle/Helper/UrlHasher.php
@@ -11,7 +11,6 @@ class UrlHasher
11 * Hash the given url using the given algorithm. 11 * Hash the given url using the given algorithm.
12 * Hashed url are faster to be retrieved in the database than the real url. 12 * Hashed url are faster to be retrieved in the database than the real url.
13 * 13 *
14 * @param string $url
15 * @param string $algorithm 14 * @param string $algorithm
16 * 15 *
17 * @return string 16 * @return string
diff --git a/src/Wallabag/CoreBundle/Repository/EntryRepository.php b/src/Wallabag/CoreBundle/Repository/EntryRepository.php
index d9675982..bfd07937 100644
--- a/src/Wallabag/CoreBundle/Repository/EntryRepository.php
+++ b/src/Wallabag/CoreBundle/Repository/EntryRepository.php
@@ -306,7 +306,6 @@ class EntryRepository extends EntityRepository
306 * DELETE et FROM entry_tag et WHERE et.entry_id IN ( SELECT e.id FROM entry e WHERE e.user_id = :userId ) AND et.tag_id = :tagId 306 * DELETE et FROM entry_tag et WHERE et.entry_id IN ( SELECT e.id FROM entry e WHERE e.user_id = :userId ) AND et.tag_id = :tagId
307 * 307 *
308 * @param int $userId 308 * @param int $userId
309 * @param Tag $tag
310 */ 309 */
311 public function removeTag($userId, Tag $tag) 310 public function removeTag($userId, Tag $tag)
312 { 311 {
@@ -565,9 +564,8 @@ class EntryRepository extends EntityRepository
565 /** 564 /**
566 * Return the given QueryBuilder with an orderBy() call. 565 * Return the given QueryBuilder with an orderBy() call.
567 * 566 *
568 * @param QueryBuilder $qb 567 * @param string $sortBy
569 * @param string $sortBy 568 * @param string $direction
570 * @param string $direction
571 * 569 *
572 * @return QueryBuilder 570 * @return QueryBuilder
573 */ 571 */
diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.da.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.da.yml
index 6f381408..8573ba72 100644
--- a/src/Wallabag/CoreBundle/Resources/translations/messages.da.yml
+++ b/src/Wallabag/CoreBundle/Resources/translations/messages.da.yml
@@ -465,6 +465,9 @@ import:
465 # wallabag_v2: 465 # wallabag_v2:
466 # page_title: 'Import > Wallabag v2' 466 # page_title: 'Import > Wallabag v2'
467 # description: 'This importer will import all your wallabag v2 articles. Go to All articles, then, on the export sidebar, click on "JSON". You will have a "All articles.json" file.' 467 # description: 'This importer will import all your wallabag v2 articles. Go to All articles, then, on the export sidebar, click on "JSON". You will have a "All articles.json" file.'
468 # elcurator:
469 # page_title: 'Import > elCurator'
470 # description: 'This importer will import all your elCurator articles. Go to your preferences in your elCurator account and then, export your content. You will have a JSON file.'
468 # readability: 471 # readability:
469 # page_title: 'Import > Readability' 472 # page_title: 'Import > Readability'
470 # description: 'This importer will import all your Readability articles. On the tools (https://www.readability.com/tools/) page, click on "Export your data" in the "Data Export" section. You will received an email to download a json (which does not end with .json in fact).' 473 # description: 'This importer will import all your Readability articles. On the tools (https://www.readability.com/tools/) page, click on "Export your data" in the "Data Export" section. You will received an email to download a json (which does not end with .json in fact).'
diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.de.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.de.yml
index 7efb18aa..50e67d47 100644
--- a/src/Wallabag/CoreBundle/Resources/translations/messages.de.yml
+++ b/src/Wallabag/CoreBundle/Resources/translations/messages.de.yml
@@ -465,6 +465,9 @@ import:
465 wallabag_v2: 465 wallabag_v2:
466 page_title: 'Aus wallabag v2 importieren' 466 page_title: 'Aus wallabag v2 importieren'
467 description: 'Dieser Import wird all deine Artikel aus wallabag v2 importieren. Gehe auf "Alle Artikel" und dann, in der Exportieren-Seitenleiste auf "JSON". Dabei erhältst du eine "All articles.json"-Datei.' 467 description: 'Dieser Import wird all deine Artikel aus wallabag v2 importieren. Gehe auf "Alle Artikel" und dann, in der Exportieren-Seitenleiste auf "JSON". Dabei erhältst du eine "All articles.json"-Datei.'
468 # elcurator:
469 # page_title: 'Import > elCurator'
470 # description: 'This importer will import all your elCurator articles. Go to your preferences in your elCurator account and then, export your content. You will have a JSON file.'
468 readability: 471 readability:
469 page_title: 'Aus Readability importieren' 472 page_title: 'Aus Readability importieren'
470 description: 'Dieser Import wird all deine Artikel aus Readability importieren. Auf der Tools Seite (https://www.readability.com/tools/) klickst du auf "Exportiere deine Daten" in dem Abschnitt "Datenexport". Du wirst eine E-Mail mit einem Downloadlink zu einer json Datei, die aber nicht auf .json endet, erhalten' 473 description: 'Dieser Import wird all deine Artikel aus Readability importieren. Auf der Tools Seite (https://www.readability.com/tools/) klickst du auf "Exportiere deine Daten" in dem Abschnitt "Datenexport". Du wirst eine E-Mail mit einem Downloadlink zu einer json Datei, die aber nicht auf .json endet, erhalten'
diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.en.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.en.yml
index cf98e408..206d3562 100644
--- a/src/Wallabag/CoreBundle/Resources/translations/messages.en.yml
+++ b/src/Wallabag/CoreBundle/Resources/translations/messages.en.yml
@@ -465,6 +465,9 @@ import:
465 wallabag_v2: 465 wallabag_v2:
466 page_title: 'Import > Wallabag v2' 466 page_title: 'Import > Wallabag v2'
467 description: 'This importer will import all your wallabag v2 articles. Go to All articles, then, on the export sidebar, click on "JSON". You will have a "All articles.json" file.' 467 description: 'This importer will import all your wallabag v2 articles. Go to All articles, then, on the export sidebar, click on "JSON". You will have a "All articles.json" file.'
468 elcurator:
469 page_title: 'Import > elCurator'
470 description: 'This importer will import all your elCurator articles. Go to your preferences in your elCurator account and then, export your content. You will have a JSON file.'
468 readability: 471 readability:
469 page_title: 'Import > Readability' 472 page_title: 'Import > Readability'
470 description: 'This importer will import all your Readability articles. On the tools (https://www.readability.com/tools/) page, click on "Export your data" in the "Data Export" section. You will received an email to download a json (which does not end with .json in fact).' 473 description: 'This importer will import all your Readability articles. On the tools (https://www.readability.com/tools/) page, click on "Export your data" in the "Data Export" section. You will received an email to download a json (which does not end with .json in fact).'
diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.es.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.es.yml
index b7cdd261..10f5e79a 100644
--- a/src/Wallabag/CoreBundle/Resources/translations/messages.es.yml
+++ b/src/Wallabag/CoreBundle/Resources/translations/messages.es.yml
@@ -465,6 +465,9 @@ import:
465 wallabag_v2: 465 wallabag_v2:
466 page_title: 'Importar > Wallabag v2' 466 page_title: 'Importar > Wallabag v2'
467 description: 'Importa todos tus artículos de wallabag v2. En la sección Todos los artículos, en la barra lateral, haga clic en "JSON". Obtendrás un archivo llamado "All articles.json".' 467 description: 'Importa todos tus artículos de wallabag v2. En la sección Todos los artículos, en la barra lateral, haga clic en "JSON". Obtendrás un archivo llamado "All articles.json".'
468 # elcurator:
469 # page_title: 'Import > elCurator'
470 # description: 'This importer will import all your elCurator articles. Go to your preferences in your elCurator account and then, export your content. You will have a JSON file.'
468 readability: 471 readability:
469 page_title: 'Importar > Readability' 472 page_title: 'Importar > Readability'
470 description: 'Importa todos tus artículos de Readability. En la página de herramientas (https://www.readability.com/tools/), haga clic en "Exportar tus datos" en la sección "Exportar datos". Recibirás un correo electrónico para descargar un JSON (que no tiene extensión .json).' 473 description: 'Importa todos tus artículos de Readability. En la página de herramientas (https://www.readability.com/tools/), haga clic en "Exportar tus datos" en la sección "Exportar datos". Recibirás un correo electrónico para descargar un JSON (que no tiene extensión .json).'
diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.fa.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.fa.yml
index 66e83e16..730b7e68 100644
--- a/src/Wallabag/CoreBundle/Resources/translations/messages.fa.yml
+++ b/src/Wallabag/CoreBundle/Resources/translations/messages.fa.yml
@@ -465,6 +465,9 @@ import:
465 wallabag_v2: 465 wallabag_v2:
466 page_title: 'درون‌ریزی > Wallabag v2' 466 page_title: 'درون‌ریزی > Wallabag v2'
467 description: 'این برنامه همهٔ داده‌های شما را در نسخهٔ ۲ wallabag درون‌ریزی می‌کند. به بخش «همهٔ مقاله‌ها» بروید و در بخش «برون‌ریزی» روی "JSON" کلیک کنید. با این کار شما پرونده‌ای به شکل "All articles.json" دریافت خواهید کرد.' 467 description: 'این برنامه همهٔ داده‌های شما را در نسخهٔ ۲ wallabag درون‌ریزی می‌کند. به بخش «همهٔ مقاله‌ها» بروید و در بخش «برون‌ریزی» روی "JSON" کلیک کنید. با این کار شما پرونده‌ای به شکل "All articles.json" دریافت خواهید کرد.'
468 # elcurator:
469 # page_title: 'Import > elCurator'
470 # description: 'This importer will import all your elCurator articles. Go to your preferences in your elCurator account and then, export your content. You will have a JSON file.'
468 readability: 471 readability:
469 page_title: 'درون‌ریزی > Readability' 472 page_title: 'درون‌ریزی > Readability'
470 # description: 'This importer will import all your Readability articles. On the tools (https://www.readability.com/tools/) page, click on "Export your data" in the "Data Export" section. You will received an email to download a json (which does not end with .json in fact).' 473 # description: 'This importer will import all your Readability articles. On the tools (https://www.readability.com/tools/) page, click on "Export your data" in the "Data Export" section. You will received an email to download a json (which does not end with .json in fact).'
diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.fr.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.fr.yml
index 6fb856f2..1eecd111 100644
--- a/src/Wallabag/CoreBundle/Resources/translations/messages.fr.yml
+++ b/src/Wallabag/CoreBundle/Resources/translations/messages.fr.yml
@@ -465,6 +465,9 @@ import:
465 wallabag_v2: 465 wallabag_v2:
466 page_title: "Importer > wallabag v2" 466 page_title: "Importer > wallabag v2"
467 description: "Cet outil va importer tous vos articles d’une autre instance de wallabag v2. Allez dans tous vos articles, puis, sur la barre latérale, cliquez sur « JSON ». Vous allez récupérer un fichier « All articles.json »" 467 description: "Cet outil va importer tous vos articles d’une autre instance de wallabag v2. Allez dans tous vos articles, puis, sur la barre latérale, cliquez sur « JSON ». Vous allez récupérer un fichier « All articles.json »"
468 # elcurator:
469 # page_title: 'Import > elCurator'
470 # description: 'This importer will import all your elCurator articles. Go to your preferences in your elCurator account and then, export your content. You will have a JSON file.'
468 readability: 471 readability:
469 page_title: "Importer > Readability" 472 page_title: "Importer > Readability"
470 description: "Cet outil va importer toutes vos données de Readability. Sur la page des outils (https://www.readability.com/tools/), cliquez sur « Export your data » dans la section « Data Export ». Vous allez recevoir un courriel avec un lien pour télécharger le json." 473 description: "Cet outil va importer toutes vos données de Readability. Sur la page des outils (https://www.readability.com/tools/), cliquez sur « Export your data » dans la section « Data Export ». Vous allez recevoir un courriel avec un lien pour télécharger le json."
diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.it.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.it.yml
index 3640e0a0..f1a8e3b1 100644
--- a/src/Wallabag/CoreBundle/Resources/translations/messages.it.yml
+++ b/src/Wallabag/CoreBundle/Resources/translations/messages.it.yml
@@ -465,6 +465,9 @@ import:
465 wallabag_v2: 465 wallabag_v2:
466 page_title: 'Importa da > Wallabag v2' 466 page_title: 'Importa da > Wallabag v2'
467 description: 'Questo importatore copierà tutti i tuoi dati da un wallabag v2. Vai in "Tutti i contenuti", e, nella barra laterale di esportazione, clicca su "JSON". Otterrai un file "Tutti i contenuti.json' 467 description: 'Questo importatore copierà tutti i tuoi dati da un wallabag v2. Vai in "Tutti i contenuti", e, nella barra laterale di esportazione, clicca su "JSON". Otterrai un file "Tutti i contenuti.json'
468 # elcurator:
469 # page_title: 'Import > elCurator'
470 # description: 'This importer will import all your elCurator articles. Go to your preferences in your elCurator account and then, export your content. You will have a JSON file.'
468 readability: 471 readability:
469 page_title: 'Importa da > Readability' 472 page_title: 'Importa da > Readability'
470 description: 'Questo importatore copierà tutti i tuoi articoli da Readability. Nella pagina strumenti (https://www.readability.com/tools/), clicca su "Export your data" nella sezione "Data Export". Riceverai una E-mail per scaricare un file json (che tuttavia non termina con .json).' 473 description: 'Questo importatore copierà tutti i tuoi articoli da Readability. Nella pagina strumenti (https://www.readability.com/tools/), clicca su "Export your data" nella sezione "Data Export". Riceverai una E-mail per scaricare un file json (che tuttavia non termina con .json).'
diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.oc.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.oc.yml
index cd60566a..89bf8b16 100644
--- a/src/Wallabag/CoreBundle/Resources/translations/messages.oc.yml
+++ b/src/Wallabag/CoreBundle/Resources/translations/messages.oc.yml
@@ -465,6 +465,9 @@ import:
465 wallabag_v2: 465 wallabag_v2:
466 page_title: 'Importar > Wallabag v2' 466 page_title: 'Importar > Wallabag v2'
467 description: "Aquesta aisina importarà totas vòstras donadas d'una instància mai de wallabag v2. Anatz dins totes vòstres articles, puèi, sus la barra laterala, clicatz sus \"JSON\". Traparetz un fichièr \"All articles.json\"." 467 description: "Aquesta aisina importarà totas vòstras donadas d'una instància mai de wallabag v2. Anatz dins totes vòstres articles, puèi, sus la barra laterala, clicatz sus \"JSON\". Traparetz un fichièr \"All articles.json\"."
468 # elcurator:
469 # page_title: 'Import > elCurator'
470 # description: 'This importer will import all your elCurator articles. Go to your preferences in your elCurator account and then, export your content. You will have a JSON file.'
468 readability: 471 readability:
469 page_title: 'Importar > Readability' 472 page_title: 'Importar > Readability'
470 description: "Aquesta aisina importarà totas vòstres articles de Readability. Sus la pagina de l'aisina (https://www.readability.com/tools/), clicatz sus \"Export your data\" dins la seccion \"Data Export\". Recebretz un corrièl per telecargar un json (qu'acaba pas amb un .json de fach)." 473 description: "Aquesta aisina importarà totas vòstres articles de Readability. Sus la pagina de l'aisina (https://www.readability.com/tools/), clicatz sus \"Export your data\" dins la seccion \"Data Export\". Recebretz un corrièl per telecargar un json (qu'acaba pas amb un .json de fach)."
diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.pl.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.pl.yml
index 909f7058..0118ad21 100644
--- a/src/Wallabag/CoreBundle/Resources/translations/messages.pl.yml
+++ b/src/Wallabag/CoreBundle/Resources/translations/messages.pl.yml
@@ -465,6 +465,9 @@ import:
465 wallabag_v2: 465 wallabag_v2:
466 page_title: 'Import > Wallabag v2' 466 page_title: 'Import > Wallabag v2'
467 description: 'Ten importer, zaimportuje wszystkie twoje artykułu z wallabag v2. Idź do wszystkich artykułów, a następnie na panelu exportu kliknij na "JSON". Otrzymasz plik "All articles.json".' 467 description: 'Ten importer, zaimportuje wszystkie twoje artykułu z wallabag v2. Idź do wszystkich artykułów, a następnie na panelu exportu kliknij na "JSON". Otrzymasz plik "All articles.json".'
468 # elcurator:
469 # page_title: 'Import > elCurator'
470 # description: 'This importer will import all your elCurator articles. Go to your preferences in your elCurator account and then, export your content. You will have a JSON file.'
468 readability: 471 readability:
469 page_title: 'Import > Readability' 472 page_title: 'Import > Readability'
470 description: 'Ten importer, zaimportuje wszystkie twoje artykuły z Readability. Na stronie narzędzi (https://www.readability.com/tools/), kliknij na "Export your data" w sekcji "Data Export". Otrzymach email z plikiem JSON (plik nie będzie zawierał rozszerzenia .json).' 473 description: 'Ten importer, zaimportuje wszystkie twoje artykuły z Readability. Na stronie narzędzi (https://www.readability.com/tools/), kliknij na "Export your data" w sekcji "Data Export". Otrzymach email z plikiem JSON (plik nie będzie zawierał rozszerzenia .json).'
diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.pt.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.pt.yml
index 47e7b4db..d0082cda 100644
--- a/src/Wallabag/CoreBundle/Resources/translations/messages.pt.yml
+++ b/src/Wallabag/CoreBundle/Resources/translations/messages.pt.yml
@@ -465,6 +465,9 @@ import:
465 wallabag_v2: 465 wallabag_v2:
466 page_title: 'Importar > Wallabag v2' 466 page_title: 'Importar > Wallabag v2'
467 description: 'Com este importador você importa todos os seus artigos do wallabag v2. Vá em Todos os artigos e então, na barra lateral de exportação, clique em "JSON". Você irá criar um arquivo "All articles.json".' 467 description: 'Com este importador você importa todos os seus artigos do wallabag v2. Vá em Todos os artigos e então, na barra lateral de exportação, clique em "JSON". Você irá criar um arquivo "All articles.json".'
468 # elcurator:
469 # page_title: 'Import > elCurator'
470 # description: 'This importer will import all your elCurator articles. Go to your preferences in your elCurator account and then, export your content. You will have a JSON file.'
468 readability: 471 readability:
469 page_title: 'Importar > Readability' 472 page_title: 'Importar > Readability'
470 description: 'Este importador pode importar todos os artigos do Readability. Nas página ferramentas (https://www.readability.com/tools/), clique em "Export your data" na seção "Data Export". Você receberá um e-mail para fazer o download de um json (que de fato não termina com .json).' 473 description: 'Este importador pode importar todos os artigos do Readability. Nas página ferramentas (https://www.readability.com/tools/), clique em "Export your data" na seção "Data Export". Você receberá um e-mail para fazer o download de um json (que de fato não termina com .json).'
diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.ro.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.ro.yml
index 380b5233..c8e2dfb4 100644
--- a/src/Wallabag/CoreBundle/Resources/translations/messages.ro.yml
+++ b/src/Wallabag/CoreBundle/Resources/translations/messages.ro.yml
@@ -465,6 +465,9 @@ import:
465 # wallabag_v2: 465 # wallabag_v2:
466 # page_title: 'Import > Wallabag v2' 466 # page_title: 'Import > Wallabag v2'
467 # description: 'This importer will import all your wallabag v2 articles. Go to All articles, then, on the export sidebar, click on "JSON". You will have a "All articles.json" file.' 467 # description: 'This importer will import all your wallabag v2 articles. Go to All articles, then, on the export sidebar, click on "JSON". You will have a "All articles.json" file.'
468 # elcurator:
469 # page_title: 'Import > elCurator'
470 # description: 'This importer will import all your elCurator articles. Go to your preferences in your elCurator account and then, export your content. You will have a JSON file.'
468 # readability: 471 # readability:
469 # page_title: 'Import > Readability' 472 # page_title: 'Import > Readability'
470 # description: 'This importer will import all your Readability articles. On the tools (https://www.readability.com/tools/) page, click on "Export your data" in the "Data Export" section. You will received an email to download a json (which does not end with .json in fact).' 473 # description: 'This importer will import all your Readability articles. On the tools (https://www.readability.com/tools/) page, click on "Export your data" in the "Data Export" section. You will received an email to download a json (which does not end with .json in fact).'
diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.ru.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.ru.yml
index a47525c6..41379f90 100644
--- a/src/Wallabag/CoreBundle/Resources/translations/messages.ru.yml
+++ b/src/Wallabag/CoreBundle/Resources/translations/messages.ru.yml
@@ -465,6 +465,9 @@ import:
465 wallabag_v2: 465 wallabag_v2:
466 page_title: 'Импорт > Wallabag v2' 466 page_title: 'Импорт > Wallabag v2'
467 description: 'Функция импорта добавит все ваши записи wallabag v2. Перейдите ко всем статьям, затем на боковой панели экспорта нажмите "JSON". У вас появится файл со всеми записями "All articles.json".' 467 description: 'Функция импорта добавит все ваши записи wallabag v2. Перейдите ко всем статьям, затем на боковой панели экспорта нажмите "JSON". У вас появится файл со всеми записями "All articles.json".'
468 # elcurator:
469 # page_title: 'Import > elCurator'
470 # description: 'This importer will import all your elCurator articles. Go to your preferences in your elCurator account and then, export your content. You will have a JSON file.'
468 readability: 471 readability:
469 page_title: 'Импорт > Readability' 472 page_title: 'Импорт > Readability'
470 description: 'Функция импорта добавит все ваши записи для чтения. На странице инструментов (https://www.readability.com/tools/) нажмите "Экспорт ваших данных" в разделе "Экспорт данных". Вы получите электронное письмо для загрузки json (что не заканчивается только .json файлом).' 473 description: 'Функция импорта добавит все ваши записи для чтения. На странице инструментов (https://www.readability.com/tools/) нажмите "Экспорт ваших данных" в разделе "Экспорт данных". Вы получите электронное письмо для загрузки json (что не заканчивается только .json файлом).'
diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.th.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.th.yml
index 5879c48f..b5a3bcb6 100644
--- a/src/Wallabag/CoreBundle/Resources/translations/messages.th.yml
+++ b/src/Wallabag/CoreBundle/Resources/translations/messages.th.yml
@@ -465,6 +465,9 @@ import:
465 wallabag_v2: 465 wallabag_v2:
466 page_title: 'นำเข้าข้อมูล > Wallabag v2' 466 page_title: 'นำเข้าข้อมูล > Wallabag v2'
467 description: 'สำหรับผู้นำเข้าข้อมูลจะ import บทความ wallabag v2 ทั้งหมดของคุณ ไปยังบทความทั้งหมด, ดังนั้น, บน export sidebar, click ที่ "JSON" คุณจะมีไฟล์ "All articles.json"' 467 description: 'สำหรับผู้นำเข้าข้อมูลจะ import บทความ wallabag v2 ทั้งหมดของคุณ ไปยังบทความทั้งหมด, ดังนั้น, บน export sidebar, click ที่ "JSON" คุณจะมีไฟล์ "All articles.json"'
468 # elcurator:
469 # page_title: 'Import > elCurator'
470 # description: 'This importer will import all your elCurator articles. Go to your preferences in your elCurator account and then, export your content. You will have a JSON file.'
468 readability: 471 readability:
469 page_title: 'นำเข้าข้อมูล > Readability' 472 page_title: 'นำเข้าข้อมูล > Readability'
470 description: 'สำหรับผู้นำเข้าข้อมูลจะ import บทความ Readability ทั้งหมดของคุณ ไปที่เครื่องมือ (https://www.readability.com/tools/) ของหน้านั้น, click ที่ "Export your data" ในส่วน "Data Export" คุณจะได้รับ email ไป download json (which does not end with .json in fact).' 473 description: 'สำหรับผู้นำเข้าข้อมูลจะ import บทความ Readability ทั้งหมดของคุณ ไปที่เครื่องมือ (https://www.readability.com/tools/) ของหน้านั้น, click ที่ "Export your data" ในส่วน "Data Export" คุณจะได้รับ email ไป download json (which does not end with .json in fact).'
diff --git a/src/Wallabag/CoreBundle/Resources/translations/messages.tr.yml b/src/Wallabag/CoreBundle/Resources/translations/messages.tr.yml
index d023e368..4aaef781 100644
--- a/src/Wallabag/CoreBundle/Resources/translations/messages.tr.yml
+++ b/src/Wallabag/CoreBundle/Resources/translations/messages.tr.yml
@@ -465,6 +465,9 @@ import:
465 wallabag_v2: 465 wallabag_v2:
466 page_title: 'İçe Aktar > Wallabag v2' 466 page_title: 'İçe Aktar > Wallabag v2'
467 # description: 'This importer will import all your wallabag v2 articles. Go to All articles, then, on the export sidebar, click on "JSON". You will have a "All articles.json" file.' 467 # description: 'This importer will import all your wallabag v2 articles. Go to All articles, then, on the export sidebar, click on "JSON". You will have a "All articles.json" file.'
468 # elcurator:
469 # page_title: 'Import > elCurator'
470 # description: 'This importer will import all your elCurator articles. Go to your preferences in your elCurator account and then, export your content. You will have a JSON file.'
468 readability: 471 readability:
469 page_title: 'İçe Aktar > Readability' 472 page_title: 'İçe Aktar > Readability'
470 # description: 'This importer will import all your Readability articles. On the tools (https://www.readability.com/tools/) page, click on "Export your data" in the "Data Export" section. You will received an email to download a json (which does not end with .json in fact).' 473 # description: 'This importer will import all your Readability articles. On the tools (https://www.readability.com/tools/) page, click on "Export your data" in the "Data Export" section. You will received an email to download a json (which does not end with .json in fact).'
diff --git a/src/Wallabag/CoreBundle/Resources/views/themes/baggy/Entry/entries.html.twig b/src/Wallabag/CoreBundle/Resources/views/themes/baggy/Entry/entries.html.twig
index d8b39160..b747ed84 100644
--- a/src/Wallabag/CoreBundle/Resources/views/themes/baggy/Entry/entries.html.twig
+++ b/src/Wallabag/CoreBundle/Resources/views/themes/baggy/Entry/entries.html.twig
@@ -117,6 +117,12 @@
117 <a href="javascript: void(null);" id="filter-form-close" class="close-button--popup close-button">&times;</a> 117 <a href="javascript: void(null);" id="filter-form-close" class="close-button--popup close-button">&times;</a>
118 118
119 <div id="filter-status" class="filter-group"> 119 <div id="filter-status" class="filter-group">
120 {% if currentRoute != 'untagged' and nbEntriesUntagged != 0 %}
121 <div class="">
122 <a href="{{ path('untagged') }}">{{ 'tag.list.see_untagged_entries'|trans }} ({{nbEntriesUntagged}})</a>
123 </div>
124 {% endif %}
125
120 <div class=""> 126 <div class="">
121 <label>{{ 'entry.filters.status_label'|trans }}</label> 127 <label>{{ 'entry.filters.status_label'|trans }}</label>
122 </div> 128 </div>
diff --git a/src/Wallabag/CoreBundle/Resources/views/themes/material/Entry/entries.html.twig b/src/Wallabag/CoreBundle/Resources/views/themes/material/Entry/entries.html.twig
index 476d7403..3906e1e0 100644
--- a/src/Wallabag/CoreBundle/Resources/views/themes/material/Entry/entries.html.twig
+++ b/src/Wallabag/CoreBundle/Resources/views/themes/material/Entry/entries.html.twig
@@ -83,6 +83,12 @@
83 <h4 class="center">{{ 'entry.filters.title'|trans }}</h4> 83 <h4 class="center">{{ 'entry.filters.title'|trans }}</h4>
84 84
85 <div class="row"> 85 <div class="row">
86 {% if currentRoute != 'untagged' and nbEntriesUntagged != 0 %}
87 <div class="col s12 center-align">
88 <a href="{{ path('untagged') }}">{{ 'tag.list.see_untagged_entries'|trans }} ({{nbEntriesUntagged}})</a>
89 </div>
90 {% endif %}
91
86 <div class="col s12"> 92 <div class="col s12">
87 <label>{{ 'entry.filters.status_label'|trans }}</label> 93 <label>{{ 'entry.filters.status_label'|trans }}</label>
88 </div> 94 </div>
diff --git a/src/Wallabag/CoreBundle/Resources/views/themes/material/Entry/new_form.html.twig b/src/Wallabag/CoreBundle/Resources/views/themes/material/Entry/new_form.html.twig
index e0d5e794..4cf81167 100644
--- a/src/Wallabag/CoreBundle/Resources/views/themes/material/Entry/new_form.html.twig
+++ b/src/Wallabag/CoreBundle/Resources/views/themes/material/Entry/new_form.html.twig
@@ -2,14 +2,14 @@
2 {% if form_errors(form) %} 2 {% if form_errors(form) %}
3 <span class="black-text">{{ form_errors(form) }}</span> 3 <span class="black-text">{{ form_errors(form) }}</span>
4 {% endif %} 4 {% endif %}
5 <button type="submit" class="nav-form-button"><i class="material-icons add">add</i></button> 5 <button type="submit" class="nav-form-button" aria-label="add"><i class="material-icons add" aria-hidden="true"></i></button>
6 6
7 {% if form_errors(form.url) %} 7 {% if form_errors(form.url) %}
8 <span class="black-text">{{ form_errors(form.url) }}</span> 8 <span class="black-text">{{ form_errors(form.url) }}</span>
9 {% endif %} 9 {% endif %}
10 10
11 {{ form_widget(form.url, { 'attr': {'autocomplete': 'off', 'placeholder': 'entry.new.placeholder'} }) }} 11 {{ form_widget(form.url, { 'attr': {'autocomplete': 'off', 'placeholder': 'entry.new.placeholder'} }) }}
12 <i class="material-icons close">clear</i> 12 <i class="material-icons close" aria-label="clear" role="button"></i>
13 13
14 {{ form_rest(form) }} 14 {{ form_rest(form) }}
15</form> 15</form>
diff --git a/src/Wallabag/CoreBundle/Resources/views/themes/material/Entry/search_form.html.twig b/src/Wallabag/CoreBundle/Resources/views/themes/material/Entry/search_form.html.twig
index ba1b3aac..0ae8b0b3 100644
--- a/src/Wallabag/CoreBundle/Resources/views/themes/material/Entry/search_form.html.twig
+++ b/src/Wallabag/CoreBundle/Resources/views/themes/material/Entry/search_form.html.twig
@@ -2,7 +2,7 @@
2 {% if form_errors(form) %} 2 {% if form_errors(form) %}
3 <span class="black-text">{{ form_errors(form) }}</span> 3 <span class="black-text">{{ form_errors(form) }}</span>
4 {% endif %} 4 {% endif %}
5 <button type="submit" class="nav-form-button"><i class="material-icons search">search</i></button> 5 <button type="submit" class="nav-form-button" aria-label="search"><i class="material-icons search" aria-hidden="true"></i></button>
6 6
7 {% if form_errors(form.term) %} 7 {% if form_errors(form.term) %}
8 <span class="black-text">{{ form_errors(form.term) }}</span> 8 <span class="black-text">{{ form_errors(form.term) }}</span>
@@ -11,7 +11,7 @@
11 <input type="hidden" name="currentRoute" value="{{ currentRoute }}" /> 11 <input type="hidden" name="currentRoute" value="{{ currentRoute }}" />
12 12
13 {{ form_widget(form.term, { 'attr': {'autocomplete': 'off', 'placeholder': 'entry.search.placeholder'} }) }} 13 {{ form_widget(form.term, { 'attr': {'autocomplete': 'off', 'placeholder': 'entry.search.placeholder'} }) }}
14 <i class="material-icons close">clear</i> 14 <i class="material-icons close" aria-label="clear" role="button"></i>
15 15
16 {{ form_rest(form) }} 16 {{ form_rest(form) }}
17</form> 17</form>
diff --git a/src/Wallabag/ImportBundle/Controller/BrowserController.php b/src/Wallabag/ImportBundle/Controller/BrowserController.php
index 58d2a730..8c2bdfe5 100644
--- a/src/Wallabag/ImportBundle/Controller/BrowserController.php
+++ b/src/Wallabag/ImportBundle/Controller/BrowserController.php
@@ -13,8 +13,6 @@ abstract class BrowserController extends Controller
13 /** 13 /**
14 * @Route("/browser", name="import_browser") 14 * @Route("/browser", name="import_browser")
15 * 15 *
16 * @param Request $request
17 *
18 * @return Response 16 * @return Response
19 */ 17 */
20 public function indexAction(Request $request) 18 public function indexAction(Request $request)
diff --git a/src/Wallabag/ImportBundle/Controller/ElcuratorController.php b/src/Wallabag/ImportBundle/Controller/ElcuratorController.php
new file mode 100644
index 00000000..174c2c96
--- /dev/null
+++ b/src/Wallabag/ImportBundle/Controller/ElcuratorController.php
@@ -0,0 +1,41 @@
1<?php
2
3namespace Wallabag\ImportBundle\Controller;
4
5use Symfony\Component\HttpFoundation\Request;
6use Symfony\Component\Routing\Annotation\Route;
7
8class ElcuratorController extends WallabagController
9{
10 /**
11 * @Route("/elcurator", name="import_elcurator")
12 */
13 public function indexAction(Request $request)
14 {
15 return parent::indexAction($request);
16 }
17
18 /**
19 * {@inheritdoc}
20 */
21 protected function getImportService()
22 {
23 $service = $this->get('wallabag_import.elcurator.import');
24
25 if ($this->get('craue_config')->get('import_with_rabbitmq')) {
26 $service->setProducer($this->get('old_sound_rabbit_mq.import_elcurator_producer'));
27 } elseif ($this->get('craue_config')->get('import_with_redis')) {
28 $service->setProducer($this->get('wallabag_import.producer.redis.elcurator'));
29 }
30
31 return $service;
32 }
33
34 /**
35 * {@inheritdoc}
36 */
37 protected function getImportTemplate()
38 {
39 return 'WallabagImportBundle:Elcurator:index.html.twig';
40 }
41}
diff --git a/src/Wallabag/ImportBundle/Controller/WallabagController.php b/src/Wallabag/ImportBundle/Controller/WallabagController.php
index d182dd2c..5180006d 100644
--- a/src/Wallabag/ImportBundle/Controller/WallabagController.php
+++ b/src/Wallabag/ImportBundle/Controller/WallabagController.php
@@ -16,8 +16,6 @@ abstract class WallabagController extends Controller
16 /** 16 /**
17 * Handle import request. 17 * Handle import request.
18 * 18 *
19 * @param Request $request
20 *
21 * @return Response|RedirectResponse 19 * @return Response|RedirectResponse
22 */ 20 */
23 public function indexAction(Request $request) 21 public function indexAction(Request $request)
diff --git a/src/Wallabag/ImportBundle/Import/AbstractImport.php b/src/Wallabag/ImportBundle/Import/AbstractImport.php
index d39d71b6..1b073e99 100644
--- a/src/Wallabag/ImportBundle/Import/AbstractImport.php
+++ b/src/Wallabag/ImportBundle/Import/AbstractImport.php
@@ -46,8 +46,6 @@ abstract class AbstractImport implements ImportInterface
46 /** 46 /**
47 * Set RabbitMQ/Redis Producer to send each entry to a queue. 47 * Set RabbitMQ/Redis Producer to send each entry to a queue.
48 * This method should be called when user has enabled RabbitMQ. 48 * This method should be called when user has enabled RabbitMQ.
49 *
50 * @param ProducerInterface $producer
51 */ 49 */
52 public function setProducer(ProducerInterface $producer) 50 public function setProducer(ProducerInterface $producer)
53 { 51 {
@@ -57,8 +55,6 @@ abstract class AbstractImport implements ImportInterface
57 /** 55 /**
58 * Set current user. 56 * Set current user.
59 * Could the current *connected* user or one retrieve by the consumer. 57 * Could the current *connected* user or one retrieve by the consumer.
60 *
61 * @param User $user
62 */ 58 */
63 public function setUser(User $user) 59 public function setUser(User $user)
64 { 60 {
@@ -112,8 +108,6 @@ abstract class AbstractImport implements ImportInterface
112 /** 108 /**
113 * Parse one entry. 109 * Parse one entry.
114 * 110 *
115 * @param array $importedEntry
116 *
117 * @return Entry 111 * @return Entry
118 */ 112 */
119 abstract public function parseEntry(array $importedEntry); 113 abstract public function parseEntry(array $importedEntry);
@@ -121,8 +115,6 @@ abstract class AbstractImport implements ImportInterface
121 /** 115 /**
122 * Validate that an entry is valid (like has some required keys, etc.). 116 * Validate that an entry is valid (like has some required keys, etc.).
123 * 117 *
124 * @param array $importedEntry
125 *
126 * @return bool 118 * @return bool
127 */ 119 */
128 abstract public function validateEntry(array $importedEntry); 120 abstract public function validateEntry(array $importedEntry);
@@ -149,8 +141,6 @@ abstract class AbstractImport implements ImportInterface
149 141
150 /** 142 /**
151 * Parse and insert all given entries. 143 * Parse and insert all given entries.
152 *
153 * @param array $entries
154 */ 144 */
155 protected function parseEntries(array $entries) 145 protected function parseEntries(array $entries)
156 { 146 {
@@ -210,8 +200,6 @@ abstract class AbstractImport implements ImportInterface
210 * 200 *
211 * Faster parse entries for Producer. 201 * Faster parse entries for Producer.
212 * We don't care to make check at this time. They'll be done by the consumer. 202 * We don't care to make check at this time. They'll be done by the consumer.
213 *
214 * @param array $entries
215 */ 203 */
216 protected function parseEntriesForProducer(array $entries) 204 protected function parseEntriesForProducer(array $entries)
217 { 205 {
@@ -233,8 +221,6 @@ abstract class AbstractImport implements ImportInterface
233 * Set current imported entry to archived / read. 221 * Set current imported entry to archived / read.
234 * Implementation is different accross all imports. 222 * Implementation is different accross all imports.
235 * 223 *
236 * @param array $importedEntry
237 *
238 * @return array 224 * @return array
239 */ 225 */
240 abstract protected function setEntryAsRead(array $importedEntry); 226 abstract protected function setEntryAsRead(array $importedEntry);
diff --git a/src/Wallabag/ImportBundle/Import/BrowserImport.php b/src/Wallabag/ImportBundle/Import/BrowserImport.php
index 3987e80f..ea7afd3d 100644
--- a/src/Wallabag/ImportBundle/Import/BrowserImport.php
+++ b/src/Wallabag/ImportBundle/Import/BrowserImport.php
@@ -148,8 +148,6 @@ abstract class BrowserImport extends AbstractImport
148 148
149 /** 149 /**
150 * Parse and insert all given entries. 150 * Parse and insert all given entries.
151 *
152 * @param array $entries
153 */ 151 */
154 protected function parseEntries(array $entries) 152 protected function parseEntries(array $entries)
155 { 153 {
@@ -199,8 +197,6 @@ abstract class BrowserImport extends AbstractImport
199 * 197 *
200 * Faster parse entries for Producer. 198 * Faster parse entries for Producer.
201 * We don't care to make check at this time. They'll be done by the consumer. 199 * We don't care to make check at this time. They'll be done by the consumer.
202 *
203 * @param array $entries
204 */ 200 */
205 protected function parseEntriesForProducer(array $entries) 201 protected function parseEntriesForProducer(array $entries)
206 { 202 {
diff --git a/src/Wallabag/ImportBundle/Import/ElcuratorImport.php b/src/Wallabag/ImportBundle/Import/ElcuratorImport.php
new file mode 100644
index 00000000..d1281613
--- /dev/null
+++ b/src/Wallabag/ImportBundle/Import/ElcuratorImport.php
@@ -0,0 +1,54 @@
1<?php
2
3namespace Wallabag\ImportBundle\Import;
4
5class ElcuratorImport extends WallabagImport
6{
7 /**
8 * {@inheritdoc}
9 */
10 public function getName()
11 {
12 return 'elcurator';
13 }
14
15 /**
16 * {@inheritdoc}
17 */
18 public function getUrl()
19 {
20 return 'import_elcurator';
21 }
22
23 /**
24 * {@inheritdoc}
25 */
26 public function getDescription()
27 {
28 return 'import.elcurator.description';
29 }
30
31 /**
32 * {@inheritdoc}
33 */
34 protected function prepareEntry($entry = [])
35 {
36 return [
37 'url' => $entry['url'],
38 'title' => $entry['title'],
39 'created_at' => $entry['created_at'],
40 'is_archived' => 0,
41 'is_starred' => $entry['is_saved'],
42 ] + $entry;
43 }
44
45 /**
46 * {@inheritdoc}
47 */
48 protected function setEntryAsRead(array $importedEntry)
49 {
50 $importedEntry['is_archived'] = 1;
51
52 return $importedEntry;
53 }
54}
diff --git a/src/Wallabag/ImportBundle/Import/ImportChain.php b/src/Wallabag/ImportBundle/Import/ImportChain.php
index 9dd77956..e1b5867d 100644
--- a/src/Wallabag/ImportBundle/Import/ImportChain.php
+++ b/src/Wallabag/ImportBundle/Import/ImportChain.php
@@ -14,8 +14,7 @@ class ImportChain
14 /** 14 /**
15 * Add an import to the chain. 15 * Add an import to the chain.
16 * 16 *
17 * @param ImportInterface $import 17 * @param string $alias
18 * @param string $alias
19 */ 18 */
20 public function addImport(ImportInterface $import, $alias) 19 public function addImport(ImportInterface $import, $alias)
21 { 20 {
diff --git a/src/Wallabag/ImportBundle/Import/PocketImport.php b/src/Wallabag/ImportBundle/Import/PocketImport.php
index 746120af..24fdaa2b 100644
--- a/src/Wallabag/ImportBundle/Import/PocketImport.php
+++ b/src/Wallabag/ImportBundle/Import/PocketImport.php
@@ -151,9 +151,6 @@ class PocketImport extends AbstractImport
151 151
152 /** 152 /**
153 * Set the Http client. 153 * Set the Http client.
154 *
155 * @param HttpClient $client
156 * @param MessageFactory|null $messageFactory
157 */ 154 */
158 public function setClient(HttpClient $client, MessageFactory $messageFactory = null) 155 public function setClient(HttpClient $client, MessageFactory $messageFactory = null)
159 { 156 {
diff --git a/src/Wallabag/ImportBundle/Resources/config/rabbit.yml b/src/Wallabag/ImportBundle/Resources/config/rabbit.yml
index e9ecb846..0bf0e761 100644
--- a/src/Wallabag/ImportBundle/Resources/config/rabbit.yml
+++ b/src/Wallabag/ImportBundle/Resources/config/rabbit.yml
@@ -48,6 +48,14 @@ services:
48 - "@wallabag_import.wallabag_v2.import" 48 - "@wallabag_import.wallabag_v2.import"
49 - "@event_dispatcher" 49 - "@event_dispatcher"
50 - "@logger" 50 - "@logger"
51 wallabag_import.consumer.amqp.elcurator:
52 class: Wallabag\ImportBundle\Consumer\AMQPEntryConsumer
53 arguments:
54 - "@doctrine.orm.entity_manager"
55 - "@wallabag_user.user_repository"
56 - "@wallabag_import.elcurator.import"
57 - "@event_dispatcher"
58 - "@logger"
51 wallabag_import.consumer.amqp.firefox: 59 wallabag_import.consumer.amqp.firefox:
52 class: Wallabag\ImportBundle\Consumer\AMQPEntryConsumer 60 class: Wallabag\ImportBundle\Consumer\AMQPEntryConsumer
53 arguments: 61 arguments:
diff --git a/src/Wallabag/ImportBundle/Resources/config/redis.yml b/src/Wallabag/ImportBundle/Resources/config/redis.yml
index 091cdba0..40a6e224 100644
--- a/src/Wallabag/ImportBundle/Resources/config/redis.yml
+++ b/src/Wallabag/ImportBundle/Resources/config/redis.yml
@@ -126,6 +126,27 @@ services:
126 - "@event_dispatcher" 126 - "@event_dispatcher"
127 - "@logger" 127 - "@logger"
128 128
129 # elcurator
130 wallabag_import.queue.redis.elcurator:
131 class: Simpleue\Queue\RedisQueue
132 arguments:
133 - "@wallabag_core.redis.client"
134 - "wallabag.import.elcurator"
135
136 wallabag_import.producer.redis.elcurator:
137 class: Wallabag\ImportBundle\Redis\Producer
138 arguments:
139 - "@wallabag_import.queue.redis.elcurator"
140
141 wallabag_import.consumer.redis.elcurator:
142 class: Wallabag\ImportBundle\Consumer\RedisEntryConsumer
143 arguments:
144 - "@doctrine.orm.entity_manager"
145 - "@wallabag_user.user_repository"
146 - "@wallabag_import.elcurator.import"
147 - "@event_dispatcher"
148 - "@logger"
149
129 # firefox 150 # firefox
130 wallabag_import.queue.redis.firefox: 151 wallabag_import.queue.redis.firefox:
131 class: Simpleue\Queue\RedisQueue 152 class: Simpleue\Queue\RedisQueue
diff --git a/src/Wallabag/ImportBundle/Resources/config/services.yml b/src/Wallabag/ImportBundle/Resources/config/services.yml
index 973c0d03..d824da4a 100644
--- a/src/Wallabag/ImportBundle/Resources/config/services.yml
+++ b/src/Wallabag/ImportBundle/Resources/config/services.yml
@@ -48,6 +48,18 @@ services:
48 tags: 48 tags:
49 - { name: wallabag_import.import, alias: wallabag_v2 } 49 - { name: wallabag_import.import, alias: wallabag_v2 }
50 50
51 wallabag_import.elcurator.import:
52 class: Wallabag\ImportBundle\Import\ElcuratorImport
53 arguments:
54 - "@doctrine.orm.entity_manager"
55 - "@wallabag_core.content_proxy"
56 - "@wallabag_core.tags_assigner"
57 - "@event_dispatcher"
58 calls:
59 - [ setLogger, [ "@logger" ]]
60 tags:
61 - { name: wallabag_import.import, alias: elcurator }
62
51 wallabag_import.readability.import: 63 wallabag_import.readability.import:
52 class: Wallabag\ImportBundle\Import\ReadabilityImport 64 class: Wallabag\ImportBundle\Import\ReadabilityImport
53 arguments: 65 arguments:
diff --git a/src/Wallabag/ImportBundle/Resources/views/Elcurator/index.html.twig b/src/Wallabag/ImportBundle/Resources/views/Elcurator/index.html.twig
new file mode 100644
index 00000000..e3a0d709
--- /dev/null
+++ b/src/Wallabag/ImportBundle/Resources/views/Elcurator/index.html.twig
@@ -0,0 +1,3 @@
1{% extends "WallabagImportBundle:WallabagV1:index.html.twig" %}
2
3{% block title %}{{ 'import.elcurator.page_title'|trans }}{% endblock %}
diff --git a/src/Wallabag/UserBundle/Controller/ManageController.php b/src/Wallabag/UserBundle/Controller/ManageController.php
index 63a06206..1122f8f0 100644
--- a/src/Wallabag/UserBundle/Controller/ManageController.php
+++ b/src/Wallabag/UserBundle/Controller/ManageController.php
@@ -127,8 +127,7 @@ class ManageController extends Controller
127 } 127 }
128 128
129 /** 129 /**
130 * @param Request $request 130 * @param int $page
131 * @param int $page
132 * 131 *
133 * @Route("/list/{page}", name="user_index", defaults={"page" = 1}) 132 * @Route("/list/{page}", name="user_index", defaults={"page" = 1})
134 * 133 *
diff --git a/src/Wallabag/UserBundle/Entity/User.php b/src/Wallabag/UserBundle/Entity/User.php
index 43fa6a80..aeab761d 100644
--- a/src/Wallabag/UserBundle/Entity/User.php
+++ b/src/Wallabag/UserBundle/Entity/User.php
@@ -188,8 +188,6 @@ class User extends BaseUser implements EmailTwoFactorInterface, GoogleTwoFactorI
188 } 188 }
189 189
190 /** 190 /**
191 * @param Entry $entry
192 *
193 * @return User 191 * @return User
194 */ 192 */
195 public function addEntry(Entry $entry) 193 public function addEntry(Entry $entry)
@@ -355,8 +353,6 @@ class User extends BaseUser implements EmailTwoFactorInterface, GoogleTwoFactorI
355 } 353 }
356 354
357 /** 355 /**
358 * @param Client $client
359 *
360 * @return User 356 * @return User
361 */ 357 */
362 public function addClient(Client $client) 358 public function addClient(Client $client)
diff --git a/src/Wallabag/UserBundle/Form/UserType.php b/src/Wallabag/UserBundle/Form/UserType.php
index 026db9a2..03fad971 100644
--- a/src/Wallabag/UserBundle/Form/UserType.php
+++ b/src/Wallabag/UserBundle/Form/UserType.php
@@ -12,10 +12,6 @@ use Symfony\Component\OptionsResolver\OptionsResolver;
12 12
13class UserType extends AbstractType 13class UserType extends AbstractType
14{ 14{
15 /**
16 * @param FormBuilderInterface $builder
17 * @param array $options
18 */
19 public function buildForm(FormBuilderInterface $builder, array $options) 15 public function buildForm(FormBuilderInterface $builder, array $options)
20 { 16 {
21 $builder 17 $builder
@@ -50,9 +46,6 @@ class UserType extends AbstractType
50 ; 46 ;
51 } 47 }
52 48
53 /**
54 * @param OptionsResolver $resolver
55 */
56 public function configureOptions(OptionsResolver $resolver) 49 public function configureOptions(OptionsResolver $resolver)
57 { 50 {
58 $resolver->setDefaults([ 51 $resolver->setDefaults([
diff --git a/src/Wallabag/UserBundle/Mailer/AuthCodeMailer.php b/src/Wallabag/UserBundle/Mailer/AuthCodeMailer.php
index b25ba685..4eea444f 100644
--- a/src/Wallabag/UserBundle/Mailer/AuthCodeMailer.php
+++ b/src/Wallabag/UserBundle/Mailer/AuthCodeMailer.php
@@ -57,12 +57,10 @@ class AuthCodeMailer implements AuthCodeMailerInterface
57 /** 57 /**
58 * Initialize the auth code mailer with the SwiftMailer object. 58 * Initialize the auth code mailer with the SwiftMailer object.
59 * 59 *
60 * @param \Swift_Mailer $mailer 60 * @param string $senderEmail
61 * @param Environment $twig 61 * @param string $senderName
62 * @param string $senderEmail 62 * @param string $supportUrl wallabag support url
63 * @param string $senderName 63 * @param string $wallabagUrl wallabag instance url
64 * @param string $supportUrl wallabag support url
65 * @param string $wallabagUrl wallabag instance url
66 */ 64 */
67 public function __construct(\Swift_Mailer $mailer, Environment $twig, $senderEmail, $senderName, $supportUrl, $wallabagUrl) 65 public function __construct(\Swift_Mailer $mailer, Environment $twig, $senderEmail, $senderName, $supportUrl, $wallabagUrl)
68 { 66 {
@@ -76,8 +74,6 @@ class AuthCodeMailer implements AuthCodeMailerInterface
76 74
77 /** 75 /**
78 * Send the auth code to the user via email. 76 * Send the auth code to the user via email.
79 *
80 * @param TwoFactorInterface $user
81 */ 77 */
82 public function sendAuthCode(TwoFactorInterface $user): void 78 public function sendAuthCode(TwoFactorInterface $user): void
83 { 79 {
diff --git a/tests/Wallabag/CoreBundle/Controller/EntryControllerTest.php b/tests/Wallabag/CoreBundle/Controller/EntryControllerTest.php
index 8fd49778..3a8f92e7 100644
--- a/tests/Wallabag/CoreBundle/Controller/EntryControllerTest.php
+++ b/tests/Wallabag/CoreBundle/Controller/EntryControllerTest.php
@@ -199,8 +199,8 @@ class EntryControllerTest extends WallabagCoreTestCase
199 $authors = $content->getPublishedBy(); 199 $authors = $content->getPublishedBy();
200 $this->assertSame('2017-04-05 19:26:13', $content->getPublishedAt()->format('Y-m-d H:i:s')); 200 $this->assertSame('2017-04-05 19:26:13', $content->getPublishedAt()->format('Y-m-d H:i:s'));
201 $this->assertSame('fr', $content->getLanguage()); 201 $this->assertSame('fr', $content->getLanguage());
202 $this->assertSame('Raphaël Balenieri, correspondant à Pékin', $authors[0]); 202 $this->assertSame('Raphaël Balenieri', $authors[0]);
203 $this->assertSame('Frédéric Autran, correspondant à New York', $authors[1]); 203 $this->assertSame('Frédéric Autran', $authors[1]);
204 } 204 }
205 205
206 public function testPostNewOkUrlExist() 206 public function testPostNewOkUrlExist()
@@ -1377,7 +1377,7 @@ class EntryControllerTest extends WallabagCoreTestCase
1377 ], 1377 ],
1378 'es-ES' => [ 1378 'es-ES' => [
1379 'https://www.20minutos.es/noticia/3360685/0/gobierno-sanchez-primero-historia-mas-mujeres-que-hombres/', 1379 'https://www.20minutos.es/noticia/3360685/0/gobierno-sanchez-primero-historia-mas-mujeres-que-hombres/',
1380 'es', 1380 'es_ES',
1381 ], 1381 ],
1382 ]; 1382 ];
1383 } 1383 }
diff --git a/tests/Wallabag/ImportBundle/Controller/ElcuratorControllerTest.php b/tests/Wallabag/ImportBundle/Controller/ElcuratorControllerTest.php
new file mode 100644
index 00000000..b9919f8f
--- /dev/null
+++ b/tests/Wallabag/ImportBundle/Controller/ElcuratorControllerTest.php
@@ -0,0 +1,132 @@
1<?php
2
3namespace Tests\Wallabag\ImportBundle\Controller;
4
5use Symfony\Component\HttpFoundation\File\UploadedFile;
6use Tests\Wallabag\CoreBundle\WallabagCoreTestCase;
7
8class ElcuratorControllerTest extends WallabagCoreTestCase
9{
10 public function testImportElcurator()
11 {
12 $this->logInAs('admin');
13 $client = $this->getClient();
14
15 $crawler = $client->request('GET', '/import/elcurator');
16
17 $this->assertSame(200, $client->getResponse()->getStatusCode());
18 $this->assertSame(1, $crawler->filter('form[name=upload_import_file] > button[type=submit]')->count());
19 $this->assertSame(1, $crawler->filter('input[type=file]')->count());
20 }
21
22 public function testImportElcuratorWithRabbitEnabled()
23 {
24 $this->logInAs('admin');
25 $client = $this->getClient();
26
27 $client->getContainer()->get('craue_config')->set('import_with_rabbitmq', 1);
28
29 $crawler = $client->request('GET', '/import/elcurator');
30
31 $this->assertSame(200, $client->getResponse()->getStatusCode());
32 $this->assertSame(1, $crawler->filter('form[name=upload_import_file] > button[type=submit]')->count());
33 $this->assertSame(1, $crawler->filter('input[type=file]')->count());
34
35 $client->getContainer()->get('craue_config')->set('import_with_rabbitmq', 0);
36 }
37
38 public function testImportElcuratorBadFile()
39 {
40 $this->logInAs('admin');
41 $client = $this->getClient();
42
43 $crawler = $client->request('GET', '/import/elcurator');
44 $form = $crawler->filter('form[name=upload_import_file] > button[type=submit]')->form();
45
46 $data = [
47 'upload_import_file[file]' => '',
48 ];
49
50 $client->submit($form, $data);
51
52 $this->assertSame(200, $client->getResponse()->getStatusCode());
53 }
54
55 public function testImportElcuratorWithRedisEnabled()
56 {
57 $this->checkRedis();
58 $this->logInAs('admin');
59 $client = $this->getClient();
60
61 $client->getContainer()->get('craue_config')->set('import_with_redis', 1);
62
63 $crawler = $client->request('GET', '/import/elcurator');
64
65 $this->assertSame(200, $client->getResponse()->getStatusCode());
66 $this->assertSame(1, $crawler->filter('form[name=upload_import_file] > button[type=submit]')->count());
67 $this->assertSame(1, $crawler->filter('input[type=file]')->count());
68
69 $form = $crawler->filter('form[name=upload_import_file] > button[type=submit]')->form();
70
71 $file = new UploadedFile(__DIR__ . '/../fixtures/elcurator.json', 'elcurator.json');
72
73 $data = [
74 'upload_import_file[file]' => $file,
75 ];
76
77 $client->submit($form, $data);
78
79 $this->assertSame(302, $client->getResponse()->getStatusCode());
80
81 $crawler = $client->followRedirect();
82
83 $this->assertGreaterThan(1, $body = $crawler->filter('body')->extract(['_text']));
84 $this->assertContains('flashes.import.notice.summary', $body[0]);
85
86 $this->assertNotEmpty($client->getContainer()->get('wallabag_core.redis.client')->lpop('wallabag.import.elcurator'));
87
88 $client->getContainer()->get('craue_config')->set('import_with_redis', 0);
89 }
90
91 public function testImportElcuratorWithFile()
92 {
93 $this->logInAs('admin');
94 $client = $this->getClient();
95
96 $crawler = $client->request('GET', '/import/elcurator');
97 $form = $crawler->filter('form[name=upload_import_file] > button[type=submit]')->form();
98
99 $file = new UploadedFile(__DIR__ . '/../fixtures/elcurator.json', 'elcurator.json');
100
101 $data = [
102 'upload_import_file[file]' => $file,
103 ];
104
105 $client->submit($form, $data);
106
107 $this->assertSame(302, $client->getResponse()->getStatusCode());
108
109 $crawler = $client->followRedirect();
110
111 $this->assertGreaterThan(1, $body = $crawler->filter('body')->extract(['_text']));
112 $this->assertContains('flashes.import.notice.summary', $body[0]);
113
114 $content = $client->getContainer()
115 ->get('doctrine.orm.entity_manager')
116 ->getRepository('WallabagCoreBundle:Entry')
117 ->findByUrlAndUserId(
118 'https://devblog.lexik.fr/git/qualite-de-code-integration-de-php-git-hooks-dans-symfony2-2842',
119 $this->getLoggedInUserId()
120 );
121
122 $this->assertInstanceOf('Wallabag\CoreBundle\Entity\Entry', $content);
123
124 $this->assertSame('Qualité de code - Intégration de php-git-hooks dans Symfony2 - Experts Symfony et Drupal - Lexik', $content->getTitle());
125 $this->assertSame('2015-09-09', $content->getCreatedAt()->format('Y-m-d'));
126 $this->assertTrue($content->isStarred(), 'Entry is starred');
127
128 $tags = $content->getTags();
129 $this->assertContains('tag1', $tags, 'It includes the "tag1" tag');
130 $this->assertContains('tag2', $tags, 'It includes the "tag2" tag');
131 }
132}
diff --git a/tests/Wallabag/ImportBundle/Controller/ImportControllerTest.php b/tests/Wallabag/ImportBundle/Controller/ImportControllerTest.php
index e1ec7c65..f0edb78d 100644
--- a/tests/Wallabag/ImportBundle/Controller/ImportControllerTest.php
+++ b/tests/Wallabag/ImportBundle/Controller/ImportControllerTest.php
@@ -24,6 +24,6 @@ class ImportControllerTest extends WallabagCoreTestCase
24 $crawler = $client->request('GET', '/import/'); 24 $crawler = $client->request('GET', '/import/');
25 25
26 $this->assertSame(200, $client->getResponse()->getStatusCode()); 26 $this->assertSame(200, $client->getResponse()->getStatusCode());
27 $this->assertSame(8, $crawler->filter('blockquote')->count()); 27 $this->assertSame(9, $crawler->filter('blockquote')->count());
28 } 28 }
29} 29}
diff --git a/tests/Wallabag/ImportBundle/Controller/PinboardControllerTest.php b/tests/Wallabag/ImportBundle/Controller/PinboardControllerTest.php
index 15646d55..963759b1 100644
--- a/tests/Wallabag/ImportBundle/Controller/PinboardControllerTest.php
+++ b/tests/Wallabag/ImportBundle/Controller/PinboardControllerTest.php
@@ -121,7 +121,7 @@ class PinboardControllerTest extends WallabagCoreTestCase
121 $this->assertInstanceOf('Wallabag\CoreBundle\Entity\Entry', $content); 121 $this->assertInstanceOf('Wallabag\CoreBundle\Entity\Entry', $content);
122 $this->assertNotEmpty($content->getMimetype(), 'Mimetype for https://ma.ttias.be is ok'); 122 $this->assertNotEmpty($content->getMimetype(), 'Mimetype for https://ma.ttias.be is ok');
123 $this->assertNotEmpty($content->getPreviewPicture(), 'Preview picture for https://ma.ttias.be is ok'); 123 $this->assertNotEmpty($content->getPreviewPicture(), 'Preview picture for https://ma.ttias.be is ok');
124 $this->assertNotEmpty($content->getLanguage(), 'Language for https://ma.ttias.be is ok'); 124 $this->assertNull($content->getLanguage(), 'Language for https://ma.ttias.be is null');
125 125
126 $tags = $content->getTags(); 126 $tags = $content->getTags();
127 $this->assertContains('foot', $tags, 'It includes the "foot" tag'); 127 $this->assertContains('foot', $tags, 'It includes the "foot" tag');
diff --git a/tests/Wallabag/ImportBundle/fixtures/elcurator.json b/tests/Wallabag/ImportBundle/fixtures/elcurator.json
new file mode 100644
index 00000000..f6fb2dfb
--- /dev/null
+++ b/tests/Wallabag/ImportBundle/fixtures/elcurator.json
@@ -0,0 +1,13 @@
1[
2 {
3 "created_at": "2015-09-09 11:10:32 UTC",
4 "title": "Qualité de code - Intégration de php-git-hooks dans Symfony2 - Experts Symfony et Drupal - Lexik",
5 "url": "https://devblog.lexik.fr/git/qualite-de-code-integration-de-php-git-hooks-dans-symfony2-2842",
6 "description": null,
7 "tags": [
8 "tag1",
9 "tag2"
10 ],
11 "is_saved": true
12 }
13]