BryanDavis has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/325153

Change subject: Bump wikimedia/slimapp to v0.8.0
......................................................................

Bump wikimedia/slimapp to v0.8.0

Change-Id: I3d8ec425d3969d6bb0c353d61000bf6830a5af76
---
M composer.json
M composer.lock
M vendor/composer/autoload_classmap.php
M vendor/composer/installed.json
M vendor/wikimedia/slimapp/README.md
M vendor/wikimedia/slimapp/composer.lock
M vendor/wikimedia/slimapp/src/AbstractApp.php
M vendor/wikimedia/slimapp/src/Auth/AuthManager.php
M vendor/wikimedia/slimapp/src/Auth/Password.php
M vendor/wikimedia/slimapp/src/Config.php
M vendor/wikimedia/slimapp/src/Controller.php
M vendor/wikimedia/slimapp/src/Dao/AbstractDao.php
M vendor/wikimedia/slimapp/src/HeaderMiddleware.php
M vendor/wikimedia/slimapp/src/Mailer.php
M vendor/wikimedia/slimapp/src/ParsoidClient.php
15 files changed, 498 insertions(+), 305 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/wikimedia/wikimania-scholarships 
refs/changes/53/325153/1

diff --git a/composer.json b/composer.json
index 945510d..0145b06 100644
--- a/composer.json
+++ b/composer.json
@@ -5,7 +5,7 @@
        "require": {
                "php": ">=5.5.9",
                "phpmailer/phpmailer": "v5.2.9",
-               "wikimedia/slimapp": "0.7.1"
+               "wikimedia/slimapp": "0.8.0"
        },
        "require-dev": {
                "jakub-onderka/php-parallel-lint": "0.9.*",
diff --git a/composer.lock b/composer.lock
index 2976d40..318e7c9 100644
--- a/composer.lock
+++ b/composer.lock
@@ -4,8 +4,8 @@
         "Read more about it at 
https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file";,
         "This file is @generated automatically"
     ],
-    "hash": "fa0b80b0efb333ca08d38c9d370e6e74",
-    "content-hash": "dbd71bd2282a693ff99033fd68d5c053",
+    "hash": "0e9dd8c747da08ca6e00fe115b2150a7",
+    "content-hash": "7aa99b7687e646ef7d944a186a565b60",
     "packages": [
         {
             "name": "bd808/monolog-udp2log-handler",
@@ -438,16 +438,16 @@
         },
         {
             "name": "wikimedia/slimapp",
-            "version": "v0.7.1",
+            "version": "v0.8.0",
             "source": {
                 "type": "git",
                 "url": "https://github.com/wikimedia/wikimedia-slimapp.git";,
-                "reference": "bd24cdfb3cad66e0ad41f973f2bdf60fa6c19c1d"
+                "reference": "c66a25d6e06087637da24c27c6beb30c3e736a02"
             },
             "dist": {
                 "type": "zip",
-                "url": 
"https://api.github.com/repos/wikimedia/wikimedia-slimapp/zipball/bd24cdfb3cad66e0ad41f973f2bdf60fa6c19c1d";,
-                "reference": "bd24cdfb3cad66e0ad41f973f2bdf60fa6c19c1d",
+                "url": 
"https://api.github.com/repos/wikimedia/wikimedia-slimapp/zipball/c66a25d6e06087637da24c27c6beb30c3e736a02";,
+                "reference": "c66a25d6e06087637da24c27c6beb30c3e736a02",
                 "shasum": ""
             },
             "require": {
@@ -462,8 +462,8 @@
             },
             "require-dev": {
                 "jakub-onderka/php-parallel-lint": "~0.9",
-                "mediawiki/mediawiki-codesniffer": "~0.4",
-                "phpunit/phpunit": "~4.6"
+                "mediawiki/mediawiki-codesniffer": "0.5.1|0.7.2",
+                "phpunit/phpunit": "~4.8|~5.0"
             },
             "type": "library",
             "autoload": {
@@ -487,7 +487,7 @@
             ],
             "description": "Common classes to help with creating an 
application using the Slim micro framework and Twig template engine.",
             "homepage": "https://github.com/wikimedia/wikimedia-slimapp";,
-            "time": "2015-12-04 00:52:04"
+            "time": "2016-11-23 18:29:30"
         }
     ],
     "packages-dev": [
@@ -628,38 +628,87 @@
             "time": "2016-02-17 10:22:13"
         },
         {
-            "name": "phpdocumentor/reflection-docblock",
-            "version": "2.0.4",
+            "name": "phpdocumentor/reflection-common",
+            "version": "1.0",
             "source": {
                 "type": "git",
-                "url": 
"https://github.com/phpDocumentor/ReflectionDocBlock.git";,
-                "reference": "d68dbdc53dc358a816f00b300704702b2eaff7b8"
+                "url": "https://github.com/phpDocumentor/ReflectionCommon.git";,
+                "reference": "144c307535e82c8fdcaacbcfc1d6d8eeb896687c"
             },
             "dist": {
                 "type": "zip",
-                "url": 
"https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/d68dbdc53dc358a816f00b300704702b2eaff7b8";,
-                "reference": "d68dbdc53dc358a816f00b300704702b2eaff7b8",
+                "url": 
"https://api.github.com/repos/phpDocumentor/ReflectionCommon/zipball/144c307535e82c8fdcaacbcfc1d6d8eeb896687c";,
+                "reference": "144c307535e82c8fdcaacbcfc1d6d8eeb896687c",
                 "shasum": ""
             },
             "require": {
-                "php": ">=5.3.3"
+                "php": ">=5.5"
             },
             "require-dev": {
-                "phpunit/phpunit": "~4.0"
-            },
-            "suggest": {
-                "dflydev/markdown": "~1.0",
-                "erusev/parsedown": "~1.0"
+                "phpunit/phpunit": "^4.6"
             },
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-master": "2.0.x-dev"
+                    "dev-master": "1.0.x-dev"
                 }
             },
             "autoload": {
-                "psr-0": {
-                    "phpDocumentor": [
+                "psr-4": {
+                    "phpDocumentor\\Reflection\\": [
+                        "src"
+                    ]
+                }
+            },
+            "notification-url": "https://packagist.org/downloads/";,
+            "license": [
+                "MIT"
+            ],
+            "authors": [
+                {
+                    "name": "Jaap van Otterdijk",
+                    "email": "[email protected]"
+                }
+            ],
+            "description": "Common reflection classes used by phpdocumentor to 
reflect the code structure",
+            "homepage": "http://www.phpdoc.org";,
+            "keywords": [
+                "FQSEN",
+                "phpDocumentor",
+                "phpdoc",
+                "reflection",
+                "static analysis"
+            ],
+            "time": "2015-12-27 11:43:31"
+        },
+        {
+            "name": "phpdocumentor/reflection-docblock",
+            "version": "3.1.1",
+            "source": {
+                "type": "git",
+                "url": 
"https://github.com/phpDocumentor/ReflectionDocBlock.git";,
+                "reference": "8331b5efe816ae05461b7ca1e721c01b46bafb3e"
+            },
+            "dist": {
+                "type": "zip",
+                "url": 
"https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/8331b5efe816ae05461b7ca1e721c01b46bafb3e";,
+                "reference": "8331b5efe816ae05461b7ca1e721c01b46bafb3e",
+                "shasum": ""
+            },
+            "require": {
+                "php": ">=5.5",
+                "phpdocumentor/reflection-common": "^1.0@dev",
+                "phpdocumentor/type-resolver": "^0.2.0",
+                "webmozart/assert": "^1.0"
+            },
+            "require-dev": {
+                "mockery/mockery": "^0.9.4",
+                "phpunit/phpunit": "^4.4"
+            },
+            "type": "library",
+            "autoload": {
+                "psr-4": {
+                    "phpDocumentor\\Reflection\\": [
                         "src/"
                     ]
                 }
@@ -671,39 +720,88 @@
             "authors": [
                 {
                     "name": "Mike van Riel",
-                    "email": "[email protected]"
+                    "email": "[email protected]"
                 }
             ],
-            "time": "2015-02-03 12:10:50"
+            "description": "With this component, a library can provide support 
for annotations via DocBlocks or otherwise retrieve information that is 
embedded in a DocBlock.",
+            "time": "2016-09-30 07:12:33"
         },
         {
-            "name": "phpspec/prophecy",
-            "version": "v1.6.0",
+            "name": "phpdocumentor/type-resolver",
+            "version": "0.2.1",
             "source": {
                 "type": "git",
-                "url": "https://github.com/phpspec/prophecy.git";,
-                "reference": "3c91bdf81797d725b14cb62906f9a4ce44235972"
+                "url": "https://github.com/phpDocumentor/TypeResolver.git";,
+                "reference": "e224fb2ea2fba6d3ad6fdaef91cd09a172155ccb"
             },
             "dist": {
                 "type": "zip",
-                "url": 
"https://api.github.com/repos/phpspec/prophecy/zipball/3c91bdf81797d725b14cb62906f9a4ce44235972";,
-                "reference": "3c91bdf81797d725b14cb62906f9a4ce44235972",
+                "url": 
"https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/e224fb2ea2fba6d3ad6fdaef91cd09a172155ccb";,
+                "reference": "e224fb2ea2fba6d3ad6fdaef91cd09a172155ccb",
+                "shasum": ""
+            },
+            "require": {
+                "php": ">=5.5",
+                "phpdocumentor/reflection-common": "^1.0"
+            },
+            "require-dev": {
+                "mockery/mockery": "^0.9.4",
+                "phpunit/phpunit": "^5.2||^4.8.24"
+            },
+            "type": "library",
+            "extra": {
+                "branch-alias": {
+                    "dev-master": "1.0.x-dev"
+                }
+            },
+            "autoload": {
+                "psr-4": {
+                    "phpDocumentor\\Reflection\\": [
+                        "src/"
+                    ]
+                }
+            },
+            "notification-url": "https://packagist.org/downloads/";,
+            "license": [
+                "MIT"
+            ],
+            "authors": [
+                {
+                    "name": "Mike van Riel",
+                    "email": "[email protected]"
+                }
+            ],
+            "time": "2016-11-25 06:54:22"
+        },
+        {
+            "name": "phpspec/prophecy",
+            "version": "v1.6.2",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/phpspec/prophecy.git";,
+                "reference": "6c52c2722f8460122f96f86346600e1077ce22cb"
+            },
+            "dist": {
+                "type": "zip",
+                "url": 
"https://api.github.com/repos/phpspec/prophecy/zipball/6c52c2722f8460122f96f86346600e1077ce22cb";,
+                "reference": "6c52c2722f8460122f96f86346600e1077ce22cb",
                 "shasum": ""
             },
             "require": {
                 "doctrine/instantiator": "^1.0.2",
                 "php": "^5.3|^7.0",
-                "phpdocumentor/reflection-docblock": "~2.0",
-                "sebastian/comparator": "~1.1",
-                "sebastian/recursion-context": "~1.0"
+                "phpdocumentor/reflection-docblock": "^2.0|^3.0.2",
+                "sebastian/comparator": "^1.1",
+                "sebastian/recursion-context": "^1.0|^2.0"
             },
             "require-dev": {
-                "phpspec/phpspec": "~2.0"
+                "phpspec/phpspec": "^2.0",
+                "phpunit/phpunit": "^4.8 || ^5.6.5"
             },
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-master": "1.5.x-dev"
+                    "dev-master": "1.6.x-dev"
                 }
             },
             "autoload": {
@@ -736,7 +834,7 @@
                 "spy",
                 "stub"
             ],
-            "time": "2016-02-15 07:46:21"
+            "time": "2016-11-21 14:58:47"
         },
         {
             "name": "phpunit/php-code-coverage",
@@ -802,16 +900,16 @@
         },
         {
             "name": "phpunit/php-file-iterator",
-            "version": "1.4.1",
+            "version": "1.4.2",
             "source": {
                 "type": "git",
                 "url": 
"https://github.com/sebastianbergmann/php-file-iterator.git";,
-                "reference": "6150bf2c35d3fc379e50c7602b75caceaa39dbf0"
+                "reference": "3cc8f69b3028d0f96a9078e6295d86e9bf019be5"
             },
             "dist": {
                 "type": "zip",
-                "url": 
"https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/6150bf2c35d3fc379e50c7602b75caceaa39dbf0";,
-                "reference": "6150bf2c35d3fc379e50c7602b75caceaa39dbf0",
+                "url": 
"https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/3cc8f69b3028d0f96a9078e6295d86e9bf019be5";,
+                "reference": "3cc8f69b3028d0f96a9078e6295d86e9bf019be5",
                 "shasum": ""
             },
             "require": {
@@ -845,7 +943,7 @@
                 "filesystem",
                 "iterator"
             ],
-            "time": "2015-06-21 13:08:43"
+            "time": "2016-10-03 07:40:28"
         },
         {
             "name": "phpunit/php-text-template",
@@ -890,20 +988,23 @@
         },
         {
             "name": "phpunit/php-timer",
-            "version": "1.0.7",
+            "version": "1.0.8",
             "source": {
                 "type": "git",
                 "url": "https://github.com/sebastianbergmann/php-timer.git";,
-                "reference": "3e82f4e9fc92665fafd9157568e4dcb01d014e5b"
+                "reference": "38e9124049cf1a164f1e4537caf19c99bf1eb260"
             },
             "dist": {
                 "type": "zip",
-                "url": 
"https://api.github.com/repos/sebastianbergmann/php-timer/zipball/3e82f4e9fc92665fafd9157568e4dcb01d014e5b";,
-                "reference": "3e82f4e9fc92665fafd9157568e4dcb01d014e5b",
+                "url": 
"https://api.github.com/repos/sebastianbergmann/php-timer/zipball/38e9124049cf1a164f1e4537caf19c99bf1eb260";,
+                "reference": "38e9124049cf1a164f1e4537caf19c99bf1eb260",
                 "shasum": ""
             },
             "require": {
                 "php": ">=5.3.3"
+            },
+            "require-dev": {
+                "phpunit/phpunit": "~4|~5"
             },
             "type": "library",
             "autoload": {
@@ -927,20 +1028,20 @@
             "keywords": [
                 "timer"
             ],
-            "time": "2015-06-21 08:01:12"
+            "time": "2016-05-12 18:03:57"
         },
         {
             "name": "phpunit/php-token-stream",
-            "version": "1.4.8",
+            "version": "1.4.9",
             "source": {
                 "type": "git",
                 "url": 
"https://github.com/sebastianbergmann/php-token-stream.git";,
-                "reference": "3144ae21711fb6cac0b1ab4cbe63b75ce3d4e8da"
+                "reference": "3b402f65a4cc90abf6e1104e388b896ce209631b"
             },
             "dist": {
                 "type": "zip",
-                "url": 
"https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/3144ae21711fb6cac0b1ab4cbe63b75ce3d4e8da";,
-                "reference": "3144ae21711fb6cac0b1ab4cbe63b75ce3d4e8da",
+                "url": 
"https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/3b402f65a4cc90abf6e1104e388b896ce209631b";,
+                "reference": "3b402f65a4cc90abf6e1104e388b896ce209631b",
                 "shasum": ""
             },
             "require": {
@@ -976,7 +1077,7 @@
             "keywords": [
                 "tokenizer"
             ],
-            "time": "2015-09-15 10:49:45"
+            "time": "2016-11-15 14:06:22"
         },
         {
             "name": "phpunit/phpunit",
@@ -1108,22 +1209,22 @@
         },
         {
             "name": "sebastian/comparator",
-            "version": "1.2.0",
+            "version": "1.2.2",
             "source": {
                 "type": "git",
                 "url": "https://github.com/sebastianbergmann/comparator.git";,
-                "reference": "937efb279bd37a375bcadf584dec0726f84dbf22"
+                "reference": "6a1ed12e8b2409076ab22e3897126211ff8b1f7f"
             },
             "dist": {
                 "type": "zip",
-                "url": 
"https://api.github.com/repos/sebastianbergmann/comparator/zipball/937efb279bd37a375bcadf584dec0726f84dbf22";,
-                "reference": "937efb279bd37a375bcadf584dec0726f84dbf22",
+                "url": 
"https://api.github.com/repos/sebastianbergmann/comparator/zipball/6a1ed12e8b2409076ab22e3897126211ff8b1f7f";,
+                "reference": "6a1ed12e8b2409076ab22e3897126211ff8b1f7f",
                 "shasum": ""
             },
             "require": {
                 "php": ">=5.3.3",
                 "sebastian/diff": "~1.2",
-                "sebastian/exporter": "~1.2"
+                "sebastian/exporter": "~1.2 || ~2.0"
             },
             "require-dev": {
                 "phpunit/phpunit": "~4.4"
@@ -1168,7 +1269,7 @@
                 "compare",
                 "equality"
             ],
-            "time": "2015-07-26 15:48:44"
+            "time": "2016-11-19 09:18:40"
         },
         {
             "name": "sebastian/diff",
@@ -1224,23 +1325,23 @@
         },
         {
             "name": "sebastian/environment",
-            "version": "1.3.5",
+            "version": "1.3.8",
             "source": {
                 "type": "git",
                 "url": "https://github.com/sebastianbergmann/environment.git";,
-                "reference": "dc7a29032cf72b54f36dac15a1ca5b3a1b6029bf"
+                "reference": "be2c607e43ce4c89ecd60e75c6a85c126e754aea"
             },
             "dist": {
                 "type": "zip",
-                "url": 
"https://api.github.com/repos/sebastianbergmann/environment/zipball/dc7a29032cf72b54f36dac15a1ca5b3a1b6029bf";,
-                "reference": "dc7a29032cf72b54f36dac15a1ca5b3a1b6029bf",
+                "url": 
"https://api.github.com/repos/sebastianbergmann/environment/zipball/be2c607e43ce4c89ecd60e75c6a85c126e754aea";,
+                "reference": "be2c607e43ce4c89ecd60e75c6a85c126e754aea",
                 "shasum": ""
             },
             "require": {
-                "php": ">=5.3.3"
+                "php": "^5.3.3 || ^7.0"
             },
             "require-dev": {
-                "phpunit/phpunit": "~4.4"
+                "phpunit/phpunit": "^4.8 || ^5.0"
             },
             "type": "library",
             "extra": {
@@ -1270,20 +1371,20 @@
                 "environment",
                 "hhvm"
             ],
-            "time": "2016-02-26 18:40:46"
+            "time": "2016-08-18 05:49:44"
         },
         {
             "name": "sebastian/exporter",
-            "version": "1.2.1",
+            "version": "1.2.2",
             "source": {
                 "type": "git",
                 "url": "https://github.com/sebastianbergmann/exporter.git";,
-                "reference": "7ae5513327cb536431847bcc0c10edba2701064e"
+                "reference": "42c4c2eec485ee3e159ec9884f95b431287edde4"
             },
             "dist": {
                 "type": "zip",
-                "url": 
"https://api.github.com/repos/sebastianbergmann/exporter/zipball/7ae5513327cb536431847bcc0c10edba2701064e";,
-                "reference": "7ae5513327cb536431847bcc0c10edba2701064e",
+                "url": 
"https://api.github.com/repos/sebastianbergmann/exporter/zipball/42c4c2eec485ee3e159ec9884f95b431287edde4";,
+                "reference": "42c4c2eec485ee3e159ec9884f95b431287edde4",
                 "shasum": ""
             },
             "require": {
@@ -1291,12 +1392,13 @@
                 "sebastian/recursion-context": "~1.0"
             },
             "require-dev": {
+                "ext-mbstring": "*",
                 "phpunit/phpunit": "~4.4"
             },
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-master": "1.2.x-dev"
+                    "dev-master": "1.3.x-dev"
                 }
             },
             "autoload": {
@@ -1336,7 +1438,7 @@
                 "export",
                 "exporter"
             ],
-            "time": "2015-06-21 07:55:53"
+            "time": "2016-06-17 09:04:28"
         },
         {
             "name": "sebastian/global-state",
@@ -1556,25 +1658,31 @@
         },
         {
             "name": "symfony/yaml",
-            "version": "v3.0.4",
+            "version": "v3.2.0",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/yaml.git";,
-                "reference": "0047c8366744a16de7516622c5b7355336afae96"
+                "reference": "f2300ba8fbb002c028710b92e1906e7457410693"
             },
             "dist": {
                 "type": "zip",
-                "url": 
"https://api.github.com/repos/symfony/yaml/zipball/0047c8366744a16de7516622c5b7355336afae96";,
-                "reference": "0047c8366744a16de7516622c5b7355336afae96",
+                "url": 
"https://api.github.com/repos/symfony/yaml/zipball/f2300ba8fbb002c028710b92e1906e7457410693";,
+                "reference": "f2300ba8fbb002c028710b92e1906e7457410693",
                 "shasum": ""
             },
             "require": {
                 "php": ">=5.5.9"
             },
+            "require-dev": {
+                "symfony/console": "~2.8|~3.0"
+            },
+            "suggest": {
+                "symfony/console": "For validating YAML files using the lint 
command"
+            },
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-master": "3.0-dev"
+                    "dev-master": "3.2-dev"
                 }
             },
             "autoload": {
@@ -1601,7 +1709,57 @@
             ],
             "description": "Symfony Yaml Component",
             "homepage": "https://symfony.com";,
-            "time": "2016-03-04 07:55:57"
+            "time": "2016-11-18 21:17:59"
+        },
+        {
+            "name": "webmozart/assert",
+            "version": "1.2.0",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/webmozart/assert.git";,
+                "reference": "2db61e59ff05fe5126d152bd0655c9ea113e550f"
+            },
+            "dist": {
+                "type": "zip",
+                "url": 
"https://api.github.com/repos/webmozart/assert/zipball/2db61e59ff05fe5126d152bd0655c9ea113e550f";,
+                "reference": "2db61e59ff05fe5126d152bd0655c9ea113e550f",
+                "shasum": ""
+            },
+            "require": {
+                "php": "^5.3.3 || ^7.0"
+            },
+            "require-dev": {
+                "phpunit/phpunit": "^4.6",
+                "sebastian/version": "^1.0.1"
+            },
+            "type": "library",
+            "extra": {
+                "branch-alias": {
+                    "dev-master": "1.3-dev"
+                }
+            },
+            "autoload": {
+                "psr-4": {
+                    "Webmozart\\Assert\\": "src/"
+                }
+            },
+            "notification-url": "https://packagist.org/downloads/";,
+            "license": [
+                "MIT"
+            ],
+            "authors": [
+                {
+                    "name": "Bernhard Schussek",
+                    "email": "[email protected]"
+                }
+            ],
+            "description": "Assertions to validate method input/output with 
nice error messages.",
+            "keywords": [
+                "assert",
+                "check",
+                "validate"
+            ],
+            "time": "2016-11-23 20:04:58"
         }
     ],
     "aliases": [],
diff --git a/vendor/composer/autoload_classmap.php 
b/vendor/composer/autoload_classmap.php
index 1c389ee..ef36fb4 100644
--- a/vendor/composer/autoload_classmap.php
+++ b/vendor/composer/autoload_classmap.php
@@ -333,7 +333,6 @@
     'Wikimania\\Scholarship\\Controllers\\Review\\Phase2List' => $baseDir . 
'/src/Controllers/Review/Phase2List.php',
     'Wikimania\\Scholarship\\Controllers\\Review\\PhaseGrid' => $baseDir . 
'/src/Controllers/Review/PhaseGrid.php',
     'Wikimania\\Scholarship\\Controllers\\Review\\Regions' => $baseDir . 
'/src/Controllers/Review/Regions.php',
-    'Wikimania\\Scholarship\\Controllers\\Review\\Scores' => $baseDir . 
'/src/Controllers/Review/Scores.php',
     'Wikimania\\Scholarship\\Controllers\\Review\\Search' => $baseDir . 
'/src/Controllers/Review/Search.php',
     'Wikimania\\Scholarship\\Controllers\\ScholarshipApplication' => $baseDir 
. '/src/Controllers/ScholarshipApplication.php',
     'Wikimania\\Scholarship\\Controllers\\User\\ChangePassword' => $baseDir . 
'/src/Controllers/User/ChangePassword.php',
diff --git a/vendor/composer/installed.json b/vendor/composer/installed.json
index c00140f..ba31499 100644
--- a/vendor/composer/installed.json
+++ b/vendor/composer/installed.json
@@ -446,17 +446,17 @@
     },
     {
         "name": "wikimedia/slimapp",
-        "version": "v0.7.1",
-        "version_normalized": "0.7.1.0",
+        "version": "v0.8.0",
+        "version_normalized": "0.8.0.0",
         "source": {
             "type": "git",
             "url": "https://github.com/wikimedia/wikimedia-slimapp.git";,
-            "reference": "bd24cdfb3cad66e0ad41f973f2bdf60fa6c19c1d"
+            "reference": "c66a25d6e06087637da24c27c6beb30c3e736a02"
         },
         "dist": {
             "type": "zip",
-            "url": 
"https://api.github.com/repos/wikimedia/wikimedia-slimapp/zipball/bd24cdfb3cad66e0ad41f973f2bdf60fa6c19c1d";,
-            "reference": "bd24cdfb3cad66e0ad41f973f2bdf60fa6c19c1d",
+            "url": 
"https://api.github.com/repos/wikimedia/wikimedia-slimapp/zipball/c66a25d6e06087637da24c27c6beb30c3e736a02";,
+            "reference": "c66a25d6e06087637da24c27c6beb30c3e736a02",
             "shasum": ""
         },
         "require": {
@@ -471,10 +471,10 @@
         },
         "require-dev": {
             "jakub-onderka/php-parallel-lint": "~0.9",
-            "mediawiki/mediawiki-codesniffer": "~0.4",
-            "phpunit/phpunit": "~4.6"
+            "mediawiki/mediawiki-codesniffer": "0.5.1|0.7.2",
+            "phpunit/phpunit": "~4.8|~5.0"
         },
-        "time": "2015-12-04 00:52:04",
+        "time": "2016-11-23 18:29:30",
         "type": "library",
         "installation-source": "dist",
         "autoload": {
diff --git a/vendor/wikimedia/slimapp/README.md 
b/vendor/wikimedia/slimapp/README.md
index c48fed0..7c91483 100644
--- a/vendor/wikimedia/slimapp/README.md
+++ b/vendor/wikimedia/slimapp/README.md
@@ -52,4 +52,4 @@
 
 License
 -------
-[GNU GPL 3.0+](www.gnu.org/copyleft/gpl.html "GNU GPL 3.0")
+[GNU GPL 3.0+](//www.gnu.org/copyleft/gpl.html "GNU GPL 3.0")
diff --git a/vendor/wikimedia/slimapp/composer.lock 
b/vendor/wikimedia/slimapp/composer.lock
index 1c3f2ed..77cd220 100644
--- a/vendor/wikimedia/slimapp/composer.lock
+++ b/vendor/wikimedia/slimapp/composer.lock
@@ -4,8 +4,8 @@
         "Read more about it at 
https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file";,
         "This file is @generated automatically"
     ],
-    "hash": "6edd7ea54ec73cb281e8cb4e58e4df69",
-    "content-hash": "e68c39e706c422d0b2b51fc87dc8dee3",
+    "hash": "132f71c6d4d963814997c64b0d9d597e",
+    "content-hash": "940f2e99b4294f0e0f086c008042d0bd",
     "packages": [
         {
             "name": "bd808/monolog-udp2log-handler",
@@ -57,16 +57,16 @@
         },
         {
             "name": "monolog/monolog",
-            "version": "1.15.0",
+            "version": "1.19.0",
             "source": {
                 "type": "git",
                 "url": "https://github.com/Seldaek/monolog.git";,
-                "reference": "dc5150cc608f2334c72c3b6a553ec9668a4156b0"
+                "reference": "5f56ed5212dc509c8dc8caeba2715732abb32dbf"
             },
             "dist": {
                 "type": "zip",
-                "url": 
"https://api.github.com/repos/Seldaek/monolog/zipball/dc5150cc608f2334c72c3b6a553ec9668a4156b0";,
-                "reference": "dc5150cc608f2334c72c3b6a553ec9668a4156b0",
+                "url": 
"https://api.github.com/repos/Seldaek/monolog/zipball/5f56ed5212dc509c8dc8caeba2715732abb32dbf";,
+                "reference": "5f56ed5212dc509c8dc8caeba2715732abb32dbf",
                 "shasum": ""
             },
             "require": {
@@ -80,13 +80,14 @@
                 "aws/aws-sdk-php": "^2.4.9",
                 "doctrine/couchdb": "~1.0@dev",
                 "graylog2/gelf-php": "~1.0",
+                "jakub-onderka/php-parallel-lint": "0.9",
+                "php-amqplib/php-amqplib": "~2.4",
                 "php-console/php-console": "^3.1.3",
                 "phpunit/phpunit": "~4.5",
                 "phpunit/phpunit-mock-objects": "2.3.0",
-                "raven/raven": "~0.8",
+                "raven/raven": "^0.13",
                 "ruflin/elastica": ">=0.90 <3.0",
-                "swiftmailer/swiftmailer": "~5.3",
-                "videlalvaro/php-amqplib": "~2.4"
+                "swiftmailer/swiftmailer": "~5.3"
             },
             "suggest": {
                 "aws/aws-sdk-php": "Allow sending log messages to AWS services 
like DynamoDB",
@@ -94,16 +95,17 @@
                 "ext-amqp": "Allow sending log messages to an AMQP server 
(1.0+ required)",
                 "ext-mongo": "Allow sending log messages to a MongoDB server",
                 "graylog2/gelf-php": "Allow sending log messages to a GrayLog2 
server",
+                "mongodb/mongodb": "Allow sending log messages to a MongoDB 
server via PHP Driver",
+                "php-amqplib/php-amqplib": "Allow sending log messages to an 
AMQP server using php-amqplib",
                 "php-console/php-console": "Allow sending log messages to 
Google Chrome",
                 "raven/raven": "Allow sending log messages to a Sentry server",
                 "rollbar/rollbar": "Allow sending log messages to Rollbar",
-                "ruflin/elastica": "Allow sending log messages to an Elastic 
Search server",
-                "videlalvaro/php-amqplib": "Allow sending log messages to an 
AMQP server using php-amqplib"
+                "ruflin/elastica": "Allow sending log messages to an Elastic 
Search server"
             },
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-master": "1.15.x-dev"
+                    "dev-master": "2.0.x-dev"
                 }
             },
             "autoload": {
@@ -129,20 +131,20 @@
                 "logging",
                 "psr-3"
             ],
-            "time": "2015-07-12 13:54:09"
+            "time": "2016-04-12 18:29:35"
         },
         {
             "name": "phpmailer/phpmailer",
-            "version": "v5.2.10",
+            "version": "v5.2.16",
             "source": {
                 "type": "git",
                 "url": "https://github.com/PHPMailer/PHPMailer.git";,
-                "reference": "07005ecbb80d11ec8c0f067bb37e8909cc7fcbb7"
+                "reference": "1d85f9ef3ecfc42bbc4f3c70d5e37ca9a65f629a"
             },
             "dist": {
                 "type": "zip",
-                "url": 
"https://api.github.com/repos/PHPMailer/PHPMailer/zipball/07005ecbb80d11ec8c0f067bb37e8909cc7fcbb7";,
-                "reference": "07005ecbb80d11ec8c0f067bb37e8909cc7fcbb7",
+                "url": 
"https://api.github.com/repos/PHPMailer/PHPMailer/zipball/1d85f9ef3ecfc42bbc4f3c70d5e37ca9a65f629a";,
+                "reference": "1d85f9ef3ecfc42bbc4f3c70d5e37ca9a65f629a",
                 "shasum": ""
             },
             "require": {
@@ -150,12 +152,17 @@
             },
             "require-dev": {
                 "phpdocumentor/phpdocumentor": "*",
-                "phpunit/phpunit": "4.3.*"
+                "phpunit/phpunit": "4.7.*"
+            },
+            "suggest": {
+                "league/oauth2-google": "Needed for Google XOAUTH2 
authentication"
             },
             "type": "library",
             "autoload": {
                 "classmap": [
                     "class.phpmailer.php",
+                    "class.phpmaileroauth.php",
+                    "class.phpmaileroauthgoogle.php",
                     "class.smtp.php",
                     "class.pop3.php",
                     "extras/EasyPeasyICS.php",
@@ -184,7 +191,7 @@
                 }
             ],
             "description": "PHPMailer is a full-featured email creation and 
transfer class for PHP",
-            "time": "2015-05-04 12:37:21"
+            "time": "2016-06-06 09:09:37"
         },
         {
             "name": "psr/log",
@@ -325,25 +332,29 @@
         },
         {
             "name": "twig/twig",
-            "version": "v1.20.0",
+            "version": "v1.24.1",
             "source": {
                 "type": "git",
                 "url": "https://github.com/twigphp/Twig.git";,
-                "reference": "1ea4e5f81c6d005fe84d0b38e1c4f1955eb86844"
+                "reference": "3566d311a92aae4deec6e48682dc5a4528c4a512"
             },
             "dist": {
                 "type": "zip",
-                "url": 
"https://api.github.com/repos/twigphp/Twig/zipball/1ea4e5f81c6d005fe84d0b38e1c4f1955eb86844";,
-                "reference": "1ea4e5f81c6d005fe84d0b38e1c4f1955eb86844",
+                "url": 
"https://api.github.com/repos/twigphp/Twig/zipball/3566d311a92aae4deec6e48682dc5a4528c4a512";,
+                "reference": "3566d311a92aae4deec6e48682dc5a4528c4a512",
                 "shasum": ""
             },
             "require": {
                 "php": ">=5.2.7"
             },
+            "require-dev": {
+                "symfony/debug": "~2.7",
+                "symfony/phpunit-bridge": "~2.7"
+            },
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-master": "1.20-dev"
+                    "dev-master": "1.24-dev"
                 }
             },
             "autoload": {
@@ -378,7 +389,7 @@
             "keywords": [
                 "templating"
             ],
-            "time": "2015-08-12 15:56:39"
+            "time": "2016-05-30 09:11:59"
         },
         {
             "name": "wikimedia/simplei18n",
@@ -491,16 +502,16 @@
         },
         {
             "name": "jakub-onderka/php-parallel-lint",
-            "version": "v0.9",
+            "version": "v0.9.2",
             "source": {
                 "type": "git",
                 "url": "https://github.com/JakubOnderka/PHP-Parallel-Lint.git";,
-                "reference": "1b693fb455201cacf595163c92bfb1adfa2158d8"
+                "reference": "2ead2e4043ab125bee9554f356e0a86742c2d4fa"
             },
             "dist": {
                 "type": "zip",
-                "url": 
"https://api.github.com/repos/JakubOnderka/PHP-Parallel-Lint/zipball/1b693fb455201cacf595163c92bfb1adfa2158d8";,
-                "reference": "1b693fb455201cacf595163c92bfb1adfa2158d8",
+                "url": 
"https://api.github.com/repos/JakubOnderka/PHP-Parallel-Lint/zipball/2ead2e4043ab125bee9554f356e0a86742c2d4fa";,
+                "reference": "2ead2e4043ab125bee9554f356e0a86742c2d4fa",
                 "shasum": ""
             },
             "require": {
@@ -524,7 +535,7 @@
             },
             "notification-url": "https://packagist.org/downloads/";,
             "license": [
-                "BSD"
+                "BSD-2-Clause"
             ],
             "authors": [
                 {
@@ -534,28 +545,28 @@
             ],
             "description": "This tool check syntax of PHP files about 20x 
faster than serial check.",
             "homepage": "https://github.com/JakubOnderka/PHP-Parallel-Lint";,
-            "time": "2015-06-16 10:17:07"
+            "time": "2015-12-15 10:42:16"
         },
         {
             "name": "mediawiki/mediawiki-codesniffer",
-            "version": "v0.4.0",
+            "version": "v0.5.1",
             "source": {
                 "type": "git",
                 "url": 
"https://github.com/wikimedia/mediawiki-tools-codesniffer.git";,
-                "reference": "0104c7063441e179ee0a6598e0a028223bf480dd"
+                "reference": "e1ee95d0beb1c0eed8d98b6e4aa322130ac04d50"
             },
             "dist": {
                 "type": "zip",
-                "url": 
"https://api.github.com/repos/wikimedia/mediawiki-tools-codesniffer/zipball/0104c7063441e179ee0a6598e0a028223bf480dd";,
-                "reference": "0104c7063441e179ee0a6598e0a028223bf480dd",
+                "url": 
"https://api.github.com/repos/wikimedia/mediawiki-tools-codesniffer/zipball/e1ee95d0beb1c0eed8d98b6e4aa322130ac04d50";,
+                "reference": "e1ee95d0beb1c0eed8d98b6e4aa322130ac04d50",
                 "shasum": ""
             },
             "require": {
-                "squizlabs/php_codesniffer": "2.3.4"
+                "squizlabs/php_codesniffer": "2.5.0"
             },
             "require-dev": {
                 "jakub-onderka/php-parallel-lint": "0.9.*",
-                "phpunit/phpunit": "~4.1.0"
+                "phpunit/phpunit": "~4.8.18"
             },
             "type": "library",
             "notification-url": "https://packagist.org/downloads/";,
@@ -568,7 +579,7 @@
                 "codesniffer",
                 "mediawiki"
             ],
-            "time": "2015-09-26 21:34:16"
+            "time": "2015-12-29 01:03:51"
         },
         {
             "name": "phpdocumentor/reflection-docblock",
@@ -621,30 +632,32 @@
         },
         {
             "name": "phpspec/prophecy",
-            "version": "v1.4.1",
+            "version": "v1.6.1",
             "source": {
                 "type": "git",
                 "url": "https://github.com/phpspec/prophecy.git";,
-                "reference": "3132b1f44c7bf2ec4c7eb2d3cb78fdeca760d373"
+                "reference": "58a8137754bc24b25740d4281399a4a3596058e0"
             },
             "dist": {
                 "type": "zip",
-                "url": 
"https://api.github.com/repos/phpspec/prophecy/zipball/3132b1f44c7bf2ec4c7eb2d3cb78fdeca760d373";,
-                "reference": "3132b1f44c7bf2ec4c7eb2d3cb78fdeca760d373",
+                "url": 
"https://api.github.com/repos/phpspec/prophecy/zipball/58a8137754bc24b25740d4281399a4a3596058e0";,
+                "reference": "58a8137754bc24b25740d4281399a4a3596058e0",
                 "shasum": ""
             },
             "require": {
                 "doctrine/instantiator": "^1.0.2",
-                "phpdocumentor/reflection-docblock": "~2.0",
-                "sebastian/comparator": "~1.1"
+                "php": "^5.3|^7.0",
+                "phpdocumentor/reflection-docblock": "^2.0|^3.0.2",
+                "sebastian/comparator": "^1.1",
+                "sebastian/recursion-context": "^1.0"
             },
             "require-dev": {
-                "phpspec/phpspec": "~2.0"
+                "phpspec/phpspec": "^2.0"
             },
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-master": "1.4.x-dev"
+                    "dev-master": "1.6.x-dev"
                 }
             },
             "autoload": {
@@ -677,20 +690,20 @@
                 "spy",
                 "stub"
             ],
-            "time": "2015-04-27 22:15:08"
+            "time": "2016-06-07 08:13:47"
         },
         {
             "name": "phpunit/php-code-coverage",
-            "version": "2.2.0",
+            "version": "2.2.4",
             "source": {
                 "type": "git",
                 "url": 
"https://github.com/sebastianbergmann/php-code-coverage.git";,
-                "reference": "e6577d90f61a9adbe94544a6e9a7ca18b5fd9c8f"
+                "reference": "eabf68b476ac7d0f73793aada060f1c1a9bf8979"
             },
             "dist": {
                 "type": "zip",
-                "url": 
"https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/e6577d90f61a9adbe94544a6e9a7ca18b5fd9c8f";,
-                "reference": "e6577d90f61a9adbe94544a6e9a7ca18b5fd9c8f",
+                "url": 
"https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/eabf68b476ac7d0f73793aada060f1c1a9bf8979";,
+                "reference": "eabf68b476ac7d0f73793aada060f1c1a9bf8979",
                 "shasum": ""
             },
             "require": {
@@ -698,7 +711,7 @@
                 "phpunit/php-file-iterator": "~1.3",
                 "phpunit/php-text-template": "~1.2",
                 "phpunit/php-token-stream": "~1.3",
-                "sebastian/environment": "~1.3",
+                "sebastian/environment": "^1.3.2",
                 "sebastian/version": "~1.0"
             },
             "require-dev": {
@@ -739,7 +752,7 @@
                 "testing",
                 "xunit"
             ],
-            "time": "2015-08-01 05:09:57"
+            "time": "2015-10-06 15:47:00"
         },
         {
             "name": "phpunit/php-file-iterator",
@@ -831,20 +844,23 @@
         },
         {
             "name": "phpunit/php-timer",
-            "version": "1.0.7",
+            "version": "1.0.8",
             "source": {
                 "type": "git",
                 "url": "https://github.com/sebastianbergmann/php-timer.git";,
-                "reference": "3e82f4e9fc92665fafd9157568e4dcb01d014e5b"
+                "reference": "38e9124049cf1a164f1e4537caf19c99bf1eb260"
             },
             "dist": {
                 "type": "zip",
-                "url": 
"https://api.github.com/repos/sebastianbergmann/php-timer/zipball/3e82f4e9fc92665fafd9157568e4dcb01d014e5b";,
-                "reference": "3e82f4e9fc92665fafd9157568e4dcb01d014e5b",
+                "url": 
"https://api.github.com/repos/sebastianbergmann/php-timer/zipball/38e9124049cf1a164f1e4537caf19c99bf1eb260";,
+                "reference": "38e9124049cf1a164f1e4537caf19c99bf1eb260",
                 "shasum": ""
             },
             "require": {
                 "php": ">=5.3.3"
+            },
+            "require-dev": {
+                "phpunit/phpunit": "~4|~5"
             },
             "type": "library",
             "autoload": {
@@ -868,20 +884,20 @@
             "keywords": [
                 "timer"
             ],
-            "time": "2015-06-21 08:01:12"
+            "time": "2016-05-12 18:03:57"
         },
         {
             "name": "phpunit/php-token-stream",
-            "version": "1.4.3",
+            "version": "1.4.8",
             "source": {
                 "type": "git",
                 "url": 
"https://github.com/sebastianbergmann/php-token-stream.git";,
-                "reference": "7a9b0969488c3c54fd62b4d504b3ec758fd005d9"
+                "reference": "3144ae21711fb6cac0b1ab4cbe63b75ce3d4e8da"
             },
             "dist": {
                 "type": "zip",
-                "url": 
"https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/7a9b0969488c3c54fd62b4d504b3ec758fd005d9";,
-                "reference": "7a9b0969488c3c54fd62b4d504b3ec758fd005d9",
+                "url": 
"https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/3144ae21711fb6cac0b1ab4cbe63b75ce3d4e8da";,
+                "reference": "3144ae21711fb6cac0b1ab4cbe63b75ce3d4e8da",
                 "shasum": ""
             },
             "require": {
@@ -917,20 +933,20 @@
             "keywords": [
                 "tokenizer"
             ],
-            "time": "2015-06-19 03:43:16"
+            "time": "2015-09-15 10:49:45"
         },
         {
             "name": "phpunit/phpunit",
-            "version": "4.7.7",
+            "version": "4.8.26",
             "source": {
                 "type": "git",
                 "url": "https://github.com/sebastianbergmann/phpunit.git";,
-                "reference": "9b97f9d807b862c2de2a36e86690000801c85724"
+                "reference": "fc1d8cd5b5de11625979125c5639347896ac2c74"
             },
             "dist": {
                 "type": "zip",
-                "url": 
"https://api.github.com/repos/sebastianbergmann/phpunit/zipball/9b97f9d807b862c2de2a36e86690000801c85724";,
-                "reference": "9b97f9d807b862c2de2a36e86690000801c85724",
+                "url": 
"https://api.github.com/repos/sebastianbergmann/phpunit/zipball/fc1d8cd5b5de11625979125c5639347896ac2c74";,
+                "reference": "fc1d8cd5b5de11625979125c5639347896ac2c74",
                 "shasum": ""
             },
             "require": {
@@ -940,15 +956,15 @@
                 "ext-reflection": "*",
                 "ext-spl": "*",
                 "php": ">=5.3.3",
-                "phpspec/prophecy": "~1.3,>=1.3.1",
+                "phpspec/prophecy": "^1.3.1",
                 "phpunit/php-code-coverage": "~2.1",
                 "phpunit/php-file-iterator": "~1.4",
                 "phpunit/php-text-template": "~1.2",
-                "phpunit/php-timer": ">=1.0.6",
+                "phpunit/php-timer": "^1.0.6",
                 "phpunit/phpunit-mock-objects": "~2.3",
                 "sebastian/comparator": "~1.1",
                 "sebastian/diff": "~1.2",
-                "sebastian/environment": "~1.2",
+                "sebastian/environment": "~1.3",
                 "sebastian/exporter": "~1.2",
                 "sebastian/global-state": "~1.0",
                 "sebastian/version": "~1.0",
@@ -963,7 +979,7 @@
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-master": "4.7.x-dev"
+                    "dev-master": "4.8.x-dev"
                 }
             },
             "autoload": {
@@ -989,24 +1005,24 @@
                 "testing",
                 "xunit"
             ],
-            "time": "2015-07-13 11:28:34"
+            "time": "2016-05-17 03:09:28"
         },
         {
             "name": "phpunit/phpunit-mock-objects",
-            "version": "2.3.6",
+            "version": "2.3.8",
             "source": {
                 "type": "git",
                 "url": 
"https://github.com/sebastianbergmann/phpunit-mock-objects.git";,
-                "reference": "18dfbcb81d05e2296c0bcddd4db96cade75e6f42"
+                "reference": "ac8e7a3db35738d56ee9a76e78a4e03d97628983"
             },
             "dist": {
                 "type": "zip",
-                "url": 
"https://api.github.com/repos/sebastianbergmann/phpunit-mock-objects/zipball/18dfbcb81d05e2296c0bcddd4db96cade75e6f42";,
-                "reference": "18dfbcb81d05e2296c0bcddd4db96cade75e6f42",
+                "url": 
"https://api.github.com/repos/sebastianbergmann/phpunit-mock-objects/zipball/ac8e7a3db35738d56ee9a76e78a4e03d97628983";,
+                "reference": "ac8e7a3db35738d56ee9a76e78a4e03d97628983",
                 "shasum": ""
             },
             "require": {
-                "doctrine/instantiator": "~1.0,>=1.0.2",
+                "doctrine/instantiator": "^1.0.2",
                 "php": ">=5.3.3",
                 "phpunit/php-text-template": "~1.2",
                 "sebastian/exporter": "~1.2"
@@ -1045,7 +1061,7 @@
                 "mock",
                 "xunit"
             ],
-            "time": "2015-07-10 06:54:24"
+            "time": "2015-10-02 06:51:40"
         },
         {
             "name": "sebastian/comparator",
@@ -1113,28 +1129,28 @@
         },
         {
             "name": "sebastian/diff",
-            "version": "1.3.0",
+            "version": "1.4.1",
             "source": {
                 "type": "git",
                 "url": "https://github.com/sebastianbergmann/diff.git";,
-                "reference": "863df9687835c62aa423a22412d26fa2ebde3fd3"
+                "reference": "13edfd8706462032c2f52b4b862974dd46b71c9e"
             },
             "dist": {
                 "type": "zip",
-                "url": 
"https://api.github.com/repos/sebastianbergmann/diff/zipball/863df9687835c62aa423a22412d26fa2ebde3fd3";,
-                "reference": "863df9687835c62aa423a22412d26fa2ebde3fd3",
+                "url": 
"https://api.github.com/repos/sebastianbergmann/diff/zipball/13edfd8706462032c2f52b4b862974dd46b71c9e";,
+                "reference": "13edfd8706462032c2f52b4b862974dd46b71c9e",
                 "shasum": ""
             },
             "require": {
                 "php": ">=5.3.3"
             },
             "require-dev": {
-                "phpunit/phpunit": "~4.2"
+                "phpunit/phpunit": "~4.8"
             },
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-master": "1.3-dev"
+                    "dev-master": "1.4-dev"
                 }
             },
             "autoload": {
@@ -1157,24 +1173,24 @@
                 }
             ],
             "description": "Diff implementation",
-            "homepage": "http://www.github.com/sebastianbergmann/diff";,
+            "homepage": "https://github.com/sebastianbergmann/diff";,
             "keywords": [
                 "diff"
             ],
-            "time": "2015-02-22 15:13:53"
+            "time": "2015-12-08 07:14:41"
         },
         {
             "name": "sebastian/environment",
-            "version": "1.3.0",
+            "version": "1.3.7",
             "source": {
                 "type": "git",
                 "url": "https://github.com/sebastianbergmann/environment.git";,
-                "reference": "4fe0a44cddd8cc19583a024bdc7374eb2fef0b87"
+                "reference": "4e8f0da10ac5802913afc151413bc8c53b6c2716"
             },
             "dist": {
                 "type": "zip",
-                "url": 
"https://api.github.com/repos/sebastianbergmann/environment/zipball/4fe0a44cddd8cc19583a024bdc7374eb2fef0b87";,
-                "reference": "4fe0a44cddd8cc19583a024bdc7374eb2fef0b87",
+                "url": 
"https://api.github.com/repos/sebastianbergmann/environment/zipball/4e8f0da10ac5802913afc151413bc8c53b6c2716";,
+                "reference": "4e8f0da10ac5802913afc151413bc8c53b6c2716",
                 "shasum": ""
             },
             "require": {
@@ -1211,20 +1227,20 @@
                 "environment",
                 "hhvm"
             ],
-            "time": "2015-07-26 06:42:57"
+            "time": "2016-05-17 03:18:57"
         },
         {
             "name": "sebastian/exporter",
-            "version": "1.2.1",
+            "version": "1.2.2",
             "source": {
                 "type": "git",
                 "url": "https://github.com/sebastianbergmann/exporter.git";,
-                "reference": "7ae5513327cb536431847bcc0c10edba2701064e"
+                "reference": "42c4c2eec485ee3e159ec9884f95b431287edde4"
             },
             "dist": {
                 "type": "zip",
-                "url": 
"https://api.github.com/repos/sebastianbergmann/exporter/zipball/7ae5513327cb536431847bcc0c10edba2701064e";,
-                "reference": "7ae5513327cb536431847bcc0c10edba2701064e",
+                "url": 
"https://api.github.com/repos/sebastianbergmann/exporter/zipball/42c4c2eec485ee3e159ec9884f95b431287edde4";,
+                "reference": "42c4c2eec485ee3e159ec9884f95b431287edde4",
                 "shasum": ""
             },
             "require": {
@@ -1232,12 +1248,13 @@
                 "sebastian/recursion-context": "~1.0"
             },
             "require-dev": {
+                "ext-mbstring": "*",
                 "phpunit/phpunit": "~4.4"
             },
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-master": "1.2.x-dev"
+                    "dev-master": "1.3.x-dev"
                 }
             },
             "autoload": {
@@ -1277,20 +1294,20 @@
                 "export",
                 "exporter"
             ],
-            "time": "2015-06-21 07:55:53"
+            "time": "2016-06-17 09:04:28"
         },
         {
             "name": "sebastian/global-state",
-            "version": "1.0.0",
+            "version": "1.1.1",
             "source": {
                 "type": "git",
                 "url": "https://github.com/sebastianbergmann/global-state.git";,
-                "reference": "c7428acdb62ece0a45e6306f1ae85e1c05b09c01"
+                "reference": "bc37d50fea7d017d3d340f230811c9f1d7280af4"
             },
             "dist": {
                 "type": "zip",
-                "url": 
"https://api.github.com/repos/sebastianbergmann/global-state/zipball/c7428acdb62ece0a45e6306f1ae85e1c05b09c01";,
-                "reference": "c7428acdb62ece0a45e6306f1ae85e1c05b09c01",
+                "url": 
"https://api.github.com/repos/sebastianbergmann/global-state/zipball/bc37d50fea7d017d3d340f230811c9f1d7280af4";,
+                "reference": "bc37d50fea7d017d3d340f230811c9f1d7280af4",
                 "shasum": ""
             },
             "require": {
@@ -1328,20 +1345,20 @@
             "keywords": [
                 "global state"
             ],
-            "time": "2014-10-06 09:23:50"
+            "time": "2015-10-12 03:26:01"
         },
         {
             "name": "sebastian/recursion-context",
-            "version": "1.0.1",
+            "version": "1.0.2",
             "source": {
                 "type": "git",
                 "url": 
"https://github.com/sebastianbergmann/recursion-context.git";,
-                "reference": "994d4a811bafe801fb06dccbee797863ba2792ba"
+                "reference": "913401df809e99e4f47b27cdd781f4a258d58791"
             },
             "dist": {
                 "type": "zip",
-                "url": 
"https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/994d4a811bafe801fb06dccbee797863ba2792ba";,
-                "reference": "994d4a811bafe801fb06dccbee797863ba2792ba",
+                "url": 
"https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/913401df809e99e4f47b27cdd781f4a258d58791";,
+                "reference": "913401df809e99e4f47b27cdd781f4a258d58791",
                 "shasum": ""
             },
             "require": {
@@ -1381,7 +1398,7 @@
             ],
             "description": "Provides functionality to recursively process PHP 
variables",
             "homepage": 
"http://www.github.com/sebastianbergmann/recursion-context";,
-            "time": "2015-06-21 08:04:50"
+            "time": "2015-11-11 19:50:13"
         },
         {
             "name": "sebastian/version",
@@ -1420,22 +1437,25 @@
         },
         {
             "name": "squizlabs/php_codesniffer",
-            "version": "2.3.4",
+            "version": "2.5.0",
             "source": {
                 "type": "git",
                 "url": "https://github.com/squizlabs/PHP_CodeSniffer.git";,
-                "reference": "11a2545c44a5915f883e2e5ec12e14ed345e3ab2"
+                "reference": "e4fb41d5d0387d556e2c25534d630b3cce90ea67"
             },
             "dist": {
                 "type": "zip",
-                "url": 
"https://api.github.com/repos/squizlabs/PHP_CodeSniffer/zipball/11a2545c44a5915f883e2e5ec12e14ed345e3ab2";,
-                "reference": "11a2545c44a5915f883e2e5ec12e14ed345e3ab2",
+                "url": 
"https://api.github.com/repos/squizlabs/PHP_CodeSniffer/zipball/e4fb41d5d0387d556e2c25534d630b3cce90ea67";,
+                "reference": "e4fb41d5d0387d556e2c25534d630b3cce90ea67",
                 "shasum": ""
             },
             "require": {
                 "ext-tokenizer": "*",
                 "ext-xmlwriter": "*",
                 "php": ">=5.1.2"
+            },
+            "require-dev": {
+                "phpunit/phpunit": "~4.0"
             },
             "bin": [
                 "scripts/phpcs",
@@ -1490,38 +1510,38 @@
                 "phpcs",
                 "standards"
             ],
-            "time": "2015-09-09 00:18:50"
+            "time": "2015-12-11 00:12:46"
         },
         {
             "name": "symfony/yaml",
-            "version": "v2.7.3",
+            "version": "v2.8.7",
             "source": {
                 "type": "git",
-                "url": "https://github.com/symfony/Yaml.git";,
-                "reference": "71340e996171474a53f3d29111d046be4ad8a0ff"
+                "url": "https://github.com/symfony/yaml.git";,
+                "reference": "815fabf3f48c7d1df345a69d1ad1a88f59757b34"
             },
             "dist": {
                 "type": "zip",
-                "url": 
"https://api.github.com/repos/symfony/Yaml/zipball/71340e996171474a53f3d29111d046be4ad8a0ff";,
-                "reference": "71340e996171474a53f3d29111d046be4ad8a0ff",
+                "url": 
"https://api.github.com/repos/symfony/yaml/zipball/815fabf3f48c7d1df345a69d1ad1a88f59757b34";,
+                "reference": "815fabf3f48c7d1df345a69d1ad1a88f59757b34",
                 "shasum": ""
             },
             "require": {
                 "php": ">=5.3.9"
             },
-            "require-dev": {
-                "symfony/phpunit-bridge": "~2.7"
-            },
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-master": "2.7-dev"
+                    "dev-master": "2.8-dev"
                 }
             },
             "autoload": {
                 "psr-4": {
                     "Symfony\\Component\\Yaml\\": ""
-                }
+                },
+                "exclude-from-classmap": [
+                    "/Tests/"
+                ]
             },
             "notification-url": "https://packagist.org/downloads/";,
             "license": [
@@ -1539,7 +1559,56 @@
             ],
             "description": "Symfony Yaml Component",
             "homepage": "https://symfony.com";,
-            "time": "2015-07-28 14:07:07"
+            "time": "2016-06-06 11:11:27"
+        },
+        {
+            "name": "webmozart/assert",
+            "version": "1.0.2",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/webmozart/assert.git";,
+                "reference": "30eed06dd6bc88410a4ff7f77b6d22f3ce13dbde"
+            },
+            "dist": {
+                "type": "zip",
+                "url": 
"https://api.github.com/repos/webmozart/assert/zipball/30eed06dd6bc88410a4ff7f77b6d22f3ce13dbde";,
+                "reference": "30eed06dd6bc88410a4ff7f77b6d22f3ce13dbde",
+                "shasum": ""
+            },
+            "require": {
+                "php": ">=5.3.3"
+            },
+            "require-dev": {
+                "phpunit/phpunit": "^4.6"
+            },
+            "type": "library",
+            "extra": {
+                "branch-alias": {
+                    "dev-master": "1.0-dev"
+                }
+            },
+            "autoload": {
+                "psr-4": {
+                    "Webmozart\\Assert\\": "src/"
+                }
+            },
+            "notification-url": "https://packagist.org/downloads/";,
+            "license": [
+                "MIT"
+            ],
+            "authors": [
+                {
+                    "name": "Bernhard Schussek",
+                    "email": "[email protected]"
+                }
+            ],
+            "description": "Assertions to validate method input/output with 
nice error messages.",
+            "keywords": [
+                "assert",
+                "check",
+                "validate"
+            ],
+            "time": "2015-08-24 13:29:44"
         }
     ],
     "aliases": [],
diff --git a/vendor/wikimedia/slimapp/src/AbstractApp.php 
b/vendor/wikimedia/slimapp/src/AbstractApp.php
index 95622d1..98e444c 100644
--- a/vendor/wikimedia/slimapp/src/AbstractApp.php
+++ b/vendor/wikimedia/slimapp/src/AbstractApp.php
@@ -121,34 +121,15 @@
                $this->configureIoc( $this->slim->container );
                $this->configureView( $this->slim->view );
 
-               // Add headers to all responses:
-               // * Vary: Cookie to help upstream caches to the right thing
-               // * X-Frame-Options: DENY
-               // * Content-Security-Policy to help protect against XSS attacks
-               // * Content-Type: text/html; charset=UTF-8
-               $headerMiddleware = new HeaderMiddleware( array(
-                       'Vary' => 'Cookie',
-                       'X-Frame-Options' => 'DENY',
-                       'Content-Security-Policy' =>
-                               "default-src 'self'; " .
-                               "frame-src 'none'; " .
-                               "object-src 'none'; " .
-                               // Needed for css data:... sprites
-                               "img-src 'self' data:; " .
-                               // Needed for jQuery and Modernizr feature 
detection
-                               "style-src 'self' 'unsafe-inline'",
-                       // Don't forget to override this for any content that 
is not
-                       // actually HTML (e.g. json)
-                       'Content-Type' => 'text/html; charset=UTF-8',
-               ) );
-               $this->slim->add( $headerMiddleware );
+               $this->slim->add(
+                       new HeaderMiddleware( 
$this->configureHeaderMiddleware() )
+               );
 
                // Add CSRF protection for POST requests
                $this->slim->add( new CsrfMiddleware() );
 
                $this->configureRoutes( $this->slim );
        }
-
 
        /**
         * Apply settings to the Slim application.
@@ -157,14 +138,12 @@
         */
        abstract protected function configureSlim( \Slim\Slim $slim );
 
-
        /**
         * Configure inversion of control/dependency injection container.
         *
         * @param \Slim\Helper\Set $container IOC container
         */
        abstract protected function configureIoc( \Slim\Helper\Set $container );
-
 
        /**
         * Configure view behavior.
@@ -173,14 +152,12 @@
         */
        abstract protected function configureView( \Slim\View $view );
 
-
        /**
         * Configure routes to be handled by application.
         *
         * @param \Slim\Slim $slim Application
         */
        abstract protected function configureRoutes( \Slim\Slim $slim );
-
 
        /**
         * Main entry point for all requests.
@@ -193,7 +170,6 @@
                register_shutdown_function( 'session_write_close' );
                $this->slim->run();
        }
-
 
        /**
         * Add a redirect route to the app.
@@ -213,7 +189,6 @@
                } )->name( $routeName );
        }
 
-
        /**
         * Add a static template route to the app.
         * @param \Slim\Slim $slim App
@@ -229,4 +204,35 @@
                        $slim->render( "{$name}.html" );
                } )->name( $routeName );
        }
+
+       /**
+        * Configure the default HeaderMiddleware installed for all routes.
+        *
+        * Default configuration adds these headers:
+        * - "Vary: Cookie" to help upstream caches to the right thing
+        * - "X-Frame-Options: DENY"
+        * - A fairly strict 'self' only Content-Security-Policy to help protect
+        *   against XSS attacks
+        * - "Content-Type: text/html; charset=UTF-8"
+        *
+        * @return array
+        */
+       protected function configureHeaderMiddleware() {
+               // Add headers to all responses:
+               return array(
+                       'Vary' => 'Cookie',
+                       'X-Frame-Options' => 'DENY',
+                       'Content-Security-Policy' =>
+                               "default-src 'self'; " .
+                               "frame-src 'none'; " .
+                               "object-src 'none'; " .
+                               // Needed for css data:... sprites
+                               "img-src 'self' data:; " .
+                               // Needed for jQuery and Modernizr feature 
detection
+                               "style-src 'self' 'unsafe-inline'",
+                       // Don't forget to override this for any content that 
is not
+                       // actually HTML (e.g. json)
+                       'Content-Type' => 'text/html; charset=UTF-8',
+               );
+       }
 }
diff --git a/vendor/wikimedia/slimapp/src/Auth/AuthManager.php 
b/vendor/wikimedia/slimapp/src/Auth/AuthManager.php
index f41abeb..94b2b6d 100644
--- a/vendor/wikimedia/slimapp/src/Auth/AuthManager.php
+++ b/vendor/wikimedia/slimapp/src/Auth/AuthManager.php
@@ -39,14 +39,12 @@
         */
        protected $manager;
 
-
        /**
         * @param UserManager $manager
         */
        public function __construct( UserManager $manager ) {
                $this->manager = $manager;
        }
-
 
        /**
         * Get the current user's information
@@ -61,7 +59,6 @@
                }
        }
 
-
        /**
         * Get the current user's Id.
         * @return int|bool Numeric user id or false if not available
@@ -71,7 +68,6 @@
                return $user ? $user->getId() : false;
        }
 
-
        /**
         * Store the user's information.
         * @param UserData $user User information
@@ -79,7 +75,6 @@
        public function setUser( UserData $user ) {
                $_SESSION[self::USER_SESSION_KEY] = $user;
        }
-
 
        /**
         * Is the user authenticated?
@@ -89,7 +84,6 @@
                return $this->getUserData() !== null;
        }
 
-
        /**
         * Is the user anonymous?
         * @return bool True if the user is not authenticated, false otherwise
@@ -97,7 +91,6 @@
        public function isAnonymous() {
                return $this->getUserData() === null;
        }
-
 
        /**
         * Attempt to authenticate a user.
@@ -117,7 +110,6 @@
                }
        }
 
-
        /**
         * Add authentication.
         *
@@ -135,7 +127,6 @@
                // store user info in session
                $this->setUser( $user );
        }
-
 
        /**
         * Remove authentication.
diff --git a/vendor/wikimedia/slimapp/src/Auth/Password.php 
b/vendor/wikimedia/slimapp/src/Auth/Password.php
index 6a66be2..6ad3244 100644
--- a/vendor/wikimedia/slimapp/src/Auth/Password.php
+++ b/vendor/wikimedia/slimapp/src/Auth/Password.php
@@ -37,7 +37,6 @@
         */
        const BLOWFISH_PREFIX = '$2y$';
 
-
        /**
         * Compare a plain text string to a stored password hash.
         *
@@ -57,7 +56,6 @@
                return self::hashEquals( $hash, $check );
        }
 
-
        /**
         * Encode a password for database storage.
         *
@@ -73,7 +71,6 @@
                $salt = self::blowfishSalt();
                return crypt( $plainText, $salt );
        }
-
 
        /**
         * Generate a blowfish salt specification.
@@ -117,7 +114,6 @@
 
                return $output;
        }
-
 
        /**
         * Get N high entropy random bytes.
@@ -187,7 +183,6 @@
                return substr( $bytes, 0, $count );
        }
 
-
        /**
         * Check a salt specification to see if it is a blowfish crypt value.
         *
@@ -200,7 +195,6 @@
                        substr( $hash, 0, $peek ) == self::BLOWFISH_PREFIX;
        }
 
-
        // @codingStandardsIgnoreStart : Line exceeds 100 characters
        const CHARSET_PRINTABLE = 
'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!"#$%&\'()*+,-./:;<=>?@[\]^_`{|}~';
        // @codingStandardsIgnoreEnd
@@ -209,7 +203,6 @@
        const CHARSET_DIGIT = '0123456789';
        const CHARSET_ALPHANUM = 
'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
        const CHARSET_SYMBOL = '!"#$%&\'()*+,-./:;<=>?@[\]^_`{|}~';
-
 
        /**
         * Generate a random password.
@@ -241,7 +234,6 @@
                return $password;
        }
 
-
        /**
         * Check whether a user-provided string is equal to a fixed-length 
secret
         * string without revealing bytes of the secret string through timing
@@ -255,18 +247,18 @@
         * @return bool True if the strings are the same, false otherwise
         */
        public static function hashEquals( $known, $input ) {
+               if ( !is_string( $known ) ) {
+                       return false;
+               }
+               if ( !is_string( $input ) ) {
+                       return false;
+               }
+
                if ( function_exists( 'hash_equals' ) ) {
                        return hash_equals( $known, $input );
 
                } else {
                        // hash_equals() polyfill taken from MediaWiki
-                       if ( !is_string( $known ) ) {
-                               return false;
-                       }
-                       if ( !is_string( $input ) ) {
-                               return false;
-                       }
-
                        $len = strlen( $known );
                        if ( $len !== strlen( $input ) ) {
                                return false;
@@ -280,7 +272,6 @@
                        return $result === 0;
                }
        }
-
 
        /**
         * Construction of utility class is not allowed.
diff --git a/vendor/wikimedia/slimapp/src/Config.php 
b/vendor/wikimedia/slimapp/src/Config.php
index c789182..4fb58ae 100644
--- a/vendor/wikimedia/slimapp/src/Config.php
+++ b/vendor/wikimedia/slimapp/src/Config.php
@@ -42,7 +42,6 @@
                return ( $val === null ) ? $default : $val;
        }
 
-
        /**
         * Get a string value
         * @param string $name Setting name
@@ -60,7 +59,6 @@
                return ( $var === false ) ? $default : $var;
        }
 
-
        /**
         * Get a date value
         * @param string $name Setting name
@@ -69,7 +67,6 @@
        public static function getDate( $name ) {
                return strtotime( self::getStr( $name ) );
        }
-
 
        /**
         * Load configuration data from file
diff --git a/vendor/wikimedia/slimapp/src/Controller.php 
b/vendor/wikimedia/slimapp/src/Controller.php
index b540d26..47139d5 100644
--- a/vendor/wikimedia/slimapp/src/Controller.php
+++ b/vendor/wikimedia/slimapp/src/Controller.php
@@ -61,7 +61,6 @@
         */
        protected $i18nctx;
 
-
        /**
         * @param \Slim\Slim $slim
         */
@@ -69,7 +68,6 @@
                $this->slim = $slim ?: \Slim\Slim::getInstance();
                $this->form = new Form( $this->slim->log );
        }
-
 
        /**
         * Set default DAO
@@ -79,7 +77,6 @@
                $this->dao = $dao;
        }
 
-
        /**
         * Set default form
         * @param Form $form
@@ -87,7 +84,6 @@
        public function setForm( Form $form ) {
                $this->form = $form;
        }
-
 
        /**
         * Set mailer
@@ -97,7 +93,6 @@
                $this->mailer = $mailer;
        }
 
-
        /**
         * Set i18n context
         * @param I18nContext $i18nctx
@@ -105,7 +100,6 @@
        public function setI18nContext( I18nContext $i18nctx ) {
                $this->i18nctx = $i18nctx;
        }
-
 
        /**
         * Default request handler.
@@ -115,7 +109,6 @@
        protected function handle() {
                $this->slim->pass();
        }
-
 
        /**
         * Handle request by calling handleMethod on self.
@@ -133,7 +126,6 @@
                        call_user_func_array( array( $this, 'handle' ), $argv );
                }
        }
-
 
        /**
         * Handle calls to undefined methods by proxying to the Slim member.
@@ -153,7 +145,6 @@
                );
        }
 
-
        /**
         * Handle access to undefined member variables by proxying to the Slim
         * member.
@@ -164,7 +155,6 @@
        public function __get( $name ) {
                return $this->slim->{$name};
        }
-
 
        /**
         * Get a flash message.
@@ -180,7 +170,6 @@
                }
        }
 
-
        /**
         * Get a message from the I18nContext.
         *
@@ -191,7 +180,6 @@
        protected function msg( $key, $params = array() ) {
                return $this->i18nctx->message( $key, $params );
        }
-
 
        /**
         * Compute pagination data.
diff --git a/vendor/wikimedia/slimapp/src/Dao/AbstractDao.php 
b/vendor/wikimedia/slimapp/src/Dao/AbstractDao.php
index a22c263..d0c2f6f 100644
--- a/vendor/wikimedia/slimapp/src/Dao/AbstractDao.php
+++ b/vendor/wikimedia/slimapp/src/Dao/AbstractDao.php
@@ -45,7 +45,6 @@
         */
        protected $logger;
 
-
        /**
         * @param string $dsn PDO data source name
         * @param string $user Database user
@@ -62,7 +61,6 @@
                        )
                );
        }
-
 
        /**
         * Bind values to a prepared statement.
@@ -113,7 +111,6 @@
                }
        }
 
-
        /**
         * Prepare and execute an SQL statement and return the first row of 
results.
         *
@@ -127,7 +124,6 @@
                $stmt->execute();
                return $stmt->fetch();
        }
-
 
        /**
         * Prepare and execute an SQL statement and return all results.
@@ -143,7 +139,6 @@
                $stmt->execute();
                return $stmt->fetchAll();
        }
-
 
        /**
         * Prepare and execute an SQL statement and return all results plus the
@@ -166,7 +161,6 @@
 
                return $ret;
        }
-
 
        /**
         * Prepare and execute an SQL statement in a transaction.
@@ -195,7 +189,6 @@
                }
        }
 
-
        /**
         * Prepare and execute an SQL statement in a transaction.
         *
@@ -223,7 +216,6 @@
                        return false;
                }
        }
-
 
        /**
         * Construct a where clause.
diff --git a/vendor/wikimedia/slimapp/src/HeaderMiddleware.php 
b/vendor/wikimedia/slimapp/src/HeaderMiddleware.php
index e782fe5..64182cc 100644
--- a/vendor/wikimedia/slimapp/src/HeaderMiddleware.php
+++ b/vendor/wikimedia/slimapp/src/HeaderMiddleware.php
@@ -49,7 +49,6 @@
                $this->headers = $headers;
        }
 
-
        public function call() {
                $resp = $this->app->response;
                foreach ( $this->headers as $name => $value ) {
diff --git a/vendor/wikimedia/slimapp/src/Mailer.php 
b/vendor/wikimedia/slimapp/src/Mailer.php
index e525aeb..71d2e53 100644
--- a/vendor/wikimedia/slimapp/src/Mailer.php
+++ b/vendor/wikimedia/slimapp/src/Mailer.php
@@ -54,7 +54,6 @@
                'XMailer' => 'Wikimedia Grants review system',
        );
 
-
        /**
         * @param array $settings Configuration settings for PHPMailer
         * @param LoggerInterface $logger Log channel
@@ -64,7 +63,6 @@
                $settings = is_array( $settings ) ? $settings : array();
                $this->settings = array_merge( $this->settings, $settings );
        }
-
 
        /**
         * @param string $to Recipent(s)
@@ -88,7 +86,6 @@
                        ) );
                }
        }
-
 
        /**
         * Create and configure a PHPMailer instance.
diff --git a/vendor/wikimedia/slimapp/src/ParsoidClient.php 
b/vendor/wikimedia/slimapp/src/ParsoidClient.php
index 699ffaf..b547087 100644
--- a/vendor/wikimedia/slimapp/src/ParsoidClient.php
+++ b/vendor/wikimedia/slimapp/src/ParsoidClient.php
@@ -18,7 +18,7 @@
  * <http://www.gnu.org/licenses/>.
  *
  * @file
- * @copyright © 2015 Bryan Davis, Wikimedia Foundation and contributors.
+ * @copyright © 2016 Bryan Davis, Wikimedia Foundation and contributors.
  */
 
 namespace Wikimedia\Slimapp;
@@ -26,11 +26,15 @@
 use Psr\Log\LoggerInterface;
 
 /**
- * Simple client for sending wikitext to parsoid to be converted into html.
+ * Simple client for sending wikitext to RESTBase to be converted into html.
+ *
+ * The class name predates the switch from Parsoid to RESTBase as the backing
+ * API provider. RESTBase still talks to Parsoid under the covers.
  *
  * @author Bryan Davis <[email protected]>
- * @copyright © 2015 Bryan Davis, Wikimedia Foundation and contributors.
- * @see https://www.mediawiki.org/wiki/Parsoid/API
+ * @copyright © 2016 Bryan Davis, Wikimedia Foundation and contributors.
+ * @see https://www.mediawiki.org/wiki/RESTBase
+ * @see https://en.wikipedia.org/api/rest_v1/
  */
 class ParsoidClient {
 
@@ -49,9 +53,8 @@
         */
        protected $logger;
 
-
        /**
-        * @param string $url URL to parsoid API
+        * @param string $url URL to RESTBase /transform/wikitext/to/html API
         * @param string $cache Cache directory
         * @param LoggerInterface $logger Log channel
         */
@@ -81,7 +84,7 @@
        }
 
        protected function cacheGet( $key ) {
-               $file = "{$this->cache}/{$key}.parsoid";
+               $file = "{$this->cache}/{$key}.restbase";
                if ( file_exists( $file ) ) {
                        $this->logger->debug( 'Cache hit for [{key}]', array(
                                'method' => __METHOD__,
@@ -97,7 +100,7 @@
        }
 
        protected function cachePut( $key, $value ) {
-               $file = "{$this->cache}/{$key}.parsoid";
+               $file = "{$this->cache}/{$key}.restbase";
                file_put_contents( $file, $value );
                $this->logger->info( 'Cache put for [{key}]', array(
                        'method' => __METHOD__,
@@ -113,8 +116,8 @@
         */
        protected function fetchParse( $text ) {
                $parms = array(
-                       'wt' => $text,
-                       'body' => 1,
+                       'wikitext' => $text,
+                       'body_only' => 'true',
                );
                $ch = curl_init();
                curl_setopt( $ch, CURLOPT_URL, $this->url );
@@ -122,13 +125,16 @@
                curl_setopt( $ch, CURLOPT_POSTFIELDS, $parms );
                curl_setopt( $ch, CURLOPT_ENCODING, '' );
                curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true );
-               curl_setopt( $ch, CURLOPT_USERAGENT, 'IEG Grant review 0.1' );
+               curl_setopt( $ch, CURLOPT_USERAGENT, 'Wikimedia Slimapp' );
+               curl_setopt( $ch, CURLOPT_HTTPHEADER, array(
+                       'Accept: text/html; charset=utf-8; 
profile="https://www.mediawiki.org/wiki/Specs/HTML/1.2.1";',
+               ) );
                $stderr = fopen( 'php://temp', 'rw+' );
                curl_setopt( $ch, CURLOPT_VERBOSE, true );
                curl_setopt( $ch, CURLOPT_STDERR, $stderr );
                $body = curl_exec( $ch );
                rewind( $stderr );
-               $this->logger->debug( 'Parsoid curl request', array(
+               $this->logger->debug( 'RESTBase curl request', array(
                        'method' => __METHOD__,
                        'url' => $this->url,
                        'parms' => $parms,
@@ -148,7 +154,7 @@
                curl_close( $ch );
 
                // Using a regex to parse html is generally not a sane thing to 
do,
-               // but in this case we are trusting Parsoid to be returning 
clean HTML
+               // but in this case we are trusting RESTBase to be returning 
clean HTML
                // and all we want to do is unwrap our payload from the
                // <body>...</body> tag.
                return preg_replace( '@^.*<body[^>]+>(.*)</body>.*$@s', '$1', 
$body );

-- 
To view, visit https://gerrit.wikimedia.org/r/325153
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I3d8ec425d3969d6bb0c353d61000bf6830a5af76
Gerrit-PatchSet: 1
Gerrit-Project: wikimedia/wikimania-scholarships
Gerrit-Branch: master
Gerrit-Owner: BryanDavis <[email protected]>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to