diff --git a/framadate/hooks/init b/framadate/hooks/init new file mode 100755 index 00000000..9860c16b --- /dev/null +++ b/framadate/hooks/init @@ -0,0 +1,123 @@ +#!/bin/bash + +## Init is run on host +## For now it is run every time the script is launched, but +## it should be launched only once after build. + +## Accessible variables are: +## - SERVICE_NAME Name of current service +## - DOCKER_BASE_IMAGE Base image from which this service might be built if any +## - SERVICE_DATASTORE Location on host of the DATASTORE of this service +## - SERVICE_CONFIGSTORE Location on host of the CONFIGSTORE of this service + + +. lib/common + +set -e + + +if ! [ -e "$FRAMADATE_CODE" ]; then + git clone --depth 1 -b v1.2.0-alpha.1 \ + https://framagit.org/framasoft/framadate/framadate.git \ + "$FRAMADATE_CODE" + mv "$FRAMADATE_CODE"/{htaccess.txt,.htaccess} + ( + cd "$FRAMADATE_CODE" + patch -p1 + ) < <(cat patch/*.patch) + +fi + +if ! [ -e "$FRAMADATE_CODE/vendor" ]; then + dcomposer global require "hirak/prestissimo:^0.3" \ + --prefer-dist \ + --no-progress \ + --no-suggest \ + --classmap-authoritative \ + --ignore-platform-reqs +fi + +cfg_dir=$(cfg_dir_init) || exit 1 +cd "$cfg_dir" || exit 1 + +FRAMADATE_OPTS=( + title:NOMAPPLICATION + admin-mail:ADRESSEMAILADMIN + auto-response-mail:ADRESSEMAILREPONSEAUTO + default-language:DEFAULT_LANGUAGE +) + +cat < config.php +> config.php || exit 1 +done + + +cat <<'EOF' >> config.php + +// List of supported languages, fake constant as arrays can be used as constants only in PHP >=5.6 +$ALLOWED_LANGUAGES = [ + 'fr' => 'Français', + 'en' => 'English', + 'oc' => 'Occitan', + 'es' => 'Español', + 'de' => 'Deutsch', + 'nl' => 'Dutch', + 'it' => 'Italiano', + 'br' => 'Brezhoneg', +]; + +// Path to image file with the title +const IMAGE_TITRE = 'images/logo-framadate.png'; + +// Clean URLs, boolean +const URL_PROPRE = true; + +// Use REMOTE_USER data provided by web server +const USE_REMOTE_USER = true; + +// Path to the log file +const LOG_FILE = 'log/stdout.log'; + +// Days (after expiration date) before purging a poll +const PURGE_DELAY = 60; + +// Max slots per poll +const MAX_SLOTS_PER_POLL = 366; + +// Number of seconds before we allow to resend an "Remember Edit Link" email. +const TIME_EDIT_LINK_EMAIL = 60; + +// Config +$config = [ + /* general config */ + 'use_smtp' => true, // use email for polls creation/modification/responses notification + 'smtp_options' => [ + 'host' => 'localhost', // SMTP server (you could add many servers (main and backup for example) : use ";" like separator + 'auth' => false, // Enable SMTP authentication + 'username' => '', // SMTP username + 'password' => '', // SMTP password + 'secure' => '', // Enable encryption (false, tls or ssl) + 'port' => 25, // TCP port to connect to + ], + /* home */ + 'show_what_is_that' => true, // display "how to use" section + 'show_the_software' => true, // display technical information about the software + 'show_cultivate_your_garden' => true, // display "development and administration" information + /* create_classic_poll.php / create_date_poll.php */ + 'default_poll_duration' => 180, // default values for the new poll duration (number of days). + /* create_classic_poll.php */ + 'user_can_add_img_or_link' => true, // user can add link or URL when creating his poll. + 'markdown_editor_by_default' => true, // The markdown editor for the description is enabled by default + 'provide_fork_awesome' => true, // Whether the build-in fork-awesome should be provided +]; + +EOF + diff --git a/framadate/hooks/postgres_database-relation-joined b/framadate/hooks/postgres_database-relation-joined new file mode 100755 index 00000000..fe1c57af --- /dev/null +++ b/framadate/hooks/postgres_database-relation-joined @@ -0,0 +1,28 @@ +#!/bin/bash + +. lib/common + +set -e + +PASSWORD="$(relation-get password)" +USER="$(relation-get user)" +DBNAME="$(relation-get dbname)" + +cfg_dir=$(cfg_dir_init) || exit 1 +cd "$cfg_dir" || exit 1 + +cat <> config.php + +const DB_CONNECTION_STRING = 'pgsql:host=$TARGET_SERVICE_NAME;dbname=$DBNAME;port=5432'; + +const DB_DRIVER = 'pdo_pgsql'; +const DB_NAME = '$DBNAME'; +const DB_HOST = '$TARGET_SERVICE_NAME'; +const DB_PORT = '5432'; + +const DB_USER= '$USER'; +const DB_PASSWORD = '$PASSWORD'; +const TABLENAME_PREFIX = 'fd_'; +const MIGRATION_TABLE = 'migration'; + +EOF \ No newline at end of file diff --git a/framadate/hooks/publish_dir-relation-joined b/framadate/hooks/publish_dir-relation-joined new file mode 100755 index 00000000..f958f217 --- /dev/null +++ b/framadate/hooks/publish_dir-relation-joined @@ -0,0 +1,19 @@ +#!/bin/bash + +. lib/common + +set -e + +domain=$(relation-get domain) || exit 1 +location=$DATASTORE/$BASE_SERVICE_NAME/var/www/$domain + +if ! [ -e "$location/app/inc/init.php" ]; then + cp -av "$FRAMADATE_CODE/app/inc/"* "$location/app/inc/" +fi + +cfg_dir=$(cfg_dir_init) || exit 1 +cd "$cfg_dir" + +echo "const APP_URL = '$domain';" >> config.php + + diff --git a/framadate/lib/common b/framadate/lib/common new file mode 100644 index 00000000..b656951f --- /dev/null +++ b/framadate/lib/common @@ -0,0 +1,50 @@ +# -*- mode: sh -*- + + +COMPOSER_DIR="$SERVICE_CONFIGSTORE/root/.composer" +FRAMADATE_CODE="$SERVICE_CONFIGSTORE/opt/apps/framadate" + +dcomposer() { + docker run --rm -v "$COMPOSER_DIR:/root/.composer" \ + -v "$FRAMADATE_CODE:/opt/apps/framadate" \ + -w "/opt/apps/framadate" \ + --env "COMPOSER_ALLOW_SUPERUSER=1" \ + composer:latest "-vvv" "--working-dir=/opt/apps/framadate" "$@" +} + + + +cfg_dir_init() { + local locations candidate_location cfg_dir + + if [ "$BASE_SERVICE_NAME" ]; then + candidate_location=("$DATASTORE/$BASE_SERVICE_NAME/var/www/"*"/app/inc/") + else + candidate_location=("$DATASTORE/$SERVICE_NAME/var/www/"*"/app/inc/") + fi + + locations=() + for location in "${candidate_location[@]}"; do + [ -d "${location[0]}" ] || continue + locations+=("$location") + done + + case "${#locations[@]}" in + 0) + debug "Relation publish-dir did not yet copy config files" + ## not yet copied + cfg_dir="$FRAMADATE_CODE/app/inc/" + ;; + 1) + debug "Relation publish-dir already copied config files" + cfg_dir="${locations[0]}" + ;; + *) + err "Unexpected: there are more than one directory in $DATASTORE/$BASE_SERVICE_NAME/var/www/" + exit 1 + ;; + esac + + debug "found location: $cfg_dir" >&2 + echo "$cfg_dir" +} \ No newline at end of file diff --git a/framadate/metadata.yml b/framadate/metadata.yml new file mode 100644 index 00000000..0159c97d --- /dev/null +++ b/framadate/metadata.yml @@ -0,0 +1,34 @@ +description: Framadate +subordinate: true +host-resources: + - /etc/timezone +default-options: + title: "Framadate" + admin-mail: "admin@example.com" + auto-response-mail: "no@reply" + default-language: fr +uses: + publish-dir: + #constraint: required | recommended | optional + #auto: pair | summon | none ## default: pair + constraint: required + auto: summon + solves: + database: "HTTP Publishing" + scope: container + default-options: + location: !var-expand "$CONFIGSTORE/$BASE_SERVICE_NAME/opt/apps/framadate" + data-dirs: + - tpl_c + - app/inc + - log + + postgres-database: + #constraint: required | recommended | optional + #auto: pair | summon | none ## default: pair + constraint: required + auto: summon + solves: + database: "main storage" + default-options: + init-sql: !file-content "$BASE_CHARM_PATH/src/init.sql" \ No newline at end of file diff --git a/framadate/patch/composer.json.patch b/framadate/patch/composer.json.patch new file mode 100644 index 00000000..d3fe9b4e --- /dev/null +++ b/framadate/patch/composer.json.patch @@ -0,0 +1,2830 @@ +diff --git a/composer.lock b/composer.lock +index 76b6a75..30349e2 100644 +--- a/composer.lock ++++ b/composer.lock +@@ -4,105 +4,42 @@ + "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", + "This file is @generated automatically" + ], +- "content-hash": "a209fcdeca22925bfbe08b4571adb0fa", ++ "content-hash": "5ac27fdb09c793214370ea0b4fabeb7c", + "packages": [ + { +- "name": "doctrine/annotations", +- "version": "v1.4.0", +- "source": { +- "type": "git", +- "url": "https://github.com/doctrine/annotations.git", +- "reference": "54cacc9b81758b14e3ce750f205a393d52339e97" +- }, +- "dist": { +- "type": "zip", +- "url": "https://api.github.com/repos/doctrine/annotations/zipball/54cacc9b81758b14e3ce750f205a393d52339e97", +- "reference": "54cacc9b81758b14e3ce750f205a393d52339e97", +- "shasum": "" +- }, +- "require": { +- "doctrine/lexer": "1.*", +- "php": "^5.6 || ^7.0" +- }, +- "require-dev": { +- "doctrine/cache": "1.*", +- "phpunit/phpunit": "^5.7" +- }, +- "type": "library", +- "extra": { +- "branch-alias": { +- "dev-master": "1.4.x-dev" +- } +- }, +- "autoload": { +- "psr-4": { +- "Doctrine\\Common\\Annotations\\": "lib/Doctrine/Common/Annotations" +- } +- }, +- "notification-url": "https://packagist.org/downloads/", +- "license": [ +- "MIT" +- ], +- "authors": [ +- { +- "name": "Roman Borschel", +- "email": "roman@code-factory.org" +- }, +- { +- "name": "Benjamin Eberlei", +- "email": "kontakt@beberlei.de" +- }, +- { +- "name": "Guilherme Blanco", +- "email": "guilhermeblanco@gmail.com" +- }, +- { +- "name": "Jonathan Wage", +- "email": "jonwage@gmail.com" +- }, +- { +- "name": "Johannes Schmitt", +- "email": "schmittjoh@gmail.com" +- } +- ], +- "description": "Docblock Annotations Parser", +- "homepage": "http://www.doctrine-project.org", +- "keywords": [ +- "annotations", +- "docblock", +- "parser" +- ], +- "time": "2017-02-24T16:22:25+00:00" +- }, +- { + "name": "doctrine/cache", +- "version": "v1.6.2", ++ "version": "v1.8.0", + "source": { + "type": "git", + "url": "https://github.com/doctrine/cache.git", +- "reference": "eb152c5100571c7a45470ff2a35095ab3f3b900b" ++ "reference": "d768d58baee9a4862ca783840eca1b9add7a7f57" + }, + "dist": { + "type": "zip", +- "url": "https://api.github.com/repos/doctrine/cache/zipball/eb152c5100571c7a45470ff2a35095ab3f3b900b", +- "reference": "eb152c5100571c7a45470ff2a35095ab3f3b900b", ++ "url": "https://api.github.com/repos/doctrine/cache/zipball/d768d58baee9a4862ca783840eca1b9add7a7f57", ++ "reference": "d768d58baee9a4862ca783840eca1b9add7a7f57", + "shasum": "" + }, + "require": { +- "php": "~5.5|~7.0" ++ "php": "~7.1" + }, + "conflict": { + "doctrine/common": ">2.2,<2.4" + }, + "require-dev": { +- "phpunit/phpunit": "~4.8|~5.0", +- "predis/predis": "~1.0", +- "satooshi/php-coveralls": "~0.6" ++ "alcaeus/mongo-php-adapter": "^1.1", ++ "doctrine/coding-standard": "^4.0", ++ "mongodb/mongodb": "^1.1", ++ "phpunit/phpunit": "^7.0", ++ "predis/predis": "~1.0" ++ }, ++ "suggest": { ++ "alcaeus/mongo-php-adapter": "Required to use legacy MongoDB driver" + }, + "type": "library", + "extra": { + "branch-alias": { +- "dev-master": "1.6.x-dev" ++ "dev-master": "1.8.x-dev" + } + }, + "autoload": { +@@ -137,174 +74,40 @@ + } + ], + "description": "Caching library offering an object-oriented API for many cache backends", +- "homepage": "http://www.doctrine-project.org", ++ "homepage": "https://www.doctrine-project.org", + "keywords": [ + "cache", + "caching" + ], +- "time": "2017-07-22T12:49:21+00:00" +- }, +- { +- "name": "doctrine/collections", +- "version": "v1.4.0", +- "source": { +- "type": "git", +- "url": "https://github.com/doctrine/collections.git", +- "reference": "1a4fb7e902202c33cce8c55989b945612943c2ba" +- }, +- "dist": { +- "type": "zip", +- "url": "https://api.github.com/repos/doctrine/collections/zipball/1a4fb7e902202c33cce8c55989b945612943c2ba", +- "reference": "1a4fb7e902202c33cce8c55989b945612943c2ba", +- "shasum": "" +- }, +- "require": { +- "php": "^5.6 || ^7.0" +- }, +- "require-dev": { +- "doctrine/coding-standard": "~0.1@dev", +- "phpunit/phpunit": "^5.7" +- }, +- "type": "library", +- "extra": { +- "branch-alias": { +- "dev-master": "1.3.x-dev" +- } +- }, +- "autoload": { +- "psr-0": { +- "Doctrine\\Common\\Collections\\": "lib/" +- } +- }, +- "notification-url": "https://packagist.org/downloads/", +- "license": [ +- "MIT" +- ], +- "authors": [ +- { +- "name": "Roman Borschel", +- "email": "roman@code-factory.org" +- }, +- { +- "name": "Benjamin Eberlei", +- "email": "kontakt@beberlei.de" +- }, +- { +- "name": "Guilherme Blanco", +- "email": "guilhermeblanco@gmail.com" +- }, +- { +- "name": "Jonathan Wage", +- "email": "jonwage@gmail.com" +- }, +- { +- "name": "Johannes Schmitt", +- "email": "schmittjoh@gmail.com" +- } +- ], +- "description": "Collections Abstraction library", +- "homepage": "http://www.doctrine-project.org", +- "keywords": [ +- "array", +- "collections", +- "iterator" +- ], +- "time": "2017-01-03T10:49:41+00:00" +- }, +- { +- "name": "doctrine/common", +- "version": "v2.7.3", +- "source": { +- "type": "git", +- "url": "https://github.com/doctrine/common.git", +- "reference": "4acb8f89626baafede6ee5475bc5844096eba8a9" +- }, +- "dist": { +- "type": "zip", +- "url": "https://api.github.com/repos/doctrine/common/zipball/4acb8f89626baafede6ee5475bc5844096eba8a9", +- "reference": "4acb8f89626baafede6ee5475bc5844096eba8a9", +- "shasum": "" +- }, +- "require": { +- "doctrine/annotations": "1.*", +- "doctrine/cache": "1.*", +- "doctrine/collections": "1.*", +- "doctrine/inflector": "1.*", +- "doctrine/lexer": "1.*", +- "php": "~5.6|~7.0" +- }, +- "require-dev": { +- "phpunit/phpunit": "^5.4.6" +- }, +- "type": "library", +- "extra": { +- "branch-alias": { +- "dev-master": "2.7.x-dev" +- } +- }, +- "autoload": { +- "psr-4": { +- "Doctrine\\Common\\": "lib/Doctrine/Common" +- } +- }, +- "notification-url": "https://packagist.org/downloads/", +- "license": [ +- "MIT" +- ], +- "authors": [ +- { +- "name": "Roman Borschel", +- "email": "roman@code-factory.org" +- }, +- { +- "name": "Benjamin Eberlei", +- "email": "kontakt@beberlei.de" +- }, +- { +- "name": "Guilherme Blanco", +- "email": "guilhermeblanco@gmail.com" +- }, +- { +- "name": "Jonathan Wage", +- "email": "jonwage@gmail.com" +- }, +- { +- "name": "Johannes Schmitt", +- "email": "schmittjoh@gmail.com" +- } +- ], +- "description": "Common Library for Doctrine projects", +- "homepage": "http://www.doctrine-project.org", +- "keywords": [ +- "annotations", +- "collections", +- "eventmanager", +- "persistence", +- "spl" +- ], +- "time": "2017-07-22T08:35:12+00:00" ++ "time": "2018-08-21T18:01:43+00:00" + }, + { + "name": "doctrine/dbal", +- "version": "v2.5.13", ++ "version": "v2.9.2", + "source": { + "type": "git", + "url": "https://github.com/doctrine/dbal.git", +- "reference": "729340d8d1eec8f01bff708e12e449a3415af873" ++ "reference": "22800bd651c1d8d2a9719e2a3dc46d5108ebfcc9" + }, + "dist": { + "type": "zip", +- "url": "https://api.github.com/repos/doctrine/dbal/zipball/729340d8d1eec8f01bff708e12e449a3415af873", +- "reference": "729340d8d1eec8f01bff708e12e449a3415af873", ++ "url": "https://api.github.com/repos/doctrine/dbal/zipball/22800bd651c1d8d2a9719e2a3dc46d5108ebfcc9", ++ "reference": "22800bd651c1d8d2a9719e2a3dc46d5108ebfcc9", + "shasum": "" + }, + "require": { +- "doctrine/common": ">=2.4,<2.8-dev", +- "php": ">=5.3.2" ++ "doctrine/cache": "^1.0", ++ "doctrine/event-manager": "^1.0", ++ "ext-pdo": "*", ++ "php": "^7.1" + }, + "require-dev": { +- "phpunit/phpunit": "4.*", +- "symfony/console": "2.*||^3.0" ++ "doctrine/coding-standard": "^5.0", ++ "jetbrains/phpstorm-stubs": "^2018.1.2", ++ "phpstan/phpstan": "^0.10.1", ++ "phpunit/phpunit": "^7.4", ++ "symfony/console": "^2.0.5|^3.0|^4.0", ++ "symfony/phpunit-bridge": "^3.4.5|^4.0.5" + }, + "suggest": { + "symfony/console": "For helpful console commands such as SQL execution and import of files." +@@ -315,12 +118,13 @@ + "type": "library", + "extra": { + "branch-alias": { +- "dev-master": "2.5.x-dev" ++ "dev-master": "2.9.x-dev", ++ "dev-develop": "3.0.x-dev" + } + }, + "autoload": { +- "psr-0": { +- "Doctrine\\DBAL\\": "lib/" ++ "psr-4": { ++ "Doctrine\\DBAL\\": "lib/Doctrine/DBAL" + } + }, + "notification-url": "https://packagist.org/downloads/", +@@ -345,45 +149,53 @@ + "email": "jonwage@gmail.com" + } + ], +- "description": "Database Abstraction Layer", +- "homepage": "http://www.doctrine-project.org", ++ "description": "Powerful PHP database abstraction layer (DBAL) with many features for database schema introspection and management.", ++ "homepage": "https://www.doctrine-project.org/projects/dbal.html", + "keywords": [ ++ "abstraction", + "database", + "dbal", ++ "mysql", + "persistence", ++ "pgsql", ++ "php", + "queryobject" + ], +- "time": "2017-07-22T20:44:48+00:00" ++ "time": "2018-12-31T03:27:51+00:00" + }, + { +- "name": "doctrine/inflector", +- "version": "v1.1.0", ++ "name": "doctrine/event-manager", ++ "version": "v1.0.0", + "source": { + "type": "git", +- "url": "https://github.com/doctrine/inflector.git", +- "reference": "90b2128806bfde671b6952ab8bea493942c1fdae" ++ "url": "https://github.com/doctrine/event-manager.git", ++ "reference": "a520bc093a0170feeb6b14e9d83f3a14452e64b3" + }, + "dist": { + "type": "zip", +- "url": "https://api.github.com/repos/doctrine/inflector/zipball/90b2128806bfde671b6952ab8bea493942c1fdae", +- "reference": "90b2128806bfde671b6952ab8bea493942c1fdae", ++ "url": "https://api.github.com/repos/doctrine/event-manager/zipball/a520bc093a0170feeb6b14e9d83f3a14452e64b3", ++ "reference": "a520bc093a0170feeb6b14e9d83f3a14452e64b3", + "shasum": "" + }, + "require": { +- "php": ">=5.3.2" ++ "php": "^7.1" ++ }, ++ "conflict": { ++ "doctrine/common": "<2.9@dev" + }, + "require-dev": { +- "phpunit/phpunit": "4.*" ++ "doctrine/coding-standard": "^4.0", ++ "phpunit/phpunit": "^7.0" + }, + "type": "library", + "extra": { + "branch-alias": { +- "dev-master": "1.1.x-dev" ++ "dev-master": "1.0.x-dev" + } + }, + "autoload": { +- "psr-0": { +- "Doctrine\\Common\\Inflector\\": "lib/" ++ "psr-4": { ++ "Doctrine\\Common\\": "lib/Doctrine/Common" + } + }, + "notification-url": "https://packagist.org/downloads/", +@@ -410,17 +222,20 @@ + { + "name": "Johannes Schmitt", + "email": "schmittjoh@gmail.com" ++ }, ++ { ++ "name": "Marco Pivetta", ++ "email": "ocramius@gmail.com" + } + ], +- "description": "Common String Manipulations with regard to casing and singular/plural rules.", +- "homepage": "http://www.doctrine-project.org", ++ "description": "Doctrine Event Manager component", ++ "homepage": "https://www.doctrine-project.org/projects/event-manager.html", + "keywords": [ +- "inflection", +- "pluralize", +- "singularize", +- "string" ++ "event", ++ "eventdispatcher", ++ "eventmanager" + ], +- "time": "2015-11-06T14:35:42+00:00" ++ "time": "2018-06-11T11:59:03+00:00" + }, + { + "name": "doctrine/lexer", +@@ -478,37 +293,36 @@ + }, + { + "name": "doctrine/migrations", +- "version": "v1.5.0", ++ "version": "v1.8.1", + "source": { + "type": "git", + "url": "https://github.com/doctrine/migrations.git", +- "reference": "c81147c0f2938a6566594455367e095150547f72" ++ "reference": "215438c0eef3e5f9b7da7d09c6b90756071b43e6" + }, + "dist": { + "type": "zip", +- "url": "https://api.github.com/repos/doctrine/migrations/zipball/c81147c0f2938a6566594455367e095150547f72", +- "reference": "c81147c0f2938a6566594455367e095150547f72", ++ "url": "https://api.github.com/repos/doctrine/migrations/zipball/215438c0eef3e5f9b7da7d09c6b90756071b43e6", ++ "reference": "215438c0eef3e5f9b7da7d09c6b90756071b43e6", + "shasum": "" + }, + "require": { +- "doctrine/dbal": "~2.2", ++ "doctrine/dbal": "~2.6", + "ocramius/proxy-manager": "^1.0|^2.0", +- "php": "^5.5|^7.0", +- "symfony/console": "~2.3|~3.0", +- "symfony/yaml": "~2.3|~3.0" ++ "php": "^7.1", ++ "symfony/console": "~3.3|^4.0" + }, + "require-dev": { +- "doctrine/coding-standard": "dev-master", +- "doctrine/orm": "2.*", ++ "doctrine/coding-standard": "^1.0", ++ "doctrine/orm": "~2.5", + "jdorn/sql-formatter": "~1.1", +- "johnkary/phpunit-speedtrap": "~1.0@dev", + "mikey179/vfsstream": "^1.6", +- "mockery/mockery": "^0.9.4", +- "phpunit/phpunit": "~4.7", +- "satooshi/php-coveralls": "^1.0" ++ "phpunit/phpunit": "~7.0", ++ "squizlabs/php_codesniffer": "^3.0", ++ "symfony/yaml": "~3.3|^4.0" + }, + "suggest": { +- "jdorn/sql-formatter": "Allows to generate formatted SQL with the diff command." ++ "jdorn/sql-formatter": "Allows to generate formatted SQL with the diff command.", ++ "symfony/yaml": "Allows the use of yaml for migration configuration files." + }, + "bin": [ + "bin/doctrine-migrations" +@@ -516,17 +330,18 @@ + "type": "library", + "extra": { + "branch-alias": { +- "dev-master": "v1.6.x-dev" ++ "dev-master": "v1.8.x-dev" + } + }, + "autoload": { + "psr-4": { +- "Doctrine\\DBAL\\Migrations\\": "lib/Doctrine/DBAL/Migrations" ++ "Doctrine\\DBAL\\Migrations\\": "lib/Doctrine/DBAL/Migrations", ++ "Doctrine\\Migrations\\": "lib/Doctrine/Migrations" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ +- "LGPL-2.1" ++ "MIT" + ], + "authors": [ + { +@@ -543,25 +358,25 @@ + } + ], + "description": "Database Schema migrations using Doctrine DBAL", +- "homepage": "http://www.doctrine-project.org", ++ "homepage": "https://www.doctrine-project.org/projects/migrations.html", + "keywords": [ + "database", + "migrations" + ], +- "time": "2016-12-25T22:54:00+00:00" ++ "time": "2018-06-06T21:00:30+00:00" + }, + { + "name": "egulias/email-validator", +- "version": "2.1.7", ++ "version": "2.1.0", + "source": { + "type": "git", + "url": "https://github.com/egulias/EmailValidator.git", +- "reference": "709f21f92707308cdf8f9bcfa1af4cb26586521e" ++ "reference": "19811e00829958f06d9bfbfeb0d0e6b7aaff3767" + }, + "dist": { + "type": "zip", +- "url": "https://api.github.com/repos/egulias/EmailValidator/zipball/709f21f92707308cdf8f9bcfa1af4cb26586521e", +- "reference": "709f21f92707308cdf8f9bcfa1af4cb26586521e", ++ "url": "https://api.github.com/repos/egulias/EmailValidator/zipball/19811e00829958f06d9bfbfeb0d0e6b7aaff3767", ++ "reference": "19811e00829958f06d9bfbfeb0d0e6b7aaff3767", + "shasum": "" + }, + "require": { +@@ -570,11 +385,8 @@ + }, + "require-dev": { + "dominicsayers/isemail": "dev-master", +- "phpunit/phpunit": "^4.8.35||^5.7||^6.0", +- "satooshi/php-coveralls": "^1.0.1" +- }, +- "suggest": { +- "ext-intl": "PHP Internationalization Libraries are required to use the SpoofChecking validation" ++ "phpunit/phpunit": "^4.8.0", ++ "satooshi/php-coveralls": "dev-master" + }, + "type": "library", + "extra": { +@@ -605,20 +417,20 @@ + "validation", + "validator" + ], +- "time": "2018-12-04T22:38:24+00:00" ++ "time": "2016-07-12T13:22:10+00:00" + }, + { + "name": "erusev/parsedown", +- "version": "1.7.3", ++ "version": "v1.7.2", + "source": { + "type": "git", + "url": "https://github.com/erusev/parsedown.git", +- "reference": "6d893938171a817f4e9bc9e86f2da1e370b7bcd7" ++ "reference": "d60bcdc46978357759ecb13cb4b078da783f8faf" + }, + "dist": { + "type": "zip", +- "url": "https://api.github.com/repos/erusev/parsedown/zipball/6d893938171a817f4e9bc9e86f2da1e370b7bcd7", +- "reference": "6d893938171a817f4e9bc9e86f2da1e370b7bcd7", ++ "url": "https://api.github.com/repos/erusev/parsedown/zipball/d60bcdc46978357759ecb13cb4b078da783f8faf", ++ "reference": "d60bcdc46978357759ecb13cb4b078da783f8faf", + "shasum": "" + }, + "require": { +@@ -651,7 +463,58 @@ + "markdown", + "parser" + ], +- "time": "2019-03-17T18:48:37+00:00" ++ "time": "2019-03-17T17:19:46+00:00" ++ }, ++ { ++ "name": "hirak/prestissimo", ++ "version": "0.3.0", ++ "source": { ++ "type": "git", ++ "url": "https://github.com/hirak/prestissimo.git", ++ "reference": "24c64a8f6aeb63f439fd0680985e85aaab5a61dd" ++ }, ++ "dist": { ++ "type": "zip", ++ "url": "https://api.github.com/repos/hirak/prestissimo/zipball/24c64a8f6aeb63f439fd0680985e85aaab5a61dd", ++ "reference": "24c64a8f6aeb63f439fd0680985e85aaab5a61dd", ++ "shasum": "" ++ }, ++ "require": { ++ "composer-plugin-api": "^1.0.0", ++ "ext-curl": "*", ++ "php": ">=5.3.2" ++ }, ++ "require-dev": { ++ "composer/composer": "1.0.0", ++ "phpunit/phpunit": "^4.8", ++ "squizlabs/php_codesniffer": "^2.5" ++ }, ++ "type": "composer-plugin", ++ "extra": { ++ "class": "Hirak\\Prestissimo\\Plugin" ++ }, ++ "autoload": { ++ "psr-4": { ++ "Hirak\\Prestissimo\\": "src/" ++ } ++ }, ++ "notification-url": "https://packagist.org/downloads/", ++ "license": [ ++ "MIT" ++ ], ++ "authors": [ ++ { ++ "name": "Hiraku NAKANO", ++ "email": "hiraku@tojiru.net" ++ } ++ ], ++ "description": "composer parallel install plugin", ++ "keywords": [ ++ "install", ++ "parallel", ++ "speedup" ++ ], ++ "time": "2016-06-05T14:05:56+00:00" + }, + { + "name": "ircmaxell/password-compat", +@@ -696,39 +559,96 @@ + "time": "2017-03-20T21:17:32+00:00" + }, + { ++ "name": "ocramius/package-versions", ++ "version": "1.4.0", ++ "source": { ++ "type": "git", ++ "url": "https://github.com/Ocramius/PackageVersions.git", ++ "reference": "a4d4b60d0e60da2487bd21a2c6ac089f85570dbb" ++ }, ++ "dist": { ++ "type": "zip", ++ "url": "https://api.github.com/repos/Ocramius/PackageVersions/zipball/a4d4b60d0e60da2487bd21a2c6ac089f85570dbb", ++ "reference": "a4d4b60d0e60da2487bd21a2c6ac089f85570dbb", ++ "shasum": "" ++ }, ++ "require": { ++ "composer-plugin-api": "^1.0.0", ++ "php": "^7.1.0" ++ }, ++ "require-dev": { ++ "composer/composer": "^1.6.3", ++ "doctrine/coding-standard": "^5.0.1", ++ "ext-zip": "*", ++ "infection/infection": "^0.7.1", ++ "phpunit/phpunit": "^7.0.0" ++ }, ++ "type": "composer-plugin", ++ "extra": { ++ "class": "PackageVersions\\Installer", ++ "branch-alias": { ++ "dev-master": "2.0.x-dev" ++ } ++ }, ++ "autoload": { ++ "psr-4": { ++ "PackageVersions\\": "src/PackageVersions" ++ } ++ }, ++ "notification-url": "https://packagist.org/downloads/", ++ "license": [ ++ "MIT" ++ ], ++ "authors": [ ++ { ++ "name": "Marco Pivetta", ++ "email": "ocramius@gmail.com" ++ } ++ ], ++ "description": "Composer plugin that provides efficient querying for installed package versions (no runtime IO)", ++ "time": "2019-02-21T12:16:21+00:00" ++ }, ++ { + "name": "ocramius/proxy-manager", +- "version": "1.0.2", ++ "version": "2.2.2", + "source": { + "type": "git", + "url": "https://github.com/Ocramius/ProxyManager.git", +- "reference": "57e9272ec0e8deccf09421596e0e2252df440e11" ++ "reference": "14b137b06b0f911944132df9d51e445a35920ab1" + }, + "dist": { + "type": "zip", +- "url": "https://api.github.com/repos/Ocramius/ProxyManager/zipball/57e9272ec0e8deccf09421596e0e2252df440e11", +- "reference": "57e9272ec0e8deccf09421596e0e2252df440e11", ++ "url": "https://api.github.com/repos/Ocramius/ProxyManager/zipball/14b137b06b0f911944132df9d51e445a35920ab1", ++ "reference": "14b137b06b0f911944132df9d51e445a35920ab1", + "shasum": "" + }, + "require": { +- "php": ">=5.3.3", +- "zendframework/zend-code": ">2.2.5,<3.0" ++ "ocramius/package-versions": "^1.1.3", ++ "php": "^7.2.0", ++ "zendframework/zend-code": "^3.3.0" + }, + "require-dev": { ++ "couscous/couscous": "^1.6.1", + "ext-phar": "*", +- "phpunit/phpunit": "~4.0", +- "squizlabs/php_codesniffer": "1.5.*" ++ "humbug/humbug": "1.0.0-RC.0@RC", ++ "nikic/php-parser": "^3.1.1", ++ "padraic/phpunit-accelerator": "dev-master@DEV", ++ "phpbench/phpbench": "^0.12.2", ++ "phpstan/phpstan": "dev-master#856eb10a81c1d27c701a83f167dc870fd8f4236a as 0.9.999", ++ "phpstan/phpstan-phpunit": "dev-master#5629c0a1f4a9c417cb1077cf6693ad9753895761", ++ "phpunit/phpunit": "^6.4.3", ++ "squizlabs/php_codesniffer": "^2.9.1" + }, + "suggest": { + "ocramius/generated-hydrator": "To have very fast object to array to object conversion for ghost objects", + "zendframework/zend-json": "To have the JsonRpc adapter (Remote Object feature)", + "zendframework/zend-soap": "To have the Soap adapter (Remote Object feature)", +- "zendframework/zend-stdlib": "To use the hydrator proxy", + "zendframework/zend-xmlrpc": "To have the XmlRpc adapter (Remote Object feature)" + }, + "type": "library", + "extra": { + "branch-alias": { +- "dev-master": "2.0.x-dev" ++ "dev-master": "3.0.x-dev" + } + }, + "autoload": { +@@ -744,7 +664,7 @@ + { + "name": "Marco Pivetta", + "email": "ocramius@gmail.com", +- "homepage": "http://ocramius.github.com/" ++ "homepage": "http://ocramius.github.io/" + } + ], + "description": "A library providing utilities to generate, instantiate and generally operate with Object Proxies", +@@ -756,20 +676,20 @@ + "proxy pattern", + "service proxies" + ], +- "time": "2015-08-09T04:28:19+00:00" ++ "time": "2018-09-27T13:45:01+00:00" + }, + { + "name": "phpmailer/phpmailer", +- "version": "v6.0.7", ++ "version": "v6.0.6", + "source": { + "type": "git", + "url": "https://github.com/PHPMailer/PHPMailer.git", +- "reference": "0c41a36d4508d470e376498c1c0c527aa36a2d59" ++ "reference": "8190d73eb5def11a43cfb020b7f36db65330698c" + }, + "dist": { + "type": "zip", +- "url": "https://api.github.com/repos/PHPMailer/PHPMailer/zipball/0c41a36d4508d470e376498c1c0c527aa36a2d59", +- "reference": "0c41a36d4508d470e376498c1c0c527aa36a2d59", ++ "url": "https://api.github.com/repos/PHPMailer/PHPMailer/zipball/8190d73eb5def11a43cfb020b7f36db65330698c", ++ "reference": "8190d73eb5def11a43cfb020b7f36db65330698c", + "shasum": "" + }, + "require": { +@@ -822,67 +742,20 @@ + } + ], + "description": "PHPMailer is a full-featured email creation and transfer class for PHP", +- "time": "2019-02-01T15:04:28+00:00" +- }, +- { +- "name": "psr/log", +- "version": "1.1.0", +- "source": { +- "type": "git", +- "url": "https://github.com/php-fig/log.git", +- "reference": "6c001f1daafa3a3ac1d8ff69ee4db8e799a654dd" +- }, +- "dist": { +- "type": "zip", +- "url": "https://api.github.com/repos/php-fig/log/zipball/6c001f1daafa3a3ac1d8ff69ee4db8e799a654dd", +- "reference": "6c001f1daafa3a3ac1d8ff69ee4db8e799a654dd", +- "shasum": "" +- }, +- "require": { +- "php": ">=5.3.0" +- }, +- "type": "library", +- "extra": { +- "branch-alias": { +- "dev-master": "1.0.x-dev" +- } +- }, +- "autoload": { +- "psr-4": { +- "Psr\\Log\\": "Psr/Log/" +- } +- }, +- "notification-url": "https://packagist.org/downloads/", +- "license": [ +- "MIT" +- ], +- "authors": [ +- { +- "name": "PHP-FIG", +- "homepage": "http://www.php-fig.org/" +- } +- ], +- "description": "Common interface for logging libraries", +- "homepage": "https://github.com/php-fig/log", +- "keywords": [ +- "log", +- "psr", +- "psr-3" +- ], +- "time": "2018-11-20T15:27:04+00:00" ++ "time": "2018-11-16T00:41:32+00:00" + }, + { + "name": "sensiolabs/ansi-to-html", +- "version": "v1.1.3", ++ "version": "v1.1.0", + "source": { + "type": "git", + "url": "https://github.com/sensiolabs/ansi-to-html.git", +- "reference": "8b5d787dca714bd98dd770c078d76528320a8286" ++ "reference": "92d2ef7ffba5418be060d8ba8adaf7223d741f93" + }, + "dist": { + "type": "zip", +- "url": "https://api.github.com/repos/sensiolabs/ansi-to-html/zipball/8b5d787dca714bd98dd770c078d76528320a8286", +- "reference": "8b5d787dca714bd98dd770c078d76528320a8286", ++ "url": "https://api.github.com/repos/sensiolabs/ansi-to-html/zipball/92d2ef7ffba5418be060d8ba8adaf7223d741f93", ++ "reference": "92d2ef7ffba5418be060d8ba8adaf7223d741f93", + "shasum": "" + }, + "require": { +@@ -913,7 +786,7 @@ + } + ], + "description": "A library to convert a text with ANSI codes to HTML", +- "time": "2017-05-02T00:53:29+00:00" ++ "time": "2014-08-01T14:02:39+00:00" + }, + { + "name": "smarty/smarty", +@@ -970,21 +843,21 @@ + }, + { + "name": "symfony/console", +- "version": "v3.4.27", ++ "version": "v4.2.8", + "source": { + "type": "git", + "url": "https://github.com/symfony/console.git", +- "reference": "15a9104356436cb26e08adab97706654799d31d8" ++ "reference": "e2840bb38bddad7a0feaf85931e38fdcffdb2f81" + }, + "dist": { + "type": "zip", +- "url": "https://api.github.com/repos/symfony/console/zipball/15a9104356436cb26e08adab97706654799d31d8", +- "reference": "15a9104356436cb26e08adab97706654799d31d8", ++ "url": "https://api.github.com/repos/symfony/console/zipball/e2840bb38bddad7a0feaf85931e38fdcffdb2f81", ++ "reference": "e2840bb38bddad7a0feaf85931e38fdcffdb2f81", + "shasum": "" + }, + "require": { +- "php": "^5.5.9|>=7.0.8", +- "symfony/debug": "~2.8|~3.0|~4.0", ++ "php": "^7.1.3", ++ "symfony/contracts": "^1.0", + "symfony/polyfill-mbstring": "~1.0" + }, + "conflict": { +@@ -996,11 +869,11 @@ + }, + "require-dev": { + "psr/log": "~1.0", +- "symfony/config": "~3.3|~4.0", ++ "symfony/config": "~3.4|~4.0", + "symfony/dependency-injection": "~3.4|~4.0", +- "symfony/event-dispatcher": "~2.8|~3.0|~4.0", ++ "symfony/event-dispatcher": "~3.4|~4.0", + "symfony/lock": "~3.4|~4.0", +- "symfony/process": "~3.3|~4.0" ++ "symfony/process": "~3.4|~4.0" + }, + "suggest": { + "psr/log": "For using the console logger", +@@ -1011,7 +884,7 @@ + "type": "library", + "extra": { + "branch-alias": { +- "dev-master": "3.4-dev" ++ "dev-master": "4.2-dev" + } + }, + "autoload": { +@@ -1038,44 +911,48 @@ + ], + "description": "Symfony Console Component", + "homepage": "https://symfony.com", +- "time": "2019-04-08T09:29:13+00:00" ++ "time": "2019-04-08T14:23:48+00:00" + }, + { +- "name": "symfony/debug", +- "version": "v3.4.27", ++ "name": "symfony/contracts", ++ "version": "v1.0.2", + "source": { + "type": "git", +- "url": "https://github.com/symfony/debug.git", +- "reference": "681afbb26488903c5ac15e63734f1d8ac430c9b9" ++ "url": "https://github.com/symfony/contracts.git", ++ "reference": "1aa7ab2429c3d594dd70689604b5cf7421254cdf" + }, + "dist": { + "type": "zip", +- "url": "https://api.github.com/repos/symfony/debug/zipball/681afbb26488903c5ac15e63734f1d8ac430c9b9", +- "reference": "681afbb26488903c5ac15e63734f1d8ac430c9b9", ++ "url": "https://api.github.com/repos/symfony/contracts/zipball/1aa7ab2429c3d594dd70689604b5cf7421254cdf", ++ "reference": "1aa7ab2429c3d594dd70689604b5cf7421254cdf", + "shasum": "" + }, + "require": { +- "php": "^5.5.9|>=7.0.8", +- "psr/log": "~1.0" +- }, +- "conflict": { +- "symfony/http-kernel": ">=2.3,<2.3.24|~2.4.0|>=2.5,<2.5.9|>=2.6,<2.6.2" ++ "php": "^7.1.3" + }, + "require-dev": { +- "symfony/http-kernel": "~2.8|~3.0|~4.0" ++ "psr/cache": "^1.0", ++ "psr/container": "^1.0" ++ }, ++ "suggest": { ++ "psr/cache": "When using the Cache contracts", ++ "psr/container": "When using the Service contracts", ++ "symfony/cache-contracts-implementation": "", ++ "symfony/service-contracts-implementation": "", ++ "symfony/translation-contracts-implementation": "" + }, + "type": "library", + "extra": { + "branch-alias": { +- "dev-master": "3.4-dev" ++ "dev-master": "1.0-dev" + } + }, + "autoload": { + "psr-4": { +- "Symfony\\Component\\Debug\\": "" ++ "Symfony\\Contracts\\": "" + }, + "exclude-from-classmap": [ +- "/Tests/" ++ "**/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", +@@ -1084,75 +961,25 @@ + ], + "authors": [ + { +- "name": "Fabien Potencier", +- "email": "fabien@symfony.com" +- }, +- { +- "name": "Symfony Community", +- "homepage": "https://symfony.com/contributors" +- } +- ], +- "description": "Symfony Debug Component", +- "homepage": "https://symfony.com", +- "time": "2019-04-11T09:48:14+00:00" +- }, +- { +- "name": "symfony/polyfill-ctype", +- "version": "v1.11.0", +- "source": { +- "type": "git", +- "url": "https://github.com/symfony/polyfill-ctype.git", +- "reference": "82ebae02209c21113908c229e9883c419720738a" +- }, +- "dist": { +- "type": "zip", +- "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/82ebae02209c21113908c229e9883c419720738a", +- "reference": "82ebae02209c21113908c229e9883c419720738a", +- "shasum": "" +- }, +- "require": { +- "php": ">=5.3.3" +- }, +- "suggest": { +- "ext-ctype": "For best performance" +- }, +- "type": "library", +- "extra": { +- "branch-alias": { +- "dev-master": "1.11-dev" +- } +- }, +- "autoload": { +- "psr-4": { +- "Symfony\\Polyfill\\Ctype\\": "" ++ "name": "Nicolas Grekas", ++ "email": "p@tchwork.com" + }, +- "files": [ +- "bootstrap.php" +- ] +- }, +- "notification-url": "https://packagist.org/downloads/", +- "license": [ +- "MIT" +- ], +- "authors": [ + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" +- }, +- { +- "name": "Gert de Pagter", +- "email": "backendtea@gmail.com" + } + ], +- "description": "Symfony polyfill for ctype functions", ++ "description": "A set of abstractions extracted out of the Symfony components", + "homepage": "https://symfony.com", + "keywords": [ +- "compatibility", +- "ctype", +- "polyfill", +- "portable" +- ], +- "time": "2019-02-06T07:57:58+00:00" ++ "abstractions", ++ "contracts", ++ "decoupling", ++ "interfaces", ++ "interoperability", ++ "standards" ++ ], ++ "time": "2018-12-05T08:06:11+00:00" + }, + { + "name": "symfony/polyfill-mbstring", +@@ -1171,98 +998,21 @@ + "require": { + "php": ">=5.3.3" + }, +- "suggest": { +- "ext-mbstring": "For best performance" +- }, +- "type": "library", +- "extra": { +- "branch-alias": { +- "dev-master": "1.11-dev" +- } +- }, +- "autoload": { +- "psr-4": { +- "Symfony\\Polyfill\\Mbstring\\": "" +- }, +- "files": [ +- "bootstrap.php" +- ] +- }, +- "notification-url": "https://packagist.org/downloads/", +- "license": [ +- "MIT" +- ], +- "authors": [ +- { +- "name": "Nicolas Grekas", +- "email": "p@tchwork.com" +- }, +- { +- "name": "Symfony Community", +- "homepage": "https://symfony.com/contributors" +- } +- ], +- "description": "Symfony polyfill for the Mbstring extension", +- "homepage": "https://symfony.com", +- "keywords": [ +- "compatibility", +- "mbstring", +- "polyfill", +- "portable", +- "shim" +- ], +- "time": "2019-02-06T07:57:58+00:00" +- }, +- { +- "name": "symfony/translation", +- "version": "v3.4.27", +- "source": { +- "type": "git", +- "url": "https://github.com/symfony/translation.git", +- "reference": "301a5d627220a1c4ee522813b0028653af6c4f54" +- }, +- "dist": { +- "type": "zip", +- "url": "https://api.github.com/repos/symfony/translation/zipball/301a5d627220a1c4ee522813b0028653af6c4f54", +- "reference": "301a5d627220a1c4ee522813b0028653af6c4f54", +- "shasum": "" +- }, +- "require": { +- "php": "^5.5.9|>=7.0.8", +- "symfony/polyfill-mbstring": "~1.0" +- }, +- "conflict": { +- "symfony/config": "<2.8", +- "symfony/dependency-injection": "<3.4", +- "symfony/yaml": "<3.4" +- }, +- "require-dev": { +- "psr/log": "~1.0", +- "symfony/config": "~2.8|~3.0|~4.0", +- "symfony/dependency-injection": "~3.4|~4.0", +- "symfony/finder": "~2.8|~3.0|~4.0", +- "symfony/http-kernel": "~3.4|~4.0", +- "symfony/intl": "^2.8.18|^3.2.5|~4.0", +- "symfony/var-dumper": "~3.4|~4.0", +- "symfony/yaml": "~3.4|~4.0" +- }, +- "suggest": { +- "psr/log-implementation": "To use logging capability in translator", +- "symfony/config": "", +- "symfony/yaml": "" ++ "suggest": { ++ "ext-mbstring": "For best performance" + }, + "type": "library", + "extra": { + "branch-alias": { +- "dev-master": "3.4-dev" ++ "dev-master": "1.11-dev" + } + }, + "autoload": { + "psr-4": { +- "Symfony\\Component\\Translation\\": "" ++ "Symfony\\Polyfill\\Mbstring\\": "" + }, +- "exclude-from-classmap": [ +- "/Tests/" ++ "files": [ ++ "bootstrap.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", +@@ -1271,44 +1021,60 @@ + ], + "authors": [ + { +- "name": "Fabien Potencier", +- "email": "fabien@symfony.com" ++ "name": "Nicolas Grekas", ++ "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], +- "description": "Symfony Translation Component", ++ "description": "Symfony polyfill for the Mbstring extension", + "homepage": "https://symfony.com", +- "time": "2019-05-01T11:10:09+00:00" ++ "keywords": [ ++ "compatibility", ++ "mbstring", ++ "polyfill", ++ "portable", ++ "shim" ++ ], ++ "time": "2019-02-06T07:57:58+00:00" + }, + { +- "name": "symfony/yaml", +- "version": "v3.4.27", ++ "name": "symfony/translation", ++ "version": "v3.4.0", + "source": { + "type": "git", +- "url": "https://github.com/symfony/yaml.git", +- "reference": "212a27b731e5bfb735679d1ffaac82bd6a1dc996" ++ "url": "https://github.com/symfony/translation.git", ++ "reference": "e05b0a5996ad7a35ba3a19ffad8b72c9daa64dfa" + }, + "dist": { + "type": "zip", +- "url": "https://api.github.com/repos/symfony/yaml/zipball/212a27b731e5bfb735679d1ffaac82bd6a1dc996", +- "reference": "212a27b731e5bfb735679d1ffaac82bd6a1dc996", ++ "url": "https://api.github.com/repos/symfony/translation/zipball/e05b0a5996ad7a35ba3a19ffad8b72c9daa64dfa", ++ "reference": "e05b0a5996ad7a35ba3a19ffad8b72c9daa64dfa", + "shasum": "" + }, + "require": { + "php": "^5.5.9|>=7.0.8", +- "symfony/polyfill-ctype": "~1.8" ++ "symfony/polyfill-mbstring": "~1.0" + }, + "conflict": { +- "symfony/console": "<3.4" ++ "symfony/config": "<2.8", ++ "symfony/dependency-injection": "<3.4", ++ "symfony/yaml": "<3.4" + }, + "require-dev": { +- "symfony/console": "~3.4|~4.0" ++ "psr/log": "~1.0", ++ "symfony/config": "~2.8|~3.0|~4.0", ++ "symfony/dependency-injection": "~3.4|~4.0", ++ "symfony/finder": "~2.8|~3.0|~4.0", ++ "symfony/intl": "^2.8.18|^3.2.5|~4.0", ++ "symfony/yaml": "~3.4|~4.0" + }, + "suggest": { +- "symfony/console": "For validating YAML files using the lint command" ++ "psr/log": "To use logging capability in translator", ++ "symfony/config": "", ++ "symfony/yaml": "" + }, + "type": "library", + "extra": { +@@ -1318,7 +1084,7 @@ + }, + "autoload": { + "psr-4": { +- "Symfony\\Component\\Yaml\\": "" ++ "Symfony\\Component\\Translation\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" +@@ -1338,32 +1104,33 @@ + "homepage": "https://symfony.com/contributors" + } + ], +- "description": "Symfony Yaml Component", ++ "description": "Symfony Translation Component", + "homepage": "https://symfony.com", +- "time": "2019-03-25T07:48:46+00:00" ++ "time": "2017-11-27T14:23:00+00:00" + }, + { + "name": "zendframework/zend-code", +- "version": "2.6.3", ++ "version": "3.3.1", + "source": { + "type": "git", + "url": "https://github.com/zendframework/zend-code.git", +- "reference": "95033f061b083e16cdee60530ec260d7d628b887" ++ "reference": "c21db169075c6ec4b342149f446e7b7b724f95eb" + }, + "dist": { + "type": "zip", +- "url": "https://api.github.com/repos/zendframework/zend-code/zipball/95033f061b083e16cdee60530ec260d7d628b887", +- "reference": "95033f061b083e16cdee60530ec260d7d628b887", ++ "url": "https://api.github.com/repos/zendframework/zend-code/zipball/c21db169075c6ec4b342149f446e7b7b724f95eb", ++ "reference": "c21db169075c6ec4b342149f446e7b7b724f95eb", + "shasum": "" + }, + "require": { +- "php": "^5.5 || 7.0.0 - 7.0.4 || ^7.0.6", ++ "php": "^7.1", + "zendframework/zend-eventmanager": "^2.6 || ^3.0" + }, + "require-dev": { + "doctrine/annotations": "~1.0", +- "fabpot/php-cs-fixer": "1.7.*", +- "phpunit/phpunit": "^4.8.21", ++ "ext-phar": "*", ++ "phpunit/phpunit": "^6.2.3", ++ "zendframework/zend-coding-standard": "^1.0.0", + "zendframework/zend-stdlib": "^2.7 || ^3.0" + }, + "suggest": { +@@ -1373,8 +1140,8 @@ + "type": "library", + "extra": { + "branch-alias": { +- "dev-master": "2.6-dev", +- "dev-develop": "2.7-dev" ++ "dev-master": "3.3.x-dev", ++ "dev-develop": "3.4.x-dev" + } + }, + "autoload": { +@@ -1392,7 +1159,7 @@ + "code", + "zf2" + ], +- "time": "2016-04-20T17:26:42+00:00" ++ "time": "2018-08-13T20:36:59+00:00" + }, + { + "name": "zendframework/zend-eventmanager", +@@ -1557,28 +1324,151 @@ + "time": "2019-01-28T20:25:53+00:00" + }, + { ++ "name": "dflydev/markdown", ++ "version": "v1.0.0", ++ "source": { ++ "type": "git", ++ "url": "https://github.com/dflydev/dflydev-markdown.git", ++ "reference": "76501a808522dbe40a5a71d272bd08d54cbae03d" ++ }, ++ "dist": { ++ "type": "zip", ++ "url": "https://api.github.com/repos/dflydev/dflydev-markdown/zipball/76501a808522dbe40a5a71d272bd08d54cbae03d", ++ "reference": "76501a808522dbe40a5a71d272bd08d54cbae03d", ++ "shasum": "" ++ }, ++ "require": { ++ "php": ">=5.3" ++ }, ++ "type": "library", ++ "autoload": { ++ "psr-0": { ++ "dflydev\\markdown": "src" ++ } ++ }, ++ "notification-url": "https://packagist.org/downloads/", ++ "license": [ ++ "New BSD License" ++ ], ++ "authors": [ ++ { ++ "name": "Dragonfly Development Inc.", ++ "email": "info@dflydev.com", ++ "homepage": "http://dflydev.com" ++ }, ++ { ++ "name": "Beau Simensen", ++ "email": "beau@dflydev.com", ++ "homepage": "http://beausimensen.com" ++ }, ++ { ++ "name": "Michel Fortin", ++ "homepage": "http://michelf.com" ++ }, ++ { ++ "name": "John Gruber", ++ "homepage": "http://daringfireball.net" ++ } ++ ], ++ "description": "PHP Markdown & Extra", ++ "homepage": "http://github.com/dflydev/dflydev-markdown", ++ "keywords": [ ++ "markdown" ++ ], ++ "abandoned": "michelf/php-markdown", ++ "time": "2012-01-02T23:11:32+00:00" ++ }, ++ { ++ "name": "doctrine/annotations", ++ "version": "v1.6.1", ++ "source": { ++ "type": "git", ++ "url": "https://github.com/doctrine/annotations.git", ++ "reference": "53120e0eb10355388d6ccbe462f1fea34ddadb24" ++ }, ++ "dist": { ++ "type": "zip", ++ "url": "https://api.github.com/repos/doctrine/annotations/zipball/53120e0eb10355388d6ccbe462f1fea34ddadb24", ++ "reference": "53120e0eb10355388d6ccbe462f1fea34ddadb24", ++ "shasum": "" ++ }, ++ "require": { ++ "doctrine/lexer": "1.*", ++ "php": "^7.1" ++ }, ++ "require-dev": { ++ "doctrine/cache": "1.*", ++ "phpunit/phpunit": "^6.4" ++ }, ++ "type": "library", ++ "extra": { ++ "branch-alias": { ++ "dev-master": "1.6.x-dev" ++ } ++ }, ++ "autoload": { ++ "psr-4": { ++ "Doctrine\\Common\\Annotations\\": "lib/Doctrine/Common/Annotations" ++ } ++ }, ++ "notification-url": "https://packagist.org/downloads/", ++ "license": [ ++ "MIT" ++ ], ++ "authors": [ ++ { ++ "name": "Roman Borschel", ++ "email": "roman@code-factory.org" ++ }, ++ { ++ "name": "Benjamin Eberlei", ++ "email": "kontakt@beberlei.de" ++ }, ++ { ++ "name": "Guilherme Blanco", ++ "email": "guilhermeblanco@gmail.com" ++ }, ++ { ++ "name": "Jonathan Wage", ++ "email": "jonwage@gmail.com" ++ }, ++ { ++ "name": "Johannes Schmitt", ++ "email": "schmittjoh@gmail.com" ++ } ++ ], ++ "description": "Docblock Annotations Parser", ++ "homepage": "http://www.doctrine-project.org", ++ "keywords": [ ++ "annotations", ++ "docblock", ++ "parser" ++ ], ++ "time": "2019-03-25T19:12:02+00:00" ++ }, ++ { + "name": "doctrine/instantiator", +- "version": "1.0.5", ++ "version": "1.0.2", + "source": { + "type": "git", + "url": "https://github.com/doctrine/instantiator.git", +- "reference": "8e884e78f9f0eb1329e445619e04456e64d8051d" ++ "reference": "26404e0c90565b614ee76b988b9bc8790d77f590" + }, + "dist": { + "type": "zip", +- "url": "https://api.github.com/repos/doctrine/instantiator/zipball/8e884e78f9f0eb1329e445619e04456e64d8051d", +- "reference": "8e884e78f9f0eb1329e445619e04456e64d8051d", ++ "url": "https://api.github.com/repos/doctrine/instantiator/zipball/26404e0c90565b614ee76b988b9bc8790d77f590", ++ "reference": "26404e0c90565b614ee76b988b9bc8790d77f590", + "shasum": "" + }, + "require": { +- "php": ">=5.3,<8.0-DEV" ++ "php": "~5.3" + }, + "require-dev": { + "athletic/athletic": "~0.1.8", + "ext-pdo": "*", + "ext-phar": "*", + "phpunit/phpunit": "~4.0", +- "squizlabs/php_codesniffer": "~2.0" ++ "squizlabs/php_codesniffer": "2.0.*@ALPHA" + }, + "type": "library", + "extra": { +@@ -1587,8 +1477,8 @@ + } + }, + "autoload": { +- "psr-4": { +- "Doctrine\\Instantiator\\": "src/Doctrine/Instantiator/" ++ "psr-0": { ++ "Doctrine\\Instantiator\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", +@@ -1608,7 +1498,7 @@ + "constructor", + "instantiate" + ], +- "time": "2015-06-14T21:17:01+00:00" ++ "time": "2014-08-25T15:09:25+00:00" + }, + { + "name": "friendsofphp/php-cs-fixer", +@@ -1700,40 +1590,37 @@ + }, + { + "name": "myclabs/deep-copy", +- "version": "1.7.0", ++ "version": "1.3.0", + "source": { + "type": "git", + "url": "https://github.com/myclabs/DeepCopy.git", +- "reference": "3b8a3a99ba1f6a3952ac2747d989303cbd6b7a3e" ++ "reference": "96fbdc07635989c35c5a1912379f4c4b2ab15fd5" + }, + "dist": { + "type": "zip", +- "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/3b8a3a99ba1f6a3952ac2747d989303cbd6b7a3e", +- "reference": "3b8a3a99ba1f6a3952ac2747d989303cbd6b7a3e", ++ "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/96fbdc07635989c35c5a1912379f4c4b2ab15fd5", ++ "reference": "96fbdc07635989c35c5a1912379f4c4b2ab15fd5", + "shasum": "" + }, + "require": { +- "php": "^5.6 || ^7.0" ++ "php": ">=5.4.0" + }, + "require-dev": { +- "doctrine/collections": "^1.0", +- "doctrine/common": "^2.6", +- "phpunit/phpunit": "^4.1" ++ "doctrine/collections": "1.*", ++ "phpunit/phpunit": "~4.1" + }, + "type": "library", + "autoload": { + "psr-4": { + "DeepCopy\\": "src/DeepCopy/" +- }, +- "files": [ +- "src/DeepCopy/deep_copy.php" +- ] ++ } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "Create deep copies (clones) of your objects", ++ "homepage": "https://github.com/myclabs/DeepCopy", + "keywords": [ + "clone", + "copy", +@@ -1741,238 +1628,134 @@ + "object", + "object graph" + ], +- "time": "2017-10-19T19:58:43+00:00" ++ "time": "2015-03-21T22:40:23+00:00" + }, + { + "name": "paragonie/random_compat", +- "version": "v2.0.18", ++ "version": "v9.99.99", + "source": { + "type": "git", + "url": "https://github.com/paragonie/random_compat.git", +- "reference": "0a58ef6e3146256cc3dc7cc393927bcc7d1b72db" +- }, +- "dist": { +- "type": "zip", +- "url": "https://api.github.com/repos/paragonie/random_compat/zipball/0a58ef6e3146256cc3dc7cc393927bcc7d1b72db", +- "reference": "0a58ef6e3146256cc3dc7cc393927bcc7d1b72db", +- "shasum": "" +- }, +- "require": { +- "php": ">=5.2.0" +- }, +- "require-dev": { +- "phpunit/phpunit": "4.*|5.*" +- }, +- "suggest": { +- "ext-libsodium": "Provides a modern crypto API that can be used to generate random bytes." +- }, +- "type": "library", +- "autoload": { +- "files": [ +- "lib/random.php" +- ] +- }, +- "notification-url": "https://packagist.org/downloads/", +- "license": [ +- "MIT" +- ], +- "authors": [ +- { +- "name": "Paragon Initiative Enterprises", +- "email": "security@paragonie.com", +- "homepage": "https://paragonie.com" +- } +- ], +- "description": "PHP 5.x polyfill for random_bytes() and random_int() from PHP 7", +- "keywords": [ +- "csprng", +- "polyfill", +- "pseudorandom", +- "random" +- ], +- "time": "2019-01-03T20:59:08+00:00" +- }, +- { +- "name": "php-cs-fixer/diff", +- "version": "v1.3.0", +- "source": { +- "type": "git", +- "url": "https://github.com/PHP-CS-Fixer/diff.git", +- "reference": "78bb099e9c16361126c86ce82ec4405ebab8e756" +- }, +- "dist": { +- "type": "zip", +- "url": "https://api.github.com/repos/PHP-CS-Fixer/diff/zipball/78bb099e9c16361126c86ce82ec4405ebab8e756", +- "reference": "78bb099e9c16361126c86ce82ec4405ebab8e756", +- "shasum": "" +- }, +- "require": { +- "php": "^5.6 || ^7.0" +- }, +- "require-dev": { +- "phpunit/phpunit": "^5.7.23 || ^6.4.3", +- "symfony/process": "^3.3" +- }, +- "type": "library", +- "autoload": { +- "classmap": [ +- "src/" +- ] +- }, +- "notification-url": "https://packagist.org/downloads/", +- "license": [ +- "BSD-3-Clause" +- ], +- "authors": [ +- { +- "name": "Kore Nordmann", +- "email": "mail@kore-nordmann.de" +- }, +- { +- "name": "Sebastian Bergmann", +- "email": "sebastian@phpunit.de" +- }, +- { +- "name": "SpacePossum" +- } +- ], +- "description": "sebastian/diff v2 backport support for PHP5.6", +- "homepage": "https://github.com/PHP-CS-Fixer", +- "keywords": [ +- "diff" +- ], +- "time": "2018-02-15T16:58:55+00:00" +- }, +- { +- "name": "phpdocumentor/reflection-common", +- "version": "1.0.1", +- "source": { +- "type": "git", +- "url": "https://github.com/phpDocumentor/ReflectionCommon.git", +- "reference": "21bdeb5f65d7ebf9f43b1b25d404f87deab5bfb6" ++ "reference": "84b4dfb120c6f9b4ff7b3685f9b8f1aa365a0c95" + }, + "dist": { + "type": "zip", +- "url": "https://api.github.com/repos/phpDocumentor/ReflectionCommon/zipball/21bdeb5f65d7ebf9f43b1b25d404f87deab5bfb6", +- "reference": "21bdeb5f65d7ebf9f43b1b25d404f87deab5bfb6", ++ "url": "https://api.github.com/repos/paragonie/random_compat/zipball/84b4dfb120c6f9b4ff7b3685f9b8f1aa365a0c95", ++ "reference": "84b4dfb120c6f9b4ff7b3685f9b8f1aa365a0c95", + "shasum": "" + }, + "require": { +- "php": ">=5.5" ++ "php": "^7" + }, + "require-dev": { +- "phpunit/phpunit": "^4.6" +- }, +- "type": "library", +- "extra": { +- "branch-alias": { +- "dev-master": "1.0.x-dev" +- } +- }, +- "autoload": { +- "psr-4": { +- "phpDocumentor\\Reflection\\": [ +- "src" +- ] +- } ++ "phpunit/phpunit": "4.*|5.*", ++ "vimeo/psalm": "^1" + }, ++ "suggest": { ++ "ext-libsodium": "Provides a modern crypto API that can be used to generate random bytes." ++ }, ++ "type": "library", + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { +- "name": "Jaap van Otterdijk", +- "email": "opensource@ijaap.nl" ++ "name": "Paragon Initiative Enterprises", ++ "email": "security@paragonie.com", ++ "homepage": "https://paragonie.com" + } + ], +- "description": "Common reflection classes used by phpdocumentor to reflect the code structure", +- "homepage": "http://www.phpdoc.org", ++ "description": "PHP 5.x polyfill for random_bytes() and random_int() from PHP 7", + "keywords": [ +- "FQSEN", +- "phpDocumentor", +- "phpdoc", +- "reflection", +- "static analysis" ++ "csprng", ++ "polyfill", ++ "pseudorandom", ++ "random" + ], +- "time": "2017-09-11T18:02:19+00:00" ++ "time": "2018-07-02T15:55:56+00:00" + }, + { +- "name": "phpdocumentor/reflection-docblock", +- "version": "3.3.2", ++ "name": "php-cs-fixer/diff", ++ "version": "v1.3.0", + "source": { + "type": "git", +- "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git", +- "reference": "bf329f6c1aadea3299f08ee804682b7c45b326a2" ++ "url": "https://github.com/PHP-CS-Fixer/diff.git", ++ "reference": "78bb099e9c16361126c86ce82ec4405ebab8e756" + }, + "dist": { + "type": "zip", +- "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/bf329f6c1aadea3299f08ee804682b7c45b326a2", +- "reference": "bf329f6c1aadea3299f08ee804682b7c45b326a2", ++ "url": "https://api.github.com/repos/PHP-CS-Fixer/diff/zipball/78bb099e9c16361126c86ce82ec4405ebab8e756", ++ "reference": "78bb099e9c16361126c86ce82ec4405ebab8e756", + "shasum": "" + }, + "require": { +- "php": "^5.6 || ^7.0", +- "phpdocumentor/reflection-common": "^1.0.0", +- "phpdocumentor/type-resolver": "^0.4.0", +- "webmozart/assert": "^1.0" ++ "php": "^5.6 || ^7.0" + }, + "require-dev": { +- "mockery/mockery": "^0.9.4", +- "phpunit/phpunit": "^4.4" ++ "phpunit/phpunit": "^5.7.23 || ^6.4.3", ++ "symfony/process": "^3.3" + }, + "type": "library", + "autoload": { +- "psr-4": { +- "phpDocumentor\\Reflection\\": [ +- "src/" +- ] +- } ++ "classmap": [ ++ "src/" ++ ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ +- "MIT" ++ "BSD-3-Clause" + ], + "authors": [ + { +- "name": "Mike van Riel", +- "email": "me@mikevanriel.com" ++ "name": "Kore Nordmann", ++ "email": "mail@kore-nordmann.de" ++ }, ++ { ++ "name": "Sebastian Bergmann", ++ "email": "sebastian@phpunit.de" ++ }, ++ { ++ "name": "SpacePossum" + } + ], +- "description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.", +- "time": "2017-11-10T14:09:06+00:00" ++ "description": "sebastian/diff v2 backport support for PHP5.6", ++ "homepage": "https://github.com/PHP-CS-Fixer", ++ "keywords": [ ++ "diff" ++ ], ++ "time": "2018-02-15T16:58:55+00:00" + }, + { +- "name": "phpdocumentor/type-resolver", +- "version": "0.4.0", ++ "name": "phpdocumentor/reflection-docblock", ++ "version": "2.0.0", + "source": { + "type": "git", +- "url": "https://github.com/phpDocumentor/TypeResolver.git", +- "reference": "9c977708995954784726e25d0cd1dddf4e65b0f7" ++ "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git", ++ "reference": "66ae84e9d7c8ea85c979cb65977bd8e608baf0c5" + }, + "dist": { + "type": "zip", +- "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/9c977708995954784726e25d0cd1dddf4e65b0f7", +- "reference": "9c977708995954784726e25d0cd1dddf4e65b0f7", ++ "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/66ae84e9d7c8ea85c979cb65977bd8e608baf0c5", ++ "reference": "66ae84e9d7c8ea85c979cb65977bd8e608baf0c5", + "shasum": "" + }, + "require": { +- "php": "^5.5 || ^7.0", +- "phpdocumentor/reflection-common": "^1.0" ++ "dflydev/markdown": "1.0.*", ++ "php": ">=5.3.3" + }, + "require-dev": { +- "mockery/mockery": "^0.9.4", +- "phpunit/phpunit": "^5.2||^4.8.24" ++ "phpunit/phpunit": "3.7.*@stable" + }, + "type": "library", + "extra": { + "branch-alias": { +- "dev-master": "1.0.x-dev" ++ "dev-master": "2.0.x-dev" + } + }, + "autoload": { +- "psr-4": { +- "phpDocumentor\\Reflection\\": [ ++ "psr-0": { ++ "phpDocumentor": [ + "src/" + ] + } +@@ -1984,40 +1767,36 @@ + "authors": [ + { + "name": "Mike van Riel", +- "email": "me@mikevanriel.com" ++ "email": "mike.vanriel@naenius.com" + } + ], +- "time": "2017-07-14T14:27:02+00:00" ++ "time": "2013-08-07T11:04:22+00:00" + }, + { + "name": "phpspec/prophecy", +- "version": "1.8.0", ++ "version": "v1.3.1", + "source": { + "type": "git", + "url": "https://github.com/phpspec/prophecy.git", +- "reference": "4ba436b55987b4bf311cb7c6ba82aa528aac0a06" ++ "reference": "9ca52329bcdd1500de24427542577ebf3fc2f1c9" + }, + "dist": { + "type": "zip", +- "url": "https://api.github.com/repos/phpspec/prophecy/zipball/4ba436b55987b4bf311cb7c6ba82aa528aac0a06", +- "reference": "4ba436b55987b4bf311cb7c6ba82aa528aac0a06", ++ "url": "https://api.github.com/repos/phpspec/prophecy/zipball/9ca52329bcdd1500de24427542577ebf3fc2f1c9", ++ "reference": "9ca52329bcdd1500de24427542577ebf3fc2f1c9", + "shasum": "" + }, + "require": { +- "doctrine/instantiator": "^1.0.2", +- "php": "^5.3|^7.0", +- "phpdocumentor/reflection-docblock": "^2.0|^3.0.2|^4.0", +- "sebastian/comparator": "^1.1|^2.0|^3.0", +- "sebastian/recursion-context": "^1.0|^2.0|^3.0" ++ "doctrine/instantiator": "~1.0,>=1.0.2", ++ "phpdocumentor/reflection-docblock": "~2.0" + }, + "require-dev": { +- "phpspec/phpspec": "^2.5|^3.2", +- "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.5 || ^7.1" ++ "phpspec/phpspec": "~2.0" + }, + "type": "library", + "extra": { + "branch-alias": { +- "dev-master": "1.8.x-dev" ++ "dev-master": "1.2.x-dev" + } + }, + "autoload": { +@@ -2041,7 +1820,7 @@ + } + ], + "description": "Highly opinionated mocking framework for PHP 5.3+", +- "homepage": "https://github.com/phpspec/prophecy", ++ "homepage": "http://phpspec.org", + "keywords": [ + "Double", + "Dummy", +@@ -2050,39 +1829,39 @@ + "spy", + "stub" + ], +- "time": "2018-08-05T17:53:17+00:00" ++ "time": "2014-11-17T16:23:49+00:00" + }, + { + "name": "phpunit/php-code-coverage", +- "version": "4.0.8", ++ "version": "4.0.3", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/php-code-coverage.git", +- "reference": "ef7b2f56815df854e66ceaee8ebe9393ae36a40d" ++ "reference": "903fd6318d0a90b4770a009ff73e4a4e9c437929" + }, + "dist": { + "type": "zip", +- "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/ef7b2f56815df854e66ceaee8ebe9393ae36a40d", +- "reference": "ef7b2f56815df854e66ceaee8ebe9393ae36a40d", ++ "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/903fd6318d0a90b4770a009ff73e4a4e9c437929", ++ "reference": "903fd6318d0a90b4770a009ff73e4a4e9c437929", + "shasum": "" + }, + "require": { +- "ext-dom": "*", +- "ext-xmlwriter": "*", + "php": "^5.6 || ^7.0", +- "phpunit/php-file-iterator": "^1.3", +- "phpunit/php-text-template": "^1.2", +- "phpunit/php-token-stream": "^1.4.2 || ^2.0", +- "sebastian/code-unit-reverse-lookup": "^1.0", ++ "phpunit/php-file-iterator": "~1.3", ++ "phpunit/php-text-template": "~1.2", ++ "phpunit/php-token-stream": "^1.4.2", ++ "sebastian/code-unit-reverse-lookup": "~1.0", + "sebastian/environment": "^1.3.2 || ^2.0", +- "sebastian/version": "^1.0 || ^2.0" ++ "sebastian/version": "~1.0|~2.0" + }, + "require-dev": { +- "ext-xdebug": "^2.1.4", +- "phpunit/phpunit": "^5.7" ++ "ext-xdebug": ">=2.1.4", ++ "phpunit/phpunit": "^5.4" + }, + "suggest": { +- "ext-xdebug": "^2.5.1" ++ "ext-dom": "*", ++ "ext-xdebug": ">=2.4.0", ++ "ext-xmlwriter": "*" + }, + "type": "library", + "extra": { +@@ -2113,20 +1892,20 @@ + "testing", + "xunit" + ], +- "time": "2017-04-02T07:44:40+00:00" ++ "time": "2016-11-28T16:00:31+00:00" + }, + { + "name": "phpunit/php-file-iterator", +- "version": "1.4.5", ++ "version": "1.4.0", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/php-file-iterator.git", +- "reference": "730b01bc3e867237eaac355e06a36b85dd93a8b4" ++ "reference": "a923bb15680d0089e2316f7a4af8f437046e96bb" + }, + "dist": { + "type": "zip", +- "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/730b01bc3e867237eaac355e06a36b85dd93a8b4", +- "reference": "730b01bc3e867237eaac355e06a36b85dd93a8b4", ++ "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/a923bb15680d0089e2316f7a4af8f437046e96bb", ++ "reference": "a923bb15680d0089e2316f7a4af8f437046e96bb", + "shasum": "" + }, + "require": { +@@ -2160,20 +1939,20 @@ + "filesystem", + "iterator" + ], +- "time": "2017-11-27T13:52:08+00:00" ++ "time": "2015-04-02T05:19:05+00:00" + }, + { + "name": "phpunit/php-text-template", +- "version": "1.2.1", ++ "version": "1.2.0", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/php-text-template.git", +- "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686" ++ "reference": "206dfefc0ffe9cebf65c413e3d0e809c82fbf00a" + }, + "dist": { + "type": "zip", +- "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/31f8b717e51d9a2afca6c9f046f5d69fc27c8686", +- "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686", ++ "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/206dfefc0ffe9cebf65c413e3d0e809c82fbf00a", ++ "reference": "206dfefc0ffe9cebf65c413e3d0e809c82fbf00a", + "shasum": "" + }, + "require": { +@@ -2182,17 +1961,20 @@ + "type": "library", + "autoload": { + "classmap": [ +- "src/" ++ "Text/" + ] + }, + "notification-url": "https://packagist.org/downloads/", ++ "include-path": [ ++ "" ++ ], + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", +- "email": "sebastian@phpunit.de", ++ "email": "sb@sebastian-bergmann.de", + "role": "lead" + } + ], +@@ -2201,34 +1983,26 @@ + "keywords": [ + "template" + ], +- "time": "2015-06-21T13:50:34+00:00" ++ "time": "2014-01-30T17:20:04+00:00" + }, + { + "name": "phpunit/php-timer", +- "version": "1.0.9", ++ "version": "1.0.6", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/php-timer.git", +- "reference": "3dcf38ca72b158baf0bc245e9184d3fdffa9c46f" ++ "reference": "83fe1bdc5d47658b727595c14da140da92b3d66d" + }, + "dist": { + "type": "zip", +- "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/3dcf38ca72b158baf0bc245e9184d3fdffa9c46f", +- "reference": "3dcf38ca72b158baf0bc245e9184d3fdffa9c46f", ++ "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/83fe1bdc5d47658b727595c14da140da92b3d66d", ++ "reference": "83fe1bdc5d47658b727595c14da140da92b3d66d", + "shasum": "" + }, + "require": { +- "php": "^5.3.3 || ^7.0" +- }, +- "require-dev": { +- "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.0" ++ "php": ">=5.3.3" + }, + "type": "library", +- "extra": { +- "branch-alias": { +- "dev-master": "1.0-dev" +- } +- }, + "autoload": { + "classmap": [ + "src/" +@@ -2250,20 +2024,20 @@ + "keywords": [ + "timer" + ], +- "time": "2017-02-26T11:10:40+00:00" ++ "time": "2015-06-13T07:35:30+00:00" + }, + { + "name": "phpunit/php-token-stream", +- "version": "1.4.12", ++ "version": "1.4.2", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/php-token-stream.git", +- "reference": "1ce90ba27c42e4e44e6d8458241466380b51fa16" ++ "reference": "db63be1159c81df649cd0260e30249a586d4129e" + }, + "dist": { + "type": "zip", +- "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/1ce90ba27c42e4e44e6d8458241466380b51fa16", +- "reference": "1ce90ba27c42e4e44e6d8458241466380b51fa16", ++ "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/db63be1159c81df649cd0260e30249a586d4129e", ++ "reference": "db63be1159c81df649cd0260e30249a586d4129e", + "shasum": "" + }, + "require": { +@@ -2299,20 +2073,20 @@ + "keywords": [ + "tokenizer" + ], +- "time": "2017-12-04T08:55:13+00:00" ++ "time": "2015-06-12T07:34:24+00:00" + }, + { + "name": "phpunit/phpunit", +- "version": "5.7.27", ++ "version": "5.7.0", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/phpunit.git", +- "reference": "b7803aeca3ccb99ad0a506fa80b64cd6a56bbc0c" ++ "reference": "00d72b8dbd2bb7d6f02a820e6db5cb70df6ac55c" + }, + "dist": { + "type": "zip", +- "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/b7803aeca3ccb99ad0a506fa80b64cd6a56bbc0c", +- "reference": "b7803aeca3ccb99ad0a506fa80b64cd6a56bbc0c", ++ "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/00d72b8dbd2bb7d6f02a820e6db5cb70df6ac55c", ++ "reference": "00d72b8dbd2bb7d6f02a820e6db5cb70df6ac55c", + "shasum": "" + }, + "require": { +@@ -2323,21 +2097,21 @@ + "ext-xml": "*", + "myclabs/deep-copy": "~1.3", + "php": "^5.6 || ^7.0", +- "phpspec/prophecy": "^1.6.2", +- "phpunit/php-code-coverage": "^4.0.4", ++ "phpspec/prophecy": "^1.3.1", ++ "phpunit/php-code-coverage": "^4.0.3", + "phpunit/php-file-iterator": "~1.4", + "phpunit/php-text-template": "~1.2", + "phpunit/php-timer": "^1.0.6", + "phpunit/phpunit-mock-objects": "^3.2", +- "sebastian/comparator": "^1.2.4", +- "sebastian/diff": "^1.4.3", ++ "sebastian/comparator": "~1.2.2", ++ "sebastian/diff": "~1.2", + "sebastian/environment": "^1.3.4 || ^2.0", + "sebastian/exporter": "~2.0", +- "sebastian/global-state": "^1.1", ++ "sebastian/global-state": "~1.0", + "sebastian/object-enumerator": "~2.0", + "sebastian/resource-operations": "~1.0", +- "sebastian/version": "^1.0.6|^2.0.1", +- "symfony/yaml": "~2.1|~3.0|~4.0" ++ "sebastian/version": "~1.0|~2.0", ++ "symfony/yaml": "~2.1|~3.0" + }, + "conflict": { + "phpdocumentor/reflection-docblock": "3.0.2" +@@ -2381,20 +2155,20 @@ + "testing", + "xunit" + ], +- "time": "2018-02-01T05:50:59+00:00" ++ "time": "2016-12-01T17:04:00+00:00" + }, + { + "name": "phpunit/phpunit-mock-objects", +- "version": "3.4.4", ++ "version": "3.4.1", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/phpunit-mock-objects.git", +- "reference": "a23b761686d50a560cc56233b9ecf49597cc9118" ++ "reference": "45026c8383187ad1dcb14fbfec77dced265b9cfc" + }, + "dist": { + "type": "zip", +- "url": "https://api.github.com/repos/sebastianbergmann/phpunit-mock-objects/zipball/a23b761686d50a560cc56233b9ecf49597cc9118", +- "reference": "a23b761686d50a560cc56233b9ecf49597cc9118", ++ "url": "https://api.github.com/repos/sebastianbergmann/phpunit-mock-objects/zipball/45026c8383187ad1dcb14fbfec77dced265b9cfc", ++ "reference": "45026c8383187ad1dcb14fbfec77dced265b9cfc", + "shasum": "" + }, + "require": { +@@ -2441,7 +2215,54 @@ + "xunit" + ], + "abandoned": true, +- "time": "2017-06-30T09:13:00+00:00" ++ "time": "2016-11-19T09:07:46+00:00" ++ }, ++ { ++ "name": "psr/log", ++ "version": "1.1.0", ++ "source": { ++ "type": "git", ++ "url": "https://github.com/php-fig/log.git", ++ "reference": "6c001f1daafa3a3ac1d8ff69ee4db8e799a654dd" ++ }, ++ "dist": { ++ "type": "zip", ++ "url": "https://api.github.com/repos/php-fig/log/zipball/6c001f1daafa3a3ac1d8ff69ee4db8e799a654dd", ++ "reference": "6c001f1daafa3a3ac1d8ff69ee4db8e799a654dd", ++ "shasum": "" ++ }, ++ "require": { ++ "php": ">=5.3.0" ++ }, ++ "type": "library", ++ "extra": { ++ "branch-alias": { ++ "dev-master": "1.0.x-dev" ++ } ++ }, ++ "autoload": { ++ "psr-4": { ++ "Psr\\Log\\": "Psr/Log/" ++ } ++ }, ++ "notification-url": "https://packagist.org/downloads/", ++ "license": [ ++ "MIT" ++ ], ++ "authors": [ ++ { ++ "name": "PHP-FIG", ++ "homepage": "http://www.php-fig.org/" ++ } ++ ], ++ "description": "Common interface for logging libraries", ++ "homepage": "https://github.com/php-fig/log", ++ "keywords": [ ++ "log", ++ "psr", ++ "psr-3" ++ ], ++ "time": "2018-11-20T15:27:04+00:00" + }, + { + "name": "roave/security-advisories", +@@ -2653,23 +2474,23 @@ + }, + { + "name": "sebastian/code-unit-reverse-lookup", +- "version": "1.0.1", ++ "version": "1.0.0", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/code-unit-reverse-lookup.git", +- "reference": "4419fcdb5eabb9caa61a27c7a1db532a6b55dd18" ++ "reference": "c36f5e7cfce482fde5bf8d10d41a53591e0198fe" + }, + "dist": { + "type": "zip", +- "url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/4419fcdb5eabb9caa61a27c7a1db532a6b55dd18", +- "reference": "4419fcdb5eabb9caa61a27c7a1db532a6b55dd18", ++ "url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/c36f5e7cfce482fde5bf8d10d41a53591e0198fe", ++ "reference": "c36f5e7cfce482fde5bf8d10d41a53591e0198fe", + "shasum": "" + }, + "require": { +- "php": "^5.6 || ^7.0" ++ "php": ">=5.6" + }, + "require-dev": { +- "phpunit/phpunit": "^5.7 || ^6.0" ++ "phpunit/phpunit": "~5" + }, + "type": "library", + "extra": { +@@ -2694,20 +2515,20 @@ + ], + "description": "Looks up which function or method a line of code belongs to", + "homepage": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/", +- "time": "2017-03-04T06:30:41+00:00" ++ "time": "2016-02-13T06:45:14+00:00" + }, + { + "name": "sebastian/comparator", +- "version": "1.2.4", ++ "version": "1.2.2", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/comparator.git", +- "reference": "2b7424b55f5047b47ac6e5ccb20b2aea4011d9be" ++ "reference": "6a1ed12e8b2409076ab22e3897126211ff8b1f7f" + }, + "dist": { + "type": "zip", +- "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/2b7424b55f5047b47ac6e5ccb20b2aea4011d9be", +- "reference": "2b7424b55f5047b47ac6e5ccb20b2aea4011d9be", ++ "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/6a1ed12e8b2409076ab22e3897126211ff8b1f7f", ++ "reference": "6a1ed12e8b2409076ab22e3897126211ff8b1f7f", + "shasum": "" + }, + "require": { +@@ -2758,7 +2579,7 @@ + "compare", + "equality" + ], +- "time": "2017-01-29T09:50:25+00:00" ++ "time": "2016-11-19T09:18:40+00:00" + }, + { + "name": "sebastian/diff", +@@ -2814,28 +2635,28 @@ + }, + { + "name": "sebastian/environment", +- "version": "2.0.0", ++ "version": "1.3.4", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/environment.git", +- "reference": "5795ffe5dc5b02460c3e34222fee8cbe245d8fac" ++ "reference": "22aa49baa48886f40b060e061a7967436f44a249" + }, + "dist": { + "type": "zip", +- "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/5795ffe5dc5b02460c3e34222fee8cbe245d8fac", +- "reference": "5795ffe5dc5b02460c3e34222fee8cbe245d8fac", ++ "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/22aa49baa48886f40b060e061a7967436f44a249", ++ "reference": "22aa49baa48886f40b060e061a7967436f44a249", + "shasum": "" + }, + "require": { +- "php": "^5.6 || ^7.0" ++ "php": ">=5.3.3" + }, + "require-dev": { +- "phpunit/phpunit": "^5.0" ++ "phpunit/phpunit": "~4.4" + }, + "type": "library", + "extra": { + "branch-alias": { +- "dev-master": "2.0.x-dev" ++ "dev-master": "1.3.x-dev" + } + }, + "autoload": { +@@ -2860,7 +2681,7 @@ + "environment", + "hhvm" + ], +- "time": "2016-11-26T07:53:53+00:00" ++ "time": "2016-02-26T11:40:57+00:00" + }, + { + "name": "sebastian/exporter", +@@ -2931,16 +2752,16 @@ + }, + { + "name": "sebastian/global-state", +- "version": "1.1.1", ++ "version": "1.0.0", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/global-state.git", +- "reference": "bc37d50fea7d017d3d340f230811c9f1d7280af4" ++ "reference": "c7428acdb62ece0a45e6306f1ae85e1c05b09c01" + }, + "dist": { + "type": "zip", +- "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/bc37d50fea7d017d3d340f230811c9f1d7280af4", +- "reference": "bc37d50fea7d017d3d340f230811c9f1d7280af4", ++ "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/c7428acdb62ece0a45e6306f1ae85e1c05b09c01", ++ "reference": "c7428acdb62ece0a45e6306f1ae85e1c05b09c01", + "shasum": "" + }, + "require": { +@@ -2978,20 +2799,20 @@ + "keywords": [ + "global state" + ], +- "time": "2015-10-12T03:26:01+00:00" ++ "time": "2014-10-06T09:23:50+00:00" + }, + { + "name": "sebastian/object-enumerator", +- "version": "2.0.1", ++ "version": "2.0.0", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/object-enumerator.git", +- "reference": "1311872ac850040a79c3c058bea3e22d0f09cbb7" ++ "reference": "96f8a3f257b69e8128ad74d3a7fd464bcbaa3b35" + }, + "dist": { + "type": "zip", +- "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/1311872ac850040a79c3c058bea3e22d0f09cbb7", +- "reference": "1311872ac850040a79c3c058bea3e22d0f09cbb7", ++ "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/96f8a3f257b69e8128ad74d3a7fd464bcbaa3b35", ++ "reference": "96f8a3f257b69e8128ad74d3a7fd464bcbaa3b35", + "shasum": "" + }, + "require": { +@@ -3024,7 +2845,7 @@ + ], + "description": "Traverses array structures and object graphs to enumerate all referenced objects", + "homepage": "https://github.com/sebastianbergmann/object-enumerator/", +- "time": "2017-02-18T15:18:39+00:00" ++ "time": "2016-11-19T07:35:10+00:00" + }, + { + "name": "sebastian/recursion-context", +@@ -3123,27 +2944,19 @@ + }, + { + "name": "sebastian/version", +- "version": "2.0.1", ++ "version": "1.0.0", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/version.git", +- "reference": "99732be0ddb3361e16ad77b68ba41efc8e979019" ++ "reference": "16b021aed448b654ae05846e394e057e9a6f04cb" + }, + "dist": { + "type": "zip", +- "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/99732be0ddb3361e16ad77b68ba41efc8e979019", +- "reference": "99732be0ddb3361e16ad77b68ba41efc8e979019", ++ "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/16b021aed448b654ae05846e394e057e9a6f04cb", ++ "reference": "16b021aed448b654ae05846e394e057e9a6f04cb", + "shasum": "" + }, +- "require": { +- "php": ">=5.6" +- }, + "type": "library", +- "extra": { +- "branch-alias": { +- "dev-master": "2.0.x-dev" +- } +- }, + "autoload": { + "classmap": [ + "src/" +@@ -3162,34 +2975,35 @@ + ], + "description": "Library that helps with managing the version number of Git-hosted PHP projects", + "homepage": "https://github.com/sebastianbergmann/version", +- "time": "2016-10-03T07:35:21+00:00" ++ "time": "2013-01-05T14:27:32+00:00" + }, + { + "name": "symfony/event-dispatcher", +- "version": "v3.4.27", ++ "version": "v4.2.8", + "source": { + "type": "git", + "url": "https://github.com/symfony/event-dispatcher.git", +- "reference": "a088aafcefb4eef2520a290ed82e4374092a6dff" ++ "reference": "fbce53cd74ac509cbe74b6f227622650ab759b02" + }, + "dist": { + "type": "zip", +- "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/a088aafcefb4eef2520a290ed82e4374092a6dff", +- "reference": "a088aafcefb4eef2520a290ed82e4374092a6dff", ++ "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/fbce53cd74ac509cbe74b6f227622650ab759b02", ++ "reference": "fbce53cd74ac509cbe74b6f227622650ab759b02", + "shasum": "" + }, + "require": { +- "php": "^5.5.9|>=7.0.8" ++ "php": "^7.1.3", ++ "symfony/contracts": "^1.0" + }, + "conflict": { +- "symfony/dependency-injection": "<3.3" ++ "symfony/dependency-injection": "<3.4" + }, + "require-dev": { + "psr/log": "~1.0", +- "symfony/config": "~2.8|~3.0|~4.0", +- "symfony/dependency-injection": "~3.3|~4.0", +- "symfony/expression-language": "~2.8|~3.0|~4.0", +- "symfony/stopwatch": "~2.8|~3.0|~4.0" ++ "symfony/config": "~3.4|~4.0", ++ "symfony/dependency-injection": "~3.4|~4.0", ++ "symfony/expression-language": "~3.4|~4.0", ++ "symfony/stopwatch": "~3.4|~4.0" + }, + "suggest": { + "symfony/dependency-injection": "", +@@ -3198,7 +3012,7 @@ + "type": "library", + "extra": { + "branch-alias": { +- "dev-master": "3.4-dev" ++ "dev-master": "4.2-dev" + } + }, + "autoload": { +@@ -3225,30 +3039,30 @@ + ], + "description": "Symfony EventDispatcher Component", + "homepage": "https://symfony.com", +- "time": "2019-04-02T08:51:52+00:00" ++ "time": "2019-04-06T13:51:08+00:00" + }, + { + "name": "symfony/filesystem", +- "version": "v3.4.27", ++ "version": "v4.2.8", + "source": { + "type": "git", + "url": "https://github.com/symfony/filesystem.git", +- "reference": "acf99758b1df8e9295e6b85aa69f294565c9fedb" ++ "reference": "e16b9e471703b2c60b95f14d31c1239f68f11601" + }, + "dist": { + "type": "zip", +- "url": "https://api.github.com/repos/symfony/filesystem/zipball/acf99758b1df8e9295e6b85aa69f294565c9fedb", +- "reference": "acf99758b1df8e9295e6b85aa69f294565c9fedb", ++ "url": "https://api.github.com/repos/symfony/filesystem/zipball/e16b9e471703b2c60b95f14d31c1239f68f11601", ++ "reference": "e16b9e471703b2c60b95f14d31c1239f68f11601", + "shasum": "" + }, + "require": { +- "php": "^5.5.9|>=7.0.8", ++ "php": "^7.1.3", + "symfony/polyfill-ctype": "~1.8" + }, + "type": "library", + "extra": { + "branch-alias": { +- "dev-master": "3.4-dev" ++ "dev-master": "4.2-dev" + } + }, + "autoload": { +@@ -3275,29 +3089,29 @@ + ], + "description": "Symfony Filesystem Component", + "homepage": "https://symfony.com", +- "time": "2019-02-04T21:34:32+00:00" ++ "time": "2019-02-07T11:40:08+00:00" + }, + { + "name": "symfony/finder", +- "version": "v3.4.27", ++ "version": "v4.2.8", + "source": { + "type": "git", + "url": "https://github.com/symfony/finder.git", +- "reference": "61af5ce0b34b942d414fe8f1b11950d0e9a90e98" ++ "reference": "e45135658bd6c14b61850bf131c4f09a55133f69" + }, + "dist": { + "type": "zip", +- "url": "https://api.github.com/repos/symfony/finder/zipball/61af5ce0b34b942d414fe8f1b11950d0e9a90e98", +- "reference": "61af5ce0b34b942d414fe8f1b11950d0e9a90e98", ++ "url": "https://api.github.com/repos/symfony/finder/zipball/e45135658bd6c14b61850bf131c4f09a55133f69", ++ "reference": "e45135658bd6c14b61850bf131c4f09a55133f69", + "shasum": "" + }, + "require": { +- "php": "^5.5.9|>=7.0.8" ++ "php": "^7.1.3" + }, + "type": "library", + "extra": { + "branch-alias": { +- "dev-master": "3.4-dev" ++ "dev-master": "4.2-dev" + } + }, + "autoload": { +@@ -3324,29 +3138,29 @@ + ], + "description": "Symfony Finder Component", + "homepage": "https://symfony.com", +- "time": "2019-04-02T19:54:57+00:00" ++ "time": "2019-04-06T13:51:08+00:00" + }, + { + "name": "symfony/options-resolver", +- "version": "v3.4.27", ++ "version": "v4.2.8", + "source": { + "type": "git", + "url": "https://github.com/symfony/options-resolver.git", +- "reference": "ed3b397f9c07c8ca388b2a1ef744403b4d4ecc44" ++ "reference": "fd4a5f27b7cd085b489247b9890ebca9f3e10044" + }, + "dist": { + "type": "zip", +- "url": "https://api.github.com/repos/symfony/options-resolver/zipball/ed3b397f9c07c8ca388b2a1ef744403b4d4ecc44", +- "reference": "ed3b397f9c07c8ca388b2a1ef744403b4d4ecc44", ++ "url": "https://api.github.com/repos/symfony/options-resolver/zipball/fd4a5f27b7cd085b489247b9890ebca9f3e10044", ++ "reference": "fd4a5f27b7cd085b489247b9890ebca9f3e10044", + "shasum": "" + }, + "require": { +- "php": "^5.5.9|>=7.0.8" ++ "php": "^7.1.3" + }, + "type": "library", + "extra": { + "branch-alias": { +- "dev-master": "3.4-dev" ++ "dev-master": "4.2-dev" + } + }, + "autoload": { +@@ -3378,7 +3192,65 @@ + "configuration", + "options" + ], +- "time": "2019-04-10T16:00:48+00:00" ++ "time": "2019-04-10T16:20:36+00:00" ++ }, ++ { ++ "name": "symfony/polyfill-ctype", ++ "version": "v1.11.0", ++ "source": { ++ "type": "git", ++ "url": "https://github.com/symfony/polyfill-ctype.git", ++ "reference": "82ebae02209c21113908c229e9883c419720738a" ++ }, ++ "dist": { ++ "type": "zip", ++ "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/82ebae02209c21113908c229e9883c419720738a", ++ "reference": "82ebae02209c21113908c229e9883c419720738a", ++ "shasum": "" ++ }, ++ "require": { ++ "php": ">=5.3.3" ++ }, ++ "suggest": { ++ "ext-ctype": "For best performance" ++ }, ++ "type": "library", ++ "extra": { ++ "branch-alias": { ++ "dev-master": "1.11-dev" ++ } ++ }, ++ "autoload": { ++ "psr-4": { ++ "Symfony\\Polyfill\\Ctype\\": "" ++ }, ++ "files": [ ++ "bootstrap.php" ++ ] ++ }, ++ "notification-url": "https://packagist.org/downloads/", ++ "license": [ ++ "MIT" ++ ], ++ "authors": [ ++ { ++ "name": "Symfony Community", ++ "homepage": "https://symfony.com/contributors" ++ }, ++ { ++ "name": "Gert de Pagter", ++ "email": "BackEndTea@gmail.com" ++ } ++ ], ++ "description": "Symfony polyfill for ctype functions", ++ "homepage": "https://symfony.com", ++ "keywords": [ ++ "compatibility", ++ "ctype", ++ "polyfill", ++ "portable" ++ ], ++ "time": "2019-02-06T07:57:58+00:00" + }, + { + "name": "symfony/polyfill-php70", +@@ -3496,25 +3368,25 @@ + }, + { + "name": "symfony/process", +- "version": "v3.4.27", ++ "version": "v4.2.8", + "source": { + "type": "git", + "url": "https://github.com/symfony/process.git", +- "reference": "a9c4dfbf653023b668c282e4e02609d131f4057a" ++ "reference": "8cf39fb4ccff793340c258ee7760fd40bfe745fe" + }, + "dist": { + "type": "zip", +- "url": "https://api.github.com/repos/symfony/process/zipball/a9c4dfbf653023b668c282e4e02609d131f4057a", +- "reference": "a9c4dfbf653023b668c282e4e02609d131f4057a", ++ "url": "https://api.github.com/repos/symfony/process/zipball/8cf39fb4ccff793340c258ee7760fd40bfe745fe", ++ "reference": "8cf39fb4ccff793340c258ee7760fd40bfe745fe", + "shasum": "" + }, + "require": { +- "php": "^5.5.9|>=7.0.8" ++ "php": "^7.1.3" + }, + "type": "library", + "extra": { + "branch-alias": { +- "dev-master": "3.4-dev" ++ "dev-master": "4.2-dev" + } + }, + "autoload": { +@@ -3541,29 +3413,30 @@ + ], + "description": "Symfony Process Component", + "homepage": "https://symfony.com", +- "time": "2019-04-08T16:15:54+00:00" ++ "time": "2019-04-10T16:20:36+00:00" + }, + { + "name": "symfony/stopwatch", +- "version": "v3.4.27", ++ "version": "v4.2.8", + "source": { + "type": "git", + "url": "https://github.com/symfony/stopwatch.git", +- "reference": "2a651c2645c10bbedd21170771f122d935e0dd58" ++ "reference": "b1a5f646d56a3290230dbc8edf2a0d62cda23f67" + }, + "dist": { + "type": "zip", +- "url": "https://api.github.com/repos/symfony/stopwatch/zipball/2a651c2645c10bbedd21170771f122d935e0dd58", +- "reference": "2a651c2645c10bbedd21170771f122d935e0dd58", ++ "url": "https://api.github.com/repos/symfony/stopwatch/zipball/b1a5f646d56a3290230dbc8edf2a0d62cda23f67", ++ "reference": "b1a5f646d56a3290230dbc8edf2a0d62cda23f67", + "shasum": "" + }, + "require": { +- "php": "^5.5.9|>=7.0.8" ++ "php": "^7.1.3", ++ "symfony/contracts": "^1.0" + }, + "type": "library", + "extra": { + "branch-alias": { +- "dev-master": "3.4-dev" ++ "dev-master": "4.2-dev" + } + }, + "autoload": { +@@ -3590,40 +3463,48 @@ + ], + "description": "Symfony Stopwatch Component", + "homepage": "https://symfony.com", +- "time": "2019-01-16T09:39:14+00:00" ++ "time": "2019-01-16T20:31:39+00:00" + }, + { +- "name": "webmozart/assert", +- "version": "1.4.0", ++ "name": "symfony/yaml", ++ "version": "v3.4.27", + "source": { + "type": "git", +- "url": "https://github.com/webmozart/assert.git", +- "reference": "83e253c8e0be5b0257b881e1827274667c5c17a9" ++ "url": "https://github.com/symfony/yaml.git", ++ "reference": "212a27b731e5bfb735679d1ffaac82bd6a1dc996" + }, + "dist": { + "type": "zip", +- "url": "https://api.github.com/repos/webmozart/assert/zipball/83e253c8e0be5b0257b881e1827274667c5c17a9", +- "reference": "83e253c8e0be5b0257b881e1827274667c5c17a9", ++ "url": "https://api.github.com/repos/symfony/yaml/zipball/212a27b731e5bfb735679d1ffaac82bd6a1dc996", ++ "reference": "212a27b731e5bfb735679d1ffaac82bd6a1dc996", + "shasum": "" + }, + "require": { +- "php": "^5.3.3 || ^7.0", +- "symfony/polyfill-ctype": "^1.8" ++ "php": "^5.5.9|>=7.0.8", ++ "symfony/polyfill-ctype": "~1.8" ++ }, ++ "conflict": { ++ "symfony/console": "<3.4" + }, + "require-dev": { +- "phpunit/phpunit": "^4.6", +- "sebastian/version": "^1.0.1" ++ "symfony/console": "~3.4|~4.0" ++ }, ++ "suggest": { ++ "symfony/console": "For validating YAML files using the lint command" + }, + "type": "library", + "extra": { + "branch-alias": { +- "dev-master": "1.3-dev" ++ "dev-master": "3.4-dev" + } + }, + "autoload": { + "psr-4": { +- "Webmozart\\Assert\\": "src/" +- } ++ "Symfony\\Component\\Yaml\\": "" ++ }, ++ "exclude-from-classmap": [ ++ "/Tests/" ++ ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ +@@ -3631,17 +3512,17 @@ + ], + "authors": [ + { +- "name": "Bernhard Schussek", +- "email": "bschussek@gmail.com" ++ "name": "Fabien Potencier", ++ "email": "fabien@symfony.com" ++ }, ++ { ++ "name": "Symfony Community", ++ "homepage": "https://symfony.com/contributors" + } + ], +- "description": "Assertions to validate method input/output with nice error messages.", +- "keywords": [ +- "assert", +- "check", +- "validate" +- ], +- "time": "2018-12-25T11:19:39+00:00" ++ "description": "Symfony Yaml Component", ++ "homepage": "https://symfony.com", ++ "time": "2019-03-25T07:48:46+00:00" + } + ], + "aliases": [], diff --git a/framadate/patch/find-all-poll-date.patch b/framadate/patch/find-all-poll-date.patch new file mode 100644 index 00000000..b76a4cd1 --- /dev/null +++ b/framadate/patch/find-all-poll-date.patch @@ -0,0 +1,23 @@ +diff --git a/app/classes/Framadate/Repositories/PollRepository.php b/app/classes/Framadate/Repositories/PollRepository.php +index 4a1e6ea..7cedca1 100644 +--- a/app/classes/Framadate/Repositories/PollRepository.php ++++ b/app/classes/Framadate/Repositories/PollRepository.php +@@ -202,7 +202,17 @@ class PollRepository extends AbstractRepository { + + $prepared->execute(); + +- return $prepared->fetchAll(); ++ $polls = $prepared->fetchAll(); ++ ++ foreach ($polls as $poll) { ++ /** ++ * Hack to make date a proper DateTime ++ */ ++ $poll->creation_date = Type::getType(Type::DATETIME)->convertToPhpValue($poll->creation_date, $this->connect->getDatabasePlatform()); ++ $poll->end_date = Type::getType(Type::DATETIME)->convertToPhpValue($poll->end_date, $this->connect->getDatabasePlatform()); ++ } ++ return $polls; ++ + } + + /** diff --git a/framadate/patch/postgresql-compatibility.patch b/framadate/patch/postgresql-compatibility.patch new file mode 100644 index 00000000..f51c6f91 --- /dev/null +++ b/framadate/patch/postgresql-compatibility.patch @@ -0,0 +1,39 @@ +diff --git a/app/classes/Framadate/Repositories/PollRepository.php b/app/classes/Framadate/Repositories/PollRepository.php +index 78d0860..4a1e6ea 100644 +--- a/app/classes/Framadate/Repositories/PollRepository.php ++++ b/app/classes/Framadate/Repositories/PollRepository.php +@@ -163,7 +163,7 @@ class PollRepository extends AbstractRepository { + $request .= "SELECT p.*,"; + $request .= " (SELECT count(1) FROM " . Utils::table('vote') . " v WHERE p.id=v.poll_id) votes"; + $request .= " FROM " . Utils::table('poll') . " p"; +- $request .= " WHERE 1"; ++ $request .= " WHERE True"; + + $values = []; + +@@ -189,7 +189,7 @@ class PollRepository extends AbstractRepository { + } + + $request .= " ORDER BY p.title ASC"; +- $request .= " LIMIT :start, :limit"; ++ $request .= " OFFSET :start LIMIT :limit"; + + $prepared = $this->prepare($request); + +@@ -230,11 +230,11 @@ class PollRepository extends AbstractRepository { + // Total count + $prepared = $this->prepare(' + SELECT count(1) nb +- FROM ' . Utils::table('poll') . ' p +- WHERE (:id = "" OR p.id LIKE :id) +- AND (:title = "" OR p.title LIKE :title) +- AND (:name = "" OR p.admin_name LIKE :name) +- ORDER BY p.title ASC'); ++ FROM ' . Utils::table('poll') . " p ++ WHERE (:id = '' OR p.id LIKE :id) ++ AND (:title = '' OR p.title LIKE :title) ++ AND (:name = '' OR p.admin_name LIKE :name) ++"); + + $poll = $search === null ? '' : $search['poll'] . '%'; + $title = $search === null ? '' : '%' . $search['title'] . '%'; diff --git a/framadate/patch/protect-unset.patch b/framadate/patch/protect-unset.patch new file mode 100644 index 00000000..1bc936ee --- /dev/null +++ b/framadate/patch/protect-unset.patch @@ -0,0 +1,12 @@ +diff --git a/app/inc/init.php b/app/inc/init.php +index 0e8fb19..272d83c 100644 +--- a/app/inc/init.php ++++ b/app/inc/init.php +@@ -97,4 +97,6 @@ require_once __DIR__ . '/i18n.php'; + require_once __DIR__ . '/smarty.php'; + + require_once __DIR__ . '/services.php'; +-Services::init($connect, $smarty); ++if (isset($connect)) { ++ Services::init($connect, $smarty); ++} diff --git a/framadate/patch/typo-poll-creation.patch b/framadate/patch/typo-poll-creation.patch new file mode 100644 index 00000000..c6afd41f --- /dev/null +++ b/framadate/patch/typo-poll-creation.patch @@ -0,0 +1,13 @@ +diff --git a/app/classes/Framadate/Services/PollService.php b/app/classes/Framadate/Services/PollService.php +index ca9eb70..3d9e967 100644 +--- a/app/classes/Framadate/Services/PollService.php ++++ b/app/classes/Framadate/Services/PollService.php +@@ -216,7 +216,7 @@ class PollService { + list($poll_id, $admin_poll_id) = $this->createPoll($form); + + // Send confirmation by mail if enabled +- if (!is_null($ids)) { ++ if (!is_null($poll_id)) { + // Everything went well + $this->notificationService->sendPollCreationMails($form->admin_mail, $form->admin_name, $form->title, $poll_id, $admin_poll_id); + diff --git a/framadate/src/init.sql b/framadate/src/init.sql new file mode 100644 index 00000000..1dcd963e --- /dev/null +++ b/framadate/src/init.sql @@ -0,0 +1,433 @@ +-- +-- PostgreSQL database dump +-- + +-- Dumped from database version 10.4 +-- Dumped by pg_dump version 10.4 + +SET statement_timeout = 0; +SET lock_timeout = 0; +SET idle_in_transaction_session_timeout = 0; +SET client_encoding = 'UTF8'; +SET standard_conforming_strings = on; +SELECT pg_catalog.set_config('search_path', '', false); +SET check_function_bodies = false; +SET client_min_messages = warning; +SET row_security = off; + +-- +-- Name: plpgsql; Type: EXTENSION; Schema: -; Owner: - +-- + +CREATE EXTENSION IF NOT EXISTS plpgsql WITH SCHEMA pg_catalog; + + +-- +-- Name: EXTENSION plpgsql; Type: COMMENT; Schema: -; Owner: - +-- + +COMMENT ON EXTENSION plpgsql IS 'PL/pgSQL procedural language'; + + +-- +-- Name: comment_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE public.comment_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: comments_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE public.comments_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +SET default_tablespace = ''; + +SET default_with_oids = false; + +-- +-- Name: fd_comment; Type: TABLE; Schema: public; Owner: - +-- + +CREATE TABLE public.fd_comment ( + id integer NOT NULL, + poll_id character varying(64) NOT NULL, + name character varying(64) NOT NULL, + comment text NOT NULL, + date timestamp(0) without time zone DEFAULT ((0)::abstime)::timestamp without time zone NOT NULL +); + + +-- +-- Name: fd_comment_id_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE public.fd_comment_id_seq + AS integer + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: fd_comment_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: - +-- + +ALTER SEQUENCE public.fd_comment_id_seq OWNED BY public.fd_comment.id; + + +-- +-- Name: fd_migration_new; Type: TABLE; Schema: public; Owner: - +-- + +CREATE TABLE public.fd_migration_new ( + version character varying(255) NOT NULL +); + + +-- +-- Name: fd_poll; Type: TABLE; Schema: public; Owner: - +-- + +CREATE TABLE public.fd_poll ( + id character varying(64) NOT NULL, + admin_id character varying(255) NOT NULL, + title text NOT NULL, + description text, + admin_name character varying(255) NOT NULL, + admin_mail character varying(255) DEFAULT NULL::character varying, + creation_date timestamp(0) without time zone DEFAULT '2019-05-02 22:18:17'::timestamp without time zone NOT NULL, + end_date timestamp(0) without time zone DEFAULT NULL::timestamp without time zone, + format character varying(255) DEFAULT NULL::character varying, + editable integer DEFAULT 0 NOT NULL, + receivenewvotes boolean DEFAULT false NOT NULL, + active boolean DEFAULT true NOT NULL, + receivenewcomments boolean DEFAULT false NOT NULL, + hidden boolean DEFAULT false NOT NULL, + password_hash character varying(255) DEFAULT NULL::character varying, + results_publicly_visible boolean, + valuemax smallint, + collect_users_mail boolean DEFAULT false NOT NULL, + collect_users_mail_integer smallint DEFAULT 0 NOT NULL +); + + +-- +-- Name: fd_slot; Type: TABLE; Schema: public; Owner: - +-- + +CREATE TABLE public.fd_slot ( + id integer NOT NULL, + poll_id character varying(64) NOT NULL, + title text NOT NULL, + moments text +); + + +-- +-- Name: fd_slot_id_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE public.fd_slot_id_seq + AS integer + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: fd_slot_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: - +-- + +ALTER SEQUENCE public.fd_slot_id_seq OWNED BY public.fd_slot.id; + + +-- +-- Name: fd_vote; Type: TABLE; Schema: public; Owner: - +-- + +CREATE TABLE public.fd_vote ( + id integer NOT NULL, + poll_id character varying(64) NOT NULL, + name character varying(255) NOT NULL, + choices character varying(255) NOT NULL, + uniqid character varying(16) NOT NULL, + mail character varying(255) DEFAULT NULL::character varying +); + + +-- +-- Name: fd_vote_id_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE public.fd_vote_id_seq + AS integer + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: fd_vote_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: - +-- + +ALTER SEQUENCE public.fd_vote_id_seq OWNED BY public.fd_vote.id; + + +-- +-- Name: slot_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE public.slot_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: user_studs_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE public.user_studs_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: vote_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE public.vote_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: fd_comment id; Type: DEFAULT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.fd_comment ALTER COLUMN id SET DEFAULT nextval('public.fd_comment_id_seq'::regclass); + + +-- +-- Name: fd_slot id; Type: DEFAULT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.fd_slot ALTER COLUMN id SET DEFAULT nextval('public.fd_slot_id_seq'::regclass); + + +-- +-- Name: fd_vote id; Type: DEFAULT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.fd_vote ALTER COLUMN id SET DEFAULT nextval('public.fd_vote_id_seq'::regclass); + + +-- +-- Data for Name: fd_comment; Type: TABLE DATA; Schema: public; Owner: - +-- + +COPY public.fd_comment (id, poll_id, name, comment, date) FROM stdin; +\. + + +-- +-- Data for Name: fd_migration_new; Type: TABLE DATA; Schema: public; Owner: - +-- + +COPY public.fd_migration_new (version) FROM stdin; +20150101000000 +20150102000000 +20150102100000 +20150117000000 +20150402000000 +20150405000000 +20150624000000 +20150918000000 +20151012075900 +20151012082600 +20151028000000 +20151205000000 +20180220000000 +20180411000000 +20180419170000 +20180419180000 +20180419190000 +20180525110000 +\. + + +-- +-- Data for Name: fd_poll; Type: TABLE DATA; Schema: public; Owner: - +-- + +COPY public.fd_poll (id, admin_id, title, description, admin_name, admin_mail, creation_date, end_date, format, editable, receivenewvotes, active, receivenewcomments, hidden, password_hash, results_publicly_visible, valuemax, collect_users_mail, collect_users_mail_integer) FROM stdin; +\. + + +-- +-- Data for Name: fd_slot; Type: TABLE DATA; Schema: public; Owner: - +-- + +COPY public.fd_slot (id, poll_id, title, moments) FROM stdin; +\. + + +-- +-- Data for Name: fd_vote; Type: TABLE DATA; Schema: public; Owner: - +-- + +COPY public.fd_vote (id, poll_id, name, choices, uniqid, mail) FROM stdin; +\. + + +-- +-- Name: comment_seq; Type: SEQUENCE SET; Schema: public; Owner: - +-- + +SELECT pg_catalog.setval('public.comment_seq', 1, false); + + +-- +-- Name: comments_seq; Type: SEQUENCE SET; Schema: public; Owner: - +-- + +SELECT pg_catalog.setval('public.comments_seq', 1, false); + + +-- +-- Name: fd_comment_id_seq; Type: SEQUENCE SET; Schema: public; Owner: - +-- + +SELECT pg_catalog.setval('public.fd_comment_id_seq', 1, false); + + +-- +-- Name: fd_slot_id_seq; Type: SEQUENCE SET; Schema: public; Owner: - +-- + +SELECT pg_catalog.setval('public.fd_slot_id_seq', 1, false); + + +-- +-- Name: fd_vote_id_seq; Type: SEQUENCE SET; Schema: public; Owner: - +-- + +SELECT pg_catalog.setval('public.fd_vote_id_seq', 1, false); + + +-- +-- Name: slot_seq; Type: SEQUENCE SET; Schema: public; Owner: - +-- + +SELECT pg_catalog.setval('public.slot_seq', 1, false); + + +-- +-- Name: user_studs_seq; Type: SEQUENCE SET; Schema: public; Owner: - +-- + +SELECT pg_catalog.setval('public.user_studs_seq', 1, false); + + +-- +-- Name: vote_seq; Type: SEQUENCE SET; Schema: public; Owner: - +-- + +SELECT pg_catalog.setval('public.vote_seq', 1, false); + + +-- +-- Name: fd_migration_new fd_migration_new_pkey; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.fd_migration_new + ADD CONSTRAINT fd_migration_new_pkey PRIMARY KEY (version); + + +-- +-- Name: comment_index_id; Type: INDEX; Schema: public; Owner: - +-- + +CREATE UNIQUE INDEX comment_index_id ON public.fd_comment USING btree (id); + + +-- +-- Name: comment_index_poll_id; Type: INDEX; Schema: public; Owner: - +-- + +CREATE INDEX comment_index_poll_id ON public.fd_comment USING btree (poll_id); + + +-- +-- Name: idx_vote_uniqid; Type: INDEX; Schema: public; Owner: - +-- + +CREATE INDEX idx_vote_uniqid ON public.fd_vote USING btree (uniqid); + + +-- +-- Name: poll_index_id; Type: INDEX; Schema: public; Owner: - +-- + +CREATE UNIQUE INDEX poll_index_id ON public.fd_poll USING btree (id); + + +-- +-- Name: slot_index_id; Type: INDEX; Schema: public; Owner: - +-- + +CREATE UNIQUE INDEX slot_index_id ON public.fd_slot USING btree (id); + + +-- +-- Name: slot_index_poll_id; Type: INDEX; Schema: public; Owner: - +-- + +CREATE INDEX slot_index_poll_id ON public.fd_slot USING btree (poll_id); + + +-- +-- Name: vote_index_id; Type: INDEX; Schema: public; Owner: - +-- + +CREATE UNIQUE INDEX vote_index_id ON public.fd_vote USING btree (id); + + +-- +-- Name: vote_index_poll_id; Type: INDEX; Schema: public; Owner: - +-- + +CREATE INDEX vote_index_poll_id ON public.fd_vote USING btree (poll_id); + + +-- +-- PostgreSQL database dump complete +-- +