diff --git a/.travis.yml b/.travis.yml index 871c9edf81..5b2901df81 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,6 +1,8 @@ # for travis-ci # see also. https://travis-ci.org language: php +services: + - docker sudo: false php: - 5.4 @@ -9,10 +11,18 @@ php: - 7.0 - 7.1 - 7.2 + - 7.3 + +addons: + apt: + sources: + - google-chrome + packages: + - google-chrome-stable env: global: - - DBNAME=myapp_test HTTP_URL=http://localhost:8085/ HTTPS_URL=https://localhost:8085/ + - DBNAME=myapp_test HTTP_URL=http://localhost:8085/ HTTPS_URL=http://localhost:8085/ matrix: - DB=mysql USER=root DBPASS=' ' DBUSER=root - DB=pgsql USER=postgres DBPASS=password DBUSER=postgres @@ -29,11 +39,13 @@ matrix: env: DB=pgsql USER=postgres DBPASS=password DBUSER=postgres COVERAGE=true - php: 7.0 env: DB=pgsql USER=postgres DBPASS=password DBUSER=postgres COVERAGE=true + - php: 7.1 + env: DB=pgsql USER=postgres DBPASS=password DBUSER=postgres COVERAGE=true - php: 7.2 env: DB=pgsql USER=postgres DBPASS=password DBUSER=postgres COVERAGE=true allow_failures: # Use for coverage report - - php: 7.1 + - php: 7.3 env: DB=pgsql USER=postgres DBPASS=password DBUSER=postgres COVERAGE=true before_script: @@ -49,13 +61,20 @@ before_script: - export DISPLAY=:99.0 - sh -e /etc/init.d/xvfb start - php -S localhost:8085 -t html/ & + - wget -c -nc --retry-connrefused --tries=0 http://chromedriver.storage.googleapis.com/2.43/chromedriver_linux64.zip + - unzip -o -q chromedriver_linux64.zip + - sudo mv -f ./chromedriver /usr/local/bin/ + - sudo chmod +x /usr/local/bin/chromedriver + - docker pull schickling/mailcatcher + - docker run -d -p 1080:1080 -p 1025:1025 --name mailcatcher schickling/mailcatcher + - chromedriver --url-base=/wd/hub & - php data/vendor/bin/codecept build script: - mkdir -p reports/coverage - if [ ! $COVERAGE ] ; then php data/vendor/bin/phpunit -c phpunit.xml.dist ; fi - if [ $COVERAGE ] ; then phpdbg -qrr data/vendor/bin/phpunit -c phpunit.xml.dist ; fi - - if [ ! $COVERAGE ] ; then php data/vendor/bin/codecept run --env travis --steps ; fi + - if [ ! $COVERAGE ] ; then php data/vendor/bin/codecept run --env chrome --steps ; fi after_script: - if [ $COVERAGE ] ; then php data/vendor/bin/coveralls -v ; fi @@ -64,5 +83,4 @@ after_script: # Cache folder, you can delete cache from Travis CI web interface cache: directories: - - data/vendor - - $HOME/.composer/cache vendor/ + - $HOME/.composer/cache diff --git a/LICENSE.txt b/LICENSE.txt index 3f49f66819..c01b799a50 100644 --- a/LICENSE.txt +++ b/LICENSE.txt @@ -25,11 +25,11 @@ GPLライセンス及び後記のクローズドライセンスの下で頒布 ・「EC-CUBE」はデュアルライセンス方式を採用しています。 あなたにコミットいただいた内容は、GPLライセンスのみならず、 -株式会社ロックオンが独自に設定するクローズドソースライセンスの下で +株式会社イーシーキューブが独自に設定するクローズドソースライセンスの下で 頒布されることがあります。 これを可能とするため、あなたがコミットした内容が著作権法上の著作物である場合には、 -コミットと同時に、あなたの著作権財産権を株式会社ロックオンに移転し、 +コミットと同時に、あなたの著作権財産権を株式会社イーシーキューブに移転し、 著作者人格権を行使しないことにご同意いただくこととなります。 -株式会社ロックオンは、コミット部分の著作権移転後も、GPLライセンスによりあなたに認められることとなるすべての権利を保障します。 +株式会社イーシーキューブは、コミット部分の著作権移転後も、GPLライセンスによりあなたに認められることとなるすべての権利を保障します。 コミットを行うことにより、上記の「EC-CUBE」のコピーライトポリシーを理解、了承したこととします。 diff --git a/appveyor.yml b/appveyor.yml index 74f9cc1e7c..104f7b18c8 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -4,6 +4,8 @@ # Set build version format here instead of in the admin panel. version: 2.17-dev-{build} +image: Visual Studio 2017 + clone_folder: C:\projects\eccube2 cache: @@ -33,7 +35,9 @@ services: # Install scripts. (runs after repo cloning) install: - - cinst -y OpenSSL.Light + - docker pull nanasess/mailcatcher:windowsservercore + - docker run -d -p 1080:1080 -p 1025:1025 --name mailcatcher nanasess/mailcatcher:windowsservercore + - cinst -y OpenSSL.Light --version 1.1.1 - SET PATH=C:\Program Files\OpenSSL;%PATH% - sc config wuauserv start= auto - net start wuauserv @@ -49,9 +53,9 @@ install: #- set PATH=%PATH%;C:\MinGW\msys\1.0\bin;C:\MinGW\bin #- mingw-get install mingw-developer-toolkit ## Set PHP. - - cinst php --allow-empty-checksums - - SET PATH=C:\tools\php72\;%PATH% - - cd c:\tools\php72 + - cinst php --allow-empty-checksums --version 7.3 + - SET PATH=C:\tools\php73\;%PATH% + - cd c:\tools\php73 - copy php.ini-production php.ini - echo date.timezone="Asia/Tokyo" >> php.ini - echo extension_dir=ext >> php.ini diff --git a/composer.json b/composer.json index 9d228a4f72..b1151ea772 100644 --- a/composer.json +++ b/composer.json @@ -11,45 +11,37 @@ "issues": "https://github.com/EC-CUBE/eccube-2_13/issues" }, "config": { - "disable-tls": false, - "secure-http": false, "vendor-dir": "data/vendor", "platform": { "php": "5.4" - } + }, + "optimize-autoloader": true, + "sort-packages": true }, - "repositories": [ - { - "type": "pear", - "url": "http://pear.php.net/" - } - ], "require-dev": { - "satooshi/php-coveralls": "1.0", - "codeception/codeception": "*" + "captbaritone/mailcatcher-codeception-module": "1.2.1", + "codeception/codeception": "*", + "fzaninotto/faker": "^1.8", + "satooshi/php-coveralls": "1.0" }, "require": { "php": ">=5.3.9", - "ext-mbstring": "*", "ext-gd": "*", - "smarty/smarty": "*", - "pear-pear.php.net/PEAR" : "*", - "pear-pear.php.net/Mail" : "*", - "pear-pear.php.net/Cache_Lite" : "*", - "pear-pear.php.net/File_SearchReplace" : "*", - "pear-pear.php.net/MDB2_Driver_mysqli" : "1.5.0b4", - "pear-pear.php.net/MDB2_Driver_pgsql" : "1.5.0b4", - "pear-pear.php.net/MDB2" : "2.5.0-beta5 as 2.5.0", - "pear-pear.php.net/Net_UserAgent_Mobile" : "*", - "pear-pear.php.net/Services_JSON" : "*", - "pear-pear.php.net/Text_Password" : "*", - "pear-pear.php.net/XML_Parser" : "*", - "pear-pear.php.net/XML_Serializer" : "*", - "pear-pear.php.net/XML_Util" : "*", + "ext-mbstring": "*", + "bondas83/mdb2_driver_mysqli": "^1.5", "mobiledetect/mobiledetectlib": "^2.8", + "nanasess/mdb2_driver_pgsql": "^1.5", + "pear/archive_tar": "^1.4.3", + "pear/mail": "*", + "pear/pear-core-minimal": "^1.10", + "pear/text_password": "*", + "pear/xml_parser": "*", + "pear/xml_serializer": "*", + "pear/xml_util": "*", "setasign/fpdf": "1.7", "setasign/fpdi-fpdf": "1.6", - "pear/archive_tar": "^1.4.3" + "silverorange/mdb2": "2.5.2-b.5", + "smarty/smarty": "*" }, "autoload": { "classmap": [ diff --git a/composer.lock b/composer.lock index 4934e40efb..e1623056dc 100644 --- a/composer.lock +++ b/composer.lock @@ -4,8 +4,55 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "8d598a6770b1028ee74b690ef032bd9f", + "content-hash": "9bd7ec887b2427d6a40dcef603e9d5e5", "packages": [ + { + "name": "bondas83/mdb2_driver_mysqli", + "version": "v1.5.3", + "source": { + "type": "git", + "url": "https://github.com/bondas83/mdb2_driver_mysqli.git", + "reference": "821854e34b8ca0655b437d441ef40251dda38ff4" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/bondas83/mdb2_driver_mysqli/zipball/821854e34b8ca0655b437d441ef40251dda38ff4", + "reference": "821854e34b8ca0655b437d441ef40251dda38ff4", + "shasum": "" + }, + "require": { + "php": ">=5.3.0", + "silverorange/mdb2": "*" + }, + "type": "library", + "autoload": { + "classmap": [ + "MDB2/Driver/mysqli.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "include-path": [ + "./" + ], + "license": [ + "BSD-2-Clause" + ], + "authors": [ + { + "name": "Julius Smatavicius", + "email": "bondas83@gmail.com" + } + ], + "description": "This is the Mysqli MDB2 driver.", + "homepage": "https://github.com/bondas83/MDB2_Driver_mysqli", + "keywords": [ + "PEAR", + "database", + "mdb2", + "mysqli" + ], + "time": "2017-08-04T14:29:40+00:00" + }, { "name": "mobiledetect/mobiledetectlib", "version": "2.8.32", @@ -59,541 +106,355 @@ "time": "2018-06-03T13:13:04+00:00" }, { - "name": "pear-pear.php.net/Archive_Tar", - "version": "1.4.3", - "dist": { - "type": "file", - "url": "http://pear.php.net/get/Archive_Tar-1.4.3.tgz", - "reference": null, - "shasum": null - }, - "require": { - "php": ">=5.2.0.0" - }, - "replace": { - "pear-pear/archive_tar": "== 1.4.3.0" - }, - "type": "pear-library", - "autoload": { - "classmap": [ - "" - ] + "name": "nanasess/mdb2_driver_pgsql", + "version": "1.5.0", + "source": { + "type": "git", + "url": "https://github.com/nanasess/MDB2_Driver_pgsql.git", + "reference": "88eba9a1ad88838a6bf24b15efa438932055f2b8" }, - "include-path": [ - "/" - ], - "license": [ - "New BSD License" - ], - "description": "This class provides handling of tar files in PHP.\nIt supports creating, listing, extracting and adding to tar files.\nGzip support is available if PHP has the zlib extension built-in or\nloaded. Bz2 compression is also supported with the bz2 extension loaded." - }, - { - "name": "pear-pear.php.net/Cache_Lite", - "version": "1.8.2", "dist": { - "type": "file", - "url": "http://pear.php.net/get/Cache_Lite-1.8.2.tgz", - "reference": null, - "shasum": null + "type": "zip", + "url": "https://api.github.com/repos/nanasess/MDB2_Driver_pgsql/zipball/88eba9a1ad88838a6bf24b15efa438932055f2b8", + "reference": "88eba9a1ad88838a6bf24b15efa438932055f2b8", + "shasum": "" }, "require": { - "pear-pear.php.net/pear": ">=1.10.1.0", - "php": ">=5.4.0.0" + "silverorange/mdb2": "*" }, - "replace": { - "pear-pear/cache_lite": "== 1.8.2.0" - }, - "type": "pear-library", + "type": "library", "autoload": { "classmap": [ - "" + "MDB2/Driver/pgsql.php" ] }, + "notification-url": "https://packagist.org/downloads/", "include-path": [ - "/" + "./" ], "license": [ - "lgpl" - ], - "description": "This package is a little cache system optimized for file containers. It is fast and safe (because it\n uses file locking and/or anti-corruption tests)." - }, - { - "name": "pear-pear.php.net/Console_Getopt", - "version": "1.4.1", - "dist": { - "type": "file", - "url": "http://pear.php.net/get/Console_Getopt-1.4.1.tgz", - "reference": null, - "shasum": null - }, - "require": { - "php": ">=5.4.0.0" - }, - "replace": { - "pear-pear/console_getopt": "== 1.4.1.0" - }, - "type": "pear-library", - "autoload": { - "classmap": [ - "" - ] - }, - "include-path": [ - "/" + "BSD-3-Clause" ], - "license": [ - "BSD-2-Clause" + "authors": [ + { + "name": "Lukas Kahwe Smith", + "email": "smith@pooteeweet.org" + }, + { + "name": "Nathan Fredrickson", + "email": "nathan@silverorange.com" + }, + { + "name": "Lorenzo Alberton", + "email": "l.alberton@quipo.it" + }, + { + "name": "Kentaro Ohkouchi", + "email": "nanasess@fsm.ne.jp" + }, + { + "name": "Ali Fazelzadeh", + "email": "afz@dev-code.com" + } ], - "description": "This is a PHP implementation of "getopt" supporting both\nshort and long options." + "description": "This is the PostgreSQL MDB2 driver.", + "time": "2019-02-05T06:25:36+00:00" }, { - "name": "pear-pear.php.net/File_SearchReplace", - "version": "1.1.4", - "dist": { - "type": "file", - "url": "http://pear.php.net/get/File_SearchReplace-1.1.4.tgz", - "reference": null, - "shasum": null - }, - "require": { - "php": ">=4.3.0.0" - }, - "replace": { - "pear-pear/file_searchreplace": "== 1.1.4.0" - }, - "type": "pear-library", - "autoload": { - "classmap": [ - "" - ] + "name": "pear/archive_tar", + "version": "1.4.3", + "source": { + "type": "git", + "url": "https://github.com/pear/Archive_Tar.git", + "reference": "43455c960da70e655c6bdf8ea2bc8cc1a6034afb" }, - "include-path": [ - "/" - ], - "license": [ - "BSD" - ], - "description": "Provides various functions to perform replace\non files. Preg/Ereg regex supported along with faster, but more basic str_replace routine." - }, - { - "name": "pear-pear.php.net/MDB2", - "version": "2.5.0b5", "dist": { - "type": "file", - "url": "http://pear.php.net/get/MDB2-2.5.0b5.tgz", - "reference": null, - "shasum": null + "type": "zip", + "url": "https://api.github.com/repos/pear/Archive_Tar/zipball/43455c960da70e655c6bdf8ea2bc8cc1a6034afb", + "reference": "43455c960da70e655c6bdf8ea2bc8cc1a6034afb", + "shasum": "" }, "require": { - "pear-pear.php.net/pear": ">=1.3.6.0", - "php": ">=5.2.0.0" + "pear/pear-core-minimal": "^1.10.0alpha2", + "php": ">=5.2.0" }, - "replace": { - "pear-pear/mdb2": "== 2.5.0.0-beta5" + "require-dev": { + "phpunit/phpunit": "*" }, "suggest": { - "fbsql-pear-pear.php.net/MDB2_Driver_fbsql": ">=0.3.0.0", - "ibase-pear-pear.php.net/MDB2_Driver_ibase": ">=1.5.0.0", - "mssql-pear-pear.php.net/MDB2_Driver_mssql": ">=1.5.0.0", - "mysql-pear-pear.php.net/MDB2_Driver_mysql": ">=1.5.0.0", - "mysqli-pear-pear.php.net/MDB2_Driver_mysqli": ">=1.5.0.0", - "oci8-pear-pear.php.net/MDB2_Driver_oci8": ">=1.5.0.0", - "odbc-pear-pear.php.net/MDB2_Driver_odbc": ">=0.2.0.0", - "pgsql-pear-pear.php.net/MDB2_Driver_pgsql": ">=1.5.0.0", - "querysim-pear-pear.php.net/MDB2_Driver_querysim": ">=0.7.0.0", - "sqlite-pear-pear.php.net/MDB2_Driver_sqlite": ">=1.5.0.0", - "sqlsrv-pear-pear.php.net/MDB2_Driver_sqlsrv": ">=1.5.0.0" - }, - "type": "pear-library", - "autoload": { - "classmap": [ - "" - ] - }, - "include-path": [ - "/" - ], - "license": [ - "BSD License" - ], - "description": "PEAR MDB2 is a merge of the PEAR DB and Metabase php database abstraction layers.\n\nIt provides a common API for all supported RDBMS. The main difference to most\nother DB abstraction packages is that MDB2 goes much further to ensure\nportability. MDB2 provides most of its many features optionally that\ncan be used to construct portable SQL statements:\n* Object-Oriented API\n* A DSN (data source name) or array format for specifying database servers\n* Datatype abstraction and on demand datatype conversion\n* Various optional fetch modes to fix portability issues\n* Portable error codes\n* Sequential and non sequential row fetching as well as bulk fetching\n* Ability to make buffered and unbuffered queries\n* Ordered array and associative array for the fetched rows\n* Prepare/execute (bind) named and unnamed placeholder emulation\n* Sequence/autoincrement emulation\n* Replace emulation\n* Limited sub select emulation\n* Row limit emulation\n* Transactions/savepoint support\n* Large Object support\n* Index/Unique Key/Primary Key support\n* Pattern matching abstraction\n* Module framework to load advanced functionality on demand\n* Ability to read the information schema\n* RDBMS management methods (creating, dropping, altering)\n* Reverse engineering schemas from an existing database\n* SQL function call abstraction\n* Full integration into the PEAR Framework\n* PHPDoc API documentation" - }, - { - "name": "pear-pear.php.net/MDB2_Driver_mysqli", - "version": "1.5.0b4", - "dist": { - "type": "file", - "url": "http://pear.php.net/get/MDB2_Driver_mysqli-1.5.0b4.tgz", - "reference": null, - "shasum": null - }, - "require": { - "ext-mysqli": "*", - "pear-pear.php.net/mdb2": ">=2.5.0.0", - "php": ">=5.2.0.0" + "ext-bz2": "bz2 compression support.", + "ext-xz": "lzma2 compression support.", + "ext-zlib": "Gzip compression support." }, - "replace": { - "pear-pear/mdb2_driver_mysqli": "== 1.5.0.0-beta4" + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.4.x-dev" + } }, - "type": "pear-library", "autoload": { - "classmap": [ - "" - ] + "psr-0": { + "Archive_Tar": "" + } }, + "notification-url": "https://packagist.org/downloads/", "include-path": [ - "/" + "./" ], "license": [ - "BSD License" + "BSD-3-Clause" ], - "description": "This is the MySQLi MDB2 driver." - }, - { - "name": "pear-pear.php.net/MDB2_Driver_pgsql", - "version": "1.5.0b4", - "dist": { - "type": "file", - "url": "http://pear.php.net/get/MDB2_Driver_pgsql-1.5.0b4.tgz", - "reference": null, - "shasum": null - }, - "require": { - "ext-pgsql": "*", - "pear-pear.php.net/mdb2": ">=2.5.0.0", - "php": ">=5.2.0.0" - }, - "replace": { - "pear-pear/mdb2_driver_pgsql": "== 1.5.0.0-beta4" - }, - "type": "pear-library", - "autoload": { - "classmap": [ - "" - ] - }, - "include-path": [ - "/" + "authors": [ + { + "name": "Vincent Blavet", + "email": "vincent@phpconcept.net" + }, + { + "name": "Greg Beaver", + "email": "greg@chiaraquartet.net" + }, + { + "name": "Michiel Rook", + "email": "mrook@php.net" + } ], - "license": [ - "BSD License" + "description": "Tar file management class", + "homepage": "https://github.com/pear/Archive_Tar", + "keywords": [ + "archive", + "tar" ], - "description": "This is the PostgreSQL MDB2 driver." + "time": "2017-06-11T17:28:11+00:00" }, { - "name": "pear-pear.php.net/Mail", - "version": "1.4.1", - "dist": { - "type": "file", - "url": "http://pear.php.net/get/Mail-1.4.1.tgz", - "reference": null, - "shasum": null - }, - "require": { - "php": ">=5.2.1.0" - }, - "replace": { - "pear-pear/mail": "== 1.4.1.0" - }, - "type": "pear-library", - "autoload": { - "classmap": [ - "" - ] + "name": "pear/console_getopt", + "version": "v1.4.1", + "source": { + "type": "git", + "url": "https://github.com/pear/Console_Getopt.git", + "reference": "82f05cd1aa3edf34e19aa7c8ca312ce13a6a577f" }, - "include-path": [ - "/" - ], - "license": [ - "New BSD License" - ], - "description": "PEAR's Mail package defines an interface for implementing mailers under the PEAR hierarchy. It also provides supporting functions useful to multiple mailer backends. Currently supported backends include: PHP's native mail() function, sendmail, and SMTP. This package also provides a RFC822 email address list validation utility class." - }, - { - "name": "pear-pear.php.net/Net_UserAgent_Mobile", - "version": "1.0.0", "dist": { - "type": "file", - "url": "http://pear.php.net/get/Net_UserAgent_Mobile-1.0.0.tgz", - "reference": null, - "shasum": null - }, - "require": { - "ext-pcre": "*", - "pear-pear.php.net/pear": ">=1.4.3.0", - "php": ">=4.3.0.0" - }, - "replace": { - "pear-pear/net_useragent_mobile": "== 1.0.0.0" + "type": "zip", + "url": "https://api.github.com/repos/pear/Console_Getopt/zipball/82f05cd1aa3edf34e19aa7c8ca312ce13a6a577f", + "reference": "82f05cd1aa3edf34e19aa7c8ca312ce13a6a577f", + "shasum": "" }, - "type": "pear-library", + "type": "library", "autoload": { - "classmap": [ - "" - ] + "psr-0": { + "Console": "./" + } }, + "notification-url": "https://packagist.org/downloads/", "include-path": [ - "/" + "./" ], "license": [ - "New BSD License" - ], - "description": "Net_UserAgent_Mobile parses HTTP_USER_AGENT strings of (mainly Japanese) mobile HTTP user agents. It'll be useful in page dispatching by user agents.\nThis package was ported from Perl's HTTP::MobileAgent.\nSee http://search.cpan.org/search?mode=module&query=HTTP-MobileAgent" - }, - { - "name": "pear-pear.php.net/PEAR", - "version": "1.10.5", - "dist": { - "type": "file", - "url": "http://pear.php.net/get/PEAR-1.10.5.tgz", - "reference": null, - "shasum": null - }, - "require": { - "ext-pcre": "*", - "ext-xml": "*", - "pear-pear.php.net/archive_tar": ">=1.4.0.0", - "pear-pear.php.net/console_getopt": ">=1.4.1.0", - "pear-pear.php.net/structures_graph": ">=1.1.0.0", - "pear-pear.php.net/xml_util": ">=1.3.0.0", - "php": ">=5.4.0.0" - }, - "conflict": { - "pear-pear.php.net/pear_frontend_gtk": "<0.4.0.0", - "pear-pear.php.net/pear_frontend_web": "<=0.4.0.0" - }, - "replace": { - "pear-pear/pear": "== 1.10.5.0" - }, - "type": "pear-library", - "autoload": { - "classmap": [ - "" - ] - }, - "include-path": [ - "/" + "BSD-2-Clause" ], - "license": [ - "New BSD License" + "authors": [ + { + "name": "Greg Beaver", + "email": "cellog@php.net", + "role": "Helper" + }, + { + "name": "Andrei Zmievski", + "email": "andrei@php.net", + "role": "Lead" + }, + { + "name": "Stig Bakken", + "email": "stig@php.net", + "role": "Developer" + } ], - "description": "The PEAR package contains:\n * the PEAR installer, for creating, distributing\n and installing packages\n * the PEAR_Exception PHP5 error handling mechanism\n * the PEAR_ErrorStack advanced error handling mechanism\n * the PEAR_Error error handling mechanism\n * the OS_Guess class for retrieving info about the OS\n where PHP is running on\n * the System class for quick handling of common operations\n with files and directories\n * the PEAR base class\n Features in a nutshell:\n * full support for channels\n * pre-download dependency validation\n * new package.xml 2.0 format allows tremendous flexibility while maintaining BC\n * support for optional dependency groups and limited support for sub-packaging\n * robust dependency support\n * full dependency validation on uninstall\n * remote install for hosts with only ftp access - no more problems with\n restricted host installation\n * full support for mirroring\n * support for bundling several packages into a single tarball\n * support for static dependencies on a url-based package\n * support for custom file roles and installation tasks" + "description": "More info available on: http://pear.php.net/package/Console_Getopt", + "time": "2015-07-20T20:28:12+00:00" }, { - "name": "pear-pear.php.net/Services_JSON", - "version": "1.0.3", - "dist": { - "type": "file", - "url": "http://pear.php.net/get/Services_JSON-1.0.3.tgz", - "reference": null, - "shasum": null - }, - "require": { - "php": ">=4.3.0.0" - }, - "replace": { - "pear-pear/services_json": "== 1.0.3.0" - }, - "type": "pear-library", - "autoload": { - "classmap": [ - "" - ] + "name": "pear/mail", + "version": "v1.4.1", + "source": { + "type": "git", + "url": "https://github.com/pear/Mail.git", + "reference": "9609ed5e42ac5b221dfd9af85de005c59d418ee7" }, - "include-path": [ - "/" - ], - "license": [ - "BSD" - ], - "description": "JSON (JavaScript Object Notation, http://json.org) is a lightweight data-interchange format. \n It is easy for humans to read and write. It is easy for machines to parse and generate. \n It is based on a subset of the JavaScript Programming Language, Standard ECMA-262 3rd Edition - December 1999. \n This feature can also be found in Python. JSON is a text format that is completely language independent \n but uses conventions that are familiar to programmers of the C-family of languages, including\n C, C++, C#, Java, JavaScript, Perl, TCL, and many others. These properties make JSON an ideal\n data-interchange language.\n\n This package provides a simple encoder and decoder for JSON notation. It is intended for use\n with client-side Javascript applications that make use of HTTPRequest to perform server \n communication functions - data can be encoded into JSON notation for use in a client-side\n javascript, or decoded from incoming Javascript requests. JSON format is native to Javascript, \n and can be directly eval()'ed with no further parsing overhead." - }, - { - "name": "pear-pear.php.net/Structures_Graph", - "version": "1.1.1", "dist": { - "type": "file", - "url": "http://pear.php.net/get/Structures_Graph-1.1.1.tgz", - "reference": null, - "shasum": null + "type": "zip", + "url": "https://api.github.com/repos/pear/Mail/zipball/9609ed5e42ac5b221dfd9af85de005c59d418ee7", + "reference": "9609ed5e42ac5b221dfd9af85de005c59d418ee7", + "shasum": "" }, "require": { - "php": ">=5.3.0.0" - }, - "replace": { - "pear-pear/structures_graph": "== 1.1.1.0" - }, - "type": "pear-library", - "autoload": { - "classmap": [ - "" - ] - }, - "include-path": [ - "/" - ], - "license": [ - "LGPL-3.0+" - ], - "description": "Structures_Graph is a package for creating and manipulating graph datastructures. It allows building of directed\nand undirected graphs, with data and metadata stored in nodes. The library provides functions for graph traversing\nas well as for characteristic extraction from the graph topology." - }, - { - "name": "pear-pear.php.net/Text_Password", - "version": "1.2.1", - "dist": { - "type": "file", - "url": "http://pear.php.net/get/Text_Password-1.2.1.tgz", - "reference": null, - "shasum": null + "pear/pear-core-minimal": "~1.9", + "php": ">=5.2.1" }, - "require": { - "php": ">=5.2.1.0" + "require-dev": { + "pear/pear": "*" }, - "replace": { - "pear-pear/text_password": "== 1.2.1.0" + "suggest": { + "pear/net_smtp": "Install optionally via your project's composer.json" }, - "type": "pear-library", + "type": "library", "autoload": { - "classmap": [ - "" - ] + "psr-0": { + "Mail": "./" + } }, + "notification-url": "https://packagist.org/downloads/", "include-path": [ - "/" + "./" ], "license": [ - "MIT License" - ], - "description": "Text_Password allows one to create pronounceable and unpronounceable\npasswords. The full functional range is explained in the manual at\nhttp://pear.php.net/manual/." - }, - { - "name": "pear-pear.php.net/XML_Parser", - "version": "1.3.7", - "dist": { - "type": "file", - "url": "http://pear.php.net/get/XML_Parser-1.3.7.tgz", - "reference": null, - "shasum": null - }, - "require": { - "pear-pear.php.net/pear": "*", - "php": ">=4.2.0.0" - }, - "replace": { - "pear-pear/xml_parser": "== 1.3.7.0" - }, - "type": "pear-library", - "autoload": { - "classmap": [ - "" - ] - }, - "include-path": [ - "/" + "BSD-2-Clause" ], - "license": [ - "BSD License" + "authors": [ + { + "name": "Chuck Hagenbuch", + "email": "chuck@horde.org", + "role": "lead" + }, + { + "name": "Richard Heyes", + "email": "richard@phpguru.org", + "role": "Developer" + }, + { + "name": "Aleksander Machniak", + "email": "alec@alec.pl", + "role": "Developer" + } ], - "description": "This is an XML parser based on PHPs built-in xml extension.\nIt supports two basic modes of operation: \"func\" and \"event\". In \"func\" mode, it will look for a function named after each element (xmltag_ELEMENT for start tags and xmltag_ELEMENT_ for end tags), and in \"event\" mode it uses a set of generic callbacks.\n\nSince version 1.2.0 there's a new XML_Parser_Simple class that makes parsing of most XML documents easier, by automatically providing a stack for the elements.\nFurthermore its now possible to split the parser from the handler object, so you do not have to extend XML_Parser anymore in order to parse a document with it." + "description": "Class that provides multiple interfaces for sending emails.", + "homepage": "http://pear.php.net/package/Mail", + "time": "2017-04-11T17:27:29+00:00" }, { - "name": "pear-pear.php.net/XML_Serializer", - "version": "0.21.0", + "name": "pear/pear-core-minimal", + "version": "v1.10.7", + "source": { + "type": "git", + "url": "https://github.com/pear/pear-core-minimal.git", + "reference": "19a3e0fcd50492c4357372f623f55f1b144346da" + }, "dist": { - "type": "file", - "url": "http://pear.php.net/get/XML_Serializer-0.21.0.tgz", - "reference": null, - "shasum": null + "type": "zip", + "url": "https://api.github.com/repos/pear/pear-core-minimal/zipball/19a3e0fcd50492c4357372f623f55f1b144346da", + "reference": "19a3e0fcd50492c4357372f623f55f1b144346da", + "shasum": "" }, "require": { - "ext-xml": "*", - "pear-pear.php.net/pear": "*", - "pear-pear.php.net/xml_parser": ">=1.2.6.0", - "pear-pear.php.net/xml_util": ">=1.1.1.0", - "php": ">=4.2.0.0" + "pear/console_getopt": "~1.4", + "pear/pear_exception": "~1.0" }, "replace": { - "pear-pear/xml_serializer": "== 0.21.0.0" + "rsky/pear-core-min": "self.version" }, - "type": "pear-library", + "type": "library", "autoload": { - "classmap": [ - "" - ] + "psr-0": { + "": "src/" + } }, + "notification-url": "https://packagist.org/downloads/", "include-path": [ - "/" + "src/" ], "license": [ - "BSD License" + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Christian Weiske", + "email": "cweiske@php.net", + "role": "Lead" + } ], - "description": "XML_Serializer serializes complex data structures like arrays or object as XML documents.\nThis class helps you generating any XML document you require without the need for DOM.\nFurthermore this package can be used as a replacement to serialize() and unserialize() as it comes with a matching XML_Unserializer that is able to create PHP data structures (like arrays and objects) from XML documents, if type hints are available.\nIf you use the XML_Unserializer on standard XML files, it will try to guess how it has to be unserialized. In most cases it does exactly what you expect it to do.\nTry reading a RSS file with XML_Unserializer and you have the whole RSS file in a structured array or even a collection of objects, similar to XML_RSS.\n\nSince version 0.8.0 the package is able to treat XML documents similar to the simplexml extension of PHP 5." + "description": "Minimal set of PEAR core files to be used as composer dependency", + "time": "2018-12-05T20:03:52+00:00" }, { - "name": "pear-pear.php.net/XML_Util", - "version": "1.4.3", + "name": "pear/pear_exception", + "version": "v1.0.0", + "source": { + "type": "git", + "url": "https://github.com/pear/PEAR_Exception.git", + "reference": "8c18719fdae000b690e3912be401c76e406dd13b" + }, "dist": { - "type": "file", - "url": "http://pear.php.net/get/XML_Util-1.4.3.tgz", - "reference": null, - "shasum": null + "type": "zip", + "url": "https://api.github.com/repos/pear/PEAR_Exception/zipball/8c18719fdae000b690e3912be401c76e406dd13b", + "reference": "8c18719fdae000b690e3912be401c76e406dd13b", + "shasum": "" }, "require": { - "ext-pcre": "*", - "php": ">=5.4.0.0" + "php": ">=4.4.0" }, - "replace": { - "pear-pear/xml_util": "== 1.4.3.0" + "require-dev": { + "phpunit/phpunit": "*" + }, + "type": "class", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } }, - "type": "pear-library", "autoload": { - "classmap": [ - "" - ] + "psr-0": { + "PEAR": "" + } }, + "notification-url": "https://packagist.org/downloads/", "include-path": [ - "/" + "." ], "license": [ - "BSD License" + "BSD-2-Clause" ], - "description": "Selection of methods that are often needed when working with XML documents. Functionality includes creating of attribute lists from arrays, creation of tags, validation of XML names and more." + "authors": [ + { + "name": "Helgi Thormar", + "email": "dufuz@php.net" + }, + { + "name": "Greg Beaver", + "email": "cellog@php.net" + } + ], + "description": "The PEAR Exception base class.", + "homepage": "https://github.com/pear/PEAR_Exception", + "keywords": [ + "exception" + ], + "time": "2015-02-10T20:07:52+00:00" }, { - "name": "pear/archive_tar", - "version": "1.4.3", + "name": "pear/text_password", + "version": "1.2.1", "source": { "type": "git", - "url": "https://github.com/pear/Archive_Tar.git", - "reference": "43455c960da70e655c6bdf8ea2bc8cc1a6034afb" + "url": "https://github.com/pear/Text_Password.git", + "reference": "9d112ec647e7e2efb78bd10dd9aaed21c899d739" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/pear/Archive_Tar/zipball/43455c960da70e655c6bdf8ea2bc8cc1a6034afb", - "reference": "43455c960da70e655c6bdf8ea2bc8cc1a6034afb", + "url": "https://api.github.com/repos/pear/Text_Password/zipball/9d112ec647e7e2efb78bd10dd9aaed21c899d739", + "reference": "9d112ec647e7e2efb78bd10dd9aaed21c899d739", "shasum": "" }, "require": { - "pear/pear-core-minimal": "^1.10.0alpha2", - "php": ">=5.2.0" + "pear/pear_exception": "*", + "php": ">=5.2.1" }, "require-dev": { "phpunit/phpunit": "*" }, - "suggest": { - "ext-bz2": "bz2 compression support.", - "ext-xz": "lzma2 compression support.", - "ext-zlib": "Gzip compression support." - }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.4.x-dev" - } - }, "autoload": { "psr-0": { - "Archive_Tar": "" + "Text": "./" } }, "notification-url": "https://packagist.org/downloads/", @@ -601,48 +462,47 @@ "./" ], "license": [ - "BSD-3-Clause" + "MIT" ], "authors": [ { - "name": "Vincent Blavet", - "email": "vincent@phpconcept.net" - }, - { - "name": "Greg Beaver", - "email": "greg@chiaraquartet.net" + "name": "Martin Jansen", + "email": "mj@php.net", + "role": "Lead" }, { - "name": "Michiel Rook", - "email": "mrook@php.net" + "name": "Olivier Vanhoucke", + "email": "olivier@php.net", + "role": "Lead" } ], - "description": "Tar file management class", - "homepage": "https://github.com/pear/Archive_Tar", - "keywords": [ - "archive", - "tar" - ], - "time": "2017-06-11T17:28:11+00:00" + "description": "More info available on: http://pear.php.net/package/Text_Password", + "time": "2016-02-26T19:57:20+00:00" }, { - "name": "pear/console_getopt", - "version": "v1.4.1", + "name": "pear/xml_parser", + "version": "v1.3.7", "source": { "type": "git", - "url": "https://github.com/pear/Console_Getopt.git", - "reference": "82f05cd1aa3edf34e19aa7c8ca312ce13a6a577f" + "url": "https://github.com/pear/XML_Parser.git", + "reference": "c9fc042d3a168c440c84ab1fed187ec784b3aac0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/pear/Console_Getopt/zipball/82f05cd1aa3edf34e19aa7c8ca312ce13a6a577f", - "reference": "82f05cd1aa3edf34e19aa7c8ca312ce13a6a577f", + "url": "https://api.github.com/repos/pear/XML_Parser/zipball/c9fc042d3a168c440c84ab1fed187ec784b3aac0", + "reference": "c9fc042d3a168c440c84ab1fed187ec784b3aac0", "shasum": "" }, + "require": { + "pear/pear-core-minimal": "*" + }, + "require-dev": { + "pear/pear": "*" + }, "type": "library", "autoload": { "psr-0": { - "Console": "./" + "XML": "./" } }, "notification-url": "https://packagist.org/downloads/", @@ -654,122 +514,134 @@ ], "authors": [ { - "name": "Greg Beaver", - "email": "cellog@php.net", - "role": "Helper" + "name": "Stephan Schmidt", + "email": "schst@php-tools.net", + "role": "Lead" }, { - "name": "Andrei Zmievski", - "email": "andrei@php.net", + "name": "Chuck Burgess", + "email": "ashnazg@php.net", "role": "Lead" }, { - "name": "Stig Bakken", + "name": "Stig Sæther Bakken", "email": "stig@php.net", "role": "Developer" + }, + { + "name": "Tomas V.V.Cox", + "email": "cox@php.net", + "role": "Developer" } ], - "description": "More info available on: http://pear.php.net/package/Console_Getopt", - "time": "2015-07-20T20:28:12+00:00" + "description": "XML parser", + "time": "2016-07-04T21:23:25+00:00" }, { - "name": "pear/pear-core-minimal", - "version": "v1.10.3", + "name": "pear/xml_serializer", + "version": "v0.22.0", "source": { "type": "git", - "url": "https://github.com/pear/pear-core-minimal.git", - "reference": "070f0b600b2caca2501e2c9b7e553016e4b0d115" + "url": "https://github.com/pear/XML_Serializer.git", + "reference": "f171521481144ba7fe1dd26fab5d56626248b173" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/pear/pear-core-minimal/zipball/070f0b600b2caca2501e2c9b7e553016e4b0d115", - "reference": "070f0b600b2caca2501e2c9b7e553016e4b0d115", + "url": "https://api.github.com/repos/pear/XML_Serializer/zipball/f171521481144ba7fe1dd26fab5d56626248b173", + "reference": "f171521481144ba7fe1dd26fab5d56626248b173", "shasum": "" }, "require": { - "pear/console_getopt": "~1.4", - "pear/pear_exception": "~1.0" + "ext-xml": "*", + "pear/pear-core-minimal": "*", + "pear/xml_parser": "*", + "pear/xml_util": "*" }, - "replace": { - "rsky/pear-core-min": "self.version" + "require-dev": { + "phpunit/phpunit": "*" }, "type": "library", "autoload": { "psr-0": { - "": "src/" + "XML": "./" } }, "notification-url": "https://packagist.org/downloads/", "include-path": [ - "src/" + "./" ], "license": [ - "BSD-3-Clause" + "BSD-2-Clause" ], "authors": [ { - "name": "Christian Weiske", - "email": "cweiske@php.net", + "name": "Stephan Schmidt", + "email": "schst@php-tools.net", + "role": "Lead" + }, + { + "name": "Chuck Burgess", + "email": "ashnazg@php.net", "role": "Lead" } ], - "description": "Minimal set of PEAR core files to be used as composer dependency", - "time": "2017-02-28T16:46:11+00:00" + "description": "More info available on: http://pear.php.net/package/XML_Serializer", + "time": "2018-02-13T14:04:37+00:00" }, { - "name": "pear/pear_exception", - "version": "v1.0.0", + "name": "pear/xml_util", + "version": "v1.4.3", "source": { "type": "git", - "url": "https://github.com/pear/PEAR_Exception.git", - "reference": "8c18719fdae000b690e3912be401c76e406dd13b" + "url": "https://github.com/pear/XML_Util.git", + "reference": "c74278d925be9c2f7d39955cdce45d8275571a1d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/pear/PEAR_Exception/zipball/8c18719fdae000b690e3912be401c76e406dd13b", - "reference": "8c18719fdae000b690e3912be401c76e406dd13b", + "url": "https://api.github.com/repos/pear/XML_Util/zipball/c74278d925be9c2f7d39955cdce45d8275571a1d", + "reference": "c74278d925be9c2f7d39955cdce45d8275571a1d", "shasum": "" }, "require": { - "php": ">=4.4.0" + "pear/pear-core-minimal": "^1.10.1", + "php": ">=5.4" }, "require-dev": { - "phpunit/phpunit": "*" - }, - "type": "class", - "extra": { - "branch-alias": { - "dev-master": "1.0.x-dev" - } + "phpunit/phpunit": "@stable" }, + "type": "library", "autoload": { "psr-0": { - "PEAR": "" + "XML_Util": "./" } }, "notification-url": "https://packagist.org/downloads/", "include-path": [ - "." + "./" ], "license": [ - "BSD-2-Clause" + "BSD-3-Clause" ], "authors": [ { - "name": "Helgi Thormar", - "email": "dufuz@php.net" + "name": "Stephan Schmidt", + "email": "schst@php-tools.net", + "role": "Lead" }, { - "name": "Greg Beaver", - "email": "cellog@php.net" + "name": "Chuck Burgess", + "email": "ashnazg@php.net", + "role": "Lead" + }, + { + "name": "Davey Shafik", + "email": "davey@php.net", + "role": "Helper" } ], - "description": "The PEAR Exception base class.", - "homepage": "https://github.com/pear/PEAR_Exception", - "keywords": [ - "exception" - ], - "time": "2015-02-10T20:07:52+00:00" + "description": "Methods to work with XML documents", + "homepage": "http://pear.php.net/package/XML_Util", + "time": "2017-06-28T19:21:19+00:00" }, { "name": "setasign/fpdf", @@ -903,6 +775,53 @@ ], "time": "2015-10-12T15:37:35+00:00" }, + { + "name": "silverorange/mdb2", + "version": "2.5.2-b.5", + "source": { + "type": "git", + "url": "https://github.com/silverorange/MDB2.git", + "reference": "8b8f064de2c468345968e6eb2797e301bbea4233" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/silverorange/MDB2/zipball/8b8f064de2c468345968e6eb2797e301bbea4233", + "reference": "8b8f064de2c468345968e6eb2797e301bbea4233", + "shasum": "" + }, + "require": { + "pear/pear-core-minimal": "^1.9.0", + "php": ">=5.2.0" + }, + "type": "library", + "autoload": { + "psr-0": { + "MDB2": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "include-path": [ + "./" + ], + "license": [ + "BSD-2-Clause" + ], + "authors": [ + { + "name": "Michael Gauthier", + "email": "mike@silverorange.com" + } + ], + "description": "PEAR MDB2 is a merge of the PEAR DB and Metabase php database abstraction layers.", + "homepage": "https://github.com/silverorange/MDB2", + "keywords": [ + "database", + "dbal", + "metabase", + "orm" + ], + "time": "2016-01-08T21:22:05+00:00" + }, { "name": "smarty/smarty", "version": "v3.1.32", @@ -1017,6 +936,39 @@ ], "time": "2017-08-30T11:04:43+00:00" }, + { + "name": "captbaritone/mailcatcher-codeception-module", + "version": "1.2.1", + "source": { + "type": "git", + "url": "https://github.com/captbaritone/codeception-mailcatcher-module.git", + "reference": "75ba9aa803d81780ee7e9b5c36bb5b8f9139d972" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/captbaritone/codeception-mailcatcher-module/zipball/75ba9aa803d81780ee7e9b5c36bb5b8f9139d972", + "reference": "75ba9aa803d81780ee7e9b5c36bb5b8f9139d972", + "shasum": "" + }, + "require": { + "guzzlehttp/guzzle": "*" + }, + "type": "library", + "autoload": { + "psr-4": { + "Codeception\\Module\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "authors": [ + { + "name": "Jordan Eldredge", + "email": "jordan@jordaneldredge.com" + } + ], + "description": "Test emails in your Codeception acceptance tests", + "time": "2016-08-16T21:35:06+00:00" + }, { "name": "codeception/codeception", "version": "2.4.1", @@ -1287,6 +1239,56 @@ ], "time": "2016-08-10T00:44:08+00:00" }, + { + "name": "fzaninotto/faker", + "version": "v1.8.0", + "source": { + "type": "git", + "url": "https://github.com/fzaninotto/Faker.git", + "reference": "f72816b43e74063c8b10357394b6bba8cb1c10de" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/fzaninotto/Faker/zipball/f72816b43e74063c8b10357394b6bba8cb1c10de", + "reference": "f72816b43e74063c8b10357394b6bba8cb1c10de", + "shasum": "" + }, + "require": { + "php": "^5.3.3 || ^7.0" + }, + "require-dev": { + "ext-intl": "*", + "phpunit/phpunit": "^4.8.35 || ^5.7", + "squizlabs/php_codesniffer": "^1.5" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.8-dev" + } + }, + "autoload": { + "psr-4": { + "Faker\\": "src/Faker/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "François Zaninotto" + } + ], + "description": "Faker is a PHP library that generates fake data for you.", + "keywords": [ + "data", + "faker", + "fixtures" + ], + "time": "2018-07-12T10:23:15+00:00" + }, { "name": "guzzle/guzzle", "version": "v3.9.3", @@ -1385,16 +1387,16 @@ }, { "name": "guzzlehttp/guzzle", - "version": "5.3.2", + "version": "5.3.3", "source": { "type": "git", "url": "https://github.com/guzzle/guzzle.git", - "reference": "f9acb4761844317e626a32259205bec1f1bc60d2" + "reference": "93bbdb30d59be6cd9839495306c65f2907370eb9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/guzzle/zipball/f9acb4761844317e626a32259205bec1f1bc60d2", - "reference": "f9acb4761844317e626a32259205bec1f1bc60d2", + "url": "https://api.github.com/repos/guzzle/guzzle/zipball/93bbdb30d59be6cd9839495306c65f2907370eb9", + "reference": "93bbdb30d59be6cd9839495306c65f2907370eb9", "shasum": "" }, "require": { @@ -1434,7 +1436,7 @@ "rest", "web service" ], - "time": "2018-01-15T07:18:01+00:00" + "time": "2018-07-31T13:33:10+00:00" }, { "name": "guzzlehttp/psr7", @@ -1503,16 +1505,16 @@ }, { "name": "guzzlehttp/ringphp", - "version": "1.1.0", + "version": "1.1.1", "source": { "type": "git", "url": "https://github.com/guzzle/RingPHP.git", - "reference": "dbbb91d7f6c191e5e405e900e3102ac7f261bc0b" + "reference": "5e2a174052995663dd68e6b5ad838afd47dd615b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/RingPHP/zipball/dbbb91d7f6c191e5e405e900e3102ac7f261bc0b", - "reference": "dbbb91d7f6c191e5e405e900e3102ac7f261bc0b", + "url": "https://api.github.com/repos/guzzle/RingPHP/zipball/5e2a174052995663dd68e6b5ad838afd47dd615b", + "reference": "5e2a174052995663dd68e6b5ad838afd47dd615b", "shasum": "" }, "require": { @@ -1550,7 +1552,7 @@ } ], "description": "Provides a simple API and specification that abstracts away the details of HTTP into a single PHP function.", - "time": "2015-05-20T03:37:09+00:00" + "time": "2018-07-31T13:22:33+00:00" }, { "name": "guzzlehttp/streams", @@ -2088,6 +2090,7 @@ "mock", "xunit" ], + "abandoned": true, "time": "2015-10-02T06:51:40+00:00" }, { @@ -2189,16 +2192,16 @@ }, { "name": "react/promise", - "version": "v2.7.0", + "version": "v2.7.1", "source": { "type": "git", "url": "https://github.com/reactphp/promise.git", - "reference": "f4edc2581617431aea50430749db55cc3fc031b3" + "reference": "31ffa96f8d2ed0341a57848cbb84d88b89dd664d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/reactphp/promise/zipball/f4edc2581617431aea50430749db55cc3fc031b3", - "reference": "f4edc2581617431aea50430749db55cc3fc031b3", + "url": "https://api.github.com/repos/reactphp/promise/zipball/31ffa96f8d2ed0341a57848cbb84d88b89dd664d", + "reference": "31ffa96f8d2ed0341a57848cbb84d88b89dd664d", "shasum": "" }, "require": { @@ -2231,7 +2234,7 @@ "promise", "promises" ], - "time": "2018-06-13T15:59:06+00:00" + "time": "2019-01-07T21:25:54+00:00" }, { "name": "satooshi/php-coveralls", @@ -3212,7 +3215,7 @@ }, { "name": "Gert de Pagter", - "email": "BackEndTea@gmail.com" + "email": "backendtea@gmail.com" } ], "description": "Symfony polyfill for ctype functions", @@ -3384,26 +3387,17 @@ "time": "2018-05-01T22:52:40+00:00" } ], - "aliases": [ - { - "alias": "2.5.0", - "alias_normalized": "2.5.0.0", - "version": "2.5.0.0-beta5", - "package": "pear-pear.php.net/mdb2" - } - ], + "aliases": [], "minimum-stability": "stable", "stability-flags": { - "pear-pear.php.net/mdb2_driver_mysqli": 10, - "pear-pear.php.net/mdb2_driver_pgsql": 10, - "pear-pear.php.net/mdb2": 10 + "silverorange/mdb2": 10 }, "prefer-stable": false, "prefer-lowest": false, "platform": { "php": ">=5.3.9", - "ext-mbstring": "*", - "ext-gd": "*" + "ext-gd": "*", + "ext-mbstring": "*" }, "platform-dev": [], "platform-overrides": { diff --git a/ctests/_support/MailCatcherGuzzle5.php b/ctests/_support/MailCatcherGuzzle5.php new file mode 100644 index 0000000000..8c1c15f8db --- /dev/null +++ b/ctests/_support/MailCatcherGuzzle5.php @@ -0,0 +1,32 @@ +config['url'], '/') . ':' . $this->config['port']; + // XXX FIX base_uri to base_url + // see https://github.com/captbaritone/codeception-mailcatcher-module/issues/28 + + $this->mailcatcher = new \GuzzleHttp\Client(['base_url' => $base_uri]); + + if (isset($this->config['guzzleRequestOptions'])) { + foreach ($this->config['guzzleRequestOptions'] as $option => $value) { + $this->mailcatcher->setDefaultOption($option, $value); + } + } + } + + protected function emailFromId($id) + { + $response = $this->mailcatcher->get("/messages/{$id}.json"); + $message = json_decode($response->getBody(), true); + + $message['source'] = quoted_printable_decode($message['source']); + $message['source'] = mb_convert_encoding($message['source'], 'UTF-8', 'JIS'); + return $message; + } +} diff --git a/ctests/acceptance.suite.yml b/ctests/acceptance.suite.yml index de18766008..987e0f9c3e 100644 --- a/ctests/acceptance.suite.yml +++ b/ctests/acceptance.suite.yml @@ -7,14 +7,38 @@ class_name: AcceptanceTester modules: enabled: - - PhpBrowser - AcceptanceHelper + - WebDriver + - MailCatcherGuzzle5 config: PhpBrowser: url: 'http://localhost:8085/' + WebDriver: + browser: chrome + url: 'http://localhost:8085/' + host: 'localhost' + port: 9515 + window_size: 1680x3000 + wait: 10 + capabilities: + unexpectedAlertBehaviour: 'accept' + elementScrollBehavior: 1 + MailCatcherGuzzle5: + url: 'http://127.0.0.1' + port: '1080' + env: travis: modules: config: - PhpBrowser: + PhpBrowser: url: 'http://localhost:8085/' + chrome: + modules: + config: + WebDriver: + browser: chrome + capabilities: + chromeOptions: + prefs: + download.default_directory: '%PWD%/codeception/_support/_downloads' diff --git a/ctests/acceptance/AdminHomeCept.php b/ctests/acceptance/AdminHomeCept.php new file mode 100644 index 0000000000..06e4bf9364 --- /dev/null +++ b/ctests/acceptance/AdminHomeCept.php @@ -0,0 +1,10 @@ +wantTo('管理画面に正常にログインできるかを確認する'); +$I->amOnPage('/admin'); + +$I->fillField('input[name=login_id]', 'admin'); +$I->fillField('input[name=password]', 'password'); +$I->click(['css' => '.btn-tool-format']); + +$I->see('ログイン : 管理者 様'); diff --git a/ctests/acceptance/EntryCept.php b/ctests/acceptance/EntryCept.php new file mode 100644 index 0000000000..880727212a --- /dev/null +++ b/ctests/acceptance/EntryCept.php @@ -0,0 +1,53 @@ +resetEmails(); + +$new_email = microtime(true).'.'.$faker->safeEmail; + +$I->wantTo('会員登録が正常にできるかを確認する'); +$I->amOnPage('/entry/kiyaku.php'); +$I->see('ご利用規約'); + +// 同意するをクリック +$I->click(['xpath' => '//*[@id="form1"]/div/ul/li[2]/a']); +$I->see('会員登録(入力ページ)'); + +$form = [ + 'name01' => $faker->lastName, + 'name02' => $faker->firstName, + 'kana01' => $faker->lastKanaName, + 'kana02' => $faker->firstKanaName, + 'zip01' => '530', + 'zip02' => '0001', + 'pref' => $faker->numberBetween(1, 47), + 'addr01' => $faker->city, + 'addr02' => $faker->streetAddress, + 'tel01' => '111', + 'tel02' => '111', + 'tel03' => '111', + 'email' => $new_email, + 'email02' => $new_email, + 'password' => 'password', + 'password02' => 'password', + 'sex' => (string) $faker->numberBetween(1, 2), + 'reminder' => (string) $faker->numberBetween(1, 7), + 'reminder_answer' => $faker->word, + 'mailmaga_flg' => (string) $faker->numberBetween(1, 2) +]; +$I->submitForm('#form1', $form, '#confirm'); + +$I->see('会員登録(確認ページ)'); + +$I->see($new_email); +$I->see($form['zip01'].' - '.$form['zip02']); + +$I->click(['id' => 'send']); + +$I->see('本登録が完了いたしました'); + +$I->seeEmailCount(1); +$I->seeInLastEmailSubjectTo($new_email, '会員登録のご完了'); +$I->seeInLastEmailTo($new_email, $form['name01'].$form['name02'].' 様'); +$I->seeInLastEmailTo($new_email, '本会員登録が完了いたしました。'); diff --git a/ctests/acceptance/_bootstrap.php b/ctests/acceptance/_bootstrap.php index 8a88555806..e71787bcfd 100644 --- a/ctests/acceptance/_bootstrap.php +++ b/ctests/acceptance/_bootstrap.php @@ -1,2 +1,5 @@ - +