]> git.immae.eu Git - github/wallabag/wallabag.git/commitdiff
Merge pull request #2412 from wallabag/fix-postgres-migration
authorThomas Citharel <tcit@tcit.fr>
Sat, 15 Oct 2016 12:42:46 +0000 (14:42 +0200)
committerGitHub <noreply@github.com>
Sat, 15 Oct 2016 12:42:46 +0000 (14:42 +0200)
Fix PostgreSQL migrations

48 files changed:
.github/ISSUE_TEMPLATE.md
Makefile [new file with mode: 0755]
README.md
RELEASE_PROCESS.md
app/config/config.yml
composer.json
docs/de/developer/rabbitmq.rst
docs/de/developer/redis.rst
docs/de/developer/testsuite.rst [new file with mode: 0644]
docs/de/index.rst
docs/de/user/configuration.rst
docs/de/user/installation.rst
docs/de/user/parameters.rst [new file with mode: 0644]
docs/de/user/upgrade-2.0.x-2.1.1.rst [moved from docs/de/user/upgrade-2.0.x-2.1.y.rst with 68% similarity]
docs/de/user/upgrade-2.1.x-2.1.y.rst [moved from docs/de/user/upgrade-2.0.x-2.0.y.rst with 80% similarity]
docs/en/developer/api.rst
docs/en/developer/rabbitmq.rst
docs/en/developer/redis.rst
docs/en/developer/testsuite.rst [new file with mode: 0644]
docs/en/index.rst
docs/en/user/android.rst
docs/en/user/configuration.rst
docs/en/user/import.rst
docs/en/user/installation.rst
docs/en/user/parameters.rst [new file with mode: 0644]
docs/en/user/upgrade-2.0.x-2.1.1.rst [moved from docs/en/user/upgrade-2.0.x-2.1.y.rst with 51% similarity]
docs/en/user/upgrade-2.1.x-2.1.y.rst [moved from docs/en/user/upgrade-2.0.x-2.0.y.rst with 80% similarity]
docs/fr/developer/rabbitmq.rst
docs/fr/developer/redis.rst
docs/fr/developer/testsuite.rst [new file with mode: 0644]
docs/fr/index.rst
docs/fr/user/configuration.rst
docs/fr/user/import.rst
docs/fr/user/installation.rst
docs/fr/user/parameters.rst [new file with mode: 0644]
docs/fr/user/upgrade-2.0.x-2.1.1.rst [moved from docs/fr/user/upgrade-2.0.x-2.1.y.rst with 60% similarity]
docs/fr/user/upgrade-2.1.x-2.1.y.rst [moved from docs/fr/user/upgrade-2.0.x-2.0.y.rst with 85% similarity]
scripts/install.sh [new file with mode: 0644]
scripts/release.sh [new file with mode: 0644]
scripts/update.sh [new file with mode: 0644]
src/Wallabag/ApiBundle/Entity/AccessToken.php
src/Wallabag/ApiBundle/Entity/RefreshToken.php
src/Wallabag/CoreBundle/Command/InstallCommand.php
src/Wallabag/CoreBundle/Resources/views/themes/common/Entry/share.html.twig
src/Wallabag/CoreBundle/Resources/views/themes/common/Static/_bookmarklet.html.twig
tests/Wallabag/CoreBundle/WallabagCoreTestCase.php
tests/Wallabag/ImportBundle/Controller/ChromeControllerTest.php
tests/Wallabag/ImportBundle/Controller/FirefoxControllerTest.php

index 6e8a87a98e677eefc694a6cea12bf59c3fa9cb6c..38bf2df8dcf96848505e1b5d4aa3d9239101a119 100644 (file)
@@ -1,3 +1,5 @@
+:warning: If your issue is about an error during fetching a link, please read: http://doc.wallabag.org/en/master/user/errors_during_fetching.html#how-can-i-help-to-fix-that
+
 ### Issue details
 
 Please provide issue details here.
diff --git a/Makefile b/Makefile
new file mode 100755 (executable)
index 0000000..1c6c0d5
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,43 @@
+TMP_FOLDER=/tmp
+RELEASE_FOLDER=wllbg-release
+
+ifndef ENV
+       ENV=prod
+endif
+
+help: ## Display this help menu
+       @grep -E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-30s\033[0m %s\n", $$1, $$2}'
+
+clean: ## Clear the application cache
+       @rm -rf var/cache/*
+
+install: ## Install wallabag with the latest version
+       @sh scripts/install.sh $(ENV)
+
+update: ## Update the wallabag installation to the latest version
+       @sh scripts/update.sh $(ENV)
+
+run: ## Run the wallabag built-in server
+       @php bin/console server:run --env=$(ENV)
+
+build: ## Run grunt
+       @grunt
+
+test: ## Launch wallabag testsuite
+       @if [ ! -d "vendor/phpunit" ]; then composer install; fi
+       @ant prepare && vendor/phpunit/phpunit/phpunit -v
+
+release: ## Create a package. Need a VERSION parameter (eg: `make release VERSION=master`).
+ifndef VERSION
+       $(error VERSION is not set)
+endif
+       @sh scripts/release.sh $(VERSION) $(TMP_FOLDER) $(RELEASE_FOLDER) $(ENV)
+
+travis: ## Make some stuff for Travis-CI
+
+deploy: ## Deploy wallabag
+       @bundle exec cap staging deploy
+
+.PHONY: help clean install update build test release travis deploy
+
+.DEFAULT_GOAL := install
index 048315c04b6620e8b49e7d1fe39249c3572d7c35..c948828843bc043589ba6217dcb6f437ee8c470b 100644 (file)
--- a/README.md
+++ b/README.md
@@ -6,23 +6,22 @@
 wallabag is a self hostable application allowing you to not miss any content anymore.
 Click, save and read it when you can. It extracts content so that you can read it when you have time.
 
-More informations on our website: [wallabag.org](https://wallabag.org)
+More information on our website: [wallabag.org](https://wallabag.org).
+
+![wallabag logo](https://raw.githubusercontent.com/wallabag/logo/master/_default/typo-horizontal/png/sm/logo-typo-horizontal-black-no-bg-no-border-sm.png)
 
 # Install wallabag
+Please read [the documentation to see the wallabag requirements](http://doc.wallabag.org/en/master/user/installation.html#requirements).
 
-If you don't have it yet, please [install composer](https://getcomposer.org/download/) or be sure to use Composer 1.2 (`composer selfupdate` can help you about that). Read [our documentation](http://doc.wallabag.org) to have more information about installation.
 Then you can install wallabag by executing the following commands:
 
 ```
-    git clone https://github.com/wallabag/wallabag.git
-    cd wallabag
-    git checkout 2.1.1
-    SYMFONY_ENV=prod composer install --no-dev -o --prefer-dist
-    php bin/console wallabag:install --env=prod
-    php bin/console server:run --env=prod
+git clone https://github.com/wallabag/wallabag.git
+cd wallabag && make install
+make run
 ```
 
-## License
+# License
 Copyright © 2013-2016 Nicolas Lœuillet <nicolas@loeuillet.org>
 This work is free. You can redistribute it and/or modify it under the
 terms of the MIT License. See the COPYING file for more details.
index 359bc921e2e5cae60dce5bc5f338e966ffcdee6d..8ac9bbcde7bf49a824417fa589cb7701b02ef283 100644 (file)
@@ -1,48 +1,45 @@
 ## Definition
 
 A release is mostly a git tag of http://github.com/wallabag/wallabag, following [semantic versioning](http://semver.org).
-The last release at the time of writing is 2.0.0-alpha.2, from the v2 branch.
 
 ### Steps to release
 
-During this documentation, we assume the release is `release-2.0.0-beta.1`.
+During this documentation, we assume the release is `$LAST_WALLABAG_RELEASE`.
 
 #### Files to edit
 
 - `app/config/config.yml` (`wallabag_core.version`)
-- `README.md` (`composer create-project` command)
-- `docs/en/user/installation.rst` and its translations (`composer create-project` command)
-- `CHANGELOG.md` (by using this command `github_changelog_generator --no-compare-link --future-release "2.x.x"`. [github-changelog-generator is available here](https://github.com/skywinder/github-changelog-generator))
+- `CHANGELOG.md` (by using this command `github_changelog_generator --no-compare-link`. [github-changelog-generator is available here](https://github.com/skywinder/github-changelog-generator))
 
 #### Create release on GitHub
 
 - Run these commands to create the tag:
 
 ```
-    git checkout v2
-    git pull origin v2
-    git checkout -b release-2.0.0-beta.1
-    SYMFONY_ENV=prod composer up --no-dev
-    git add --force composer.lock
-    git add README.md
-    git commit -m "Release wallabag 2.0.0-beta.1"
-    git push origin release-2.0.0-beta.1
+git checkout master
+git pull origin master
+git checkout -b release-$LAST_WALLABAG_RELEASE
+SYMFONY_ENV=prod composer up --no-dev
+git add --force composer.lock
+git commit -m "Release wallabag $LAST_WALLABAG_RELEASE"
+git push origin release-$LAST_WALLABAG_RELEASE
 ```
 
-- Create a new pull request with this title `DON'T MERGE Release wallabag 2.0.0-beta.1`. This pull request is used to launch builds on Travis-CI.
-- Run these commands to create the package:
+- Create a new pull request with this title `DON'T MERGE Release wallabag $LAST_WALLABAG_RELEASE`. This pull request is used to launch builds on Travis-CI.
+- Run these command to create the package:
 
 ```
-    git clone git@github.com:wallabag/wallabag.git -b release-2.0.0-beta.1 release-2.0.0-beta.1
-    SYMFONY_ENV=prod composer up -d=release-2.0.0-beta.1 --no-dev
-    tar czf wallabag-release-2.0.0-beta.1.tar.gz --exclude="var/*" --exclude=".git" release-2.0.0-beta.1
+make release master /tmp wllbg-release prod
 ```
 
 - [Create the new release on GitHub](https://github.com/wallabag/wallabag/releases/new). You have to upload on this page the package.
-- Delete the `release-2.0.0-beta.1` branch and close the pull request (**DO NOT MERGE IT**).
+- Delete the `release-$LAST_WALLABAG_RELEASE` branch and close the pull request (**DO NOT MERGE IT**).
 - Update the URL shortener (used on `wllbg.org` to generate links like `http://wllbg.org/latest-v2-package` or `http://wllbg.org/latest-v2`)
 - Update [the downloads page](https://github.com/wallabag/wallabag.org/blob/master/content/pages/download.md) on the website (MD5 sum, release date)
-- Drink a beer!
+- Update Dockerfile https://github.com/wallabag/docker (and create a new tag)
+- Update wallabag.org website (downloads, releases and new blog post)
+- Put the next patch version suffixed with `-dev` in `app/config/config.yml` (`wallabag_core.version`)
+- Drink a :beer:!
 
 ### `composer.lock`
 A release tag must contain a `composer.lock` file. It sets which dependencies were available at the time a release was done,
index 75d7299c1258696306c88aa3472457273b5c102b..bcc4c8eb0f5940c0fa904e5143293c6eef02bc10 100644 (file)
@@ -30,7 +30,7 @@ framework:
     assets: ~
 
 wallabag_core:
-    version: 2.1.1
+    version: 2.1.2-dev
     paypal_url: "https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=9UBA65LG3FX9Y&lc=gb"
     languages:
         en: 'English'
index 4f56162ecaad2c3af6ca0f735780491a8ab9e325..79de337bada8f38cbd5a9e69c393f5be993a0bfc 100644 (file)
@@ -65,9 +65,9 @@
         "liip/theme-bundle": "~1.1",
         "lexik/form-filter-bundle": "~5.0",
         "j0k3r/graby": "~1.0",
-        "friendsofsymfony/user-bundle": "~2.0@dev",
+        "friendsofsymfony/user-bundle": "dev-master#e168ed64629d034cb9cbbffb9d4350f62ef04fab as 2.0.x-dev",
         "friendsofsymfony/oauth-server-bundle": "^1.5",
-        "stof/doctrine-extensions-bundle": "^1.2@dev",
+        "stof/doctrine-extensions-bundle": "^1.2",
         "scheb/two-factor-bundle": "~2.0",
         "grandt/phpepub": "~4.0",
         "wallabag/php-mobi": "~1.0.0",
index 37e9984ba79681e1e7aa6ff0f5f0040f1a42720c..f81e07e3e8761faf38264fcc1dec006540852783 100644 (file)
@@ -46,6 +46,10 @@ Bearbeite die Datei ``parameters.yml``, um die RabbitMQ Konfiguration einzuricht
     rabbitmq_user: guest
     rabbitmq_password: guest
 
+Enable RabbitMQ in wallabag
+---------------------------
+
+In internal settings, in the **Import** section, enable RabbitMQ (with the value 1).
 
 Starte den RabbitMQ Consumer
 ----------------------------
index 46334cf036d58bd226c33aad7a35392b2fe871bc..57b415506483580acc57b59e506a8b2f0ce2efc8 100644 (file)
@@ -35,6 +35,10 @@ Bearbeite die Datei ``parameters.yml``, um die RabbitMQ Konfiguration einzuricht
     redis_host: localhost
     redis_port: 6379
 
+Enable Redis in wallabag
+------------------------
+
+In internal settings, in the **Import** section, enable Redis (with the value 1).
 
 Starte den Redis Consumer
 -------------------------
diff --git a/docs/de/developer/testsuite.rst b/docs/de/developer/testsuite.rst
new file mode 100644 (file)
index 0000000..b2b16cd
--- /dev/null
@@ -0,0 +1,10 @@
+Testsuite
+=========
+
+To ensure wallabag development quality, we wrote tests with `PHPUnit <https://phpunit.de>`_.
+
+If you contribute to the project (by translating the application, by fixing bugs or by adding a new feature), please write your own tests.
+
+To launch wallabag testsuite, you need to install `ant <http://ant.apache.org>`_.
+
+Then, execute this command ``make test``.
index b3cd33b07a8b471d877bee4eaa3721a60b7416e3..a380d7bdd54eb0728fb0b658da4c2f33a66f1a8b 100644 (file)
@@ -30,8 +30,8 @@ Die Dokumentation ist in anderen Sprachen verfügbar :
 
    user/faq
    user/installation
-   user/upgrade-2.0.x-2.1.y
-   user/upgrade-2.0.x-2.0.y
+   user/upgrade-2.0.x-2.1.1
+   user/upgrade-2.0.x-2.1.1
    user/migration
    user/import
    user/create_account
@@ -44,6 +44,7 @@ Die Dokumentation ist in anderen Sprachen verfügbar :
    user/filters
    user/tags
    user/android
+   user/parameters
 
 .. _dev-docs:
 
index 67695ff10e9c505d7384228bf22f707717342a3e..0b0793b11d219f603387926207df8ac4fc2d985d 100644 (file)
@@ -102,7 +102,7 @@ Wenn *readingTime >= 5 AND domainName = "github.com"*, dann tagge als *lange zu
 Welche Variablen und Operatoren kann ich zum Regeln schreiben nutzen?
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
-Die folgenden Variabel und Operatoren können genutzt werden, um Tagging-Regeln zu erstellen:
+Die folgenden Variablen und Operatoren können genutzt werden, um Tagging-Regeln zu erstellen (sei vorsichtig, denn bei einigen Werten musst du Anführungszeichen hinzufügen, z.B. ``language = "de"``):
 
 ===========  ==============================================  ========  ==========
 Variable     Bedeutung                                       Operator  Bedeutung
index 3578dca94360044243a498266499de1c357f4225..35a30f5240a6f960236198b1f19ca889a7bd51a1 100644 (file)
@@ -6,6 +6,20 @@ Voraussetzungen
 
 wallabag ist kompatibel mit PHP >= 5.5, inkl. PHP 7.
 
+.. note::
+
+    To install wallabag easily, we create a ``Makefile``, so you need to have the ``make`` tool.
+
+wallabag nutzt eine große Anzahl an Bibliotheken, um zu funktionieren. Diese Bibliotheken müssen mit einem Tool namens Composer installiert werden. Du musst es installieren sofern du es bisher noch nicht gemacht hast.
+
+Composer installieren:
+
+::
+
+    curl -s http://getcomposer.org/installer | php
+
+Du kannst eine spezifische Anleitung `hier <https://getcomposer.org/doc/00-intro.md>`__ finden.
+
 Du benötigst die folgenden Extensions damit wallabag funktioniert. Einige von diesen sind vielleicht schon in deiner Version von PHP aktiviert, somit musst du eventuell
 nicht alle folgenden Pakete installieren.
 
@@ -39,33 +53,20 @@ Installation
 Auf einem dedizierten Webserver (empfohlener Weg)
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
-wallabag nutzt eine große Anzahl an Bibliotheken, um zu funktionieren. Diese Bibliotheken müssen mit einem Tool namens Composer installiert werden. Du musst es installieren sofern du es bisher noch nicht gemacht hast.
-
-Composer installieren:
-
-::
-
-    curl -s http://getcomposer.org/installer | php
-
-Du kannst eine spezifische Anleitung `hier <https://getcomposer.org/doc/00-intro.md>`__ finden.
-
 Um wallabag selbst zu installieren, musst du die folgenden Kommandos ausführen:
 
 ::
 
     git clone https://github.com/wallabag/wallabag.git
-    cd wallabag
-    git checkout 2.1.1 --force
-    SYMFONY_ENV=prod composer install --no-dev -o --prefer-dist
-    php bin/console wallabag:install --env=prod
+    cd wallabag && make install
 
 Um PHPs eingebauten Server zu starten und zu testen, ob alles korrekt installiert wurde, kannst du folgendes Kommando ausführen:
 
 ::
 
-    php bin/console server:run --env=prod
+    make run
 
-Und wallabag unter http://deineserverip:8000 erreichen
+und wallabag unter http://deineserverip:8000 erreichen.
 
 .. tip::
 
@@ -87,18 +88,18 @@ Führe dieses Kommando aus, um das neueste Paket herunterzuladen und zu entpacke
 
     wget http://wllbg.org/latest-v2-package && tar xvf latest-v2-package
 
-(md5 hash: ``6c33520e29cc754b687f9cee0398dede``)
+Du findest die `md5 Hashsumme des neuesten Pakets auf unserer Website <https://www.wallabag.org/pages/download-wallabag.html>`_.
 
-Jetzt lese die Dokumentation, um einen Virtualhost zu erstellen, dann greife auf dein wallabag zu.
+Jetzt lies die Dokumentation, um einen Virtualhost zu erstellen, dann greife auf dein wallabag zu.
 Wenn du die Datenbankkonfiguration eingestellt hast, MySQL oder PostgreSQL zu nutzen, musst du einen Nutzer über das folgende Kommando erstellen ``php bin/console wallabag:install --env=prod``.
 
 Installation mit Docker
-------------------------
+~~~~~~~~~~~~~~~~~~~~~~~
 
 Wir stellen ein Docker Image zu Verfügung, um wallabag einfach zu installieren. Schaue in unser Repository in unserem `Docker Hub <https://hub.docker.com/r/wallabag/wallabag/>`__, um mehr Informationen zu erhalten.
 
 Kommando, um den Container zu starten
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
 .. code-block:: bash
 
@@ -108,7 +109,7 @@ Virtualhosts
 ------------
 
 Konfiguration von Apache
-~~~~~~~~~~~~~~~~~~~~~~~
+~~~~~~~~~~~~~~~~~~~~~~~~
 
 Angenommen du willst wallabag in das Verzeichnis ``/var/www/wallabag`` installieren und du willst PHP als Apache Modul nutzen, dann ist hier ein vhost für wallabag:
 
@@ -190,15 +191,14 @@ Angenommen du willst wallabag in das Verzeichnis ``/var/www/wallabag`` installie
         access_log /var/log/nginx/wallabag_access.log;
     }
 
-Nach dem neuladen oder neustarten von nginx, solltest du nun wallabag unter http://domain.tld erreichen.
+Nach dem Neuladen oder Neustarten von nginx solltest du nun wallabag unter http://domain.tld erreichen.
 
 .. tip::
 
-    When you want to import large file into wallabag, you need to add this line in your nginx configuration ``client_max_body_size XM; # allows file uploads up to X megabytes``.
     Wenn du eine große Datei in wallabag importieren willst, solltest du diese Zeile zu deiner nginx Konfiguration hinzufügen ``client_max_body_size XM; # allows file uploads up to X megabytes``.
 
 Konfiguration von lighttpd
-~~~~~~~~~~~~~~~~~~~~~~~~~
+~~~~~~~~~~~~~~~~~~~~~~~~~~
 
 Angenommen du willst wallabag in das Verzeichnis ``/var/www/wallabag`` installieren, dann ist hier ein Rezept für wallabag (bearbeite deine ``lighttpd.conf`` und füge die Konfiguration dort ein):
 
diff --git a/docs/de/user/parameters.rst b/docs/de/user/parameters.rst
new file mode 100644 (file)
index 0000000..4c68fe9
--- /dev/null
@@ -0,0 +1,50 @@
+Was bedeuten die Parameter?
+===========================
+.. csv-table:: Datenbankparameter
+   :header: "Name", "Standardwert", "Beschreibung"
+
+   "database_driver", "pdo_sqlite", "Sollte pdo_sqlite oder pdo_mysql oder pdo_pgsql sein"
+   "database_host", "127.0.0.1", "Hostadresse deiner Datenbank (normalerweise localhost oder 127.0.0.1)"
+   "database_port", "~", "Port deiner Datenbank (Du kannst ``~`` stehen lassen, um den Standardport zu nutzen)"
+   "database_name", "symfony", "Benenne deine Datenbank"
+   "database_user", "root", "Benutzer, der Schreibrecht in der Datenbank hat"
+   "database_password", "~", "Passwort des Benutzers"
+   "database_path", "``""%kernel.root_dir%/../data/db/wallabag.sqlite""``", "nur für SQLite, definiere, wo die Datenbankdatei abgelegt werden soll. Lass den Parameter leer für andere Datenbanktypen."
+   "database_table_prefix", "wallabag_", "alle wallabag Tabellen erhalten diesen Präfix im Namen. Du kannst einen ``_`` dafür im Präfix nutzen, um das zu verdeutlichen."
+   "database_socket", "null", "Wenn deine Datenbank einen Socket statt TCP nutzt, schreibe hier den Pfad zum Socket hin (andere Verbindungsparameter werden dann ignoriert."
+
+.. csv-table:: Konfiguration, um mit wallabag E-Mails senden zu können
+   :header: "Name", "Standardwert", "Beschreibung"
+
+   "mailer_transport", "smtp",  "Die exakte Transportmethode, um E-Mails zuzustellen. Gültige Werte sind: smtp, gmail, mail, sendmail, null (was das Mailen deaktivert)"
+   "mailer_host", "127.0.0.1",  "Der Host, zu dem sich verbunden wird, wenn SMTP als Transport genutzt wird."
+   "mailer_user", "~",  "Der Benutzername, wenn SMTP als Transport genutzt wird."
+   "mailer_password", "~",  "Das Passwort, wenn SMTP als Transport genutzt wird."
+
+.. csv-table:: Andere wallabag Optionen
+   :header: "Name", "Standardwert", "Beschreibung"
+
+   "locale", "en", "Standardsprache deiner wallabag Instanz (wie z.B. en, fr, es, etc.)"
+   "secret", "ovmpmAWXRCabNlMgzlzFXDYmCFfzGv", "Dieser String sollte einzigartig für deine Applikation sein und er wird genutzt, um sicherheitsrelevanten Operationen mehr Entropie hinzuzufügen."
+   "twofactor_auth", "true", "true, um Zwei-Faktor-Authentifizierung zu aktivieren"
+   "twofactor_sender", "no-reply@wallabag.org", "E-Mail-Adresse des Senders der Mails mit dem Code für die Zwei-Faktor-Authentifizierung"
+   "fosuser_registration", "true", "true, um die Registrierung für jedermann zu aktivieren"
+   "fosuser_confirmation", "true", "true, um eine Bestätigungsmail für jede Registrierung zu senden"
+   "from_email", "no-reply@wallabag.org", "E-Mail-Adresse, die im Absenderfeld jeder Mail genutzt wird"
+   "rss_limit", "50", "Artikellimit für RSS Feeds"
+
+.. csv-table:: RabbitMQ Konfiguration
+   :header: "Name", "Standardwert", "Beschreibung"
+
+   "rabbitmq_host", "localhost", "Host deines RabbitMQ"
+   "rabbitmq_port", "5672", "Port deines RabbitMQ"
+   "rabbitmq_user", "guest", "Benutzer, der die Queue lesen kann"
+   "rabbitmq_password", "guest", "Passwort dieses Benutzers"
+
+.. csv-table:: Redis Konfiguration
+   :header: "Name", "Standardwert", "Beschreibung"
+
+   "redis_scheme", "tcp", "Bestimmt das Protokoll, dass genutzt wird, um mit Redis zu kommunizieren. Gültige Werte sind: tcp, unix, http"
+   "redis_host", "localhost", "IP oder Hostname des Zielservers (ignoriert bei Unix Schema)"
+   "redis_port", "6379", "TCP/IP Port des Zielservers (ignoriert bei Unix Schema)"
+   "redis_path", "null", "Pfad zur Unix Domain Socket Datei, wenn Redis Unix Domain Sockets nutzt"
similarity index 68%
rename from docs/de/user/upgrade-2.0.x-2.1.y.rst
rename to docs/de/user/upgrade-2.0.x-2.1.1.rst
index eee50fe4570b9b8bf5027eaf190bd7a4cd2e7a2f..db81a1becaa9c78a4cb9141c1722ab22c592bf0d 100644 (file)
@@ -1,5 +1,5 @@
-Wallabag updaten
-================
+Wallabag von 2.0.x auf 2.1.1 updaten
+====================================
 
 .. warning::
 Wenn du den Import von Pocket durch das Hinzufügen des Consumer Key in den internen Einstellungen konfiguriert hast, fertige bitte ein Backup deines Keys an, bevor du auf das neue Release migrierst: Du wirst den Key nach dem Update in der Konfiguration erneut eintragen müssen.
@@ -30,23 +30,43 @@ Lade das neueste Release von wallabag herunter:
 
     wget http://wllbg.org/latest-v2-package && tar xvf latest-v2-package
 
-(2.1.1 md5 hash: ``9584a3b60a2b2a4de87f536548caac93``)
+(2.1.1 md5 Hashsumme: ``9584a3b60a2b2a4de87f536548caac93``)
 
 Entpacke das Archiv in deinen wallabag-Ordner und ersetze ``app/config/parameters.yml`` mit deiner Datei.
 
 Bitte beachte, dass wir in dieser Version neue Parameter hinzugefügt haben. Du musst die Datei ``app/config/parameters.yml`` bearbeiten und die folgenden Zeilen hinzufügen (ersetze die Werte mit deiner Konfiguration):
 
-.. code-block:: bash
-
-    # RabbitMQ processing
-    rabbitmq_host: localhost
-    rabbitmq_port: 5672
-    rabbitmq_user: guest
-    rabbitmq_password: guest
-
-    # Redis processing
-    redis_host: localhost
-    redis_port: 6379
+.. code-block:: yml
+
+    parameters:
+        database_driver: pdo_sqlite
+        database_host: 127.0.0.1
+        database_port: null
+        database_name: symfony
+        database_user: root
+        database_password: null
+        database_path: '%kernel.root_dir%/../data/db/wallabag.sqlite'
+        database_table_prefix: wallabag_
+        mailer_transport: smtp
+        mailer_host: 127.0.0.1
+        mailer_user: null
+        mailer_password: null
+        locale: en
+        secret: ovmpmAWXRCabNlMgzlzFXDYmCFfzGv
+        twofactor_auth: true
+        twofactor_sender: no-reply@wallabag.org
+        fosuser_registration: true
+        fosuser_confirmation: true
+        from_email: no-reply@wallabag.org
+        rss_limit: 50
+        rabbitmq_host: localhost
+        rabbitmq_port: 5672
+        rabbitmq_user: guest
+        rabbitmq_password: guest
+        redis_host: localhost
+        redis_port: 6379
+
+Du kannst `hier eine Dokumentation über die Parameter finden <http://doc.wallabag.org/en/master/user/parameters.html>`_.
 
 Wenn du SQLite nutzt, musst auch das ``data/`` Verzeichnis in die neue Installation kopieren.
 
similarity index 80%
rename from docs/de/user/upgrade-2.0.x-2.0.y.rst
rename to docs/de/user/upgrade-2.1.x-2.1.y.rst
index 5820a0d23a6830687e783bfedda0bfb52dadc46e..e638ea9b64db29f20c672469845cb69e5b6d2d11 100644 (file)
@@ -1,17 +1,17 @@
-Wallabag updaten 2.0.x -> 2.1.x
-===============================
+Wallabag von 2.1.x auf 2.1.y updaten
+====================================
 
 Update auf einem dedizierten Webserver
 --------------------------------------
 
-Das neueste Release ist auf https://www.wallabag.org/pages/download-wallabag.html veröffentlicht. Um deine wallabag Installation auf die neueste Version upzudaten, führe die folgenden Kommandos in deinem wallabag Ordner aus (ersetze ``2.0.8`` mit der neuesten Releasenummer):
+Das neueste Release ist auf https://www.wallabag.org/pages/download-wallabag.html veröffentlicht. Um deine wallabag Installation auf die neueste Version upzudaten, führe die folgenden Kommandos in deinem wallabag Ordner aus (ersetze ``2.1.2`` mit der neuesten Releasenummer):
 
 ::
 
     rm -rf var/cache/*
     git fetch origin
     git fetch --tags
-    git checkout 2.0.8
+    git checkout 2.1.2 --force
     SYMFONY_ENV=prod composer install --no-dev -o --prefer-dist
     php bin/console cache:clear --env=prod
 
@@ -26,7 +26,7 @@ Lade das neueste Release von wallabag herunter:
 
     wget http://wllbg.org/latest-v2-package && tar xvf latest-v2-package
 
-(md5 hash: ``4f84c725d1d6e3345eae0a406115e5ff``)
+(md5 Hashsumme von 2.1.1: ``9584a3b60a2b2a4de87f536548caac93``)
 
 Entpacke das Archiv in deinen wallabag Ordner und ersetze ``app/config/parameters.yml`` mit deiner Datei.
 
index 83f0bb8f3baa575326ef86fbe6eb92b67d38d4ac..4828cddd1c386e05830422d3bef4a53376d3b739 100644 (file)
@@ -8,7 +8,7 @@ Requirements
 
 * wallabag freshly (or not) installed on http://localhost:8000
 * ``httpie`` installed on your computer (`see project website <https://github.com/jkbrzt/httpie>`__). Note that you can also adapt the commands using curl or wget.
-* all the API methods are documented here http://localhost:8000/api/doc
+* all the API methods are documented here http://localhost:8000/api/doc (on your instance) and `on our example instance <http://v2.wallabag.org/api/doc>`_ 
 
 Creating a new API client
 -------------------------
index ca0b0f3ab0d6b769d998ca8291cabf66ad67b088..673228e9f9116a76715c80bc09a95d1dba6ceda2 100644 (file)
@@ -46,6 +46,10 @@ Edit your ``parameters.yml`` file to edit RabbitMQ configuration. The default on
     rabbitmq_user: guest
     rabbitmq_password: guest
 
+Enable RabbitMQ in wallabag
+---------------------------
+
+In internal settings, in the **Import** section, enable RabbitMQ (with the value 1).
 
 Launch RabbitMQ consumer
 ------------------------
index 005d6e4ffa6ca1c2f3754ca4533463dbbb4bf196..2e2bbbeaf41c73d9ace6c75afb39e1bec3837f6b 100644 (file)
@@ -35,6 +35,10 @@ Edit your ``parameters.yml`` file to edit Redis configuration. The default one s
     redis_host: localhost
     redis_port: 6379
 
+Enable Redis in wallabag
+------------------------
+
+In internal settings, in the **Import** section, enable Redis (with the value 1).
 
 Launch Redis consumer
 ---------------------
diff --git a/docs/en/developer/testsuite.rst b/docs/en/developer/testsuite.rst
new file mode 100644 (file)
index 0000000..b2b16cd
--- /dev/null
@@ -0,0 +1,10 @@
+Testsuite
+=========
+
+To ensure wallabag development quality, we wrote tests with `PHPUnit <https://phpunit.de>`_.
+
+If you contribute to the project (by translating the application, by fixing bugs or by adding a new feature), please write your own tests.
+
+To launch wallabag testsuite, you need to install `ant <http://ant.apache.org>`_.
+
+Then, execute this command ``make test``.
index beb3816e1a9fa02d5cbf5dda8fc523cf72ca32e6..6d85db2ba903b3ac8565d43420a8863871ab62f0 100644 (file)
@@ -30,8 +30,8 @@ The documentation is available in other languages:
 
    user/faq
    user/installation
-   user/upgrade-2.0.x-2.1.y
-   user/upgrade-2.0.x-2.0.y
+   user/upgrade-2.0.x-2.1.1
+   user/upgrade-2.1.x-2.1.y
    user/migration
    user/import
    user/create_account
@@ -45,6 +45,7 @@ The documentation is available in other languages:
    user/filters
    user/tags
    user/android
+   user/parameters
 
 .. _dev-docs:
 
index 4271f03730bb3a5abe21e42cf5a5a80f5d725171..ccbad264260201150fcebae0b5fcb6908bcdc213 100644 (file)
@@ -29,13 +29,13 @@ Fill in your wallabag data. You need to enter your wallabag address. It is impor
     :alt: Filled in settings
     :align: center
 
-After you have filled in your data, push the button Connection test and wait for the test to finish. 
+After you have filled in your data, push the button Connection test and wait for the test to finish.
 
 .. image:: ../../img/user/android_configuration_connection_test.en.png
     :alt: Connection test with your wallabag data
     :align: center
 
-The connection test shall finish with success. If not, you need to fix this first until you proceed. 
+The connection test should finish with success. If not, you need to fix this first until you proceed.
 
 .. image:: ../../img/user/android_configuration_connection_test_success.en.png
     :alt: Connection test successful
@@ -65,16 +65,16 @@ After hitting the save button, you get the following screen. The app proposes to
     :alt: Settings saved the first time
     :align: center
 
-Finally after the syncronisation finished successfully, you are presented the list of unread articles. 
+Finally after the synchronisation finished successfully, you are presented to the list of unread articles.
 
 .. image:: ../../img/user/android_unread_feed_synced.en.png
-    :alt: Filled article list cause feeds successfully syncronized
+    :alt: Filled article list cause feeds successfully synchronized
     :align: center
 
 
 
 Known limitations
-----
+-----------------
 
 2FA
 ~~~
@@ -85,7 +85,7 @@ Currently the does not support two-factor authentication. You should disable tha
 Limited amount of articles with wallabag v2
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
-In your wallabag web instance you can configure how many items are part of the RSS feed. This option did not exist in wallabag v1, where all articles were part of the feed. So if you set the amount of articles being displayed greater than the number of items being content of your RSS feed, you will only see the number of items in your RSS feed. 
+In your wallabag web instance you can configure how many items are part of the RSS feed. This option did not exist in wallabag v1, where all articles were part of the feed. So if you set the amount of articles being displayed greater than the number of items being content of your RSS feed, you will only see the number of items in your RSS feed.
 
 
 SSL/TLS encryption
index f4c55dea6e8cc757fece1ce38c5eae277661520e..f74924dfe39da2c845a3312036881f0c4a80903b 100644 (file)
@@ -100,7 +100,7 @@ if *« readingTime >= 5 AND domainName = "github.com" »* then tag as *« long r
 Which variables and operators can I use to write rules?
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
-The following variables and operators can be used to create tagging rules:
+The following variables and operators can be used to create tagging rules (be careful, for some values, you need to add quotes, for example ``language = "en"``):
 
 ===========  ==============================================  ========  ==========
 Variable     Meaning                                         Operator  Meaning
index 758e38169e6bfddb66d4aeaddfc9302e31d30281..70f0187d484dea35c5290d2140808d9c1ba5e966 100644 (file)
@@ -35,7 +35,7 @@ From Readability
 Export your Readability data
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
-On the tools (`https://www.readability.com/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).
+On the tools (`https://www.readability.com/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).
 
 Import your data into wallabag 2.x
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -51,7 +51,7 @@ From Instapaper
 Export your Instapaper data
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
-On the settings (`https://www.instapaper.com/user<https://www.instapaper.com/user>`_) page, click on "Download .CSV file" in the "Export" section. A CSV file will be downloaded (like ``instapaper-export.csv``).
+On the settings (`https://www.instapaper.com/user <https://www.instapaper.com/user>`_) page, click on "Download .CSV file" in the "Export" section. A CSV file will be downloaded (like ``instapaper-export.csv``).
 
 Import your data into wallabag 2.x
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
index 4aaabd82e1fbc072769d78288590c8cbc81c02f4..45e146164c4f1381e87ed6840d30a87d5d0f0134 100644 (file)
@@ -6,7 +6,21 @@ Requirements
 
 wallabag is compatible with PHP >= 5.5, including PHP 7.
 
-You'll need the following extensions for wallabag to work. Some of these may already activated in your version of PHP, so you may not have to install all corresponding packages.
+.. note::
+
+    To install wallabag easily, we provide a ``Makefile``, so you need to have the ``make`` tool.
+
+wallabag uses a large number of PHP libraries in order to function. These libraries must be installed with a tool called Composer. You need to install it if you have not already done so and be sure to use the 1.2 version (if you already have Composer, run a ``composer selfupdate``).
+
+Install Composer:
+
+::
+
+    curl -s http://getcomposer.org/installer | php
+
+You can find specific instructions `here <https://getcomposer.org/doc/00-intro.md>`__.
+
+You'll also need the following extensions for wallabag to work. Some of these may already activated in your version of PHP, so you may not have to install all corresponding packages.
 
 - php-session
 - php-ctype
@@ -38,31 +52,18 @@ Installation
 On a dedicated web server (recommended way)
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
-wallabag uses a large number of PHP libraries in order to function. These libraries must be installed with a tool called Composer. You need to install it if you have not already done so and be sure to use the 1.2 version (if you already have Composer, run a ``composer selfupdate``).
-
-Install Composer:
-
-::
-
-    curl -s http://getcomposer.org/installer | php
-
-You can find specific instructions `here <https://getcomposer.org/doc/00-intro.md>`__.
-
 To install wallabag itself, you must run the following commands:
 
 ::
 
     git clone https://github.com/wallabag/wallabag.git
-    cd wallabag
-    git checkout 2.1.1 --force
-    SYMFONY_ENV=prod composer install --no-dev -o --prefer-dist
-    php bin/console wallabag:install --env=prod
+    cd wallabag && make install
 
 To start PHP's build-in server and test if everything did install correctly, you can do:
 
 ::
 
-    php bin/console server:run --env=prod
+    make run
 
 And access wallabag at http://yourserverip:8000
 
@@ -86,18 +87,18 @@ Execute this command to download and extract the latest package:
 
     wget http://wllbg.org/latest-v2-package && tar xvf latest-v2-package
 
-(md5 hash of the 2.1.1 package: ``9584a3b60a2b2a4de87f536548caac93``)
+You will find the `md5 hash of the latest package on our website <https://www.wallabag.org/pages/download-wallabag.html>`_.
 
 Now, read the following documentation to create your virtual host, then access your wallabag.
 If you changed the database configuration to use MySQL or PostgreSQL, you need to create a user via this command ``php bin/console wallabag:install --env=prod``.
 
 Installation with Docker
-------------------------
+~~~~~~~~~~~~~~~~~~~~~~~~
 
-We provide you a Docker image to install wallabag easily. Have a look to our repository on `Docker Hub <https://hub.docker.com/r/wallabag/wallabag/>`__ to have more information.
+We provide you a Docker image to install wallabag easily. Have a look at our repository on `Docker Hub <https://hub.docker.com/r/wallabag/wallabag/>`__ for more information.
 
 Command to launch container
-~~~~~~~~~~~~~~~~~~~~~~~~~~~
+^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
 .. code-block:: bash
 
@@ -193,12 +194,12 @@ After reloading or restarting nginx, you should now be able to access wallabag a
 
 .. tip::
 
-    When you want to import large file into wallabag, you need to add this line in your nginx configuration ``client_max_body_size XM; # allows file uploads up to X megabytes``.
+    When you want to import large files into wallabag, you need to add this line in your nginx configuration ``client_max_body_size XM; # allows file uploads up to X megabytes``.
 
 Configuration on lighttpd
 ~~~~~~~~~~~~~~~~~~~~~~~~~
 
-Assuming you install wallabag in the /var/www/wallabag folder, here's the recipe for wallabag (edit your ``lighttpd.conf`` file and paste this configuration into it):
+Assuming you install wallabag in the ``/var/www/wallabag`` folder, here's the recipe for wallabag (edit your ``lighttpd.conf`` file and paste this configuration into it):
 
 ::
 
@@ -239,16 +240,16 @@ Rights access to the folders of the project
 Test environment
 ~~~~~~~~~~~~~~~~
 
-When we just want to test wallabag, we just run the command ``php bin/console server:run --env=prod`` to start our wallabag instance and everything will go smoothly because the user who started the project can access to the current folder naturally, without any problem.
+When we just want to test wallabag, we just run the command ``make run`` to start our wallabag instance and everything will go smoothly because the user who started the project can access to the current folder naturally, without any problem.
 
 Production environment
 ~~~~~~~~~~~~~~~~~~~~~~
 
-As soon as we use Apache or Nginx to access to our wallabag instance, and not from the command  ``php bin/console server:run --env=prod`` to start it, we should take care to grant the good rights on the good folders to keep safe all the folders of the project.
+As soon as we use Apache or Nginx to access to our wallabag instance, and not from the command  ``make run`` to start it, we should take care to grant the good rights on the good folders to keep safe all the folders of the project.
 
 To do so, the folder name, known as ``DocumentRoot`` (for apache) or ``root`` (for Nginx), has to be absolutely accessible by the Apache/Nginx user. Its name is generally ``www-data``, ``apache`` or ``nobody`` (depending on linux system used).
 
-So the folder ``/var/www/wallabag/web`` has to be accessible by this last one. But this could be not enough if we just care about this folder, because we could meet a blank page or get an error 500 when trying to access to the homepage of the project.
+So the folder ``/var/www/wallabag/web`` has to be accessible by this last one. But this may not be enough if we just care about this folder, because we could meet a blank page or get an error 500 when trying to access to the homepage of the project.
 
 This is due to the fact that we will need to grant the same rights access on the folder ``/var/www/wallabag/var`` like those we gave on the folder ``/var/www/wallabag/web``. Thus, we fix this problem with the following command:
 
diff --git a/docs/en/user/parameters.rst b/docs/en/user/parameters.rst
new file mode 100644 (file)
index 0000000..6cbd5ae
--- /dev/null
@@ -0,0 +1,50 @@
+What is the meaning of the parameters?
+======================================
+.. csv-table:: Database parameters
+   :header: "name", "default", "description"
+
+   "database_driver", "pdo_sqlite", "Should be pdo_sqlite or pdo_mysql or pdo_pgsql"
+   "database_host", "127.0.0.1", "host of your database (usually localhost or 127.0.0.1)"
+   "database_port", "~", "port of your database (you can leave ``~`` to use the default one)"
+   "database_name", "symfony", "name of your database"
+   "database_user", "root", "user that can write to this database"
+   "database_password", "~", "password of that user"
+   "database_path", "``""%kernel.root_dir%/../data/db/wallabag.sqlite""``", "only for SQLite, define where to put the database file. Leave it empty for other database"
+   "database_table_prefix", "wallabag_", "all wallabag's tables will be prefixed with that string. You can include a ``_`` for clarity"
+   "database_socket", "null", "If your database is using a socket instead of tcp, put the path of the socket (other connection parameters will then be ignored)"
+
+.. csv-table:: Configuration to send emails from wallabag
+   :header: "name", "default", "description"
+
+   "mailer_transport", "smtp",  "The exact transport method to use to deliver emails. Valid values are: smtp, gmail, mail, sendmail, null (which will disable the mailer)"
+   "mailer_host", "127.0.0.1",  "The host to connect to when using smtp as the transport."
+   "mailer_user", "~",  "The username when using smtp as the transport."
+   "mailer_password", "~",  "The password when using smtp as the transport."
+
+.. csv-table:: Other wallabag's option
+   :header: "name", "default", "description"
+
+   "locale", "en", "Default language of your wallabag instance (like en, fr, es, etc.)"
+   "secret", "ovmpmAWXRCabNlMgzlzFXDYmCFfzGv", "This is a string that should be unique to your application and it's commonly used to add more entropy to security related operations."
+   "twofactor_auth", "true", "true to enable Two factor authentication"
+   "twofactor_sender", "no-reply@wallabag.org", "email of the email sender to receive the two factor code"
+   "fosuser_registration", "true", "true to enable public registration"
+   "fosuser_confirmation", "true", "true to send a confirmation by email for each registration"
+   "from_email", "no-reply@wallabag.org", "email address used in From: field in each email"
+   "rss_limit", "50", "limit for RSS feeds"
+
+.. csv-table:: RabbitMQ configuration
+   :header: "name", "default", "description"
+
+   "rabbitmq_host", "localhost", "Host of your RabbitMQ"
+   "rabbitmq_port", "5672", "Port of your RabbitMQ"
+   "rabbitmq_user", "guest", "User that can read queues"
+   "rabbitmq_password", "guest", "Password of that user"
+
+.. csv-table:: Redis configuration
+   :header: "name", "default", "description"
+
+   "redis_scheme", "tcp", "Specifies the protocol used to communicate with an instance of Redis. Valid values are: tcp, unix, http"
+   "redis_host", "localhost", "IP or hostname of the target server (ignored for unix scheme)"
+   "redis_port", "6379", "TCP/IP port of the target server (ignored for unix scheme)"
+   "redis_path", "null", "Path of the UNIX domain socket file used when connecting to Redis using UNIX domain sockets"
similarity index 51%
rename from docs/en/user/upgrade-2.0.x-2.1.y.rst
rename to docs/en/user/upgrade-2.0.x-2.1.1.rst
index ec353a18cf63d4a7fa1e0f8b4c92e2f7aaf6c064..4f9b9ceebf39a5d7e4bf0e6b75b137c4573996f2 100644 (file)
@@ -1,14 +1,13 @@
-Upgrading from 2.0.x to 2.1.y
-=============================
+Upgrade from 2.0.x to 2.1.1
+===========================
 
 .. warning::
-Before this migration, if you configured the Pocket import by adding your consumer key in Internal settings, please do a backup of it: you'll have to add it into the Config page after the upgrade.
+
+    Before this migration, if you configured the Pocket import by adding your consumer key in Internal settings, please do a backup of it: you'll have to add it into the Config page after the upgrade.
 
 Upgrade on a dedicated web server
 ---------------------------------
 
-The last release is published on https://www.wallabag.org/pages/download-wallabag.html. In order to upgrade your wallabag installation and get the last version, run the following commands in you wallabag folder (replace ``2.1.1`` by the last release number):
-
 ::
 
     rm -rf var/cache/*
@@ -28,25 +27,45 @@ Download the last release of wallabag:
 
 .. code-block:: bash
 
-    wget http://wllbg.org/latest-v2-package && tar xvf latest-v2-package
+    wget http://framabag.org/wallabag-release-2.1.1.tar.gz && tar xvf wallabag-release-2.1.1.tar.gz
 
 (md5 hash of the 2.1.1 package: ``9584a3b60a2b2a4de87f536548caac93``)
 
 Extract the archive in your wallabag folder and replace ``app/config/parameters.yml`` with yours.
 
-Please note that we added new parameters in this version. You have to edit ``app/config/parameters.yml`` by adding these lines (replace with your configuration) :
-
-.. code-block:: bash
-
-    # RabbitMQ processing
-    rabbitmq_host: localhost
-    rabbitmq_port: 5672
-    rabbitmq_user: guest
-    rabbitmq_password: guest
-
-    # Redis processing
-    redis_host: localhost
-    redis_port: 6379
+Please check that your ``app/config/parameters.yml`` contains all the required parameters. Here is a default ``parameters.yml`` file. If you don't know which parameter you need to set, please leave the default one.
+
+.. code-block:: yml
+
+    parameters:
+        database_driver: pdo_sqlite
+        database_host: 127.0.0.1
+        database_port: null
+        database_name: symfony
+        database_user: root
+        database_password: null
+        database_path: '%kernel.root_dir%/../data/db/wallabag.sqlite'
+        database_table_prefix: wallabag_
+        mailer_transport: smtp
+        mailer_host: 127.0.0.1
+        mailer_user: null
+        mailer_password: null
+        locale: en
+        secret: ovmpmAWXRCabNlMgzlzFXDYmCFfzGv
+        twofactor_auth: true
+        twofactor_sender: no-reply@wallabag.org
+        fosuser_registration: true
+        fosuser_confirmation: true
+        from_email: no-reply@wallabag.org
+        rss_limit: 50
+        rabbitmq_host: localhost
+        rabbitmq_port: 5672
+        rabbitmq_user: guest
+        rabbitmq_password: guest
+        redis_host: localhost
+        redis_port: 6379
+
+You can find `here a documentation about parameters <http://doc.wallabag.org/en/master/user/parameters.html>`_.
 
 If you use SQLite, you must also copy your ``data/`` folder inside the new installation.
 
similarity index 80%
rename from docs/en/user/upgrade-2.0.x-2.0.y.rst
rename to docs/en/user/upgrade-2.1.x-2.1.y.rst
index 3391c2cd79587d0a7602dc9f7ebe49dcd8f9b341..575f4ba9d72b197433bc148702c3d9ed4668d032 100644 (file)
@@ -1,17 +1,17 @@
-Upgrade from 2.0.x to 2.0.y
-===========================
+Upgrading from 2.1.x to 2.1.y
+=============================
 
 Upgrade on a dedicated web server
 ---------------------------------
 
-The last release is published on https://www.wallabag.org/pages/download-wallabag.html. In order to upgrade your wallabag installation and get the last version, run the following commands in you wallabag folder (replace ``2.0.8`` by the last release number):
+The last release is published on https://www.wallabag.org/pages/download-wallabag.html. In order to upgrade your wallabag installation and get the last version, run the following commands in you wallabag folder (replace ``2.1.2`` by the last release number):
 
 ::
 
     rm -rf var/cache/*
     git fetch origin
     git fetch --tags
-    git checkout 2.0.8
+    git checkout 2.1.2 --force
     SYMFONY_ENV=prod composer install --no-dev -o --prefer-dist
     php bin/console cache:clear --env=prod
 
@@ -26,7 +26,7 @@ Download the last release of wallabag:
 
     wget http://wllbg.org/latest-v2-package && tar xvf latest-v2-package
 
-(md5 hash of the 2.0.8 package: ``4f84c725d1d6e3345eae0a406115e5ff``)
+(md5 hash of the 2.1.1 package: ``9584a3b60a2b2a4de87f536548caac93``)
 
 Extract the archive in your wallabag folder and replace ``app/config/parameters.yml`` with yours.
 
index 771725a76bee504ee59107f603c6580861e0a2c7..92db5a28dc93f72b3a6da8f0b2bf64ad900bde3e 100644 (file)
@@ -46,6 +46,10 @@ Modifiez votre fichier ``parameters.yml`` pour éditer la configuration RabbitMQ
     rabbitmq_user: guest
     rabbitmq_password: guest
 
+Activer RabbitMQ dans wallabag
+------------------------------
+
+Dans les paramètres internes, section **Import**, activez RabbitMQ (avec la valeur 1).
 
 Démarrer les clients RabbitMQ
 -----------------------------
index 5557e7a8858ead42ba7eadc71a727ad57ca79122..8a212e8aab0ee97195998de42e1d1595a2d65805 100644 (file)
@@ -35,6 +35,10 @@ Modifiez votre fichier ``parameters.yml`` pour éditer la configuration Redis. C
     redis_host: localhost
     redis_port: 6379
 
+Activer Redis dans wallabag
+---------------------------
+
+Dans les paramètres internes, section **Import**, activez Redis (avec la valeur 1).
 
 Démarrer les clients Redis
 --------------------------
diff --git a/docs/fr/developer/testsuite.rst b/docs/fr/developer/testsuite.rst
new file mode 100644 (file)
index 0000000..bd5c68c
--- /dev/null
@@ -0,0 +1,10 @@
+Suite de tests
+==============
+
+Pour assurer la qualité du développement de wallabag, nous avons écrit des tests avec `PHPUnit <https://phpunit.de>`_.
+
+Si vous contribuez au projet (en traduisant l'application, en corrigeant des bugs ou en ajoutant une nouvelle fonctionnalité), merci d'écrire vos propres tests.
+
+Pour lancer la suite de tests de wallabag, vous devez installer `ant <http://ant.apache.org>`_.
+
+Ensuite, exécutez la commande ``make test``.
index 359b103c0aa14231a2fb5c75cb1e8116b82a5564..2a265ff34ffd2455080b1a4b98b74bf277e166b6 100644 (file)
@@ -31,8 +31,8 @@ La documentation est disponible dans d'autres langues :
 
    user/faq
    user/installation
-   user/upgrade-2.0.x-2.1.y
-   user/upgrade-2.0.x-2.0.y
+   user/upgrade-2.0.x-2.1.1
+   user/upgrade-2.0.x-2.1.1
    user/migration
    user/import
    user/create_account
@@ -45,6 +45,7 @@ La documentation est disponible dans d'autres langues :
    user/share
    user/filters
    user/tags
+   user/parameters
 
 .. _dev-docs:
 
index 278f0022f8f492a1566ecb159452ad8da373b8f3..8bfe66f54d1501916224a8b586e78ceaeda697db 100644 (file)
@@ -102,7 +102,7 @@ if *« readingTime >= 5 AND domainName = "github.com" »* then tag as *« long r
 Quels variables et opérateurs puis-je utiliser pour écrire mes règles ?
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
-Les variables et opérateurs suivants peuvent être utilisés lors de la création de vos règles :
+Les variables et opérateurs suivants peuvent être utilisés lors de la création de vos règles (attention, pour certaines valeurs, vous devez ajouter des guillemets, par exemple ``language = "en"``) :
 
 ===========  ==============================================  ==========  ==========
 Variable     Sens                                            Opérateur   Sens
index 6f114dd6a9e3222ac2e5ad7377f7e242be3f2e7b..2e6caafba062faf5bcdec792ba4f0ef2ba42ae4a 100644 (file)
@@ -36,7 +36,7 @@ Depuis Readability
 Exportez vos données de Readability
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
-Sur la page des outils (`https://www.readability.com/tools/<https://www.readability.com/tools/>`_), cliquez sur "Export your data" dans la section "Data Export". Vous allez recevoir un email avec un lien pour télécharger le json.
+Sur la page des outils (`https://www.readability.com/tools/ <https://www.readability.com/tools/>`_), cliquez sur "Export your data" dans la section "Data Export". Vous allez recevoir un email avec un lien pour télécharger le json.
 
 Importez vos données dans wallabag 2.x
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -52,7 +52,7 @@ Depuis Instapaper
 Exportez vos données de Instapaper
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
-Sur la page des paramètres (`https://www.instapaper.com/user<https://www.instapaper.com/user>`_), cliquez sur "Download .CSV file" dans la section "Export". Un fichier CSV se téléchargera (``instapaper-export.csv``).
+Sur la page des paramètres (`https://www.instapaper.com/user <https://www.instapaper.com/user>`_), cliquez sur "Download .CSV file" dans la section "Export". Un fichier CSV se téléchargera (``instapaper-export.csv``).
 
 Importez vos données dans wallabag 2.x
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
index 9dd39af7c6f373103dc79c81dcaedcb82cff9c94..4f94d6c87ac3741c324957a7f6dc5bc25f8615d9 100644 (file)
@@ -6,6 +6,20 @@ Pré-requis
 
 wallabag est compatible avec PHP >= 5.5, PHP 7 inclus.
 
+.. note::
+
+    Pour installer wallabag facilement, nous avons créé un ``Makefile``, vous avez donc besoin d'avoir installé l'outil ``make``.
+
+wallabag utilise un grand nombre de bibliothèques PHP pour fonctionner. Ces bibliothèques doivent être installées à l'aide d'un outil nommé Composer. Vous devez l'installer si ce n'est déjà fait et vous assurer que vous utilisez bien la version 1.2 (si vous avez déjà Composer, faite un ``composer selfupdate``).
+
+Installation de Composer :
+
+::
+
+    curl -s http://getcomposer.org/installer | php
+
+Vous pouvez trouver des instructions spécifiques `ici (en anglais) <https://getcomposer.org/doc/00-intro.md>`__.
+
 Vous aurez besoin des extensions suivantes pour que wallabag fonctionne. Il est possible que certaines de ces extensions soient déjà activées dans votre version de PHP, donc vous n'avez pas forcément besoin d'installer tous les paquets correspondants.
 
 - php-session
@@ -36,36 +50,23 @@ Installation
 Sur un serveur dédié (méthode conseillée)
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
-wallabag utilise un grand nombre de bibliothèques PHP pour fonctionner. Ces bibliothèques doivent être installées à l'aide d'un outil nommé Composer. Vous devez l'installer si ce n'est déjà fait et vous assurer que vous utilisez bien la version 1.2 (si vous avez déjà Composer, faite un ``composer selfupdate``).
-
-Installation de Composer :
-
-::
-
-    curl -s http://getcomposer.org/installer | php
-
-Vous pouvez trouver des instructions spécifiques `ici (en anglais) <https://getcomposer.org/doc/00-intro.md>`__.
-
 Pour installer wallabag, vous devez exécuter ces commandes :
 
 ::
 
     git clone https://github.com/wallabag/wallabag.git
-    cd wallabag
-    git checkout 2.1.1 --force
-    SYMFONY_ENV=prod composer install --no-dev -o --prefer-dist
-    php bin/console wallabag:install --env=prod
+    cd wallabag && make install
 
 Pour démarrer le serveur interne à php et vérifier que tout s'est installé correctement, vous pouvez exécuter :
 
 ::
 
-    php bin/console server:run --env=prod
+    make run
 
 Et accéder wallabag à l'adresse http://lipdevotreserveur:8000
 
 .. tip::
-    Pour définir des paramètres via des variables d'environnement, vous pouvez les spécifier avec le préfixe ``SYMFONY__``. Par exemple, ``SYMFONY__DATABASE_DRIVER``. Vous pouvez lire `documentation Symfony <http://symfony.com/doc/current/cookbook/configuration/external_parameters.html>`__ pour en savoir plus.
+    Pour définir des paramètres via des variables d'environnement, vous pouvez les spécifier avec le préfixe ``SYMFONY__``. Par exemple, ``SYMFONY__DATABASE_DRIVER``. Vous pouvez lire la `documentation Symfony <http://symfony.com/doc/current/cookbook/configuration/external_parameters.html>`__ pour en savoir plus.
 
 Sur un serveur mutualisé
 ~~~~~~~~~~~~~~~~~~~~~~~~
@@ -83,18 +84,18 @@ Exécutez cette commande pour télécharger et décompresser l'archive :
 
     wget http://wllbg.org/latest-v2-package && tar xvf latest-v2-package
 
-(hash md5 de l'archive 2.1.1 : ``9584a3b60a2b2a4de87f536548caac93``)
+Vous trouverez `le hash md5 du dernier package sur notre site <https://www.wallabag.org/pages/download-wallabag.html>`_.
 
 Maintenant, lisez la documentation ci-dessous pour crééer un virtual host. Accédez ensuite à votre installation de wallabag.
 Si vous avez changé la configuration pour modifier le type de stockage (MySQL ou PostgreSQL), vous devrez vous créer un utilisateur via la commande ``php bin/console wallabag:install --env=prod``.
 
 Installation avec Docker
-------------------------
+~~~~~~~~~~~~~~~~~~~~~~~~
 
 Nous vous proposons une image Docker pour installer wallabag facilement. Allez voir du côté de `Docker Hub <https://hub.docker.com/r/wallabag/wallabag/>`__ pour plus d'informations.
 
 Commande pour démarrer le containeur
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
 .. code-block:: bash
 
diff --git a/docs/fr/user/parameters.rst b/docs/fr/user/parameters.rst
new file mode 100644 (file)
index 0000000..ec8c899
--- /dev/null
@@ -0,0 +1,50 @@
+À quoi servent les paramètres ?
+===============================
+.. csv-table:: Paramètres de base de données
+   :header: "name", "default", "description"
+
+   "database_driver", "pdo_sqlite", "Doit être pdo_sqlite ou pdo_mysql ou pdo_pgsql"
+   "database_host", "127.0.0.1", "Hôte de votre base de données (généralement localhost ou 127.0.0.1)"
+   "database_port", "~", "Port de votre base de données (vous pouvez laisser ``~`` pour utiliser celui par défaut)"
+   "database_name", "symfony", "Nom de votre base de données"
+   "database_user", "root", "Utilisateur de votre base de données"
+   "database_password", "~", "Mot de passe de cet utilisateur"
+   "database_path", "``""%kernel.root_dir%/../data/db/wallabag.sqlite""``", "Uniquement pour SQLite. Chemin du fichier de base de données. Laissez vide pour les autres bases de données."
+   "database_table_prefix", "wallabag_", "Toutes les tables de wallabag seront préfixées par cette chaine. Vous pouvez ajouter un ``_`` pour plus de clarté"
+   "database_socket", "null", "Si votre base de données utilise un socket plutôt que tcp, spécifiez le chemin du socket (les autres paramètres de connexion seront alors ignorés)"
+
+.. csv-table:: Configuration pour envoyer des emails depuis wallabag
+   :header: "name", "default", "description"
+
+   "mailer_transport", "smtp",  "Méthode de transport exacte utilisée pour envoyer des emails. Les valeurs correctes sont : smtp, gmail, mail, sendmail, null (ce qui désactivera l'envoi des emails)"
+   "mailer_host", "127.0.0.1",  "Hôte sur lequel se connecter quand on utilise smtp comme transport."
+   "mailer_user", "~",  "Utilisateur smtp."
+   "mailer_password", "~",  "Mot de passe de cet utilisateur."
+
+.. csv-table:: Autres options de wallabag
+   :header: "name", "default", "description"
+
+   "locale", "en", "Langue par défaut de votre instance wallabag (comme en, fr, es, etc.)"
+   "secret", "ovmpmAWXRCabNlMgzlzFXDYmCFfzGv", "C'est une chaine qui doit être unique à votre application et qui est couramment utilisée pour ajouter plus d'entropie aux opérations relatives à la sécurité."
+   "twofactor_auth", "true", "true pour activer l'authentification à deux facteurs"
+   "twofactor_sender", "no-reply@wallabag.org", "Email de l'expéditeur du code de l'authentification à deux facteurs"
+   "fosuser_registration", "true", "true pour activer l'inscription publique"
+   "fosuser_confirmation", "true", "true pour envoyer un email de confirmation pour chaque création de compte"
+   "from_email", "no-reply@wallabag.org", "Email de l'expéditeur pour chaque email envoyé"
+   "rss_limit", "50", "Limite pour les flux RSS"
+
+.. csv-table:: Configuration RabbitMQ
+   :header: "name", "default", "description"
+
+   "rabbitmq_host", "localhost", "Hôte de votre instance RabbitMQ"
+   "rabbitmq_port", "5672", "Port de votre instance RabbitMQ"
+   "rabbitmq_user", "guest", "Utilisateur de votre instance RabbitMQ"
+   "rabbitmq_password", "guest", "Mot de passe de cet utilisateur"
+
+.. csv-table:: Configuration Redis
+   :header: "name", "default", "description"
+
+   "redis_scheme", "tcp", "Définit le protocole utilisé pour commuiquer avec l'instance Redis. Les valeurs correctes sont : tcp, unix, http"
+   "redis_host", "localhost", "IP ou hôte du serveur cible (ignoré pour un schéma unix)"
+   "redis_port", "6379", "Port TCP/IP du serveur cible (ignoré pour un schéma unix)"
+   "redis_path", "null", "Chemin du fichier de socket du domaine UNIX utilisé quand on se connecte à Redis en utilisant les sockets du domaine UNIX"
similarity index 60%
rename from docs/fr/user/upgrade-2.0.x-2.1.y.rst
rename to docs/fr/user/upgrade-2.0.x-2.1.1.rst
index 952fa737497b5b4323b696281060cbe42cb24d45..ec883d10e1448f19a552d22430eb5200b2cac921 100644 (file)
@@ -1,4 +1,4 @@
-Mettre à jour de la 2.0.x à la 2.1.y
+Mettre à jour de la 2.0.x à la 2.1.1
 ====================================
 
 .. warning::
@@ -7,8 +7,6 @@ Avant cette migration, si vous aviez configuré l'import depuis Pocket en ajouta
 Mise à jour sur un serveur dédié
 --------------------------------
 
-La dernière version de wallabag est publiée à cette adresse : https://www.wallabag.org/pages/download-wallabag.html. Pour mettre à jour votre installation de wallabag, exécutez les commandes suivantes dans votre répertoire d'installation (remplacez ``2.1.1`` par le numéro de la dernière version) :
-
 ::
 
     rm -rf var/cache/*
@@ -28,25 +26,45 @@ Téléchargez la dernière version de wallabag :
 
 .. code-block:: bash
 
-    wget http://wllbg.org/latest-v2-package && tar xvf latest-v2-package
+    wget http://framabag.org/wallabag-release-2.1.1.tar.gz && tar xvf wallabag-release-2.1.1.tar.gz
 
 (hash md5 de l'archive 2.1.1 : ``9584a3b60a2b2a4de87f536548caac93``)
 
 Décompressez l'archive dans votre répertoire d'installation et remplacez le fichier ``app/config/parameters.yml`` avec le votre.
 
-Nous avons ajouté de nouveaux paramètres dans cette nouvelle version. Vous devez donc éditer le fichier ``app/config/parameters.yml`` en ajoutant ces lignes (et en remplaçant par votre configuration) :
-
-.. code-block:: bash
-
-    # RabbitMQ processing
-    rabbitmq_host: localhost
-    rabbitmq_port: 5672
-    rabbitmq_user: guest
-    rabbitmq_password: guest
-
-    # Redis processing
-    redis_host: localhost
-    redis_port: 6379
+Vérifiez que votre fichier ``app/config/parameters.yml`` contient tous les paramètres requis. Voici un fichier ``parameters.yml`` par défaut. Si vous ne savez pas quelle valeur mettre à un paramètre, laissez la valeur par défaut.
+
+.. code-block:: yml
+
+    parameters:
+        database_driver: pdo_sqlite
+        database_host: 127.0.0.1
+        database_port: null
+        database_name: symfony
+        database_user: root
+        database_password: null
+        database_path: '%kernel.root_dir%/../data/db/wallabag.sqlite'
+        database_table_prefix: wallabag_
+        mailer_transport: smtp
+        mailer_host: 127.0.0.1
+        mailer_user: null
+        mailer_password: null
+        locale: en
+        secret: ovmpmAWXRCabNlMgzlzFXDYmCFfzGv
+        twofactor_auth: true
+        twofactor_sender: no-reply@wallabag.org
+        fosuser_registration: true
+        fosuser_confirmation: true
+        from_email: no-reply@wallabag.org
+        rss_limit: 50
+        rabbitmq_host: localhost
+        rabbitmq_port: 5672
+        rabbitmq_user: guest
+        rabbitmq_password: guest
+        redis_host: localhost
+        redis_port: 6379
+
+Vous trouverez `ici une documentation détaillée concernant les paramètres <http://doc.wallabag.org/fr/master/user/parameters.html>`_.
 
 Si vous utilisez SQLite, vous devez également conserver le contenu du répertoire ``data/``.
 
similarity index 85%
rename from docs/fr/user/upgrade-2.0.x-2.0.y.rst
rename to docs/fr/user/upgrade-2.1.x-2.1.y.rst
index 8d8ad806dc3a3fb0a055914c680732a5eab151a5..c048099f980d4c682c8badb7feb56da1a5115845 100644 (file)
@@ -1,17 +1,17 @@
-Mettre à jour de la 2.0.x à la 2.0.y
+Mettre à jour de la 2.1.x à la 2.1.y
 ====================================
 
 Mise à jour sur un serveur dédié
 --------------------------------
 
-La dernière version de wallabag est publiée à cette adresse : https://www.wallabag.org/pages/download-wallabag.html. Pour mettre à jour votre installation de wallabag, exécutez les commandes suivantes dans votre répertoire d'installation (remplacez ``2.0.8`` par le numéro de la dernière version) :
+La dernière version de wallabag est publiée à cette adresse : https://www.wallabag.org/pages/download-wallabag.html. Pour mettre à jour votre installation de wallabag, exécutez les commandes suivantes dans votre répertoire d'installation (remplacez ``2.1.2`` par le numéro de la dernière version) :
 
 ::
 
     rm -rf var/cache/*
     git fetch origin
     git fetch --tags
-    git checkout 2.0.8
+    git checkout 2.1.2 --force
     SYMFONY_ENV=prod composer install --no-dev -o --prefer-dist
     php bin/console cache:clear --env=prod
 
@@ -26,7 +26,7 @@ Téléchargez la dernière version de wallabag :
 
     wget http://wllbg.org/latest-v2-package && tar xvf latest-v2-package
 
-(hash md5 de l'archive 2.0.8 : ``4f84c725d1d6e3345eae0a406115e5ff``)
+(hash md5 de l'archive 2.1.1 : ``9584a3b60a2b2a4de87f536548caac93``)
 
 Décompressez l'archive dans votre répertoire d'installation et remplacez le fichier ``app/config/parameters.yml`` avec le votre.
 
diff --git a/scripts/install.sh b/scripts/install.sh
new file mode 100644 (file)
index 0000000..54d0bb7
--- /dev/null
@@ -0,0 +1,10 @@
+#! /usr/bin/env bash
+# You can execute this file to install wallabag
+# eg: `sh install.sh prod`
+
+ENV=$1
+TAG=$(git describe --tags $(git rev-list --tags --max-count=1))
+
+git checkout $TAG
+SYMFONY_ENV=$ENV composer install --no-dev -o --prefer-dist
+php bin/console wallabag:install --env=$ENV
diff --git a/scripts/release.sh b/scripts/release.sh
new file mode 100644 (file)
index 0000000..e118b87
--- /dev/null
@@ -0,0 +1,19 @@
+#! /usr/bin/env bash
+# You can execute this file to create a new package for wallabag
+# eg: `sh release.sh master /tmp wllbg-release prod`
+
+VERSION=$1
+TMP_FOLDER=$2
+RELEASE_FOLDER=$3
+ENV=$4
+
+rm -rf $TMP_FOLDER/$RELEASE_FOLDER
+mkdir $TMP_FOLDER/$RELEASE_FOLDER
+git clone git@github.com:wallabag/wallabag.git -b $VERSION $TMP_FOLDER/$RELEASE_FOLDER/$VERSION
+cd $TMP_FOLDER/$RELEASE_FOLDER/$VERSION && SYMFONY_ENV=$ENV composer up -n --no-dev
+cd $TMP_FOLDER/$RELEASE_FOLDER/$VERSION && php bin/console wallabag:install --env=$ENV
+cd $TMP_FOLDER/$RELEASE_FOLDER && tar czf wallabag-$VERSION.tar.gz --exclude="var/cache/*" --exclude="var/logs/*" --exclude="var/sessions/*" --exclude=".git" $VERSION
+echo "MD5 checksum of the package for wallabag $VERSION"
+md5 $TMP_FOLDER/$RELEASE_FOLDER/wallabag-$VERSION.tar.gz
+scp $TMP_FOLDER/$RELEASE_FOLDER/wallabag-$VERSION.tar.gz framasoft_bag@78.46.248.87:/var/www/framabag.org/web
+rm -rf $TMP_FOLDER/$RELEASE_FOLDER
diff --git a/scripts/update.sh b/scripts/update.sh
new file mode 100644 (file)
index 0000000..b920a82
--- /dev/null
@@ -0,0 +1,13 @@
+#! /usr/bin/env bash
+# You can execute this file to update wallabag
+# eg: `sh update.sh prod`
+
+ENV=$1
+TAG=$(git describe --tags $(git rev-list --tags --max-count=1))
+
+rm -rf var/cache/*
+git fetch origin
+git fetch --tags
+git checkout $TAG --force
+SYMFONY_ENV=$ENV composer install --no-dev -o --prefer-dist
+php bin/console cache:clear --env=$ENV
index 2ff63a83e4ca9e37ff1e5bd68051b86a2c0c636e..c09a0c803a44467b7b62f241c2fca65cf54b2b39 100644 (file)
@@ -19,7 +19,7 @@ class AccessToken extends BaseAccessToken
     protected $id;
 
     /**
-     * @ORM\ManyToOne(targetEntity="Client")
+     * @ORM\ManyToOne(targetEntity="Client", inversedBy="accessTokens")
      * @ORM\JoinColumn(nullable=false)
      */
     protected $client;
index 6d0cab688f9e182a8c32531d2d1dff3b0ff19ab9..822a02d8d5753b84baedcadb660f2c0f2636c758 100644 (file)
@@ -19,7 +19,7 @@ class RefreshToken extends BaseRefreshToken
     protected $id;
 
     /**
-     * @ORM\ManyToOne(targetEntity="Client")
+     * @ORM\ManyToOne(targetEntity="Client", inversedBy="refreshTokens")
      * @ORM\JoinColumn(nullable=false)
      */
     protected $client;
index cc7c2c94cf268be86cd4de51d895404a7d433ec2..8e438229f9584d788b299ce51d634939e791eac2 100644 (file)
@@ -9,7 +9,7 @@ use Symfony\Component\Console\Helper\Table;
 use Symfony\Component\Console\Input\ArrayInput;
 use Symfony\Component\Console\Input\InputInterface;
 use Symfony\Component\Console\Input\InputOption;
-use Symfony\Component\Console\Output\NullOutput;
+use Symfony\Component\Console\Output\BufferedOutput;
 use Symfony\Component\Console\Output\OutputInterface;
 use Symfony\Component\Console\Question\ConfirmationQuestion;
 use Symfony\Component\Console\Question\Question;
@@ -97,7 +97,8 @@ class InstallCommand extends ContainerAwareCommand
         try {
             $this->getContainer()->get('doctrine')->getManager()->getConnection()->connect();
         } catch (\Exception $e) {
-            if (false === strpos($e->getMessage(), 'Unknown database')) {
+            if (false === strpos($e->getMessage(), 'Unknown database')
+                && false === strpos($e->getMessage(), 'database "'.$this->getContainer()->getParameter('database_name').'" does not exist')) {
                 $fulfilled = false;
                 $status = '<error>ERROR!</error>';
                 $help = 'Can\'t connect to the database: '.$e->getMessage();
@@ -420,16 +421,18 @@ class InstallCommand extends ContainerAwareCommand
         }
 
         $this->getApplication()->setAutoExit(false);
-        $exitCode = $this->getApplication()->run(new ArrayInput($parameters), new NullOutput());
+
+        $output = new BufferedOutput();
+        $exitCode = $this->getApplication()->run(new ArrayInput($parameters), $output);
 
         if (0 !== $exitCode) {
             $this->getApplication()->setAutoExit(true);
 
-            $errorMessage = sprintf('The command "%s" terminated with an error code: %u.', $command, $exitCode);
-            $this->defaultOutput->writeln("<error>$errorMessage</error>");
-            $exception = new \Exception($errorMessage, $exitCode);
+            $this->defaultOutput->writeln('');
+            $this->defaultOutput->writeln('<error>The command "'.$command.'" generates some errors: </error>');
+            $this->defaultOutput->writeln($output->fetch());
 
-            throw $exception;
+            die();
         }
 
         // PDO does not always close the connection after Doctrine commands.
index a0a0d3c36c2447140af57cefc09118e957d6294a..804adb36283a643c799c6cb9b9106f6dd6990856 100644 (file)
         <meta property="og:title" content="{{ entry.title | raw }}" />
         <meta property="og:type" content="article" />
         <meta property="og:url" content="{{ app.request.uri }}" />
+        {% set picturePath = app.request.schemeAndHttpHost ~ asset('bundles/wallabagcore/themes/_global/img/logo-other_themes.png') %}
         {% if entry.previewPicture is not null %}
-        <meta property="og:image" content="{{ entry.previewPicture }}" />
-        {% else %}
-        <meta property="og:image" content="{{ app.request.schemeAndHttpHost }}{{ asset('bundles/wallabagcore/themes/_global/img/logo-other_themes.png') }}" />
+            {% set picturePath = entry.previewPicture %}
         {% endif %}
+        <meta property="og:image" content="{{ picturePath }}" />
+        <meta name="twitter:card" content="summary" />
+        <meta name="twitter:image" content="{{ picturePath }}" />
+        <meta name="twitter:site" content="@wallabagapp" />
+        <meta name="twitter:title" content="{{ entry.title | raw }}" />
+        <meta name="twitter:description" content="{{ entry.title | raw }}" />
     </head>
     <body>
         <header>
index 966a84dbbaff225e5cadc9f14880d6762bc5e4e6..3385cd535fa3ef25cf0bde22937b881a8f7e5f35 100644 (file)
@@ -1 +1 @@
-<a id="bookmarklet" ondragend="this.click();" href="javascript:var url=location.href||url;var wllbg=window.open('{{ url('bookmarklet') }}?url=' + encodeURI(url),'_blank');wllbg.close();void(0);">bag it!</a>
+<a id="bookmarklet" ondragend="this.click();" href="javascript:(function(){var url=location.href||url;var wllbg=window.open('{{ url('bookmarklet') }}?url=' + encodeURI(url),'_blank');})();">bag it!</a>
index 4f103921a78cf6c7c56aa36da70cfb48726ec274..7bf4b43ce8f32ee462aaec0187e44df448dcea76 100644 (file)
@@ -90,9 +90,7 @@ abstract class WallabagCoreTestCase extends WebTestCase
         try {
             $this->client->getContainer()->get('wallabag_core.redis.client')->connect();
         } catch (\Exception $e) {
-            $this->markTestSkipped(
-              'Redis is not installed/activated'
-            );
+            $this->markTestSkipped('Redis is not installed/activated');
         }
     }
 }
index 23c80bec8a3a2fcf79536e69b055afd5c46e06a3..c0417bbe85b0972fc9ad0a44aae1df54938a974b 100644 (file)
@@ -54,6 +54,7 @@ class ChromeControllerTest extends WallabagCoreTestCase
 
     public function testImportChromeWithRedisEnabled()
     {
+        $this->checkRedis();
         $this->logInAs('admin');
         $client = $this->getClient();
         $client->getContainer()->get('craue_config')->set('import_with_redis', 1);
index 98f13d728786a0aa83e325d219fe841f29e8931a..6154ae8dca488f2c59b47dfefe8882e3d0a6e76a 100644 (file)
@@ -54,6 +54,7 @@ class FirefoxControllerTest extends WallabagCoreTestCase
 
     public function testImportFirefoxWithRedisEnabled()
     {
+        $this->checkRedis();
         $this->logInAs('admin');
         $client = $this->getClient();
         $client->getContainer()->get('craue_config')->set('import_with_redis', 1);