From bb0c78f4a636fcc8f60dd3b42ad733e7f31e0bb4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicolas=20L=C5=93uillet?= Date: Thu, 8 Sep 2016 14:07:36 +0200 Subject: Added check if there is only one user Added translations and documentation --- docs/en/user/configuration.rst | 2 ++ 1 file changed, 2 insertions(+) (limited to 'docs/en') diff --git a/docs/en/user/configuration.rst b/docs/en/user/configuration.rst index f4c55dea..824878dc 100644 --- a/docs/en/user/configuration.rst +++ b/docs/en/user/configuration.rst @@ -50,6 +50,8 @@ User information You can change your name, your email address and enable ``Two factor authentication``. +If the wallabag instance has more than one enabled user, you can delete your account here. **Take care, we delete all your data**. + Two factor authentication ~~~~~~~~~~~~~~~~~~~~~~~~~ -- cgit v1.2.3 From b0de88f75dead50385e80e3897dc3913a971b91e Mon Sep 17 00:00:00 2001 From: Jeremy Benoist Date: Tue, 11 Oct 2016 21:45:43 +0200 Subject: Use statements & update translation --- docs/en/user/parameters.rst | 1 + 1 file changed, 1 insertion(+) (limited to 'docs/en') diff --git a/docs/en/user/parameters.rst b/docs/en/user/parameters.rst index 79c50871..c4345b74 100644 --- a/docs/en/user/parameters.rst +++ b/docs/en/user/parameters.rst @@ -12,6 +12,7 @@ What is the meaning of the parameters? "database_path", "``""%kernel.root_dir%/../data/db/wallabag.sqlite""``", "only for SQLite, define where to put the database file. Leave it 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" + "database_charset", "utf8mb4", "For PostgreSQL you should use utf8, for other use utf8mb4 which handle emoji" .. csv-table:: Configuration to send emails from wallabag :header: "name", "default", "description" -- cgit v1.2.3 From f623516e107c8146f87d815f033cecb5d812466a Mon Sep 17 00:00:00 2001 From: Jeremy Benoist Date: Mon, 24 Oct 2016 10:10:38 +0200 Subject: SQLite should use utf8, not utf8mb4 --- docs/en/user/parameters.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'docs/en') diff --git a/docs/en/user/parameters.rst b/docs/en/user/parameters.rst index c4345b74..2fca020e 100644 --- a/docs/en/user/parameters.rst +++ b/docs/en/user/parameters.rst @@ -11,8 +11,8 @@ What is the meaning of the parameters? "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 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" - "database_charset", "utf8mb4", "For PostgreSQL you should use utf8, for other use utf8mb4 which handle emoji" + "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)" + "database_charset", "utf8mb4", "For PostgreSQL & SQLite you should use utf8, for MySQL use utf8mb4 which handle emoji" .. csv-table:: Configuration to send emails from wallabag :header: "name", "default", "description" -- cgit v1.2.3 From db3838545cef117e05c63afc1e7ebfdf8c8d3a4e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicolas=20L=C5=93uillet?= Date: Sun, 6 Nov 2016 15:34:08 +0100 Subject: Removed Maintenance bundle --- docs/en/developer/maintenance.rst | 32 -------------------------------- docs/en/index.rst | 1 - 2 files changed, 33 deletions(-) delete mode 100644 docs/en/developer/maintenance.rst (limited to 'docs/en') diff --git a/docs/en/developer/maintenance.rst b/docs/en/developer/maintenance.rst deleted file mode 100644 index 6d55ed60..00000000 --- a/docs/en/developer/maintenance.rst +++ /dev/null @@ -1,32 +0,0 @@ -Maintenance mode -================ - -If you have some long tasks to do on your wallabag instance, you can enable a maintenance mode. -Nobody will have access to your instance. - -Enable maintenance mode ------------------------ - -To enable maintenance mode, execute this command: - -:: - - bin/console lexik:maintenance:lock --no-interaction -e=prod - -You can set your IP address in ``app/config/config.yml`` if you want to access to wallabag even if maintenance mode is enabled. For example: - -:: - - lexik_maintenance: - authorized: - ips: ['127.0.0.1'] - - -Disable maintenance mode ------------------------- - -To disable maintenance mode, execute this command: - -:: - - bin/console lexik:maintenance:unlock -e=prod diff --git a/docs/en/index.rst b/docs/en/index.rst index 0ead261b..6fe33c76 100644 --- a/docs/en/index.rst +++ b/docs/en/index.rst @@ -58,6 +58,5 @@ The documentation is available in other languages: developer/docker developer/documentation developer/translate - developer/maintenance developer/redis developer/rabbitmq -- cgit v1.2.3 From 31151d70f2a03adad1701b0f05c1adce73003b6e Mon Sep 17 00:00:00 2001 From: Jeremy Benoist Date: Sun, 6 Nov 2016 21:23:38 +0100 Subject: Add doc --- docs/en/user/import.rst | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'docs/en') diff --git a/docs/en/user/import.rst b/docs/en/user/import.rst index 70f0187d..cde2ecd6 100644 --- a/docs/en/user/import.rst +++ b/docs/en/user/import.rst @@ -45,6 +45,22 @@ and then select your json file and upload it. Your data will be imported. Data import can be a demanding process for your server. +From Pinboard +------------- + +Export your Pinboard data +~~~~~~~~~~~~~~~~~~~~~~~~~ + +On the backup (`https://pinboard.in/settings/backup `_) page, click on "JSON" in the "Bookmarks" section. A JSON file will be downloaded (like ``pinboard_export``). + +Import your data into wallabag 2.x +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Click on ``Import`` link in the menu, on ``Import contents`` in Pinboard section +and then select your json file and upload it. + +Your data will be imported. Data import can be a demanding process for your server. + From Instapaper --------------- -- cgit v1.2.3 From a42f38d9fb7906b785285fab2a09f8c2b9efe996 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicolas=20L=C5=93uillet?= Date: Sun, 6 Nov 2016 12:02:39 +0100 Subject: Added a configuration to define the redirection after archiving an entry Fix #496 --- docs/en/user/configuration.rst | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'docs/en') diff --git a/docs/en/user/configuration.rst b/docs/en/user/configuration.rst index e7055a14..e16af12c 100644 --- a/docs/en/user/configuration.rst +++ b/docs/en/user/configuration.rst @@ -27,6 +27,15 @@ Reading speed wallabag calculates a reading time for each article. You can define here, thanks to this list, if you are a fast or a slow reader. wallabag will recalculate the reading time for each article. +Where do you want to be redirected after mark an article as read? +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Each time you'll do some actions (after marking an article as read/favorite, +after deleting an article, after removing a tag from an entry), you can be redirected: + +- To the homepage +- To the current page + Language ~~~~~~~~ -- cgit v1.2.3 From 10b3509757c704943aa9cdd69c1d02bedfa937a3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicolas=20L=C5=93uillet?= Date: Fri, 18 Nov 2016 15:09:21 +0100 Subject: Added http_status in Entry entity --- docs/en/user/filters.rst | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'docs/en') diff --git a/docs/en/user/filters.rst b/docs/en/user/filters.rst index ad06819b..de0da016 100644 --- a/docs/en/user/filters.rst +++ b/docs/en/user/filters.rst @@ -30,6 +30,11 @@ Language wallabag (via graby) can detect article language. It's easy to you to retrieve articles written in a specific language. +HTTP status +----------- + +You can retrieve the articles by filtering by their HTTP status code: 200, 404, 500, etc. + Reading time ------------ -- cgit v1.2.3 From 16eb124e4ae238db4bffb30556f1245cf6ff97ca Mon Sep 17 00:00:00 2001 From: Jeremy Benoist Date: Sun, 20 Nov 2016 09:46:03 +0100 Subject: Add documentation about RSS paging --- docs/en/user/configuration.rst | 3 +++ 1 file changed, 3 insertions(+) (limited to 'docs/en') diff --git a/docs/en/user/configuration.rst b/docs/en/user/configuration.rst index a52d3ddd..caca834f 100644 --- a/docs/en/user/configuration.rst +++ b/docs/en/user/configuration.rst @@ -52,6 +52,9 @@ Now you have three links, one for each status: add them into your favourite RSS You can also define how many articles you want in each RSS feed (default value: 50). +There is also a pagination available for these feeds. You can add ``?page=2`` to jump to the second page. +The pagination follow `the RFC `_ about that, which means you'll find the ``next``, ``previous`` & ``last`` page link inside the `` tag of each RSS feed. + User information ---------------- -- cgit v1.2.3 From 7c05d59153cb89d5a714f1c8dfb8862d9c4f89d1 Mon Sep 17 00:00:00 2001 From: mathieui Date: Sun, 20 Nov 2016 14:51:14 +0100 Subject: Change documentation links to HTTPS Even though all the websites used in the commands redirect http to https, a man in the middle can happen with the initial request, leading to arbitrary code execution. --- docs/en/user/installation.rst | 4 ++-- docs/en/user/upgrade.rst | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) (limited to 'docs/en') diff --git a/docs/en/user/installation.rst b/docs/en/user/installation.rst index 77ef60a8..7d3bcf61 100644 --- a/docs/en/user/installation.rst +++ b/docs/en/user/installation.rst @@ -16,7 +16,7 @@ Install Composer: :: - curl -s http://getcomposer.org/installer | php + curl -s https://getcomposer.org/installer | php You can find specific instructions `here `__. @@ -85,7 +85,7 @@ Execute this command to download and extract the latest package: .. code-block:: bash - wget http://wllbg.org/latest-v2-package && tar xvf latest-v2-package + wget https://wllbg.org/latest-v2-package && tar xvf latest-v2-package You will find the `md5 hash of the latest package on our website `_. diff --git a/docs/en/user/upgrade.rst b/docs/en/user/upgrade.rst index 544d57eb..e6e4c165 100644 --- a/docs/en/user/upgrade.rst +++ b/docs/en/user/upgrade.rst @@ -36,7 +36,7 @@ Download the 2.1.1 release of wallabag: .. code-block:: bash - wget http://framabag.org/wallabag-release-2.1.1.tar.gz && tar xvf wallabag-release-2.1.1.tar.gz + wget https://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``) @@ -81,7 +81,7 @@ Download the last release of wallabag: .. code-block:: bash - wget http://wllbg.org/latest-v2-package && tar xvf latest-v2-package + wget https://wllbg.org/latest-v2-package && tar xvf latest-v2-package You will find the `md5 hash of the latest package on our website `_. -- cgit v1.2.3 From c1683778abb662ee4fcca2fca204bb00c92b8f13 Mon Sep 17 00:00:00 2001 From: Jeremy Benoist Date: Sun, 20 Nov 2016 20:23:30 +0100 Subject: Add ability to use Redis with password --- docs/en/user/parameters.rst | 2 ++ 1 file changed, 2 insertions(+) (limited to 'docs/en') diff --git a/docs/en/user/parameters.rst b/docs/en/user/parameters.rst index eb312f7e..d8a209e7 100644 --- a/docs/en/user/parameters.rst +++ b/docs/en/user/parameters.rst @@ -39,6 +39,7 @@ If you don't know which value you need to set, please leave the default one. redis_host: localhost redis_port: 6379 redis_path: null + redis_password: null Meaning of each parameter ------------------------- @@ -92,3 +93,4 @@ Meaning of each parameter "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" + "redis_password", "null", "Password defined in the Redis server configuration (parameter `requirepass` in `redis.conf`)" -- cgit v1.2.3 From d51093a7d964ca720793d0cfcf4af601f2de448a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicolas=20L=C5=93uillet?= Date: Tue, 22 Nov 2016 15:58:00 +0100 Subject: Added documentation and missing translations --- docs/en/developer/paywall.rst | 56 +++++++++++++++++++++++++++++++++++++++++++ docs/en/index.rst | 1 + 2 files changed, 57 insertions(+) create mode 100644 docs/en/developer/paywall.rst (limited to 'docs/en') diff --git a/docs/en/developer/paywall.rst b/docs/en/developer/paywall.rst new file mode 100644 index 00000000..365027b4 --- /dev/null +++ b/docs/en/developer/paywall.rst @@ -0,0 +1,56 @@ +Articles behind a paywall +========================= + +wallabag can fetch articles from websites which use a paywall system. + +Enable paywall authentication +----------------------------- + +In internal settings, in the **Article** section, enable authentication for websites with paywall (with the value 1). + +Configure credentials in wallabag +--------------------------------- + +Edit your ``app/config/parameters.yml`` file to edit credentials for each website with paywall. Here is an example for some french websites: + +.. code:: yaml + + sites_credentials: + mediapart.fr: {username: "myMediapartLogin", password: "mypassword"} + arretsurimages.net: {username: "myASILogin", password: "mypassword"} + +.. note:: + + These credentials will be shared between each user of your wallabag instance. + +Parsing configuration files +--------------------------- + +.. note:: + + Read `this part of the documentation `_ to understand the configuration files. + +Each parsing configuration file needs to be improved by adding ``requires_login``, ``login_uri``, +``login_username_field``, ``login_password_field`` and ``not_logged_in_xpath``. + +Be careful, the login form must be in the page content when wallabag loads it. It's impossible for wallabag to be authenticated +on a website where the login form is loaded after the page (by ajax for example). + +``login_uri`` is the action URL of the form (``action`` attribute in the form). +``login_username_field`` is the ``name`` attribute of the login field. +``login_password_field`` is the ``name`` attribute of the password field. + +For example: + +.. code:: + + title://div[@id="titrage-contenu"]/h1[@class="title"] + body: //div[@class="contenu-html"]/div[@class="page-pane"] + + requires_login: yes + + login_uri: http://www.arretsurimages.net/forum/login.php + login_username_field: username + login_password_field: password + + not_logged_in_xpath: //body[@class="not-logged-in"] diff --git a/docs/en/index.rst b/docs/en/index.rst index 54a1eef8..2e20aee6 100644 --- a/docs/en/index.rst +++ b/docs/en/index.rst @@ -46,6 +46,7 @@ The documentation is available in other languages: developer/api developer/docker + developer/paywall developer/documentation developer/translate developer/asynchronous -- cgit v1.2.3 From 9624b3adfaa51ff1a911b63996a5336358dd1a62 Mon Sep 17 00:00:00 2001 From: Jeremy Benoist Date: Sun, 20 Nov 2016 20:06:26 +0100 Subject: =?UTF-8?q?These=20files=20aren=E2=80=99t=20used=20anymore?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Translation were moved to the global one --- docs/en/developer/translate.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'docs/en') diff --git a/docs/en/developer/translate.rst b/docs/en/developer/translate.rst index d412d3e9..1e5d5009 100644 --- a/docs/en/developer/translate.rst +++ b/docs/en/developer/translate.rst @@ -20,7 +20,7 @@ is the ISO 639-1 code of your language (`see wikipedia Date: Wed, 30 Nov 2016 22:02:08 +0100 Subject: Fixed typo in asynchronous documentation --- docs/en/developer/asynchronous.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'docs/en') diff --git a/docs/en/developer/asynchronous.rst b/docs/en/developer/asynchronous.rst index 6a991cf6..5cd40231 100644 --- a/docs/en/developer/asynchronous.rst +++ b/docs/en/developer/asynchronous.rst @@ -150,7 +150,7 @@ Depending on which service you want to import from you need to enable one (or ma bin/console wallabag:import:redis-worker -e=prod firefox -vv >> /path/to/wallabag/var/logs/redis-firefox.log # for Chrome import - bin/console wallabag:import:redis-worker -e=prod instapaper -vv >> /path/to/wallabag/var/logs/redis-chrome.log + bin/console wallabag:import:redis-worker -e=prod chrome -vv >> /path/to/wallabag/var/logs/redis-chrome.log If you want to launch the import only for some messages and not all, you can specify this number (here 12) and the worker will stop right after the 12th message : -- cgit v1.2.3 From 881b0578e782e947706124a4e1d625a3dd3ddc1c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicolas=20L=C5=93uillet?= Date: Thu, 15 Dec 2016 21:58:20 +0100 Subject: Moved RabbitMQ QoS to parameters --- docs/en/developer/asynchronous.rst | 1 + 1 file changed, 1 insertion(+) (limited to 'docs/en') diff --git a/docs/en/developer/asynchronous.rst b/docs/en/developer/asynchronous.rst index 5cd40231..2e409e4a 100644 --- a/docs/en/developer/asynchronous.rst +++ b/docs/en/developer/asynchronous.rst @@ -48,6 +48,7 @@ Edit your ``app/config/parameters.yml`` file to edit RabbitMQ configuration. The rabbitmq_port: 5672 rabbitmq_user: guest rabbitmq_password: guest + rabbitmq_prefetch_count: 10 # read http://www.rabbitmq.com/consumer-prefetch.html Enable RabbitMQ in wallabag ^^^^^^^^^^^^^^^^^^^^^^^^^^^ -- cgit v1.2.3 From c8ef0583af9592d4a18eed7913b81fa664cd8397 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicolas=20L=C5=93uillet?= Date: Thu, 24 Nov 2016 21:15:07 +0100 Subject: Added explanations about migrations --- docs/en/user/upgrade.rst | 80 +++++++++++++++++++++++++++++++++--------------- 1 file changed, 55 insertions(+), 25 deletions(-) (limited to 'docs/en') diff --git a/docs/en/user/upgrade.rst b/docs/en/user/upgrade.rst index e6e4c165..5d864139 100644 --- a/docs/en/user/upgrade.rst +++ b/docs/en/user/upgrade.rst @@ -3,42 +3,52 @@ Upgrade your wallabag installation You will find here different ways to upgrade your wallabag: +- `from 2.1.x to 2.2.x <#upgrading-from-2-1-x-to-2-2-x>`_ - `from 2.0.x to 2.1.1 <#upgrade-from-2-0-x-to-2-1-1>`_ -- `from 2.1.x to 2.1.y <#upgrading-from-2-1-x-to-2-1-y>`_ - `from 1.x to 2.x <#from-wallabag-1-x>`_ -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. +Upgrading from 2.1.x to 2.2.x +----------------------------- Upgrade on a dedicated web server ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ :: - rm -rf var/cache/* - git fetch origin - git fetch --tags - git checkout 2.1.1 --force - SYMFONY_ENV=prod composer install --no-dev -o --prefer-dist - php bin/console doctrine:migrations:migrate --env=prod - php bin/console cache:clear --env=prod + make update + +Explanations about database migrations +"""""""""""""""""""""""""""""""""""""" + +All the database migrations are stored in ``app/DoctrineMigrations``. You can execute each migration individually: +``bin/console doctrine:migrations:migrate 20161001072726 --env=prod``. + + +Here are the migrations for 2.1.x to 2.2.0 release: + +* ``20161001072726``: added foreign keys for for account resetting +* ``20161022134138``: converted database to ``utf8mb4`` encoding (for MySQL only) +* ``20161024212538``: added ``user_id`` column on ``oauth2_clients`` to prevent users to delete API clients from other users +* ``20161031132655``: added the internal setting to enable/disable downloading pictures +* ``20161104073720``: added ``created_at`` index on ``entry`` table +* ``20161106113822``: added ``action_mark_as_read`` field on ``config`` table +* ``20161117071626``: added the internal setting to share articles to unmark.it +* ``20161118134328``: added ``http_status`` field on ``entry`` table +* ``20161122144743``: added the internal setting to enable/disable fetching articles with paywall +* ``20161122203647``: dropped ``expired`` and ``credentials_expired`` fields on ``user`` table Upgrade on a shared hosting ^^^^^^^^^^^^^^^^^^^^^^^^^^^ Backup your ``app/config/parameters.yml`` file. -Download the 2.1.1 release of wallabag: +Download the last release of wallabag: .. code-block:: bash - wget https://framabag.org/wallabag-release-2.1.1.tar.gz && tar xvf wallabag-release-2.1.1.tar.gz + 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 `_. Extract the archive in your wallabag folder and replace ``app/config/parameters.yml`` with yours. @@ -60,30 +70,38 @@ You must run some SQL queries to upgrade your database. We assume that the table ALTER TABLE `wallabag_config` ADD `pocket_consumer_key` VARCHAR(255) DEFAULT NULL; DELETE FROM `wallabag_craue_config_setting` WHERE `name` = 'pocket_consumer_key'; -Upgrading from 2.1.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. Upgrade on a dedicated web server ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -In order to upgrade your wallabag installation and get the last version, run the following command in you wallabag folder: - :: - make update + rm -rf var/cache/* + git fetch origin + git fetch --tags + git checkout 2.1.1 --force + SYMFONY_ENV=prod composer install --no-dev -o --prefer-dist + php bin/console doctrine:migrations:migrate --env=prod + php bin/console cache:clear --env=prod Upgrade on a shared hosting ^^^^^^^^^^^^^^^^^^^^^^^^^^^ Backup your ``app/config/parameters.yml`` file. -Download the last release of wallabag: +Download the 2.1.1 release of wallabag: .. code-block:: bash - wget https://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 -You will find the `md5 hash of the latest package on our website `_. +(md5 hash of the 2.1.1 package: ``9584a3b60a2b2a4de87f536548caac93``) Extract the archive in your wallabag folder and replace ``app/config/parameters.yml`` with yours. @@ -93,6 +111,18 @@ If you use SQLite, you must also copy your ``data/`` folder inside the new insta Empty ``var/cache`` folder. +You must run some SQL queries to upgrade your database. We assume that the table prefix is ``wallabag_`` and the database server is a MySQL one: + +.. code-block:: sql + + ALTER TABLE `wallabag_entry` ADD `uuid` LONGTEXT DEFAULT NULL; + INSERT INTO `wallabag_craue_config_setting` (`name`, `value`, `section`) VALUES ('share_public', '1', 'entry'); + ALTER TABLE `wallabag_oauth2_clients` ADD name longtext COLLATE 'utf8_unicode_ci' DEFAULT NULL; + INSERT INTO `wallabag_craue_config_setting` (`name`, `value`, `section`) VALUES ('import_with_redis', '0', 'import'); + INSERT INTO `wallabag_craue_config_setting` (`name`, `value`, `section`) VALUES ('import_with_rabbitmq', '0', 'import'); + ALTER TABLE `wallabag_config` ADD `pocket_consumer_key` VARCHAR(255) DEFAULT NULL; + DELETE FROM `wallabag_craue_config_setting` WHERE `name` = 'pocket_consumer_key'; + From wallabag 1.x ----------------- -- cgit v1.2.3 From 80aee45fa865ea72034dc8712967d4e787f70043 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicolas=20L=C5=93uillet?= Date: Thu, 24 Nov 2016 22:21:18 +0100 Subject: Added french translation --- docs/en/user/upgrade.rst | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) (limited to 'docs/en') diff --git a/docs/en/user/upgrade.rst b/docs/en/user/upgrade.rst index 5d864139..4def03cb 100644 --- a/docs/en/user/upgrade.rst +++ b/docs/en/user/upgrade.rst @@ -20,13 +20,14 @@ Upgrade on a dedicated web server Explanations about database migrations """""""""""""""""""""""""""""""""""""" +During the update, we execute database migrations. + All the database migrations are stored in ``app/DoctrineMigrations``. You can execute each migration individually: ``bin/console doctrine:migrations:migrate 20161001072726 --env=prod``. +Here is the migrations list for 2.1.x to 2.2.0 release: -Here are the migrations for 2.1.x to 2.2.0 release: - -* ``20161001072726``: added foreign keys for for account resetting +* ``20161001072726``: added foreign keys for account resetting * ``20161022134138``: converted database to ``utf8mb4`` encoding (for MySQL only) * ``20161024212538``: added ``user_id`` column on ``oauth2_clients`` to prevent users to delete API clients from other users * ``20161031132655``: added the internal setting to enable/disable downloading pictures @@ -62,13 +63,6 @@ You must run some SQL queries to upgrade your database. We assume that the table .. code-block:: sql - ALTER TABLE `wallabag_entry` ADD `uuid` LONGTEXT DEFAULT NULL; - INSERT INTO `wallabag_craue_config_setting` (`name`, `value`, `section`) VALUES ('share_public', '1', 'entry'); - ALTER TABLE `wallabag_oauth2_clients` ADD name longtext COLLATE 'utf8_unicode_ci' DEFAULT NULL; - INSERT INTO `wallabag_craue_config_setting` (`name`, `value`, `section`) VALUES ('import_with_redis', '0', 'import'); - INSERT INTO `wallabag_craue_config_setting` (`name`, `value`, `section`) VALUES ('import_with_rabbitmq', '0', 'import'); - ALTER TABLE `wallabag_config` ADD `pocket_consumer_key` VARCHAR(255) DEFAULT NULL; - DELETE FROM `wallabag_craue_config_setting` WHERE `name` = 'pocket_consumer_key'; Upgrade from 2.0.x to 2.1.1 --------------------------- -- cgit v1.2.3 From b87f1712336564ec14e37487f512568bc4d986f7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicolas=20L=C5=93uillet?= Date: Fri, 13 Jan 2017 14:51:37 +0100 Subject: Added information about latest migrations --- docs/en/user/upgrade.rst | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'docs/en') diff --git a/docs/en/user/upgrade.rst b/docs/en/user/upgrade.rst index 4def03cb..ff8b85ee 100644 --- a/docs/en/user/upgrade.rst +++ b/docs/en/user/upgrade.rst @@ -23,7 +23,9 @@ Explanations about database migrations During the update, we execute database migrations. All the database migrations are stored in ``app/DoctrineMigrations``. You can execute each migration individually: -``bin/console doctrine:migrations:migrate 20161001072726 --env=prod``. +``bin/console doctrine:migrations:execute 20161001072726 --env=prod``. + +You can also cancel each migration individually: ``bin/console doctrine:migrations:execute 20161001072726 --down --env=prod``. Here is the migrations list for 2.1.x to 2.2.0 release: @@ -37,6 +39,9 @@ Here is the migrations list for 2.1.x to 2.2.0 release: * ``20161118134328``: added ``http_status`` field on ``entry`` table * ``20161122144743``: added the internal setting to enable/disable fetching articles with paywall * ``20161122203647``: dropped ``expired`` and ``credentials_expired`` fields on ``user`` table +* ``20161128084725``: added ``list_mode`` field on ``config`` table +* ``20161128131503``: dropped ``locked``, ``credentials_expire_at`` and ``expires_at`` fields on ``user`` table +* ``20161214094403``: added ``uid`` index on ``entry`` table Upgrade on a shared hosting ^^^^^^^^^^^^^^^^^^^^^^^^^^^ -- cgit v1.2.3 From 4acbeb93717612f361627f7d4b946fcb4477823c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicolas=20L=C5=93uillet?= Date: Mon, 23 Jan 2017 14:16:00 +0100 Subject: Added hardcoded SQL for migration to 2.2 --- docs/en/user/upgrade.rst | 819 ++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 810 insertions(+), 9 deletions(-) (limited to 'docs/en') diff --git a/docs/en/user/upgrade.rst b/docs/en/user/upgrade.rst index ff8b85ee..b3972bce 100644 --- a/docs/en/user/upgrade.rst +++ b/docs/en/user/upgrade.rst @@ -1,3 +1,4 @@ +================================== Upgrade your wallabag installation ================================== @@ -7,18 +8,19 @@ You will find here different ways to upgrade your wallabag: - `from 2.0.x to 2.1.1 <#upgrade-from-2-0-x-to-2-1-1>`_ - `from 1.x to 2.x <#from-wallabag-1-x>`_ +***************************** Upgrading from 2.1.x to 2.2.x ------------------------------ +***************************** Upgrade on a dedicated web server -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +================================= :: make update Explanations about database migrations -"""""""""""""""""""""""""""""""""""""" +-------------------------------------- During the update, we execute database migrations. @@ -44,7 +46,7 @@ Here is the migrations list for 2.1.x to 2.2.0 release: * ``20161214094403``: added ``uid`` index on ``entry`` table Upgrade on a shared hosting -^^^^^^^^^^^^^^^^^^^^^^^^^^^ +=========================== Backup your ``app/config/parameters.yml`` file. @@ -64,20 +66,818 @@ If you use SQLite, you must also copy your ``data/`` folder inside the new insta Empty ``var/cache`` folder. -You must run some SQL queries to upgrade your database. We assume that the table prefix is ``wallabag_`` and the database server is a MySQL one: +You must run some SQL queries to upgrade your database. We assume that the table prefix is ``wallabag_``. Don't forgete to backup your database before migrating. + +You may encounter issues with indexes names: if so, please change queries with the correct index name. + +Migration 20161001072726 +------------------------ + +MySQL +^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_entry_tag DROP FOREIGN KEY FK_C9F0DD7CBA364942 + ALTER TABLE wallabag_entry_tag DROP FOREIGN KEY FK_C9F0DD7CBAD26311 + ALTER TABLE wallabag_entry_tag ADD CONSTRAINT FK_entry_tag_entry FOREIGN KEY (entry_id) REFERENCES wallabag_entry (id) ON DELETE CASCADE + ALTER TABLE wallabag_entry_tag ADD CONSTRAINT FK_entry_tag_tag FOREIGN KEY (tag_id) REFERENCES wallabag_tag (id) ON DELETE CASCADE + ALTER TABLE wallabag_annotation DROP FOREIGN KEY FK_A7AED006BA364942 + ALTER TABLE wallabag_annotation ADD CONSTRAINT FK_annotation_entry FOREIGN KEY (entry_id) REFERENCES wallabag_entry (id) ON DELETE CASCADE + +Migration down +"""""""""""""" + +We didn't write down migration for ``20161001072726``. + +PostgreSQL +^^^^^^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_entry_tag DROP CONSTRAINT fk_c9f0dd7cba364942 + ALTER TABLE wallabag_entry_tag DROP CONSTRAINT fk_c9f0dd7cbad26311 + ALTER TABLE wallabag_entry_tag ADD CONSTRAINT FK_entry_tag_entry FOREIGN KEY (entry_id) REFERENCES wallabag_entry (id) ON DELETE CASCADE + ALTER TABLE wallabag_entry_tag ADD CONSTRAINT FK_entry_tag_tag FOREIGN KEY (tag_id) REFERENCES wallabag_tag (id) ON DELETE CASCADE + ALTER TABLE wallabag_annotation DROP CONSTRAINT fk_a7aed006ba364942 + ALTER TABLE wallabag_annotation ADD CONSTRAINT FK_annotation_entry FOREIGN KEY (entry_id) REFERENCES wallabag_entry (id) ON DELETE CASCADE + +Migration down +"""""""""""""" + +We didn't write down migration for ``20161001072726``. + +SQLite +^^^^^^ + +This migration can only be executed safely on MySQL or PostgreSQL. + +Migration 20161022134138 +------------------------ + +MySQL +^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + ALTER DATABASE wallabag CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci; + ALTER TABLE wallabag_user CHANGE confirmation_token confirmation_token VARCHAR(180) DEFAULT NULL; + ALTER TABLE wallabag_user CHANGE salt salt VARCHAR(180) NOT NULL; + ALTER TABLE wallabag_user CHANGE password password VARCHAR(180) NOT NULL; + ALTER TABLE wallabag_annotation CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; + ALTER TABLE wallabag_entry CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; + ALTER TABLE wallabag_tag CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; + ALTER TABLE wallabag_user CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; + ALTER TABLE wallabag_annotation CHANGE `text` `text` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; + ALTER TABLE wallabag_annotation CHANGE `quote` `quote` VARCHAR(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; + ALTER TABLE wallabag_entry CHANGE `title` `title` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; + ALTER TABLE wallabag_entry CHANGE `content` `content` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; + ALTER TABLE wallabag_tag CHANGE `label` `label` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; + ALTER TABLE wallabag_user CHANGE `name` `name` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; + +Migration down +"""""""""""""" + +.. code-block:: sql + + ALTER DATABASE wallabag CHARACTER SET = utf8 COLLATE = utf8_unicode_ci; + ALTER TABLE wallabag_annotation CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci; + ALTER TABLE wallabag_entry CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci; + ALTER TABLE wallabag_tag CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci; + ALTER TABLE wallabag_user CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci; + ALTER TABLE wallabag_annotation CHANGE `text` `text` longtext CHARACTER SET utf8 COLLATE utf8_unicode_ci; + ALTER TABLE wallabag_annotation CHANGE `quote` `quote` VARCHAR(255) CHARACTER SET utf8 COLLATE utf8_unicode_ci; + ALTER TABLE wallabag_entry CHANGE `title` `title` longtext CHARACTER SET utf8 COLLATE utf8_unicode_ci; + ALTER TABLE wallabag_entry CHANGE `content` `content` longtext CHARACTER SET utf8 COLLATE utf8_unicode_ci; + ALTER TABLE wallabag_tag CHANGE `label` `label` longtext CHARACTER SET utf8 COLLATE utf8_unicode_ci; + ALTER TABLE wallabag_user CHANGE `name` `name` longtext CHARACTER SET utf8 COLLATE utf8_unicode_ci; + +PostgreSQL and SQLite +^^^^^^^^^^^^^^^^^^^^^ + +This migration only apply to MySQL. + +Migration 20161024212538 +------------------------ + +MySQL +^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_oauth2_clients ADD user_id INT NOT NULL + ALTER TABLE wallabag_oauth2_clients ADD CONSTRAINT IDX_user_oauth_client FOREIGN KEY (user_id) REFERENCES wallabag_user (id) ON DELETE CASCADE + CREATE INDEX IDX_635D765EA76ED395 ON wallabag_oauth2_clients (user_id) + +Migration down +"""""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_oauth2_clients DROP FOREIGN KEY IDX_user_oauth_client + ALTER TABLE wallabag_oauth2_clients DROP user_id + +PostgreSQL +^^^^^^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_oauth2_clients ADD user_id INT DEFAULT NULL + ALTER TABLE wallabag_oauth2_clients ADD CONSTRAINT IDX_user_oauth_client FOREIGN KEY (user_id) REFERENCES wallabag_user (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE + CREATE INDEX IDX_635D765EA76ED395 ON wallabag_oauth2_clients (user_id) + + +Migration down +"""""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_oauth2_clients DROP CONSTRAINT idx_user_oauth_client + ALTER TABLE wallabag_oauth2_clients DROP user_id + +SQLite +^^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + CREATE TEMPORARY TABLE __temp__wallabag_oauth2_clients AS SELECT id, random_id, redirect_uris, secret, allowed_grant_types, name FROM wallabag_oauth2_clients + DROP TABLE wallabag_oauth2_clients + CREATE TABLE wallabag_oauth2_clients (id INTEGER NOT NULL, user_id INTEGER DEFAULT NULL, random_id VARCHAR(255) NOT NULL COLLATE BINARY, redirect_uris CLOB NOT NULL COLLATE BINARY, secret VARCHAR(255) NOT NULL COLLATE BINARY, allowed_grant_types CLOB NOT NULL COLLATE BINARY, name CLOB DEFAULT NULL COLLATE BINARY, PRIMARY KEY(id), CONSTRAINT IDX_user_oauth_client FOREIGN KEY (user_id) REFERENCES wallabag_user (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE) + INSERT INTO wallabag_oauth2_clients (id, random_id, redirect_uris, secret, allowed_grant_types, name) SELECT id, random_id, redirect_uris, secret, allowed_grant_types, name FROM __temp__wallabag_oauth2_clients + DROP TABLE __temp__wallabag_oauth2_clients + CREATE INDEX IDX_635D765EA76ED395 ON wallabag_oauth2_clients (user_id) + +Migration down +"""""""""""""" + +.. code-block:: sql + + DROP INDEX IDX_635D765EA76ED395 + CREATE TEMPORARY TABLE __temp__wallabag_oauth2_clients AS SELECT id, random_id, redirect_uris, secret, allowed_grant_types, name FROM wallabag_oauth2_clients + DROP TABLE wallabag_oauth2_clients + CREATE TABLE wallabag_oauth2_clients (id INTEGER NOT NULL, random_id VARCHAR(255) NOT NULL COLLATE BINARY, redirect_uris CLOB NOT NULL COLLATE BINARY, secret VARCHAR(255) NOT NULL COLLATE BINARY, allowed_grant_types CLOB NOT NULL COLLATE BINARY, name CLOB DEFAULT NULL COLLATE BINARY, PRIMARY KEY(id)) + INSERT INTO wallabag_oauth2_clients (id, random_id, redirect_uris, secret, allowed_grant_types, name) SELECT id, random_id, redirect_uris, secret, allowed_grant_types, name FROM __temp__wallabag_oauth2_clients + DROP TABLE __temp__wallabag_oauth2_clients + +Migration 20161031132655 +------------------------ + +MySQL +^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + INSERT INTO wallabag_craue_config_setting (name, value, section) VALUES ('download_images_enabled', 0, 'misc') + +Migration down +"""""""""""""" + +.. code-block:: sql + + DELETE FROM wallabag_craue_config_setting WHERE name = 'download_images_enabled'; + +PostgreSQL +^^^^^^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + INSERT INTO wallabag_craue_config_setting (name, value, section) VALUES ('download_images_enabled', 0, 'misc') + +Migration down +"""""""""""""" + +.. code-block:: sql + + DELETE FROM wallabag_craue_config_setting WHERE name = 'download_images_enabled'; + +SQLite +^^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + INSERT INTO wallabag_craue_config_setting (name, value, section) VALUES ('download_images_enabled', 0, 'misc') + +Migration down +"""""""""""""" + +.. code-block:: sql + + DELETE FROM wallabag_craue_config_setting WHERE name = 'download_images_enabled'; + +Migration 20161104073720 +------------------------ + +MySQL +^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + CREATE INDEX IDX_entry_created_at ON wallabag_entry (created_at) + +Migration down +"""""""""""""" + +.. code-block:: sql + + DROP INDEX IDX_entry_created_at ON wallabag_entry + +PostgreSQL +^^^^^^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + CREATE INDEX IDX_entry_created_at ON wallabag_entry (created_at) + +Migration down +"""""""""""""" + +.. code-block:: sql + + DROP INDEX idx_entry_created_at + +SQLite +^^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + DROP INDEX created_at_idx + DROP INDEX IDX_F4D18282A76ED395 + CREATE TEMPORARY TABLE __temp__wallabag_entry AS SELECT id, user_id, uuid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public FROM wallabag_entry + DROP TABLE wallabag_entry + CREATE TABLE wallabag_entry (id INTEGER NOT NULL, user_id INTEGER DEFAULT NULL, uuid CLOB DEFAULT NULL COLLATE BINARY, title CLOB DEFAULT NULL COLLATE BINARY, url CLOB DEFAULT NULL COLLATE BINARY, is_archived BOOLEAN NOT NULL, is_starred BOOLEAN NOT NULL, content CLOB DEFAULT NULL COLLATE BINARY, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, mimetype CLOB DEFAULT NULL COLLATE BINARY, language CLOB DEFAULT NULL COLLATE BINARY, reading_time INTEGER DEFAULT NULL, domain_name CLOB DEFAULT NULL COLLATE BINARY, preview_picture CLOB DEFAULT NULL COLLATE BINARY, is_public BOOLEAN DEFAULT '0', PRIMARY KEY(id)) + INSERT INTO wallabag_entry (id, user_id, uuid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public) SELECT id, user_id, uuid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public FROM __temp__wallabag_entry + DROP TABLE __temp__wallabag_entry + CREATE INDEX created_at_idx ON wallabag_entry (created_at) + CREATE INDEX IDX_F4D18282A76ED395 ON wallabag_entry (user_id) + CREATE INDEX IDX_entry_created_at ON wallabag_entry (created_at) + +Migration down +"""""""""""""" + +.. code-block:: sql + + DROP INDEX IDX_entry_created_at + DROP INDEX IDX_F4D18282A76ED395 + DROP INDEX created_at_idx + CREATE TEMPORARY TABLE __temp__wallabag_entry AS SELECT id, user_id, uuid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public FROM wallabag_entry + DROP TABLE wallabag_entry + CREATE TABLE wallabag_entry (id INTEGER NOT NULL, user_id INTEGER DEFAULT NULL, uuid CLOB DEFAULT NULL COLLATE BINARY, title CLOB DEFAULT NULL COLLATE BINARY, url CLOB DEFAULT NULL COLLATE BINARY, is_archived BOOLEAN NOT NULL, is_starred BOOLEAN NOT NULL, content CLOB DEFAULT NULL COLLATE BINARY, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, mimetype CLOB DEFAULT NULL COLLATE BINARY, language CLOB DEFAULT NULL COLLATE BINARY, reading_time INTEGER DEFAULT NULL, domain_name CLOB DEFAULT NULL COLLATE BINARY, preview_picture CLOB DEFAULT NULL COLLATE BINARY, is_public BOOLEAN DEFAULT '0', PRIMARY KEY(id)) + INSERT INTO wallabag_entry (id, user_id, uuid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public) SELECT id, user_id, uuid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public FROM __temp__wallabag_entry + DROP TABLE __temp__wallabag_entry + CREATE INDEX IDX_F4D18282A76ED395 ON wallabag_entry (user_id) + CREATE INDEX created_at_idx ON wallabag_entry (created_at) + +Migration 20161106113822 +------------------------ + +MySQL +^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_config ADD action_mark_as_read INT DEFAULT 0 + +Migration down +"""""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_config DROP action_mark_as_read + +PostgreSQL +^^^^^^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_config ADD action_mark_as_read INT DEFAULT 0 + +Migration down +"""""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_config DROP action_mark_as_read + +SQLite +^^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_config ADD COLUMN action_mark_as_read INTEGER DEFAULT 0 + +Migration down +"""""""""""""" + +.. code-block:: sql + + DROP INDEX UNIQ_87E64C53A76ED395 + CREATE TEMPORARY TABLE __temp__wallabag_config AS SELECT id, user_id, theme, items_per_page, language, rss_token, rss_limit, reading_speed, pocket_consumer_key FROM wallabag_config + DROP TABLE wallabag_config + CREATE TABLE wallabag_config (id INTEGER NOT NULL, user_id INTEGER DEFAULT NULL, theme VARCHAR(255) NOT NULL COLLATE BINARY, items_per_page INTEGER NOT NULL, language VARCHAR(255) NOT NULL COLLATE BINARY, rss_token VARCHAR(255) DEFAULT NULL COLLATE BINARY, rss_limit INTEGER DEFAULT NULL, reading_speed DOUBLE PRECISION DEFAULT NULL, pocket_consumer_key VARCHAR(255) DEFAULT NULL COLLATE BINARY, PRIMARY KEY(id)) + INSERT INTO wallabag_config (id, user_id, theme, items_per_page, language, rss_token, rss_limit, reading_speed, pocket_consumer_key) SELECT id, user_id, theme, items_per_page, language, rss_token, rss_limit, reading_speed, pocket_consumer_key FROM __temp__wallabag_config + DROP TABLE __temp__wallabag_config + CREATE UNIQUE INDEX UNIQ_87E64C53A76ED395 ON wallabag_config (user_id) + +Migration 20161117071626 +------------------------ + +MySQL +^^^^^ + +Migration up +"""""""""""" .. code-block:: sql + INSERT INTO wallabag_craue_config_setting (name, value, section) VALUES ('share_unmark', 0, 'entry') + INSERT INTO wallabag_craue_config_setting (name, value, section) VALUES ('unmark_url', 'https://unmark.it', 'entry') + +Migration down +"""""""""""""" + +.. code-block:: sql + + DELETE FROM wallabag_craue_config_setting WHERE name = 'share_unmark'; + DELETE FROM wallabag_craue_config_setting WHERE name = 'unmark_url'; + +PostgreSQL +^^^^^^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + INSERT INTO wallabag_craue_config_setting (name, value, section) VALUES ('share_unmark', 0, 'entry') + INSERT INTO wallabag_craue_config_setting (name, value, section) VALUES ('unmark_url', 'https://unmark.it', 'entry') + +Migration down +"""""""""""""" + +.. code-block:: sql + + DELETE FROM wallabag_craue_config_setting WHERE name = 'share_unmark'; + DELETE FROM wallabag_craue_config_setting WHERE name = 'unmark_url'; + +SQLite +^^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + INSERT INTO wallabag_craue_config_setting (name, value, section) VALUES ('share_unmark', 0, 'entry') + INSERT INTO wallabag_craue_config_setting (name, value, section) VALUES ('unmark_url', 'https://unmark.it', 'entry') + +Migration down +"""""""""""""" + +.. code-block:: sql + + DELETE FROM wallabag_craue_config_setting WHERE name = 'share_unmark'; + DELETE FROM wallabag_craue_config_setting WHERE name = 'unmark_url'; + +Migration 20161118134328 +------------------------ + +MySQL +^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_entry ADD http_status VARCHAR(3) DEFAULT NULL + +Migration down +"""""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_entry DROP http_status + +PostgreSQL +^^^^^^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_entry ADD http_status VARCHAR(3) DEFAULT NULL + +Migration down +"""""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_entry DROP http_status + +SQLite +^^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_entry ADD COLUMN http_status VARCHAR(3) DEFAULT NULL + +Migration down +"""""""""""""" + +.. code-block:: sql + + DROP INDEX created_at_idx + DROP INDEX IDX_F4D18282A76ED395 + CREATE TEMPORARY TABLE __temp__wallabag_entry AS SELECT id, user_id, uuid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public FROM wallabag_entry + DROP TABLE wallabag_entry + CREATE TABLE wallabag_entry (id INTEGER NOT NULL, user_id INTEGER DEFAULT NULL, uuid CLOB DEFAULT NULL COLLATE BINARY, title CLOB DEFAULT NULL COLLATE BINARY, url CLOB DEFAULT NULL COLLATE BINARY, is_archived BOOLEAN NOT NULL, is_starred BOOLEAN NOT NULL, content CLOB DEFAULT NULL COLLATE BINARY, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, mimetype CLOB DEFAULT NULL COLLATE BINARY, language CLOB DEFAULT NULL COLLATE BINARY, reading_time INTEGER DEFAULT NULL, domain_name CLOB DEFAULT NULL COLLATE BINARY, preview_picture CLOB DEFAULT NULL COLLATE BINARY, is_public BOOLEAN DEFAULT '0', PRIMARY KEY(id)) + INSERT INTO wallabag_entry (id, user_id, uuid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public) SELECT id, user_id, uuid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public FROM __temp__wallabag_entry + DROP TABLE __temp__wallabag_entry + CREATE INDEX created_at_idx ON wallabag_entry (created_at) + CREATE INDEX IDX_F4D18282A76ED395 ON wallabag_entry (user_id) + +Migration 20161122144743 +------------------------ + +MySQL +^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + INSERT INTO wallabag_craue_config_setting (name, value, section) VALUES ('restricted_access', 0, 'entry') + +Migration down +"""""""""""""" + +.. code-block:: sql + + DELETE FROM wallabag_craue_config_setting WHERE name = 'restricted_access'; + +PostgreSQL +^^^^^^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + INSERT INTO wallabag_craue_config_setting (name, value, section) VALUES ('restricted_access', 0, 'entry') + +Migration down +"""""""""""""" + +.. code-block:: sql + + DELETE FROM wallabag_craue_config_setting WHERE name = 'restricted_access'; + +SQLite +^^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + INSERT INTO wallabag_craue_config_setting (name, value, section) VALUES ('restricted_access', 0, 'entry') + +Migration down +"""""""""""""" + +.. code-block:: sql + + DELETE FROM wallabag_craue_config_setting WHERE name = 'restricted_access'; + +Migration 20161122203647 +------------------------ + +MySQL +^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_user DROP expired, DROP credentials_expired + +Migration down +"""""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_user ADD expired SMALLINT DEFAULT NULL, ADD credentials_expired SMALLINT DEFAULT NULL + +PostgreSQL +^^^^^^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_user DROP expired + ALTER TABLE wallabag_user DROP credentials_expired + +Migration down +"""""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_user ADD expired SMALLINT DEFAULT NULL + ALTER TABLE wallabag_user ADD credentials_expired SMALLINT DEFAULT NULL + +SQLite +^^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + DROP INDEX UNIQ_1D63E7E5C05FB297 + DROP INDEX UNIQ_1D63E7E5A0D96FBF + DROP INDEX UNIQ_1D63E7E592FC23A8 + CREATE TEMPORARY TABLE __temp__wallabag_user AS SELECT id, username, username_canonical, email, email_canonical, enabled, salt, password, last_login, locked, expires_at, confirmation_token, password_requested_at, roles, credentials_expire_at, name, created_at, updated_at, authCode, twoFactorAuthentication, trusted FROM wallabag_user + DROP TABLE wallabag_user + CREATE TABLE wallabag_user (id INTEGER NOT NULL, username VARCHAR(180) NOT NULL COLLATE BINARY, username_canonical VARCHAR(180) NOT NULL COLLATE BINARY, email VARCHAR(180) NOT NULL COLLATE BINARY, email_canonical VARCHAR(180) NOT NULL COLLATE BINARY, enabled BOOLEAN NOT NULL, salt VARCHAR(255) NOT NULL COLLATE BINARY, password VARCHAR(255) NOT NULL COLLATE BINARY, last_login DATETIME DEFAULT NULL, locked BOOLEAN NOT NULL, expires_at DATETIME DEFAULT NULL, confirmation_token VARCHAR(180) DEFAULT NULL COLLATE BINARY, password_requested_at DATETIME DEFAULT NULL, roles CLOB NOT NULL COLLATE BINARY, credentials_expire_at DATETIME DEFAULT NULL, name CLOB DEFAULT NULL COLLATE BINARY, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, authCode INTEGER DEFAULT NULL, twoFactorAuthentication BOOLEAN NOT NULL, trusted CLOB DEFAULT NULL COLLATE BINARY, PRIMARY KEY(id)) + INSERT INTO wallabag_user (id, username, username_canonical, email, email_canonical, enabled, salt, password, last_login, locked, expires_at, confirmation_token, password_requested_at, roles, credentials_expire_at, name, created_at, updated_at, authCode, twoFactorAuthentication, trusted) SELECT id, username, username_canonical, email, email_canonical, enabled, salt, password, last_login, locked, expires_at, confirmation_token, password_requested_at, roles, credentials_expire_at, name, created_at, updated_at, authCode, twoFactorAuthentication, trusted FROM __temp__wallabag_user + DROP TABLE __temp__wallabag_user + CREATE UNIQUE INDEX UNIQ_1D63E7E5C05FB297 ON wallabag_user (confirmation_token) + CREATE UNIQUE INDEX UNIQ_1D63E7E5A0D96FBF ON wallabag_user (email_canonical) + CREATE UNIQUE INDEX UNIQ_1D63E7E592FC23A8 ON wallabag_user (username_canonical) + +Migration down +"""""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_user ADD COLUMN expired SMALLINT DEFAULT NULL + ALTER TABLE wallabag_user ADD COLUMN credentials_expired SMALLINT DEFAULT NULL + +Migration 20161128084725 +------------------------ + +MySQL +^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_config ADD list_mode INT DEFAULT NULL + +Migration down +"""""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_config DROP list_mode + +PostgreSQL +^^^^^^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_config ADD list_mode INT DEFAULT NULL + +Migration down +"""""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_config DROP list_mode + +SQLite +^^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_config ADD COLUMN list_mode INTEGER DEFAULT NULL + +Migration down +"""""""""""""" + +.. code-block:: sql + + DROP INDEX UNIQ_87E64C53A76ED395 + CREATE TEMPORARY TABLE __temp__wallabag_config AS SELECT id, user_id, theme, items_per_page, language, rss_token, rss_limit, reading_speed, pocket_consumer_key FROM wallabag_config + DROP TABLE wallabag_config + CREATE TABLE wallabag_config (id INTEGER NOT NULL, user_id INTEGER DEFAULT NULL, theme VARCHAR(255) NOT NULL COLLATE BINARY, items_per_page INTEGER NOT NULL, language VARCHAR(255) NOT NULL COLLATE BINARY, rss_token VARCHAR(255) DEFAULT NULL COLLATE BINARY, rss_limit INTEGER DEFAULT NULL, reading_speed DOUBLE PRECISION DEFAULT NULL, pocket_consumer_key VARCHAR(255) DEFAULT NULL COLLATE BINARY, PRIMARY KEY(id)) + INSERT INTO wallabag_config (id, user_id, theme, items_per_page, language, rss_token, rss_limit, reading_speed, pocket_consumer_key) SELECT id, user_id, theme, items_per_page, language, rss_token, rss_limit, reading_speed, pocket_consumer_key FROM __temp__wallabag_config + DROP TABLE __temp__wallabag_config + CREATE UNIQUE INDEX UNIQ_87E64C53A76ED395 ON wallabag_config (user_id) + +Migration 20161128131503 +------------------------ + +MySQL +^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_user DROP locked, DROP credentials_expire_at, DROP expires_at + +Migration down +"""""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_user ADD locked SMALLINT DEFAULT NULL, ADD credentials_expire_at DATETIME DEFAULT NULL, ADD expires_at DATETIME DEFAULT NULL + +PostgreSQL +^^^^^^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_user DROP locked + ALTER TABLE wallabag_user DROP credentials_expire_at + ALTER TABLE wallabag_user DROP expires_at + +Migration down +"""""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_user ADD locked SMALLINT DEFAULT NULL + ALTER TABLE wallabag_user ADD credentials_expire_at TIMESTAMP(0) WITHOUT TIME ZONE DEFAULT NULL + ALTER TABLE wallabag_user ADD expires_at TIMESTAMP(0) WITHOUT TIME ZONE DEFAULT NULL + +SQLite +^^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_user ADD COLUMN locked SMALLINT DEFAULT NULL + ALTER TABLE wallabag_user ADD COLUMN credentials_expire_at DATETIME DEFAULT NULL + ALTER TABLE wallabag_user ADD COLUMN expires_at DATETIME DEFAULT NULL + +Migration down +"""""""""""""" + +.. code-block:: sql + + DROP INDEX UNIQ_1D63E7E592FC23A8 + DROP INDEX UNIQ_1D63E7E5A0D96FBF + DROP INDEX UNIQ_1D63E7E5C05FB297 + CREATE TEMPORARY TABLE __temp__wallabag_user AS SELECT id, username, username_canonical, email, email_canonical, enabled, salt, password, last_login, confirmation_token, password_requested_at, roles, name, created_at, updated_at, authCode, twoFactorAuthentication, trusted, expired, credentials_expired FROM wallabag_user + DROP TABLE wallabag_user + CREATE TABLE wallabag_user (id INTEGER NOT NULL, username VARCHAR(180) NOT NULL COLLATE BINARY, username_canonical VARCHAR(180) NOT NULL COLLATE BINARY, email VARCHAR(180) NOT NULL COLLATE BINARY, email_canonical VARCHAR(180) NOT NULL COLLATE BINARY, enabled BOOLEAN NOT NULL, salt VARCHAR(255) NOT NULL COLLATE BINARY, password VARCHAR(255) NOT NULL COLLATE BINARY, last_login DATETIME DEFAULT NULL, confirmation_token VARCHAR(180) DEFAULT NULL COLLATE BINARY, password_requested_at DATETIME DEFAULT NULL, roles CLOB NOT NULL COLLATE BINARY, name CLOB DEFAULT NULL COLLATE BINARY, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, authCode INTEGER DEFAULT NULL, twoFactorAuthentication BOOLEAN NOT NULL, trusted CLOB DEFAULT NULL COLLATE BINARY, expired SMALLINT DEFAULT NULL, credentials_expired SMALLINT DEFAULT NULL, PRIMARY KEY(id)) + INSERT INTO wallabag_user (id, username, username_canonical, email, email_canonical, enabled, salt, password, last_login, confirmation_token, password_requested_at, roles, name, created_at, updated_at, authCode, twoFactorAuthentication, trusted, expired, credentials_expired) SELECT id, username, username_canonical, email, email_canonical, enabled, salt, password, last_login, confirmation_token, password_requested_at, roles, name, created_at, updated_at, authCode, twoFactorAuthentication, trusted, expired, credentials_expired FROM __temp__wallabag_user + DROP TABLE __temp__wallabag_user + CREATE UNIQUE INDEX UNIQ_1D63E7E592FC23A8 ON wallabag_user (username_canonical) + CREATE UNIQUE INDEX UNIQ_1D63E7E5A0D96FBF ON wallabag_user (email_canonical) + CREATE UNIQUE INDEX UNIQ_1D63E7E5C05FB297 ON wallabag_user (confirmation_token) + +Migration 20161214094403 +------------------------ + +MySQL +^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + CREATE INDEX IDX_entry_uid ON wallabag_entry (uid) + +Migration down +"""""""""""""" + +.. code-block:: sql + + DROP INDEX IDX_entry_uid ON wallabag_entry + +PostgreSQL +^^^^^^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + CREATE INDEX IDX_entry_uid ON wallabag_entry (uid) + +Migration down +"""""""""""""" + +.. code-block:: sql + + DROP INDEX idx_entry_uid + +SQLite +^^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + DROP INDEX IDX_F4D18282A76ED395 + DROP INDEX created_at_idx + CREATE TEMPORARY TABLE __temp__wallabag_entry AS SELECT id, user_id, uid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public FROM wallabag_entry + DROP TABLE wallabag_entry + CREATE TABLE wallabag_entry (id INTEGER NOT NULL, user_id INTEGER DEFAULT NULL, uid CLOB DEFAULT NULL COLLATE BINARY, title CLOB DEFAULT NULL COLLATE BINARY, url CLOB DEFAULT NULL COLLATE BINARY, is_archived BOOLEAN NOT NULL, is_starred BOOLEAN NOT NULL, content CLOB DEFAULT NULL COLLATE BINARY, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, mimetype CLOB DEFAULT NULL COLLATE BINARY, language CLOB DEFAULT NULL COLLATE BINARY, reading_time INTEGER DEFAULT NULL, domain_name CLOB DEFAULT NULL COLLATE BINARY, preview_picture CLOB DEFAULT NULL COLLATE BINARY, is_public BOOLEAN DEFAULT '0', PRIMARY KEY(id)) + INSERT INTO wallabag_entry (id, user_id, uid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public) SELECT id, user_id, uid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public FROM __temp__wallabag_entry + DROP TABLE __temp__wallabag_entry + CREATE INDEX IDX_F4D18282A76ED395 ON wallabag_entry (user_id) + CREATE INDEX created_at_idx ON wallabag_entry (created_at) + CREATE INDEX IDX_entry_uid ON wallabag_entry (uid) + +Migration down +"""""""""""""" + +.. code-block:: sql + DROP INDEX IDX_entry_uid + DROP INDEX created_at_idx + DROP INDEX IDX_F4D18282A76ED395 + CREATE TEMPORARY TABLE __temp__wallabag_entry AS SELECT id, user_id, uid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public FROM wallabag_entry + DROP TABLE wallabag_entry + CREATE TABLE wallabag_entry (id INTEGER NOT NULL, user_id INTEGER DEFAULT NULL, uid CLOB DEFAULT NULL COLLATE BINARY, title CLOB DEFAULT NULL COLLATE BINARY, url CLOB DEFAULT NULL COLLATE BINARY, is_archived BOOLEAN NOT NULL, is_starred BOOLEAN NOT NULL, content CLOB DEFAULT NULL COLLATE BINARY, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, mimetype CLOB DEFAULT NULL COLLATE BINARY, language CLOB DEFAULT NULL COLLATE BINARY, reading_time INTEGER DEFAULT NULL, domain_name CLOB DEFAULT NULL COLLATE BINARY, preview_picture CLOB DEFAULT NULL COLLATE BINARY, is_public BOOLEAN DEFAULT '0', PRIMARY KEY(id)) + INSERT INTO wallabag_entry (id, user_id, uid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public) SELECT id, user_id, uid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public FROM __temp__wallabag_entry + DROP TABLE __temp__wallabag_entry + CREATE INDEX created_at_idx ON wallabag_entry (created_at) + CREATE INDEX IDX_F4D18282A76ED395 ON wallabag_entry (user_id) + +*************************** 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. Upgrade on a dedicated web server -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +================================= :: @@ -90,7 +890,7 @@ Upgrade on a dedicated web server php bin/console cache:clear --env=prod Upgrade on a shared hosting -^^^^^^^^^^^^^^^^^^^^^^^^^^^ +=========================== Backup your ``app/config/parameters.yml`` file. @@ -122,8 +922,9 @@ You must run some SQL queries to upgrade your database. We assume that the table ALTER TABLE `wallabag_config` ADD `pocket_consumer_key` VARCHAR(255) DEFAULT NULL; DELETE FROM `wallabag_craue_config_setting` WHERE `name` = 'pocket_consumer_key'; +***************** From wallabag 1.x ------------------ +***************** There is no automatic script to update from wallabag 1.x to wallabag 2.x. You need to: -- cgit v1.2.3 From 5d916d03afaec6fbe32d2a95624628096325744e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicolas=20L=C5=93uillet?= Date: Wed, 25 Jan 2017 12:34:20 +0100 Subject: Moved queries in a separate file --- docs/en/user/query-upgrade-21-22.rst | 797 ++++++++++++++++++++++++++++++++++ docs/en/user/upgrade.rst | 798 +---------------------------------- 2 files changed, 798 insertions(+), 797 deletions(-) create mode 100644 docs/en/user/query-upgrade-21-22.rst (limited to 'docs/en') diff --git a/docs/en/user/query-upgrade-21-22.rst b/docs/en/user/query-upgrade-21-22.rst new file mode 100644 index 00000000..cd201dc2 --- /dev/null +++ b/docs/en/user/query-upgrade-21-22.rst @@ -0,0 +1,797 @@ +Migration 20161001072726 +------------------------ + +MySQL +^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_entry_tag DROP FOREIGN KEY FK_C9F0DD7CBA364942 + ALTER TABLE wallabag_entry_tag DROP FOREIGN KEY FK_C9F0DD7CBAD26311 + ALTER TABLE wallabag_entry_tag ADD CONSTRAINT FK_entry_tag_entry FOREIGN KEY (entry_id) REFERENCES wallabag_entry (id) ON DELETE CASCADE + ALTER TABLE wallabag_entry_tag ADD CONSTRAINT FK_entry_tag_tag FOREIGN KEY (tag_id) REFERENCES wallabag_tag (id) ON DELETE CASCADE + ALTER TABLE wallabag_annotation DROP FOREIGN KEY FK_A7AED006BA364942 + ALTER TABLE wallabag_annotation ADD CONSTRAINT FK_annotation_entry FOREIGN KEY (entry_id) REFERENCES wallabag_entry (id) ON DELETE CASCADE + +Migration down +"""""""""""""" + +We didn't write down migration for ``20161001072726``. + +PostgreSQL +^^^^^^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_entry_tag DROP CONSTRAINT fk_c9f0dd7cba364942 + ALTER TABLE wallabag_entry_tag DROP CONSTRAINT fk_c9f0dd7cbad26311 + ALTER TABLE wallabag_entry_tag ADD CONSTRAINT FK_entry_tag_entry FOREIGN KEY (entry_id) REFERENCES wallabag_entry (id) ON DELETE CASCADE + ALTER TABLE wallabag_entry_tag ADD CONSTRAINT FK_entry_tag_tag FOREIGN KEY (tag_id) REFERENCES wallabag_tag (id) ON DELETE CASCADE + ALTER TABLE wallabag_annotation DROP CONSTRAINT fk_a7aed006ba364942 + ALTER TABLE wallabag_annotation ADD CONSTRAINT FK_annotation_entry FOREIGN KEY (entry_id) REFERENCES wallabag_entry (id) ON DELETE CASCADE + +Migration down +"""""""""""""" + +We didn't write down migration for ``20161001072726``. + +SQLite +^^^^^^ + +This migration can only be executed safely on MySQL or PostgreSQL. + +Migration 20161022134138 +------------------------ + +MySQL +^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + ALTER DATABASE wallabag CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci; + ALTER TABLE wallabag_user CHANGE confirmation_token confirmation_token VARCHAR(180) DEFAULT NULL; + ALTER TABLE wallabag_user CHANGE salt salt VARCHAR(180) NOT NULL; + ALTER TABLE wallabag_user CHANGE password password VARCHAR(180) NOT NULL; + ALTER TABLE wallabag_annotation CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; + ALTER TABLE wallabag_entry CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; + ALTER TABLE wallabag_tag CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; + ALTER TABLE wallabag_user CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; + ALTER TABLE wallabag_annotation CHANGE `text` `text` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; + ALTER TABLE wallabag_annotation CHANGE `quote` `quote` VARCHAR(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; + ALTER TABLE wallabag_entry CHANGE `title` `title` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; + ALTER TABLE wallabag_entry CHANGE `content` `content` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; + ALTER TABLE wallabag_tag CHANGE `label` `label` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; + ALTER TABLE wallabag_user CHANGE `name` `name` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; + +Migration down +"""""""""""""" + +.. code-block:: sql + + ALTER DATABASE wallabag CHARACTER SET = utf8 COLLATE = utf8_unicode_ci; + ALTER TABLE wallabag_annotation CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci; + ALTER TABLE wallabag_entry CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci; + ALTER TABLE wallabag_tag CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci; + ALTER TABLE wallabag_user CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci; + ALTER TABLE wallabag_annotation CHANGE `text` `text` longtext CHARACTER SET utf8 COLLATE utf8_unicode_ci; + ALTER TABLE wallabag_annotation CHANGE `quote` `quote` VARCHAR(255) CHARACTER SET utf8 COLLATE utf8_unicode_ci; + ALTER TABLE wallabag_entry CHANGE `title` `title` longtext CHARACTER SET utf8 COLLATE utf8_unicode_ci; + ALTER TABLE wallabag_entry CHANGE `content` `content` longtext CHARACTER SET utf8 COLLATE utf8_unicode_ci; + ALTER TABLE wallabag_tag CHANGE `label` `label` longtext CHARACTER SET utf8 COLLATE utf8_unicode_ci; + ALTER TABLE wallabag_user CHANGE `name` `name` longtext CHARACTER SET utf8 COLLATE utf8_unicode_ci; + +PostgreSQL and SQLite +^^^^^^^^^^^^^^^^^^^^^ + +This migration only apply to MySQL. + +Migration 20161024212538 +------------------------ + +MySQL +^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_oauth2_clients ADD user_id INT NOT NULL + ALTER TABLE wallabag_oauth2_clients ADD CONSTRAINT IDX_user_oauth_client FOREIGN KEY (user_id) REFERENCES wallabag_user (id) ON DELETE CASCADE + CREATE INDEX IDX_635D765EA76ED395 ON wallabag_oauth2_clients (user_id) + +Migration down +"""""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_oauth2_clients DROP FOREIGN KEY IDX_user_oauth_client + ALTER TABLE wallabag_oauth2_clients DROP user_id + +PostgreSQL +^^^^^^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_oauth2_clients ADD user_id INT DEFAULT NULL + ALTER TABLE wallabag_oauth2_clients ADD CONSTRAINT IDX_user_oauth_client FOREIGN KEY (user_id) REFERENCES wallabag_user (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE + CREATE INDEX IDX_635D765EA76ED395 ON wallabag_oauth2_clients (user_id) + + +Migration down +"""""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_oauth2_clients DROP CONSTRAINT idx_user_oauth_client + ALTER TABLE wallabag_oauth2_clients DROP user_id + +SQLite +^^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + CREATE TEMPORARY TABLE __temp__wallabag_oauth2_clients AS SELECT id, random_id, redirect_uris, secret, allowed_grant_types, name FROM wallabag_oauth2_clients + DROP TABLE wallabag_oauth2_clients + CREATE TABLE wallabag_oauth2_clients (id INTEGER NOT NULL, user_id INTEGER DEFAULT NULL, random_id VARCHAR(255) NOT NULL COLLATE BINARY, redirect_uris CLOB NOT NULL COLLATE BINARY, secret VARCHAR(255) NOT NULL COLLATE BINARY, allowed_grant_types CLOB NOT NULL COLLATE BINARY, name CLOB DEFAULT NULL COLLATE BINARY, PRIMARY KEY(id), CONSTRAINT IDX_user_oauth_client FOREIGN KEY (user_id) REFERENCES wallabag_user (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE) + INSERT INTO wallabag_oauth2_clients (id, random_id, redirect_uris, secret, allowed_grant_types, name) SELECT id, random_id, redirect_uris, secret, allowed_grant_types, name FROM __temp__wallabag_oauth2_clients + DROP TABLE __temp__wallabag_oauth2_clients + CREATE INDEX IDX_635D765EA76ED395 ON wallabag_oauth2_clients (user_id) + +Migration down +"""""""""""""" + +.. code-block:: sql + + DROP INDEX IDX_635D765EA76ED395 + CREATE TEMPORARY TABLE __temp__wallabag_oauth2_clients AS SELECT id, random_id, redirect_uris, secret, allowed_grant_types, name FROM wallabag_oauth2_clients + DROP TABLE wallabag_oauth2_clients + CREATE TABLE wallabag_oauth2_clients (id INTEGER NOT NULL, random_id VARCHAR(255) NOT NULL COLLATE BINARY, redirect_uris CLOB NOT NULL COLLATE BINARY, secret VARCHAR(255) NOT NULL COLLATE BINARY, allowed_grant_types CLOB NOT NULL COLLATE BINARY, name CLOB DEFAULT NULL COLLATE BINARY, PRIMARY KEY(id)) + INSERT INTO wallabag_oauth2_clients (id, random_id, redirect_uris, secret, allowed_grant_types, name) SELECT id, random_id, redirect_uris, secret, allowed_grant_types, name FROM __temp__wallabag_oauth2_clients + DROP TABLE __temp__wallabag_oauth2_clients + +Migration 20161031132655 +------------------------ + +MySQL +^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + INSERT INTO wallabag_craue_config_setting (name, value, section) VALUES ('download_images_enabled', 0, 'misc') + +Migration down +"""""""""""""" + +.. code-block:: sql + + DELETE FROM wallabag_craue_config_setting WHERE name = 'download_images_enabled'; + +PostgreSQL +^^^^^^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + INSERT INTO wallabag_craue_config_setting (name, value, section) VALUES ('download_images_enabled', 0, 'misc') + +Migration down +"""""""""""""" + +.. code-block:: sql + + DELETE FROM wallabag_craue_config_setting WHERE name = 'download_images_enabled'; + +SQLite +^^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + INSERT INTO wallabag_craue_config_setting (name, value, section) VALUES ('download_images_enabled', 0, 'misc') + +Migration down +"""""""""""""" + +.. code-block:: sql + + DELETE FROM wallabag_craue_config_setting WHERE name = 'download_images_enabled'; + +Migration 20161104073720 +------------------------ + +MySQL +^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + CREATE INDEX IDX_entry_created_at ON wallabag_entry (created_at) + +Migration down +"""""""""""""" + +.. code-block:: sql + + DROP INDEX IDX_entry_created_at ON wallabag_entry + +PostgreSQL +^^^^^^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + CREATE INDEX IDX_entry_created_at ON wallabag_entry (created_at) + +Migration down +"""""""""""""" + +.. code-block:: sql + + DROP INDEX idx_entry_created_at + +SQLite +^^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + DROP INDEX created_at_idx + DROP INDEX IDX_F4D18282A76ED395 + CREATE TEMPORARY TABLE __temp__wallabag_entry AS SELECT id, user_id, uuid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public FROM wallabag_entry + DROP TABLE wallabag_entry + CREATE TABLE wallabag_entry (id INTEGER NOT NULL, user_id INTEGER DEFAULT NULL, uuid CLOB DEFAULT NULL COLLATE BINARY, title CLOB DEFAULT NULL COLLATE BINARY, url CLOB DEFAULT NULL COLLATE BINARY, is_archived BOOLEAN NOT NULL, is_starred BOOLEAN NOT NULL, content CLOB DEFAULT NULL COLLATE BINARY, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, mimetype CLOB DEFAULT NULL COLLATE BINARY, language CLOB DEFAULT NULL COLLATE BINARY, reading_time INTEGER DEFAULT NULL, domain_name CLOB DEFAULT NULL COLLATE BINARY, preview_picture CLOB DEFAULT NULL COLLATE BINARY, is_public BOOLEAN DEFAULT '0', PRIMARY KEY(id)) + INSERT INTO wallabag_entry (id, user_id, uuid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public) SELECT id, user_id, uuid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public FROM __temp__wallabag_entry + DROP TABLE __temp__wallabag_entry + CREATE INDEX created_at_idx ON wallabag_entry (created_at) + CREATE INDEX IDX_F4D18282A76ED395 ON wallabag_entry (user_id) + CREATE INDEX IDX_entry_created_at ON wallabag_entry (created_at) + +Migration down +"""""""""""""" + +.. code-block:: sql + + DROP INDEX IDX_entry_created_at + DROP INDEX IDX_F4D18282A76ED395 + DROP INDEX created_at_idx + CREATE TEMPORARY TABLE __temp__wallabag_entry AS SELECT id, user_id, uuid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public FROM wallabag_entry + DROP TABLE wallabag_entry + CREATE TABLE wallabag_entry (id INTEGER NOT NULL, user_id INTEGER DEFAULT NULL, uuid CLOB DEFAULT NULL COLLATE BINARY, title CLOB DEFAULT NULL COLLATE BINARY, url CLOB DEFAULT NULL COLLATE BINARY, is_archived BOOLEAN NOT NULL, is_starred BOOLEAN NOT NULL, content CLOB DEFAULT NULL COLLATE BINARY, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, mimetype CLOB DEFAULT NULL COLLATE BINARY, language CLOB DEFAULT NULL COLLATE BINARY, reading_time INTEGER DEFAULT NULL, domain_name CLOB DEFAULT NULL COLLATE BINARY, preview_picture CLOB DEFAULT NULL COLLATE BINARY, is_public BOOLEAN DEFAULT '0', PRIMARY KEY(id)) + INSERT INTO wallabag_entry (id, user_id, uuid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public) SELECT id, user_id, uuid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public FROM __temp__wallabag_entry + DROP TABLE __temp__wallabag_entry + CREATE INDEX IDX_F4D18282A76ED395 ON wallabag_entry (user_id) + CREATE INDEX created_at_idx ON wallabag_entry (created_at) + +Migration 20161106113822 +------------------------ + +MySQL +^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_config ADD action_mark_as_read INT DEFAULT 0 + +Migration down +"""""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_config DROP action_mark_as_read + +PostgreSQL +^^^^^^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_config ADD action_mark_as_read INT DEFAULT 0 + +Migration down +"""""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_config DROP action_mark_as_read + +SQLite +^^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_config ADD COLUMN action_mark_as_read INTEGER DEFAULT 0 + +Migration down +"""""""""""""" + +.. code-block:: sql + + DROP INDEX UNIQ_87E64C53A76ED395 + CREATE TEMPORARY TABLE __temp__wallabag_config AS SELECT id, user_id, theme, items_per_page, language, rss_token, rss_limit, reading_speed, pocket_consumer_key FROM wallabag_config + DROP TABLE wallabag_config + CREATE TABLE wallabag_config (id INTEGER NOT NULL, user_id INTEGER DEFAULT NULL, theme VARCHAR(255) NOT NULL COLLATE BINARY, items_per_page INTEGER NOT NULL, language VARCHAR(255) NOT NULL COLLATE BINARY, rss_token VARCHAR(255) DEFAULT NULL COLLATE BINARY, rss_limit INTEGER DEFAULT NULL, reading_speed DOUBLE PRECISION DEFAULT NULL, pocket_consumer_key VARCHAR(255) DEFAULT NULL COLLATE BINARY, PRIMARY KEY(id)) + INSERT INTO wallabag_config (id, user_id, theme, items_per_page, language, rss_token, rss_limit, reading_speed, pocket_consumer_key) SELECT id, user_id, theme, items_per_page, language, rss_token, rss_limit, reading_speed, pocket_consumer_key FROM __temp__wallabag_config + DROP TABLE __temp__wallabag_config + CREATE UNIQUE INDEX UNIQ_87E64C53A76ED395 ON wallabag_config (user_id) + +Migration 20161117071626 +------------------------ + +MySQL +^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + INSERT INTO wallabag_craue_config_setting (name, value, section) VALUES ('share_unmark', 0, 'entry') + INSERT INTO wallabag_craue_config_setting (name, value, section) VALUES ('unmark_url', 'https://unmark.it', 'entry') + +Migration down +"""""""""""""" + +.. code-block:: sql + + DELETE FROM wallabag_craue_config_setting WHERE name = 'share_unmark'; + DELETE FROM wallabag_craue_config_setting WHERE name = 'unmark_url'; + +PostgreSQL +^^^^^^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + INSERT INTO wallabag_craue_config_setting (name, value, section) VALUES ('share_unmark', 0, 'entry') + INSERT INTO wallabag_craue_config_setting (name, value, section) VALUES ('unmark_url', 'https://unmark.it', 'entry') + +Migration down +"""""""""""""" + +.. code-block:: sql + + DELETE FROM wallabag_craue_config_setting WHERE name = 'share_unmark'; + DELETE FROM wallabag_craue_config_setting WHERE name = 'unmark_url'; + +SQLite +^^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + INSERT INTO wallabag_craue_config_setting (name, value, section) VALUES ('share_unmark', 0, 'entry') + INSERT INTO wallabag_craue_config_setting (name, value, section) VALUES ('unmark_url', 'https://unmark.it', 'entry') + +Migration down +"""""""""""""" + +.. code-block:: sql + + DELETE FROM wallabag_craue_config_setting WHERE name = 'share_unmark'; + DELETE FROM wallabag_craue_config_setting WHERE name = 'unmark_url'; + +Migration 20161118134328 +------------------------ + +MySQL +^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_entry ADD http_status VARCHAR(3) DEFAULT NULL + +Migration down +"""""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_entry DROP http_status + +PostgreSQL +^^^^^^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_entry ADD http_status VARCHAR(3) DEFAULT NULL + +Migration down +"""""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_entry DROP http_status + +SQLite +^^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_entry ADD COLUMN http_status VARCHAR(3) DEFAULT NULL + +Migration down +"""""""""""""" + +.. code-block:: sql + + DROP INDEX created_at_idx + DROP INDEX IDX_F4D18282A76ED395 + CREATE TEMPORARY TABLE __temp__wallabag_entry AS SELECT id, user_id, uuid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public FROM wallabag_entry + DROP TABLE wallabag_entry + CREATE TABLE wallabag_entry (id INTEGER NOT NULL, user_id INTEGER DEFAULT NULL, uuid CLOB DEFAULT NULL COLLATE BINARY, title CLOB DEFAULT NULL COLLATE BINARY, url CLOB DEFAULT NULL COLLATE BINARY, is_archived BOOLEAN NOT NULL, is_starred BOOLEAN NOT NULL, content CLOB DEFAULT NULL COLLATE BINARY, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, mimetype CLOB DEFAULT NULL COLLATE BINARY, language CLOB DEFAULT NULL COLLATE BINARY, reading_time INTEGER DEFAULT NULL, domain_name CLOB DEFAULT NULL COLLATE BINARY, preview_picture CLOB DEFAULT NULL COLLATE BINARY, is_public BOOLEAN DEFAULT '0', PRIMARY KEY(id)) + INSERT INTO wallabag_entry (id, user_id, uuid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public) SELECT id, user_id, uuid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public FROM __temp__wallabag_entry + DROP TABLE __temp__wallabag_entry + CREATE INDEX created_at_idx ON wallabag_entry (created_at) + CREATE INDEX IDX_F4D18282A76ED395 ON wallabag_entry (user_id) + +Migration 20161122144743 +------------------------ + +MySQL +^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + INSERT INTO wallabag_craue_config_setting (name, value, section) VALUES ('restricted_access', 0, 'entry') + +Migration down +"""""""""""""" + +.. code-block:: sql + + DELETE FROM wallabag_craue_config_setting WHERE name = 'restricted_access'; + +PostgreSQL +^^^^^^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + INSERT INTO wallabag_craue_config_setting (name, value, section) VALUES ('restricted_access', 0, 'entry') + +Migration down +"""""""""""""" + +.. code-block:: sql + + DELETE FROM wallabag_craue_config_setting WHERE name = 'restricted_access'; + +SQLite +^^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + INSERT INTO wallabag_craue_config_setting (name, value, section) VALUES ('restricted_access', 0, 'entry') + +Migration down +"""""""""""""" + +.. code-block:: sql + + DELETE FROM wallabag_craue_config_setting WHERE name = 'restricted_access'; + +Migration 20161122203647 +------------------------ + +MySQL +^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_user DROP expired, DROP credentials_expired + +Migration down +"""""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_user ADD expired SMALLINT DEFAULT NULL, ADD credentials_expired SMALLINT DEFAULT NULL + +PostgreSQL +^^^^^^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_user DROP expired + ALTER TABLE wallabag_user DROP credentials_expired + +Migration down +"""""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_user ADD expired SMALLINT DEFAULT NULL + ALTER TABLE wallabag_user ADD credentials_expired SMALLINT DEFAULT NULL + +SQLite +^^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + DROP INDEX UNIQ_1D63E7E5C05FB297 + DROP INDEX UNIQ_1D63E7E5A0D96FBF + DROP INDEX UNIQ_1D63E7E592FC23A8 + CREATE TEMPORARY TABLE __temp__wallabag_user AS SELECT id, username, username_canonical, email, email_canonical, enabled, salt, password, last_login, locked, expires_at, confirmation_token, password_requested_at, roles, credentials_expire_at, name, created_at, updated_at, authCode, twoFactorAuthentication, trusted FROM wallabag_user + DROP TABLE wallabag_user + CREATE TABLE wallabag_user (id INTEGER NOT NULL, username VARCHAR(180) NOT NULL COLLATE BINARY, username_canonical VARCHAR(180) NOT NULL COLLATE BINARY, email VARCHAR(180) NOT NULL COLLATE BINARY, email_canonical VARCHAR(180) NOT NULL COLLATE BINARY, enabled BOOLEAN NOT NULL, salt VARCHAR(255) NOT NULL COLLATE BINARY, password VARCHAR(255) NOT NULL COLLATE BINARY, last_login DATETIME DEFAULT NULL, locked BOOLEAN NOT NULL, expires_at DATETIME DEFAULT NULL, confirmation_token VARCHAR(180) DEFAULT NULL COLLATE BINARY, password_requested_at DATETIME DEFAULT NULL, roles CLOB NOT NULL COLLATE BINARY, credentials_expire_at DATETIME DEFAULT NULL, name CLOB DEFAULT NULL COLLATE BINARY, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, authCode INTEGER DEFAULT NULL, twoFactorAuthentication BOOLEAN NOT NULL, trusted CLOB DEFAULT NULL COLLATE BINARY, PRIMARY KEY(id)) + INSERT INTO wallabag_user (id, username, username_canonical, email, email_canonical, enabled, salt, password, last_login, locked, expires_at, confirmation_token, password_requested_at, roles, credentials_expire_at, name, created_at, updated_at, authCode, twoFactorAuthentication, trusted) SELECT id, username, username_canonical, email, email_canonical, enabled, salt, password, last_login, locked, expires_at, confirmation_token, password_requested_at, roles, credentials_expire_at, name, created_at, updated_at, authCode, twoFactorAuthentication, trusted FROM __temp__wallabag_user + DROP TABLE __temp__wallabag_user + CREATE UNIQUE INDEX UNIQ_1D63E7E5C05FB297 ON wallabag_user (confirmation_token) + CREATE UNIQUE INDEX UNIQ_1D63E7E5A0D96FBF ON wallabag_user (email_canonical) + CREATE UNIQUE INDEX UNIQ_1D63E7E592FC23A8 ON wallabag_user (username_canonical) + +Migration down +"""""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_user ADD COLUMN expired SMALLINT DEFAULT NULL + ALTER TABLE wallabag_user ADD COLUMN credentials_expired SMALLINT DEFAULT NULL + +Migration 20161128084725 +------------------------ + +MySQL +^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_config ADD list_mode INT DEFAULT NULL + +Migration down +"""""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_config DROP list_mode + +PostgreSQL +^^^^^^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_config ADD list_mode INT DEFAULT NULL + +Migration down +"""""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_config DROP list_mode + +SQLite +^^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_config ADD COLUMN list_mode INTEGER DEFAULT NULL + +Migration down +"""""""""""""" + +.. code-block:: sql + + DROP INDEX UNIQ_87E64C53A76ED395 + CREATE TEMPORARY TABLE __temp__wallabag_config AS SELECT id, user_id, theme, items_per_page, language, rss_token, rss_limit, reading_speed, pocket_consumer_key FROM wallabag_config + DROP TABLE wallabag_config + CREATE TABLE wallabag_config (id INTEGER NOT NULL, user_id INTEGER DEFAULT NULL, theme VARCHAR(255) NOT NULL COLLATE BINARY, items_per_page INTEGER NOT NULL, language VARCHAR(255) NOT NULL COLLATE BINARY, rss_token VARCHAR(255) DEFAULT NULL COLLATE BINARY, rss_limit INTEGER DEFAULT NULL, reading_speed DOUBLE PRECISION DEFAULT NULL, pocket_consumer_key VARCHAR(255) DEFAULT NULL COLLATE BINARY, PRIMARY KEY(id)) + INSERT INTO wallabag_config (id, user_id, theme, items_per_page, language, rss_token, rss_limit, reading_speed, pocket_consumer_key) SELECT id, user_id, theme, items_per_page, language, rss_token, rss_limit, reading_speed, pocket_consumer_key FROM __temp__wallabag_config + DROP TABLE __temp__wallabag_config + CREATE UNIQUE INDEX UNIQ_87E64C53A76ED395 ON wallabag_config (user_id) + +Migration 20161128131503 +------------------------ + +MySQL +^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_user DROP locked, DROP credentials_expire_at, DROP expires_at + +Migration down +"""""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_user ADD locked SMALLINT DEFAULT NULL, ADD credentials_expire_at DATETIME DEFAULT NULL, ADD expires_at DATETIME DEFAULT NULL + +PostgreSQL +^^^^^^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_user DROP locked + ALTER TABLE wallabag_user DROP credentials_expire_at + ALTER TABLE wallabag_user DROP expires_at + +Migration down +"""""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_user ADD locked SMALLINT DEFAULT NULL + ALTER TABLE wallabag_user ADD credentials_expire_at TIMESTAMP(0) WITHOUT TIME ZONE DEFAULT NULL + ALTER TABLE wallabag_user ADD expires_at TIMESTAMP(0) WITHOUT TIME ZONE DEFAULT NULL + +SQLite +^^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + ALTER TABLE wallabag_user ADD COLUMN locked SMALLINT DEFAULT NULL + ALTER TABLE wallabag_user ADD COLUMN credentials_expire_at DATETIME DEFAULT NULL + ALTER TABLE wallabag_user ADD COLUMN expires_at DATETIME DEFAULT NULL + +Migration down +"""""""""""""" + +.. code-block:: sql + + DROP INDEX UNIQ_1D63E7E592FC23A8 + DROP INDEX UNIQ_1D63E7E5A0D96FBF + DROP INDEX UNIQ_1D63E7E5C05FB297 + CREATE TEMPORARY TABLE __temp__wallabag_user AS SELECT id, username, username_canonical, email, email_canonical, enabled, salt, password, last_login, confirmation_token, password_requested_at, roles, name, created_at, updated_at, authCode, twoFactorAuthentication, trusted, expired, credentials_expired FROM wallabag_user + DROP TABLE wallabag_user + CREATE TABLE wallabag_user (id INTEGER NOT NULL, username VARCHAR(180) NOT NULL COLLATE BINARY, username_canonical VARCHAR(180) NOT NULL COLLATE BINARY, email VARCHAR(180) NOT NULL COLLATE BINARY, email_canonical VARCHAR(180) NOT NULL COLLATE BINARY, enabled BOOLEAN NOT NULL, salt VARCHAR(255) NOT NULL COLLATE BINARY, password VARCHAR(255) NOT NULL COLLATE BINARY, last_login DATETIME DEFAULT NULL, confirmation_token VARCHAR(180) DEFAULT NULL COLLATE BINARY, password_requested_at DATETIME DEFAULT NULL, roles CLOB NOT NULL COLLATE BINARY, name CLOB DEFAULT NULL COLLATE BINARY, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, authCode INTEGER DEFAULT NULL, twoFactorAuthentication BOOLEAN NOT NULL, trusted CLOB DEFAULT NULL COLLATE BINARY, expired SMALLINT DEFAULT NULL, credentials_expired SMALLINT DEFAULT NULL, PRIMARY KEY(id)) + INSERT INTO wallabag_user (id, username, username_canonical, email, email_canonical, enabled, salt, password, last_login, confirmation_token, password_requested_at, roles, name, created_at, updated_at, authCode, twoFactorAuthentication, trusted, expired, credentials_expired) SELECT id, username, username_canonical, email, email_canonical, enabled, salt, password, last_login, confirmation_token, password_requested_at, roles, name, created_at, updated_at, authCode, twoFactorAuthentication, trusted, expired, credentials_expired FROM __temp__wallabag_user + DROP TABLE __temp__wallabag_user + CREATE UNIQUE INDEX UNIQ_1D63E7E592FC23A8 ON wallabag_user (username_canonical) + CREATE UNIQUE INDEX UNIQ_1D63E7E5A0D96FBF ON wallabag_user (email_canonical) + CREATE UNIQUE INDEX UNIQ_1D63E7E5C05FB297 ON wallabag_user (confirmation_token) + +Migration 20161214094403 +------------------------ + +MySQL +^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + CREATE INDEX IDX_entry_uid ON wallabag_entry (uid) + +Migration down +"""""""""""""" + +.. code-block:: sql + + DROP INDEX IDX_entry_uid ON wallabag_entry + +PostgreSQL +^^^^^^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + CREATE INDEX IDX_entry_uid ON wallabag_entry (uid) + +Migration down +"""""""""""""" + +.. code-block:: sql + + DROP INDEX idx_entry_uid + +SQLite +^^^^^^ + +Migration up +"""""""""""" + +.. code-block:: sql + + DROP INDEX IDX_F4D18282A76ED395 + DROP INDEX created_at_idx + CREATE TEMPORARY TABLE __temp__wallabag_entry AS SELECT id, user_id, uid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public FROM wallabag_entry + DROP TABLE wallabag_entry + CREATE TABLE wallabag_entry (id INTEGER NOT NULL, user_id INTEGER DEFAULT NULL, uid CLOB DEFAULT NULL COLLATE BINARY, title CLOB DEFAULT NULL COLLATE BINARY, url CLOB DEFAULT NULL COLLATE BINARY, is_archived BOOLEAN NOT NULL, is_starred BOOLEAN NOT NULL, content CLOB DEFAULT NULL COLLATE BINARY, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, mimetype CLOB DEFAULT NULL COLLATE BINARY, language CLOB DEFAULT NULL COLLATE BINARY, reading_time INTEGER DEFAULT NULL, domain_name CLOB DEFAULT NULL COLLATE BINARY, preview_picture CLOB DEFAULT NULL COLLATE BINARY, is_public BOOLEAN DEFAULT '0', PRIMARY KEY(id)) + INSERT INTO wallabag_entry (id, user_id, uid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public) SELECT id, user_id, uid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public FROM __temp__wallabag_entry + DROP TABLE __temp__wallabag_entry + CREATE INDEX IDX_F4D18282A76ED395 ON wallabag_entry (user_id) + CREATE INDEX created_at_idx ON wallabag_entry (created_at) + CREATE INDEX IDX_entry_uid ON wallabag_entry (uid) + +Migration down +"""""""""""""" + +.. code-block:: sql + + DROP INDEX IDX_entry_uid + DROP INDEX created_at_idx + DROP INDEX IDX_F4D18282A76ED395 + CREATE TEMPORARY TABLE __temp__wallabag_entry AS SELECT id, user_id, uid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public FROM wallabag_entry + DROP TABLE wallabag_entry + CREATE TABLE wallabag_entry (id INTEGER NOT NULL, user_id INTEGER DEFAULT NULL, uid CLOB DEFAULT NULL COLLATE BINARY, title CLOB DEFAULT NULL COLLATE BINARY, url CLOB DEFAULT NULL COLLATE BINARY, is_archived BOOLEAN NOT NULL, is_starred BOOLEAN NOT NULL, content CLOB DEFAULT NULL COLLATE BINARY, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, mimetype CLOB DEFAULT NULL COLLATE BINARY, language CLOB DEFAULT NULL COLLATE BINARY, reading_time INTEGER DEFAULT NULL, domain_name CLOB DEFAULT NULL COLLATE BINARY, preview_picture CLOB DEFAULT NULL COLLATE BINARY, is_public BOOLEAN DEFAULT '0', PRIMARY KEY(id)) + INSERT INTO wallabag_entry (id, user_id, uid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public) SELECT id, user_id, uid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public FROM __temp__wallabag_entry + DROP TABLE __temp__wallabag_entry + CREATE INDEX created_at_idx ON wallabag_entry (created_at) + CREATE INDEX IDX_F4D18282A76ED395 ON wallabag_entry (user_id) diff --git a/docs/en/user/upgrade.rst b/docs/en/user/upgrade.rst index b3972bce..99260e13 100644 --- a/docs/en/user/upgrade.rst +++ b/docs/en/user/upgrade.rst @@ -70,803 +70,7 @@ You must run some SQL queries to upgrade your database. We assume that the table You may encounter issues with indexes names: if so, please change queries with the correct index name. -Migration 20161001072726 ------------------------- - -MySQL -^^^^^ - -Migration up -"""""""""""" - -.. code-block:: sql - - ALTER TABLE wallabag_entry_tag DROP FOREIGN KEY FK_C9F0DD7CBA364942 - ALTER TABLE wallabag_entry_tag DROP FOREIGN KEY FK_C9F0DD7CBAD26311 - ALTER TABLE wallabag_entry_tag ADD CONSTRAINT FK_entry_tag_entry FOREIGN KEY (entry_id) REFERENCES wallabag_entry (id) ON DELETE CASCADE - ALTER TABLE wallabag_entry_tag ADD CONSTRAINT FK_entry_tag_tag FOREIGN KEY (tag_id) REFERENCES wallabag_tag (id) ON DELETE CASCADE - ALTER TABLE wallabag_annotation DROP FOREIGN KEY FK_A7AED006BA364942 - ALTER TABLE wallabag_annotation ADD CONSTRAINT FK_annotation_entry FOREIGN KEY (entry_id) REFERENCES wallabag_entry (id) ON DELETE CASCADE - -Migration down -"""""""""""""" - -We didn't write down migration for ``20161001072726``. - -PostgreSQL -^^^^^^^^^^ - -Migration up -"""""""""""" - -.. code-block:: sql - - ALTER TABLE wallabag_entry_tag DROP CONSTRAINT fk_c9f0dd7cba364942 - ALTER TABLE wallabag_entry_tag DROP CONSTRAINT fk_c9f0dd7cbad26311 - ALTER TABLE wallabag_entry_tag ADD CONSTRAINT FK_entry_tag_entry FOREIGN KEY (entry_id) REFERENCES wallabag_entry (id) ON DELETE CASCADE - ALTER TABLE wallabag_entry_tag ADD CONSTRAINT FK_entry_tag_tag FOREIGN KEY (tag_id) REFERENCES wallabag_tag (id) ON DELETE CASCADE - ALTER TABLE wallabag_annotation DROP CONSTRAINT fk_a7aed006ba364942 - ALTER TABLE wallabag_annotation ADD CONSTRAINT FK_annotation_entry FOREIGN KEY (entry_id) REFERENCES wallabag_entry (id) ON DELETE CASCADE - -Migration down -"""""""""""""" - -We didn't write down migration for ``20161001072726``. - -SQLite -^^^^^^ - -This migration can only be executed safely on MySQL or PostgreSQL. - -Migration 20161022134138 ------------------------- - -MySQL -^^^^^ - -Migration up -"""""""""""" - -.. code-block:: sql - - ALTER DATABASE wallabag CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci; - ALTER TABLE wallabag_user CHANGE confirmation_token confirmation_token VARCHAR(180) DEFAULT NULL; - ALTER TABLE wallabag_user CHANGE salt salt VARCHAR(180) NOT NULL; - ALTER TABLE wallabag_user CHANGE password password VARCHAR(180) NOT NULL; - ALTER TABLE wallabag_annotation CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; - ALTER TABLE wallabag_entry CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; - ALTER TABLE wallabag_tag CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; - ALTER TABLE wallabag_user CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; - ALTER TABLE wallabag_annotation CHANGE `text` `text` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; - ALTER TABLE wallabag_annotation CHANGE `quote` `quote` VARCHAR(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; - ALTER TABLE wallabag_entry CHANGE `title` `title` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; - ALTER TABLE wallabag_entry CHANGE `content` `content` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; - ALTER TABLE wallabag_tag CHANGE `label` `label` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; - ALTER TABLE wallabag_user CHANGE `name` `name` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; - -Migration down -"""""""""""""" - -.. code-block:: sql - - ALTER DATABASE wallabag CHARACTER SET = utf8 COLLATE = utf8_unicode_ci; - ALTER TABLE wallabag_annotation CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci; - ALTER TABLE wallabag_entry CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci; - ALTER TABLE wallabag_tag CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci; - ALTER TABLE wallabag_user CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci; - ALTER TABLE wallabag_annotation CHANGE `text` `text` longtext CHARACTER SET utf8 COLLATE utf8_unicode_ci; - ALTER TABLE wallabag_annotation CHANGE `quote` `quote` VARCHAR(255) CHARACTER SET utf8 COLLATE utf8_unicode_ci; - ALTER TABLE wallabag_entry CHANGE `title` `title` longtext CHARACTER SET utf8 COLLATE utf8_unicode_ci; - ALTER TABLE wallabag_entry CHANGE `content` `content` longtext CHARACTER SET utf8 COLLATE utf8_unicode_ci; - ALTER TABLE wallabag_tag CHANGE `label` `label` longtext CHARACTER SET utf8 COLLATE utf8_unicode_ci; - ALTER TABLE wallabag_user CHANGE `name` `name` longtext CHARACTER SET utf8 COLLATE utf8_unicode_ci; - -PostgreSQL and SQLite -^^^^^^^^^^^^^^^^^^^^^ - -This migration only apply to MySQL. - -Migration 20161024212538 ------------------------- - -MySQL -^^^^^ - -Migration up -"""""""""""" - -.. code-block:: sql - - ALTER TABLE wallabag_oauth2_clients ADD user_id INT NOT NULL - ALTER TABLE wallabag_oauth2_clients ADD CONSTRAINT IDX_user_oauth_client FOREIGN KEY (user_id) REFERENCES wallabag_user (id) ON DELETE CASCADE - CREATE INDEX IDX_635D765EA76ED395 ON wallabag_oauth2_clients (user_id) - -Migration down -"""""""""""""" - -.. code-block:: sql - - ALTER TABLE wallabag_oauth2_clients DROP FOREIGN KEY IDX_user_oauth_client - ALTER TABLE wallabag_oauth2_clients DROP user_id - -PostgreSQL -^^^^^^^^^^ - -Migration up -"""""""""""" - -.. code-block:: sql - - ALTER TABLE wallabag_oauth2_clients ADD user_id INT DEFAULT NULL - ALTER TABLE wallabag_oauth2_clients ADD CONSTRAINT IDX_user_oauth_client FOREIGN KEY (user_id) REFERENCES wallabag_user (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE - CREATE INDEX IDX_635D765EA76ED395 ON wallabag_oauth2_clients (user_id) - - -Migration down -"""""""""""""" - -.. code-block:: sql - - ALTER TABLE wallabag_oauth2_clients DROP CONSTRAINT idx_user_oauth_client - ALTER TABLE wallabag_oauth2_clients DROP user_id - -SQLite -^^^^^^ - -Migration up -"""""""""""" - -.. code-block:: sql - - CREATE TEMPORARY TABLE __temp__wallabag_oauth2_clients AS SELECT id, random_id, redirect_uris, secret, allowed_grant_types, name FROM wallabag_oauth2_clients - DROP TABLE wallabag_oauth2_clients - CREATE TABLE wallabag_oauth2_clients (id INTEGER NOT NULL, user_id INTEGER DEFAULT NULL, random_id VARCHAR(255) NOT NULL COLLATE BINARY, redirect_uris CLOB NOT NULL COLLATE BINARY, secret VARCHAR(255) NOT NULL COLLATE BINARY, allowed_grant_types CLOB NOT NULL COLLATE BINARY, name CLOB DEFAULT NULL COLLATE BINARY, PRIMARY KEY(id), CONSTRAINT IDX_user_oauth_client FOREIGN KEY (user_id) REFERENCES wallabag_user (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE) - INSERT INTO wallabag_oauth2_clients (id, random_id, redirect_uris, secret, allowed_grant_types, name) SELECT id, random_id, redirect_uris, secret, allowed_grant_types, name FROM __temp__wallabag_oauth2_clients - DROP TABLE __temp__wallabag_oauth2_clients - CREATE INDEX IDX_635D765EA76ED395 ON wallabag_oauth2_clients (user_id) - -Migration down -"""""""""""""" - -.. code-block:: sql - - DROP INDEX IDX_635D765EA76ED395 - CREATE TEMPORARY TABLE __temp__wallabag_oauth2_clients AS SELECT id, random_id, redirect_uris, secret, allowed_grant_types, name FROM wallabag_oauth2_clients - DROP TABLE wallabag_oauth2_clients - CREATE TABLE wallabag_oauth2_clients (id INTEGER NOT NULL, random_id VARCHAR(255) NOT NULL COLLATE BINARY, redirect_uris CLOB NOT NULL COLLATE BINARY, secret VARCHAR(255) NOT NULL COLLATE BINARY, allowed_grant_types CLOB NOT NULL COLLATE BINARY, name CLOB DEFAULT NULL COLLATE BINARY, PRIMARY KEY(id)) - INSERT INTO wallabag_oauth2_clients (id, random_id, redirect_uris, secret, allowed_grant_types, name) SELECT id, random_id, redirect_uris, secret, allowed_grant_types, name FROM __temp__wallabag_oauth2_clients - DROP TABLE __temp__wallabag_oauth2_clients - -Migration 20161031132655 ------------------------- - -MySQL -^^^^^ - -Migration up -"""""""""""" - -.. code-block:: sql - - INSERT INTO wallabag_craue_config_setting (name, value, section) VALUES ('download_images_enabled', 0, 'misc') - -Migration down -"""""""""""""" - -.. code-block:: sql - - DELETE FROM wallabag_craue_config_setting WHERE name = 'download_images_enabled'; - -PostgreSQL -^^^^^^^^^^ - -Migration up -"""""""""""" - -.. code-block:: sql - - INSERT INTO wallabag_craue_config_setting (name, value, section) VALUES ('download_images_enabled', 0, 'misc') - -Migration down -"""""""""""""" - -.. code-block:: sql - - DELETE FROM wallabag_craue_config_setting WHERE name = 'download_images_enabled'; - -SQLite -^^^^^^ - -Migration up -"""""""""""" - -.. code-block:: sql - - INSERT INTO wallabag_craue_config_setting (name, value, section) VALUES ('download_images_enabled', 0, 'misc') - -Migration down -"""""""""""""" - -.. code-block:: sql - - DELETE FROM wallabag_craue_config_setting WHERE name = 'download_images_enabled'; - -Migration 20161104073720 ------------------------- - -MySQL -^^^^^ - -Migration up -"""""""""""" - -.. code-block:: sql - - CREATE INDEX IDX_entry_created_at ON wallabag_entry (created_at) - -Migration down -"""""""""""""" - -.. code-block:: sql - - DROP INDEX IDX_entry_created_at ON wallabag_entry - -PostgreSQL -^^^^^^^^^^ - -Migration up -"""""""""""" - -.. code-block:: sql - - CREATE INDEX IDX_entry_created_at ON wallabag_entry (created_at) - -Migration down -"""""""""""""" - -.. code-block:: sql - - DROP INDEX idx_entry_created_at - -SQLite -^^^^^^ - -Migration up -"""""""""""" - -.. code-block:: sql - - DROP INDEX created_at_idx - DROP INDEX IDX_F4D18282A76ED395 - CREATE TEMPORARY TABLE __temp__wallabag_entry AS SELECT id, user_id, uuid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public FROM wallabag_entry - DROP TABLE wallabag_entry - CREATE TABLE wallabag_entry (id INTEGER NOT NULL, user_id INTEGER DEFAULT NULL, uuid CLOB DEFAULT NULL COLLATE BINARY, title CLOB DEFAULT NULL COLLATE BINARY, url CLOB DEFAULT NULL COLLATE BINARY, is_archived BOOLEAN NOT NULL, is_starred BOOLEAN NOT NULL, content CLOB DEFAULT NULL COLLATE BINARY, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, mimetype CLOB DEFAULT NULL COLLATE BINARY, language CLOB DEFAULT NULL COLLATE BINARY, reading_time INTEGER DEFAULT NULL, domain_name CLOB DEFAULT NULL COLLATE BINARY, preview_picture CLOB DEFAULT NULL COLLATE BINARY, is_public BOOLEAN DEFAULT '0', PRIMARY KEY(id)) - INSERT INTO wallabag_entry (id, user_id, uuid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public) SELECT id, user_id, uuid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public FROM __temp__wallabag_entry - DROP TABLE __temp__wallabag_entry - CREATE INDEX created_at_idx ON wallabag_entry (created_at) - CREATE INDEX IDX_F4D18282A76ED395 ON wallabag_entry (user_id) - CREATE INDEX IDX_entry_created_at ON wallabag_entry (created_at) - -Migration down -"""""""""""""" - -.. code-block:: sql - - DROP INDEX IDX_entry_created_at - DROP INDEX IDX_F4D18282A76ED395 - DROP INDEX created_at_idx - CREATE TEMPORARY TABLE __temp__wallabag_entry AS SELECT id, user_id, uuid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public FROM wallabag_entry - DROP TABLE wallabag_entry - CREATE TABLE wallabag_entry (id INTEGER NOT NULL, user_id INTEGER DEFAULT NULL, uuid CLOB DEFAULT NULL COLLATE BINARY, title CLOB DEFAULT NULL COLLATE BINARY, url CLOB DEFAULT NULL COLLATE BINARY, is_archived BOOLEAN NOT NULL, is_starred BOOLEAN NOT NULL, content CLOB DEFAULT NULL COLLATE BINARY, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, mimetype CLOB DEFAULT NULL COLLATE BINARY, language CLOB DEFAULT NULL COLLATE BINARY, reading_time INTEGER DEFAULT NULL, domain_name CLOB DEFAULT NULL COLLATE BINARY, preview_picture CLOB DEFAULT NULL COLLATE BINARY, is_public BOOLEAN DEFAULT '0', PRIMARY KEY(id)) - INSERT INTO wallabag_entry (id, user_id, uuid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public) SELECT id, user_id, uuid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public FROM __temp__wallabag_entry - DROP TABLE __temp__wallabag_entry - CREATE INDEX IDX_F4D18282A76ED395 ON wallabag_entry (user_id) - CREATE INDEX created_at_idx ON wallabag_entry (created_at) - -Migration 20161106113822 ------------------------- - -MySQL -^^^^^ - -Migration up -"""""""""""" - -.. code-block:: sql - - ALTER TABLE wallabag_config ADD action_mark_as_read INT DEFAULT 0 - -Migration down -"""""""""""""" - -.. code-block:: sql - - ALTER TABLE wallabag_config DROP action_mark_as_read - -PostgreSQL -^^^^^^^^^^ - -Migration up -"""""""""""" - -.. code-block:: sql - - ALTER TABLE wallabag_config ADD action_mark_as_read INT DEFAULT 0 - -Migration down -"""""""""""""" - -.. code-block:: sql - - ALTER TABLE wallabag_config DROP action_mark_as_read - -SQLite -^^^^^^ - -Migration up -"""""""""""" - -.. code-block:: sql - - ALTER TABLE wallabag_config ADD COLUMN action_mark_as_read INTEGER DEFAULT 0 - -Migration down -"""""""""""""" - -.. code-block:: sql - - DROP INDEX UNIQ_87E64C53A76ED395 - CREATE TEMPORARY TABLE __temp__wallabag_config AS SELECT id, user_id, theme, items_per_page, language, rss_token, rss_limit, reading_speed, pocket_consumer_key FROM wallabag_config - DROP TABLE wallabag_config - CREATE TABLE wallabag_config (id INTEGER NOT NULL, user_id INTEGER DEFAULT NULL, theme VARCHAR(255) NOT NULL COLLATE BINARY, items_per_page INTEGER NOT NULL, language VARCHAR(255) NOT NULL COLLATE BINARY, rss_token VARCHAR(255) DEFAULT NULL COLLATE BINARY, rss_limit INTEGER DEFAULT NULL, reading_speed DOUBLE PRECISION DEFAULT NULL, pocket_consumer_key VARCHAR(255) DEFAULT NULL COLLATE BINARY, PRIMARY KEY(id)) - INSERT INTO wallabag_config (id, user_id, theme, items_per_page, language, rss_token, rss_limit, reading_speed, pocket_consumer_key) SELECT id, user_id, theme, items_per_page, language, rss_token, rss_limit, reading_speed, pocket_consumer_key FROM __temp__wallabag_config - DROP TABLE __temp__wallabag_config - CREATE UNIQUE INDEX UNIQ_87E64C53A76ED395 ON wallabag_config (user_id) - -Migration 20161117071626 ------------------------- - -MySQL -^^^^^ - -Migration up -"""""""""""" - -.. code-block:: sql - - INSERT INTO wallabag_craue_config_setting (name, value, section) VALUES ('share_unmark', 0, 'entry') - INSERT INTO wallabag_craue_config_setting (name, value, section) VALUES ('unmark_url', 'https://unmark.it', 'entry') - -Migration down -"""""""""""""" - -.. code-block:: sql - - DELETE FROM wallabag_craue_config_setting WHERE name = 'share_unmark'; - DELETE FROM wallabag_craue_config_setting WHERE name = 'unmark_url'; - -PostgreSQL -^^^^^^^^^^ - -Migration up -"""""""""""" - -.. code-block:: sql - - INSERT INTO wallabag_craue_config_setting (name, value, section) VALUES ('share_unmark', 0, 'entry') - INSERT INTO wallabag_craue_config_setting (name, value, section) VALUES ('unmark_url', 'https://unmark.it', 'entry') - -Migration down -"""""""""""""" - -.. code-block:: sql - - DELETE FROM wallabag_craue_config_setting WHERE name = 'share_unmark'; - DELETE FROM wallabag_craue_config_setting WHERE name = 'unmark_url'; - -SQLite -^^^^^^ - -Migration up -"""""""""""" - -.. code-block:: sql - - INSERT INTO wallabag_craue_config_setting (name, value, section) VALUES ('share_unmark', 0, 'entry') - INSERT INTO wallabag_craue_config_setting (name, value, section) VALUES ('unmark_url', 'https://unmark.it', 'entry') - -Migration down -"""""""""""""" - -.. code-block:: sql - - DELETE FROM wallabag_craue_config_setting WHERE name = 'share_unmark'; - DELETE FROM wallabag_craue_config_setting WHERE name = 'unmark_url'; - -Migration 20161118134328 ------------------------- - -MySQL -^^^^^ - -Migration up -"""""""""""" - -.. code-block:: sql - - ALTER TABLE wallabag_entry ADD http_status VARCHAR(3) DEFAULT NULL - -Migration down -"""""""""""""" - -.. code-block:: sql - - ALTER TABLE wallabag_entry DROP http_status - -PostgreSQL -^^^^^^^^^^ - -Migration up -"""""""""""" - -.. code-block:: sql - - ALTER TABLE wallabag_entry ADD http_status VARCHAR(3) DEFAULT NULL - -Migration down -"""""""""""""" - -.. code-block:: sql - - ALTER TABLE wallabag_entry DROP http_status - -SQLite -^^^^^^ - -Migration up -"""""""""""" - -.. code-block:: sql - - ALTER TABLE wallabag_entry ADD COLUMN http_status VARCHAR(3) DEFAULT NULL - -Migration down -"""""""""""""" - -.. code-block:: sql - - DROP INDEX created_at_idx - DROP INDEX IDX_F4D18282A76ED395 - CREATE TEMPORARY TABLE __temp__wallabag_entry AS SELECT id, user_id, uuid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public FROM wallabag_entry - DROP TABLE wallabag_entry - CREATE TABLE wallabag_entry (id INTEGER NOT NULL, user_id INTEGER DEFAULT NULL, uuid CLOB DEFAULT NULL COLLATE BINARY, title CLOB DEFAULT NULL COLLATE BINARY, url CLOB DEFAULT NULL COLLATE BINARY, is_archived BOOLEAN NOT NULL, is_starred BOOLEAN NOT NULL, content CLOB DEFAULT NULL COLLATE BINARY, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, mimetype CLOB DEFAULT NULL COLLATE BINARY, language CLOB DEFAULT NULL COLLATE BINARY, reading_time INTEGER DEFAULT NULL, domain_name CLOB DEFAULT NULL COLLATE BINARY, preview_picture CLOB DEFAULT NULL COLLATE BINARY, is_public BOOLEAN DEFAULT '0', PRIMARY KEY(id)) - INSERT INTO wallabag_entry (id, user_id, uuid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public) SELECT id, user_id, uuid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public FROM __temp__wallabag_entry - DROP TABLE __temp__wallabag_entry - CREATE INDEX created_at_idx ON wallabag_entry (created_at) - CREATE INDEX IDX_F4D18282A76ED395 ON wallabag_entry (user_id) - -Migration 20161122144743 ------------------------- - -MySQL -^^^^^ - -Migration up -"""""""""""" - -.. code-block:: sql - - INSERT INTO wallabag_craue_config_setting (name, value, section) VALUES ('restricted_access', 0, 'entry') - -Migration down -"""""""""""""" - -.. code-block:: sql - - DELETE FROM wallabag_craue_config_setting WHERE name = 'restricted_access'; - -PostgreSQL -^^^^^^^^^^ - -Migration up -"""""""""""" - -.. code-block:: sql - - INSERT INTO wallabag_craue_config_setting (name, value, section) VALUES ('restricted_access', 0, 'entry') - -Migration down -"""""""""""""" - -.. code-block:: sql - - DELETE FROM wallabag_craue_config_setting WHERE name = 'restricted_access'; - -SQLite -^^^^^^ - -Migration up -"""""""""""" - -.. code-block:: sql - - INSERT INTO wallabag_craue_config_setting (name, value, section) VALUES ('restricted_access', 0, 'entry') - -Migration down -"""""""""""""" - -.. code-block:: sql - - DELETE FROM wallabag_craue_config_setting WHERE name = 'restricted_access'; - -Migration 20161122203647 ------------------------- - -MySQL -^^^^^ - -Migration up -"""""""""""" - -.. code-block:: sql - - ALTER TABLE wallabag_user DROP expired, DROP credentials_expired - -Migration down -"""""""""""""" - -.. code-block:: sql - - ALTER TABLE wallabag_user ADD expired SMALLINT DEFAULT NULL, ADD credentials_expired SMALLINT DEFAULT NULL - -PostgreSQL -^^^^^^^^^^ - -Migration up -"""""""""""" - -.. code-block:: sql - - ALTER TABLE wallabag_user DROP expired - ALTER TABLE wallabag_user DROP credentials_expired - -Migration down -"""""""""""""" - -.. code-block:: sql - - ALTER TABLE wallabag_user ADD expired SMALLINT DEFAULT NULL - ALTER TABLE wallabag_user ADD credentials_expired SMALLINT DEFAULT NULL - -SQLite -^^^^^^ - -Migration up -"""""""""""" - -.. code-block:: sql - - DROP INDEX UNIQ_1D63E7E5C05FB297 - DROP INDEX UNIQ_1D63E7E5A0D96FBF - DROP INDEX UNIQ_1D63E7E592FC23A8 - CREATE TEMPORARY TABLE __temp__wallabag_user AS SELECT id, username, username_canonical, email, email_canonical, enabled, salt, password, last_login, locked, expires_at, confirmation_token, password_requested_at, roles, credentials_expire_at, name, created_at, updated_at, authCode, twoFactorAuthentication, trusted FROM wallabag_user - DROP TABLE wallabag_user - CREATE TABLE wallabag_user (id INTEGER NOT NULL, username VARCHAR(180) NOT NULL COLLATE BINARY, username_canonical VARCHAR(180) NOT NULL COLLATE BINARY, email VARCHAR(180) NOT NULL COLLATE BINARY, email_canonical VARCHAR(180) NOT NULL COLLATE BINARY, enabled BOOLEAN NOT NULL, salt VARCHAR(255) NOT NULL COLLATE BINARY, password VARCHAR(255) NOT NULL COLLATE BINARY, last_login DATETIME DEFAULT NULL, locked BOOLEAN NOT NULL, expires_at DATETIME DEFAULT NULL, confirmation_token VARCHAR(180) DEFAULT NULL COLLATE BINARY, password_requested_at DATETIME DEFAULT NULL, roles CLOB NOT NULL COLLATE BINARY, credentials_expire_at DATETIME DEFAULT NULL, name CLOB DEFAULT NULL COLLATE BINARY, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, authCode INTEGER DEFAULT NULL, twoFactorAuthentication BOOLEAN NOT NULL, trusted CLOB DEFAULT NULL COLLATE BINARY, PRIMARY KEY(id)) - INSERT INTO wallabag_user (id, username, username_canonical, email, email_canonical, enabled, salt, password, last_login, locked, expires_at, confirmation_token, password_requested_at, roles, credentials_expire_at, name, created_at, updated_at, authCode, twoFactorAuthentication, trusted) SELECT id, username, username_canonical, email, email_canonical, enabled, salt, password, last_login, locked, expires_at, confirmation_token, password_requested_at, roles, credentials_expire_at, name, created_at, updated_at, authCode, twoFactorAuthentication, trusted FROM __temp__wallabag_user - DROP TABLE __temp__wallabag_user - CREATE UNIQUE INDEX UNIQ_1D63E7E5C05FB297 ON wallabag_user (confirmation_token) - CREATE UNIQUE INDEX UNIQ_1D63E7E5A0D96FBF ON wallabag_user (email_canonical) - CREATE UNIQUE INDEX UNIQ_1D63E7E592FC23A8 ON wallabag_user (username_canonical) - -Migration down -"""""""""""""" - -.. code-block:: sql - - ALTER TABLE wallabag_user ADD COLUMN expired SMALLINT DEFAULT NULL - ALTER TABLE wallabag_user ADD COLUMN credentials_expired SMALLINT DEFAULT NULL - -Migration 20161128084725 ------------------------- - -MySQL -^^^^^ - -Migration up -"""""""""""" - -.. code-block:: sql - - ALTER TABLE wallabag_config ADD list_mode INT DEFAULT NULL - -Migration down -"""""""""""""" - -.. code-block:: sql - - ALTER TABLE wallabag_config DROP list_mode - -PostgreSQL -^^^^^^^^^^ - -Migration up -"""""""""""" - -.. code-block:: sql - - ALTER TABLE wallabag_config ADD list_mode INT DEFAULT NULL - -Migration down -"""""""""""""" - -.. code-block:: sql - - ALTER TABLE wallabag_config DROP list_mode - -SQLite -^^^^^^ - -Migration up -"""""""""""" - -.. code-block:: sql - - ALTER TABLE wallabag_config ADD COLUMN list_mode INTEGER DEFAULT NULL - -Migration down -"""""""""""""" - -.. code-block:: sql - - DROP INDEX UNIQ_87E64C53A76ED395 - CREATE TEMPORARY TABLE __temp__wallabag_config AS SELECT id, user_id, theme, items_per_page, language, rss_token, rss_limit, reading_speed, pocket_consumer_key FROM wallabag_config - DROP TABLE wallabag_config - CREATE TABLE wallabag_config (id INTEGER NOT NULL, user_id INTEGER DEFAULT NULL, theme VARCHAR(255) NOT NULL COLLATE BINARY, items_per_page INTEGER NOT NULL, language VARCHAR(255) NOT NULL COLLATE BINARY, rss_token VARCHAR(255) DEFAULT NULL COLLATE BINARY, rss_limit INTEGER DEFAULT NULL, reading_speed DOUBLE PRECISION DEFAULT NULL, pocket_consumer_key VARCHAR(255) DEFAULT NULL COLLATE BINARY, PRIMARY KEY(id)) - INSERT INTO wallabag_config (id, user_id, theme, items_per_page, language, rss_token, rss_limit, reading_speed, pocket_consumer_key) SELECT id, user_id, theme, items_per_page, language, rss_token, rss_limit, reading_speed, pocket_consumer_key FROM __temp__wallabag_config - DROP TABLE __temp__wallabag_config - CREATE UNIQUE INDEX UNIQ_87E64C53A76ED395 ON wallabag_config (user_id) - -Migration 20161128131503 ------------------------- - -MySQL -^^^^^ - -Migration up -"""""""""""" - -.. code-block:: sql - - ALTER TABLE wallabag_user DROP locked, DROP credentials_expire_at, DROP expires_at - -Migration down -"""""""""""""" - -.. code-block:: sql - - ALTER TABLE wallabag_user ADD locked SMALLINT DEFAULT NULL, ADD credentials_expire_at DATETIME DEFAULT NULL, ADD expires_at DATETIME DEFAULT NULL - -PostgreSQL -^^^^^^^^^^ - -Migration up -"""""""""""" - -.. code-block:: sql - - ALTER TABLE wallabag_user DROP locked - ALTER TABLE wallabag_user DROP credentials_expire_at - ALTER TABLE wallabag_user DROP expires_at - -Migration down -"""""""""""""" - -.. code-block:: sql - - ALTER TABLE wallabag_user ADD locked SMALLINT DEFAULT NULL - ALTER TABLE wallabag_user ADD credentials_expire_at TIMESTAMP(0) WITHOUT TIME ZONE DEFAULT NULL - ALTER TABLE wallabag_user ADD expires_at TIMESTAMP(0) WITHOUT TIME ZONE DEFAULT NULL - -SQLite -^^^^^^ - -Migration up -"""""""""""" - -.. code-block:: sql - - ALTER TABLE wallabag_user ADD COLUMN locked SMALLINT DEFAULT NULL - ALTER TABLE wallabag_user ADD COLUMN credentials_expire_at DATETIME DEFAULT NULL - ALTER TABLE wallabag_user ADD COLUMN expires_at DATETIME DEFAULT NULL - -Migration down -"""""""""""""" - -.. code-block:: sql - - DROP INDEX UNIQ_1D63E7E592FC23A8 - DROP INDEX UNIQ_1D63E7E5A0D96FBF - DROP INDEX UNIQ_1D63E7E5C05FB297 - CREATE TEMPORARY TABLE __temp__wallabag_user AS SELECT id, username, username_canonical, email, email_canonical, enabled, salt, password, last_login, confirmation_token, password_requested_at, roles, name, created_at, updated_at, authCode, twoFactorAuthentication, trusted, expired, credentials_expired FROM wallabag_user - DROP TABLE wallabag_user - CREATE TABLE wallabag_user (id INTEGER NOT NULL, username VARCHAR(180) NOT NULL COLLATE BINARY, username_canonical VARCHAR(180) NOT NULL COLLATE BINARY, email VARCHAR(180) NOT NULL COLLATE BINARY, email_canonical VARCHAR(180) NOT NULL COLLATE BINARY, enabled BOOLEAN NOT NULL, salt VARCHAR(255) NOT NULL COLLATE BINARY, password VARCHAR(255) NOT NULL COLLATE BINARY, last_login DATETIME DEFAULT NULL, confirmation_token VARCHAR(180) DEFAULT NULL COLLATE BINARY, password_requested_at DATETIME DEFAULT NULL, roles CLOB NOT NULL COLLATE BINARY, name CLOB DEFAULT NULL COLLATE BINARY, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, authCode INTEGER DEFAULT NULL, twoFactorAuthentication BOOLEAN NOT NULL, trusted CLOB DEFAULT NULL COLLATE BINARY, expired SMALLINT DEFAULT NULL, credentials_expired SMALLINT DEFAULT NULL, PRIMARY KEY(id)) - INSERT INTO wallabag_user (id, username, username_canonical, email, email_canonical, enabled, salt, password, last_login, confirmation_token, password_requested_at, roles, name, created_at, updated_at, authCode, twoFactorAuthentication, trusted, expired, credentials_expired) SELECT id, username, username_canonical, email, email_canonical, enabled, salt, password, last_login, confirmation_token, password_requested_at, roles, name, created_at, updated_at, authCode, twoFactorAuthentication, trusted, expired, credentials_expired FROM __temp__wallabag_user - DROP TABLE __temp__wallabag_user - CREATE UNIQUE INDEX UNIQ_1D63E7E592FC23A8 ON wallabag_user (username_canonical) - CREATE UNIQUE INDEX UNIQ_1D63E7E5A0D96FBF ON wallabag_user (email_canonical) - CREATE UNIQUE INDEX UNIQ_1D63E7E5C05FB297 ON wallabag_user (confirmation_token) - -Migration 20161214094403 ------------------------- - -MySQL -^^^^^ - -Migration up -"""""""""""" - -.. code-block:: sql - - CREATE INDEX IDX_entry_uid ON wallabag_entry (uid) - -Migration down -"""""""""""""" - -.. code-block:: sql - - DROP INDEX IDX_entry_uid ON wallabag_entry - -PostgreSQL -^^^^^^^^^^ - -Migration up -"""""""""""" - -.. code-block:: sql - - CREATE INDEX IDX_entry_uid ON wallabag_entry (uid) - -Migration down -"""""""""""""" - -.. code-block:: sql - - DROP INDEX idx_entry_uid - -SQLite -^^^^^^ - -Migration up -"""""""""""" - -.. code-block:: sql - - DROP INDEX IDX_F4D18282A76ED395 - DROP INDEX created_at_idx - CREATE TEMPORARY TABLE __temp__wallabag_entry AS SELECT id, user_id, uid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public FROM wallabag_entry - DROP TABLE wallabag_entry - CREATE TABLE wallabag_entry (id INTEGER NOT NULL, user_id INTEGER DEFAULT NULL, uid CLOB DEFAULT NULL COLLATE BINARY, title CLOB DEFAULT NULL COLLATE BINARY, url CLOB DEFAULT NULL COLLATE BINARY, is_archived BOOLEAN NOT NULL, is_starred BOOLEAN NOT NULL, content CLOB DEFAULT NULL COLLATE BINARY, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, mimetype CLOB DEFAULT NULL COLLATE BINARY, language CLOB DEFAULT NULL COLLATE BINARY, reading_time INTEGER DEFAULT NULL, domain_name CLOB DEFAULT NULL COLLATE BINARY, preview_picture CLOB DEFAULT NULL COLLATE BINARY, is_public BOOLEAN DEFAULT '0', PRIMARY KEY(id)) - INSERT INTO wallabag_entry (id, user_id, uid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public) SELECT id, user_id, uid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public FROM __temp__wallabag_entry - DROP TABLE __temp__wallabag_entry - CREATE INDEX IDX_F4D18282A76ED395 ON wallabag_entry (user_id) - CREATE INDEX created_at_idx ON wallabag_entry (created_at) - CREATE INDEX IDX_entry_uid ON wallabag_entry (uid) - -Migration down -"""""""""""""" - -.. code-block:: sql - - DROP INDEX IDX_entry_uid - DROP INDEX created_at_idx - DROP INDEX IDX_F4D18282A76ED395 - CREATE TEMPORARY TABLE __temp__wallabag_entry AS SELECT id, user_id, uid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public FROM wallabag_entry - DROP TABLE wallabag_entry - CREATE TABLE wallabag_entry (id INTEGER NOT NULL, user_id INTEGER DEFAULT NULL, uid CLOB DEFAULT NULL COLLATE BINARY, title CLOB DEFAULT NULL COLLATE BINARY, url CLOB DEFAULT NULL COLLATE BINARY, is_archived BOOLEAN NOT NULL, is_starred BOOLEAN NOT NULL, content CLOB DEFAULT NULL COLLATE BINARY, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, mimetype CLOB DEFAULT NULL COLLATE BINARY, language CLOB DEFAULT NULL COLLATE BINARY, reading_time INTEGER DEFAULT NULL, domain_name CLOB DEFAULT NULL COLLATE BINARY, preview_picture CLOB DEFAULT NULL COLLATE BINARY, is_public BOOLEAN DEFAULT '0', PRIMARY KEY(id)) - INSERT INTO wallabag_entry (id, user_id, uid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public) SELECT id, user_id, uid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public FROM __temp__wallabag_entry - DROP TABLE __temp__wallabag_entry - CREATE INDEX created_at_idx ON wallabag_entry (created_at) - CREATE INDEX IDX_F4D18282A76ED395 ON wallabag_entry (user_id) +`You can find all the queries here `_. *************************** Upgrade from 2.0.x to 2.1.1 -- cgit v1.2.3