diff --git a/.github/blunderbuss.yml b/.github/blunderbuss.yml
new file mode 100644
index 0000000000..a92a327c2c
--- /dev/null
+++ b/.github/blunderbuss.yml
@@ -0,0 +1,51 @@
+assign_issues_by:
+- labels:
+ - 'api: bigtable'
+ - 'api: datastore'
+ - 'api: firestore'
+ to:
+ - GoogleCloudPlatform/cloud-native-db-dpes
+- labels:
+ - 'api: cloudsql'
+ to:
+ - GoogleCloudPlatform/infra-db-sdk
+- labels:
+ - 'api: cloudiot'
+ to:
+ - laszlokorossy
+- labels:
+ - 'api: spanner'
+ to:
+ - shivgautam
+- labels:
+ - 'api: parametermanager'
+ to:
+ - GoogleCloudPlatform/cloud-parameters-team
+- labels:
+ - "api: modelarmor"
+ to:
+ - GoogleCloudPlatform/cloud-modelarmor-team
+
+assign_prs_by:
+- labels:
+ - 'api: bigtable'
+ - 'api: datastore'
+ - 'api: firestore'
+ to:
+ - GoogleCloudPlatform/cloud-native-db-dpes
+- labels:
+ - 'api: cloudsql'
+ to:
+ - GoogleCloudPlatform/infra-db-sdk
+- labels:
+ - 'api: cloudiot'
+ to:
+ - laszlokorossy
+- labels:
+ - 'api: parametermanager'
+ to:
+ - GoogleCloudPlatform/cloud-parameters-team
+- labels:
+ - "api: modelarmor"
+ to:
+ - GoogleCloudPlatform/cloud-modelarmor-team
diff --git a/.github/snippet-bot.yml b/.github/snippet-bot.yml
new file mode 100644
index 0000000000..8b13789179
--- /dev/null
+++ b/.github/snippet-bot.yml
@@ -0,0 +1 @@
+
diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml
new file mode 100644
index 0000000000..7a211eadda
--- /dev/null
+++ b/.github/workflows/lint.yml
@@ -0,0 +1,39 @@
+name: Lint
+
+on:
+ push:
+ branches: [ main ]
+ pull_request:
+
+jobs:
+ styles:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v6
+ - name: Install PHP
+ uses: shivammathur/setup-php@v2
+ with:
+ php-version: '8.2'
+
+ - name: Run Script
+ run: testing/run_cs_check.sh
+
+ staticanalysis:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v6
+ - name: Install PHP
+ uses: shivammathur/setup-php@v2
+ with:
+ php-version: '8.2'
+ - name: Get changed files
+ id: changedFiles
+ uses: tj-actions/changed-files@v47
+ - name: Run Script
+ run: |
+ composer install -d testing/
+ git fetch --no-tags --prune --depth=5 origin main
+ bash testing/run_staticanalysis_check.sh
+ env:
+ FILES_CHANGED: ${{ steps.changedFiles.outputs.all_changed_files }}
+ PULL_REQUEST_NUMBER: ${{ github.event.pull_request.number }}
\ No newline at end of file
diff --git a/.gitignore b/.gitignore
index 2d57ea65cb..7d37bad4a6 100644
--- a/.gitignore
+++ b/.gitignore
@@ -2,8 +2,14 @@
*~
*.iml
composer.phar
+composer.lock
vendor/
credentials.*
**/vendor/
**/build/
.php_cs.cache
+.php-cs-fixer.cache
+.vscode/
+.kokoro/secrets.sh
+.phpunit.result.cache
+.DS_Store
diff --git a/.kokoro/common.cfg b/.kokoro/common.cfg
new file mode 100644
index 0000000000..331cabe7eb
--- /dev/null
+++ b/.kokoro/common.cfg
@@ -0,0 +1,16 @@
+# Format: //devtools/kokoro/config/proto/build.proto
+
+# Download trampoline resources. These will be in ${KOKORO_GFILE_DIR}
+gfile_resources: "/bigstore/cloud-devrel-kokoro-resources/trampoline"
+
+# Download credentials from Cloud Storage.
+gfile_resources: "/bigstore/cloud-devrel-kokoro-resources/php-docs-samples"
+
+# All builds use the trampoline script to run in docker.
+build_file: "php-docs-samples/.kokoro/trampoline.sh"
+
+# Configure the docker image for kokoro-trampoline.
+env_vars: {
+ key: "TRAMPOLINE_BUILD_FILE"
+ value: "github/php-docs-samples/.kokoro/system_tests.sh"
+}
diff --git a/.kokoro/deploy_gae.cfg b/.kokoro/deploy_gae.cfg
new file mode 100644
index 0000000000..e168779678
--- /dev/null
+++ b/.kokoro/deploy_gae.cfg
@@ -0,0 +1,19 @@
+# Format: //devtools/kokoro/config/proto/build.proto
+
+# Configure the docker image for kokoro-trampoline.
+env_vars: {
+ key: "TRAMPOLINE_IMAGE"
+ value: "gcr.io/cloud-devrel-kokoro-resources/php81"
+}
+
+# Run the deployment tests
+env_vars: {
+ key: "RUN_DEPLOYMENT_TESTS"
+ value: "true"
+}
+
+# Only run deployment tests for App Engine Standard
+env_vars: {
+ key: "TEST_DIRECTORIES"
+ value: "appengine/standard"
+}
diff --git a/.kokoro/deploy_gcf.cfg b/.kokoro/deploy_gcf.cfg
new file mode 100644
index 0000000000..40fa84403d
--- /dev/null
+++ b/.kokoro/deploy_gcf.cfg
@@ -0,0 +1,19 @@
+# Format: //devtools/kokoro/config/proto/build.proto
+
+# Configure the docker image for kokoro-trampoline.
+env_vars: {
+ key: "TRAMPOLINE_IMAGE"
+ value: "gcr.io/cloud-devrel-kokoro-resources/php81"
+}
+
+# Run the deployment tests
+env_vars: {
+ key: "RUN_DEPLOYMENT_TESTS"
+ value: "true"
+}
+
+# Only run deployment tests for Cloud Functions
+env_vars: {
+ key: "TEST_DIRECTORIES"
+ value: "functions"
+}
diff --git a/.kokoro/deploy_misc.cfg b/.kokoro/deploy_misc.cfg
new file mode 100644
index 0000000000..12d103d622
--- /dev/null
+++ b/.kokoro/deploy_misc.cfg
@@ -0,0 +1,19 @@
+# Format: //devtools/kokoro/config/proto/build.proto
+
+# Configure the docker image for kokoro-trampoline.
+env_vars: {
+ key: "TRAMPOLINE_IMAGE"
+ value: "gcr.io/cloud-devrel-kokoro-resources/php81"
+}
+
+# Run the deployment tests
+env_vars: {
+ key: "RUN_DEPLOYMENT_TESTS"
+ value: "true"
+}
+
+# Run deployment tests for Cloud Run, EventArc Endpoints
+env_vars: {
+ key: "TEST_DIRECTORIES"
+ value: "endpoints eventarc run"
+}
diff --git a/.kokoro/php81.cfg b/.kokoro/php81.cfg
new file mode 100644
index 0000000000..1b7a81d36a
--- /dev/null
+++ b/.kokoro/php81.cfg
@@ -0,0 +1,17 @@
+# Format: //devtools/kokoro/config/proto/build.proto
+
+# Configure the docker image for kokoro-trampoline.
+env_vars: {
+ key: "TRAMPOLINE_IMAGE"
+ value: "gcr.io/cloud-devrel-kokoro-resources/php81"
+}
+
+# Give the docker image a unique project ID and credentials per PHP version
+env_vars: {
+ key: "GOOGLE_ALT_PROJECT_ID"
+ value: "php-docs-samples-kokoro1"
+}
+env_vars: {
+ key: "GOOGLE_ALT_CREDENTIALS_FILENAME"
+ value: "service-account-kokoro1.json"
+}
diff --git a/.kokoro/php82.cfg b/.kokoro/php82.cfg
new file mode 100644
index 0000000000..824663d40a
--- /dev/null
+++ b/.kokoro/php82.cfg
@@ -0,0 +1,17 @@
+# Format: //devtools/kokoro/config/proto/build.proto
+
+# Configure the docker image for kokoro-trampoline.
+env_vars: {
+ key: "TRAMPOLINE_IMAGE"
+ value: "gcr.io/cloud-devrel-kokoro-resources/php82"
+}
+
+# Give the docker image a unique project ID and credentials per PHP version
+env_vars: {
+ key: "GOOGLE_ALT_PROJECT_ID"
+ value: "php-docs-samples-kokoro3"
+}
+env_vars: {
+ key: "GOOGLE_ALT_CREDENTIALS_FILENAME"
+ value: "service-account-kokoro3.json"
+}
diff --git a/.kokoro/php83.cfg b/.kokoro/php83.cfg
new file mode 100644
index 0000000000..4e05f8133a
--- /dev/null
+++ b/.kokoro/php83.cfg
@@ -0,0 +1,17 @@
+# Format: //devtools/kokoro/config/proto/build.proto
+
+# Configure the docker image for kokoro-trampoline.
+env_vars: {
+ key: "TRAMPOLINE_IMAGE"
+ value: "gcr.io/cloud-devrel-kokoro-resources/php83"
+}
+
+# Give the docker image a unique project ID and credentials per PHP version
+env_vars: {
+ key: "GOOGLE_ALT_PROJECT_ID"
+ value: "php-docs-samples-kokoro2"
+}
+env_vars: {
+ key: "GOOGLE_ALT_CREDENTIALS_FILENAME"
+ value: "service-account-kokoro2.json"
+}
diff --git a/.kokoro/php_rest.cfg b/.kokoro/php_rest.cfg
new file mode 100644
index 0000000000..1e7cfc90d6
--- /dev/null
+++ b/.kokoro/php_rest.cfg
@@ -0,0 +1,13 @@
+# Format: //devtools/kokoro/config/proto/build.proto
+
+# Configure the docker image for kokoro-trampoline.
+env_vars: {
+ key: "TRAMPOLINE_IMAGE"
+ value: "gcr.io/cloud-devrel-kokoro-resources/php81"
+}
+
+# Set this project to run REST tests only
+env_vars: {
+ key: "RUN_REST_TESTS_ONLY"
+ value: "true"
+}
diff --git a/.kokoro/secrets-example.sh b/.kokoro/secrets-example.sh
new file mode 100644
index 0000000000..74c4167519
--- /dev/null
+++ b/.kokoro/secrets-example.sh
@@ -0,0 +1,159 @@
+#!/bin/bash
+
+# This file contains the necessary environment variables for the kokoro
+# tests. Contact the repository owners if you need access to view or modify
+# the variables.
+#
+# Run the following gcloud command to decrypt secrets.sh.enc as follows:
+#
+# gcloud kms decrypt --location=global --keyring=ci --key=ci \
+# --ciphertext-file=.kokoro/secrets.sh.enc \
+# --plaintext-file=.kokoro/secrets.sh
+#
+# Then run `source .kokoro/secrets.sh`
+#
+# To modify the file, edit .kokoro/secrets.sh then use the following gcloud
+# command to encrypt it with the changes:
+#
+# gcloud kms encrypt --location=global --keyring=ci --key=ci \
+# --ciphertext-file=.kokoro/secrets.sh.enc \
+# --plaintext-file=.kokoro/secrets.sh
+
+# General
+export GOOGLE_PROJECT_ID=
+export GOOGLE_STORAGE_BUCKET=$GOOGLE_PROJECT_ID
+export GOOGLE_PROJECT_NUMBER=
+export GOOGLE_CLIENT_ID=
+export GOOGLE_CLIENT_SECRET=
+export GCLOUD_PROJECT=$GOOGLE_PROJECT_ID
+# For running tests in separate projects
+export GOOGLE_ALT_PROJECT_ID=$GOOGLE_PROJECT_ID
+
+# AppEngine
+export MAILJET_APIKEY=
+export MAILJET_SECRET=
+export MAILGUN_APIKEY=
+export MAILGUN_DOMAIN=
+export MAILGUN_RECIPIENT=
+export SENDGRID_APIKEY=
+export SENDGRID_SENDER=
+export TWILIO_ACCOUNT_SID=
+export TWILIO_AUTH_TOKEN=
+export TWILIO_FROM_NUMBER=
+export TWILIO_TO_NUMBER=
+
+# BigQuery
+export GOOGLE_BIGQUERY_DATASET=test_dataset
+export GOOGLE_BIGQUERY_TABLE=test_table
+
+# CloudSQL
+export CLOUDSQL_CONNECTION_NAME_MYSQL=
+export CLOUDSQL_CONNECTION_NAME_POSTGRES=
+export CLOUDSQL_CONNECTION_NAME=$CLOUDSQL_CONNECTION_NAME_MYSQL
+export CLOUDSQL_DATABASE=
+export CLOUDSQL_USER=
+export CLOUDSQL_PASSWORD=
+export MYSQL_DSN=
+export MYSQL_DATABASE=
+export MYSQL_USER=
+export MYSQL_PASSWORD=
+export POSTGRES_DSN=
+export POSTGRES_DATABASE=
+export POSTGRES_USER=
+export POSTGRES_PASSWORD=
+export SQLSERVER_DSN=
+export SQLSERVER_DATABASE=
+export SQLSERVER_USER=
+export SQLSERVER_PASSWORD=
+export DB_SOCKET_DIR=
+
+# Datastore
+export CLOUD_DATASTORE_NAMESPACE=
+export DATASTORE_EVENTUALLY_CONSISTENT_RETRY_COUNT=
+
+# DLP
+export DLP_DEID_WRAPPED_KEY=
+export DLP_DEID_KEY_NAME=projects/$GOOGLE_PROJECT_ID/locations/global/keyRings/ci/cryptoKeys/ci
+
+# DocumentAI
+export GOOGLE_DOCUMENTAI_PROCESSOR_ID=
+
+# Firestore
+export FIRESTORE_PROJECT_ID=
+
+# IAP
+export IAP_CLIENT_ID=
+export IAP_PROJECT_ID=
+export IAP_PROJECT_NUMBER=
+export IAP_URL=
+
+# IAM
+export GOOGLE_IAM_USER=
+
+# KMS
+export GOOGLE_KMS_KEYRING=
+export GOOGLE_KMS_CRYPTOKEY=
+export GOOGLE_KMS_CRYPTOKEY_ALTERNATE=
+export GOOGLE_KMS_SERVICEACCOUNTEMAIL=
+
+# Memorystore
+export REDIS_HOST=
+export REDIS_PORT=
+
+# Model Armor
+export MA_FOLDER_ID=
+export MA_ORG_ID=
+
+# PubSub
+export GOOGLE_PUBSUB_SUBSCRIPTION=php-example-subscription
+export GOOGLE_PUBSUB_TOPIC=php-example-topic
+# GOOGLE_PUBSUB_BIGQUERY_TABLE excludes project_id
+# for example if table is ${PROJECT_ID}.pubsub_test_dataset.pubsub_test_table
+# the value of GOOGLE_PUBSUB_BIGQUERY_TABLE should be pubsub_test_dataset.pubsub_test_table
+export GOOGLE_PUBSUB_BIGQUERY_TABLE=
+
+# Security Center
+export GOOGLE_ORGANIZATION_ID=
+export GOOGLE_SECURITYCENTER_PUBSUB_TOPIC=
+
+# Spanner
+export GOOGLE_SPANNER_INSTANCE_ID=
+export GOOGLE_SPANNER_DATABASE_ID=test-database
+
+# Storage
+export GOOGLE_STORAGE_OBJECT=storage/test_data.csv
+export GOOGLE_STORAGE_KMS_KEYNAME=projects/$GOOGLE_PROJECT_ID/locations/us/keyRings/$GOOGLE_KMS_KEYRING/cryptoKeys/storage-bucket
+export GOOGLE_REQUESTER_PAYS_STORAGE_BUCKET=$GOOGLE_STORAGE_BUCKET
+
+# Tasks
+export CLOUD_TASKS_APPENGINE_QUEUE=
+export CLOUD_TASKS_LOCATION=
+export CLOUD_TASKS_PULL_QUEUE=
+
+# Redislabs Memcache
+export MEMCACHE_USERNAME=
+export MEMCACHE_PASSWORD=
+export MEMCACHE_ENDPOINT=
+
+# WordPress
+export WORDPRESS_DB_INSTANCE_NAME=
+export WORDPRESS_DB_USER=$CLOUDSQL_USER
+export WORDPRESS_DB_PASSWORD=$CLOUDSQL_PASSWORD
+
+# Laravel
+export LARAVEL_CLOUDSQL_CONNECTION_NAME=$CLOUDSQL_CONNECTION_NAME_MYSQL
+export LARAVEL_DB_DATABASE=laravel
+export LARAVEL_DB_USERNAME=$CLOUDSQL_USER
+export LARAVEL_DB_PASSWORD=$CLOUDSQL_PASSWORD
+
+# Symfony
+export SYMFONY_CLOUDSQL_CONNECTION_NAME=$CLOUDSQL_CONNECTION_NAME_MYSQL
+export SYMFONY_DB_DATABASE=symfony
+export SYMFONY_DB_USERNAME=$CLOUDSQL_USER
+export SYMFONY_DB_PASSWORD=$CLOUDSQL_PASSWORD
+
+# Functions
+export BLURRED_BUCKET_NAME=$GCLOUD_PROJECT-functions
+
+# Google Analytics APIs
+export GA_TEST_PROPERTY_ID=
diff --git a/.kokoro/secrets.sh.enc b/.kokoro/secrets.sh.enc
new file mode 100644
index 0000000000..cf97be8bf8
Binary files /dev/null and b/.kokoro/secrets.sh.enc differ
diff --git a/.kokoro/system_tests.sh b/.kokoro/system_tests.sh
new file mode 100755
index 0000000000..5c286a2ad1
--- /dev/null
+++ b/.kokoro/system_tests.sh
@@ -0,0 +1,66 @@
+#!/bin/bash
+
+# Copyright 2017 Google Inc.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+set -e
+
+if [ "${BASH_DEBUG}" = "true" ]; then
+ set -x
+fi
+
+# Kokoro directory for running these samples
+cd github/php-docs-samples
+
+export GOOGLE_APPLICATION_CREDENTIALS=$KOKORO_GFILE_DIR/service-account.json
+if [ -n "$GOOGLE_ALT_CREDENTIALS_FILENAME" ]; then
+ export GOOGLE_ALT_APPLICATION_CREDENTIALS=$KOKORO_GFILE_DIR/$GOOGLE_ALT_CREDENTIALS_FILENAME
+fi
+
+export PATH="$PATH:/opt/composer/vendor/bin:/root/google-cloud-sdk/bin"
+
+# export the secrets
+if [ -f ${GOOGLE_APPLICATION_CREDENTIALS} ]; then
+ gcloud auth activate-service-account \
+ --key-file "${GOOGLE_APPLICATION_CREDENTIALS}" \
+ --project $(cat "${GOOGLE_APPLICATION_CREDENTIALS}" | jq -r .project_id)
+ gcloud kms decrypt \
+ --location=global \
+ --keyring=ci \
+ --key=ci \
+ --ciphertext-file=.kokoro/secrets.sh.enc \
+ --plaintext-file=.kokoro/secrets.sh
+fi
+
+# Unencrypt and extract secrets
+source .kokoro/secrets.sh
+
+mkdir -p build/logs
+
+export PULL_REQUEST_NUMBER=$KOKORO_GITHUB_PULL_REQUEST_NUMBER
+
+# If we are running REST tests, disable gRPC
+if [ "${RUN_REST_TESTS_ONLY}" = "true" ]; then
+ GRPC_INI=$(php -i | grep grpc.ini | sed 's/^Additional .ini files parsed => //g' | sed 's/,*$//g' )
+ mv $GRPC_INI "${GRPC_INI}.disabled"
+fi
+
+# Install global test dependencies
+composer install -d testing/
+
+# Configure the current directory as a safe directory
+git config --global --add safe.directory $(pwd)
+
+# Run tests
+bash testing/run_test_suite.sh
diff --git a/.kokoro/trampoline.sh b/.kokoro/trampoline.sh
new file mode 100755
index 0000000000..6e293e638b
--- /dev/null
+++ b/.kokoro/trampoline.sh
@@ -0,0 +1,17 @@
+#!/bin/bash
+
+# Copyright 2017 Google Inc.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+python3 "${KOKORO_GFILE_DIR}/trampoline_v1.py"
diff --git a/.php-cs-fixer.dist.php b/.php-cs-fixer.dist.php
new file mode 100644
index 0000000000..04464fb557
--- /dev/null
+++ b/.php-cs-fixer.dist.php
@@ -0,0 +1,43 @@
+setRules([
+ '@PSR2' => true,
+ 'concat_space' => ['spacing' => 'one'],
+ 'no_unused_imports' => true,
+ 'whitespace_after_comma_in_array' => true,
+ 'method_argument_space' => [
+ 'keep_multiple_spaces_after_comma' => true,
+ 'on_multiline' => 'ignore'
+ ],
+ 'return_type_declaration' => [
+ 'space_before' => 'none'
+ ],
+ // only converts simple strings in double quotes to single quotes
+ // ignores strings using variables, escape characters or single quotes inside
+ 'single_quote' => true,
+ // there should be a single space b/w the cast and it's operand
+ 'cast_spaces' => ['space' => 'single'],
+ // there shouldn't be any trailing whitespace at the end of a non-blank line
+ 'no_trailing_whitespace' => true,
+ // there shouldn't be any trailing whitespace at the end of a blank line
+ 'no_whitespace_in_blank_line' => true,
+ // there should be a space around binary operators like (=, => etc)
+ 'binary_operator_spaces' => ['default' => 'single_space'],
+ // deals with rogue empty blank lines
+ 'no_extra_blank_lines' => ['tokens' => ['extra']],
+ // reduces multi blank lines b/w phpdoc description and @param to a single line
+ // NOTE: Doesn't add a blank line if none exist
+ 'phpdoc_trim_consecutive_blank_line_separation' => true,
+ ])
+ ->setFinder(
+ PhpCsFixer\Finder::create()
+ ->in(__DIR__)
+ ->exclude(['generated'])
+ )
+;
+
+return $config;
diff --git a/.php_cs.dist b/.php_cs.dist
deleted file mode 100644
index f52c9327a2..0000000000
--- a/.php_cs.dist
+++ /dev/null
@@ -1,15 +0,0 @@
-setRules([
- '@PSR2' => true,
- 'concat_space' => ['spacing' => 'one'],
- 'no_unused_imports' => true,
- ])
- ->setFinder(
- PhpCsFixer\Finder::create()
- ->notPath('appengine/wordpress/src/files/flexible/wp-config.php')
- ->notPath('appengine/wordpress/src/files/standard/wp-config.php')
- ->in(__DIR__)
- )
-;
diff --git a/.travis.yml b/.travis.yml
deleted file mode 100644
index 1c2fc460d0..0000000000
--- a/.travis.yml
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 2015 Google Inc. All Rights Reserved.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-branches:
- only:
- - master
-
-language: php
-
-matrix:
- include:
- - php: 5.6
- env: RUN_DEVSERVER_TESTS=true RUN_CS_FIXER=true
- - php: 7.0
-
-env:
- global:
- - GOOGLE_APPLICATION_CREDENTIALS=$TRAVIS_BUILD_DIR/credentials.json
- - GOOGLE_VERSION_ID=$TRAVIS_JOB_ID
- - PATH=${HOME}/google-cloud-sdk/bin:${PATH}
- - PHP_CGI_PATH=/home/travis/.phpenv/shims/php-cgi
- - TEST_BUILD_DIR=$TRAVIS_BUILD_DIR
-
-before_install:
- - pushd ${HOME}
- - git clone https://github.com/GoogleCloudPlatform/php-tools.git
- - php php-tools/scripts/dump_credentials.php
- - travis_retry php-tools/scripts/install_test_deps.sh
- - popd
- - mkdir -p build/logs
-
-script:
- - testing/run_test_suite.sh
-
-after_success:
- - composer require "satooshi/php-coveralls:^1.0"
- - travis_retry php vendor/bin/coveralls -v
diff --git a/CODEOWNERS b/CODEOWNERS
new file mode 100644
index 0000000000..043253db51
--- /dev/null
+++ b/CODEOWNERS
@@ -0,0 +1,58 @@
+# Code owners file
+
+# This file controls who is tagged for review for any given pull request
+
+#
+
+# For syntax help see
+
+#
+
+# The php-admins team is the default owner for anything not
+
+# explicitly taken by someone else
+
+* @GoogleCloudPlatform/php-samples-reviewers @GoogleCloudPlatform/cloud-samples-infra
+
+# Kokoro
+
+.kokoro @GoogleCloudPlatform/php-admins
+
+/bigtable/**/*.php @GoogleCloudPlatform/cloud-native-db-dpes @GoogleCloudPlatform/php-samples-reviewers
+/cloud_sql/**/*.php @GoogleCloudPlatform/infra-db-sdk @GoogleCloudPlatform/php-samples-reviewers
+/datastore/**/*.php @GoogleCloudPlatform/cloud-native-db-dpes @GoogleCloudPlatform/php-samples-reviewers
+/firestore/**/*.php @GoogleCloudPlatform/cloud-native-db-dpes @GoogleCloudPlatform/php-samples-reviewers
+/storage/ @GoogleCloudPlatform/gcs-sdk-team @GoogleCloudPlatform/php-samples-reviewers
+/spanner/ @GoogleCloudPlatform/api-spanner @GoogleCloudPlatform/php-samples-reviewers
+/secretmanager/ @GoogleCloudPlatform/php-samples-reviewers @GoogleCloudPlatform/cloud-secrets-team
+/parametermanager/ @GoogleCloudPlatform/php-samples-reviewers @GoogleCloudPlatform/cloud-secrets-team @GoogleCloudPlatform/cloud-parameters-team
+/modelarmor/ @GoogleCloudPlatform/php-samples-reviewers @GoogleCloudPlatform/cloud-modelarmor-team
+
+# Serverless, Orchestration, DevOps
+
+/appengine/ @GoogleCloudPlatform/torus-dpe @GoogleCloudPlatform/php-samples-reviewers
+/functions/ @GoogleCloudPlatform/torus-dpe @GoogleCloudPlatform/php-samples-reviewers
+/run/ @GoogleCloudPlatform/torus-dpe @GoogleCloudPlatform/php-samples-reviewers
+/eventarc/ @GoogleCloudPlatform/torus-dpe @GoogleCloudPlatform/php-samples-reviewers
+
+# DLP samples owned by DLP team
+
+/dlp/ @GoogleCloudPlatform/googleapis-dlp
+
+# Brent is taking ownership of these samples as they are not supported by the ML team
+
+/dialogflow/ @bshaffer
+/language/ @bshaffer
+/speech/ @bshaffer
+/translate/ @bshaffer
+/texttospeech/ @bshaffer
+/vision/ @bshaffer
+/video/ @bshaffer
+
+# Compute samples owned by Remik
+
+/compute/cloud-client/ @rsamborski
+
+# Deprecated
+
+/iot/ @GoogleCloudPlatform/php-samples-reviewers
diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md
new file mode 100644
index 0000000000..46b2a08ea6
--- /dev/null
+++ b/CODE_OF_CONDUCT.md
@@ -0,0 +1,43 @@
+# Contributor Code of Conduct
+
+As contributors and maintainers of this project,
+and in the interest of fostering an open and welcoming community,
+we pledge to respect all people who contribute through reporting issues,
+posting feature requests, updating documentation,
+submitting pull requests or patches, and other activities.
+
+We are committed to making participation in this project
+a harassment-free experience for everyone,
+regardless of level of experience, gender, gender identity and expression,
+sexual orientation, disability, personal appearance,
+body size, race, ethnicity, age, religion, or nationality.
+
+Examples of unacceptable behavior by participants include:
+
+* The use of sexualized language or imagery
+* Personal attacks
+* Trolling or insulting/derogatory comments
+* Public or private harassment
+* Publishing other's private information,
+such as physical or electronic
+addresses, without explicit permission
+* Other unethical or unprofessional conduct.
+
+Project maintainers have the right and responsibility to remove, edit, or reject
+comments, commits, code, wiki edits, issues, and other contributions
+that are not aligned to this Code of Conduct.
+By adopting this Code of Conduct,
+project maintainers commit themselves to fairly and consistently
+applying these principles to every aspect of managing this project.
+Project maintainers who do not follow or enforce the Code of Conduct
+may be permanently removed from the project team.
+
+This code of conduct applies both within project spaces and in public spaces
+when an individual is representing the project or its community.
+
+Instances of abusive, harassing, or otherwise unacceptable behavior
+may be reported by opening an issue
+or contacting one or more of the project maintainers.
+
+This Code of Conduct is adapted from the [Contributor Covenant](http://contributor-covenant.org), version 1.2.0,
+available at [http://contributor-covenant.org/version/1/2/0/](http://contributor-covenant.org/version/1/2/0/)
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 6116637e8b..c1f62d50fd 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -9,11 +9,11 @@ Please fill out either the individual or corporate Contributor License Agreement
(CLA).
* If you are an individual writing original source code and you're sure you
- own the intellectual property, then you'll need to sign an [individual CLA]
- (https://developers.google.com/open-source/cla/individual).
+ own the intellectual property, then you'll need to sign an
+ [individual CLA](https://developers.google.com/open-source/cla/individual).
* If you work for a company that wants to allow you to contribute your work,
- then you'll need to sign a [corporate CLA]
- (https://developers.google.com/open-source/cla/corporate).
+ then you'll need to sign a
+ [corporate CLA](https://developers.google.com/open-source/cla/corporate).
Follow either of the two links above to access the appropriate CLA and
instructions for how to sign and return it. Once we receive it, we'll be able to
@@ -21,21 +21,98 @@ accept your pull requests.
## Contributing A Patch
-1. Submit an issue describing your proposed change to the repo in question.
+1. Submit an issue describing your proposed change.
1. The repo owner will respond to your issue promptly.
1. If your proposed change is accepted, and you haven't already done so, sign a
Contributor License Agreement (see details above).
-1. Fork the desired repo, develop and test your code changes.
+1. Fork this repo, develop and test your code changes.
1. Ensure that your code adheres to the existing style in the sample to which
you are contributing.
1. Ensure that your code has an appropriate set of unit tests which all pass.
- Set up [Travis](./TRAVIS.md) to run the unit tests on your fork.
1. Submit a pull request.
+## Writing a new sample
+
+Write samples according to the [sample style guide](https://googlecloudplatform.github.io/samples-style-guide/).
+
+## Testing your code changes.
+
+### Install dependencies
+
+To run the tests in a samples directory, you will need to install
+[Composer](http://getcomposer.org/doc/00-intro.md).
+
+First install the testing dependencies which are shared across all samples:
+
+```
+composer install -d testing/
+```
+
+Next, install the dependencies for the individual sample you're testing:
+
+```
+SAMPLES_DIRECTORY=translate
+cd $SAMPLES_DIRECTORY
+composer install
+```
+
+### Environment variables
+Some tests require specific environment variables to run. PHPUnit will skip the tests
+if these environment variables are not found. Run `phpunit -v` for a message detailing
+which environment variables are missing. Then you can set those environment variables
+to run against any sample project as follows:
+
+```
+export GOOGLE_PROJECT_ID=YOUR_PROJECT_ID
+export GOOGLE_STORAGE_BUCKET=YOUR_BUCKET
+```
+
+If you have access to the Google Cloud Kokoro project, decrypt the
+`.kokoro/secrets.sh.enc` file and load those environment variables. Follow
+the instructions in [.kokoro/secrets-example.sh](.kokoro/secrets-example.sh).
+
+If your tests require new environment variables, you can set them up in
+`.kokoro/secrets.sh.enc` so they pass on Kokoro. For instructions on managing those
+variables, view [.kokoro/secrets-example.sh](.kokoro/secrets-example.sh) for more
+information.
+
+### Run the tests
+
+Once the dependencies are installed and the environment variables set, you can run the
+tests in a samples directory.
+```
+cd $SAMPLES_DIRECTORY
+# Execute the "phpunit" installed for the shared dependencies
+PATH_TO_REPO=/path/to/php-docs-samples
+$PATH_TO_REPO/testing/vendor/bin/phpunit
+```
+
+Use `phpunit -v` to get a more detailed output if there are errors.
+
## Style
-Samples in this repository follow the [PSR2][psr2] and [PSR4][psr4]
-recommendations. This is enforced using [PHP CS Fixer][php-cs-fixer].
+The [Google Cloud Samples Style Guide][style-guide] is considered the primary
+guidelines for all Google Cloud samples.
+
+[style-guide]: https://googlecloudplatform.github.io/samples-style-guide/
+
+Samples in this repository also follow the [PSR2][psr2] and [PSR4][psr4]
+recommendations. This is enforced using [PHP CS Fixer][php-cs-fixer], using the config in [.php-cs-fixer.dist.php](.php-cs-fixer.dist.php)
+
+Install that by running
+
+```
+composer global require friendsofphp/php-cs-fixer
+```
+
+Then to fix your directory or file run
+
+```
+php-cs-fixer fix . --config .php-cs-fixer.dist.php
+php-cs-fixer fix path/to/file --config .php-cs-fixer.dist.php
+```
+
+The [DLP snippets](https://github.com/GoogleCloudPlatform/php-docs-samples/tree/main/dlp) are an example of snippets following the latest style guidelines.
[psr2]: http://www.php-fig.org/psr/psr-2/
[psr4]: http://www.php-fig.org/psr/psr-4/
diff --git a/README.md b/README.md
index 5b36182821..606266a27f 100644
--- a/README.md
+++ b/README.md
@@ -2,14 +2,14 @@
A collection of samples that demonstrate how to call Google Cloud services from PHP.
-[](https://travis-ci.org/GoogleCloudPlatform/php-docs-samples)
-
-[](https://coveralls.io/github/GoogleCloudPlatform/php-docs-samples?branch=master)
-
See our other [Google Cloud Platform github
repos](https://github.com/GoogleCloudPlatform) for sample applications and
scaffolding for other frameworks and use cases.
+## Google Cloud Samples
+
+To browse ready to use code samples check [Google Cloud Samples](https://cloud.google.com/docs/samples?l=php).
+
## Contributing changes
* See [CONTRIBUTING.md](CONTRIBUTING.md)
diff --git a/SECURITY.md b/SECURITY.md
new file mode 100644
index 0000000000..8b58ae9c01
--- /dev/null
+++ b/SECURITY.md
@@ -0,0 +1,7 @@
+# Security Policy
+
+To report a security issue, please use [g.co/vulnz](https://g.co/vulnz).
+
+The Google Security Team will respond within 5 working days of your report on g.co/vulnz.
+
+We use g.co/vulnz for our intake, and do coordination and disclosure here using GitHub Security Advisory to privately discuss and fix the issue.
diff --git a/TRAVIS.md b/TRAVIS.md
deleted file mode 100644
index ac8227c06b..0000000000
--- a/TRAVIS.md
+++ /dev/null
@@ -1,27 +0,0 @@
-## Running Tests on Travis
-
-[Travis](https://travis-ci.org/) automatically runs tests whenever a github
-repo changes. To have Travis automatically run tests on your forked copy
-of this repo:
-
-1. Fork this repo on [GitHub](https://github.com/).
-2. Visit the
- [Google Developers Console](https://console.developers.google.com/) and
- choose an existing project or create a new project.
-3. Under `APIs & auth`, choose Credentials.
-4. Click `Add credentials`, and then click `Service account`.
-5. Under `Key type`, choose `JSON`, and then click `Create`. A json credential
- file will be downloaded to your computer.
-6. Visit [Travis](https://travis-ci.org/profile ) and turn on Travis for your
- new forked repo.
-7. Go back to the [Travis](https://travis-ci.org/) home page, click on your
- repo, then click on `Settings`.
-8. Under Environment Variables, set GOOGLE_PROJECT_ID to the project id
- for the project you created or chose in step 2.
-9. Base-64 encode the json file you downloaded in step 5. On unix machines,
- this can be done with a command like
- `base64 -w 0 < my-test-bf4af540ca4c.json`.
-10. Under Environment Variables, set GOOGLE_CREDENTIALS_BASE64 to the
- base64-encoded json from step 9. **Be sure te leave `Display value in build
- log` switched OFF.**
-
diff --git a/analyticsdata/README.md b/analyticsdata/README.md
new file mode 100644
index 0000000000..4426c3b32a
--- /dev/null
+++ b/analyticsdata/README.md
@@ -0,0 +1,48 @@
+# Google Analytics Data API Samples
+
+[![Open in Cloud Shell][shell_img]][shell_link]
+
+[shell_img]: http://gstatic.com/cloudssh/images/open-btn.svg
+[shell_link]: https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googlecloudplatform/php-docs-samples&page=editor&working_dir=analyticsdata
+
+## Description
+
+These samples show how to use the [Google Analytics Data API][analyticsdata-api]
+from PHP.
+
+[analyticsdata-api]: https://developers.google.com/analytics/devguides/reporting/data/v1
+
+## Build and Run
+1. **Enable APIs** - [Enable the Analytics Data API](https://console.cloud.google.com/flows/enableapi?apiid=analyticsdata.googleapis.com)
+ and create a new project or select an existing project.
+2. **Download The Credentials** - Configure your project using [Application Default Credentials][adc].
+ Click "Go to credentials" after enabling the APIs. Click "Create Credentials"
+ and select "Service Account Credentials" and download the credentials file. Then set the path to
+ this file to the environment variable `GOOGLE_APPLICATION_CREDENTIALS`:
+```sh
+ $ export GOOGLE_APPLICATION_CREDENTIALS=/path/to/credentials.json
+```
+3. **Clone the repo** and cd into this directory
+```sh
+ $ git clone https://github.com/GoogleCloudPlatform/php-docs-samples
+ $ cd php-docs-samples/analyticsdata
+```
+4. **Install dependencies** via [Composer](http://getcomposer.org/doc/00-intro.md).
+ Run `php composer.phar install` (if composer is installed locally) or `composer install`
+ (if composer is installed globally).
+5. **Replace `$property_id` variable** if present in the snippet with the
+value of the Google Analytics 4 property id you want to access.
+6. **Run** with the command `php SNIPPET_NAME.php`. For example:
+```sh
+ $ php quickstart.php
+```
+
+## Contributing changes
+
+* See [CONTRIBUTING.md](../CONTRIBUTING.md)
+
+## Licensing
+
+* See [LICENSE](../LICENSE)
+
+[adc]: https://cloud.google.com/docs/authentication/production#obtaining_and_providing_service_account_credentials_manually
diff --git a/analyticsdata/composer.json b/analyticsdata/composer.json
new file mode 100644
index 0000000000..47387775f0
--- /dev/null
+++ b/analyticsdata/composer.json
@@ -0,0 +1,5 @@
+{
+ "require": {
+ "google/analytics-data": "^0.23.0"
+ }
+}
diff --git a/analyticsdata/phpunit.xml.dist b/analyticsdata/phpunit.xml.dist
new file mode 100644
index 0000000000..abfd8f9fa4
--- /dev/null
+++ b/analyticsdata/phpunit.xml.dist
@@ -0,0 +1,37 @@
+
+
+
+
+
+ test
+
+
+
+
+
+
+
+ ./src
+
+ ./vendor
+
+
+
+
+
+
+
diff --git a/analyticsdata/quickstart.php b/analyticsdata/quickstart.php
new file mode 100644
index 0000000000..a0357e434f
--- /dev/null
+++ b/analyticsdata/quickstart.php
@@ -0,0 +1,82 @@
+setProperty('properties/' . $property_id)
+ ->setDateRanges([
+ new DateRange([
+ 'start_date' => '2020-03-31',
+ 'end_date' => 'today',
+ ]),
+ ])
+ ->setDimensions([new Dimension([
+ 'name' => 'city',
+ ]),
+ ])
+ ->setMetrics([new Metric([
+ 'name' => 'activeUsers',
+ ])
+ ]);
+$response = $client->runReport($request);
+// [END analyticsdata_run_report]
+
+// [START analyticsdata_run_report_response]
+// Print results of an API call.
+print 'Report result: ' . PHP_EOL;
+
+foreach ($response->getRows() as $row) {
+ print $row->getDimensionValues()[0]->getValue()
+ . ' ' . $row->getMetricValues()[0]->getValue() . PHP_EOL;
+ // [END analyticsdata_run_report_response]
+}
+// [END analytics_data_quickstart]
diff --git a/analyticsdata/quickstart_oauth2/README.md b/analyticsdata/quickstart_oauth2/README.md
new file mode 100644
index 0000000000..256e371450
--- /dev/null
+++ b/analyticsdata/quickstart_oauth2/README.md
@@ -0,0 +1,42 @@
+This application demonstrates the usage of the Analytics Data API using
+OAuth2 credentials.
+
+Please familiarize yourself with the OAuth2 flow guide at
+https://developers.google.com/identity/protocols/oauth2
+
+For more information on authenticating as an end user, see
+https://cloud.google.com/docs/authentication/end-user
+
+In a nutshell, you need to:
+
+1. Create your OAuth2 client credentials in Google Cloud Console.
+Choose "Web application" when asked for an application type.
+https://support.google.com/cloud/answer/6158849
+
+2. When configuring the web application credentials, add
+"http://localhost:3000/" to "Authorized redirect URIs".
+
+3. Download a credentials file using "Download JSON" button in the credentials
+configuration dialog and save it as `oauth2.keys.json` in the same
+directory with this sample app.
+
+4. Replace `$property_id` variable with the value of the Google Analytics 4
+property id you want to access.
+
+5. Install the PHP bcmath extension (due to https://github.com/protocolbuffers/protobuf/issues/4465):
+
+ ```
+ sudo -s apt-get install php-bcmath
+ ```
+
+6. Run the following commands from the current directory in order to install
+dependencies and run the sample app:
+
+ ```
+ composer update
+ php -S localhost:3000 -t .
+ ```
+
+7. In a browser, open the following url to start the sample:
+
+http://localhost:3000/
diff --git a/analyticsdata/quickstart_oauth2/composer.json b/analyticsdata/quickstart_oauth2/composer.json
new file mode 100644
index 0000000000..59f6620a1a
--- /dev/null
+++ b/analyticsdata/quickstart_oauth2/composer.json
@@ -0,0 +1,6 @@
+{
+ "require": {
+ "google/analytics-data": "^0.23.0",
+ "ext-bcmath": "*"
+ }
+}
diff --git a/analyticsdata/quickstart_oauth2/index.php b/analyticsdata/quickstart_oauth2/index.php
new file mode 100644
index 0000000000..d52a49022c
--- /dev/null
+++ b/analyticsdata/quickstart_oauth2/index.php
@@ -0,0 +1,109 @@
+ 'https://www.googleapis.com/auth/analytics.readonly',
+ 'tokenCredentialUri' => 'https://oauth2.googleapis.com/token',
+ 'authorizationUri' => $keys->{'web'}->{'auth_uri'},
+ 'clientId' => $keys->{'web'}->{'client_id'},
+ 'clientSecret' => $keys->{'web'}->{'client_secret'},
+ 'redirectUri' => 'http://' . $_SERVER['HTTP_HOST'] . '/',
+]);
+
+if (isset($_SESSION['access_token']) && $_SESSION['access_token']
+ && isset($_SESSION['refresh_token']) && $_SESSION['refresh_token']) {
+ // This is the final step of the OAuth2 authorization process, where an
+ // OAuth2 access token is available and can be used to set up a client.
+ $oauth->setAccessToken($_SESSION['access_token']);
+ $oauth->setRefreshToken($_SESSION['refresh_token']);
+
+ try {
+ // Make an API call.
+ $client = new BetaAnalyticsDataClient(['credentials' => $oauth]);
+ $request = (new RunReportRequest())
+ ->setProperty('properties/' . $property_id)
+ ->setDateRanges([
+ new DateRange([
+ 'start_date' => '2020-03-31',
+ 'end_date' => 'today',
+ ]),
+ ])
+ ->setDimensions([new Dimension([
+ 'name' => 'city',
+ ]),
+ ])
+ ->setMetrics([new Metric([
+ 'name' => 'activeUsers',
+ ])
+ ]);
+ $response = $client->runReport($request);
+
+ // Print results of an API call.
+ print 'Report result:
';
+
+ foreach ($response->getRows() as $row) {
+ print $row->getDimensionValues()[0]->getValue()
+ . ' ' . $row->getMetricValues()[0]->getValue() . '
';
+ }
+ } catch (ApiException $e) {
+ // Print an error message.
+ print $e->getMessage();
+ }
+} elseif (isset($_GET['code']) && $_GET['code']) {
+ // If an OAuth2 authorization code is present in the URL, exchange it for
+ // an access token.
+ $oauth->setCode($_GET['code']);
+ $oauth->fetchAuthToken();
+
+ // Persist the acquired access token in a session.
+ $_SESSION['access_token'] = $oauth->getAccessToken();
+
+ // Persist the acquired refresh token in a session.
+ $_SESSION['refresh_token'] = $oauth->getRefreshToken();
+
+ // Refresh the current page.
+ $redirect_uri = 'http://' . $_SERVER['HTTP_HOST'] . '/';
+ header('Location: ' . filter_var($redirect_uri, FILTER_SANITIZE_URL));
+} else {
+ // Redirect to Google's OAuth 2.0 server.
+ $auth_url = $oauth->buildFullAuthorizationUri();
+ header('Location: ' . filter_var($auth_url, FILTER_SANITIZE_URL));
+}
+// [END analyticsdata_quickstart_oauth2]
diff --git a/analyticsdata/src/client_from_json_credentials.php b/analyticsdata/src/client_from_json_credentials.php
new file mode 100644
index 0000000000..8e46e99985
--- /dev/null
+++ b/analyticsdata/src/client_from_json_credentials.php
@@ -0,0 +1,51 @@
+ $credentialsJsonPath
+ ]);
+
+ return $client;
+}
+// [END analyticsdata_json_credentials_initialize]
+
+// The following 2 lines are only needed to run the samples
+require_once __DIR__ . '/../../testing/sample_helpers.php';
+return \Google\Cloud\Samples\execute_sample(__FILE__, __NAMESPACE__, $argv);
diff --git a/analyticsdata/src/get_common_metadata.php b/analyticsdata/src/get_common_metadata.php
new file mode 100644
index 0000000000..3019f8b5c3
--- /dev/null
+++ b/analyticsdata/src/get_common_metadata.php
@@ -0,0 +1,122 @@
+setName($formattedName);
+ $response = $client->getMetadata($request);
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ return;
+ }
+
+ print('Dimensions and metrics available for all Google Analytics 4 properties:');
+ printGetCommonMetadata($response);
+}
+
+/**
+ * Print results of a getMetadata call.
+ * @param Metadata $response
+ */
+function printGetCommonMetadata(Metadata $response)
+{
+ // [START analyticsdata_print_get_metadata_response]
+ foreach ($response->getDimensions() as $dimension) {
+ print('DIMENSION' . PHP_EOL);
+ printf(
+ '%s (%s): %s' . PHP_EOL,
+ $dimension->getApiName(),
+ $dimension->getUiName(),
+ $dimension->getDescription(),
+ );
+ printf(
+ 'custom definition: %s' . PHP_EOL,
+ $dimension->getCustomDefinition()? 'true' : 'false'
+ );
+ if ($dimension->getDeprecatedApiNames()->count() > 0) {
+ print('Deprecated API names: ');
+ foreach ($dimension->getDeprecatedApiNames() as $name) {
+ print($name . ',');
+ }
+ print(PHP_EOL);
+ }
+ print(PHP_EOL);
+ }
+
+ foreach ($response->getMetrics() as $metric) {
+ print('METRIC' . PHP_EOL);
+ printf(
+ '%s (%s): %s' . PHP_EOL,
+ $metric->getApiName(),
+ $metric->getUiName(),
+ $metric->getDescription(),
+ );
+ printf(
+ 'custom definition: %s' . PHP_EOL,
+ $metric->getCustomDefinition()? 'true' : 'false'
+ );
+ if ($metric->getDeprecatedApiNames()->count() > 0) {
+ print('Deprecated API names: ');
+ foreach ($metric->getDeprecatedApiNames() as $name) {
+ print($name . ',');
+ }
+ print(PHP_EOL);
+ }
+ print(PHP_EOL);
+ }
+ // [END analyticsdata_print_get_metadata_response]
+}
+// [END analyticsdata_get_common_metadata]
+
+// The following 2 lines are only needed to run the samples
+require_once __DIR__ . '/../../testing/sample_helpers.php';
+return \Google\Cloud\Samples\execute_sample(__FILE__, __NAMESPACE__, $argv);
diff --git a/analyticsdata/src/get_metadata_by_property_id.php b/analyticsdata/src/get_metadata_by_property_id.php
new file mode 100644
index 0000000000..178a748761
--- /dev/null
+++ b/analyticsdata/src/get_metadata_by_property_id.php
@@ -0,0 +1,122 @@
+setName($formattedName);
+ $response = $client->getMetadata($request);
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ return;
+ }
+
+ printf(
+ 'Dimensions and metrics available for Google Analytics 4 property'
+ . ' %s (including custom fields):' . PHP_EOL,
+ $propertyId
+ );
+ printGetMetadataByPropertyId($response);
+}
+
+/**
+ * Print results of a getMetadata call.
+ * @param Metadata $response
+ */
+function printGetMetadataByPropertyId(Metadata $response)
+{
+ // [START analyticsdata_print_get_metadata_response]
+ foreach ($response->getDimensions() as $dimension) {
+ print('DIMENSION' . PHP_EOL);
+ printf(
+ '%s (%s): %s' . PHP_EOL,
+ $dimension->getApiName(),
+ $dimension->getUiName(),
+ $dimension->getDescription(),
+ );
+ printf(
+ 'custom definition: %s' . PHP_EOL,
+ $dimension->getCustomDefinition() ? 'true' : 'false'
+ );
+ if ($dimension->getDeprecatedApiNames()->count() > 0) {
+ print('Deprecated API names: ');
+ foreach ($dimension->getDeprecatedApiNames() as $name) {
+ print($name . ',');
+ }
+ print(PHP_EOL);
+ }
+ print(PHP_EOL);
+ }
+
+ foreach ($response->getMetrics() as $metric) {
+ print('METRIC' . PHP_EOL);
+ printf(
+ '%s (%s): %s' . PHP_EOL,
+ $metric->getApiName(),
+ $metric->getUiName(),
+ $metric->getDescription(),
+ );
+ printf(
+ 'custom definition: %s' . PHP_EOL,
+ $metric->getCustomDefinition() ? 'true' : 'false'
+ );
+ if ($metric->getDeprecatedApiNames()->count() > 0) {
+ print('Deprecated API names: ');
+ foreach ($metric->getDeprecatedApiNames() as $name) {
+ print($name . ',');
+ }
+ print(PHP_EOL);
+ }
+ print(PHP_EOL);
+ }
+ // [END analyticsdata_print_get_metadata_response]
+}
+// [END analyticsdata_get_metadata_by_property_id]
+
+// The following 2 lines are only needed to run the samples
+require_once __DIR__ . '/../../testing/sample_helpers.php';
+return \Google\Cloud\Samples\execute_sample(__FILE__, __NAMESPACE__, $argv);
diff --git a/analyticsdata/src/run_batch_report.php b/analyticsdata/src/run_batch_report.php
new file mode 100644
index 0000000000..5f6cdcf076
--- /dev/null
+++ b/analyticsdata/src/run_batch_report.php
@@ -0,0 +1,120 @@
+setProperty('properties/' . $propertyId)
+ ->setRequests([
+ new RunReportRequest([
+ 'dimensions' => [
+ new Dimension(['name' => 'country']),
+ new Dimension(['name' => 'region']),
+ new Dimension(['name' => 'city']),
+ ],
+ 'metrics' => [new Metric(['name' => 'activeUsers'])],
+ 'date_ranges' => [new DateRange([
+ 'start_date' => '2021-01-03',
+ 'end_date' => '2021-01-09',
+ ]),
+ ],
+ ]),
+ new RunReportRequest([
+ 'dimensions' => [new Dimension(['name' => 'browser'])],
+ 'metrics' => [new Metric(['name' => 'activeUsers'])],
+ 'date_ranges' => [new DateRange([
+ 'start_date' => '2021-01-01',
+ 'end_date' => '2021-01-31',
+ ]),
+ ],
+ ]),
+ ]);
+ $response = $client->batchRunReports($request);
+
+ print 'Batch report results' . PHP_EOL;
+ foreach ($response->getReports() as $report) {
+ printBatchRunReportsResponse($report);
+ }
+}
+
+/**
+ * Print results of a runReport call.
+ * @param RunReportResponse $response
+ */
+function printBatchRunReportsResponse(RunReportResponse $response)
+{
+ // [START analyticsdata_print_run_report_response_header]
+ printf('%s rows received%s', $response->getRowCount(), PHP_EOL);
+ foreach ($response->getDimensionHeaders() as $dimensionHeader) {
+ printf('Dimension header name: %s%s', $dimensionHeader->getName(), PHP_EOL);
+ }
+ foreach ($response->getMetricHeaders() as $metricHeader) {
+ printf(
+ 'Metric header name: %s (%s)' . PHP_EOL,
+ $metricHeader->getName(),
+ MetricType::name($metricHeader->getType())
+ );
+ }
+ // [END analyticsdata_print_run_report_response_header]
+
+ // [START analyticsdata_print_run_report_response_rows]
+ print 'Report result: ' . PHP_EOL;
+
+ foreach ($response->getRows() as $row) {
+ printf(
+ '%s %s' . PHP_EOL,
+ $row->getDimensionValues()[0]->getValue(),
+ $row->getMetricValues()[0]->getValue()
+ );
+ }
+ // [END analyticsdata_print_run_report_response_rows]
+}
+// [END analyticsdata_run_batch_report]
+
+// The following 2 lines are only needed to run the samples
+require_once __DIR__ . '/../../testing/sample_helpers.php';
+return \Google\Cloud\Samples\execute_sample(__FILE__, __NAMESPACE__, $argv);
diff --git a/analyticsdata/src/run_pivot_report.php b/analyticsdata/src/run_pivot_report.php
new file mode 100644
index 0000000000..b7e1cc53f7
--- /dev/null
+++ b/analyticsdata/src/run_pivot_report.php
@@ -0,0 +1,114 @@
+setProperty('properties/' . $propertyId)
+ ->setDateRanges([new DateRange([
+ 'start_date' => '2021-01-01',
+ 'end_date' => '2021-01-30',
+ ]),
+ ])
+ ->setPivots([
+ new Pivot([
+ 'field_names' => ['country'],
+ 'limit' => 250,
+ 'order_bys' => [new OrderBy([
+ 'dimension' => new DimensionOrderBy([
+ 'dimension_name' => 'country',
+ ]),
+ ])],
+ ]),
+ new Pivot([
+ 'field_names' => ['browser'],
+ 'offset' => 3,
+ 'limit' => 3,
+ 'order_bys' => [new OrderBy([
+ 'metric' => new MetricOrderBy([
+ 'metric_name' => 'sessions',
+ ]),
+ 'desc' => true,
+ ])],
+ ]),
+ ])
+ ->setMetrics([new Metric(['name' => 'sessions'])])
+ ->setDimensions([
+ new Dimension(['name' => 'country']),
+ new Dimension(['name' => 'browser']),
+ ]);
+ $response = $client->runPivotReport($request);
+
+ printPivotReportResponse($response);
+}
+
+/**
+ * Print results of a runPivotReport call.
+ * @param RunPivotReportResponse $response
+ */
+function printPivotReportResponse(RunPivotReportResponse $response)
+{
+ // [START analyticsdata_print_run_pivot_report_response]
+ print 'Report result: ' . PHP_EOL;
+
+ foreach ($response->getRows() as $row) {
+ printf(
+ '%s %s' . PHP_EOL,
+ $row->getDimensionValues()[0]->getValue(),
+ $row->getMetricValues()[0]->getValue()
+ );
+ }
+ // [END analyticsdata_print_run_pivot_report_response]
+}
+// [END analyticsdata_run_pivot_report]
+
+// The following 2 lines are only needed to run the samples
+require_once __DIR__ . '/../../testing/sample_helpers.php';
+return \Google\Cloud\Samples\execute_sample(__FILE__, __NAMESPACE__, $argv);
diff --git a/analyticsdata/src/run_realtime_report.php b/analyticsdata/src/run_realtime_report.php
new file mode 100644
index 0000000000..f8d93a887f
--- /dev/null
+++ b/analyticsdata/src/run_realtime_report.php
@@ -0,0 +1,94 @@
+setProperty('properties/' . $propertyId)
+ ->setDimensions([new Dimension(['name' => 'country'])])
+ ->setMetrics([new Metric(['name' => 'activeUsers'])]);
+ $response = $client->runRealtimeReport($request);
+
+ printRunRealtimeReportResponse($response);
+}
+
+/**
+ * Print results of a runRealtimeReport call.
+ * @param RunRealtimeReportResponse $response
+ */
+function printRunRealtimeReportResponse(RunRealtimeReportResponse $response)
+{
+ // [START analyticsdata_print_run_realtime_report_response_header]
+ printf('%s rows received%s', $response->getRowCount(), PHP_EOL);
+ foreach ($response->getDimensionHeaders() as $dimensionHeader) {
+ printf('Dimension header name: %s%s', $dimensionHeader->getName(), PHP_EOL);
+ }
+ foreach ($response->getMetricHeaders() as $metricHeader) {
+ printf(
+ 'Metric header name: %s (%s)%s',
+ $metricHeader->getName(),
+ MetricType::name($metricHeader->getType()),
+ PHP_EOL
+ );
+ }
+ // [END analyticsdata_print_run_realtime_report_response_header]
+
+ // [START analyticsdata_print_run_realtime_report_response_rows]
+ print 'Report result: ' . PHP_EOL;
+
+ foreach ($response->getRows() as $row) {
+ printf(
+ '%s %s' . PHP_EOL,
+ $row->getDimensionValues()[0]->getValue(),
+ $row->getMetricValues()[0]->getValue()
+ );
+ }
+ // [END analyticsdata_print_run_realtime_report_response_rows]
+}
+// [END analyticsdata_run_realtime_report]
+
+// The following 2 lines are only needed to run the samples
+require_once __DIR__ . '/../../testing/sample_helpers.php';
+return \Google\Cloud\Samples\execute_sample(__FILE__, __NAMESPACE__, $argv);
diff --git a/analyticsdata/src/run_realtime_report_with_multiple_dimensions.php b/analyticsdata/src/run_realtime_report_with_multiple_dimensions.php
new file mode 100644
index 0000000000..c1d4440a05
--- /dev/null
+++ b/analyticsdata/src/run_realtime_report_with_multiple_dimensions.php
@@ -0,0 +1,97 @@
+setProperty('properties/' . $propertyId)
+ ->setDimensions([
+ new Dimension(['name' => 'country']),
+ new Dimension(['name' => 'city']),
+ ])
+ ->setMetrics([new Metric(['name' => 'activeUsers'])]);
+ $response = $client->runRealtimeReport($request);
+
+ printRunRealtimeReportWithMultipleDimensionsResponse($response);
+}
+
+/**
+ * Print results of a runRealtimeReport call.
+ * @param RunRealtimeReportResponse $response
+ */
+function printRunRealtimeReportWithMultipleDimensionsResponse(RunRealtimeReportResponse $response)
+{
+ // [START analyticsdata_print_run_realtime_report_response_header]
+ printf('%s rows received%s', $response->getRowCount(), PHP_EOL);
+ foreach ($response->getDimensionHeaders() as $dimensionHeader) {
+ printf('Dimension header name: %s%s', $dimensionHeader->getName(), PHP_EOL);
+ }
+ foreach ($response->getMetricHeaders() as $metricHeader) {
+ printf(
+ 'Metric header name: %s (%s)%s',
+ $metricHeader->getName(),
+ MetricType::name($metricHeader->getType()),
+ PHP_EOL
+ );
+ }
+ // [END analyticsdata_print_run_realtime_report_response_header]
+
+ // [START analyticsdata_print_run_realtime_report_response_rows]
+ print 'Report result: ' . PHP_EOL;
+
+ foreach ($response->getRows() as $row) {
+ printf(
+ '%s %s' . PHP_EOL,
+ $row->getDimensionValues()[0]->getValue(),
+ $row->getMetricValues()[0]->getValue()
+ );
+ }
+ // [END analyticsdata_print_run_realtime_report_response_rows]
+}
+// [END analyticsdata_run_realtime_report_with_multiple_dimensions]
+
+// The following 2 lines are only needed to run the samples
+require_once __DIR__ . '/../../testing/sample_helpers.php';
+return \Google\Cloud\Samples\execute_sample(__FILE__, __NAMESPACE__, $argv);
diff --git a/analyticsdata/src/run_realtime_report_with_multiple_metrics.php b/analyticsdata/src/run_realtime_report_with_multiple_metrics.php
new file mode 100644
index 0000000000..478437efe3
--- /dev/null
+++ b/analyticsdata/src/run_realtime_report_with_multiple_metrics.php
@@ -0,0 +1,97 @@
+setProperty('properties/' . $propertyId)
+ ->setDimensions([new Dimension(['name' => 'unifiedScreenName'])])
+ ->setMetrics([
+ new Metric(['name' => 'screenPageViews']),
+ new Metric(['name' => 'conversions']),
+ ]);
+ $response = $client->runRealtimeReport($request);
+
+ printRunRealtimeReportWithMultipleMetricsResponse($response);
+}
+
+/**
+ * Print results of a runRealtimeReport call.
+ * @param RunRealtimeReportResponse $response
+ */
+function printRunRealtimeReportWithMultipleMetricsResponse(RunRealtimeReportResponse $response)
+{
+ // [START analyticsdata_print_run_realtime_report_response_header]
+ printf('%s rows received%s', $response->getRowCount(), PHP_EOL);
+ foreach ($response->getDimensionHeaders() as $dimensionHeader) {
+ printf('Dimension header name: %s%s', $dimensionHeader->getName(), PHP_EOL);
+ }
+ foreach ($response->getMetricHeaders() as $metricHeader) {
+ printf(
+ 'Metric header name: %s (%s)%s',
+ $metricHeader->getName(),
+ MetricType::name($metricHeader->getType()),
+ PHP_EOL
+ );
+ }
+ // [END analyticsdata_print_run_realtime_report_response_header]
+
+ // [START analyticsdata_print_run_realtime_report_response_rows]
+ print 'Report result: ' . PHP_EOL;
+
+ foreach ($response->getRows() as $row) {
+ printf(
+ '%s %s' . PHP_EOL,
+ $row->getDimensionValues()[0]->getValue(),
+ $row->getMetricValues()[0]->getValue()
+ );
+ }
+ // [END analyticsdata_print_run_realtime_report_response_rows]
+}
+// [END analyticsdata_run_realtime_report_with_multiple_metrics]
+
+// The following 2 lines are only needed to run the samples
+require_once __DIR__ . '/../../testing/sample_helpers.php';
+return \Google\Cloud\Samples\execute_sample(__FILE__, __NAMESPACE__, $argv);
diff --git a/analyticsdata/src/run_report.php b/analyticsdata/src/run_report.php
new file mode 100644
index 0000000000..22611dcb34
--- /dev/null
+++ b/analyticsdata/src/run_report.php
@@ -0,0 +1,102 @@
+setProperty('properties/' . $propertyId)
+ ->setDateRanges([
+ new DateRange([
+ 'start_date' => '2020-09-01',
+ 'end_date' => '2020-09-15',
+ ]),
+ ])
+ ->setDimensions([
+ new Dimension([
+ 'name' => 'country',
+ ]),
+ ])
+ ->setMetrics([
+ new Metric([
+ 'name' => 'activeUsers',
+ ]),
+ ]);
+ $response = $client->runReport($request);
+
+ printRunReportResponse($response);
+}
+
+/**
+ * Print results of a runReport call.
+ * @param RunReportResponse $response
+ */
+function printRunReportResponse(RunReportResponse $response)
+{
+ // [START analyticsdata_print_run_report_response_header]
+ printf('%s rows received%s', $response->getRowCount(), PHP_EOL);
+ foreach ($response->getDimensionHeaders() as $dimensionHeader) {
+ printf('Dimension header name: %s%s', $dimensionHeader->getName(), PHP_EOL);
+ }
+ foreach ($response->getMetricHeaders() as $metricHeader) {
+ printf(
+ 'Metric header name: %s (%s)%s',
+ $metricHeader->getName(),
+ MetricType::name($metricHeader->getType()),
+ PHP_EOL
+ );
+ }
+ // [END analyticsdata_print_run_report_response_header]
+
+ // [START analyticsdata_print_run_report_response_rows]
+ print 'Report result: ' . PHP_EOL;
+
+ foreach ($response->getRows() as $row) {
+ print $row->getDimensionValues()[0]->getValue()
+ . ' ' . $row->getMetricValues()[0]->getValue() . PHP_EOL;
+ }
+ // [END analyticsdata_print_run_report_response_rows]
+}
+// [END analyticsdata_run_report]
+
+// The following 2 lines are only needed to run the samples
+require_once __DIR__ . '/../../testing/sample_helpers.php';
+return \Google\Cloud\Samples\execute_sample(__FILE__, __NAMESPACE__, $argv);
diff --git a/analyticsdata/src/run_report_with_aggregations.php b/analyticsdata/src/run_report_with_aggregations.php
new file mode 100644
index 0000000000..a2ef2affcb
--- /dev/null
+++ b/analyticsdata/src/run_report_with_aggregations.php
@@ -0,0 +1,107 @@
+setProperty('properties/' . $propertyId)
+ ->setDimensions([new Dimension(['name' => 'country'])])
+ ->setMetrics([new Metric(['name' => 'sessions'])])
+ ->setDateRanges([
+ new DateRange([
+ 'start_date' => '365daysAgo',
+ 'end_date' => 'today',
+ ]),
+ ])
+ ->setMetricAggregations([
+ MetricAggregation::TOTAL,
+ MetricAggregation::MAXIMUM,
+ MetricAggregation::MINIMUM
+ ]);
+ $response = $client->runReport($request);
+
+ printRunReportResponseWithAggregations($response);
+}
+
+/**
+ * Print results of a runReport call.
+ * @param RunReportResponse $response
+ */
+function printRunReportResponseWithAggregations($response)
+{
+ // [START analyticsdata_print_run_report_response_header]
+ printf('%s rows received%s', $response->getRowCount(), PHP_EOL);
+ foreach ($response->getDimensionHeaders() as $dimensionHeader) {
+ printf('Dimension header name: %s%s', $dimensionHeader->getName(), PHP_EOL);
+ }
+ foreach ($response->getMetricHeaders() as $metricHeader) {
+ printf(
+ 'Metric header name: %s (%s)' . PHP_EOL,
+ $metricHeader->getName(),
+ MetricType::name($metricHeader->getType())
+ );
+ }
+ // [END analyticsdata_print_run_report_response_header]
+
+ // [START analyticsdata_print_run_report_response_rows]
+ print 'Report result: ' . PHP_EOL;
+
+ foreach ($response->getRows() as $row) {
+ printf(
+ '%s %s' . PHP_EOL,
+ $row->getDimensionValues()[0]->getValue(),
+ $row->getMetricValues()[0]->getValue()
+ );
+ }
+ // [END analyticsdata_print_run_report_response_rows]
+}
+// [END analyticsdata_run_report_with_aggregations]
+
+// The following 2 lines are only needed to run the samples
+require_once __DIR__ . '/../../testing/sample_helpers.php';
+return \Google\Cloud\Samples\execute_sample(__FILE__, __NAMESPACE__, $argv);
diff --git a/analyticsdata/src/run_report_with_cohorts.php b/analyticsdata/src/run_report_with_cohorts.php
new file mode 100644
index 0000000000..29ec2dc7d5
--- /dev/null
+++ b/analyticsdata/src/run_report_with_cohorts.php
@@ -0,0 +1,125 @@
+setProperty('properties/' . $propertyId)
+ ->setDimensions([
+ new Dimension(['name' => 'cohort']),
+ new Dimension(['name' => 'cohortNthWeek']),
+ ])
+ ->setMetrics([
+ new Metric(['name' => 'cohortActiveUsers']),
+ new Metric([
+ 'name' => 'cohortRetentionRate',
+ 'expression' => 'cohortActiveUsers/cohortTotalUsers'
+ ])
+ ])
+ ->setCohortSpec(new CohortSpec([
+ 'cohorts' => [
+ new Cohort([
+ 'dimension' => 'firstSessionDate',
+ 'name' => 'cohort',
+ 'date_range' => new DateRange([
+ 'start_date' => '2021-01-03',
+ 'end_date' => '2021-01-09',
+ ]),
+ ])
+ ],
+ 'cohorts_range' => new CohortsRange([
+ 'start_offset' => '0',
+ 'end_offset' => '4',
+ 'granularity' => '2',
+ ]),
+ ]));
+ $response = $client->runReport($request);
+
+ printRunReportResponseWithCohorts($response);
+}
+
+/**
+ * Print results of a runReport call.
+ * @param RunReportResponse $response
+ */
+function printRunReportResponseWithCohorts($response)
+{
+ // [START analyticsdata_print_run_report_response_header]
+ printf('%s rows received%s', $response->getRowCount(), PHP_EOL);
+ foreach ($response->getDimensionHeaders() as $dimensionHeader) {
+ printf('Dimension header name: %s%s', $dimensionHeader->getName(), PHP_EOL);
+ }
+ foreach ($response->getMetricHeaders() as $metricHeader) {
+ printf(
+ 'Metric header name: %s (%s)' . PHP_EOL,
+ $metricHeader->getName(),
+ MetricType::name($metricHeader->getType())
+ );
+ }
+ // [END analyticsdata_print_run_report_response_header]
+
+ // [START analyticsdata_print_run_report_response_rows]
+ print 'Report result: ' . PHP_EOL;
+
+ foreach ($response->getRows() as $row) {
+ printf(
+ '%s %s' . PHP_EOL,
+ $row->getDimensionValues()[0]->getValue(),
+ $row->getMetricValues()[0]->getValue()
+ );
+ }
+ // [END analyticsdata_print_run_report_response_rows]
+}
+// [END analyticsdata_run_report_with_cohorts]
+
+// The following 2 lines are only needed to run the samples
+require_once __DIR__ . '/../../testing/sample_helpers.php';
+return \Google\Cloud\Samples\execute_sample(__FILE__, __NAMESPACE__, $argv);
diff --git a/analyticsdata/src/run_report_with_date_ranges.php b/analyticsdata/src/run_report_with_date_ranges.php
new file mode 100644
index 0000000000..aceb328d57
--- /dev/null
+++ b/analyticsdata/src/run_report_with_date_ranges.php
@@ -0,0 +1,104 @@
+setProperty('properties/' . $propertyId)
+ ->setDateRanges([
+ new DateRange([
+ 'start_date' => '2019-08-01',
+ 'end_date' => '2019-08-14',
+ ]),
+ new DateRange([
+ 'start_date' => '2020-08-01',
+ 'end_date' => '2020-08-14',
+ ]),
+ ])
+ ->setDimensions([new Dimension(['name' => 'platform'])])
+ ->setMetrics([new Metric(['name' => 'activeUsers'])]);
+ $response = $client->runReport($request);
+
+ printRunReportResponseWithDateRanges($response);
+}
+
+/**
+ * Print results of a runReport call.
+ * @param RunReportResponse $response
+ */
+function printRunReportResponseWithDateRanges(RunReportResponse $response)
+{
+ // [START analyticsdata_print_run_report_response_header]
+ printf('%s rows received%s', $response->getRowCount(), PHP_EOL);
+ foreach ($response->getDimensionHeaders() as $dimensionHeader) {
+ printf('Dimension header name: %s%s', $dimensionHeader->getName(), PHP_EOL);
+ }
+ foreach ($response->getMetricHeaders() as $metricHeader) {
+ printf(
+ 'Metric header name: %s (%s)' . PHP_EOL,
+ $metricHeader->getName(),
+ MetricType::name($metricHeader->getType())
+ );
+ }
+ // [END analyticsdata_print_run_report_response_header]
+
+ // [START analyticsdata_print_run_report_response_rows]
+ print 'Report result: ' . PHP_EOL;
+
+ foreach ($response->getRows() as $row) {
+ printf(
+ '%s %s' . PHP_EOL,
+ $row->getDimensionValues()[0]->getValue(),
+ $row->getMetricValues()[0]->getValue()
+ );
+ }
+ // [END analyticsdata_print_run_report_response_rows]
+}
+// [END analyticsdata_run_report_with_date_ranges]
+
+// The following 2 lines are only needed to run the samples
+require_once __DIR__ . '/../../testing/sample_helpers.php';
+return \Google\Cloud\Samples\execute_sample(__FILE__, __NAMESPACE__, $argv);
diff --git a/analyticsdata/src/run_report_with_dimension_and_metric_filters.php b/analyticsdata/src/run_report_with_dimension_and_metric_filters.php
new file mode 100644
index 0000000000..2c175a4760
--- /dev/null
+++ b/analyticsdata/src/run_report_with_dimension_and_metric_filters.php
@@ -0,0 +1,145 @@
+setProperty('properties/' . $propertyId)
+ ->setDimensions([new Dimension(['name' => 'city'])])
+ ->setMetrics([new Metric(['name' => 'activeUsers'])])
+ ->setDateRanges([new DateRange([
+ 'start_date' => '2020-03-31',
+ 'end_date' => 'today',
+ ]),
+ ])
+ ->setMetricFilter(new FilterExpression([
+ 'filter' => new Filter([
+ 'field_name' => 'sessions',
+ 'numeric_filter' => new NumericFilter([
+ 'operation' => Operation::GREATER_THAN,
+ 'value' => new NumericValue([
+ 'int64_value' => 1000,
+ ]),
+ ]),
+ ]),
+ ]))
+ ->setDimensionFilter(new FilterExpression([
+ 'and_group' => new FilterExpressionList([
+ 'expressions' => [
+ new FilterExpression([
+ 'filter' => new Filter([
+ 'field_name' => 'platform',
+ 'string_filter' => new StringFilter([
+ 'match_type' => MatchType::EXACT,
+ 'value' => 'Android',
+ ])
+ ]),
+ ]),
+ new FilterExpression([
+ 'filter' => new Filter([
+ 'field_name' => 'eventName',
+ 'string_filter' => new StringFilter([
+ 'match_type' => MatchType::EXACT,
+ 'value' => 'in_app_purchase',
+ ])
+ ])
+ ]),
+ ],
+ ]),
+ ]));
+ $response = $client->runReport($request);
+
+ printRunReportResponseWithDimensionAndMetricFilters($response);
+}
+
+/**
+ * Print results of a runReport call.
+ * @param RunReportResponse $response
+ */
+function printRunReportResponseWithDimensionAndMetricFilters(RunReportResponse $response)
+{
+ // [START analyticsdata_print_run_report_response_header]
+ printf('%s rows received%s', $response->getRowCount(), PHP_EOL);
+ foreach ($response->getDimensionHeaders() as $dimensionHeader) {
+ printf('Dimension header name: %s%s', $dimensionHeader->getName(), PHP_EOL);
+ }
+ foreach ($response->getMetricHeaders() as $metricHeader) {
+ printf(
+ 'Metric header name: %s (%s)' . PHP_EOL,
+ $metricHeader->getName(),
+ MetricType::name($metricHeader->getType())
+ );
+ }
+ // [END analyticsdata_print_run_report_response_header]
+
+ // [START analyticsdata_print_run_report_response_rows]
+ print 'Report result: ' . PHP_EOL;
+
+ foreach ($response->getRows() as $row) {
+ printf(
+ '%s %s' . PHP_EOL,
+ $row->getDimensionValues()[0]->getValue(),
+ $row->getMetricValues()[0]->getValue()
+ );
+ }
+ // [END analyticsdata_print_run_report_response_rows]
+}
+// [END analyticsdata_run_report_with_dimension_and_metric_filters]
+
+// The following 2 lines are only needed to run the samples
+require_once __DIR__ . '/../../testing/sample_helpers.php';
+return \Google\Cloud\Samples\execute_sample(__FILE__, __NAMESPACE__, $argv);
diff --git a/analyticsdata/src/run_report_with_dimension_exclude_filter.php b/analyticsdata/src/run_report_with_dimension_exclude_filter.php
new file mode 100644
index 0000000000..de5c7b8217
--- /dev/null
+++ b/analyticsdata/src/run_report_with_dimension_exclude_filter.php
@@ -0,0 +1,116 @@
+setProperty('properties/' . $propertyId)
+ ->setDimensions([new Dimension(['name' => 'pageTitle'])])
+ ->setMetrics([new Metric(['name' => 'sessions'])])
+ ->setDateRanges([new DateRange([
+ 'start_date' => '7daysAgo',
+ 'end_date' => 'yesterday',
+ ])
+ ])
+ ->setDimensionFilter(new FilterExpression([
+ 'not_expression' => new FilterExpression([
+ 'filter' => new Filter([
+ 'field_name' => 'pageTitle',
+ 'string_filter' => new StringFilter([
+ 'value' => 'My Homepage',
+ ]),
+ ]),
+ ]),
+ ]));
+ $response = $client->runReport($request);
+
+ printRunReportResponseWithDimensionExcludeFilter($response);
+}
+
+/**
+ * Print results of a runReport call.
+ * @param RunReportResponse $response
+ */
+function printRunReportResponseWithDimensionExcludeFilter(RunReportResponse $response)
+{
+ // [START analyticsdata_print_run_report_response_header]
+ printf('%s rows received%s', $response->getRowCount(), PHP_EOL);
+ foreach ($response->getDimensionHeaders() as $dimensionHeader) {
+ printf('Dimension header name: %s%s', $dimensionHeader->getName(), PHP_EOL);
+ }
+ foreach ($response->getMetricHeaders() as $metricHeader) {
+ printf(
+ 'Metric header name: %s (%s)' . PHP_EOL,
+ $metricHeader->getName(),
+ MetricType::name($metricHeader->getType())
+ );
+ }
+ // [END analyticsdata_print_run_report_response_header]
+
+ // [START analyticsdata_print_run_report_response_rows]
+ print 'Report result: ' . PHP_EOL;
+
+ foreach ($response->getRows() as $row) {
+ printf(
+ '%s %s' . PHP_EOL,
+ $row->getDimensionValues()[0]->getValue(),
+ $row->getMetricValues()[0]->getValue()
+ );
+ }
+ // [END analyticsdata_print_run_report_response_rows]
+}
+// [END analyticsdata_run_report_with_dimension_exclude_filter]
+
+// The following 2 lines are only needed to run the samples
+require_once __DIR__ . '/../../testing/sample_helpers.php';
+return \Google\Cloud\Samples\execute_sample(__FILE__, __NAMESPACE__, $argv);
diff --git a/analyticsdata/src/run_report_with_dimension_filter.php b/analyticsdata/src/run_report_with_dimension_filter.php
new file mode 100644
index 0000000000..9a375fa76a
--- /dev/null
+++ b/analyticsdata/src/run_report_with_dimension_filter.php
@@ -0,0 +1,115 @@
+setProperty('properties/' . $propertyId)
+ ->setDimensions([new Dimension(['name' => 'date'])])
+ ->setMetrics([new Metric(['name' => 'eventCount'])])
+ ->setDateRanges([
+ new DateRange([
+ 'start_date' => '7daysAgo',
+ 'end_date' => 'yesterday',
+ ])
+ ])
+ ->setDimensionFilter(new FilterExpression([
+ 'filter' => new Filter([
+ 'field_name' => 'eventName',
+ 'string_filter' => new StringFilter([
+ 'value' => 'first_open'
+ ]),
+ ]),
+ ]));
+ $response = $client->runReport($request);
+
+ printRunReportResponseWithDimensionFilter($response);
+}
+
+/**
+ * Print results of a runReport call.
+ * @param RunReportResponse $response
+ */
+function printRunReportResponseWithDimensionFilter(RunReportResponse $response)
+{
+ // [START analyticsdata_print_run_report_response_header]
+ printf('%s rows received%s', $response->getRowCount(), PHP_EOL);
+ foreach ($response->getDimensionHeaders() as $dimensionHeader) {
+ printf('Dimension header name: %s%s', $dimensionHeader->getName(), PHP_EOL);
+ }
+ foreach ($response->getMetricHeaders() as $metricHeader) {
+ printf(
+ 'Metric header name: %s (%s)' . PHP_EOL,
+ $metricHeader->getName(),
+ MetricType::name($metricHeader->getType())
+ );
+ }
+ // [END analyticsdata_print_run_report_response_header]
+
+ // [START analyticsdata_print_run_report_response_rows]
+ print 'Report result: ' . PHP_EOL;
+
+ foreach ($response->getRows() as $row) {
+ printf(
+ '%s %s' . PHP_EOL,
+ $row->getDimensionValues()[0]->getValue(),
+ $row->getMetricValues()[0]->getValue()
+ );
+ }
+ // [END analyticsdata_print_run_report_response_rows]
+}
+// [END analyticsdata_run_report_with_dimension_filter]
+
+// The following 2 lines are only needed to run the samples
+require_once __DIR__ . '/../../testing/sample_helpers.php';
+return \Google\Cloud\Samples\execute_sample(__FILE__, __NAMESPACE__, $argv);
diff --git a/analyticsdata/src/run_report_with_dimension_in_list_filter.php b/analyticsdata/src/run_report_with_dimension_in_list_filter.php
new file mode 100644
index 0000000000..9ad6001d80
--- /dev/null
+++ b/analyticsdata/src/run_report_with_dimension_in_list_filter.php
@@ -0,0 +1,119 @@
+setProperty('properties/' . $propertyId)
+ ->setDimensions([new Dimension(['name' => 'eventName'])])
+ ->setMetrics([new Metric(['name' => 'sessions'])])
+ ->setDateRanges([new DateRange([
+ 'start_date' => '7daysAgo',
+ 'end_date' => 'yesterday',
+ ])
+ ])
+ ->setDimensionFilter(new FilterExpression([
+ 'filter' => new Filter([
+ 'field_name' => 'eventName',
+ 'in_list_filter' => new InListFilter([
+ 'values' => [
+ 'purchase',
+ 'in_app_purchase',
+ 'app_store_subscription_renew',
+ ],
+ ]),
+ ]),
+ ]));
+ $response = $client->runReport($request);
+
+ printRunReportResponseWithDimensionInListFilter($response);
+}
+
+/**
+ * Print results of a runReport call.
+ * @param RunReportResponse $response
+ */
+function printRunReportResponseWithDimensionInListFilter(RunReportResponse $response)
+{
+ // [START analyticsdata_print_run_report_response_header]
+ printf('%s rows received%s', $response->getRowCount(), PHP_EOL);
+ foreach ($response->getDimensionHeaders() as $dimensionHeader) {
+ printf('Dimension header name: %s%s', $dimensionHeader->getName(), PHP_EOL);
+ }
+ foreach ($response->getMetricHeaders() as $metricHeader) {
+ printf(
+ 'Metric header name: %s (%s)' . PHP_EOL,
+ $metricHeader->getName(),
+ MetricType::name($metricHeader->getType())
+ );
+ }
+ // [END analyticsdata_print_run_report_response_header]
+
+ // [START analyticsdata_print_run_report_response_rows]
+ print 'Report result: ' . PHP_EOL;
+
+ foreach ($response->getRows() as $row) {
+ printf(
+ '%s %s' . PHP_EOL,
+ $row->getDimensionValues()[0]->getValue(),
+ $row->getMetricValues()[0]->getValue()
+ );
+ }
+ // [END analyticsdata_print_run_report_response_rows]
+}
+// [END analyticsdata_run_report_with_dimension_in_list_filter]
+
+// The following 2 lines are only needed to run the samples
+require_once __DIR__ . '/../../testing/sample_helpers.php';
+return \Google\Cloud\Samples\execute_sample(__FILE__, __NAMESPACE__, $argv);
diff --git a/analyticsdata/src/run_report_with_multiple_dimension_filters.php b/analyticsdata/src/run_report_with_multiple_dimension_filters.php
new file mode 100644
index 0000000000..5946048ac3
--- /dev/null
+++ b/analyticsdata/src/run_report_with_multiple_dimension_filters.php
@@ -0,0 +1,131 @@
+setProperty('properties/' . $propertyId)
+ ->setDimensions([new Dimension(['name' => 'browser'])])
+ ->setMetrics([new Metric(['name' => 'activeUsers'])])
+ ->setDateRanges([
+ new DateRange([
+ 'start_date' => '7daysAgo',
+ 'end_date' => 'yesterday',
+ ]),
+ ])
+ ->setDimensionFilter(new FilterExpression([
+ 'and_group' => new FilterExpressionList([
+ 'expressions' => [
+ new FilterExpression([
+ 'filter' => new Filter([
+ 'field_name' => 'browser',
+ 'string_filter' => new StringFilter([
+ 'value' => 'Chrome',
+ ])
+ ]),
+ ]),
+ new FilterExpression([
+ 'filter' => new Filter([
+ 'field_name' => 'countryId',
+ 'string_filter' => new StringFilter([
+ 'value' => 'US',
+ ])
+ ]),
+ ]),
+ ],
+ ]),
+ ]));
+ $response = $client->runReport($request);
+
+ printRunReportResponseWithMultipleDimensionFilters($response);
+}
+
+/**
+ * Print results of a runReport call.
+ * @param RunReportResponse $response
+ */
+function printRunReportResponseWithMultipleDimensionFilters(RunReportResponse $response)
+{
+ // [START analyticsdata_print_run_report_response_header]
+ printf('%s rows received%s', $response->getRowCount(), PHP_EOL);
+ foreach ($response->getDimensionHeaders() as $dimensionHeader) {
+ printf('Dimension header name: %s%s', $dimensionHeader->getName(), PHP_EOL);
+ }
+ foreach ($response->getMetricHeaders() as $metricHeader) {
+ printf(
+ 'Metric header name: %s (%s)' . PHP_EOL,
+ $metricHeader->getName(),
+ MetricType::name($metricHeader->getType())
+ );
+ }
+ // [END analyticsdata_print_run_report_response_header]
+
+ // [START analyticsdata_print_run_report_response_rows]
+ print 'Report result: ' . PHP_EOL;
+
+ foreach ($response->getRows() as $row) {
+ printf(
+ '%s %s' . PHP_EOL,
+ $row->getDimensionValues()[0]->getValue(),
+ $row->getMetricValues()[0]->getValue()
+ );
+ }
+ // [END analyticsdata_print_run_report_response_rows]
+}
+// [END analyticsdata_run_report_with_multiple_dimension_filters]
+
+// The following 2 lines are only needed to run the samples
+require_once __DIR__ . '/../../testing/sample_helpers.php';
+return \Google\Cloud\Samples\execute_sample(__FILE__, __NAMESPACE__, $argv);
diff --git a/analyticsdata/src/run_report_with_multiple_dimensions.php b/analyticsdata/src/run_report_with_multiple_dimensions.php
new file mode 100644
index 0000000000..4b7f7ebd32
--- /dev/null
+++ b/analyticsdata/src/run_report_with_multiple_dimensions.php
@@ -0,0 +1,104 @@
+setProperty('properties/' . $propertyId)
+ ->setDimensions([
+ new Dimension(['name' => 'country']),
+ new Dimension(['name' => 'region']),
+ new Dimension(['name' => 'city']),
+ ])
+ ->setMetrics([new Metric(['name' => 'activeUsers'])])
+ ->setDateRanges([
+ new DateRange([
+ 'start_date' => '7daysAgo',
+ 'end_date' => 'today',
+ ])
+ ]);
+ $response = $client->runReport($request);
+
+ printRunReportResponseWithMultipleDimensions($response);
+}
+
+/**
+ * Print results of a runReport call.
+ * @param RunReportResponse $response
+ */
+function printRunReportResponseWithMultipleDimensions(RunReportResponse $response)
+{
+ // [START analyticsdata_print_run_report_response_header]
+ printf('%s rows received%s', $response->getRowCount(), PHP_EOL);
+ foreach ($response->getDimensionHeaders() as $dimensionHeader) {
+ printf('Dimension header name: %s%s', $dimensionHeader->getName(), PHP_EOL);
+ }
+ foreach ($response->getMetricHeaders() as $metricHeader) {
+ printf(
+ 'Metric header name: %s (%s)' . PHP_EOL,
+ $metricHeader->getName(),
+ MetricType::name($metricHeader->getType())
+ );
+ }
+ // [END analyticsdata_print_run_report_response_header]
+
+ // [START analyticsdata_print_run_report_response_rows]
+ print 'Report result: ' . PHP_EOL;
+
+ foreach ($response->getRows() as $row) {
+ printf(
+ '%s %s' . PHP_EOL,
+ $row->getDimensionValues()[0]->getValue(),
+ $row->getMetricValues()[0]->getValue()
+ );
+ }
+ // [END analyticsdata_print_run_report_response_rows]
+}
+// [END analyticsdata_run_report_with_multiple_dimensions]
+
+// The following 2 lines are only needed to run the samples
+require_once __DIR__ . '/../../testing/sample_helpers.php';
+return \Google\Cloud\Samples\execute_sample(__FILE__, __NAMESPACE__, $argv);
diff --git a/analyticsdata/src/run_report_with_multiple_metrics.php b/analyticsdata/src/run_report_with_multiple_metrics.php
new file mode 100644
index 0000000000..e96c9829c8
--- /dev/null
+++ b/analyticsdata/src/run_report_with_multiple_metrics.php
@@ -0,0 +1,104 @@
+setProperty('properties/' . $propertyId)
+ ->setDimensions([new Dimension(['name' => 'date'])])
+ ->setMetrics([
+ new Metric(['name' => 'activeUsers']),
+ new Metric(['name' => 'newUsers']),
+ new Metric(['name' => 'totalRevenue'])
+ ])
+ ->setDateRanges([
+ new DateRange([
+ 'start_date' => '7daysAgo',
+ 'end_date' => 'today',
+ ])
+ ]);
+ $response = $client->runReport($request);
+
+ printRunReportResponseWithMultipleMetrics($response);
+}
+
+/**
+ * Print results of a runReport call.
+ * @param RunReportResponse $response
+ */
+function printRunReportResponseWithMultipleMetrics(RunReportResponse $response)
+{
+ // [START analyticsdata_print_run_report_response_header]
+ printf('%s rows received%s', $response->getRowCount(), PHP_EOL);
+ foreach ($response->getDimensionHeaders() as $dimensionHeader) {
+ printf('Dimension header name: %s%s', $dimensionHeader->getName(), PHP_EOL);
+ }
+ foreach ($response->getMetricHeaders() as $metricHeader) {
+ printf(
+ 'Metric header name: %s (%s)' . PHP_EOL,
+ $metricHeader->getName(),
+ MetricType::name($metricHeader->getType())
+ );
+ }
+ // [END analyticsdata_print_run_report_response_header]
+
+ // [START analyticsdata_print_run_report_response_rows]
+ print 'Report result: ' . PHP_EOL;
+
+ foreach ($response->getRows() as $row) {
+ printf(
+ '%s %s' . PHP_EOL,
+ $row->getDimensionValues()[0]->getValue(),
+ $row->getMetricValues()[0]->getValue()
+ );
+ }
+ // [END analyticsdata_print_run_report_response_rows]
+}
+// [END analyticsdata_run_report_with_multiple_metrics]
+
+// The following 2 lines are only needed to run the samples
+require_once __DIR__ . '/../../testing/sample_helpers.php';
+return \Google\Cloud\Samples\execute_sample(__FILE__, __NAMESPACE__, $argv);
diff --git a/analyticsdata/src/run_report_with_named_date_ranges.php b/analyticsdata/src/run_report_with_named_date_ranges.php
new file mode 100644
index 0000000000..59b71ff7da
--- /dev/null
+++ b/analyticsdata/src/run_report_with_named_date_ranges.php
@@ -0,0 +1,106 @@
+setProperty('properties/' . $propertyId)
+ ->setDateRanges([
+ new DateRange([
+ 'start_date' => '2020-01-01',
+ 'end_date' => '2020-01-31',
+ 'name' => 'year_ago',
+ ]),
+ new DateRange([
+ 'start_date' => '2021-01-01',
+ 'end_date' => '2021-01-31',
+ 'name' => 'current_year',
+ ]),
+ ])
+ ->setDimensions([new Dimension(['name' => 'country'])])
+ ->setMetrics([new Metric(['name' => 'sessions'])]);
+ $response = $client->runReport($request);
+
+ printRunReportResponseWithNamedDateRanges($response);
+}
+
+/**
+ * Print results of a runReport call.
+ * @param RunReportResponse $response
+ */
+function printRunReportResponseWithNamedDateRanges(RunReportResponse $response)
+{
+ // [START analyticsdata_print_run_report_response_header]
+ printf('%s rows received%s', $response->getRowCount(), PHP_EOL);
+ foreach ($response->getDimensionHeaders() as $dimensionHeader) {
+ printf('Dimension header name: %s%s', $dimensionHeader->getName(), PHP_EOL);
+ }
+ foreach ($response->getMetricHeaders() as $metricHeader) {
+ printf(
+ 'Metric header name: %s (%s)' . PHP_EOL,
+ $metricHeader->getName(),
+ MetricType::name($metricHeader->getType())
+ );
+ }
+ // [END analyticsdata_print_run_report_response_header]
+
+ // [START analyticsdata_print_run_report_response_rows]
+ print 'Report result: ' . PHP_EOL;
+
+ foreach ($response->getRows() as $row) {
+ printf(
+ '%s %s' . PHP_EOL,
+ $row->getDimensionValues()[0]->getValue(),
+ $row->getMetricValues()[0]->getValue()
+ );
+ }
+ // [END analyticsdata_print_run_report_response_rows]
+}
+// [END analyticsdata_run_report_with_named_date_ranges]
+
+// The following 2 lines are only needed to run the samples
+require_once __DIR__ . '/../../testing/sample_helpers.php';
+return \Google\Cloud\Samples\execute_sample(__FILE__, __NAMESPACE__, $argv);
diff --git a/analyticsdata/src/run_report_with_ordering.php b/analyticsdata/src/run_report_with_ordering.php
new file mode 100644
index 0000000000..0f578cbab1
--- /dev/null
+++ b/analyticsdata/src/run_report_with_ordering.php
@@ -0,0 +1,115 @@
+setProperty('properties/' . $propertyId)
+ ->setDimensions([new Dimension(['name' => 'date'])])
+ ->setMetrics([
+ new Metric(['name' => 'activeUsers']),
+ new Metric(['name' => 'newUsers']),
+ new Metric(['name' => 'totalRevenue']),
+ ])
+ ->setDateRanges([
+ new DateRange([
+ 'start_date' => '7daysAgo',
+ 'end_date' => 'today',
+ ]),
+ ])
+ ->setOrderBys([
+ new OrderBy([
+ 'metric' => new MetricOrderBy([
+ 'metric_name' => 'totalRevenue',
+ ]),
+ 'desc' => true,
+ ]),
+ ]);
+ $response = $client->runReport($request);
+
+ printRunReportResponseWithOrdering($response);
+}
+
+/**
+ * Print results of a runReport call.
+ * @param RunReportResponse $response
+ */
+function printRunReportResponseWithOrdering(RunReportResponse $response)
+{
+ // [START analyticsdata_print_run_report_response_header]
+ printf('%s rows received%s', $response->getRowCount(), PHP_EOL);
+ foreach ($response->getDimensionHeaders() as $dimensionHeader) {
+ printf('Dimension header name: %s%s', $dimensionHeader->getName(), PHP_EOL);
+ }
+ foreach ($response->getMetricHeaders() as $metricHeader) {
+ printf(
+ 'Metric header name: %s (%s)' . PHP_EOL,
+ $metricHeader->getName(),
+ MetricType::name($metricHeader->getType())
+ );
+ }
+ // [END analyticsdata_print_run_report_response_header]
+
+ // [START analyticsdata_print_run_report_response_rows]
+ print 'Report result: ' . PHP_EOL;
+
+ foreach ($response->getRows() as $row) {
+ printf(
+ '%s %s' . PHP_EOL,
+ $row->getDimensionValues()[0]->getValue(),
+ $row->getMetricValues()[0]->getValue()
+ );
+ }
+ // [END analyticsdata_print_run_report_response_rows]
+}
+// [END analyticsdata_run_report_with_ordering]
+
+// The following 2 lines are only needed to run the samples
+require_once __DIR__ . '/../../testing/sample_helpers.php';
+return \Google\Cloud\Samples\execute_sample(__FILE__, __NAMESPACE__, $argv);
diff --git a/analyticsdata/src/run_report_with_pagination.php b/analyticsdata/src/run_report_with_pagination.php
new file mode 100644
index 0000000000..32fcf7fbae
--- /dev/null
+++ b/analyticsdata/src/run_report_with_pagination.php
@@ -0,0 +1,111 @@
+setProperty('properties/' . $propertyId)
+ ->setDateRanges([
+ new DateRange([
+ 'start_date' => '350daysAgo',
+ 'end_date' => 'yesterday',
+ ])
+ ])
+ ->setDimensions([
+ new Dimension(['name' => 'firstUserSource']),
+ new Dimension(['name' => 'firstUserMedium']),
+ new Dimension(['name' => 'firstUserCampaignName']),
+ ])
+ ->setMetrics([
+ new Metric(['name' => 'sessions']),
+ new Metric(['name' => 'conversions']),
+ new Metric(['name' => 'totalRevenue']),
+ ])
+ ->setLimit(100000)
+ ->setOffset(0);
+ $response = $client->runReport($request);
+
+ printRunReportResponseWithPagination($response);
+}
+
+/**
+ * Print results of a runReport call.
+ * @param RunReportResponse $response
+ */
+function printRunReportResponseWithPagination(RunReportResponse $response)
+{
+ // [START analyticsdata_print_run_report_response_header]
+ printf('%s rows received%s', $response->getRowCount(), PHP_EOL);
+ foreach ($response->getDimensionHeaders() as $dimensionHeader) {
+ printf('Dimension header name: %s%s', $dimensionHeader->getName(), PHP_EOL);
+ }
+ foreach ($response->getMetricHeaders() as $metricHeader) {
+ printf(
+ 'Metric header name: %s (%s)' . PHP_EOL,
+ $metricHeader->getName(),
+ MetricType::name($metricHeader->getType())
+ );
+ }
+ // [END analyticsdata_print_run_report_response_header]
+
+ // [START analyticsdata_print_run_report_response_rows]
+ print 'Report result: ' . PHP_EOL;
+
+ foreach ($response->getRows() as $row) {
+ printf(
+ '%s %s' . PHP_EOL,
+ $row->getDimensionValues()[0]->getValue(),
+ $row->getMetricValues()[0]->getValue()
+ );
+ }
+ // [END analyticsdata_print_run_report_response_rows]
+}
+// [END analyticsdata_run_report_with_pagination]
+
+// The following 2 lines are only needed to run the samples
+require_once __DIR__ . '/../../testing/sample_helpers.php';
+return \Google\Cloud\Samples\execute_sample(__FILE__, __NAMESPACE__, $argv);
diff --git a/analyticsdata/src/run_report_with_property_quota.php b/analyticsdata/src/run_report_with_property_quota.php
new file mode 100644
index 0000000000..056f08ef84
--- /dev/null
+++ b/analyticsdata/src/run_report_with_property_quota.php
@@ -0,0 +1,111 @@
+setProperty('properties/' . $propertyId)
+ ->setReturnPropertyQuota(true)
+ ->setDimensions([new Dimension(['name' => 'country'])])
+ ->setMetrics([new Metric(['name' => 'activeUsers'])])
+ ->setDateRanges([
+ new DateRange([
+ 'start_date' => '7daysAgo',
+ 'end_date' => 'today',
+ ]),
+ ]);
+ $response = $client->runReport($request);
+
+ printRunReportResponseWithPropertyQuota($response);
+}
+
+/**
+ * Print results of a runReport call.
+ * @param RunReportResponse $response
+ */
+function printRunReportResponseWithPropertyQuota(RunReportResponse $response)
+{
+ // [START analyticsdata_run_report_with_property_quota_print_response]
+ if ($response->hasPropertyQuota()) {
+ $propertyQuota = $response->getPropertyQuota();
+ $tokensPerDay = $propertyQuota->getTokensPerDay();
+ $tokensPerHour = $propertyQuota->getTokensPerHour();
+ $concurrentRequests = $propertyQuota->getConcurrentRequests();
+ $serverErrors = $propertyQuota->getServerErrorsPerProjectPerHour();
+ $thresholdedRequests = $propertyQuota->getPotentiallyThresholdedRequestsPerHour();
+
+ printf(
+ 'Tokens per day quota consumed: %s, remaining: %s' . PHP_EOL,
+ $tokensPerDay->getConsumed(),
+ $tokensPerDay->getRemaining(),
+ );
+ printf(
+ 'Tokens per hour quota consumed: %s, remaining: %s' . PHP_EOL,
+ $tokensPerHour->getConsumed(),
+ $tokensPerHour->getRemaining(),
+ );
+ printf(
+ 'Concurrent requests quota consumed: %s, remaining: %s' . PHP_EOL,
+ $concurrentRequests->getConsumed(),
+ $concurrentRequests->getRemaining(),
+ );
+ printf(
+ 'Server errors per project per hour quota consumed: %s, remaining: %s' . PHP_EOL,
+ $serverErrors->getConsumed(),
+ $serverErrors->getRemaining(),
+ );
+ printf(
+ 'Potentially thresholded requests per hour quota consumed: %s, remaining: %s' . PHP_EOL,
+ $thresholdedRequests->getConsumed(),
+ $thresholdedRequests->getRemaining(),
+ );
+ }
+ // [END analyticsdata_run_report_with_property_quota_print_response]
+}
+// [END analyticsdata_run_report_with_property_quota]
+
+// The following 2 lines are only needed to run the samples
+require_once __DIR__ . '/../../testing/sample_helpers.php';
+return \Google\Cloud\Samples\execute_sample(__FILE__, __NAMESPACE__, $argv);
diff --git a/analyticsdata/test/analyticsDataTest.php b/analyticsdata/test/analyticsDataTest.php
new file mode 100644
index 0000000000..8ed8a7eac8
--- /dev/null
+++ b/analyticsdata/test/analyticsDataTest.php
@@ -0,0 +1,222 @@
+runFunctionSnippet('run_report', [$propertyId]);
+
+ $this->assertStringContainsString('Report result', $output);
+ }
+
+ public function testClientFromJsonCredentials()
+ {
+ $jsonCredentials = self::requireEnv('GOOGLE_APPLICATION_CREDENTIALS');
+ $this->runFunctionSnippet('client_from_json_credentials', [$jsonCredentials]);
+
+ $client = $this->getLastReturnedSnippetValue();
+
+ $this->assertInstanceOf(BetaAnalyticsDataClient::class, $client);
+
+ try {
+ $this->runFunctionSnippet('client_from_json_credentials', ['does-not-exist.json']);
+ $this->fail('Non-existant json credentials should throw exception');
+ } catch (ValidationException $ex) {
+ $this->assertStringContainsString('does-not-exist.json', $ex->getMessage());
+ }
+ }
+
+ public function testGetCommonMetadata()
+ {
+ $propertyId = self::requireEnv('GA_TEST_PROPERTY_ID');
+ $output = $this->runFunctionSnippet('get_common_metadata');
+
+ $this->assertStringContainsString('Dimensions and metrics', $output);
+ }
+
+ public function testGetMetadataByPropertyId()
+ {
+ $propertyId = self::requireEnv('GA_TEST_PROPERTY_ID');
+ $output = $this->runFunctionSnippet('get_metadata_by_property_id', [$propertyId]);
+
+ $this->assertStringContainsString('Dimensions and metrics', $output);
+ }
+
+ public function testRunRealtimeReport()
+ {
+ $propertyId = self::requireEnv('GA_TEST_PROPERTY_ID');
+ $output = $this->runFunctionSnippet('run_realtime_report', [$propertyId]);
+
+ $this->assertStringContainsString('Report result', $output);
+ }
+
+ public function testRunRealtimeReportWithMultipleDimensions()
+ {
+ $propertyId = self::requireEnv('GA_TEST_PROPERTY_ID');
+ $output = $this->runFunctionSnippet('run_realtime_report_with_multiple_dimensions', [$propertyId]);
+
+ $this->assertStringContainsString('Report result', $output);
+ }
+
+ public function testRunBatchReport()
+ {
+ $propertyId = self::requireEnv('GA_TEST_PROPERTY_ID');
+ $output = $this->runFunctionSnippet('run_batch_report', [$propertyId]);
+
+ $this->assertStringContainsString('Batch report result', $output);
+ $this->assertStringContainsString('Report result', $output);
+ }
+
+ public function testRunPivotReport()
+ {
+ $propertyId = self::requireEnv('GA_TEST_PROPERTY_ID');
+ $output = $this->runFunctionSnippet('run_pivot_report', [$propertyId]);
+
+ $this->assertStringContainsString('Report result', $output);
+ }
+
+ public function testRunRunRealtimeReportWithMultipleMetrics()
+ {
+ $propertyId = self::requireEnv('GA_TEST_PROPERTY_ID');
+ $output = $this->runFunctionSnippet('run_realtime_report_with_multiple_metrics', [$propertyId]);
+
+ $this->assertStringContainsString('Report result', $output);
+ }
+
+ public function testRunReportWithDimensionExcludeFilter()
+ {
+ $propertyId = self::requireEnv('GA_TEST_PROPERTY_ID');
+ $output = $this->runFunctionSnippet('run_report_with_dimension_exclude_filter', [$propertyId]);
+
+ $this->assertStringContainsString('Report result', $output);
+ }
+
+ public function testRunReportWithDimensionAndMetricFilters()
+ {
+ $propertyId = self::requireEnv('GA_TEST_PROPERTY_ID');
+ $output = $this->runFunctionSnippet('run_report_with_dimension_and_metric_filters', [$propertyId]);
+
+ $this->assertStringContainsString('Report result', $output);
+ }
+
+ public function testRunReportWithDimensionFilter()
+ {
+ $propertyId = self::requireEnv('GA_TEST_PROPERTY_ID');
+ $output = $this->runFunctionSnippet('run_report_with_dimension_filter', [$propertyId]);
+
+ $this->assertStringContainsString('Report result', $output);
+ }
+
+ public function testRunReportWithMultipleDimensionFilters()
+ {
+ $propertyId = self::requireEnv('GA_TEST_PROPERTY_ID');
+ $output = $this->runFunctionSnippet('run_report_with_multiple_dimension_filters', [$propertyId]);
+
+ $this->assertStringContainsString('Report result', $output);
+ }
+
+ public function testRunReportWithMultipleMetrics()
+ {
+ $propertyId = self::requireEnv('GA_TEST_PROPERTY_ID');
+ $output = $this->runFunctionSnippet('run_report_with_multiple_metrics', [$propertyId]);
+
+ $this->assertStringContainsString('Report result', $output);
+ }
+
+ public function testRunReportWithDimensionInListFilter()
+ {
+ $propertyId = self::requireEnv('GA_TEST_PROPERTY_ID');
+ $output = $this->runFunctionSnippet('run_report_with_dimension_in_list_filter', [$propertyId]);
+
+ $this->assertStringContainsString('Report result', $output);
+ }
+
+ public function testRunReportWithNamedDateRanges()
+ {
+ $propertyId = self::requireEnv('GA_TEST_PROPERTY_ID');
+ $output = $this->runFunctionSnippet('run_report_with_named_date_ranges', [$propertyId]);
+
+ $this->assertStringContainsString('Report result', $output);
+ }
+
+ public function testRunReportWithMultipleDimensions()
+ {
+ $propertyId = self::requireEnv('GA_TEST_PROPERTY_ID');
+ $output = $this->runFunctionSnippet('run_report_with_multiple_dimensions', [$propertyId]);
+
+ $this->assertStringContainsString('Report result', $output);
+ }
+
+ public function testRunReportWithDateRanges()
+ {
+ $propertyId = self::requireEnv('GA_TEST_PROPERTY_ID');
+ $output = $this->runFunctionSnippet('run_report_with_date_ranges', [$propertyId]);
+
+ $this->assertStringContainsString('Report result', $output);
+ }
+
+ public function testRunReportWithCohorts()
+ {
+ $propertyId = self::requireEnv('GA_TEST_PROPERTY_ID');
+ $output = $this->runFunctionSnippet('run_report_with_cohorts', [$propertyId]);
+
+ $this->assertStringContainsString('Report result', $output);
+ }
+
+ public function testRunReportWithAggregations()
+ {
+ $propertyId = self::requireEnv('GA_TEST_PROPERTY_ID');
+ $output = $this->runFunctionSnippet('run_report_with_aggregations', [$propertyId]);
+
+ $this->assertStringContainsString('Report result', $output);
+ }
+
+ public function testRunReportWithOrdering()
+ {
+ $propertyId = self::requireEnv('GA_TEST_PROPERTY_ID');
+ $output = $this->runFunctionSnippet('run_report_with_ordering', [$propertyId]);
+
+ $this->assertStringContainsString('Report result', $output);
+ }
+
+ public function testRunReportWithPagination()
+ {
+ $propertyId = self::requireEnv('GA_TEST_PROPERTY_ID');
+ $output = $this->runFunctionSnippet('run_report_with_pagination', [$propertyId]);
+
+ $this->assertStringContainsString('Report result', $output);
+ }
+
+ public function testRunReportWithPropertyQuota()
+ {
+ $propertyId = self::requireEnv('GA_TEST_PROPERTY_ID');
+ $output = $this->runFunctionSnippet('run_report_with_property_quota', [$propertyId]);
+
+ $this->assertStringContainsString('Tokens per day quota consumed', $output);
+ }
+}
diff --git a/analyticsdata/test/quickstartTest.php b/analyticsdata/test/quickstartTest.php
new file mode 100644
index 0000000000..705701dca3
--- /dev/null
+++ b/analyticsdata/test/quickstartTest.php
@@ -0,0 +1,42 @@
+runSnippet($file);
+
+ $this->assertStringContainsString('Report result', $output);
+ }
+}
diff --git a/appengine/flexible/analytics/app.php b/appengine/flexible/analytics/app.php
index f739853c0a..16c21acdea 100644
--- a/appengine/flexible/analytics/app.php
+++ b/appengine/flexible/analytics/app.php
@@ -16,20 +16,27 @@
*/
use GuzzleHttp\Client;
-use Silex\Application;
-use Silex\Provider\TwigServiceProvider;
-use Symfony\Component\HttpFoundation\Request;
+use Psr\Http\Message\ServerRequestInterface as Request;
+use Psr\Http\Message\ResponseInterface as Response;
+use Slim\Factory\AppFactory;
+use Slim\Views\Twig;
+use Slim\Views\TwigMiddleware;
-// create the Silex application
-$app = new Application();
-$app->register(new TwigServiceProvider());
-$app['twig.path'] = [ __DIR__ ];
+// Create App
+$app = AppFactory::create();
-$app->get('/', function (Application $app, Request $request) {
- /** @var Twig_Environment $twig */
- $twig = $app['twig'];
- $trackingId = $app['GA_TRACKING_ID'];
- # [START track_event]
+// Display errors
+$app->addErrorMiddleware(true, true, true);
+
+// Create Twig
+$twig = Twig::create(__DIR__);
+
+// Add Twig-View Middleware
+$app->add(TwigMiddleware::create($app, $twig));
+
+$app->get('/', function (Request $request, Response $response) use ($twig) {
+ $trackingId = getenv('GA_TRACKING_ID');
+ # [START gae_flex_analytics_track_event]
$baseUri = 'http://www.google-analytics.com/';
$client = new GuzzleHttp\Client(['base_uri' => $baseUri]);
$formData = [
@@ -44,12 +51,13 @@
'el' => 'Hearts', # Event label.
'ev' => 0, # Event value, must be an integer
];
- $response = $client->request('POST', 'collect', ['form_params' => $formData]);
- # [END track_event]
- return $twig->render('index.html.twig', [
- 'base_uri' => $baseUri,
- 'response_code' => $response->getStatusCode(),
- 'response_reason' => $response->getReasonPhrase()]);
+ $gaResponse = $client->request('POST', 'collect', ['form_params' => $formData]);
+ # [END gae_flex_analytics_track_event]
+ return $twig->render($response, 'index.html.twig', [
+ 'base_uri' => $baseUri,
+ 'response_code' => $gaResponse->getStatusCode(),
+ 'response_reason' => $gaResponse->getReasonPhrase()
+ ]);
});
return $app;
diff --git a/appengine/flexible/analytics/app.yaml b/appengine/flexible/analytics/app.yaml
index 8a8cbec116..f19ef14e67 100644
--- a/appengine/flexible/analytics/app.yaml
+++ b/appengine/flexible/analytics/app.yaml
@@ -1,7 +1,10 @@
runtime: php
env: flex
-# [START env_variables]
+runtime_config:
+ document_root: .
+
+# [START gae_flex_analytics_env_variables]
env_variables:
GA_TRACKING_ID: "YOUR-GA-TRACKING-ID"
-# [END env_variables]
+# [END gae_flex_analytics_env_variables]
diff --git a/appengine/flexible/analytics/composer.json b/appengine/flexible/analytics/composer.json
index fb79cd0053..50c1ea7a3c 100644
--- a/appengine/flexible/analytics/composer.json
+++ b/appengine/flexible/analytics/composer.json
@@ -1,12 +1,8 @@
{
"require": {
- "silex/silex": "^1.3",
- "twig/twig": "^1.24",
- "guzzlehttp/guzzle": "^6.2",
- "symfony/css-selector": "^3.1"
- },
- "require-dev": {
- "google/cloud-tools": "^0.6",
- "phpunit/phpunit": "~4"
+ "slim/slim": "^4.0",
+ "slim/psr7": "^1.3",
+ "slim/twig-view": "^3.2",
+ "guzzlehttp/guzzle": "^7.0"
}
}
diff --git a/appengine/flexible/analytics/composer.lock b/appengine/flexible/analytics/composer.lock
deleted file mode 100644
index aff45bf2f3..0000000000
--- a/appengine/flexible/analytics/composer.lock
+++ /dev/null
@@ -1,2228 +0,0 @@
-{
- "_readme": [
- "This file locks the dependencies of your project to a known state",
- "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file",
- "This file is @generated automatically"
- ],
- "hash": "d684050c8f20cfeaf4c133ef80da042c",
- "content-hash": "115bc7148f741387bba95692a4f90964",
- "packages": [
- {
- "name": "guzzlehttp/guzzle",
- "version": "6.2.2",
- "source": {
- "type": "git",
- "url": "https://github.com/guzzle/guzzle.git",
- "reference": "ebf29dee597f02f09f4d5bbecc68230ea9b08f60"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/guzzle/guzzle/zipball/ebf29dee597f02f09f4d5bbecc68230ea9b08f60",
- "reference": "ebf29dee597f02f09f4d5bbecc68230ea9b08f60",
- "shasum": ""
- },
- "require": {
- "guzzlehttp/promises": "^1.0",
- "guzzlehttp/psr7": "^1.3.1",
- "php": ">=5.5"
- },
- "require-dev": {
- "ext-curl": "*",
- "phpunit/phpunit": "^4.0",
- "psr/log": "^1.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "6.2-dev"
- }
- },
- "autoload": {
- "files": [
- "src/functions_include.php"
- ],
- "psr-4": {
- "GuzzleHttp\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Michael Dowling",
- "email": "mtdowling@gmail.com",
- "homepage": "https://github.com/mtdowling"
- }
- ],
- "description": "Guzzle is a PHP HTTP client library",
- "homepage": "http://guzzlephp.org/",
- "keywords": [
- "client",
- "curl",
- "framework",
- "http",
- "http client",
- "rest",
- "web service"
- ],
- "time": "2016-10-08 15:01:37"
- },
- {
- "name": "guzzlehttp/promises",
- "version": "1.3.0",
- "source": {
- "type": "git",
- "url": "https://github.com/guzzle/promises.git",
- "reference": "2693c101803ca78b27972d84081d027fca790a1e"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/guzzle/promises/zipball/2693c101803ca78b27972d84081d027fca790a1e",
- "reference": "2693c101803ca78b27972d84081d027fca790a1e",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.0"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "GuzzleHttp\\Promise\\": "src/"
- },
- "files": [
- "src/functions_include.php"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Michael Dowling",
- "email": "mtdowling@gmail.com",
- "homepage": "https://github.com/mtdowling"
- }
- ],
- "description": "Guzzle promises library",
- "keywords": [
- "promise"
- ],
- "time": "2016-11-18 17:47:58"
- },
- {
- "name": "guzzlehttp/psr7",
- "version": "1.3.1",
- "source": {
- "type": "git",
- "url": "https://github.com/guzzle/psr7.git",
- "reference": "5c6447c9df362e8f8093bda8f5d8873fe5c7f65b"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/guzzle/psr7/zipball/5c6447c9df362e8f8093bda8f5d8873fe5c7f65b",
- "reference": "5c6447c9df362e8f8093bda8f5d8873fe5c7f65b",
- "shasum": ""
- },
- "require": {
- "php": ">=5.4.0",
- "psr/http-message": "~1.0"
- },
- "provide": {
- "psr/http-message-implementation": "1.0"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.4-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "GuzzleHttp\\Psr7\\": "src/"
- },
- "files": [
- "src/functions_include.php"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Michael Dowling",
- "email": "mtdowling@gmail.com",
- "homepage": "https://github.com/mtdowling"
- }
- ],
- "description": "PSR-7 message implementation",
- "keywords": [
- "http",
- "message",
- "stream",
- "uri"
- ],
- "time": "2016-06-24 23:00:38"
- },
- {
- "name": "pimple/pimple",
- "version": "v1.1.1",
- "source": {
- "type": "git",
- "url": "https://github.com/silexphp/Pimple.git",
- "reference": "2019c145fe393923f3441b23f29bbdfaa5c58c4d"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/silexphp/Pimple/zipball/2019c145fe393923f3441b23f29bbdfaa5c58c4d",
- "reference": "2019c145fe393923f3441b23f29bbdfaa5c58c4d",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.1.x-dev"
- }
- },
- "autoload": {
- "psr-0": {
- "Pimple": "lib/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- }
- ],
- "description": "Pimple is a simple Dependency Injection Container for PHP 5.3",
- "homepage": "http://pimple.sensiolabs.org/",
- "keywords": [
- "container",
- "dependency injection"
- ],
- "time": "2013-11-22 08:30:29"
- },
- {
- "name": "psr/http-message",
- "version": "1.0.1",
- "source": {
- "type": "git",
- "url": "https://github.com/php-fig/http-message.git",
- "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/php-fig/http-message/zipball/f6561bf28d520154e4b0ec72be95418abe6d9363",
- "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Psr\\Http\\Message\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "PHP-FIG",
- "homepage": "http://www.php-fig.org/"
- }
- ],
- "description": "Common interface for HTTP messages",
- "homepage": "https://github.com/php-fig/http-message",
- "keywords": [
- "http",
- "http-message",
- "psr",
- "psr-7",
- "request",
- "response"
- ],
- "time": "2016-08-06 14:39:51"
- },
- {
- "name": "psr/log",
- "version": "1.0.2",
- "source": {
- "type": "git",
- "url": "https://github.com/php-fig/log.git",
- "reference": "4ebe3a8bf773a19edfe0a84b6585ba3d401b724d"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/php-fig/log/zipball/4ebe3a8bf773a19edfe0a84b6585ba3d401b724d",
- "reference": "4ebe3a8bf773a19edfe0a84b6585ba3d401b724d",
- "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": "2016-10-10 12:19:37"
- },
- {
- "name": "silex/silex",
- "version": "v1.3.5",
- "source": {
- "type": "git",
- "url": "https://github.com/silexphp/Silex.git",
- "reference": "374c7e04040a6f781c90f7d746726a5daa78e783"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/silexphp/Silex/zipball/374c7e04040a6f781c90f7d746726a5daa78e783",
- "reference": "374c7e04040a6f781c90f7d746726a5daa78e783",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.9",
- "pimple/pimple": "~1.0",
- "symfony/event-dispatcher": "~2.3|3.0.*",
- "symfony/http-foundation": "~2.3|3.0.*",
- "symfony/http-kernel": "~2.3|3.0.*",
- "symfony/routing": "~2.3|3.0.*"
- },
- "require-dev": {
- "doctrine/dbal": "~2.2",
- "monolog/monolog": "^1.4.1",
- "swiftmailer/swiftmailer": "~5",
- "symfony/browser-kit": "~2.3|3.0.*",
- "symfony/config": "~2.3|3.0.*",
- "symfony/css-selector": "~2.3|3.0.*",
- "symfony/debug": "~2.3|3.0.*",
- "symfony/dom-crawler": "~2.3|3.0.*",
- "symfony/finder": "~2.3|3.0.*",
- "symfony/form": "~2.3|3.0.*",
- "symfony/locale": "~2.3|3.0.*",
- "symfony/monolog-bridge": "~2.3|3.0.*",
- "symfony/options-resolver": "~2.3|3.0.*",
- "symfony/phpunit-bridge": "~2.7",
- "symfony/process": "~2.3|3.0.*",
- "symfony/security": "~2.3|3.0.*",
- "symfony/serializer": "~2.3|3.0.*",
- "symfony/translation": "~2.3|3.0.*",
- "symfony/twig-bridge": "~2.3|3.0.*",
- "symfony/validator": "~2.3|3.0.*",
- "twig/twig": "~1.8|~2.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.3.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Silex\\": "src/Silex"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Igor Wiedler",
- "email": "igor@wiedler.ch"
- }
- ],
- "description": "The PHP micro-framework based on the Symfony Components",
- "homepage": "http://silex.sensiolabs.org/",
- "keywords": [
- "microframework"
- ],
- "time": "2016-01-06 14:59:35"
- },
- {
- "name": "symfony/css-selector",
- "version": "v3.1.7",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/css-selector.git",
- "reference": "a37b3359566415a91cba55a2d95820b3fa1a9658"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/css-selector/zipball/a37b3359566415a91cba55a2d95820b3fa1a9658",
- "reference": "a37b3359566415a91cba55a2d95820b3fa1a9658",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.1-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\CssSelector\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Jean-François Simon",
- "email": "jeanfrancois.simon@sensiolabs.com"
- },
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony CssSelector Component",
- "homepage": "https://symfony.com/",
- "time": "2016-11-03 08:04:31"
- },
- {
- "name": "symfony/debug",
- "version": "v3.1.7",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/debug.git",
- "reference": "c058661c32f5b462722e36d120905940089cbd9a"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/debug/zipball/c058661c32f5b462722e36d120905940089cbd9a",
- "reference": "c058661c32f5b462722e36d120905940089cbd9a",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9",
- "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"
- },
- "require-dev": {
- "symfony/class-loader": "~2.8|~3.0",
- "symfony/http-kernel": "~2.8|~3.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.1-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\Debug\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "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": "2016-11-15 12:55:20"
- },
- {
- "name": "symfony/event-dispatcher",
- "version": "v3.0.9",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/event-dispatcher.git",
- "reference": "54da3ff63dec3c9c0e32ec3f95a7d94ef64baa00"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/54da3ff63dec3c9c0e32ec3f95a7d94ef64baa00",
- "reference": "54da3ff63dec3c9c0e32ec3f95a7d94ef64baa00",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9"
- },
- "require-dev": {
- "psr/log": "~1.0",
- "symfony/config": "~2.8|~3.0",
- "symfony/dependency-injection": "~2.8|~3.0",
- "symfony/expression-language": "~2.8|~3.0",
- "symfony/stopwatch": "~2.8|~3.0"
- },
- "suggest": {
- "symfony/dependency-injection": "",
- "symfony/http-kernel": ""
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.0-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\EventDispatcher\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony EventDispatcher Component",
- "homepage": "https://symfony.com/",
- "time": "2016-07-19 10:44:15"
- },
- {
- "name": "symfony/http-foundation",
- "version": "v3.0.9",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/http-foundation.git",
- "reference": "49ba00f8ede742169cb6b70abe33243f4d673f82"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/http-foundation/zipball/49ba00f8ede742169cb6b70abe33243f4d673f82",
- "reference": "49ba00f8ede742169cb6b70abe33243f4d673f82",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9",
- "symfony/polyfill-mbstring": "~1.1"
- },
- "require-dev": {
- "symfony/expression-language": "~2.8|~3.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.0-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\HttpFoundation\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony HttpFoundation Component",
- "homepage": "https://symfony.com/",
- "time": "2016-07-17 13:54:30"
- },
- {
- "name": "symfony/http-kernel",
- "version": "v3.0.9",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/http-kernel.git",
- "reference": "d97ba4425e36e79c794e7d14ff36f00f081b37b3"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/http-kernel/zipball/d97ba4425e36e79c794e7d14ff36f00f081b37b3",
- "reference": "d97ba4425e36e79c794e7d14ff36f00f081b37b3",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9",
- "psr/log": "~1.0",
- "symfony/debug": "~2.8|~3.0",
- "symfony/event-dispatcher": "~2.8|~3.0",
- "symfony/http-foundation": "~2.8.8|~3.0.8|~3.1.2|~3.2"
- },
- "conflict": {
- "symfony/config": "<2.8"
- },
- "require-dev": {
- "symfony/browser-kit": "~2.8|~3.0",
- "symfony/class-loader": "~2.8|~3.0",
- "symfony/config": "~2.8|~3.0",
- "symfony/console": "~2.8|~3.0",
- "symfony/css-selector": "~2.8|~3.0",
- "symfony/dependency-injection": "~2.8|~3.0",
- "symfony/dom-crawler": "~2.8|~3.0",
- "symfony/expression-language": "~2.8|~3.0",
- "symfony/finder": "~2.8|~3.0",
- "symfony/process": "~2.8|~3.0",
- "symfony/routing": "~2.8|~3.0",
- "symfony/stopwatch": "~2.8|~3.0",
- "symfony/templating": "~2.8|~3.0",
- "symfony/translation": "~2.8|~3.0",
- "symfony/var-dumper": "~2.8|~3.0"
- },
- "suggest": {
- "symfony/browser-kit": "",
- "symfony/class-loader": "",
- "symfony/config": "",
- "symfony/console": "",
- "symfony/dependency-injection": "",
- "symfony/finder": "",
- "symfony/var-dumper": ""
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.0-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\HttpKernel\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony HttpKernel Component",
- "homepage": "https://symfony.com/",
- "time": "2016-07-30 09:10:37"
- },
- {
- "name": "symfony/polyfill-mbstring",
- "version": "v1.3.0",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/polyfill-mbstring.git",
- "reference": "e79d363049d1c2128f133a2667e4f4190904f7f4"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/e79d363049d1c2128f133a2667e4f4190904f7f4",
- "reference": "e79d363049d1c2128f133a2667e4f4190904f7f4",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "suggest": {
- "ext-mbstring": "For best performance"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.3-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": "2016-11-14 01:06:16"
- },
- {
- "name": "symfony/routing",
- "version": "v3.0.9",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/routing.git",
- "reference": "9038984bd9c05ab07280121e9e10f61a7231457b"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/routing/zipball/9038984bd9c05ab07280121e9e10f61a7231457b",
- "reference": "9038984bd9c05ab07280121e9e10f61a7231457b",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9"
- },
- "conflict": {
- "symfony/config": "<2.8"
- },
- "require-dev": {
- "doctrine/annotations": "~1.0",
- "doctrine/common": "~2.2",
- "psr/log": "~1.0",
- "symfony/config": "~2.8|~3.0",
- "symfony/expression-language": "~2.8|~3.0",
- "symfony/http-foundation": "~2.8|~3.0",
- "symfony/yaml": "~2.8|~3.0"
- },
- "suggest": {
- "doctrine/annotations": "For using the annotation loader",
- "symfony/config": "For using the all-in-one router or any loader",
- "symfony/dependency-injection": "For loading routes from a service",
- "symfony/expression-language": "For using expression matching",
- "symfony/http-foundation": "For using a Symfony Request object",
- "symfony/yaml": "For using the YAML loader"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.0-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\Routing\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony Routing Component",
- "homepage": "https://symfony.com/",
- "keywords": [
- "router",
- "routing",
- "uri",
- "url"
- ],
- "time": "2016-06-29 05:40:00"
- },
- {
- "name": "twig/twig",
- "version": "v1.28.2",
- "source": {
- "type": "git",
- "url": "https://github.com/twigphp/Twig.git",
- "reference": "b22ce0eb070e41f7cba65d78fe216de29726459c"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/twigphp/Twig/zipball/b22ce0eb070e41f7cba65d78fe216de29726459c",
- "reference": "b22ce0eb070e41f7cba65d78fe216de29726459c",
- "shasum": ""
- },
- "require": {
- "php": ">=5.2.7"
- },
- "require-dev": {
- "symfony/debug": "~2.7",
- "symfony/phpunit-bridge": "~3.2@dev"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.28-dev"
- }
- },
- "autoload": {
- "psr-0": {
- "Twig_": "lib/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com",
- "homepage": "http://fabien.potencier.org/",
- "role": "Lead Developer"
- },
- {
- "name": "Armin Ronacher",
- "email": "armin.ronacher@active-4.com",
- "role": "Project Founder"
- },
- {
- "name": "Twig Team",
- "homepage": "http://twig.sensiolabs.org/contributors",
- "role": "Contributors"
- }
- ],
- "description": "Twig, the flexible, fast, and secure template language for PHP",
- "homepage": "http://twig.sensiolabs.org/",
- "keywords": [
- "templating"
- ],
- "time": "2016-11-23 18:41:40"
- }
- ],
- "packages-dev": [
- {
- "name": "doctrine/instantiator",
- "version": "1.0.5",
- "source": {
- "type": "git",
- "url": "https://github.com/doctrine/instantiator.git",
- "reference": "8e884e78f9f0eb1329e445619e04456e64d8051d"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/doctrine/instantiator/zipball/8e884e78f9f0eb1329e445619e04456e64d8051d",
- "reference": "8e884e78f9f0eb1329e445619e04456e64d8051d",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3,<8.0-DEV"
- },
- "require-dev": {
- "athletic/athletic": "~0.1.8",
- "ext-pdo": "*",
- "ext-phar": "*",
- "phpunit/phpunit": "~4.0",
- "squizlabs/php_codesniffer": "~2.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Doctrine\\Instantiator\\": "src/Doctrine/Instantiator/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Marco Pivetta",
- "email": "ocramius@gmail.com",
- "homepage": "http://ocramius.github.com/"
- }
- ],
- "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors",
- "homepage": "https://github.com/doctrine/instantiator",
- "keywords": [
- "constructor",
- "instantiate"
- ],
- "time": "2015-06-14 21:17:01"
- },
- {
- "name": "google/cloud-tools",
- "version": "v0.6.1",
- "source": {
- "type": "git",
- "url": "https://github.com/GoogleCloudPlatform/php-tools.git",
- "reference": "6546fab38b9ac7d9563e1ada6ed1e945eb7d10ac"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/GoogleCloudPlatform/php-tools/zipball/6546fab38b9ac7d9563e1ada6ed1e945eb7d10ac",
- "reference": "6546fab38b9ac7d9563e1ada6ed1e945eb7d10ac",
- "shasum": ""
- },
- "require": {
- "guzzlehttp/guzzle": "~5.3|~6.0",
- "php": ">=5.5",
- "phpunit/phpunit": "~4|~5",
- "symfony/browser-kit": "~2|~3",
- "symfony/process": "~2|~3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.0"
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "Google\\Cloud\\TestUtils\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "Apache-2.0"
- ],
- "authors": [
- {
- "name": "Takashi Matsuo",
- "email": "tmatsuo@google.com",
- "homepage": "https://wp.gaeflex.ninja/"
- }
- ],
- "description": "PHP tools for Google Cloud Platform",
- "homepage": "https://github.com/GoogleCloudPlatform/php-tools",
- "keywords": [
- "appengine",
- "gcp",
- "test"
- ],
- "time": "2016-12-08 21:36:15"
- },
- {
- "name": "phpdocumentor/reflection-common",
- "version": "1.0",
- "source": {
- "type": "git",
- "url": "https://github.com/phpDocumentor/ReflectionCommon.git",
- "reference": "144c307535e82c8fdcaacbcfc1d6d8eeb896687c"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phpDocumentor/ReflectionCommon/zipball/144c307535e82c8fdcaacbcfc1d6d8eeb896687c",
- "reference": "144c307535e82c8fdcaacbcfc1d6d8eeb896687c",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5"
- },
- "require-dev": {
- "phpunit/phpunit": "^4.6"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "phpDocumentor\\Reflection\\": [
- "src"
- ]
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Jaap van Otterdijk",
- "email": "opensource@ijaap.nl"
- }
- ],
- "description": "Common reflection classes used by phpdocumentor to reflect the code structure",
- "homepage": "http://www.phpdoc.org/",
- "keywords": [
- "FQSEN",
- "phpDocumentor",
- "phpdoc",
- "reflection",
- "static analysis"
- ],
- "time": "2015-12-27 11:43:31"
- },
- {
- "name": "phpdocumentor/reflection-docblock",
- "version": "3.1.1",
- "source": {
- "type": "git",
- "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git",
- "reference": "8331b5efe816ae05461b7ca1e721c01b46bafb3e"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/8331b5efe816ae05461b7ca1e721c01b46bafb3e",
- "reference": "8331b5efe816ae05461b7ca1e721c01b46bafb3e",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5",
- "phpdocumentor/reflection-common": "^1.0@dev",
- "phpdocumentor/type-resolver": "^0.2.0",
- "webmozart/assert": "^1.0"
- },
- "require-dev": {
- "mockery/mockery": "^0.9.4",
- "phpunit/phpunit": "^4.4"
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "phpDocumentor\\Reflection\\": [
- "src/"
- ]
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Mike van Riel",
- "email": "me@mikevanriel.com"
- }
- ],
- "description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.",
- "time": "2016-09-30 07:12:33"
- },
- {
- "name": "phpdocumentor/type-resolver",
- "version": "0.2.1",
- "source": {
- "type": "git",
- "url": "https://github.com/phpDocumentor/TypeResolver.git",
- "reference": "e224fb2ea2fba6d3ad6fdaef91cd09a172155ccb"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/e224fb2ea2fba6d3ad6fdaef91cd09a172155ccb",
- "reference": "e224fb2ea2fba6d3ad6fdaef91cd09a172155ccb",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5",
- "phpdocumentor/reflection-common": "^1.0"
- },
- "require-dev": {
- "mockery/mockery": "^0.9.4",
- "phpunit/phpunit": "^5.2||^4.8.24"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "phpDocumentor\\Reflection\\": [
- "src/"
- ]
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Mike van Riel",
- "email": "me@mikevanriel.com"
- }
- ],
- "time": "2016-11-25 06:54:22"
- },
- {
- "name": "phpspec/prophecy",
- "version": "v1.6.2",
- "source": {
- "type": "git",
- "url": "https://github.com/phpspec/prophecy.git",
- "reference": "6c52c2722f8460122f96f86346600e1077ce22cb"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phpspec/prophecy/zipball/6c52c2722f8460122f96f86346600e1077ce22cb",
- "reference": "6c52c2722f8460122f96f86346600e1077ce22cb",
- "shasum": ""
- },
- "require": {
- "doctrine/instantiator": "^1.0.2",
- "php": "^5.3|^7.0",
- "phpdocumentor/reflection-docblock": "^2.0|^3.0.2",
- "sebastian/comparator": "^1.1",
- "sebastian/recursion-context": "^1.0|^2.0"
- },
- "require-dev": {
- "phpspec/phpspec": "^2.0",
- "phpunit/phpunit": "^4.8 || ^5.6.5"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.6.x-dev"
- }
- },
- "autoload": {
- "psr-0": {
- "Prophecy\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Konstantin Kudryashov",
- "email": "ever.zet@gmail.com",
- "homepage": "http://everzet.com/"
- },
- {
- "name": "Marcello Duarte",
- "email": "marcello.duarte@gmail.com"
- }
- ],
- "description": "Highly opinionated mocking framework for PHP 5.3+",
- "homepage": "https://github.com/phpspec/prophecy",
- "keywords": [
- "Double",
- "Dummy",
- "fake",
- "mock",
- "spy",
- "stub"
- ],
- "time": "2016-11-21 14:58:47"
- },
- {
- "name": "phpunit/php-code-coverage",
- "version": "2.2.4",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-code-coverage.git",
- "reference": "eabf68b476ac7d0f73793aada060f1c1a9bf8979"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/eabf68b476ac7d0f73793aada060f1c1a9bf8979",
- "reference": "eabf68b476ac7d0f73793aada060f1c1a9bf8979",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3",
- "phpunit/php-file-iterator": "~1.3",
- "phpunit/php-text-template": "~1.2",
- "phpunit/php-token-stream": "~1.3",
- "sebastian/environment": "^1.3.2",
- "sebastian/version": "~1.0"
- },
- "require-dev": {
- "ext-xdebug": ">=2.1.4",
- "phpunit/phpunit": "~4"
- },
- "suggest": {
- "ext-dom": "*",
- "ext-xdebug": ">=2.2.1",
- "ext-xmlwriter": "*"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.2.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sb@sebastian-bergmann.de",
- "role": "lead"
- }
- ],
- "description": "Library that provides collection, processing, and rendering functionality for PHP code coverage information.",
- "homepage": "https://github.com/sebastianbergmann/php-code-coverage",
- "keywords": [
- "coverage",
- "testing",
- "xunit"
- ],
- "time": "2015-10-06 15:47:00"
- },
- {
- "name": "phpunit/php-file-iterator",
- "version": "1.4.2",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-file-iterator.git",
- "reference": "3cc8f69b3028d0f96a9078e6295d86e9bf019be5"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/3cc8f69b3028d0f96a9078e6295d86e9bf019be5",
- "reference": "3cc8f69b3028d0f96a9078e6295d86e9bf019be5",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.4.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sb@sebastian-bergmann.de",
- "role": "lead"
- }
- ],
- "description": "FilterIterator implementation that filters files based on a list of suffixes.",
- "homepage": "https://github.com/sebastianbergmann/php-file-iterator/",
- "keywords": [
- "filesystem",
- "iterator"
- ],
- "time": "2016-10-03 07:40:28"
- },
- {
- "name": "phpunit/php-text-template",
- "version": "1.2.1",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-text-template.git",
- "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/31f8b717e51d9a2afca6c9f046f5d69fc27c8686",
- "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "type": "library",
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de",
- "role": "lead"
- }
- ],
- "description": "Simple template engine.",
- "homepage": "https://github.com/sebastianbergmann/php-text-template/",
- "keywords": [
- "template"
- ],
- "time": "2015-06-21 13:50:34"
- },
- {
- "name": "phpunit/php-timer",
- "version": "1.0.8",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-timer.git",
- "reference": "38e9124049cf1a164f1e4537caf19c99bf1eb260"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/38e9124049cf1a164f1e4537caf19c99bf1eb260",
- "reference": "38e9124049cf1a164f1e4537caf19c99bf1eb260",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4|~5"
- },
- "type": "library",
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sb@sebastian-bergmann.de",
- "role": "lead"
- }
- ],
- "description": "Utility class for timing",
- "homepage": "https://github.com/sebastianbergmann/php-timer/",
- "keywords": [
- "timer"
- ],
- "time": "2016-05-12 18:03:57"
- },
- {
- "name": "phpunit/php-token-stream",
- "version": "1.4.9",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-token-stream.git",
- "reference": "3b402f65a4cc90abf6e1104e388b896ce209631b"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/3b402f65a4cc90abf6e1104e388b896ce209631b",
- "reference": "3b402f65a4cc90abf6e1104e388b896ce209631b",
- "shasum": ""
- },
- "require": {
- "ext-tokenizer": "*",
- "php": ">=5.3.3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.2"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.4-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Wrapper around PHP's tokenizer extension.",
- "homepage": "https://github.com/sebastianbergmann/php-token-stream/",
- "keywords": [
- "tokenizer"
- ],
- "time": "2016-11-15 14:06:22"
- },
- {
- "name": "phpunit/phpunit",
- "version": "4.8.29",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/phpunit.git",
- "reference": "f19d481b468b76a7fb55eb2b772ed487e484891e"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/f19d481b468b76a7fb55eb2b772ed487e484891e",
- "reference": "f19d481b468b76a7fb55eb2b772ed487e484891e",
- "shasum": ""
- },
- "require": {
- "ext-dom": "*",
- "ext-json": "*",
- "ext-pcre": "*",
- "ext-reflection": "*",
- "ext-spl": "*",
- "php": ">=5.3.3",
- "phpspec/prophecy": "^1.3.1",
- "phpunit/php-code-coverage": "~2.1",
- "phpunit/php-file-iterator": "~1.4",
- "phpunit/php-text-template": "~1.2",
- "phpunit/php-timer": "^1.0.6",
- "phpunit/phpunit-mock-objects": "~2.3",
- "sebastian/comparator": "~1.2.2",
- "sebastian/diff": "~1.2",
- "sebastian/environment": "~1.3",
- "sebastian/exporter": "~1.2",
- "sebastian/global-state": "~1.0",
- "sebastian/version": "~1.0",
- "symfony/yaml": "~2.1|~3.0"
- },
- "suggest": {
- "phpunit/php-invoker": "~1.1"
- },
- "bin": [
- "phpunit"
- ],
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "4.8.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de",
- "role": "lead"
- }
- ],
- "description": "The PHP Unit Testing framework.",
- "homepage": "https://phpunit.de/",
- "keywords": [
- "phpunit",
- "testing",
- "xunit"
- ],
- "time": "2016-11-20 10:35:28"
- },
- {
- "name": "phpunit/phpunit-mock-objects",
- "version": "2.3.8",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/phpunit-mock-objects.git",
- "reference": "ac8e7a3db35738d56ee9a76e78a4e03d97628983"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/phpunit-mock-objects/zipball/ac8e7a3db35738d56ee9a76e78a4e03d97628983",
- "reference": "ac8e7a3db35738d56ee9a76e78a4e03d97628983",
- "shasum": ""
- },
- "require": {
- "doctrine/instantiator": "^1.0.2",
- "php": ">=5.3.3",
- "phpunit/php-text-template": "~1.2",
- "sebastian/exporter": "~1.2"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.4"
- },
- "suggest": {
- "ext-soap": "*"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.3.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sb@sebastian-bergmann.de",
- "role": "lead"
- }
- ],
- "description": "Mock Object library for PHPUnit",
- "homepage": "https://github.com/sebastianbergmann/phpunit-mock-objects/",
- "keywords": [
- "mock",
- "xunit"
- ],
- "time": "2015-10-02 06:51:40"
- },
- {
- "name": "sebastian/comparator",
- "version": "1.2.2",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/comparator.git",
- "reference": "6a1ed12e8b2409076ab22e3897126211ff8b1f7f"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/6a1ed12e8b2409076ab22e3897126211ff8b1f7f",
- "reference": "6a1ed12e8b2409076ab22e3897126211ff8b1f7f",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3",
- "sebastian/diff": "~1.2",
- "sebastian/exporter": "~1.2 || ~2.0"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.4"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.2.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Jeff Welch",
- "email": "whatthejeff@gmail.com"
- },
- {
- "name": "Volker Dusch",
- "email": "github@wallbash.com"
- },
- {
- "name": "Bernhard Schussek",
- "email": "bschussek@2bepublished.at"
- },
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Provides the functionality to compare PHP values for equality",
- "homepage": "http://www.github.com/sebastianbergmann/comparator",
- "keywords": [
- "comparator",
- "compare",
- "equality"
- ],
- "time": "2016-11-19 09:18:40"
- },
- {
- "name": "sebastian/diff",
- "version": "1.4.1",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/diff.git",
- "reference": "13edfd8706462032c2f52b4b862974dd46b71c9e"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/13edfd8706462032c2f52b4b862974dd46b71c9e",
- "reference": "13edfd8706462032c2f52b4b862974dd46b71c9e",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.8"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.4-dev"
- }
- },
- "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"
- }
- ],
- "description": "Diff implementation",
- "homepage": "https://github.com/sebastianbergmann/diff",
- "keywords": [
- "diff"
- ],
- "time": "2015-12-08 07:14:41"
- },
- {
- "name": "sebastian/environment",
- "version": "1.3.8",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/environment.git",
- "reference": "be2c607e43ce4c89ecd60e75c6a85c126e754aea"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/be2c607e43ce4c89ecd60e75c6a85c126e754aea",
- "reference": "be2c607e43ce4c89ecd60e75c6a85c126e754aea",
- "shasum": ""
- },
- "require": {
- "php": "^5.3.3 || ^7.0"
- },
- "require-dev": {
- "phpunit/phpunit": "^4.8 || ^5.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.3.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Provides functionality to handle HHVM/PHP environments",
- "homepage": "http://www.github.com/sebastianbergmann/environment",
- "keywords": [
- "Xdebug",
- "environment",
- "hhvm"
- ],
- "time": "2016-08-18 05:49:44"
- },
- {
- "name": "sebastian/exporter",
- "version": "1.2.2",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/exporter.git",
- "reference": "42c4c2eec485ee3e159ec9884f95b431287edde4"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/42c4c2eec485ee3e159ec9884f95b431287edde4",
- "reference": "42c4c2eec485ee3e159ec9884f95b431287edde4",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3",
- "sebastian/recursion-context": "~1.0"
- },
- "require-dev": {
- "ext-mbstring": "*",
- "phpunit/phpunit": "~4.4"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.3.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Jeff Welch",
- "email": "whatthejeff@gmail.com"
- },
- {
- "name": "Volker Dusch",
- "email": "github@wallbash.com"
- },
- {
- "name": "Bernhard Schussek",
- "email": "bschussek@2bepublished.at"
- },
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- },
- {
- "name": "Adam Harvey",
- "email": "aharvey@php.net"
- }
- ],
- "description": "Provides the functionality to export PHP variables for visualization",
- "homepage": "http://www.github.com/sebastianbergmann/exporter",
- "keywords": [
- "export",
- "exporter"
- ],
- "time": "2016-06-17 09:04:28"
- },
- {
- "name": "sebastian/global-state",
- "version": "1.1.1",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/global-state.git",
- "reference": "bc37d50fea7d017d3d340f230811c9f1d7280af4"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/bc37d50fea7d017d3d340f230811c9f1d7280af4",
- "reference": "bc37d50fea7d017d3d340f230811c9f1d7280af4",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.2"
- },
- "suggest": {
- "ext-uopz": "*"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Snapshotting of global state",
- "homepage": "http://www.github.com/sebastianbergmann/global-state",
- "keywords": [
- "global state"
- ],
- "time": "2015-10-12 03:26:01"
- },
- {
- "name": "sebastian/recursion-context",
- "version": "1.0.2",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/recursion-context.git",
- "reference": "913401df809e99e4f47b27cdd781f4a258d58791"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/913401df809e99e4f47b27cdd781f4a258d58791",
- "reference": "913401df809e99e4f47b27cdd781f4a258d58791",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.4"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Jeff Welch",
- "email": "whatthejeff@gmail.com"
- },
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- },
- {
- "name": "Adam Harvey",
- "email": "aharvey@php.net"
- }
- ],
- "description": "Provides functionality to recursively process PHP variables",
- "homepage": "http://www.github.com/sebastianbergmann/recursion-context",
- "time": "2015-11-11 19:50:13"
- },
- {
- "name": "sebastian/version",
- "version": "1.0.6",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/version.git",
- "reference": "58b3a85e7999757d6ad81c787a1fbf5ff6c628c6"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/58b3a85e7999757d6ad81c787a1fbf5ff6c628c6",
- "reference": "58b3a85e7999757d6ad81c787a1fbf5ff6c628c6",
- "shasum": ""
- },
- "type": "library",
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de",
- "role": "lead"
- }
- ],
- "description": "Library that helps with managing the version number of Git-hosted PHP projects",
- "homepage": "https://github.com/sebastianbergmann/version",
- "time": "2015-06-21 13:59:46"
- },
- {
- "name": "symfony/browser-kit",
- "version": "v3.1.7",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/browser-kit.git",
- "reference": "901319a31c9b3cee7857b4aeeb81b5d64dfa34fc"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/browser-kit/zipball/901319a31c9b3cee7857b4aeeb81b5d64dfa34fc",
- "reference": "901319a31c9b3cee7857b4aeeb81b5d64dfa34fc",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9",
- "symfony/dom-crawler": "~2.8|~3.0"
- },
- "require-dev": {
- "symfony/css-selector": "~2.8|~3.0",
- "symfony/process": "~2.8|~3.0"
- },
- "suggest": {
- "symfony/process": ""
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.1-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\BrowserKit\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony BrowserKit Component",
- "homepage": "https://symfony.com/",
- "time": "2016-09-06 11:02:40"
- },
- {
- "name": "symfony/dom-crawler",
- "version": "v3.1.7",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/dom-crawler.git",
- "reference": "1eb3b4d216e8db117218dd2bb7d23dfe67bdf518"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/1eb3b4d216e8db117218dd2bb7d23dfe67bdf518",
- "reference": "1eb3b4d216e8db117218dd2bb7d23dfe67bdf518",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9",
- "symfony/polyfill-mbstring": "~1.0"
- },
- "require-dev": {
- "symfony/css-selector": "~2.8|~3.0"
- },
- "suggest": {
- "symfony/css-selector": ""
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.1-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\DomCrawler\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony DomCrawler Component",
- "homepage": "https://symfony.com/",
- "time": "2016-11-14 16:20:02"
- },
- {
- "name": "symfony/process",
- "version": "v3.1.7",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/process.git",
- "reference": "66de154ae86b1a07001da9fbffd620206e4faf94"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/process/zipball/66de154ae86b1a07001da9fbffd620206e4faf94",
- "reference": "66de154ae86b1a07001da9fbffd620206e4faf94",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.1-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\Process\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony Process Component",
- "homepage": "https://symfony.com/",
- "time": "2016-09-29 14:13:09"
- },
- {
- "name": "symfony/yaml",
- "version": "v3.1.7",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/yaml.git",
- "reference": "9da375317228e54f4ea1b013b30fa47417e84943"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/yaml/zipball/9da375317228e54f4ea1b013b30fa47417e84943",
- "reference": "9da375317228e54f4ea1b013b30fa47417e84943",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.1-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\Yaml\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony Yaml Component",
- "homepage": "https://symfony.com/",
- "time": "2016-11-18 21:05:29"
- },
- {
- "name": "webmozart/assert",
- "version": "1.2.0",
- "source": {
- "type": "git",
- "url": "https://github.com/webmozart/assert.git",
- "reference": "2db61e59ff05fe5126d152bd0655c9ea113e550f"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/webmozart/assert/zipball/2db61e59ff05fe5126d152bd0655c9ea113e550f",
- "reference": "2db61e59ff05fe5126d152bd0655c9ea113e550f",
- "shasum": ""
- },
- "require": {
- "php": "^5.3.3 || ^7.0"
- },
- "require-dev": {
- "phpunit/phpunit": "^4.6",
- "sebastian/version": "^1.0.1"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.3-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Webmozart\\Assert\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Bernhard Schussek",
- "email": "bschussek@gmail.com"
- }
- ],
- "description": "Assertions to validate method input/output with nice error messages.",
- "keywords": [
- "assert",
- "check",
- "validate"
- ],
- "time": "2016-11-23 20:04:58"
- }
- ],
- "aliases": [],
- "minimum-stability": "stable",
- "stability-flags": [],
- "prefer-stable": false,
- "prefer-lowest": false,
- "platform": [],
- "platform-dev": []
-}
diff --git a/appengine/flexible/analytics/index.php b/appengine/flexible/analytics/index.php
index 90a6c46e9b..3fc7a490f3 100644
--- a/appengine/flexible/analytics/index.php
+++ b/appengine/flexible/analytics/index.php
@@ -23,6 +23,4 @@
// Run the app!
// use "gcloud app deploy"
-$app['debug'] = true;
-$app['GA_TRACKING_ID'] = getenv('GA_TRACKING_ID');
$app->run();
diff --git a/appengine/flexible/analytics/phpunit.xml b/appengine/flexible/analytics/phpunit.xml
deleted file mode 100644
index 3f69c724d7..0000000000
--- a/appengine/flexible/analytics/phpunit.xml
+++ /dev/null
@@ -1,19 +0,0 @@
-
-
-
-
-
-
-
- tests
-
-
-
-
-
-
-
- app.php
-
-
-
diff --git a/appengine/flexible/analytics/phpunit.xml.dist b/appengine/flexible/analytics/phpunit.xml.dist
new file mode 100644
index 0000000000..86b5ca017a
--- /dev/null
+++ b/appengine/flexible/analytics/phpunit.xml.dist
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
+
+ test
+ test/DeployTest.php
+
+
+
+
+
+
+
+ app.php
+
+ ./vendor
+
+
+
+
diff --git a/appengine/flexible/analytics/test/DeployTest.php b/appengine/flexible/analytics/test/DeployTest.php
new file mode 100644
index 0000000000..25d27cee63
--- /dev/null
+++ b/appengine/flexible/analytics/test/DeployTest.php
@@ -0,0 +1,35 @@
+client->get('/');
+ $this->assertEquals('200', $resp->getStatusCode(),
+ 'top page status code');
+ $this->assertStringContainsString('returned 200', (string) $resp->getBody(),
+ 'top page content');
+ }
+}
diff --git a/appengine/flexible/analytics/test/LocalTest.php b/appengine/flexible/analytics/test/LocalTest.php
new file mode 100644
index 0000000000..26915b8924
--- /dev/null
+++ b/appengine/flexible/analytics/test/LocalTest.php
@@ -0,0 +1,40 @@
+requireEnv('GA_TRACKING_ID');
+
+ $app = require __DIR__ . '/../app.php';
+
+ // Access the modules app top page.
+ $request = (new RequestFactory)->createRequest('GET', '/');
+ $response = $app->handle($request);
+ $this->assertEquals(200, $response->getStatusCode());
+ $body = (string) $response->getBody();
+ $this->assertStringContainsString('returned 200', $body);
+ }
+}
diff --git a/appengine/flexible/analytics/tests/DeployTest.php b/appengine/flexible/analytics/tests/DeployTest.php
deleted file mode 100644
index e48c4b4322..0000000000
--- a/appengine/flexible/analytics/tests/DeployTest.php
+++ /dev/null
@@ -1,34 +0,0 @@
-client->get('/');
- $this->assertEquals('200', $resp->getStatusCode(),
- 'top page status code');
- $this->assertContains('returned 200', (string) $resp->getBody(),
- 'top page content');
- }
-}
diff --git a/appengine/flexible/analytics/tests/LocalTest.php b/appengine/flexible/analytics/tests/LocalTest.php
deleted file mode 100644
index 739b769ebf..0000000000
--- a/appengine/flexible/analytics/tests/LocalTest.php
+++ /dev/null
@@ -1,45 +0,0 @@
-client = $this->createClient();
- }
-
- public function createApplication()
- {
- $app = require __DIR__ . '/../app.php';
- $app['GA_TRACKING_ID'] = getenv('GA_TRACKING_ID');
- return $app;
- }
-
- public function testIndex()
- {
- // Access the modules app top page.
- $client = $this->client;
- $crawler = $client->request('GET', '/');
- $this->assertTrue($client->getResponse()->isOk());
- $this->assertEquals(1, $crawler->filter(
- 'html:contains("returned 200")')->count());
- }
-}
diff --git a/appengine/flexible/analytics/tests/bootstrap.php b/appengine/flexible/analytics/tests/bootstrap.php
deleted file mode 100644
index 855a955f73..0000000000
--- a/appengine/flexible/analytics/tests/bootstrap.php
+++ /dev/null
@@ -1,17 +0,0 @@
- Note: the `--tier` option is required to create a `Second Generation` instance. See the
- full list of available tiers by running `gcloud sql tiers list`
-
-2. Set the root password on your Cloud SQL instance:
-
- $ gcloud sql instances set-root-password YOUR_INSTANCE_NAME --password YOUR_INSTANCE_ROOT_PASSWORD
-
-3. Install and run the [CloudSQL Proxy](https://cloud.google.com/sql/docs/mysql-connect-proxy)
-
-4. Create a database for this example
-
- $ mysql -h 127.0.0.1 -u root -p -e "CREATE DATABASE ;"
-
-
-## Deploy to App Engine
-
-**Prerequisites**
-
-- Install the [Google Cloud SDK](https://developers.google.com/cloud/sdk/).
-
-**Deploy with gcloud**
-
-1. Update `app.yaml` with the configuration values for `USER`, `PASSWORD`, and
- `DATABASE` with the values you used during setup.
-
-1. Get the CloudSQL connection name
-
- $ gcloud beta sql instances describe YOUR_INSTANCE_NAME | grep connectionName
-
-1. Update `app.yaml` with the configuration value for `CONNECTION_NAME` you retrieved
- at the end up setup.
-
-```
-gcloud config set project YOUR_PROJECT_ID
-gcloud app deploy
-gcloud app browse
-```
-
-The last command will open `https://{YOUR_PROJECT_ID}.appspot.com/`
-in your browser.
-
-## Run locally
-
-1. Ensure the [CloudSQL Proxy](https://cloud.google.com/sql/docs/external#proxy) is
- installed and running.
-
-1. Set the following environment variables with the configuration values for
- `USER`, `PASSWORD`, and `DATABASE` you used during setup:
-
- ```sh
- # set local mysql connection parameters
- export MYSQL_DSN="mysql:host=127.0.0.1;port=3306;dbname=DATABASE"
- export MYSQL_USERNAME=USER
- export MYSQL_PASSWORD=PASSWORD
- ```
-
-1. Run the application
-
- ```sh
- cd php-docs-samples/appengine/standard/cloudsql
- php -S localhost:8080
- ```
-
-Now you can view the app running at [http://localhost:8080](http://localhost:8080)
-in your browser.
diff --git a/appengine/flexible/cloudsql/app.php b/appengine/flexible/cloudsql/app.php
deleted file mode 100644
index 53ebcd352f..0000000000
--- a/appengine/flexible/cloudsql/app.php
+++ /dev/null
@@ -1,72 +0,0 @@
-setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
- $pdo->query('CREATE TABLE IF NOT EXISTS visits ' .
- '(time_stamp TIMESTAMP DEFAULT CURRENT_TIMESTAMP, user_ip CHAR(64))');
- return $pdo;
-};
-
-$app->get('/', function (Application $app, Request $request) {
- $ip = $request->GetClientIp();
- // Keep only the first two octets of the IP address.
- $octets = explode($separator = ':', $ip);
- if (count($octets) < 2) { // Must be ip4 address
- $octets = explode($separator = '.', $ip);
- }
- if (count($octets) < 2) {
- $octets = ['bad', 'ip']; // IP address will be recorded as bad.ip.
- }
- // Replace empty chunks with zeros.
- $octets = array_map(function ($x) {
- return $x == '' ? '0' : $x;
- }, $octets);
- $user_ip = $octets[0] . $separator . $octets[1];
-
- // Insert a visit into the database.
- /** @var PDO $pdo */
- $pdo = $app['pdo'];
- $insert = $pdo->prepare('INSERT INTO visits (user_ip) values (:user_ip)');
- $insert->execute(['user_ip' => $user_ip]);
-
- // Look up the last 10 visits
- $select = $pdo->prepare(
- 'SELECT * FROM visits ORDER BY time_stamp DESC LIMIT 10');
- $select->execute();
- $visits = ["Last 10 visits:"];
- while ($row = $select->fetch(PDO::FETCH_ASSOC)) {
- array_push($visits, sprintf('Time: %s Addr: %s', $row['time_stamp'],
- $row['user_ip']));
- }
- return new Response(implode("\n", $visits), 200,
- ['Content-Type' => 'text/plain']);
-});
-
-return $app;
diff --git a/appengine/flexible/cloudsql/app.yaml b/appengine/flexible/cloudsql/app.yaml
deleted file mode 100644
index e5d5091391..0000000000
--- a/appengine/flexible/cloudsql/app.yaml
+++ /dev/null
@@ -1,17 +0,0 @@
-runtime: php
-env: flex
-
-#[START env]
-env_variables:
- # Replace USER, PASSWORD, DATABASE, and CONNECTION_NAME with the
- # values obtained when configuring your Cloud SQL instance.
- MYSQL_DSN: mysql:dbname=DATABASE;unix_socket=/cloudsql/CONNECTION_NAME
- MYSQL_USER: USER
- MYSQL_PASSWORD: PASSWORD
-#[END env]
-
-#[START cloudsql_settings]
-# Use the connection name obtained when configuring your Cloud SQL instance.
-beta_settings:
- cloud_sql_instances: "CONNECTION_NAME"
-#[END cloudsql_settings]
\ No newline at end of file
diff --git a/appengine/flexible/cloudsql/composer.json b/appengine/flexible/cloudsql/composer.json
deleted file mode 100644
index 2cf6c2078e..0000000000
--- a/appengine/flexible/cloudsql/composer.json
+++ /dev/null
@@ -1,11 +0,0 @@
-{
- "require": {
- "silex/silex": "^1.3",
- "google/apiclient": "^2.0"
- },
- "require-dev": {
- "google/cloud-tools": "^0.6",
- "paragonie/random_compat": "^2.0",
- "phpunit/phpunit": "~4"
- }
-}
diff --git a/appengine/flexible/cloudsql/composer.lock b/appengine/flexible/cloudsql/composer.lock
deleted file mode 100644
index abe4d035ed..0000000000
--- a/appengine/flexible/cloudsql/composer.lock
+++ /dev/null
@@ -1,2562 +0,0 @@
-{
- "_readme": [
- "This file locks the dependencies of your project to a known state",
- "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file",
- "This file is @generated automatically"
- ],
- "hash": "0ac0ed7bb58281830d1880ecc4cc6648",
- "content-hash": "78003ee6832b8704a81fb9c2cbff7d68",
- "packages": [
- {
- "name": "firebase/php-jwt",
- "version": "v4.0.0",
- "source": {
- "type": "git",
- "url": "https://github.com/firebase/php-jwt.git",
- "reference": "dccf163dc8ed7ed6a00afc06c51ee5186a428d35"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/firebase/php-jwt/zipball/dccf163dc8ed7ed6a00afc06c51ee5186a428d35",
- "reference": "dccf163dc8ed7ed6a00afc06c51ee5186a428d35",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.0"
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "Firebase\\JWT\\": "src"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Neuman Vong",
- "email": "neuman+pear@twilio.com",
- "role": "Developer"
- },
- {
- "name": "Anant Narayanan",
- "email": "anant@php.net",
- "role": "Developer"
- }
- ],
- "description": "A simple library to encode and decode JSON Web Tokens (JWT) in PHP. Should conform to the current spec.",
- "homepage": "https://github.com/firebase/php-jwt",
- "time": "2016-07-18 04:51:16"
- },
- {
- "name": "google/apiclient",
- "version": "v2.1.0",
- "source": {
- "type": "git",
- "url": "https://github.com/google/google-api-php-client.git",
- "reference": "f4a8ef0642cdbea0a07f6966158337bab846d4de"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/google/google-api-php-client/zipball/f4a8ef0642cdbea0a07f6966158337bab846d4de",
- "reference": "f4a8ef0642cdbea0a07f6966158337bab846d4de",
- "shasum": ""
- },
- "require": {
- "firebase/php-jwt": "~2.0|~3.0|~4.0",
- "google/apiclient-services": "^0.8",
- "google/auth": "^0.11",
- "guzzlehttp/guzzle": "~5.2|~6.0",
- "guzzlehttp/psr7": "^1.2",
- "monolog/monolog": "^1.17",
- "php": ">=5.4",
- "phpseclib/phpseclib": "~2.0"
- },
- "require-dev": {
- "cache/filesystem-adapter": "^0.3.2",
- "phpunit/phpunit": "~4",
- "squizlabs/php_codesniffer": "~2.3",
- "symfony/css-selector": "~2.1",
- "symfony/dom-crawler": "~2.1"
- },
- "suggest": {
- "cache/filesystem-adapter": "For caching certs and tokens (using Google_Client::setCache)"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.x-dev"
- }
- },
- "autoload": {
- "psr-0": {
- "Google_": "src/"
- },
- "classmap": [
- "src/Google/Service/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "Apache-2.0"
- ],
- "description": "Client library for Google APIs",
- "homepage": "http://developers.google.com/api-client-library/php",
- "keywords": [
- "google"
- ],
- "time": "2016-11-02 14:28:02"
- },
- {
- "name": "google/apiclient-services",
- "version": "v0.8",
- "source": {
- "type": "git",
- "url": "https://github.com/google/google-api-php-client-services.git",
- "reference": "26bcd71cb4fcf78020ec24052ddfb28550e01bc8"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/google/google-api-php-client-services/zipball/26bcd71cb4fcf78020ec24052ddfb28550e01bc8",
- "reference": "26bcd71cb4fcf78020ec24052ddfb28550e01bc8",
- "shasum": ""
- },
- "require": {
- "php": ">=5.4"
- },
- "type": "library",
- "autoload": {
- "psr-0": {
- "Google_Service_": "src"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "Apache-2.0"
- ],
- "description": "Client library for Google APIs",
- "homepage": "http://developers.google.com/api-client-library/php",
- "keywords": [
- "google"
- ],
- "time": "2016-10-18 01:01:16"
- },
- {
- "name": "google/auth",
- "version": "v0.11.1",
- "source": {
- "type": "git",
- "url": "https://github.com/google/google-auth-library-php.git",
- "reference": "a240674b08a09949fd5597f7590b3ed83663a12d"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/google/google-auth-library-php/zipball/a240674b08a09949fd5597f7590b3ed83663a12d",
- "reference": "a240674b08a09949fd5597f7590b3ed83663a12d",
- "shasum": ""
- },
- "require": {
- "firebase/php-jwt": "~2.0|~3.0|~4.0",
- "guzzlehttp/guzzle": "~5.3|~6.0",
- "guzzlehttp/psr7": "~1.2",
- "php": ">=5.4",
- "psr/cache": "^1.0",
- "psr/http-message": "^1.0"
- },
- "require-dev": {
- "friendsofphp/php-cs-fixer": "^1.11",
- "phpunit/phpunit": "3.7.*"
- },
- "type": "library",
- "autoload": {
- "classmap": [
- "src/"
- ],
- "psr-4": {
- "Google\\Auth\\": "src"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "Apache-2.0"
- ],
- "description": "Google Auth Library for PHP",
- "homepage": "http://github.com/google/google-auth-library-php",
- "keywords": [
- "Authentication",
- "google",
- "oauth2"
- ],
- "time": "2016-11-02 14:59:14"
- },
- {
- "name": "guzzlehttp/guzzle",
- "version": "6.2.2",
- "source": {
- "type": "git",
- "url": "https://github.com/guzzle/guzzle.git",
- "reference": "ebf29dee597f02f09f4d5bbecc68230ea9b08f60"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/guzzle/guzzle/zipball/ebf29dee597f02f09f4d5bbecc68230ea9b08f60",
- "reference": "ebf29dee597f02f09f4d5bbecc68230ea9b08f60",
- "shasum": ""
- },
- "require": {
- "guzzlehttp/promises": "^1.0",
- "guzzlehttp/psr7": "^1.3.1",
- "php": ">=5.5"
- },
- "require-dev": {
- "ext-curl": "*",
- "phpunit/phpunit": "^4.0",
- "psr/log": "^1.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "6.2-dev"
- }
- },
- "autoload": {
- "files": [
- "src/functions_include.php"
- ],
- "psr-4": {
- "GuzzleHttp\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Michael Dowling",
- "email": "mtdowling@gmail.com",
- "homepage": "https://github.com/mtdowling"
- }
- ],
- "description": "Guzzle is a PHP HTTP client library",
- "homepage": "http://guzzlephp.org/",
- "keywords": [
- "client",
- "curl",
- "framework",
- "http",
- "http client",
- "rest",
- "web service"
- ],
- "time": "2016-10-08 15:01:37"
- },
- {
- "name": "guzzlehttp/promises",
- "version": "1.3.0",
- "source": {
- "type": "git",
- "url": "https://github.com/guzzle/promises.git",
- "reference": "2693c101803ca78b27972d84081d027fca790a1e"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/guzzle/promises/zipball/2693c101803ca78b27972d84081d027fca790a1e",
- "reference": "2693c101803ca78b27972d84081d027fca790a1e",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.0"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "GuzzleHttp\\Promise\\": "src/"
- },
- "files": [
- "src/functions_include.php"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Michael Dowling",
- "email": "mtdowling@gmail.com",
- "homepage": "https://github.com/mtdowling"
- }
- ],
- "description": "Guzzle promises library",
- "keywords": [
- "promise"
- ],
- "time": "2016-11-18 17:47:58"
- },
- {
- "name": "guzzlehttp/psr7",
- "version": "1.3.1",
- "source": {
- "type": "git",
- "url": "https://github.com/guzzle/psr7.git",
- "reference": "5c6447c9df362e8f8093bda8f5d8873fe5c7f65b"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/guzzle/psr7/zipball/5c6447c9df362e8f8093bda8f5d8873fe5c7f65b",
- "reference": "5c6447c9df362e8f8093bda8f5d8873fe5c7f65b",
- "shasum": ""
- },
- "require": {
- "php": ">=5.4.0",
- "psr/http-message": "~1.0"
- },
- "provide": {
- "psr/http-message-implementation": "1.0"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.4-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "GuzzleHttp\\Psr7\\": "src/"
- },
- "files": [
- "src/functions_include.php"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Michael Dowling",
- "email": "mtdowling@gmail.com",
- "homepage": "https://github.com/mtdowling"
- }
- ],
- "description": "PSR-7 message implementation",
- "keywords": [
- "http",
- "message",
- "stream",
- "uri"
- ],
- "time": "2016-06-24 23:00:38"
- },
- {
- "name": "monolog/monolog",
- "version": "1.22.0",
- "source": {
- "type": "git",
- "url": "https://github.com/Seldaek/monolog.git",
- "reference": "bad29cb8d18ab0315e6c477751418a82c850d558"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/Seldaek/monolog/zipball/bad29cb8d18ab0315e6c477751418a82c850d558",
- "reference": "bad29cb8d18ab0315e6c477751418a82c850d558",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.0",
- "psr/log": "~1.0"
- },
- "provide": {
- "psr/log-implementation": "1.0.0"
- },
- "require-dev": {
- "aws/aws-sdk-php": "^2.4.9 || ^3.0",
- "doctrine/couchdb": "~1.0@dev",
- "graylog2/gelf-php": "~1.0",
- "jakub-onderka/php-parallel-lint": "0.9",
- "php-amqplib/php-amqplib": "~2.4",
- "php-console/php-console": "^3.1.3",
- "phpunit/phpunit": "~4.5",
- "phpunit/phpunit-mock-objects": "2.3.0",
- "ruflin/elastica": ">=0.90 <3.0",
- "sentry/sentry": "^0.13",
- "swiftmailer/swiftmailer": "~5.3"
- },
- "suggest": {
- "aws/aws-sdk-php": "Allow sending log messages to AWS services like DynamoDB",
- "doctrine/couchdb": "Allow sending log messages to a CouchDB server",
- "ext-amqp": "Allow sending log messages to an AMQP server (1.0+ required)",
- "ext-mongo": "Allow sending log messages to a MongoDB server",
- "graylog2/gelf-php": "Allow sending log messages to a GrayLog2 server",
- "mongodb/mongodb": "Allow sending log messages to a MongoDB server via PHP Driver",
- "php-amqplib/php-amqplib": "Allow sending log messages to an AMQP server using php-amqplib",
- "php-console/php-console": "Allow sending log messages to Google Chrome",
- "rollbar/rollbar": "Allow sending log messages to Rollbar",
- "ruflin/elastica": "Allow sending log messages to an Elastic Search server",
- "sentry/sentry": "Allow sending log messages to a Sentry server"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.0.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Monolog\\": "src/Monolog"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Jordi Boggiano",
- "email": "j.boggiano@seld.be",
- "homepage": "http://seld.be/"
- }
- ],
- "description": "Sends your logs to files, sockets, inboxes, databases and various web services",
- "homepage": "http://github.com/Seldaek/monolog",
- "keywords": [
- "log",
- "logging",
- "psr-3"
- ],
- "time": "2016-11-26 00:15:39"
- },
- {
- "name": "phpseclib/phpseclib",
- "version": "2.0.4",
- "source": {
- "type": "git",
- "url": "https://github.com/phpseclib/phpseclib.git",
- "reference": "ab8028c93c03cc8d9c824efa75dc94f1db2369bf"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phpseclib/phpseclib/zipball/ab8028c93c03cc8d9c824efa75dc94f1db2369bf",
- "reference": "ab8028c93c03cc8d9c824efa75dc94f1db2369bf",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "require-dev": {
- "phing/phing": "~2.7",
- "phpunit/phpunit": "~4.0",
- "sami/sami": "~2.0",
- "squizlabs/php_codesniffer": "~2.0"
- },
- "suggest": {
- "ext-gmp": "Install the GMP (GNU Multiple Precision) extension in order to speed up arbitrary precision integer arithmetic operations.",
- "ext-libsodium": "SSH2/SFTP can make use of some algorithms provided by the libsodium-php extension.",
- "ext-mcrypt": "Install the Mcrypt extension in order to speed up a few other cryptographic operations.",
- "ext-openssl": "Install the OpenSSL extension in order to speed up a wide variety of cryptographic operations."
- },
- "type": "library",
- "autoload": {
- "files": [
- "phpseclib/bootstrap.php"
- ],
- "psr-4": {
- "phpseclib\\": "phpseclib/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Jim Wigginton",
- "email": "terrafrost@php.net",
- "role": "Lead Developer"
- },
- {
- "name": "Patrick Monnerat",
- "email": "pm@datasphere.ch",
- "role": "Developer"
- },
- {
- "name": "Andreas Fischer",
- "email": "bantu@phpbb.com",
- "role": "Developer"
- },
- {
- "name": "Hans-Jürgen Petrich",
- "email": "petrich@tronic-media.com",
- "role": "Developer"
- },
- {
- "name": "Graham Campbell",
- "email": "graham@alt-three.com",
- "role": "Developer"
- }
- ],
- "description": "PHP Secure Communications Library - Pure-PHP implementations of RSA, AES, SSH2, SFTP, X.509 etc.",
- "homepage": "http://phpseclib.sourceforge.net/",
- "keywords": [
- "BigInteger",
- "aes",
- "asn.1",
- "asn1",
- "blowfish",
- "crypto",
- "cryptography",
- "encryption",
- "rsa",
- "security",
- "sftp",
- "signature",
- "signing",
- "ssh",
- "twofish",
- "x.509",
- "x509"
- ],
- "time": "2016-10-04 00:57:04"
- },
- {
- "name": "pimple/pimple",
- "version": "v1.1.1",
- "source": {
- "type": "git",
- "url": "https://github.com/silexphp/Pimple.git",
- "reference": "2019c145fe393923f3441b23f29bbdfaa5c58c4d"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/silexphp/Pimple/zipball/2019c145fe393923f3441b23f29bbdfaa5c58c4d",
- "reference": "2019c145fe393923f3441b23f29bbdfaa5c58c4d",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.1.x-dev"
- }
- },
- "autoload": {
- "psr-0": {
- "Pimple": "lib/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- }
- ],
- "description": "Pimple is a simple Dependency Injection Container for PHP 5.3",
- "homepage": "http://pimple.sensiolabs.org/",
- "keywords": [
- "container",
- "dependency injection"
- ],
- "time": "2013-11-22 08:30:29"
- },
- {
- "name": "psr/cache",
- "version": "1.0.1",
- "source": {
- "type": "git",
- "url": "https://github.com/php-fig/cache.git",
- "reference": "d11b50ad223250cf17b86e38383413f5a6764bf8"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/php-fig/cache/zipball/d11b50ad223250cf17b86e38383413f5a6764bf8",
- "reference": "d11b50ad223250cf17b86e38383413f5a6764bf8",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Psr\\Cache\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "PHP-FIG",
- "homepage": "http://www.php-fig.org/"
- }
- ],
- "description": "Common interface for caching libraries",
- "keywords": [
- "cache",
- "psr",
- "psr-6"
- ],
- "time": "2016-08-06 20:24:11"
- },
- {
- "name": "psr/http-message",
- "version": "1.0.1",
- "source": {
- "type": "git",
- "url": "https://github.com/php-fig/http-message.git",
- "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/php-fig/http-message/zipball/f6561bf28d520154e4b0ec72be95418abe6d9363",
- "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Psr\\Http\\Message\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "PHP-FIG",
- "homepage": "http://www.php-fig.org/"
- }
- ],
- "description": "Common interface for HTTP messages",
- "homepage": "https://github.com/php-fig/http-message",
- "keywords": [
- "http",
- "http-message",
- "psr",
- "psr-7",
- "request",
- "response"
- ],
- "time": "2016-08-06 14:39:51"
- },
- {
- "name": "psr/log",
- "version": "1.0.2",
- "source": {
- "type": "git",
- "url": "https://github.com/php-fig/log.git",
- "reference": "4ebe3a8bf773a19edfe0a84b6585ba3d401b724d"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/php-fig/log/zipball/4ebe3a8bf773a19edfe0a84b6585ba3d401b724d",
- "reference": "4ebe3a8bf773a19edfe0a84b6585ba3d401b724d",
- "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": "2016-10-10 12:19:37"
- },
- {
- "name": "silex/silex",
- "version": "v1.3.5",
- "source": {
- "type": "git",
- "url": "https://github.com/silexphp/Silex.git",
- "reference": "374c7e04040a6f781c90f7d746726a5daa78e783"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/silexphp/Silex/zipball/374c7e04040a6f781c90f7d746726a5daa78e783",
- "reference": "374c7e04040a6f781c90f7d746726a5daa78e783",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.9",
- "pimple/pimple": "~1.0",
- "symfony/event-dispatcher": "~2.3|3.0.*",
- "symfony/http-foundation": "~2.3|3.0.*",
- "symfony/http-kernel": "~2.3|3.0.*",
- "symfony/routing": "~2.3|3.0.*"
- },
- "require-dev": {
- "doctrine/dbal": "~2.2",
- "monolog/monolog": "^1.4.1",
- "swiftmailer/swiftmailer": "~5",
- "symfony/browser-kit": "~2.3|3.0.*",
- "symfony/config": "~2.3|3.0.*",
- "symfony/css-selector": "~2.3|3.0.*",
- "symfony/debug": "~2.3|3.0.*",
- "symfony/dom-crawler": "~2.3|3.0.*",
- "symfony/finder": "~2.3|3.0.*",
- "symfony/form": "~2.3|3.0.*",
- "symfony/locale": "~2.3|3.0.*",
- "symfony/monolog-bridge": "~2.3|3.0.*",
- "symfony/options-resolver": "~2.3|3.0.*",
- "symfony/phpunit-bridge": "~2.7",
- "symfony/process": "~2.3|3.0.*",
- "symfony/security": "~2.3|3.0.*",
- "symfony/serializer": "~2.3|3.0.*",
- "symfony/translation": "~2.3|3.0.*",
- "symfony/twig-bridge": "~2.3|3.0.*",
- "symfony/validator": "~2.3|3.0.*",
- "twig/twig": "~1.8|~2.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.3.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Silex\\": "src/Silex"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Igor Wiedler",
- "email": "igor@wiedler.ch"
- }
- ],
- "description": "The PHP micro-framework based on the Symfony Components",
- "homepage": "http://silex.sensiolabs.org/",
- "keywords": [
- "microframework"
- ],
- "time": "2016-01-06 14:59:35"
- },
- {
- "name": "symfony/debug",
- "version": "v3.1.7",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/debug.git",
- "reference": "c058661c32f5b462722e36d120905940089cbd9a"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/debug/zipball/c058661c32f5b462722e36d120905940089cbd9a",
- "reference": "c058661c32f5b462722e36d120905940089cbd9a",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9",
- "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"
- },
- "require-dev": {
- "symfony/class-loader": "~2.8|~3.0",
- "symfony/http-kernel": "~2.8|~3.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.1-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\Debug\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "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": "2016-11-15 12:55:20"
- },
- {
- "name": "symfony/event-dispatcher",
- "version": "v3.0.9",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/event-dispatcher.git",
- "reference": "54da3ff63dec3c9c0e32ec3f95a7d94ef64baa00"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/54da3ff63dec3c9c0e32ec3f95a7d94ef64baa00",
- "reference": "54da3ff63dec3c9c0e32ec3f95a7d94ef64baa00",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9"
- },
- "require-dev": {
- "psr/log": "~1.0",
- "symfony/config": "~2.8|~3.0",
- "symfony/dependency-injection": "~2.8|~3.0",
- "symfony/expression-language": "~2.8|~3.0",
- "symfony/stopwatch": "~2.8|~3.0"
- },
- "suggest": {
- "symfony/dependency-injection": "",
- "symfony/http-kernel": ""
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.0-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\EventDispatcher\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony EventDispatcher Component",
- "homepage": "https://symfony.com/",
- "time": "2016-07-19 10:44:15"
- },
- {
- "name": "symfony/http-foundation",
- "version": "v3.0.9",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/http-foundation.git",
- "reference": "49ba00f8ede742169cb6b70abe33243f4d673f82"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/http-foundation/zipball/49ba00f8ede742169cb6b70abe33243f4d673f82",
- "reference": "49ba00f8ede742169cb6b70abe33243f4d673f82",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9",
- "symfony/polyfill-mbstring": "~1.1"
- },
- "require-dev": {
- "symfony/expression-language": "~2.8|~3.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.0-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\HttpFoundation\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony HttpFoundation Component",
- "homepage": "https://symfony.com/",
- "time": "2016-07-17 13:54:30"
- },
- {
- "name": "symfony/http-kernel",
- "version": "v3.0.9",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/http-kernel.git",
- "reference": "d97ba4425e36e79c794e7d14ff36f00f081b37b3"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/http-kernel/zipball/d97ba4425e36e79c794e7d14ff36f00f081b37b3",
- "reference": "d97ba4425e36e79c794e7d14ff36f00f081b37b3",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9",
- "psr/log": "~1.0",
- "symfony/debug": "~2.8|~3.0",
- "symfony/event-dispatcher": "~2.8|~3.0",
- "symfony/http-foundation": "~2.8.8|~3.0.8|~3.1.2|~3.2"
- },
- "conflict": {
- "symfony/config": "<2.8"
- },
- "require-dev": {
- "symfony/browser-kit": "~2.8|~3.0",
- "symfony/class-loader": "~2.8|~3.0",
- "symfony/config": "~2.8|~3.0",
- "symfony/console": "~2.8|~3.0",
- "symfony/css-selector": "~2.8|~3.0",
- "symfony/dependency-injection": "~2.8|~3.0",
- "symfony/dom-crawler": "~2.8|~3.0",
- "symfony/expression-language": "~2.8|~3.0",
- "symfony/finder": "~2.8|~3.0",
- "symfony/process": "~2.8|~3.0",
- "symfony/routing": "~2.8|~3.0",
- "symfony/stopwatch": "~2.8|~3.0",
- "symfony/templating": "~2.8|~3.0",
- "symfony/translation": "~2.8|~3.0",
- "symfony/var-dumper": "~2.8|~3.0"
- },
- "suggest": {
- "symfony/browser-kit": "",
- "symfony/class-loader": "",
- "symfony/config": "",
- "symfony/console": "",
- "symfony/dependency-injection": "",
- "symfony/finder": "",
- "symfony/var-dumper": ""
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.0-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\HttpKernel\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony HttpKernel Component",
- "homepage": "https://symfony.com/",
- "time": "2016-07-30 09:10:37"
- },
- {
- "name": "symfony/polyfill-mbstring",
- "version": "v1.3.0",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/polyfill-mbstring.git",
- "reference": "e79d363049d1c2128f133a2667e4f4190904f7f4"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/e79d363049d1c2128f133a2667e4f4190904f7f4",
- "reference": "e79d363049d1c2128f133a2667e4f4190904f7f4",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "suggest": {
- "ext-mbstring": "For best performance"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.3-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": "2016-11-14 01:06:16"
- },
- {
- "name": "symfony/routing",
- "version": "v3.0.9",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/routing.git",
- "reference": "9038984bd9c05ab07280121e9e10f61a7231457b"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/routing/zipball/9038984bd9c05ab07280121e9e10f61a7231457b",
- "reference": "9038984bd9c05ab07280121e9e10f61a7231457b",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9"
- },
- "conflict": {
- "symfony/config": "<2.8"
- },
- "require-dev": {
- "doctrine/annotations": "~1.0",
- "doctrine/common": "~2.2",
- "psr/log": "~1.0",
- "symfony/config": "~2.8|~3.0",
- "symfony/expression-language": "~2.8|~3.0",
- "symfony/http-foundation": "~2.8|~3.0",
- "symfony/yaml": "~2.8|~3.0"
- },
- "suggest": {
- "doctrine/annotations": "For using the annotation loader",
- "symfony/config": "For using the all-in-one router or any loader",
- "symfony/dependency-injection": "For loading routes from a service",
- "symfony/expression-language": "For using expression matching",
- "symfony/http-foundation": "For using a Symfony Request object",
- "symfony/yaml": "For using the YAML loader"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.0-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\Routing\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony Routing Component",
- "homepage": "https://symfony.com/",
- "keywords": [
- "router",
- "routing",
- "uri",
- "url"
- ],
- "time": "2016-06-29 05:40:00"
- }
- ],
- "packages-dev": [
- {
- "name": "doctrine/instantiator",
- "version": "1.0.5",
- "source": {
- "type": "git",
- "url": "https://github.com/doctrine/instantiator.git",
- "reference": "8e884e78f9f0eb1329e445619e04456e64d8051d"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/doctrine/instantiator/zipball/8e884e78f9f0eb1329e445619e04456e64d8051d",
- "reference": "8e884e78f9f0eb1329e445619e04456e64d8051d",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3,<8.0-DEV"
- },
- "require-dev": {
- "athletic/athletic": "~0.1.8",
- "ext-pdo": "*",
- "ext-phar": "*",
- "phpunit/phpunit": "~4.0",
- "squizlabs/php_codesniffer": "~2.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Doctrine\\Instantiator\\": "src/Doctrine/Instantiator/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Marco Pivetta",
- "email": "ocramius@gmail.com",
- "homepage": "http://ocramius.github.com/"
- }
- ],
- "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors",
- "homepage": "https://github.com/doctrine/instantiator",
- "keywords": [
- "constructor",
- "instantiate"
- ],
- "time": "2015-06-14 21:17:01"
- },
- {
- "name": "google/cloud-tools",
- "version": "v0.6.1",
- "source": {
- "type": "git",
- "url": "https://github.com/GoogleCloudPlatform/php-tools.git",
- "reference": "6546fab38b9ac7d9563e1ada6ed1e945eb7d10ac"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/GoogleCloudPlatform/php-tools/zipball/6546fab38b9ac7d9563e1ada6ed1e945eb7d10ac",
- "reference": "6546fab38b9ac7d9563e1ada6ed1e945eb7d10ac",
- "shasum": ""
- },
- "require": {
- "guzzlehttp/guzzle": "~5.3|~6.0",
- "php": ">=5.5",
- "phpunit/phpunit": "~4|~5",
- "symfony/browser-kit": "~2|~3",
- "symfony/process": "~2|~3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.0"
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "Google\\Cloud\\TestUtils\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "Apache-2.0"
- ],
- "authors": [
- {
- "name": "Takashi Matsuo",
- "email": "tmatsuo@google.com",
- "homepage": "https://wp.gaeflex.ninja/"
- }
- ],
- "description": "PHP tools for Google Cloud Platform",
- "homepage": "https://github.com/GoogleCloudPlatform/php-tools",
- "keywords": [
- "appengine",
- "gcp",
- "test"
- ],
- "time": "2016-12-08 21:36:15"
- },
- {
- "name": "paragonie/random_compat",
- "version": "v2.0.4",
- "source": {
- "type": "git",
- "url": "https://github.com/paragonie/random_compat.git",
- "reference": "a9b97968bcde1c4de2a5ec6cbd06a0f6c919b46e"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/paragonie/random_compat/zipball/a9b97968bcde1c4de2a5ec6cbd06a0f6c919b46e",
- "reference": "a9b97968bcde1c4de2a5ec6cbd06a0f6c919b46e",
- "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",
- "pseudorandom",
- "random"
- ],
- "time": "2016-11-07 23:38:38"
- },
- {
- "name": "phpdocumentor/reflection-common",
- "version": "1.0",
- "source": {
- "type": "git",
- "url": "https://github.com/phpDocumentor/ReflectionCommon.git",
- "reference": "144c307535e82c8fdcaacbcfc1d6d8eeb896687c"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phpDocumentor/ReflectionCommon/zipball/144c307535e82c8fdcaacbcfc1d6d8eeb896687c",
- "reference": "144c307535e82c8fdcaacbcfc1d6d8eeb896687c",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5"
- },
- "require-dev": {
- "phpunit/phpunit": "^4.6"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "phpDocumentor\\Reflection\\": [
- "src"
- ]
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Jaap van Otterdijk",
- "email": "opensource@ijaap.nl"
- }
- ],
- "description": "Common reflection classes used by phpdocumentor to reflect the code structure",
- "homepage": "http://www.phpdoc.org/",
- "keywords": [
- "FQSEN",
- "phpDocumentor",
- "phpdoc",
- "reflection",
- "static analysis"
- ],
- "time": "2015-12-27 11:43:31"
- },
- {
- "name": "phpdocumentor/reflection-docblock",
- "version": "3.1.1",
- "source": {
- "type": "git",
- "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git",
- "reference": "8331b5efe816ae05461b7ca1e721c01b46bafb3e"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/8331b5efe816ae05461b7ca1e721c01b46bafb3e",
- "reference": "8331b5efe816ae05461b7ca1e721c01b46bafb3e",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5",
- "phpdocumentor/reflection-common": "^1.0@dev",
- "phpdocumentor/type-resolver": "^0.2.0",
- "webmozart/assert": "^1.0"
- },
- "require-dev": {
- "mockery/mockery": "^0.9.4",
- "phpunit/phpunit": "^4.4"
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "phpDocumentor\\Reflection\\": [
- "src/"
- ]
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Mike van Riel",
- "email": "me@mikevanriel.com"
- }
- ],
- "description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.",
- "time": "2016-09-30 07:12:33"
- },
- {
- "name": "phpdocumentor/type-resolver",
- "version": "0.2.1",
- "source": {
- "type": "git",
- "url": "https://github.com/phpDocumentor/TypeResolver.git",
- "reference": "e224fb2ea2fba6d3ad6fdaef91cd09a172155ccb"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/e224fb2ea2fba6d3ad6fdaef91cd09a172155ccb",
- "reference": "e224fb2ea2fba6d3ad6fdaef91cd09a172155ccb",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5",
- "phpdocumentor/reflection-common": "^1.0"
- },
- "require-dev": {
- "mockery/mockery": "^0.9.4",
- "phpunit/phpunit": "^5.2||^4.8.24"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "phpDocumentor\\Reflection\\": [
- "src/"
- ]
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Mike van Riel",
- "email": "me@mikevanriel.com"
- }
- ],
- "time": "2016-11-25 06:54:22"
- },
- {
- "name": "phpspec/prophecy",
- "version": "v1.6.2",
- "source": {
- "type": "git",
- "url": "https://github.com/phpspec/prophecy.git",
- "reference": "6c52c2722f8460122f96f86346600e1077ce22cb"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phpspec/prophecy/zipball/6c52c2722f8460122f96f86346600e1077ce22cb",
- "reference": "6c52c2722f8460122f96f86346600e1077ce22cb",
- "shasum": ""
- },
- "require": {
- "doctrine/instantiator": "^1.0.2",
- "php": "^5.3|^7.0",
- "phpdocumentor/reflection-docblock": "^2.0|^3.0.2",
- "sebastian/comparator": "^1.1",
- "sebastian/recursion-context": "^1.0|^2.0"
- },
- "require-dev": {
- "phpspec/phpspec": "^2.0",
- "phpunit/phpunit": "^4.8 || ^5.6.5"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.6.x-dev"
- }
- },
- "autoload": {
- "psr-0": {
- "Prophecy\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Konstantin Kudryashov",
- "email": "ever.zet@gmail.com",
- "homepage": "http://everzet.com/"
- },
- {
- "name": "Marcello Duarte",
- "email": "marcello.duarte@gmail.com"
- }
- ],
- "description": "Highly opinionated mocking framework for PHP 5.3+",
- "homepage": "https://github.com/phpspec/prophecy",
- "keywords": [
- "Double",
- "Dummy",
- "fake",
- "mock",
- "spy",
- "stub"
- ],
- "time": "2016-11-21 14:58:47"
- },
- {
- "name": "phpunit/php-code-coverage",
- "version": "2.2.4",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-code-coverage.git",
- "reference": "eabf68b476ac7d0f73793aada060f1c1a9bf8979"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/eabf68b476ac7d0f73793aada060f1c1a9bf8979",
- "reference": "eabf68b476ac7d0f73793aada060f1c1a9bf8979",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3",
- "phpunit/php-file-iterator": "~1.3",
- "phpunit/php-text-template": "~1.2",
- "phpunit/php-token-stream": "~1.3",
- "sebastian/environment": "^1.3.2",
- "sebastian/version": "~1.0"
- },
- "require-dev": {
- "ext-xdebug": ">=2.1.4",
- "phpunit/phpunit": "~4"
- },
- "suggest": {
- "ext-dom": "*",
- "ext-xdebug": ">=2.2.1",
- "ext-xmlwriter": "*"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.2.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sb@sebastian-bergmann.de",
- "role": "lead"
- }
- ],
- "description": "Library that provides collection, processing, and rendering functionality for PHP code coverage information.",
- "homepage": "https://github.com/sebastianbergmann/php-code-coverage",
- "keywords": [
- "coverage",
- "testing",
- "xunit"
- ],
- "time": "2015-10-06 15:47:00"
- },
- {
- "name": "phpunit/php-file-iterator",
- "version": "1.4.2",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-file-iterator.git",
- "reference": "3cc8f69b3028d0f96a9078e6295d86e9bf019be5"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/3cc8f69b3028d0f96a9078e6295d86e9bf019be5",
- "reference": "3cc8f69b3028d0f96a9078e6295d86e9bf019be5",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.4.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sb@sebastian-bergmann.de",
- "role": "lead"
- }
- ],
- "description": "FilterIterator implementation that filters files based on a list of suffixes.",
- "homepage": "https://github.com/sebastianbergmann/php-file-iterator/",
- "keywords": [
- "filesystem",
- "iterator"
- ],
- "time": "2016-10-03 07:40:28"
- },
- {
- "name": "phpunit/php-text-template",
- "version": "1.2.1",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-text-template.git",
- "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/31f8b717e51d9a2afca6c9f046f5d69fc27c8686",
- "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "type": "library",
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de",
- "role": "lead"
- }
- ],
- "description": "Simple template engine.",
- "homepage": "https://github.com/sebastianbergmann/php-text-template/",
- "keywords": [
- "template"
- ],
- "time": "2015-06-21 13:50:34"
- },
- {
- "name": "phpunit/php-timer",
- "version": "1.0.8",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-timer.git",
- "reference": "38e9124049cf1a164f1e4537caf19c99bf1eb260"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/38e9124049cf1a164f1e4537caf19c99bf1eb260",
- "reference": "38e9124049cf1a164f1e4537caf19c99bf1eb260",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4|~5"
- },
- "type": "library",
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sb@sebastian-bergmann.de",
- "role": "lead"
- }
- ],
- "description": "Utility class for timing",
- "homepage": "https://github.com/sebastianbergmann/php-timer/",
- "keywords": [
- "timer"
- ],
- "time": "2016-05-12 18:03:57"
- },
- {
- "name": "phpunit/php-token-stream",
- "version": "1.4.9",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-token-stream.git",
- "reference": "3b402f65a4cc90abf6e1104e388b896ce209631b"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/3b402f65a4cc90abf6e1104e388b896ce209631b",
- "reference": "3b402f65a4cc90abf6e1104e388b896ce209631b",
- "shasum": ""
- },
- "require": {
- "ext-tokenizer": "*",
- "php": ">=5.3.3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.2"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.4-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Wrapper around PHP's tokenizer extension.",
- "homepage": "https://github.com/sebastianbergmann/php-token-stream/",
- "keywords": [
- "tokenizer"
- ],
- "time": "2016-11-15 14:06:22"
- },
- {
- "name": "phpunit/phpunit",
- "version": "4.8.29",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/phpunit.git",
- "reference": "f19d481b468b76a7fb55eb2b772ed487e484891e"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/f19d481b468b76a7fb55eb2b772ed487e484891e",
- "reference": "f19d481b468b76a7fb55eb2b772ed487e484891e",
- "shasum": ""
- },
- "require": {
- "ext-dom": "*",
- "ext-json": "*",
- "ext-pcre": "*",
- "ext-reflection": "*",
- "ext-spl": "*",
- "php": ">=5.3.3",
- "phpspec/prophecy": "^1.3.1",
- "phpunit/php-code-coverage": "~2.1",
- "phpunit/php-file-iterator": "~1.4",
- "phpunit/php-text-template": "~1.2",
- "phpunit/php-timer": "^1.0.6",
- "phpunit/phpunit-mock-objects": "~2.3",
- "sebastian/comparator": "~1.2.2",
- "sebastian/diff": "~1.2",
- "sebastian/environment": "~1.3",
- "sebastian/exporter": "~1.2",
- "sebastian/global-state": "~1.0",
- "sebastian/version": "~1.0",
- "symfony/yaml": "~2.1|~3.0"
- },
- "suggest": {
- "phpunit/php-invoker": "~1.1"
- },
- "bin": [
- "phpunit"
- ],
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "4.8.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de",
- "role": "lead"
- }
- ],
- "description": "The PHP Unit Testing framework.",
- "homepage": "https://phpunit.de/",
- "keywords": [
- "phpunit",
- "testing",
- "xunit"
- ],
- "time": "2016-11-20 10:35:28"
- },
- {
- "name": "phpunit/phpunit-mock-objects",
- "version": "2.3.8",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/phpunit-mock-objects.git",
- "reference": "ac8e7a3db35738d56ee9a76e78a4e03d97628983"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/phpunit-mock-objects/zipball/ac8e7a3db35738d56ee9a76e78a4e03d97628983",
- "reference": "ac8e7a3db35738d56ee9a76e78a4e03d97628983",
- "shasum": ""
- },
- "require": {
- "doctrine/instantiator": "^1.0.2",
- "php": ">=5.3.3",
- "phpunit/php-text-template": "~1.2",
- "sebastian/exporter": "~1.2"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.4"
- },
- "suggest": {
- "ext-soap": "*"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.3.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sb@sebastian-bergmann.de",
- "role": "lead"
- }
- ],
- "description": "Mock Object library for PHPUnit",
- "homepage": "https://github.com/sebastianbergmann/phpunit-mock-objects/",
- "keywords": [
- "mock",
- "xunit"
- ],
- "time": "2015-10-02 06:51:40"
- },
- {
- "name": "sebastian/comparator",
- "version": "1.2.2",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/comparator.git",
- "reference": "6a1ed12e8b2409076ab22e3897126211ff8b1f7f"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/6a1ed12e8b2409076ab22e3897126211ff8b1f7f",
- "reference": "6a1ed12e8b2409076ab22e3897126211ff8b1f7f",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3",
- "sebastian/diff": "~1.2",
- "sebastian/exporter": "~1.2 || ~2.0"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.4"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.2.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Jeff Welch",
- "email": "whatthejeff@gmail.com"
- },
- {
- "name": "Volker Dusch",
- "email": "github@wallbash.com"
- },
- {
- "name": "Bernhard Schussek",
- "email": "bschussek@2bepublished.at"
- },
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Provides the functionality to compare PHP values for equality",
- "homepage": "http://www.github.com/sebastianbergmann/comparator",
- "keywords": [
- "comparator",
- "compare",
- "equality"
- ],
- "time": "2016-11-19 09:18:40"
- },
- {
- "name": "sebastian/diff",
- "version": "1.4.1",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/diff.git",
- "reference": "13edfd8706462032c2f52b4b862974dd46b71c9e"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/13edfd8706462032c2f52b4b862974dd46b71c9e",
- "reference": "13edfd8706462032c2f52b4b862974dd46b71c9e",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.8"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.4-dev"
- }
- },
- "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"
- }
- ],
- "description": "Diff implementation",
- "homepage": "https://github.com/sebastianbergmann/diff",
- "keywords": [
- "diff"
- ],
- "time": "2015-12-08 07:14:41"
- },
- {
- "name": "sebastian/environment",
- "version": "1.3.8",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/environment.git",
- "reference": "be2c607e43ce4c89ecd60e75c6a85c126e754aea"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/be2c607e43ce4c89ecd60e75c6a85c126e754aea",
- "reference": "be2c607e43ce4c89ecd60e75c6a85c126e754aea",
- "shasum": ""
- },
- "require": {
- "php": "^5.3.3 || ^7.0"
- },
- "require-dev": {
- "phpunit/phpunit": "^4.8 || ^5.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.3.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Provides functionality to handle HHVM/PHP environments",
- "homepage": "http://www.github.com/sebastianbergmann/environment",
- "keywords": [
- "Xdebug",
- "environment",
- "hhvm"
- ],
- "time": "2016-08-18 05:49:44"
- },
- {
- "name": "sebastian/exporter",
- "version": "1.2.2",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/exporter.git",
- "reference": "42c4c2eec485ee3e159ec9884f95b431287edde4"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/42c4c2eec485ee3e159ec9884f95b431287edde4",
- "reference": "42c4c2eec485ee3e159ec9884f95b431287edde4",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3",
- "sebastian/recursion-context": "~1.0"
- },
- "require-dev": {
- "ext-mbstring": "*",
- "phpunit/phpunit": "~4.4"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.3.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Jeff Welch",
- "email": "whatthejeff@gmail.com"
- },
- {
- "name": "Volker Dusch",
- "email": "github@wallbash.com"
- },
- {
- "name": "Bernhard Schussek",
- "email": "bschussek@2bepublished.at"
- },
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- },
- {
- "name": "Adam Harvey",
- "email": "aharvey@php.net"
- }
- ],
- "description": "Provides the functionality to export PHP variables for visualization",
- "homepage": "http://www.github.com/sebastianbergmann/exporter",
- "keywords": [
- "export",
- "exporter"
- ],
- "time": "2016-06-17 09:04:28"
- },
- {
- "name": "sebastian/global-state",
- "version": "1.1.1",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/global-state.git",
- "reference": "bc37d50fea7d017d3d340f230811c9f1d7280af4"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/bc37d50fea7d017d3d340f230811c9f1d7280af4",
- "reference": "bc37d50fea7d017d3d340f230811c9f1d7280af4",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.2"
- },
- "suggest": {
- "ext-uopz": "*"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Snapshotting of global state",
- "homepage": "http://www.github.com/sebastianbergmann/global-state",
- "keywords": [
- "global state"
- ],
- "time": "2015-10-12 03:26:01"
- },
- {
- "name": "sebastian/recursion-context",
- "version": "1.0.2",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/recursion-context.git",
- "reference": "913401df809e99e4f47b27cdd781f4a258d58791"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/913401df809e99e4f47b27cdd781f4a258d58791",
- "reference": "913401df809e99e4f47b27cdd781f4a258d58791",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.4"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Jeff Welch",
- "email": "whatthejeff@gmail.com"
- },
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- },
- {
- "name": "Adam Harvey",
- "email": "aharvey@php.net"
- }
- ],
- "description": "Provides functionality to recursively process PHP variables",
- "homepage": "http://www.github.com/sebastianbergmann/recursion-context",
- "time": "2015-11-11 19:50:13"
- },
- {
- "name": "sebastian/version",
- "version": "1.0.6",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/version.git",
- "reference": "58b3a85e7999757d6ad81c787a1fbf5ff6c628c6"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/58b3a85e7999757d6ad81c787a1fbf5ff6c628c6",
- "reference": "58b3a85e7999757d6ad81c787a1fbf5ff6c628c6",
- "shasum": ""
- },
- "type": "library",
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de",
- "role": "lead"
- }
- ],
- "description": "Library that helps with managing the version number of Git-hosted PHP projects",
- "homepage": "https://github.com/sebastianbergmann/version",
- "time": "2015-06-21 13:59:46"
- },
- {
- "name": "symfony/browser-kit",
- "version": "v3.1.7",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/browser-kit.git",
- "reference": "901319a31c9b3cee7857b4aeeb81b5d64dfa34fc"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/browser-kit/zipball/901319a31c9b3cee7857b4aeeb81b5d64dfa34fc",
- "reference": "901319a31c9b3cee7857b4aeeb81b5d64dfa34fc",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9",
- "symfony/dom-crawler": "~2.8|~3.0"
- },
- "require-dev": {
- "symfony/css-selector": "~2.8|~3.0",
- "symfony/process": "~2.8|~3.0"
- },
- "suggest": {
- "symfony/process": ""
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.1-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\BrowserKit\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony BrowserKit Component",
- "homepage": "https://symfony.com/",
- "time": "2016-09-06 11:02:40"
- },
- {
- "name": "symfony/dom-crawler",
- "version": "v3.1.7",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/dom-crawler.git",
- "reference": "1eb3b4d216e8db117218dd2bb7d23dfe67bdf518"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/1eb3b4d216e8db117218dd2bb7d23dfe67bdf518",
- "reference": "1eb3b4d216e8db117218dd2bb7d23dfe67bdf518",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9",
- "symfony/polyfill-mbstring": "~1.0"
- },
- "require-dev": {
- "symfony/css-selector": "~2.8|~3.0"
- },
- "suggest": {
- "symfony/css-selector": ""
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.1-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\DomCrawler\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony DomCrawler Component",
- "homepage": "https://symfony.com/",
- "time": "2016-11-14 16:20:02"
- },
- {
- "name": "symfony/process",
- "version": "v3.1.7",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/process.git",
- "reference": "66de154ae86b1a07001da9fbffd620206e4faf94"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/process/zipball/66de154ae86b1a07001da9fbffd620206e4faf94",
- "reference": "66de154ae86b1a07001da9fbffd620206e4faf94",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.1-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\Process\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony Process Component",
- "homepage": "https://symfony.com/",
- "time": "2016-09-29 14:13:09"
- },
- {
- "name": "symfony/yaml",
- "version": "v3.1.7",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/yaml.git",
- "reference": "9da375317228e54f4ea1b013b30fa47417e84943"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/yaml/zipball/9da375317228e54f4ea1b013b30fa47417e84943",
- "reference": "9da375317228e54f4ea1b013b30fa47417e84943",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.1-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\Yaml\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony Yaml Component",
- "homepage": "https://symfony.com/",
- "time": "2016-11-18 21:05:29"
- },
- {
- "name": "webmozart/assert",
- "version": "1.2.0",
- "source": {
- "type": "git",
- "url": "https://github.com/webmozart/assert.git",
- "reference": "2db61e59ff05fe5126d152bd0655c9ea113e550f"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/webmozart/assert/zipball/2db61e59ff05fe5126d152bd0655c9ea113e550f",
- "reference": "2db61e59ff05fe5126d152bd0655c9ea113e550f",
- "shasum": ""
- },
- "require": {
- "php": "^5.3.3 || ^7.0"
- },
- "require-dev": {
- "phpunit/phpunit": "^4.6",
- "sebastian/version": "^1.0.1"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.3-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Webmozart\\Assert\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Bernhard Schussek",
- "email": "bschussek@gmail.com"
- }
- ],
- "description": "Assertions to validate method input/output with nice error messages.",
- "keywords": [
- "assert",
- "check",
- "validate"
- ],
- "time": "2016-11-23 20:04:58"
- }
- ],
- "aliases": [],
- "minimum-stability": "stable",
- "stability-flags": [],
- "prefer-stable": false,
- "prefer-lowest": false,
- "platform": [],
- "platform-dev": []
-}
diff --git a/appengine/flexible/cloudsql/index.php b/appengine/flexible/cloudsql/index.php
deleted file mode 100644
index ca82fdf933..0000000000
--- a/appengine/flexible/cloudsql/index.php
+++ /dev/null
@@ -1,30 +0,0 @@
-run();
diff --git a/appengine/flexible/cloudsql/phpunit.xml b/appengine/flexible/cloudsql/phpunit.xml
deleted file mode 100644
index 21e45651dd..0000000000
--- a/appengine/flexible/cloudsql/phpunit.xml
+++ /dev/null
@@ -1,16 +0,0 @@
-
-
-
-
- tests
-
-
-
-
-
-
-
- app.php
-
-
-
diff --git a/appengine/flexible/cloudsql/tests/DeployTest.php b/appengine/flexible/cloudsql/tests/DeployTest.php
deleted file mode 100644
index e68e39b6aa..0000000000
--- a/appengine/flexible/cloudsql/tests/DeployTest.php
+++ /dev/null
@@ -1,57 +0,0 @@
-client->request('GET', '/');
-
- $this->assertEquals('200', $resp->getStatusCode());
- $this->assertContains("Last 10 visits:", (string) $resp->getBody());
- }
-
- public function beforeDeploy()
- {
- $tmpDir = FileUtil::cloneDirectoryIntoTmp(__DIR__ . '/..');
- self::$gcloudWrapper->setDir($tmpDir);
- chdir($tmpDir);
-
- $connectionName = getenv('CLOUDSQL_CONNECTION_NAME');
- $user = getenv('MYSQL_USER');
- $password = getenv('MYSQL_PASSWORD');
-
- $appYaml = Yaml::parse(file_get_contents('app.yaml'));
- $appYaml['env_variables']['MYSQL_USER'] = $user;
- $appYaml['env_variables']['MYSQL_PASSWORD'] = $password;
- $appYaml['beta_settings']['cloud_sql_instances'] = $connectionName;
- $appYaml['env_variables']['MYSQL_DSN'] = str_replace(
- ['DATABASE', 'CONNECTION_NAME'],
- ['cloud_samples_tests_php', $connectionName],
- $appYaml['env_variables']['MYSQL_DSN']
- );
-
- file_put_contents('app.yaml', Yaml::dump($appYaml));
- }
-}
diff --git a/appengine/flexible/cloudsql/tests/LocalTest.php b/appengine/flexible/cloudsql/tests/LocalTest.php
deleted file mode 100644
index a28fb5c68c..0000000000
--- a/appengine/flexible/cloudsql/tests/LocalTest.php
+++ /dev/null
@@ -1,52 +0,0 @@
-client = $this->createClient();
- }
-
- public function createApplication()
- {
- $app = require __DIR__ . '/../app.php';
- $app['mysql.dsn'] = getenv('MYSQL_DSN');
- $app['mysql.user'] = getenv('MYSQL_USER');
- $app['mysql.password'] = getenv('MYSQL_PASSWORD');
- if ($app['mysql.dsn'] === false ||
- $app['mysql.user'] === false ||
- $app['mysql.password'] === false) {
- $this->markTestSkipped('set the MYSQL_DSN, MYSQL_USER and MYSQL_PASSWORD environment variables');
- }
- return $app;
- }
-
- public function testIndex()
- {
- // Access the modules app top page.
- $client = $this->client;
- $client->request('GET', '/');
- $this->assertTrue($client->getResponse()->isOk());
- $text = $client->getResponse()->getContent();
- $this->assertContains("Last 10 visits:", $text);
- }
-}
diff --git a/appengine/flexible/cloudsql/tests/bootstrap.php b/appengine/flexible/cloudsql/tests/bootstrap.php
deleted file mode 100644
index be234bb16a..0000000000
--- a/appengine/flexible/cloudsql/tests/bootstrap.php
+++ /dev/null
@@ -1,18 +0,0 @@
-addErrorMiddleware(true, true, true);
+
+// Add IP address middleware
+$checkProxyHeaders = true;
+$trustedProxies = ['10.0.0.1', '10.0.0.2'];
+$app->add(new IpAddress($checkProxyHeaders, $trustedProxies));
+
+$app->get('/', function (Request $request, Response $response) {
+ $projectId = getenv('GCLOUD_PROJECT');
+ if (empty($projectId)) {
+ $response->getBody()->write('Set the GCLOUD_PROJECT environment variable to run locally');
+ return $response;
+ }
+
+ # [START gae_flex_datastore_client]
$datastore = new DatastoreClient([
'projectId' => $projectId
]);
- # [END create_client]
- return $datastore;
-};
-
-$app->get('/', function (Application $app, Request $request) {
- if (empty($app['project_id'])) {
- return 'Set the GCLOUD_PROJECT environment variable to run locally';
- }
- /** @var \Google_Service_Datastore $datastore */
- $datastore = $app['datastore'];
+ # [END gae_flex_datastore_client]
// determine the user's IP
$user_ip = get_user_ip($request);
- # [START insert_entity]
+ # [START gae_flex_datastore_entity]
// Create an entity to insert into datastore.
$key = $datastore->key('visit');
$entity = $datastore->entity($key, [
@@ -51,9 +56,9 @@
'timestamp' => new DateTime(),
]);
$datastore->insert($entity);
- # [END insert_entity]
+ # [END gae_flex_datastore_entity]
- # [START run_query]
+ # [START gae_flex_datastore_query]
// Query recent visits.
$query = $datastore->query()
->kind('visit')
@@ -66,15 +71,18 @@
$entity['timestamp']->format('Y-m-d H:i:s'),
$entity['user_ip']);
}
- # [END run_query]
- array_unshift($visits, "Last 10 visits:");
- return new Response(implode("\n", $visits), 200,
- ['Content-Type' => 'text/plain']);
+ # [END gae_flex_datastore_query]
+ array_unshift($visits, 'Last 10 visits:');
+ $response->getBody()->write(implode("\n", $visits));
+
+ return $response
+ ->withStatus(200)
+ ->withHeader('Content-Type', 'text/plain');
});
function get_user_ip(Request $request)
{
- $ip = $request->GetClientIp();
+ $ip = $request->getAttribute('ip_address');
// Keep only the first two octets of the IP address.
$octets = explode($separator = ':', $ip);
if (count($octets) < 2) { // Must be ip4 address
diff --git a/appengine/flexible/datastore/app.yaml b/appengine/flexible/datastore/app.yaml
index 9c3ea597a8..bb23ac24f3 100644
--- a/appengine/flexible/datastore/app.yaml
+++ b/appengine/flexible/datastore/app.yaml
@@ -1,2 +1,7 @@
runtime: php
env: flex
+
+runtime_config:
+ document_root: .
+ operating_system: ubuntu22
+ runtime_version: 8.3
diff --git a/appengine/flexible/datastore/composer.json b/appengine/flexible/datastore/composer.json
index 6071dabbbb..dfb1e10bbe 100644
--- a/appengine/flexible/datastore/composer.json
+++ b/appengine/flexible/datastore/composer.json
@@ -1,10 +1,8 @@
{
"require": {
- "silex/silex": "^1.3",
- "google/cloud": "^0.20"
- },
- "require-dev": {
- "google/cloud-tools": "^0.6",
- "phpunit/phpunit": "~4"
+ "google/cloud-datastore": "^1.0",
+ "slim/slim": "^4.0",
+ "slim/psr7": "^1.3",
+ "akrabat/ip-address-middleware": "^2.0"
}
}
diff --git a/appengine/flexible/datastore/composer.lock b/appengine/flexible/datastore/composer.lock
deleted file mode 100644
index 0dc045204b..0000000000
--- a/appengine/flexible/datastore/composer.lock
+++ /dev/null
@@ -1,2465 +0,0 @@
-{
- "_readme": [
- "This file locks the dependencies of your project to a known state",
- "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file",
- "This file is @generated automatically"
- ],
- "hash": "e0cbc7ceda0fb782388c7f41e9686ada",
- "content-hash": "5eea5c564f3ad5c1e45b555ef2bec000",
- "packages": [
- {
- "name": "firebase/php-jwt",
- "version": "v4.0.0",
- "source": {
- "type": "git",
- "url": "https://github.com/firebase/php-jwt.git",
- "reference": "dccf163dc8ed7ed6a00afc06c51ee5186a428d35"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/firebase/php-jwt/zipball/dccf163dc8ed7ed6a00afc06c51ee5186a428d35",
- "reference": "dccf163dc8ed7ed6a00afc06c51ee5186a428d35",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.0"
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "Firebase\\JWT\\": "src"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Neuman Vong",
- "email": "neuman+pear@twilio.com",
- "role": "Developer"
- },
- {
- "name": "Anant Narayanan",
- "email": "anant@php.net",
- "role": "Developer"
- }
- ],
- "description": "A simple library to encode and decode JSON Web Tokens (JWT) in PHP. Should conform to the current spec.",
- "homepage": "https://github.com/firebase/php-jwt",
- "time": "2016-07-18 04:51:16"
- },
- {
- "name": "google/auth",
- "version": "v0.11.1",
- "source": {
- "type": "git",
- "url": "https://github.com/google/google-auth-library-php.git",
- "reference": "a240674b08a09949fd5597f7590b3ed83663a12d"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/google/google-auth-library-php/zipball/a240674b08a09949fd5597f7590b3ed83663a12d",
- "reference": "a240674b08a09949fd5597f7590b3ed83663a12d",
- "shasum": ""
- },
- "require": {
- "firebase/php-jwt": "~2.0|~3.0|~4.0",
- "guzzlehttp/guzzle": "~5.3|~6.0",
- "guzzlehttp/psr7": "~1.2",
- "php": ">=5.4",
- "psr/cache": "^1.0",
- "psr/http-message": "^1.0"
- },
- "require-dev": {
- "friendsofphp/php-cs-fixer": "^1.11",
- "phpunit/phpunit": "3.7.*"
- },
- "type": "library",
- "autoload": {
- "classmap": [
- "src/"
- ],
- "psr-4": {
- "Google\\Auth\\": "src"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "Apache-2.0"
- ],
- "description": "Google Auth Library for PHP",
- "homepage": "http://github.com/google/google-auth-library-php",
- "keywords": [
- "Authentication",
- "google",
- "oauth2"
- ],
- "time": "2016-11-02 14:59:14"
- },
- {
- "name": "google/cloud",
- "version": "v0.20.0",
- "source": {
- "type": "git",
- "url": "https://github.com/GoogleCloudPlatform/google-cloud-php.git",
- "reference": "0a22f803246e64f398220df9abeb818f9183907f"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/GoogleCloudPlatform/google-cloud-php/zipball/0a22f803246e64f398220df9abeb818f9183907f",
- "reference": "0a22f803246e64f398220df9abeb818f9183907f",
- "shasum": ""
- },
- "require": {
- "google/auth": "^0.11",
- "guzzlehttp/guzzle": "^5.3|^6.0",
- "guzzlehttp/psr7": "^1.2",
- "monolog/monolog": "~1",
- "php": ">=5.5",
- "psr/http-message": "1.0.*",
- "rize/uri-template": "~0.3"
- },
- "require-dev": {
- "erusev/parsedown": "^1.6",
- "google/gax": "^0.5",
- "google/proto-client-php": "^0.6",
- "james-heinrich/getid3": "^1.9",
- "league/json-guard": "^0.3",
- "phpdocumentor/reflection": "^3.0",
- "phpunit/phpunit": "4.8.*",
- "squizlabs/php_codesniffer": "2.*",
- "symfony/console": "^3.0",
- "vierbergenlars/php-semver": "^3.0"
- },
- "suggest": {
- "google/gax": "Required to support gRPC",
- "google/proto-client-php": "Required to support gRPC",
- "james-heinrich/getid3": "Allows the Google Cloud Speech client to determine sample rate and encoding of audio inputs"
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "Google\\Cloud\\": "src"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "Apache-2.0"
- ],
- "authors": [
- {
- "name": "John Pedrie",
- "email": "john@pedrie.com"
- },
- {
- "name": "Dave Supplee",
- "email": "dwsupplee@gmail.com"
- }
- ],
- "description": "Google Cloud Client Library",
- "homepage": "http://github.com/GoogleCloudPlatform/google-cloud-php",
- "keywords": [
- "big query",
- "bigquery",
- "cloud",
- "datastore",
- "gcs",
- "google",
- "google api",
- "google api client",
- "google apis",
- "google apis client",
- "google cloud",
- "google cloud platform",
- "natural language",
- "pub sub",
- "pubsub",
- "speech",
- "stackdriver logging",
- "storage",
- "translate",
- "vision"
- ],
- "time": "2016-12-08 23:50:49"
- },
- {
- "name": "guzzlehttp/guzzle",
- "version": "6.2.2",
- "source": {
- "type": "git",
- "url": "https://github.com/guzzle/guzzle.git",
- "reference": "ebf29dee597f02f09f4d5bbecc68230ea9b08f60"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/guzzle/guzzle/zipball/ebf29dee597f02f09f4d5bbecc68230ea9b08f60",
- "reference": "ebf29dee597f02f09f4d5bbecc68230ea9b08f60",
- "shasum": ""
- },
- "require": {
- "guzzlehttp/promises": "^1.0",
- "guzzlehttp/psr7": "^1.3.1",
- "php": ">=5.5"
- },
- "require-dev": {
- "ext-curl": "*",
- "phpunit/phpunit": "^4.0",
- "psr/log": "^1.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "6.2-dev"
- }
- },
- "autoload": {
- "files": [
- "src/functions_include.php"
- ],
- "psr-4": {
- "GuzzleHttp\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Michael Dowling",
- "email": "mtdowling@gmail.com",
- "homepage": "https://github.com/mtdowling"
- }
- ],
- "description": "Guzzle is a PHP HTTP client library",
- "homepage": "http://guzzlephp.org/",
- "keywords": [
- "client",
- "curl",
- "framework",
- "http",
- "http client",
- "rest",
- "web service"
- ],
- "time": "2016-10-08 15:01:37"
- },
- {
- "name": "guzzlehttp/promises",
- "version": "1.3.0",
- "source": {
- "type": "git",
- "url": "https://github.com/guzzle/promises.git",
- "reference": "2693c101803ca78b27972d84081d027fca790a1e"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/guzzle/promises/zipball/2693c101803ca78b27972d84081d027fca790a1e",
- "reference": "2693c101803ca78b27972d84081d027fca790a1e",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.0"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "GuzzleHttp\\Promise\\": "src/"
- },
- "files": [
- "src/functions_include.php"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Michael Dowling",
- "email": "mtdowling@gmail.com",
- "homepage": "https://github.com/mtdowling"
- }
- ],
- "description": "Guzzle promises library",
- "keywords": [
- "promise"
- ],
- "time": "2016-11-18 17:47:58"
- },
- {
- "name": "guzzlehttp/psr7",
- "version": "1.3.1",
- "source": {
- "type": "git",
- "url": "https://github.com/guzzle/psr7.git",
- "reference": "5c6447c9df362e8f8093bda8f5d8873fe5c7f65b"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/guzzle/psr7/zipball/5c6447c9df362e8f8093bda8f5d8873fe5c7f65b",
- "reference": "5c6447c9df362e8f8093bda8f5d8873fe5c7f65b",
- "shasum": ""
- },
- "require": {
- "php": ">=5.4.0",
- "psr/http-message": "~1.0"
- },
- "provide": {
- "psr/http-message-implementation": "1.0"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.4-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "GuzzleHttp\\Psr7\\": "src/"
- },
- "files": [
- "src/functions_include.php"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Michael Dowling",
- "email": "mtdowling@gmail.com",
- "homepage": "https://github.com/mtdowling"
- }
- ],
- "description": "PSR-7 message implementation",
- "keywords": [
- "http",
- "message",
- "stream",
- "uri"
- ],
- "time": "2016-06-24 23:00:38"
- },
- {
- "name": "monolog/monolog",
- "version": "1.22.0",
- "source": {
- "type": "git",
- "url": "https://github.com/Seldaek/monolog.git",
- "reference": "bad29cb8d18ab0315e6c477751418a82c850d558"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/Seldaek/monolog/zipball/bad29cb8d18ab0315e6c477751418a82c850d558",
- "reference": "bad29cb8d18ab0315e6c477751418a82c850d558",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.0",
- "psr/log": "~1.0"
- },
- "provide": {
- "psr/log-implementation": "1.0.0"
- },
- "require-dev": {
- "aws/aws-sdk-php": "^2.4.9 || ^3.0",
- "doctrine/couchdb": "~1.0@dev",
- "graylog2/gelf-php": "~1.0",
- "jakub-onderka/php-parallel-lint": "0.9",
- "php-amqplib/php-amqplib": "~2.4",
- "php-console/php-console": "^3.1.3",
- "phpunit/phpunit": "~4.5",
- "phpunit/phpunit-mock-objects": "2.3.0",
- "ruflin/elastica": ">=0.90 <3.0",
- "sentry/sentry": "^0.13",
- "swiftmailer/swiftmailer": "~5.3"
- },
- "suggest": {
- "aws/aws-sdk-php": "Allow sending log messages to AWS services like DynamoDB",
- "doctrine/couchdb": "Allow sending log messages to a CouchDB server",
- "ext-amqp": "Allow sending log messages to an AMQP server (1.0+ required)",
- "ext-mongo": "Allow sending log messages to a MongoDB server",
- "graylog2/gelf-php": "Allow sending log messages to a GrayLog2 server",
- "mongodb/mongodb": "Allow sending log messages to a MongoDB server via PHP Driver",
- "php-amqplib/php-amqplib": "Allow sending log messages to an AMQP server using php-amqplib",
- "php-console/php-console": "Allow sending log messages to Google Chrome",
- "rollbar/rollbar": "Allow sending log messages to Rollbar",
- "ruflin/elastica": "Allow sending log messages to an Elastic Search server",
- "sentry/sentry": "Allow sending log messages to a Sentry server"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.0.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Monolog\\": "src/Monolog"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Jordi Boggiano",
- "email": "j.boggiano@seld.be",
- "homepage": "http://seld.be/"
- }
- ],
- "description": "Sends your logs to files, sockets, inboxes, databases and various web services",
- "homepage": "http://github.com/Seldaek/monolog",
- "keywords": [
- "log",
- "logging",
- "psr-3"
- ],
- "time": "2016-11-26 00:15:39"
- },
- {
- "name": "pimple/pimple",
- "version": "v1.1.1",
- "source": {
- "type": "git",
- "url": "https://github.com/silexphp/Pimple.git",
- "reference": "2019c145fe393923f3441b23f29bbdfaa5c58c4d"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/silexphp/Pimple/zipball/2019c145fe393923f3441b23f29bbdfaa5c58c4d",
- "reference": "2019c145fe393923f3441b23f29bbdfaa5c58c4d",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.1.x-dev"
- }
- },
- "autoload": {
- "psr-0": {
- "Pimple": "lib/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- }
- ],
- "description": "Pimple is a simple Dependency Injection Container for PHP 5.3",
- "homepage": "http://pimple.sensiolabs.org/",
- "keywords": [
- "container",
- "dependency injection"
- ],
- "time": "2013-11-22 08:30:29"
- },
- {
- "name": "psr/cache",
- "version": "1.0.1",
- "source": {
- "type": "git",
- "url": "https://github.com/php-fig/cache.git",
- "reference": "d11b50ad223250cf17b86e38383413f5a6764bf8"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/php-fig/cache/zipball/d11b50ad223250cf17b86e38383413f5a6764bf8",
- "reference": "d11b50ad223250cf17b86e38383413f5a6764bf8",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Psr\\Cache\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "PHP-FIG",
- "homepage": "http://www.php-fig.org/"
- }
- ],
- "description": "Common interface for caching libraries",
- "keywords": [
- "cache",
- "psr",
- "psr-6"
- ],
- "time": "2016-08-06 20:24:11"
- },
- {
- "name": "psr/http-message",
- "version": "1.0.1",
- "source": {
- "type": "git",
- "url": "https://github.com/php-fig/http-message.git",
- "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/php-fig/http-message/zipball/f6561bf28d520154e4b0ec72be95418abe6d9363",
- "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Psr\\Http\\Message\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "PHP-FIG",
- "homepage": "http://www.php-fig.org/"
- }
- ],
- "description": "Common interface for HTTP messages",
- "homepage": "https://github.com/php-fig/http-message",
- "keywords": [
- "http",
- "http-message",
- "psr",
- "psr-7",
- "request",
- "response"
- ],
- "time": "2016-08-06 14:39:51"
- },
- {
- "name": "psr/log",
- "version": "1.0.2",
- "source": {
- "type": "git",
- "url": "https://github.com/php-fig/log.git",
- "reference": "4ebe3a8bf773a19edfe0a84b6585ba3d401b724d"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/php-fig/log/zipball/4ebe3a8bf773a19edfe0a84b6585ba3d401b724d",
- "reference": "4ebe3a8bf773a19edfe0a84b6585ba3d401b724d",
- "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": "2016-10-10 12:19:37"
- },
- {
- "name": "rize/uri-template",
- "version": "0.3.0",
- "source": {
- "type": "git",
- "url": "https://github.com/rize/UriTemplate.git",
- "reference": "2496aa674438f1c48fce122ffc44291ad7014717"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/rize/UriTemplate/zipball/2496aa674438f1c48fce122ffc44291ad7014717",
- "reference": "2496aa674438f1c48fce122ffc44291ad7014717",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.0"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.0.0"
- },
- "type": "library",
- "autoload": {
- "psr-0": {
- "Rize\\UriTemplate": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Marut K",
- "homepage": "http://twitter.com/rezigned"
- }
- ],
- "description": "PHP URI Template (RFC 6570) supports both expansion & extraction",
- "keywords": [
- "RFC 6570",
- "template",
- "uri"
- ],
- "time": "2015-04-17 16:12:22"
- },
- {
- "name": "silex/silex",
- "version": "v1.3.5",
- "source": {
- "type": "git",
- "url": "https://github.com/silexphp/Silex.git",
- "reference": "374c7e04040a6f781c90f7d746726a5daa78e783"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/silexphp/Silex/zipball/374c7e04040a6f781c90f7d746726a5daa78e783",
- "reference": "374c7e04040a6f781c90f7d746726a5daa78e783",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.9",
- "pimple/pimple": "~1.0",
- "symfony/event-dispatcher": "~2.3|3.0.*",
- "symfony/http-foundation": "~2.3|3.0.*",
- "symfony/http-kernel": "~2.3|3.0.*",
- "symfony/routing": "~2.3|3.0.*"
- },
- "require-dev": {
- "doctrine/dbal": "~2.2",
- "monolog/monolog": "^1.4.1",
- "swiftmailer/swiftmailer": "~5",
- "symfony/browser-kit": "~2.3|3.0.*",
- "symfony/config": "~2.3|3.0.*",
- "symfony/css-selector": "~2.3|3.0.*",
- "symfony/debug": "~2.3|3.0.*",
- "symfony/dom-crawler": "~2.3|3.0.*",
- "symfony/finder": "~2.3|3.0.*",
- "symfony/form": "~2.3|3.0.*",
- "symfony/locale": "~2.3|3.0.*",
- "symfony/monolog-bridge": "~2.3|3.0.*",
- "symfony/options-resolver": "~2.3|3.0.*",
- "symfony/phpunit-bridge": "~2.7",
- "symfony/process": "~2.3|3.0.*",
- "symfony/security": "~2.3|3.0.*",
- "symfony/serializer": "~2.3|3.0.*",
- "symfony/translation": "~2.3|3.0.*",
- "symfony/twig-bridge": "~2.3|3.0.*",
- "symfony/validator": "~2.3|3.0.*",
- "twig/twig": "~1.8|~2.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.3.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Silex\\": "src/Silex"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Igor Wiedler",
- "email": "igor@wiedler.ch"
- }
- ],
- "description": "The PHP micro-framework based on the Symfony Components",
- "homepage": "http://silex.sensiolabs.org/",
- "keywords": [
- "microframework"
- ],
- "time": "2016-01-06 14:59:35"
- },
- {
- "name": "symfony/debug",
- "version": "v3.2.1",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/debug.git",
- "reference": "9f923e68d524a3095c5a2ae5fc7220c7cbc12231"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/debug/zipball/9f923e68d524a3095c5a2ae5fc7220c7cbc12231",
- "reference": "9f923e68d524a3095c5a2ae5fc7220c7cbc12231",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9",
- "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"
- },
- "require-dev": {
- "symfony/class-loader": "~2.8|~3.0",
- "symfony/http-kernel": "~2.8|~3.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.2-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\Debug\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "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": "2016-11-16 22:18:16"
- },
- {
- "name": "symfony/event-dispatcher",
- "version": "v3.0.9",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/event-dispatcher.git",
- "reference": "54da3ff63dec3c9c0e32ec3f95a7d94ef64baa00"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/54da3ff63dec3c9c0e32ec3f95a7d94ef64baa00",
- "reference": "54da3ff63dec3c9c0e32ec3f95a7d94ef64baa00",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9"
- },
- "require-dev": {
- "psr/log": "~1.0",
- "symfony/config": "~2.8|~3.0",
- "symfony/dependency-injection": "~2.8|~3.0",
- "symfony/expression-language": "~2.8|~3.0",
- "symfony/stopwatch": "~2.8|~3.0"
- },
- "suggest": {
- "symfony/dependency-injection": "",
- "symfony/http-kernel": ""
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.0-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\EventDispatcher\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony EventDispatcher Component",
- "homepage": "https://symfony.com/",
- "time": "2016-07-19 10:44:15"
- },
- {
- "name": "symfony/http-foundation",
- "version": "v3.0.9",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/http-foundation.git",
- "reference": "49ba00f8ede742169cb6b70abe33243f4d673f82"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/http-foundation/zipball/49ba00f8ede742169cb6b70abe33243f4d673f82",
- "reference": "49ba00f8ede742169cb6b70abe33243f4d673f82",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9",
- "symfony/polyfill-mbstring": "~1.1"
- },
- "require-dev": {
- "symfony/expression-language": "~2.8|~3.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.0-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\HttpFoundation\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony HttpFoundation Component",
- "homepage": "https://symfony.com/",
- "time": "2016-07-17 13:54:30"
- },
- {
- "name": "symfony/http-kernel",
- "version": "v3.0.9",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/http-kernel.git",
- "reference": "d97ba4425e36e79c794e7d14ff36f00f081b37b3"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/http-kernel/zipball/d97ba4425e36e79c794e7d14ff36f00f081b37b3",
- "reference": "d97ba4425e36e79c794e7d14ff36f00f081b37b3",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9",
- "psr/log": "~1.0",
- "symfony/debug": "~2.8|~3.0",
- "symfony/event-dispatcher": "~2.8|~3.0",
- "symfony/http-foundation": "~2.8.8|~3.0.8|~3.1.2|~3.2"
- },
- "conflict": {
- "symfony/config": "<2.8"
- },
- "require-dev": {
- "symfony/browser-kit": "~2.8|~3.0",
- "symfony/class-loader": "~2.8|~3.0",
- "symfony/config": "~2.8|~3.0",
- "symfony/console": "~2.8|~3.0",
- "symfony/css-selector": "~2.8|~3.0",
- "symfony/dependency-injection": "~2.8|~3.0",
- "symfony/dom-crawler": "~2.8|~3.0",
- "symfony/expression-language": "~2.8|~3.0",
- "symfony/finder": "~2.8|~3.0",
- "symfony/process": "~2.8|~3.0",
- "symfony/routing": "~2.8|~3.0",
- "symfony/stopwatch": "~2.8|~3.0",
- "symfony/templating": "~2.8|~3.0",
- "symfony/translation": "~2.8|~3.0",
- "symfony/var-dumper": "~2.8|~3.0"
- },
- "suggest": {
- "symfony/browser-kit": "",
- "symfony/class-loader": "",
- "symfony/config": "",
- "symfony/console": "",
- "symfony/dependency-injection": "",
- "symfony/finder": "",
- "symfony/var-dumper": ""
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.0-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\HttpKernel\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony HttpKernel Component",
- "homepage": "https://symfony.com/",
- "time": "2016-07-30 09:10:37"
- },
- {
- "name": "symfony/polyfill-mbstring",
- "version": "v1.3.0",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/polyfill-mbstring.git",
- "reference": "e79d363049d1c2128f133a2667e4f4190904f7f4"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/e79d363049d1c2128f133a2667e4f4190904f7f4",
- "reference": "e79d363049d1c2128f133a2667e4f4190904f7f4",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "suggest": {
- "ext-mbstring": "For best performance"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.3-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": "2016-11-14 01:06:16"
- },
- {
- "name": "symfony/routing",
- "version": "v3.0.9",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/routing.git",
- "reference": "9038984bd9c05ab07280121e9e10f61a7231457b"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/routing/zipball/9038984bd9c05ab07280121e9e10f61a7231457b",
- "reference": "9038984bd9c05ab07280121e9e10f61a7231457b",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9"
- },
- "conflict": {
- "symfony/config": "<2.8"
- },
- "require-dev": {
- "doctrine/annotations": "~1.0",
- "doctrine/common": "~2.2",
- "psr/log": "~1.0",
- "symfony/config": "~2.8|~3.0",
- "symfony/expression-language": "~2.8|~3.0",
- "symfony/http-foundation": "~2.8|~3.0",
- "symfony/yaml": "~2.8|~3.0"
- },
- "suggest": {
- "doctrine/annotations": "For using the annotation loader",
- "symfony/config": "For using the all-in-one router or any loader",
- "symfony/dependency-injection": "For loading routes from a service",
- "symfony/expression-language": "For using expression matching",
- "symfony/http-foundation": "For using a Symfony Request object",
- "symfony/yaml": "For using the YAML loader"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.0-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\Routing\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony Routing Component",
- "homepage": "https://symfony.com/",
- "keywords": [
- "router",
- "routing",
- "uri",
- "url"
- ],
- "time": "2016-06-29 05:40:00"
- }
- ],
- "packages-dev": [
- {
- "name": "doctrine/instantiator",
- "version": "1.0.5",
- "source": {
- "type": "git",
- "url": "https://github.com/doctrine/instantiator.git",
- "reference": "8e884e78f9f0eb1329e445619e04456e64d8051d"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/doctrine/instantiator/zipball/8e884e78f9f0eb1329e445619e04456e64d8051d",
- "reference": "8e884e78f9f0eb1329e445619e04456e64d8051d",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3,<8.0-DEV"
- },
- "require-dev": {
- "athletic/athletic": "~0.1.8",
- "ext-pdo": "*",
- "ext-phar": "*",
- "phpunit/phpunit": "~4.0",
- "squizlabs/php_codesniffer": "~2.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Doctrine\\Instantiator\\": "src/Doctrine/Instantiator/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Marco Pivetta",
- "email": "ocramius@gmail.com",
- "homepage": "http://ocramius.github.com/"
- }
- ],
- "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors",
- "homepage": "https://github.com/doctrine/instantiator",
- "keywords": [
- "constructor",
- "instantiate"
- ],
- "time": "2015-06-14 21:17:01"
- },
- {
- "name": "google/cloud-tools",
- "version": "v0.6.1",
- "source": {
- "type": "git",
- "url": "https://github.com/GoogleCloudPlatform/php-tools.git",
- "reference": "6546fab38b9ac7d9563e1ada6ed1e945eb7d10ac"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/GoogleCloudPlatform/php-tools/zipball/6546fab38b9ac7d9563e1ada6ed1e945eb7d10ac",
- "reference": "6546fab38b9ac7d9563e1ada6ed1e945eb7d10ac",
- "shasum": ""
- },
- "require": {
- "guzzlehttp/guzzle": "~5.3|~6.0",
- "php": ">=5.5",
- "phpunit/phpunit": "~4|~5",
- "symfony/browser-kit": "~2|~3",
- "symfony/process": "~2|~3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.0"
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "Google\\Cloud\\TestUtils\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "Apache-2.0"
- ],
- "authors": [
- {
- "name": "Takashi Matsuo",
- "email": "tmatsuo@google.com",
- "homepage": "https://wp.gaeflex.ninja/"
- }
- ],
- "description": "PHP tools for Google Cloud Platform",
- "homepage": "https://github.com/GoogleCloudPlatform/php-tools",
- "keywords": [
- "appengine",
- "gcp",
- "test"
- ],
- "time": "2016-12-08 21:36:15"
- },
- {
- "name": "phpdocumentor/reflection-common",
- "version": "1.0",
- "source": {
- "type": "git",
- "url": "https://github.com/phpDocumentor/ReflectionCommon.git",
- "reference": "144c307535e82c8fdcaacbcfc1d6d8eeb896687c"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phpDocumentor/ReflectionCommon/zipball/144c307535e82c8fdcaacbcfc1d6d8eeb896687c",
- "reference": "144c307535e82c8fdcaacbcfc1d6d8eeb896687c",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5"
- },
- "require-dev": {
- "phpunit/phpunit": "^4.6"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "phpDocumentor\\Reflection\\": [
- "src"
- ]
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Jaap van Otterdijk",
- "email": "opensource@ijaap.nl"
- }
- ],
- "description": "Common reflection classes used by phpdocumentor to reflect the code structure",
- "homepage": "http://www.phpdoc.org/",
- "keywords": [
- "FQSEN",
- "phpDocumentor",
- "phpdoc",
- "reflection",
- "static analysis"
- ],
- "time": "2015-12-27 11:43:31"
- },
- {
- "name": "phpdocumentor/reflection-docblock",
- "version": "3.1.1",
- "source": {
- "type": "git",
- "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git",
- "reference": "8331b5efe816ae05461b7ca1e721c01b46bafb3e"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/8331b5efe816ae05461b7ca1e721c01b46bafb3e",
- "reference": "8331b5efe816ae05461b7ca1e721c01b46bafb3e",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5",
- "phpdocumentor/reflection-common": "^1.0@dev",
- "phpdocumentor/type-resolver": "^0.2.0",
- "webmozart/assert": "^1.0"
- },
- "require-dev": {
- "mockery/mockery": "^0.9.4",
- "phpunit/phpunit": "^4.4"
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "phpDocumentor\\Reflection\\": [
- "src/"
- ]
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Mike van Riel",
- "email": "me@mikevanriel.com"
- }
- ],
- "description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.",
- "time": "2016-09-30 07:12:33"
- },
- {
- "name": "phpdocumentor/type-resolver",
- "version": "0.2.1",
- "source": {
- "type": "git",
- "url": "https://github.com/phpDocumentor/TypeResolver.git",
- "reference": "e224fb2ea2fba6d3ad6fdaef91cd09a172155ccb"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/e224fb2ea2fba6d3ad6fdaef91cd09a172155ccb",
- "reference": "e224fb2ea2fba6d3ad6fdaef91cd09a172155ccb",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5",
- "phpdocumentor/reflection-common": "^1.0"
- },
- "require-dev": {
- "mockery/mockery": "^0.9.4",
- "phpunit/phpunit": "^5.2||^4.8.24"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "phpDocumentor\\Reflection\\": [
- "src/"
- ]
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Mike van Riel",
- "email": "me@mikevanriel.com"
- }
- ],
- "time": "2016-11-25 06:54:22"
- },
- {
- "name": "phpspec/prophecy",
- "version": "v1.6.2",
- "source": {
- "type": "git",
- "url": "https://github.com/phpspec/prophecy.git",
- "reference": "6c52c2722f8460122f96f86346600e1077ce22cb"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phpspec/prophecy/zipball/6c52c2722f8460122f96f86346600e1077ce22cb",
- "reference": "6c52c2722f8460122f96f86346600e1077ce22cb",
- "shasum": ""
- },
- "require": {
- "doctrine/instantiator": "^1.0.2",
- "php": "^5.3|^7.0",
- "phpdocumentor/reflection-docblock": "^2.0|^3.0.2",
- "sebastian/comparator": "^1.1",
- "sebastian/recursion-context": "^1.0|^2.0"
- },
- "require-dev": {
- "phpspec/phpspec": "^2.0",
- "phpunit/phpunit": "^4.8 || ^5.6.5"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.6.x-dev"
- }
- },
- "autoload": {
- "psr-0": {
- "Prophecy\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Konstantin Kudryashov",
- "email": "ever.zet@gmail.com",
- "homepage": "http://everzet.com/"
- },
- {
- "name": "Marcello Duarte",
- "email": "marcello.duarte@gmail.com"
- }
- ],
- "description": "Highly opinionated mocking framework for PHP 5.3+",
- "homepage": "https://github.com/phpspec/prophecy",
- "keywords": [
- "Double",
- "Dummy",
- "fake",
- "mock",
- "spy",
- "stub"
- ],
- "time": "2016-11-21 14:58:47"
- },
- {
- "name": "phpunit/php-code-coverage",
- "version": "2.2.4",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-code-coverage.git",
- "reference": "eabf68b476ac7d0f73793aada060f1c1a9bf8979"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/eabf68b476ac7d0f73793aada060f1c1a9bf8979",
- "reference": "eabf68b476ac7d0f73793aada060f1c1a9bf8979",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3",
- "phpunit/php-file-iterator": "~1.3",
- "phpunit/php-text-template": "~1.2",
- "phpunit/php-token-stream": "~1.3",
- "sebastian/environment": "^1.3.2",
- "sebastian/version": "~1.0"
- },
- "require-dev": {
- "ext-xdebug": ">=2.1.4",
- "phpunit/phpunit": "~4"
- },
- "suggest": {
- "ext-dom": "*",
- "ext-xdebug": ">=2.2.1",
- "ext-xmlwriter": "*"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.2.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sb@sebastian-bergmann.de",
- "role": "lead"
- }
- ],
- "description": "Library that provides collection, processing, and rendering functionality for PHP code coverage information.",
- "homepage": "https://github.com/sebastianbergmann/php-code-coverage",
- "keywords": [
- "coverage",
- "testing",
- "xunit"
- ],
- "time": "2015-10-06 15:47:00"
- },
- {
- "name": "phpunit/php-file-iterator",
- "version": "1.4.2",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-file-iterator.git",
- "reference": "3cc8f69b3028d0f96a9078e6295d86e9bf019be5"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/3cc8f69b3028d0f96a9078e6295d86e9bf019be5",
- "reference": "3cc8f69b3028d0f96a9078e6295d86e9bf019be5",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.4.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sb@sebastian-bergmann.de",
- "role": "lead"
- }
- ],
- "description": "FilterIterator implementation that filters files based on a list of suffixes.",
- "homepage": "https://github.com/sebastianbergmann/php-file-iterator/",
- "keywords": [
- "filesystem",
- "iterator"
- ],
- "time": "2016-10-03 07:40:28"
- },
- {
- "name": "phpunit/php-text-template",
- "version": "1.2.1",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-text-template.git",
- "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/31f8b717e51d9a2afca6c9f046f5d69fc27c8686",
- "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "type": "library",
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de",
- "role": "lead"
- }
- ],
- "description": "Simple template engine.",
- "homepage": "https://github.com/sebastianbergmann/php-text-template/",
- "keywords": [
- "template"
- ],
- "time": "2015-06-21 13:50:34"
- },
- {
- "name": "phpunit/php-timer",
- "version": "1.0.8",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-timer.git",
- "reference": "38e9124049cf1a164f1e4537caf19c99bf1eb260"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/38e9124049cf1a164f1e4537caf19c99bf1eb260",
- "reference": "38e9124049cf1a164f1e4537caf19c99bf1eb260",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4|~5"
- },
- "type": "library",
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sb@sebastian-bergmann.de",
- "role": "lead"
- }
- ],
- "description": "Utility class for timing",
- "homepage": "https://github.com/sebastianbergmann/php-timer/",
- "keywords": [
- "timer"
- ],
- "time": "2016-05-12 18:03:57"
- },
- {
- "name": "phpunit/php-token-stream",
- "version": "1.4.9",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-token-stream.git",
- "reference": "3b402f65a4cc90abf6e1104e388b896ce209631b"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/3b402f65a4cc90abf6e1104e388b896ce209631b",
- "reference": "3b402f65a4cc90abf6e1104e388b896ce209631b",
- "shasum": ""
- },
- "require": {
- "ext-tokenizer": "*",
- "php": ">=5.3.3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.2"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.4-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Wrapper around PHP's tokenizer extension.",
- "homepage": "https://github.com/sebastianbergmann/php-token-stream/",
- "keywords": [
- "tokenizer"
- ],
- "time": "2016-11-15 14:06:22"
- },
- {
- "name": "phpunit/phpunit",
- "version": "4.8.31",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/phpunit.git",
- "reference": "98b2b39a520766bec663ff5b7ff1b729db9dbfe3"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/98b2b39a520766bec663ff5b7ff1b729db9dbfe3",
- "reference": "98b2b39a520766bec663ff5b7ff1b729db9dbfe3",
- "shasum": ""
- },
- "require": {
- "ext-dom": "*",
- "ext-json": "*",
- "ext-pcre": "*",
- "ext-reflection": "*",
- "ext-spl": "*",
- "php": ">=5.3.3",
- "phpspec/prophecy": "^1.3.1",
- "phpunit/php-code-coverage": "~2.1",
- "phpunit/php-file-iterator": "~1.4",
- "phpunit/php-text-template": "~1.2",
- "phpunit/php-timer": "^1.0.6",
- "phpunit/phpunit-mock-objects": "~2.3",
- "sebastian/comparator": "~1.2.2",
- "sebastian/diff": "~1.2",
- "sebastian/environment": "~1.3",
- "sebastian/exporter": "~1.2",
- "sebastian/global-state": "~1.0",
- "sebastian/version": "~1.0",
- "symfony/yaml": "~2.1|~3.0"
- },
- "suggest": {
- "phpunit/php-invoker": "~1.1"
- },
- "bin": [
- "phpunit"
- ],
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "4.8.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de",
- "role": "lead"
- }
- ],
- "description": "The PHP Unit Testing framework.",
- "homepage": "https://phpunit.de/",
- "keywords": [
- "phpunit",
- "testing",
- "xunit"
- ],
- "time": "2016-12-09 02:45:31"
- },
- {
- "name": "phpunit/phpunit-mock-objects",
- "version": "2.3.8",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/phpunit-mock-objects.git",
- "reference": "ac8e7a3db35738d56ee9a76e78a4e03d97628983"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/phpunit-mock-objects/zipball/ac8e7a3db35738d56ee9a76e78a4e03d97628983",
- "reference": "ac8e7a3db35738d56ee9a76e78a4e03d97628983",
- "shasum": ""
- },
- "require": {
- "doctrine/instantiator": "^1.0.2",
- "php": ">=5.3.3",
- "phpunit/php-text-template": "~1.2",
- "sebastian/exporter": "~1.2"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.4"
- },
- "suggest": {
- "ext-soap": "*"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.3.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sb@sebastian-bergmann.de",
- "role": "lead"
- }
- ],
- "description": "Mock Object library for PHPUnit",
- "homepage": "https://github.com/sebastianbergmann/phpunit-mock-objects/",
- "keywords": [
- "mock",
- "xunit"
- ],
- "time": "2015-10-02 06:51:40"
- },
- {
- "name": "sebastian/comparator",
- "version": "1.2.2",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/comparator.git",
- "reference": "6a1ed12e8b2409076ab22e3897126211ff8b1f7f"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/6a1ed12e8b2409076ab22e3897126211ff8b1f7f",
- "reference": "6a1ed12e8b2409076ab22e3897126211ff8b1f7f",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3",
- "sebastian/diff": "~1.2",
- "sebastian/exporter": "~1.2 || ~2.0"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.4"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.2.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Jeff Welch",
- "email": "whatthejeff@gmail.com"
- },
- {
- "name": "Volker Dusch",
- "email": "github@wallbash.com"
- },
- {
- "name": "Bernhard Schussek",
- "email": "bschussek@2bepublished.at"
- },
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Provides the functionality to compare PHP values for equality",
- "homepage": "http://www.github.com/sebastianbergmann/comparator",
- "keywords": [
- "comparator",
- "compare",
- "equality"
- ],
- "time": "2016-11-19 09:18:40"
- },
- {
- "name": "sebastian/diff",
- "version": "1.4.1",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/diff.git",
- "reference": "13edfd8706462032c2f52b4b862974dd46b71c9e"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/13edfd8706462032c2f52b4b862974dd46b71c9e",
- "reference": "13edfd8706462032c2f52b4b862974dd46b71c9e",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.8"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.4-dev"
- }
- },
- "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"
- }
- ],
- "description": "Diff implementation",
- "homepage": "https://github.com/sebastianbergmann/diff",
- "keywords": [
- "diff"
- ],
- "time": "2015-12-08 07:14:41"
- },
- {
- "name": "sebastian/environment",
- "version": "1.3.8",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/environment.git",
- "reference": "be2c607e43ce4c89ecd60e75c6a85c126e754aea"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/be2c607e43ce4c89ecd60e75c6a85c126e754aea",
- "reference": "be2c607e43ce4c89ecd60e75c6a85c126e754aea",
- "shasum": ""
- },
- "require": {
- "php": "^5.3.3 || ^7.0"
- },
- "require-dev": {
- "phpunit/phpunit": "^4.8 || ^5.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.3.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Provides functionality to handle HHVM/PHP environments",
- "homepage": "http://www.github.com/sebastianbergmann/environment",
- "keywords": [
- "Xdebug",
- "environment",
- "hhvm"
- ],
- "time": "2016-08-18 05:49:44"
- },
- {
- "name": "sebastian/exporter",
- "version": "1.2.2",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/exporter.git",
- "reference": "42c4c2eec485ee3e159ec9884f95b431287edde4"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/42c4c2eec485ee3e159ec9884f95b431287edde4",
- "reference": "42c4c2eec485ee3e159ec9884f95b431287edde4",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3",
- "sebastian/recursion-context": "~1.0"
- },
- "require-dev": {
- "ext-mbstring": "*",
- "phpunit/phpunit": "~4.4"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.3.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Jeff Welch",
- "email": "whatthejeff@gmail.com"
- },
- {
- "name": "Volker Dusch",
- "email": "github@wallbash.com"
- },
- {
- "name": "Bernhard Schussek",
- "email": "bschussek@2bepublished.at"
- },
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- },
- {
- "name": "Adam Harvey",
- "email": "aharvey@php.net"
- }
- ],
- "description": "Provides the functionality to export PHP variables for visualization",
- "homepage": "http://www.github.com/sebastianbergmann/exporter",
- "keywords": [
- "export",
- "exporter"
- ],
- "time": "2016-06-17 09:04:28"
- },
- {
- "name": "sebastian/global-state",
- "version": "1.1.1",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/global-state.git",
- "reference": "bc37d50fea7d017d3d340f230811c9f1d7280af4"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/bc37d50fea7d017d3d340f230811c9f1d7280af4",
- "reference": "bc37d50fea7d017d3d340f230811c9f1d7280af4",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.2"
- },
- "suggest": {
- "ext-uopz": "*"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Snapshotting of global state",
- "homepage": "http://www.github.com/sebastianbergmann/global-state",
- "keywords": [
- "global state"
- ],
- "time": "2015-10-12 03:26:01"
- },
- {
- "name": "sebastian/recursion-context",
- "version": "1.0.2",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/recursion-context.git",
- "reference": "913401df809e99e4f47b27cdd781f4a258d58791"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/913401df809e99e4f47b27cdd781f4a258d58791",
- "reference": "913401df809e99e4f47b27cdd781f4a258d58791",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.4"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Jeff Welch",
- "email": "whatthejeff@gmail.com"
- },
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- },
- {
- "name": "Adam Harvey",
- "email": "aharvey@php.net"
- }
- ],
- "description": "Provides functionality to recursively process PHP variables",
- "homepage": "http://www.github.com/sebastianbergmann/recursion-context",
- "time": "2015-11-11 19:50:13"
- },
- {
- "name": "sebastian/version",
- "version": "1.0.6",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/version.git",
- "reference": "58b3a85e7999757d6ad81c787a1fbf5ff6c628c6"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/58b3a85e7999757d6ad81c787a1fbf5ff6c628c6",
- "reference": "58b3a85e7999757d6ad81c787a1fbf5ff6c628c6",
- "shasum": ""
- },
- "type": "library",
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de",
- "role": "lead"
- }
- ],
- "description": "Library that helps with managing the version number of Git-hosted PHP projects",
- "homepage": "https://github.com/sebastianbergmann/version",
- "time": "2015-06-21 13:59:46"
- },
- {
- "name": "symfony/browser-kit",
- "version": "v3.2.1",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/browser-kit.git",
- "reference": "34348c2691ce6254e8e008026f4c5e72c22bb318"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/browser-kit/zipball/34348c2691ce6254e8e008026f4c5e72c22bb318",
- "reference": "34348c2691ce6254e8e008026f4c5e72c22bb318",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9",
- "symfony/dom-crawler": "~2.8|~3.0"
- },
- "require-dev": {
- "symfony/css-selector": "~2.8|~3.0",
- "symfony/process": "~2.8|~3.0"
- },
- "suggest": {
- "symfony/process": ""
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.2-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\BrowserKit\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony BrowserKit Component",
- "homepage": "https://symfony.com/",
- "time": "2016-10-13 13:35:11"
- },
- {
- "name": "symfony/dom-crawler",
- "version": "v3.2.1",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/dom-crawler.git",
- "reference": "1638c7534a8a2fa0bf9e979f9aacb6d7e8e9e24e"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/1638c7534a8a2fa0bf9e979f9aacb6d7e8e9e24e",
- "reference": "1638c7534a8a2fa0bf9e979f9aacb6d7e8e9e24e",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9",
- "symfony/polyfill-mbstring": "~1.0"
- },
- "require-dev": {
- "symfony/css-selector": "~2.8|~3.0"
- },
- "suggest": {
- "symfony/css-selector": ""
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.2-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\DomCrawler\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony DomCrawler Component",
- "homepage": "https://symfony.com/",
- "time": "2016-12-10 14:24:53"
- },
- {
- "name": "symfony/process",
- "version": "v3.2.1",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/process.git",
- "reference": "02ea84847aad71be7e32056408bb19f3a616cdd3"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/process/zipball/02ea84847aad71be7e32056408bb19f3a616cdd3",
- "reference": "02ea84847aad71be7e32056408bb19f3a616cdd3",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.2-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\Process\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony Process Component",
- "homepage": "https://symfony.com/",
- "time": "2016-11-24 10:40:28"
- },
- {
- "name": "symfony/yaml",
- "version": "v3.2.1",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/yaml.git",
- "reference": "a7095af4b97a0955f85c8989106c249fa649011f"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/yaml/zipball/a7095af4b97a0955f85c8989106c249fa649011f",
- "reference": "a7095af4b97a0955f85c8989106c249fa649011f",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9"
- },
- "require-dev": {
- "symfony/console": "~2.8|~3.0"
- },
- "suggest": {
- "symfony/console": "For validating YAML files using the lint command"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.2-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\Yaml\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony Yaml Component",
- "homepage": "https://symfony.com/",
- "time": "2016-12-10 10:07:06"
- },
- {
- "name": "webmozart/assert",
- "version": "1.2.0",
- "source": {
- "type": "git",
- "url": "https://github.com/webmozart/assert.git",
- "reference": "2db61e59ff05fe5126d152bd0655c9ea113e550f"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/webmozart/assert/zipball/2db61e59ff05fe5126d152bd0655c9ea113e550f",
- "reference": "2db61e59ff05fe5126d152bd0655c9ea113e550f",
- "shasum": ""
- },
- "require": {
- "php": "^5.3.3 || ^7.0"
- },
- "require-dev": {
- "phpunit/phpunit": "^4.6",
- "sebastian/version": "^1.0.1"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.3-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Webmozart\\Assert\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Bernhard Schussek",
- "email": "bschussek@gmail.com"
- }
- ],
- "description": "Assertions to validate method input/output with nice error messages.",
- "keywords": [
- "assert",
- "check",
- "validate"
- ],
- "time": "2016-11-23 20:04:58"
- }
- ],
- "aliases": [],
- "minimum-stability": "stable",
- "stability-flags": [],
- "prefer-stable": false,
- "prefer-lowest": false,
- "platform": [],
- "platform-dev": []
-}
diff --git a/appengine/flexible/datastore/index.php b/appengine/flexible/datastore/index.php
index 1fe28e68c2..3fc7a490f3 100644
--- a/appengine/flexible/datastore/index.php
+++ b/appengine/flexible/datastore/index.php
@@ -23,6 +23,4 @@
// Run the app!
// use "gcloud app deploy"
-$app['debug'] = true;
-$app['project_id'] = getenv('GCLOUD_PROJECT');
$app->run();
diff --git a/appengine/flexible/datastore/phpunit.xml b/appengine/flexible/datastore/phpunit.xml
deleted file mode 100644
index 21e45651dd..0000000000
--- a/appengine/flexible/datastore/phpunit.xml
+++ /dev/null
@@ -1,16 +0,0 @@
-
-
-
-
- tests
-
-
-
-
-
-
-
- app.php
-
-
-
diff --git a/appengine/flexible/datastore/phpunit.xml.dist b/appengine/flexible/datastore/phpunit.xml.dist
new file mode 100644
index 0000000000..2dab33826f
--- /dev/null
+++ b/appengine/flexible/datastore/phpunit.xml.dist
@@ -0,0 +1,35 @@
+
+
+
+
+
+ test
+ test/DeployTest.php
+
+
+
+
+
+
+
+ app.php
+
+ ./vendor
+
+
+
+
diff --git a/appengine/flexible/datastore/test/DeployTest.php b/appengine/flexible/datastore/test/DeployTest.php
new file mode 100644
index 0000000000..90b0179a5c
--- /dev/null
+++ b/appengine/flexible/datastore/test/DeployTest.php
@@ -0,0 +1,35 @@
+client->get('/');
+ $this->assertEquals('200', $resp->getStatusCode(),
+ 'top page status code');
+
+ $this->assertStringContainsString('Last 10 visits:', (string) $resp->getBody());
+ }
+}
diff --git a/appengine/flexible/datastore/test/LocalTest.php b/appengine/flexible/datastore/test/LocalTest.php
new file mode 100644
index 0000000000..21ba929c28
--- /dev/null
+++ b/appengine/flexible/datastore/test/LocalTest.php
@@ -0,0 +1,38 @@
+createRequest('GET', '/');
+ $response = $app->handle($request);
+ $this->assertEquals(200, $response->getStatusCode());
+ $text = (string) $response->getBody();
+ $this->assertStringContainsString('Last 10 visits:', $text);
+ }
+}
diff --git a/appengine/flexible/datastore/tests/DeployTest.php b/appengine/flexible/datastore/tests/DeployTest.php
deleted file mode 100644
index 21977542aa..0000000000
--- a/appengine/flexible/datastore/tests/DeployTest.php
+++ /dev/null
@@ -1,34 +0,0 @@
-client->get('/');
- $this->assertEquals('200', $resp->getStatusCode(),
- 'top page status code');
-
- $this->assertContains("Last 10 visits:", (string) $resp->getBody());
- }
-}
diff --git a/appengine/flexible/datastore/tests/LocalTest.php b/appengine/flexible/datastore/tests/LocalTest.php
deleted file mode 100644
index 49f69d409f..0000000000
--- a/appengine/flexible/datastore/tests/LocalTest.php
+++ /dev/null
@@ -1,48 +0,0 @@
-client = $this->createClient();
- }
-
- public function createApplication()
- {
- $app = require __DIR__ . '/../app.php';
- if (!$projectId = getenv('GCLOUD_PROJECT')) {
- $this->markTestSkipped('Must set GCLOUD_PROJECT');
- }
- $app['project_id'] = $projectId;
- return $app;
- }
-
- public function testIndex()
- {
- // Access the modules app top page.
- $client = $this->client;
- $client->request('GET', '/');
- $this->assertTrue($client->getResponse()->isOk());
- $text = $client->getResponse()->getContent();
- $this->assertContains("Last 10 visits:", $text);
- }
-}
diff --git a/appengine/flexible/datastore/tests/bootstrap.php b/appengine/flexible/datastore/tests/bootstrap.php
deleted file mode 100644
index 855a955f73..0000000000
--- a/appengine/flexible/datastore/tests/bootstrap.php
+++ /dev/null
@@ -1,17 +0,0 @@
-=5.4.0",
- "phpdocumentor/reflection-docblock": "^2.0|^3.0.2",
- "psr/log": "~1",
- "symfony/console": "^2.8|~3",
- "symfony/event-dispatcher": "^2.5|~3",
- "symfony/finder": "^2.5|~3"
- },
- "require-dev": {
- "phpunit/phpunit": "4.*",
- "satooshi/php-coveralls": "^1.0",
- "squizlabs/php_codesniffer": "^2.7"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Consolidation\\AnnotatedCommand\\": "src"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Greg Anderson",
- "email": "greg.1.anderson@greenknowe.org"
- }
- ],
- "description": "Initialize Symfony Console commands from annotated command class methods.",
- "time": "2016-11-14 23:51:12"
- },
- {
- "name": "consolidation/output-formatters",
- "version": "2.1.3",
- "source": {
- "type": "git",
- "url": "https://github.com/consolidation/output-formatters.git",
- "reference": "664722e42208d41c556b40e5ecbf2925b7f26e89"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/consolidation/output-formatters/zipball/664722e42208d41c556b40e5ecbf2925b7f26e89",
- "reference": "664722e42208d41c556b40e5ecbf2925b7f26e89",
- "shasum": ""
- },
- "require": {
- "php": ">=5.4.0",
- "symfony/console": "~2.5|~3.0",
- "symfony/finder": "~2.5|~3.0",
- "victorjonsson/markdowndocs": "^1.3"
- },
- "require-dev": {
- "phpunit/phpunit": "4.*",
- "satooshi/php-coveralls": "^1.0",
- "squizlabs/php_codesniffer": "2.*"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Consolidation\\OutputFormatters\\": "src"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Greg Anderson",
- "email": "greg.1.anderson@greenknowe.org"
- }
- ],
- "description": "Format text by applying transformations provided by plug-in formatters.",
- "time": "2016-11-10 23:25:21"
- },
- {
- "name": "dnoegel/php-xdg-base-dir",
- "version": "0.1",
- "source": {
- "type": "git",
- "url": "https://github.com/dnoegel/php-xdg-base-dir.git",
- "reference": "265b8593498b997dc2d31e75b89f053b5cc9621a"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/dnoegel/php-xdg-base-dir/zipball/265b8593498b997dc2d31e75b89f053b5cc9621a",
- "reference": "265b8593498b997dc2d31e75b89f053b5cc9621a",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.2"
- },
- "require-dev": {
- "phpunit/phpunit": "@stable"
- },
- "type": "project",
- "autoload": {
- "psr-4": {
- "XdgBaseDir\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "description": "implementation of xdg base directory specification for php",
- "time": "2014-10-24 07:27:01"
- },
- {
- "name": "drush/drush",
- "version": "8.1.7",
- "source": {
- "type": "git",
- "url": "https://github.com/drush-ops/drush.git",
- "reference": "0a79c9c5c1c368afc36c583612ec882eec3be285"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/drush-ops/drush/zipball/0a79c9c5c1c368afc36c583612ec882eec3be285",
- "reference": "0a79c9c5c1c368afc36c583612ec882eec3be285",
- "shasum": ""
- },
- "require": {
- "consolidation/annotated-command": "~2",
- "consolidation/output-formatters": "~2",
- "pear/console_table": "~1.3.0",
- "php": ">=5.4.5",
- "phpdocumentor/reflection-docblock": "^2.0",
- "psr/log": "~1.0",
- "psy/psysh": "~0.6",
- "symfony/console": "~2.7",
- "symfony/event-dispatcher": "~2.7",
- "symfony/finder": "~2.7",
- "symfony/var-dumper": "~2.7",
- "symfony/yaml": "~2.3",
- "webmozart/path-util": "~2"
- },
- "require-dev": {
- "phpunit/phpunit": "4.*",
- "symfony/process": "2.7.*"
- },
- "suggest": {
- "drush/config-extra": "Provides configuration workflow commands, such as config-merge.",
- "ext-pcntl": "*"
- },
- "bin": [
- "drush",
- "drush.launcher",
- "drush.php",
- "drush.complete.sh"
- ],
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "8.0.x-dev"
- }
- },
- "autoload": {
- "psr-0": {
- "Drush": "lib/",
- "Consolidation": "lib/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "GPL-2.0+"
- ],
- "authors": [
- {
- "name": "Moshe Weitzman",
- "email": "weitzman@tejasa.com"
- },
- {
- "name": "Owen Barton",
- "email": "drupal@owenbarton.com"
- },
- {
- "name": "Mark Sonnabaum",
- "email": "marksonnabaum@gmail.com"
- },
- {
- "name": "Antoine Beaupré",
- "email": "anarcat@koumbit.org"
- },
- {
- "name": "Greg Anderson",
- "email": "greg.1.anderson@greenknowe.org"
- },
- {
- "name": "Jonathan Araña Cruz",
- "email": "jonhattan@faita.net"
- },
- {
- "name": "Jonathan Hedstrom",
- "email": "jhedstrom@gmail.com"
- },
- {
- "name": "Christopher Gervais",
- "email": "chris@ergonlogic.com"
- },
- {
- "name": "Dave Reid",
- "email": "dave@davereid.net"
- },
- {
- "name": "Damian Lee",
- "email": "damiankloip@googlemail.com"
- }
- ],
- "description": "Drush is a command line shell and scripting interface for Drupal, a veritable Swiss Army knife designed to make life easier for those of us who spend some of our working hours hacking away at the command prompt.",
- "homepage": "http://www.drush.org/",
- "time": "2016-10-24 21:42:22"
- },
- {
- "name": "jakub-onderka/php-console-color",
- "version": "0.1",
- "source": {
- "type": "git",
- "url": "https://github.com/JakubOnderka/PHP-Console-Color.git",
- "reference": "e0b393dacf7703fc36a4efc3df1435485197e6c1"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/JakubOnderka/PHP-Console-Color/zipball/e0b393dacf7703fc36a4efc3df1435485197e6c1",
- "reference": "e0b393dacf7703fc36a4efc3df1435485197e6c1",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.2"
- },
- "require-dev": {
- "jakub-onderka/php-code-style": "1.0",
- "jakub-onderka/php-parallel-lint": "0.*",
- "jakub-onderka/php-var-dump-check": "0.*",
- "phpunit/phpunit": "3.7.*",
- "squizlabs/php_codesniffer": "1.*"
- },
- "type": "library",
- "autoload": {
- "psr-0": {
- "JakubOnderka\\PhpConsoleColor": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-2-Clause"
- ],
- "authors": [
- {
- "name": "Jakub Onderka",
- "email": "jakub.onderka@gmail.com",
- "homepage": "http://www.acci.cz/"
- }
- ],
- "time": "2014-04-08 15:00:19"
- },
- {
- "name": "jakub-onderka/php-console-highlighter",
- "version": "v0.3.2",
- "source": {
- "type": "git",
- "url": "https://github.com/JakubOnderka/PHP-Console-Highlighter.git",
- "reference": "7daa75df45242c8d5b75a22c00a201e7954e4fb5"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/JakubOnderka/PHP-Console-Highlighter/zipball/7daa75df45242c8d5b75a22c00a201e7954e4fb5",
- "reference": "7daa75df45242c8d5b75a22c00a201e7954e4fb5",
- "shasum": ""
- },
- "require": {
- "jakub-onderka/php-console-color": "~0.1",
- "php": ">=5.3.0"
- },
- "require-dev": {
- "jakub-onderka/php-code-style": "~1.0",
- "jakub-onderka/php-parallel-lint": "~0.5",
- "jakub-onderka/php-var-dump-check": "~0.1",
- "phpunit/phpunit": "~4.0",
- "squizlabs/php_codesniffer": "~1.5"
- },
- "type": "library",
- "autoload": {
- "psr-0": {
- "JakubOnderka\\PhpConsoleHighlighter": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Jakub Onderka",
- "email": "acci@acci.cz",
- "homepage": "http://www.acci.cz/"
- }
- ],
- "time": "2015-04-20 18:58:01"
- },
- {
- "name": "nikic/php-parser",
- "version": "v2.1.1",
- "source": {
- "type": "git",
- "url": "https://github.com/nikic/PHP-Parser.git",
- "reference": "4dd659edadffdc2143e4753df655d866dbfeedf0"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/4dd659edadffdc2143e4753df655d866dbfeedf0",
- "reference": "4dd659edadffdc2143e4753df655d866dbfeedf0",
- "shasum": ""
- },
- "require": {
- "ext-tokenizer": "*",
- "php": ">=5.4"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.0"
- },
- "bin": [
- "bin/php-parse"
- ],
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.1-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "PhpParser\\": "lib/PhpParser"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Nikita Popov"
- }
- ],
- "description": "A PHP parser written in PHP",
- "keywords": [
- "parser",
- "php"
- ],
- "time": "2016-09-16 12:04:44"
- },
- {
- "name": "pear/console_table",
- "version": "v1.3.0",
- "source": {
- "type": "git",
- "url": "https://github.com/pear/Console_Table.git",
- "reference": "64100b9ee81852f4fa17823e55d0b385a544f976"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/pear/Console_Table/zipball/64100b9ee81852f4fa17823e55d0b385a544f976",
- "reference": "64100b9ee81852f4fa17823e55d0b385a544f976",
- "shasum": ""
- },
- "require": {
- "php": ">=5.2.0"
- },
- "suggest": {
- "pear/Console_Color2": ">=0.1.2"
- },
- "type": "library",
- "autoload": {
- "classmap": [
- "Table.php"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-2-Clause"
- ],
- "authors": [
- {
- "name": "Jan Schneider",
- "homepage": "http://pear.php.net/user/yunosh"
- },
- {
- "name": "Tal Peer",
- "homepage": "http://pear.php.net/user/tal"
- },
- {
- "name": "Xavier Noguer",
- "homepage": "http://pear.php.net/user/xnoguer"
- },
- {
- "name": "Richard Heyes",
- "homepage": "http://pear.php.net/user/richard"
- }
- ],
- "description": "Library that makes it easy to build console style tables.",
- "homepage": "http://pear.php.net/package/Console_Table/",
- "keywords": [
- "console"
- ],
- "time": "2016-01-21 16:14:31"
- },
- {
- "name": "phpdocumentor/reflection-docblock",
- "version": "2.0.4",
- "source": {
- "type": "git",
- "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git",
- "reference": "d68dbdc53dc358a816f00b300704702b2eaff7b8"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/d68dbdc53dc358a816f00b300704702b2eaff7b8",
- "reference": "d68dbdc53dc358a816f00b300704702b2eaff7b8",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.0"
- },
- "suggest": {
- "dflydev/markdown": "~1.0",
- "erusev/parsedown": "~1.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.0.x-dev"
- }
- },
- "autoload": {
- "psr-0": {
- "phpDocumentor": [
- "src/"
- ]
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Mike van Riel",
- "email": "mike.vanriel@naenius.com"
- }
- ],
- "time": "2015-02-03 12:10:50"
- },
- {
- "name": "psr/log",
- "version": "1.0.2",
- "source": {
- "type": "git",
- "url": "https://github.com/php-fig/log.git",
- "reference": "4ebe3a8bf773a19edfe0a84b6585ba3d401b724d"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/php-fig/log/zipball/4ebe3a8bf773a19edfe0a84b6585ba3d401b724d",
- "reference": "4ebe3a8bf773a19edfe0a84b6585ba3d401b724d",
- "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": "2016-10-10 12:19:37"
- },
- {
- "name": "psy/psysh",
- "version": "v0.7.2",
- "source": {
- "type": "git",
- "url": "https://github.com/bobthecow/psysh.git",
- "reference": "e64e10b20f8d229cac76399e1f3edddb57a0f280"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/bobthecow/psysh/zipball/e64e10b20f8d229cac76399e1f3edddb57a0f280",
- "reference": "e64e10b20f8d229cac76399e1f3edddb57a0f280",
- "shasum": ""
- },
- "require": {
- "dnoegel/php-xdg-base-dir": "0.1",
- "jakub-onderka/php-console-highlighter": "0.3.*",
- "nikic/php-parser": "^1.2.1|~2.0",
- "php": ">=5.3.9",
- "symfony/console": "~2.3.10|^2.4.2|~3.0",
- "symfony/var-dumper": "~2.7|~3.0"
- },
- "require-dev": {
- "fabpot/php-cs-fixer": "~1.5",
- "phpunit/phpunit": "~3.7|~4.0|~5.0",
- "squizlabs/php_codesniffer": "~2.0",
- "symfony/finder": "~2.1|~3.0"
- },
- "suggest": {
- "ext-pcntl": "Enabling the PCNTL extension makes PsySH a lot happier :)",
- "ext-pdo-sqlite": "The doc command requires SQLite to work.",
- "ext-posix": "If you have PCNTL, you'll want the POSIX extension as well.",
- "ext-readline": "Enables support for arrow-key history navigation, and showing and manipulating command history."
- },
- "bin": [
- "bin/psysh"
- ],
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-develop": "0.8.x-dev"
- }
- },
- "autoload": {
- "files": [
- "src/Psy/functions.php"
- ],
- "psr-4": {
- "Psy\\": "src/Psy/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Justin Hileman",
- "email": "justin@justinhileman.info",
- "homepage": "http://justinhileman.com/"
- }
- ],
- "description": "An interactive shell for modern PHP.",
- "homepage": "http://psysh.org/",
- "keywords": [
- "REPL",
- "console",
- "interactive",
- "shell"
- ],
- "time": "2016-03-09 05:03:14"
- },
- {
- "name": "symfony/console",
- "version": "v2.8.14",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/console.git",
- "reference": "a871ba00e0f604dceac64c56c27f99fbeaf4854e"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/console/zipball/a871ba00e0f604dceac64c56c27f99fbeaf4854e",
- "reference": "a871ba00e0f604dceac64c56c27f99fbeaf4854e",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.9",
- "symfony/debug": "~2.7,>=2.7.2|~3.0.0",
- "symfony/polyfill-mbstring": "~1.0"
- },
- "require-dev": {
- "psr/log": "~1.0",
- "symfony/event-dispatcher": "~2.1|~3.0.0",
- "symfony/process": "~2.1|~3.0.0"
- },
- "suggest": {
- "psr/log": "For using the console logger",
- "symfony/event-dispatcher": "",
- "symfony/process": ""
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.8-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\Console\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony Console Component",
- "homepage": "https://symfony.com/",
- "time": "2016-11-15 23:02:12"
- },
- {
- "name": "symfony/debug",
- "version": "v3.0.9",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/debug.git",
- "reference": "697c527acd9ea1b2d3efac34d9806bf255278b0a"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/debug/zipball/697c527acd9ea1b2d3efac34d9806bf255278b0a",
- "reference": "697c527acd9ea1b2d3efac34d9806bf255278b0a",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9",
- "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"
- },
- "require-dev": {
- "symfony/class-loader": "~2.8|~3.0",
- "symfony/http-kernel": "~2.8|~3.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.0-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\Debug\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "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": "2016-07-30 07:22:48"
- },
- {
- "name": "symfony/event-dispatcher",
- "version": "v2.8.14",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/event-dispatcher.git",
- "reference": "25c576abd4e0f212e678fe8b2bd9a9a98c7ea934"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/25c576abd4e0f212e678fe8b2bd9a9a98c7ea934",
- "reference": "25c576abd4e0f212e678fe8b2bd9a9a98c7ea934",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.9"
- },
- "require-dev": {
- "psr/log": "~1.0",
- "symfony/config": "~2.0,>=2.0.5|~3.0.0",
- "symfony/dependency-injection": "~2.6|~3.0.0",
- "symfony/expression-language": "~2.6|~3.0.0",
- "symfony/stopwatch": "~2.3|~3.0.0"
- },
- "suggest": {
- "symfony/dependency-injection": "",
- "symfony/http-kernel": ""
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.8-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\EventDispatcher\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony EventDispatcher Component",
- "homepage": "https://symfony.com/",
- "time": "2016-10-13 01:43:15"
- },
- {
- "name": "symfony/finder",
- "version": "v2.8.14",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/finder.git",
- "reference": "0023b024363dfc0cd21262e556f25a291fe8d7fd"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/finder/zipball/0023b024363dfc0cd21262e556f25a291fe8d7fd",
- "reference": "0023b024363dfc0cd21262e556f25a291fe8d7fd",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.9"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.8-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\Finder\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony Finder Component",
- "homepage": "https://symfony.com/",
- "time": "2016-11-03 07:52:58"
- },
- {
- "name": "symfony/polyfill-mbstring",
- "version": "v1.3.0",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/polyfill-mbstring.git",
- "reference": "e79d363049d1c2128f133a2667e4f4190904f7f4"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/e79d363049d1c2128f133a2667e4f4190904f7f4",
- "reference": "e79d363049d1c2128f133a2667e4f4190904f7f4",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "suggest": {
- "ext-mbstring": "For best performance"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.3-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": "2016-11-14 01:06:16"
- },
- {
- "name": "symfony/var-dumper",
- "version": "v2.8.14",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/var-dumper.git",
- "reference": "195c6238ec319cde9204b2d7f271654ceb69b71b"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/var-dumper/zipball/195c6238ec319cde9204b2d7f271654ceb69b71b",
- "reference": "195c6238ec319cde9204b2d7f271654ceb69b71b",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.9",
- "symfony/polyfill-mbstring": "~1.0"
- },
- "require-dev": {
- "twig/twig": "~1.20|~2.0"
- },
- "suggest": {
- "ext-symfony_debug": ""
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.8-dev"
- }
- },
- "autoload": {
- "files": [
- "Resources/functions/dump.php"
- ],
- "psr-4": {
- "Symfony\\Component\\VarDumper\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "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 mechanism for exploring and dumping PHP variables",
- "homepage": "https://symfony.com/",
- "keywords": [
- "debug",
- "dump"
- ],
- "time": "2016-11-03 07:52:58"
- },
- {
- "name": "symfony/yaml",
- "version": "v2.8.14",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/yaml.git",
- "reference": "befb26a3713c97af90d25dd12e75621ef14d91ff"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/yaml/zipball/befb26a3713c97af90d25dd12e75621ef14d91ff",
- "reference": "befb26a3713c97af90d25dd12e75621ef14d91ff",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.9"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.8-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\Yaml\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony Yaml Component",
- "homepage": "https://symfony.com/",
- "time": "2016-11-14 16:15:57"
- },
- {
- "name": "victorjonsson/markdowndocs",
- "version": "1.3.7",
- "source": {
- "type": "git",
- "url": "https://github.com/victorjonsson/PHP-Markdown-Documentation-Generator.git",
- "reference": "a8244617cdce4804cd94ea508c82e8d7e29a273a"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/victorjonsson/PHP-Markdown-Documentation-Generator/zipball/a8244617cdce4804cd94ea508c82e8d7e29a273a",
- "reference": "a8244617cdce4804cd94ea508c82e8d7e29a273a",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.0",
- "symfony/console": ">=2.6"
- },
- "require-dev": {
- "phpunit/phpunit": "3.7.23"
- },
- "bin": [
- "bin/phpdoc-md"
- ],
- "type": "library",
- "autoload": {
- "psr-0": {
- "PHPDocsMD": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Victor Jonsson",
- "email": "kontakt@victorjonsson.se"
- }
- ],
- "description": "Command line tool for generating markdown-formatted class documentation",
- "homepage": "https://github.com/victorjonsson/PHP-Markdown-Documentation-Generator",
- "time": "2016-10-11 21:10:19"
- },
- {
- "name": "webmozart/assert",
- "version": "1.2.0",
- "source": {
- "type": "git",
- "url": "https://github.com/webmozart/assert.git",
- "reference": "2db61e59ff05fe5126d152bd0655c9ea113e550f"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/webmozart/assert/zipball/2db61e59ff05fe5126d152bd0655c9ea113e550f",
- "reference": "2db61e59ff05fe5126d152bd0655c9ea113e550f",
- "shasum": ""
- },
- "require": {
- "php": "^5.3.3 || ^7.0"
- },
- "require-dev": {
- "phpunit/phpunit": "^4.6",
- "sebastian/version": "^1.0.1"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.3-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Webmozart\\Assert\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Bernhard Schussek",
- "email": "bschussek@gmail.com"
- }
- ],
- "description": "Assertions to validate method input/output with nice error messages.",
- "keywords": [
- "assert",
- "check",
- "validate"
- ],
- "time": "2016-11-23 20:04:58"
- },
- {
- "name": "webmozart/path-util",
- "version": "2.3.0",
- "source": {
- "type": "git",
- "url": "https://github.com/webmozart/path-util.git",
- "reference": "d939f7edc24c9a1bb9c0dee5cb05d8e859490725"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/webmozart/path-util/zipball/d939f7edc24c9a1bb9c0dee5cb05d8e859490725",
- "reference": "d939f7edc24c9a1bb9c0dee5cb05d8e859490725",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3",
- "webmozart/assert": "~1.0"
- },
- "require-dev": {
- "phpunit/phpunit": "^4.6",
- "sebastian/version": "^1.0.1"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.3-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Webmozart\\PathUtil\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Bernhard Schussek",
- "email": "bschussek@gmail.com"
- }
- ],
- "description": "A robust cross-platform utility for normalizing, comparing and modifying file paths.",
- "time": "2015-12-17 08:42:14"
- }
- ],
- "packages-dev": [
- {
- "name": "doctrine/instantiator",
- "version": "1.0.5",
- "source": {
- "type": "git",
- "url": "https://github.com/doctrine/instantiator.git",
- "reference": "8e884e78f9f0eb1329e445619e04456e64d8051d"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/doctrine/instantiator/zipball/8e884e78f9f0eb1329e445619e04456e64d8051d",
- "reference": "8e884e78f9f0eb1329e445619e04456e64d8051d",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3,<8.0-DEV"
- },
- "require-dev": {
- "athletic/athletic": "~0.1.8",
- "ext-pdo": "*",
- "ext-phar": "*",
- "phpunit/phpunit": "~4.0",
- "squizlabs/php_codesniffer": "~2.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Doctrine\\Instantiator\\": "src/Doctrine/Instantiator/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Marco Pivetta",
- "email": "ocramius@gmail.com",
- "homepage": "http://ocramius.github.com/"
- }
- ],
- "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors",
- "homepage": "https://github.com/doctrine/instantiator",
- "keywords": [
- "constructor",
- "instantiate"
- ],
- "time": "2015-06-14 21:17:01"
- },
- {
- "name": "google/cloud-tools",
- "version": "v0.6.1",
- "source": {
- "type": "git",
- "url": "https://github.com/GoogleCloudPlatform/php-tools.git",
- "reference": "6546fab38b9ac7d9563e1ada6ed1e945eb7d10ac"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/GoogleCloudPlatform/php-tools/zipball/6546fab38b9ac7d9563e1ada6ed1e945eb7d10ac",
- "reference": "6546fab38b9ac7d9563e1ada6ed1e945eb7d10ac",
- "shasum": ""
- },
- "require": {
- "guzzlehttp/guzzle": "~5.3|~6.0",
- "php": ">=5.5",
- "phpunit/phpunit": "~4|~5",
- "symfony/browser-kit": "~2|~3",
- "symfony/process": "~2|~3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.0"
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "Google\\Cloud\\TestUtils\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "Apache-2.0"
- ],
- "authors": [
- {
- "name": "Takashi Matsuo",
- "email": "tmatsuo@google.com",
- "homepage": "https://wp.gaeflex.ninja/"
- }
- ],
- "description": "PHP tools for Google Cloud Platform",
- "homepage": "https://github.com/GoogleCloudPlatform/php-tools",
- "keywords": [
- "appengine",
- "gcp",
- "test"
- ],
- "time": "2016-12-08 21:36:15"
- },
- {
- "name": "guzzlehttp/guzzle",
- "version": "6.2.2",
- "source": {
- "type": "git",
- "url": "https://github.com/guzzle/guzzle.git",
- "reference": "ebf29dee597f02f09f4d5bbecc68230ea9b08f60"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/guzzle/guzzle/zipball/ebf29dee597f02f09f4d5bbecc68230ea9b08f60",
- "reference": "ebf29dee597f02f09f4d5bbecc68230ea9b08f60",
- "shasum": ""
- },
- "require": {
- "guzzlehttp/promises": "^1.0",
- "guzzlehttp/psr7": "^1.3.1",
- "php": ">=5.5"
- },
- "require-dev": {
- "ext-curl": "*",
- "phpunit/phpunit": "^4.0",
- "psr/log": "^1.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "6.2-dev"
- }
- },
- "autoload": {
- "files": [
- "src/functions_include.php"
- ],
- "psr-4": {
- "GuzzleHttp\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Michael Dowling",
- "email": "mtdowling@gmail.com",
- "homepage": "https://github.com/mtdowling"
- }
- ],
- "description": "Guzzle is a PHP HTTP client library",
- "homepage": "http://guzzlephp.org/",
- "keywords": [
- "client",
- "curl",
- "framework",
- "http",
- "http client",
- "rest",
- "web service"
- ],
- "time": "2016-10-08 15:01:37"
- },
- {
- "name": "guzzlehttp/promises",
- "version": "1.3.0",
- "source": {
- "type": "git",
- "url": "https://github.com/guzzle/promises.git",
- "reference": "2693c101803ca78b27972d84081d027fca790a1e"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/guzzle/promises/zipball/2693c101803ca78b27972d84081d027fca790a1e",
- "reference": "2693c101803ca78b27972d84081d027fca790a1e",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.0"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "GuzzleHttp\\Promise\\": "src/"
- },
- "files": [
- "src/functions_include.php"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Michael Dowling",
- "email": "mtdowling@gmail.com",
- "homepage": "https://github.com/mtdowling"
- }
- ],
- "description": "Guzzle promises library",
- "keywords": [
- "promise"
- ],
- "time": "2016-11-18 17:47:58"
- },
- {
- "name": "guzzlehttp/psr7",
- "version": "1.3.1",
- "source": {
- "type": "git",
- "url": "https://github.com/guzzle/psr7.git",
- "reference": "5c6447c9df362e8f8093bda8f5d8873fe5c7f65b"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/guzzle/psr7/zipball/5c6447c9df362e8f8093bda8f5d8873fe5c7f65b",
- "reference": "5c6447c9df362e8f8093bda8f5d8873fe5c7f65b",
- "shasum": ""
- },
- "require": {
- "php": ">=5.4.0",
- "psr/http-message": "~1.0"
- },
- "provide": {
- "psr/http-message-implementation": "1.0"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.4-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "GuzzleHttp\\Psr7\\": "src/"
- },
- "files": [
- "src/functions_include.php"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Michael Dowling",
- "email": "mtdowling@gmail.com",
- "homepage": "https://github.com/mtdowling"
- }
- ],
- "description": "PSR-7 message implementation",
- "keywords": [
- "http",
- "message",
- "stream",
- "uri"
- ],
- "time": "2016-06-24 23:00:38"
- },
- {
- "name": "monolog/monolog",
- "version": "1.22.0",
- "source": {
- "type": "git",
- "url": "https://github.com/Seldaek/monolog.git",
- "reference": "bad29cb8d18ab0315e6c477751418a82c850d558"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/Seldaek/monolog/zipball/bad29cb8d18ab0315e6c477751418a82c850d558",
- "reference": "bad29cb8d18ab0315e6c477751418a82c850d558",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.0",
- "psr/log": "~1.0"
- },
- "provide": {
- "psr/log-implementation": "1.0.0"
- },
- "require-dev": {
- "aws/aws-sdk-php": "^2.4.9 || ^3.0",
- "doctrine/couchdb": "~1.0@dev",
- "graylog2/gelf-php": "~1.0",
- "jakub-onderka/php-parallel-lint": "0.9",
- "php-amqplib/php-amqplib": "~2.4",
- "php-console/php-console": "^3.1.3",
- "phpunit/phpunit": "~4.5",
- "phpunit/phpunit-mock-objects": "2.3.0",
- "ruflin/elastica": ">=0.90 <3.0",
- "sentry/sentry": "^0.13",
- "swiftmailer/swiftmailer": "~5.3"
- },
- "suggest": {
- "aws/aws-sdk-php": "Allow sending log messages to AWS services like DynamoDB",
- "doctrine/couchdb": "Allow sending log messages to a CouchDB server",
- "ext-amqp": "Allow sending log messages to an AMQP server (1.0+ required)",
- "ext-mongo": "Allow sending log messages to a MongoDB server",
- "graylog2/gelf-php": "Allow sending log messages to a GrayLog2 server",
- "mongodb/mongodb": "Allow sending log messages to a MongoDB server via PHP Driver",
- "php-amqplib/php-amqplib": "Allow sending log messages to an AMQP server using php-amqplib",
- "php-console/php-console": "Allow sending log messages to Google Chrome",
- "rollbar/rollbar": "Allow sending log messages to Rollbar",
- "ruflin/elastica": "Allow sending log messages to an Elastic Search server",
- "sentry/sentry": "Allow sending log messages to a Sentry server"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.0.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Monolog\\": "src/Monolog"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Jordi Boggiano",
- "email": "j.boggiano@seld.be",
- "homepage": "http://seld.be/"
- }
- ],
- "description": "Sends your logs to files, sockets, inboxes, databases and various web services",
- "homepage": "http://github.com/Seldaek/monolog",
- "keywords": [
- "log",
- "logging",
- "psr-3"
- ],
- "time": "2016-11-26 00:15:39"
- },
- {
- "name": "myclabs/deep-copy",
- "version": "1.5.5",
- "source": {
- "type": "git",
- "url": "https://github.com/myclabs/DeepCopy.git",
- "reference": "399c1f9781e222f6eb6cc238796f5200d1b7f108"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/399c1f9781e222f6eb6cc238796f5200d1b7f108",
- "reference": "399c1f9781e222f6eb6cc238796f5200d1b7f108",
- "shasum": ""
- },
- "require": {
- "php": ">=5.4.0"
- },
- "require-dev": {
- "doctrine/collections": "1.*",
- "phpunit/phpunit": "~4.1"
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "DeepCopy\\": "src/DeepCopy/"
- }
- },
- "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",
- "duplicate",
- "object",
- "object graph"
- ],
- "time": "2016-10-31 17:19:45"
- },
- {
- "name": "paragonie/random_compat",
- "version": "v2.0.4",
- "source": {
- "type": "git",
- "url": "https://github.com/paragonie/random_compat.git",
- "reference": "a9b97968bcde1c4de2a5ec6cbd06a0f6c919b46e"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/paragonie/random_compat/zipball/a9b97968bcde1c4de2a5ec6cbd06a0f6c919b46e",
- "reference": "a9b97968bcde1c4de2a5ec6cbd06a0f6c919b46e",
- "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",
- "pseudorandom",
- "random"
- ],
- "time": "2016-11-07 23:38:38"
- },
- {
- "name": "phpspec/prophecy",
- "version": "v1.6.2",
- "source": {
- "type": "git",
- "url": "https://github.com/phpspec/prophecy.git",
- "reference": "6c52c2722f8460122f96f86346600e1077ce22cb"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phpspec/prophecy/zipball/6c52c2722f8460122f96f86346600e1077ce22cb",
- "reference": "6c52c2722f8460122f96f86346600e1077ce22cb",
- "shasum": ""
- },
- "require": {
- "doctrine/instantiator": "^1.0.2",
- "php": "^5.3|^7.0",
- "phpdocumentor/reflection-docblock": "^2.0|^3.0.2",
- "sebastian/comparator": "^1.1",
- "sebastian/recursion-context": "^1.0|^2.0"
- },
- "require-dev": {
- "phpspec/phpspec": "^2.0",
- "phpunit/phpunit": "^4.8 || ^5.6.5"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.6.x-dev"
- }
- },
- "autoload": {
- "psr-0": {
- "Prophecy\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Konstantin Kudryashov",
- "email": "ever.zet@gmail.com",
- "homepage": "http://everzet.com/"
- },
- {
- "name": "Marcello Duarte",
- "email": "marcello.duarte@gmail.com"
- }
- ],
- "description": "Highly opinionated mocking framework for PHP 5.3+",
- "homepage": "https://github.com/phpspec/prophecy",
- "keywords": [
- "Double",
- "Dummy",
- "fake",
- "mock",
- "spy",
- "stub"
- ],
- "time": "2016-11-21 14:58:47"
- },
- {
- "name": "phpunit/php-code-coverage",
- "version": "4.0.3",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-code-coverage.git",
- "reference": "903fd6318d0a90b4770a009ff73e4a4e9c437929"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/903fd6318d0a90b4770a009ff73e4a4e9c437929",
- "reference": "903fd6318d0a90b4770a009ff73e4a4e9c437929",
- "shasum": ""
- },
- "require": {
- "php": "^5.6 || ^7.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"
- },
- "require-dev": {
- "ext-xdebug": ">=2.1.4",
- "phpunit/phpunit": "^5.4"
- },
- "suggest": {
- "ext-dom": "*",
- "ext-xdebug": ">=2.4.0",
- "ext-xmlwriter": "*"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "4.0.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sb@sebastian-bergmann.de",
- "role": "lead"
- }
- ],
- "description": "Library that provides collection, processing, and rendering functionality for PHP code coverage information.",
- "homepage": "https://github.com/sebastianbergmann/php-code-coverage",
- "keywords": [
- "coverage",
- "testing",
- "xunit"
- ],
- "time": "2016-11-28 16:00:31"
- },
- {
- "name": "phpunit/php-file-iterator",
- "version": "1.4.2",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-file-iterator.git",
- "reference": "3cc8f69b3028d0f96a9078e6295d86e9bf019be5"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/3cc8f69b3028d0f96a9078e6295d86e9bf019be5",
- "reference": "3cc8f69b3028d0f96a9078e6295d86e9bf019be5",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.4.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sb@sebastian-bergmann.de",
- "role": "lead"
- }
- ],
- "description": "FilterIterator implementation that filters files based on a list of suffixes.",
- "homepage": "https://github.com/sebastianbergmann/php-file-iterator/",
- "keywords": [
- "filesystem",
- "iterator"
- ],
- "time": "2016-10-03 07:40:28"
- },
- {
- "name": "phpunit/php-text-template",
- "version": "1.2.1",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-text-template.git",
- "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/31f8b717e51d9a2afca6c9f046f5d69fc27c8686",
- "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "type": "library",
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de",
- "role": "lead"
- }
- ],
- "description": "Simple template engine.",
- "homepage": "https://github.com/sebastianbergmann/php-text-template/",
- "keywords": [
- "template"
- ],
- "time": "2015-06-21 13:50:34"
- },
- {
- "name": "phpunit/php-timer",
- "version": "1.0.8",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-timer.git",
- "reference": "38e9124049cf1a164f1e4537caf19c99bf1eb260"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/38e9124049cf1a164f1e4537caf19c99bf1eb260",
- "reference": "38e9124049cf1a164f1e4537caf19c99bf1eb260",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4|~5"
- },
- "type": "library",
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sb@sebastian-bergmann.de",
- "role": "lead"
- }
- ],
- "description": "Utility class for timing",
- "homepage": "https://github.com/sebastianbergmann/php-timer/",
- "keywords": [
- "timer"
- ],
- "time": "2016-05-12 18:03:57"
- },
- {
- "name": "phpunit/php-token-stream",
- "version": "1.4.9",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-token-stream.git",
- "reference": "3b402f65a4cc90abf6e1104e388b896ce209631b"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/3b402f65a4cc90abf6e1104e388b896ce209631b",
- "reference": "3b402f65a4cc90abf6e1104e388b896ce209631b",
- "shasum": ""
- },
- "require": {
- "ext-tokenizer": "*",
- "php": ">=5.3.3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.2"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.4-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Wrapper around PHP's tokenizer extension.",
- "homepage": "https://github.com/sebastianbergmann/php-token-stream/",
- "keywords": [
- "tokenizer"
- ],
- "time": "2016-11-15 14:06:22"
- },
- {
- "name": "phpunit/phpunit",
- "version": "5.6.7",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/phpunit.git",
- "reference": "38810e97481723ef918f6e35c03cb1014a645bd5"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/38810e97481723ef918f6e35c03cb1014a645bd5",
- "reference": "38810e97481723ef918f6e35c03cb1014a645bd5",
- "shasum": ""
- },
- "require": {
- "ext-dom": "*",
- "ext-json": "*",
- "ext-libxml": "*",
- "ext-mbstring": "*",
- "ext-xml": "*",
- "myclabs/deep-copy": "~1.3",
- "php": "^5.6 || ^7.0",
- "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.2",
- "sebastian/diff": "~1.2",
- "sebastian/environment": "^1.3 || ^2.0",
- "sebastian/exporter": "~2.0",
- "sebastian/global-state": "~1.0",
- "sebastian/object-enumerator": "~2.0",
- "sebastian/resource-operations": "~1.0",
- "sebastian/version": "~1.0|~2.0",
- "symfony/yaml": "~2.1|~3.0"
- },
- "conflict": {
- "phpdocumentor/reflection-docblock": "3.0.2"
- },
- "require-dev": {
- "ext-pdo": "*"
- },
- "suggest": {
- "ext-xdebug": "*",
- "phpunit/php-invoker": "~1.1"
- },
- "bin": [
- "phpunit"
- ],
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "5.6.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de",
- "role": "lead"
- }
- ],
- "description": "The PHP Unit Testing framework.",
- "homepage": "https://phpunit.de/",
- "keywords": [
- "phpunit",
- "testing",
- "xunit"
- ],
- "time": "2016-11-28 16:04:24"
- },
- {
- "name": "phpunit/phpunit-mock-objects",
- "version": "3.4.2",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/phpunit-mock-objects.git",
- "reference": "90a08f5deed5f7ac35463c161f2e8fa0e5652faf"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/phpunit-mock-objects/zipball/90a08f5deed5f7ac35463c161f2e8fa0e5652faf",
- "reference": "90a08f5deed5f7ac35463c161f2e8fa0e5652faf",
- "shasum": ""
- },
- "require": {
- "doctrine/instantiator": "^1.0.2",
- "php": "^5.6 || ^7.0",
- "phpunit/php-text-template": "^1.2",
- "sebastian/exporter": "^1.2 || ^2.0"
- },
- "conflict": {
- "phpunit/phpunit": "<5.4.0"
- },
- "require-dev": {
- "phpunit/phpunit": "^5.4"
- },
- "suggest": {
- "ext-soap": "*"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.2.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sb@sebastian-bergmann.de",
- "role": "lead"
- }
- ],
- "description": "Mock Object library for PHPUnit",
- "homepage": "https://github.com/sebastianbergmann/phpunit-mock-objects/",
- "keywords": [
- "mock",
- "xunit"
- ],
- "time": "2016-11-27 07:52:03"
- },
- {
- "name": "psr/http-message",
- "version": "1.0.1",
- "source": {
- "type": "git",
- "url": "https://github.com/php-fig/http-message.git",
- "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/php-fig/http-message/zipball/f6561bf28d520154e4b0ec72be95418abe6d9363",
- "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Psr\\Http\\Message\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "PHP-FIG",
- "homepage": "http://www.php-fig.org/"
- }
- ],
- "description": "Common interface for HTTP messages",
- "homepage": "https://github.com/php-fig/http-message",
- "keywords": [
- "http",
- "http-message",
- "psr",
- "psr-7",
- "request",
- "response"
- ],
- "time": "2016-08-06 14:39:51"
- },
- {
- "name": "sebastian/code-unit-reverse-lookup",
- "version": "1.0.0",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/code-unit-reverse-lookup.git",
- "reference": "c36f5e7cfce482fde5bf8d10d41a53591e0198fe"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/c36f5e7cfce482fde5bf8d10d41a53591e0198fe",
- "reference": "c36f5e7cfce482fde5bf8d10d41a53591e0198fe",
- "shasum": ""
- },
- "require": {
- "php": ">=5.6"
- },
- "require-dev": {
- "phpunit/phpunit": "~5"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Looks up which function or method a line of code belongs to",
- "homepage": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/",
- "time": "2016-02-13 06:45:14"
- },
- {
- "name": "sebastian/comparator",
- "version": "1.2.2",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/comparator.git",
- "reference": "6a1ed12e8b2409076ab22e3897126211ff8b1f7f"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/6a1ed12e8b2409076ab22e3897126211ff8b1f7f",
- "reference": "6a1ed12e8b2409076ab22e3897126211ff8b1f7f",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3",
- "sebastian/diff": "~1.2",
- "sebastian/exporter": "~1.2 || ~2.0"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.4"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.2.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Jeff Welch",
- "email": "whatthejeff@gmail.com"
- },
- {
- "name": "Volker Dusch",
- "email": "github@wallbash.com"
- },
- {
- "name": "Bernhard Schussek",
- "email": "bschussek@2bepublished.at"
- },
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Provides the functionality to compare PHP values for equality",
- "homepage": "http://www.github.com/sebastianbergmann/comparator",
- "keywords": [
- "comparator",
- "compare",
- "equality"
- ],
- "time": "2016-11-19 09:18:40"
- },
- {
- "name": "sebastian/diff",
- "version": "1.4.1",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/diff.git",
- "reference": "13edfd8706462032c2f52b4b862974dd46b71c9e"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/13edfd8706462032c2f52b4b862974dd46b71c9e",
- "reference": "13edfd8706462032c2f52b4b862974dd46b71c9e",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.8"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.4-dev"
- }
- },
- "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"
- }
- ],
- "description": "Diff implementation",
- "homepage": "https://github.com/sebastianbergmann/diff",
- "keywords": [
- "diff"
- ],
- "time": "2015-12-08 07:14:41"
- },
- {
- "name": "sebastian/environment",
- "version": "2.0.0",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/environment.git",
- "reference": "5795ffe5dc5b02460c3e34222fee8cbe245d8fac"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/5795ffe5dc5b02460c3e34222fee8cbe245d8fac",
- "reference": "5795ffe5dc5b02460c3e34222fee8cbe245d8fac",
- "shasum": ""
- },
- "require": {
- "php": "^5.6 || ^7.0"
- },
- "require-dev": {
- "phpunit/phpunit": "^5.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.0.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Provides functionality to handle HHVM/PHP environments",
- "homepage": "http://www.github.com/sebastianbergmann/environment",
- "keywords": [
- "Xdebug",
- "environment",
- "hhvm"
- ],
- "time": "2016-11-26 07:53:53"
- },
- {
- "name": "sebastian/exporter",
- "version": "2.0.0",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/exporter.git",
- "reference": "ce474bdd1a34744d7ac5d6aad3a46d48d9bac4c4"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/ce474bdd1a34744d7ac5d6aad3a46d48d9bac4c4",
- "reference": "ce474bdd1a34744d7ac5d6aad3a46d48d9bac4c4",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3",
- "sebastian/recursion-context": "~2.0"
- },
- "require-dev": {
- "ext-mbstring": "*",
- "phpunit/phpunit": "~4.4"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.0.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Jeff Welch",
- "email": "whatthejeff@gmail.com"
- },
- {
- "name": "Volker Dusch",
- "email": "github@wallbash.com"
- },
- {
- "name": "Bernhard Schussek",
- "email": "bschussek@2bepublished.at"
- },
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- },
- {
- "name": "Adam Harvey",
- "email": "aharvey@php.net"
- }
- ],
- "description": "Provides the functionality to export PHP variables for visualization",
- "homepage": "http://www.github.com/sebastianbergmann/exporter",
- "keywords": [
- "export",
- "exporter"
- ],
- "time": "2016-11-19 08:54:04"
- },
- {
- "name": "sebastian/global-state",
- "version": "1.1.1",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/global-state.git",
- "reference": "bc37d50fea7d017d3d340f230811c9f1d7280af4"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/bc37d50fea7d017d3d340f230811c9f1d7280af4",
- "reference": "bc37d50fea7d017d3d340f230811c9f1d7280af4",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.2"
- },
- "suggest": {
- "ext-uopz": "*"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Snapshotting of global state",
- "homepage": "http://www.github.com/sebastianbergmann/global-state",
- "keywords": [
- "global state"
- ],
- "time": "2015-10-12 03:26:01"
- },
- {
- "name": "sebastian/object-enumerator",
- "version": "2.0.0",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/object-enumerator.git",
- "reference": "96f8a3f257b69e8128ad74d3a7fd464bcbaa3b35"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/96f8a3f257b69e8128ad74d3a7fd464bcbaa3b35",
- "reference": "96f8a3f257b69e8128ad74d3a7fd464bcbaa3b35",
- "shasum": ""
- },
- "require": {
- "php": ">=5.6",
- "sebastian/recursion-context": "~2.0"
- },
- "require-dev": {
- "phpunit/phpunit": "~5"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.0.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Traverses array structures and object graphs to enumerate all referenced objects",
- "homepage": "https://github.com/sebastianbergmann/object-enumerator/",
- "time": "2016-11-19 07:35:10"
- },
- {
- "name": "sebastian/recursion-context",
- "version": "2.0.0",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/recursion-context.git",
- "reference": "2c3ba150cbec723aa057506e73a8d33bdb286c9a"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/2c3ba150cbec723aa057506e73a8d33bdb286c9a",
- "reference": "2c3ba150cbec723aa057506e73a8d33bdb286c9a",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.4"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.0.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Jeff Welch",
- "email": "whatthejeff@gmail.com"
- },
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- },
- {
- "name": "Adam Harvey",
- "email": "aharvey@php.net"
- }
- ],
- "description": "Provides functionality to recursively process PHP variables",
- "homepage": "http://www.github.com/sebastianbergmann/recursion-context",
- "time": "2016-11-19 07:33:16"
- },
- {
- "name": "sebastian/resource-operations",
- "version": "1.0.0",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/resource-operations.git",
- "reference": "ce990bb21759f94aeafd30209e8cfcdfa8bc3f52"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/resource-operations/zipball/ce990bb21759f94aeafd30209e8cfcdfa8bc3f52",
- "reference": "ce990bb21759f94aeafd30209e8cfcdfa8bc3f52",
- "shasum": ""
- },
- "require": {
- "php": ">=5.6.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Provides a list of PHP built-in functions that operate on resources",
- "homepage": "https://www.github.com/sebastianbergmann/resource-operations",
- "time": "2015-07-28 20:34:47"
- },
- {
- "name": "sebastian/version",
- "version": "2.0.1",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/version.git",
- "reference": "99732be0ddb3361e16ad77b68ba41efc8e979019"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/99732be0ddb3361e16ad77b68ba41efc8e979019",
- "reference": "99732be0ddb3361e16ad77b68ba41efc8e979019",
- "shasum": ""
- },
- "require": {
- "php": ">=5.6"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.0.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de",
- "role": "lead"
- }
- ],
- "description": "Library that helps with managing the version number of Git-hosted PHP projects",
- "homepage": "https://github.com/sebastianbergmann/version",
- "time": "2016-10-03 07:35:21"
- },
- {
- "name": "symfony/browser-kit",
- "version": "v3.1.7",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/browser-kit.git",
- "reference": "901319a31c9b3cee7857b4aeeb81b5d64dfa34fc"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/browser-kit/zipball/901319a31c9b3cee7857b4aeeb81b5d64dfa34fc",
- "reference": "901319a31c9b3cee7857b4aeeb81b5d64dfa34fc",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9",
- "symfony/dom-crawler": "~2.8|~3.0"
- },
- "require-dev": {
- "symfony/css-selector": "~2.8|~3.0",
- "symfony/process": "~2.8|~3.0"
- },
- "suggest": {
- "symfony/process": ""
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.1-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\BrowserKit\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony BrowserKit Component",
- "homepage": "https://symfony.com/",
- "time": "2016-09-06 11:02:40"
- },
- {
- "name": "symfony/dom-crawler",
- "version": "v3.1.7",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/dom-crawler.git",
- "reference": "1eb3b4d216e8db117218dd2bb7d23dfe67bdf518"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/1eb3b4d216e8db117218dd2bb7d23dfe67bdf518",
- "reference": "1eb3b4d216e8db117218dd2bb7d23dfe67bdf518",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9",
- "symfony/polyfill-mbstring": "~1.0"
- },
- "require-dev": {
- "symfony/css-selector": "~2.8|~3.0"
- },
- "suggest": {
- "symfony/css-selector": ""
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.1-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\DomCrawler\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony DomCrawler Component",
- "homepage": "https://symfony.com/",
- "time": "2016-11-14 16:20:02"
- },
- {
- "name": "symfony/process",
- "version": "v3.1.7",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/process.git",
- "reference": "66de154ae86b1a07001da9fbffd620206e4faf94"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/process/zipball/66de154ae86b1a07001da9fbffd620206e4faf94",
- "reference": "66de154ae86b1a07001da9fbffd620206e4faf94",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.1-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\Process\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony Process Component",
- "homepage": "https://symfony.com/",
- "time": "2016-09-29 14:13:09"
- }
- ],
- "aliases": [],
- "minimum-stability": "stable",
- "stability-flags": [],
- "prefer-stable": false,
- "prefer-lowest": false,
- "platform": [],
- "platform-dev": []
-}
diff --git a/appengine/flexible/drupal8/php.ini b/appengine/flexible/drupal8/php.ini
deleted file mode 100644
index 230bc8a2d0..0000000000
--- a/appengine/flexible/drupal8/php.ini
+++ /dev/null
@@ -1,6 +0,0 @@
-suhosin.post.max_vars = 1000
-suhosin.request.max_vars = 1000
-
-; we should tighten up these restrictions eventually
-suhosin.executor.func.blacklist =
-disable_functions =
diff --git a/appengine/flexible/drupal8/phpunit.xml b/appengine/flexible/drupal8/phpunit.xml
deleted file mode 100644
index 0960052f6f..0000000000
--- a/appengine/flexible/drupal8/phpunit.xml
+++ /dev/null
@@ -1,23 +0,0 @@
-
-
-
-
-
- tests
-
-
-
diff --git a/appengine/flexible/drupal8/phpunit.xml.dist b/appengine/flexible/drupal8/phpunit.xml.dist
new file mode 100644
index 0000000000..da7ad8da8e
--- /dev/null
+++ b/appengine/flexible/drupal8/phpunit.xml.dist
@@ -0,0 +1,32 @@
+
+
+
+
+
+ test
+ test/DeployTest.php
+
+
+
+
+ ./web
+
+ ./vendor
+
+
+
+
diff --git a/appengine/flexible/drupal8/test/DeployTest.php b/appengine/flexible/drupal8/test/DeployTest.php
new file mode 100644
index 0000000000..73d113ab98
--- /dev/null
+++ b/appengine/flexible/drupal8/test/DeployTest.php
@@ -0,0 +1,126 @@
+setDir($tmpDir);
+ }
+
+ private static function verifyEnvironmentVariables()
+ {
+ $envVars = [
+ 'GOOGLE_PROJECT_ID',
+ 'DRUPAL8_ADMIN_USERNAME',
+ 'DRUPAL8_ADMIN_PASSWORD',
+ 'DRUPAL8_DATABASE_HOST',
+ 'DRUPAL8_DATABASE_NAME',
+ 'DRUPAL8_DATABASE_USER',
+ 'DRUPAL8_DATABASE_PASS',
+ ];
+ foreach ($envVars as $envVar) {
+ if (false === getenv($envVar)) {
+ self::markTestSkipped("Please set the {$envVar} environment variable");
+ }
+ }
+ }
+
+ private static function downloadAndInstallDrupal($targetDir)
+ {
+ $console = __DIR__ . '/../vendor/bin/drush';
+
+ $dbUrl = sprintf(
+ 'mysql://%s:%s@%s/%s',
+ getenv('DRUPAL8_DATABASE_USER'),
+ getenv('DRUPAL8_DATABASE_PASS'),
+ getenv('DRUPAL8_DATABASE_HOST'),
+ getenv('DRUPAL8_DATABASE_NAME')
+ );
+
+ // download
+ self::setWorkingDirectory(dirname($targetDir));
+ $downloadCmd = sprintf(
+ '%s dl drupal --drupal-project-rename=%s',
+ $console,
+ basename($targetDir)
+ );
+ self::execute($downloadCmd);
+
+ // install
+ self::setWorkingDirectory($targetDir);
+ $installCmd = sprintf(
+ '%s site-install standard ' .
+ '--db-url=%s --account-name=%s --account-pass=%s -y',
+ $console,
+ $dbUrl,
+ getenv('DRUPAL8_ADMIN_USERNAME'),
+ getenv('DRUPAL8_ADMIN_PASSWORD')
+ );
+ $process = self::createProcess($installCmd);
+ $process->setTimeout(null);
+ self::executeProcess($process);
+
+ // this is to fix a PHP runtime bug
+ // @TODO - FIX THIS!!
+ self::execute('rm composer.*');
+
+ // move the code for the sample to the new drupal installation
+ $files = ['app.yaml'];
+ foreach ($files as $file) {
+ $source = sprintf('%s/../%s', __DIR__, $file);
+ $target = sprintf('%s/%s', $targetDir, $file);
+ copy($source, $target);
+ }
+ }
+
+ public function testContacts()
+ {
+ // Access the blog top page
+ $resp = $this->client->get('/contact');
+ $this->assertEquals(
+ '200',
+ $resp->getStatusCode(),
+ 'top page status code'
+ );
+ $content = $resp->getBody()->getContents();
+ $this->assertStringContainsString('Website feedback', $content);
+ $this->assertStringContainsString('Drupal', $content);
+ }
+}
diff --git a/appengine/flexible/drupal8/tests/DeployTest.php b/appengine/flexible/drupal8/tests/DeployTest.php
deleted file mode 100644
index 9aeeff4143..0000000000
--- a/appengine/flexible/drupal8/tests/DeployTest.php
+++ /dev/null
@@ -1,118 +0,0 @@
-setTimeout(null);
- self::executeProcess($process);
-
- // this is to fix a PHP runtime bug
- // @TODO - FIX THIS!!
- self::execute('rm composer.*');
-
- // move the code for the sample to the new drupal installation
- $files = ['app.yaml', 'php.ini'];
- foreach ($files as $file) {
- $source = sprintf('%s/../%s', __DIR__, $file);
- $target = sprintf('%s/%s', $targetDir, $file);
- copy($source, $target);
- }
- }
-
- public function testContacts()
- {
- // Access the blog top page
- $resp = $this->client->get('/contact');
- $this->assertEquals(
- '200',
- $resp->getStatusCode(),
- 'top page status code'
- );
- $content = $resp->getBody()->getContents();
- $this->assertContains('Website feedback', $content);
- $this->assertContains('Drupal', $content);
- }
-}
diff --git a/appengine/flexible/drupal8/tests/bootstrap.php b/appengine/flexible/drupal8/tests/bootstrap.php
deleted file mode 100644
index ee2e3fe6e6..0000000000
--- a/appengine/flexible/drupal8/tests/bootstrap.php
+++ /dev/null
@@ -1,19 +0,0 @@
-
+
+
+
+
+ test
+ test/DeployTest.php
+
+
+
+
+
+
+
+ ./web
+
+ ./vendor
+
+
+
+
diff --git a/appengine/flexible/helloworld/test/DeployTest.php b/appengine/flexible/helloworld/test/DeployTest.php
new file mode 100644
index 0000000000..47da99cdd1
--- /dev/null
+++ b/appengine/flexible/helloworld/test/DeployTest.php
@@ -0,0 +1,38 @@
+client->get('/');
+ $this->assertEquals('200', $resp->getStatusCode(),
+ 'index status code');
+ $this->assertStringContainsString('Hello World', (string) $resp->getBody(),
+ 'index content');
+ }
+}
diff --git a/appengine/flexible/helloworld/test/LocalTest.php b/appengine/flexible/helloworld/test/LocalTest.php
new file mode 100644
index 0000000000..73582de378
--- /dev/null
+++ b/appengine/flexible/helloworld/test/LocalTest.php
@@ -0,0 +1,50 @@
+createRequest('GET', '/');
+ $response = $app->handle($request);
+ $this->assertEquals(200, $response->getStatusCode());
+ $body = (string) $response->getBody();
+ $this->assertStringContainsString('Hello World', $body);
+ }
+
+ public function testGoodbye()
+ {
+ $app = require __DIR__ . '/../web/index.php';
+
+ $request = (new RequestFactory)->createRequest('GET', '/goodbye');
+ $response = $app->handle($request);
+ $this->assertEquals(200, $response->getStatusCode());
+ $body = (string) $response->getBody();
+ $this->assertStringContainsString('Goodbye World', $body);
+ }
+}
diff --git a/appengine/flexible/helloworld/web/index.php b/appengine/flexible/helloworld/web/index.php
new file mode 100644
index 0000000000..73700b45eb
--- /dev/null
+++ b/appengine/flexible/helloworld/web/index.php
@@ -0,0 +1,49 @@
+addErrorMiddleware(true, true, true);
+
+$app->get('/', function (Request $request, Response $response) {
+ $response->getBody()->write('Hello World');
+ return $response;
+});
+
+$app->get('/goodbye', function (Request $request, Response $response) {
+ $response->getBody()->write('Goodbye World');
+ return $response;
+});
+
+// @codeCoverageIgnoreStart
+if (PHP_SAPI != 'cli') {
+ $app->run();
+}
+// @codeCoverageIgnoreEnd
+
+return $app;
+// [END appengine_flex_helloworld_index_php]
diff --git a/appengine/flexible/laravel/README.md b/appengine/flexible/laravel/README.md
index ba1f66fa57..79e327688d 100644
--- a/appengine/flexible/laravel/README.md
+++ b/appengine/flexible/laravel/README.md
@@ -1,111 +1,7 @@
Laravel on App Engine Flexible Environment
==========================================
-## Overview
+**Code and tests for the Google Cloud Community article
+[Run Laravel on Google App Engine Flexible Environment][5]**
-This guide will help you deploy Laravel on [App Engine Flexible Environment][1]
-
-## Prerequisites
-
-Before setting up Laravel on App Engine, you will need to complete the following:
-
- 1. Create a project in the [Google Cloud console][2]. Note your **Project ID**, as you will need it
- later.
-
-## Install Laravel
-
-1. Use composer to download Laravel and its dependencies
- ```sh
- composer create-project laravel/laravel
- ```
-
-1. cd laravel
-1. composer install
-1. php artisan key:generate
-
-## Set up the Database
-
-Laravel on App Engine Flexible uses a database for sessions and cache. This is
-to allow the cache and session to persist across instances.
-
-1. Follow the instructions to set up a [CloudSQL Second Generation instance][3]
-
-1. Follow the instructions to
- [install the Cloud SQL Proxy client on your local machine][4]. The Cloud SQL
- Proxy is used to connect to your Cloud SQL instance when running locally.
-
-1. Use the Cloud SDK from command-line to run the following command. Copy the
- connectionName value for the next step.
- ```sh
- gcloud beta sql instances describe [YOUR_INSTANCE_NAME]
- ```
-
-1. Start the Cloud SQL Proxy using the connection name from the previous step:
- ```sh
- cloud_sql_proxy -instances=[INSTANCE_CONNECTION_NAME]=tcp:3306
- ```
-
-1. Use the MySQL client or similar program to connect to your instance and
- create a database for the application. When prompted, use the root password
- you configured:
- ```sh
- mysql -h 127.0.0.1 -u root -p -e "CREATE DATABASE laravel;"
- ```
-
-1. Run the database migrations for Laravel. This can be done by setting your
- parameters in `.env` or by passing them in as environemnt variables:
- ```sh
- # create a migration for the session table
- php artisan session:table
- DB_DATABASE=laravel \
- DB_USERNAME=root \
- DB_PASSWORD=supersecretpassword \
- php artisan migrate --force
- ```
-1. Update `app.yaml` with the values for your database configuration.
-
-1. Finally, edit `config/database.php` and add a line for "unix_socket" to the
- 'mysql' connection configuration:
- ```php
- 'mysql' => [
- // ...
- 'unix_socket' => env('DB_SOCKET', ''),
- ```
-
-
-## Copy over App Engine's `app.yaml` File
-
-For your app to deploy on App Engine Flexible, you will need to copy over
-`app.yaml`:
-
-```sh
-# clone this repo somewhere
-git clone https://github.com/GoogleCloudPlatform/php-docs-samples /path/to/php-docs-samples
-
-# copy the file below to the root directory of your Laravel project
-cp /path/to/php-docs-samples/appengine/flexible/laravel/app.yaml /path/to/laravel
-```
-
-`app.yaml` contains production environemnt variables and App Engine
-configuration for your project.
-
-## Add deploy commands to composer
-
-Finally, you need to have scripts run after your application deploys. Add the
-following scripts to your project's composer.json:
-
-```json
-{
- "scripts": {
- "post-deploy-cmd": [
- "chmod -R 755 bootstrap\/cache",
- "php artisan cache:clear"
- ]
- }
-}
-```
-
-[1]: https://cloud.google.com/appengine/docs/flexible/
-[2]: https://console.cloud.google.com
-[3]: https://cloud.google.com/sql/docs/create-instance
-[4]: https://cloud.google.com/sql/docs/external#install
+[5]: https://cloud.google.com/community/tutorials/run-laravel-on-appengine-flexible
diff --git a/appengine/flexible/laravel/app-dbsessions.yaml b/appengine/flexible/laravel/app-dbsessions.yaml
new file mode 100644
index 0000000000..7c54770c24
--- /dev/null
+++ b/appengine/flexible/laravel/app-dbsessions.yaml
@@ -0,0 +1,29 @@
+runtime: php
+env: flex
+
+runtime_config:
+ document_root: public
+
+# Ensure we skip ".env", which is only for local development
+skip_files:
+ - .env
+
+env_variables:
+ # Put production environment variables here.
+ APP_LOG: errorlog
+ APP_KEY: YOUR_APP_KEY
+ STORAGE_DIR: /tmp
+ CACHE_DRIVER: database
+ SESSION_DRIVER: database
+ ## Set these environment variables according to your CloudSQL configuration.
+ DB_HOST: localhost
+ DB_DATABASE: YOUR_DB_DATABASE
+ DB_USERNAME: YOUR_DB_USERNAME
+ DB_PASSWORD: YOUR_DB_PASSWORD
+ DB_SOCKET: "/cloudsql/YOUR_CLOUDSQL_CONNECTION_NAME"
+
+beta_settings:
+ # for Cloud SQL, uncomment and set this value to the Cloud SQL
+ # connection name, e.g.
+ # "project:region:cloudsql-instance"
+ cloud_sql_instances: "YOUR_CLOUDSQL_CONNECTION_NAME"
diff --git a/appengine/flexible/laravel/app.yaml b/appengine/flexible/laravel/app.yaml
index 0d0689c003..8cb5301c90 100644
--- a/appengine/flexible/laravel/app.yaml
+++ b/appengine/flexible/laravel/app.yaml
@@ -3,27 +3,13 @@ env: flex
runtime_config:
document_root: public
+ enable_stackdriver_integration: true
-env_variables:
- # The values here will override those in ".env". This is useful for
- # production-specific configuration. However, Feel free to set these values
- # in ".env" instead if you prefer.
- APP_LOG: errorlog
- CACHE_DRIVER: database
- SESSION_DRIVER: database
- STORAGE_DIR: /tmp
- ## Set these environment variables according to your CloudSQL configuration.
- DB_HOST: localhost
- DB_DATABASE: YOUR_DB_DATABASE
- DB_USERNAME: YOUR_DB_USERNAME
- DB_PASSWORD: YOUR_DB_PASSWORD
- DB_SOCKET: /cloudsql/YOUR_CLOUDSQL_CONNECTION_NAME
-
-# required on some platforms so ".env" is not skipped
-skip_files: false
+# Ensure we skip ".env", which is only for local development
+skip_files:
+ - .env
-beta_settings:
- # for Cloud SQL, uncomment and set this value to the Cloud SQL
- # connection name, e.g.
- # "project:region:cloudsql-instance"
- cloud_sql_instances: "YOUR_CLOUDSQL_CONNECTION_NAME"
+env_variables:
+ # Put production environment variables here.
+ LOG_CHANNEL: stackdriver
+ APP_KEY: YOUR_APP_KEY
diff --git a/appengine/flexible/laravel/app/Exceptions/Handler.php b/appengine/flexible/laravel/app/Exceptions/Handler.php
new file mode 100644
index 0000000000..283cfd1f97
--- /dev/null
+++ b/appengine/flexible/laravel/app/Exceptions/Handler.php
@@ -0,0 +1,60 @@
+=5.3,<8.0-DEV"
- },
- "require-dev": {
- "athletic/athletic": "~0.1.8",
- "ext-pdo": "*",
- "ext-phar": "*",
- "phpunit/phpunit": "~4.0",
- "squizlabs/php_codesniffer": "~2.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Doctrine\\Instantiator\\": "src/Doctrine/Instantiator/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Marco Pivetta",
- "email": "ocramius@gmail.com",
- "homepage": "http://ocramius.github.com/"
- }
- ],
- "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors",
- "homepage": "https://github.com/doctrine/instantiator",
- "keywords": [
- "constructor",
- "instantiate"
- ],
- "time": "2015-06-14 21:17:01"
- },
- {
- "name": "google/cloud-tools",
- "version": "v0.6.1",
- "source": {
- "type": "git",
- "url": "https://github.com/GoogleCloudPlatform/php-tools.git",
- "reference": "6546fab38b9ac7d9563e1ada6ed1e945eb7d10ac"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/GoogleCloudPlatform/php-tools/zipball/6546fab38b9ac7d9563e1ada6ed1e945eb7d10ac",
- "reference": "6546fab38b9ac7d9563e1ada6ed1e945eb7d10ac",
- "shasum": ""
- },
- "require": {
- "guzzlehttp/guzzle": "~5.3|~6.0",
- "php": ">=5.5",
- "phpunit/phpunit": "~4|~5",
- "symfony/browser-kit": "~2|~3",
- "symfony/process": "~2|~3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.0"
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "Google\\Cloud\\TestUtils\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "Apache-2.0"
- ],
- "authors": [
- {
- "name": "Takashi Matsuo",
- "email": "tmatsuo@google.com",
- "homepage": "https://wp.gaeflex.ninja/"
- }
- ],
- "description": "PHP tools for Google Cloud Platform",
- "homepage": "https://github.com/GoogleCloudPlatform/php-tools",
- "keywords": [
- "appengine",
- "gcp",
- "test"
- ],
- "time": "2016-12-08 21:36:15"
- },
- {
- "name": "guzzlehttp/guzzle",
- "version": "6.2.2",
- "source": {
- "type": "git",
- "url": "https://github.com/guzzle/guzzle.git",
- "reference": "ebf29dee597f02f09f4d5bbecc68230ea9b08f60"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/guzzle/guzzle/zipball/ebf29dee597f02f09f4d5bbecc68230ea9b08f60",
- "reference": "ebf29dee597f02f09f4d5bbecc68230ea9b08f60",
- "shasum": ""
- },
- "require": {
- "guzzlehttp/promises": "^1.0",
- "guzzlehttp/psr7": "^1.3.1",
- "php": ">=5.5"
- },
- "require-dev": {
- "ext-curl": "*",
- "phpunit/phpunit": "^4.0",
- "psr/log": "^1.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "6.2-dev"
- }
- },
- "autoload": {
- "files": [
- "src/functions_include.php"
- ],
- "psr-4": {
- "GuzzleHttp\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Michael Dowling",
- "email": "mtdowling@gmail.com",
- "homepage": "https://github.com/mtdowling"
- }
- ],
- "description": "Guzzle is a PHP HTTP client library",
- "homepage": "http://guzzlephp.org/",
- "keywords": [
- "client",
- "curl",
- "framework",
- "http",
- "http client",
- "rest",
- "web service"
- ],
- "time": "2016-10-08 15:01:37"
- },
- {
- "name": "guzzlehttp/promises",
- "version": "1.3.0",
- "source": {
- "type": "git",
- "url": "https://github.com/guzzle/promises.git",
- "reference": "2693c101803ca78b27972d84081d027fca790a1e"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/guzzle/promises/zipball/2693c101803ca78b27972d84081d027fca790a1e",
- "reference": "2693c101803ca78b27972d84081d027fca790a1e",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.0"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "GuzzleHttp\\Promise\\": "src/"
- },
- "files": [
- "src/functions_include.php"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Michael Dowling",
- "email": "mtdowling@gmail.com",
- "homepage": "https://github.com/mtdowling"
- }
- ],
- "description": "Guzzle promises library",
- "keywords": [
- "promise"
- ],
- "time": "2016-11-18 17:47:58"
- },
- {
- "name": "guzzlehttp/psr7",
- "version": "1.3.1",
- "source": {
- "type": "git",
- "url": "https://github.com/guzzle/psr7.git",
- "reference": "5c6447c9df362e8f8093bda8f5d8873fe5c7f65b"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/guzzle/psr7/zipball/5c6447c9df362e8f8093bda8f5d8873fe5c7f65b",
- "reference": "5c6447c9df362e8f8093bda8f5d8873fe5c7f65b",
- "shasum": ""
- },
- "require": {
- "php": ">=5.4.0",
- "psr/http-message": "~1.0"
- },
- "provide": {
- "psr/http-message-implementation": "1.0"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.4-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "GuzzleHttp\\Psr7\\": "src/"
- },
- "files": [
- "src/functions_include.php"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Michael Dowling",
- "email": "mtdowling@gmail.com",
- "homepage": "https://github.com/mtdowling"
- }
- ],
- "description": "PSR-7 message implementation",
- "keywords": [
- "http",
- "message",
- "stream",
- "uri"
- ],
- "time": "2016-06-24 23:00:38"
- },
- {
- "name": "monolog/monolog",
- "version": "1.22.0",
- "source": {
- "type": "git",
- "url": "https://github.com/Seldaek/monolog.git",
- "reference": "bad29cb8d18ab0315e6c477751418a82c850d558"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/Seldaek/monolog/zipball/bad29cb8d18ab0315e6c477751418a82c850d558",
- "reference": "bad29cb8d18ab0315e6c477751418a82c850d558",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.0",
- "psr/log": "~1.0"
- },
- "provide": {
- "psr/log-implementation": "1.0.0"
- },
- "require-dev": {
- "aws/aws-sdk-php": "^2.4.9 || ^3.0",
- "doctrine/couchdb": "~1.0@dev",
- "graylog2/gelf-php": "~1.0",
- "jakub-onderka/php-parallel-lint": "0.9",
- "php-amqplib/php-amqplib": "~2.4",
- "php-console/php-console": "^3.1.3",
- "phpunit/phpunit": "~4.5",
- "phpunit/phpunit-mock-objects": "2.3.0",
- "ruflin/elastica": ">=0.90 <3.0",
- "sentry/sentry": "^0.13",
- "swiftmailer/swiftmailer": "~5.3"
- },
- "suggest": {
- "aws/aws-sdk-php": "Allow sending log messages to AWS services like DynamoDB",
- "doctrine/couchdb": "Allow sending log messages to a CouchDB server",
- "ext-amqp": "Allow sending log messages to an AMQP server (1.0+ required)",
- "ext-mongo": "Allow sending log messages to a MongoDB server",
- "graylog2/gelf-php": "Allow sending log messages to a GrayLog2 server",
- "mongodb/mongodb": "Allow sending log messages to a MongoDB server via PHP Driver",
- "php-amqplib/php-amqplib": "Allow sending log messages to an AMQP server using php-amqplib",
- "php-console/php-console": "Allow sending log messages to Google Chrome",
- "rollbar/rollbar": "Allow sending log messages to Rollbar",
- "ruflin/elastica": "Allow sending log messages to an Elastic Search server",
- "sentry/sentry": "Allow sending log messages to a Sentry server"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.0.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Monolog\\": "src/Monolog"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Jordi Boggiano",
- "email": "j.boggiano@seld.be",
- "homepage": "http://seld.be/"
- }
- ],
- "description": "Sends your logs to files, sockets, inboxes, databases and various web services",
- "homepage": "http://github.com/Seldaek/monolog",
- "keywords": [
- "log",
- "logging",
- "psr-3"
- ],
- "time": "2016-11-26 00:15:39"
- },
- {
- "name": "myclabs/deep-copy",
- "version": "1.5.5",
- "source": {
- "type": "git",
- "url": "https://github.com/myclabs/DeepCopy.git",
- "reference": "399c1f9781e222f6eb6cc238796f5200d1b7f108"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/399c1f9781e222f6eb6cc238796f5200d1b7f108",
- "reference": "399c1f9781e222f6eb6cc238796f5200d1b7f108",
- "shasum": ""
- },
- "require": {
- "php": ">=5.4.0"
- },
- "require-dev": {
- "doctrine/collections": "1.*",
- "phpunit/phpunit": "~4.1"
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "DeepCopy\\": "src/DeepCopy/"
- }
- },
- "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",
- "duplicate",
- "object",
- "object graph"
- ],
- "time": "2016-10-31 17:19:45"
- },
- {
- "name": "paragonie/random_compat",
- "version": "v2.0.4",
- "source": {
- "type": "git",
- "url": "https://github.com/paragonie/random_compat.git",
- "reference": "a9b97968bcde1c4de2a5ec6cbd06a0f6c919b46e"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/paragonie/random_compat/zipball/a9b97968bcde1c4de2a5ec6cbd06a0f6c919b46e",
- "reference": "a9b97968bcde1c4de2a5ec6cbd06a0f6c919b46e",
- "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",
- "pseudorandom",
- "random"
- ],
- "time": "2016-11-07 23:38:38"
- },
- {
- "name": "phpdocumentor/reflection-common",
- "version": "1.0",
- "source": {
- "type": "git",
- "url": "https://github.com/phpDocumentor/ReflectionCommon.git",
- "reference": "144c307535e82c8fdcaacbcfc1d6d8eeb896687c"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phpDocumentor/ReflectionCommon/zipball/144c307535e82c8fdcaacbcfc1d6d8eeb896687c",
- "reference": "144c307535e82c8fdcaacbcfc1d6d8eeb896687c",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5"
- },
- "require-dev": {
- "phpunit/phpunit": "^4.6"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "phpDocumentor\\Reflection\\": [
- "src"
- ]
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Jaap van Otterdijk",
- "email": "opensource@ijaap.nl"
- }
- ],
- "description": "Common reflection classes used by phpdocumentor to reflect the code structure",
- "homepage": "http://www.phpdoc.org/",
- "keywords": [
- "FQSEN",
- "phpDocumentor",
- "phpdoc",
- "reflection",
- "static analysis"
- ],
- "time": "2015-12-27 11:43:31"
- },
- {
- "name": "phpdocumentor/reflection-docblock",
- "version": "3.1.1",
- "source": {
- "type": "git",
- "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git",
- "reference": "8331b5efe816ae05461b7ca1e721c01b46bafb3e"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/8331b5efe816ae05461b7ca1e721c01b46bafb3e",
- "reference": "8331b5efe816ae05461b7ca1e721c01b46bafb3e",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5",
- "phpdocumentor/reflection-common": "^1.0@dev",
- "phpdocumentor/type-resolver": "^0.2.0",
- "webmozart/assert": "^1.0"
- },
- "require-dev": {
- "mockery/mockery": "^0.9.4",
- "phpunit/phpunit": "^4.4"
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "phpDocumentor\\Reflection\\": [
- "src/"
- ]
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Mike van Riel",
- "email": "me@mikevanriel.com"
- }
- ],
- "description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.",
- "time": "2016-09-30 07:12:33"
- },
- {
- "name": "phpdocumentor/type-resolver",
- "version": "0.2.1",
- "source": {
- "type": "git",
- "url": "https://github.com/phpDocumentor/TypeResolver.git",
- "reference": "e224fb2ea2fba6d3ad6fdaef91cd09a172155ccb"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/e224fb2ea2fba6d3ad6fdaef91cd09a172155ccb",
- "reference": "e224fb2ea2fba6d3ad6fdaef91cd09a172155ccb",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5",
- "phpdocumentor/reflection-common": "^1.0"
- },
- "require-dev": {
- "mockery/mockery": "^0.9.4",
- "phpunit/phpunit": "^5.2||^4.8.24"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "phpDocumentor\\Reflection\\": [
- "src/"
- ]
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Mike van Riel",
- "email": "me@mikevanriel.com"
- }
- ],
- "time": "2016-11-25 06:54:22"
- },
- {
- "name": "phpspec/prophecy",
- "version": "v1.6.2",
- "source": {
- "type": "git",
- "url": "https://github.com/phpspec/prophecy.git",
- "reference": "6c52c2722f8460122f96f86346600e1077ce22cb"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phpspec/prophecy/zipball/6c52c2722f8460122f96f86346600e1077ce22cb",
- "reference": "6c52c2722f8460122f96f86346600e1077ce22cb",
- "shasum": ""
- },
- "require": {
- "doctrine/instantiator": "^1.0.2",
- "php": "^5.3|^7.0",
- "phpdocumentor/reflection-docblock": "^2.0|^3.0.2",
- "sebastian/comparator": "^1.1",
- "sebastian/recursion-context": "^1.0|^2.0"
- },
- "require-dev": {
- "phpspec/phpspec": "^2.0",
- "phpunit/phpunit": "^4.8 || ^5.6.5"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.6.x-dev"
- }
- },
- "autoload": {
- "psr-0": {
- "Prophecy\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Konstantin Kudryashov",
- "email": "ever.zet@gmail.com",
- "homepage": "http://everzet.com/"
- },
- {
- "name": "Marcello Duarte",
- "email": "marcello.duarte@gmail.com"
- }
- ],
- "description": "Highly opinionated mocking framework for PHP 5.3+",
- "homepage": "https://github.com/phpspec/prophecy",
- "keywords": [
- "Double",
- "Dummy",
- "fake",
- "mock",
- "spy",
- "stub"
- ],
- "time": "2016-11-21 14:58:47"
- },
- {
- "name": "phpunit/php-code-coverage",
- "version": "4.0.3",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-code-coverage.git",
- "reference": "903fd6318d0a90b4770a009ff73e4a4e9c437929"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/903fd6318d0a90b4770a009ff73e4a4e9c437929",
- "reference": "903fd6318d0a90b4770a009ff73e4a4e9c437929",
- "shasum": ""
- },
- "require": {
- "php": "^5.6 || ^7.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"
- },
- "require-dev": {
- "ext-xdebug": ">=2.1.4",
- "phpunit/phpunit": "^5.4"
- },
- "suggest": {
- "ext-dom": "*",
- "ext-xdebug": ">=2.4.0",
- "ext-xmlwriter": "*"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "4.0.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sb@sebastian-bergmann.de",
- "role": "lead"
- }
- ],
- "description": "Library that provides collection, processing, and rendering functionality for PHP code coverage information.",
- "homepage": "https://github.com/sebastianbergmann/php-code-coverage",
- "keywords": [
- "coverage",
- "testing",
- "xunit"
- ],
- "time": "2016-11-28 16:00:31"
- },
- {
- "name": "phpunit/php-file-iterator",
- "version": "1.4.2",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-file-iterator.git",
- "reference": "3cc8f69b3028d0f96a9078e6295d86e9bf019be5"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/3cc8f69b3028d0f96a9078e6295d86e9bf019be5",
- "reference": "3cc8f69b3028d0f96a9078e6295d86e9bf019be5",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.4.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sb@sebastian-bergmann.de",
- "role": "lead"
- }
- ],
- "description": "FilterIterator implementation that filters files based on a list of suffixes.",
- "homepage": "https://github.com/sebastianbergmann/php-file-iterator/",
- "keywords": [
- "filesystem",
- "iterator"
- ],
- "time": "2016-10-03 07:40:28"
- },
- {
- "name": "phpunit/php-text-template",
- "version": "1.2.1",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-text-template.git",
- "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/31f8b717e51d9a2afca6c9f046f5d69fc27c8686",
- "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "type": "library",
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de",
- "role": "lead"
- }
- ],
- "description": "Simple template engine.",
- "homepage": "https://github.com/sebastianbergmann/php-text-template/",
- "keywords": [
- "template"
- ],
- "time": "2015-06-21 13:50:34"
- },
- {
- "name": "phpunit/php-timer",
- "version": "1.0.8",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-timer.git",
- "reference": "38e9124049cf1a164f1e4537caf19c99bf1eb260"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/38e9124049cf1a164f1e4537caf19c99bf1eb260",
- "reference": "38e9124049cf1a164f1e4537caf19c99bf1eb260",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4|~5"
- },
- "type": "library",
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sb@sebastian-bergmann.de",
- "role": "lead"
- }
- ],
- "description": "Utility class for timing",
- "homepage": "https://github.com/sebastianbergmann/php-timer/",
- "keywords": [
- "timer"
- ],
- "time": "2016-05-12 18:03:57"
- },
- {
- "name": "phpunit/php-token-stream",
- "version": "1.4.9",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-token-stream.git",
- "reference": "3b402f65a4cc90abf6e1104e388b896ce209631b"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/3b402f65a4cc90abf6e1104e388b896ce209631b",
- "reference": "3b402f65a4cc90abf6e1104e388b896ce209631b",
- "shasum": ""
- },
- "require": {
- "ext-tokenizer": "*",
- "php": ">=5.3.3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.2"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.4-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Wrapper around PHP's tokenizer extension.",
- "homepage": "https://github.com/sebastianbergmann/php-token-stream/",
- "keywords": [
- "tokenizer"
- ],
- "time": "2016-11-15 14:06:22"
- },
- {
- "name": "phpunit/phpunit",
- "version": "5.6.7",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/phpunit.git",
- "reference": "38810e97481723ef918f6e35c03cb1014a645bd5"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/38810e97481723ef918f6e35c03cb1014a645bd5",
- "reference": "38810e97481723ef918f6e35c03cb1014a645bd5",
- "shasum": ""
- },
- "require": {
- "ext-dom": "*",
- "ext-json": "*",
- "ext-libxml": "*",
- "ext-mbstring": "*",
- "ext-xml": "*",
- "myclabs/deep-copy": "~1.3",
- "php": "^5.6 || ^7.0",
- "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.2",
- "sebastian/diff": "~1.2",
- "sebastian/environment": "^1.3 || ^2.0",
- "sebastian/exporter": "~2.0",
- "sebastian/global-state": "~1.0",
- "sebastian/object-enumerator": "~2.0",
- "sebastian/resource-operations": "~1.0",
- "sebastian/version": "~1.0|~2.0",
- "symfony/yaml": "~2.1|~3.0"
- },
- "conflict": {
- "phpdocumentor/reflection-docblock": "3.0.2"
- },
- "require-dev": {
- "ext-pdo": "*"
- },
- "suggest": {
- "ext-xdebug": "*",
- "phpunit/php-invoker": "~1.1"
- },
- "bin": [
- "phpunit"
- ],
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "5.6.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de",
- "role": "lead"
- }
- ],
- "description": "The PHP Unit Testing framework.",
- "homepage": "https://phpunit.de/",
- "keywords": [
- "phpunit",
- "testing",
- "xunit"
- ],
- "time": "2016-11-28 16:04:24"
- },
- {
- "name": "phpunit/phpunit-mock-objects",
- "version": "3.4.2",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/phpunit-mock-objects.git",
- "reference": "90a08f5deed5f7ac35463c161f2e8fa0e5652faf"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/phpunit-mock-objects/zipball/90a08f5deed5f7ac35463c161f2e8fa0e5652faf",
- "reference": "90a08f5deed5f7ac35463c161f2e8fa0e5652faf",
- "shasum": ""
- },
- "require": {
- "doctrine/instantiator": "^1.0.2",
- "php": "^5.6 || ^7.0",
- "phpunit/php-text-template": "^1.2",
- "sebastian/exporter": "^1.2 || ^2.0"
- },
- "conflict": {
- "phpunit/phpunit": "<5.4.0"
- },
- "require-dev": {
- "phpunit/phpunit": "^5.4"
- },
- "suggest": {
- "ext-soap": "*"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.2.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sb@sebastian-bergmann.de",
- "role": "lead"
- }
- ],
- "description": "Mock Object library for PHPUnit",
- "homepage": "https://github.com/sebastianbergmann/phpunit-mock-objects/",
- "keywords": [
- "mock",
- "xunit"
- ],
- "time": "2016-11-27 07:52:03"
- },
- {
- "name": "psr/http-message",
- "version": "1.0.1",
- "source": {
- "type": "git",
- "url": "https://github.com/php-fig/http-message.git",
- "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/php-fig/http-message/zipball/f6561bf28d520154e4b0ec72be95418abe6d9363",
- "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Psr\\Http\\Message\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "PHP-FIG",
- "homepage": "http://www.php-fig.org/"
- }
- ],
- "description": "Common interface for HTTP messages",
- "homepage": "https://github.com/php-fig/http-message",
- "keywords": [
- "http",
- "http-message",
- "psr",
- "psr-7",
- "request",
- "response"
- ],
- "time": "2016-08-06 14:39:51"
- },
- {
- "name": "psr/log",
- "version": "1.0.2",
- "source": {
- "type": "git",
- "url": "https://github.com/php-fig/log.git",
- "reference": "4ebe3a8bf773a19edfe0a84b6585ba3d401b724d"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/php-fig/log/zipball/4ebe3a8bf773a19edfe0a84b6585ba3d401b724d",
- "reference": "4ebe3a8bf773a19edfe0a84b6585ba3d401b724d",
- "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": "2016-10-10 12:19:37"
- },
- {
- "name": "sebastian/code-unit-reverse-lookup",
- "version": "1.0.0",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/code-unit-reverse-lookup.git",
- "reference": "c36f5e7cfce482fde5bf8d10d41a53591e0198fe"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/c36f5e7cfce482fde5bf8d10d41a53591e0198fe",
- "reference": "c36f5e7cfce482fde5bf8d10d41a53591e0198fe",
- "shasum": ""
- },
- "require": {
- "php": ">=5.6"
- },
- "require-dev": {
- "phpunit/phpunit": "~5"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Looks up which function or method a line of code belongs to",
- "homepage": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/",
- "time": "2016-02-13 06:45:14"
- },
- {
- "name": "sebastian/comparator",
- "version": "1.2.2",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/comparator.git",
- "reference": "6a1ed12e8b2409076ab22e3897126211ff8b1f7f"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/6a1ed12e8b2409076ab22e3897126211ff8b1f7f",
- "reference": "6a1ed12e8b2409076ab22e3897126211ff8b1f7f",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3",
- "sebastian/diff": "~1.2",
- "sebastian/exporter": "~1.2 || ~2.0"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.4"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.2.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Jeff Welch",
- "email": "whatthejeff@gmail.com"
- },
- {
- "name": "Volker Dusch",
- "email": "github@wallbash.com"
- },
- {
- "name": "Bernhard Schussek",
- "email": "bschussek@2bepublished.at"
- },
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Provides the functionality to compare PHP values for equality",
- "homepage": "http://www.github.com/sebastianbergmann/comparator",
- "keywords": [
- "comparator",
- "compare",
- "equality"
- ],
- "time": "2016-11-19 09:18:40"
- },
- {
- "name": "sebastian/diff",
- "version": "1.4.1",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/diff.git",
- "reference": "13edfd8706462032c2f52b4b862974dd46b71c9e"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/13edfd8706462032c2f52b4b862974dd46b71c9e",
- "reference": "13edfd8706462032c2f52b4b862974dd46b71c9e",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.8"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.4-dev"
- }
- },
- "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"
- }
- ],
- "description": "Diff implementation",
- "homepage": "https://github.com/sebastianbergmann/diff",
- "keywords": [
- "diff"
- ],
- "time": "2015-12-08 07:14:41"
- },
- {
- "name": "sebastian/environment",
- "version": "2.0.0",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/environment.git",
- "reference": "5795ffe5dc5b02460c3e34222fee8cbe245d8fac"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/5795ffe5dc5b02460c3e34222fee8cbe245d8fac",
- "reference": "5795ffe5dc5b02460c3e34222fee8cbe245d8fac",
- "shasum": ""
- },
- "require": {
- "php": "^5.6 || ^7.0"
- },
- "require-dev": {
- "phpunit/phpunit": "^5.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.0.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Provides functionality to handle HHVM/PHP environments",
- "homepage": "http://www.github.com/sebastianbergmann/environment",
- "keywords": [
- "Xdebug",
- "environment",
- "hhvm"
- ],
- "time": "2016-11-26 07:53:53"
- },
- {
- "name": "sebastian/exporter",
- "version": "2.0.0",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/exporter.git",
- "reference": "ce474bdd1a34744d7ac5d6aad3a46d48d9bac4c4"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/ce474bdd1a34744d7ac5d6aad3a46d48d9bac4c4",
- "reference": "ce474bdd1a34744d7ac5d6aad3a46d48d9bac4c4",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3",
- "sebastian/recursion-context": "~2.0"
- },
- "require-dev": {
- "ext-mbstring": "*",
- "phpunit/phpunit": "~4.4"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.0.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Jeff Welch",
- "email": "whatthejeff@gmail.com"
- },
- {
- "name": "Volker Dusch",
- "email": "github@wallbash.com"
- },
- {
- "name": "Bernhard Schussek",
- "email": "bschussek@2bepublished.at"
- },
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- },
- {
- "name": "Adam Harvey",
- "email": "aharvey@php.net"
- }
- ],
- "description": "Provides the functionality to export PHP variables for visualization",
- "homepage": "http://www.github.com/sebastianbergmann/exporter",
- "keywords": [
- "export",
- "exporter"
- ],
- "time": "2016-11-19 08:54:04"
- },
- {
- "name": "sebastian/global-state",
- "version": "1.1.1",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/global-state.git",
- "reference": "bc37d50fea7d017d3d340f230811c9f1d7280af4"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/bc37d50fea7d017d3d340f230811c9f1d7280af4",
- "reference": "bc37d50fea7d017d3d340f230811c9f1d7280af4",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.2"
- },
- "suggest": {
- "ext-uopz": "*"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Snapshotting of global state",
- "homepage": "http://www.github.com/sebastianbergmann/global-state",
- "keywords": [
- "global state"
- ],
- "time": "2015-10-12 03:26:01"
- },
- {
- "name": "sebastian/object-enumerator",
- "version": "2.0.0",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/object-enumerator.git",
- "reference": "96f8a3f257b69e8128ad74d3a7fd464bcbaa3b35"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/96f8a3f257b69e8128ad74d3a7fd464bcbaa3b35",
- "reference": "96f8a3f257b69e8128ad74d3a7fd464bcbaa3b35",
- "shasum": ""
- },
- "require": {
- "php": ">=5.6",
- "sebastian/recursion-context": "~2.0"
- },
- "require-dev": {
- "phpunit/phpunit": "~5"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.0.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Traverses array structures and object graphs to enumerate all referenced objects",
- "homepage": "https://github.com/sebastianbergmann/object-enumerator/",
- "time": "2016-11-19 07:35:10"
- },
- {
- "name": "sebastian/recursion-context",
- "version": "2.0.0",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/recursion-context.git",
- "reference": "2c3ba150cbec723aa057506e73a8d33bdb286c9a"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/2c3ba150cbec723aa057506e73a8d33bdb286c9a",
- "reference": "2c3ba150cbec723aa057506e73a8d33bdb286c9a",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.4"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.0.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Jeff Welch",
- "email": "whatthejeff@gmail.com"
- },
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- },
- {
- "name": "Adam Harvey",
- "email": "aharvey@php.net"
- }
- ],
- "description": "Provides functionality to recursively process PHP variables",
- "homepage": "http://www.github.com/sebastianbergmann/recursion-context",
- "time": "2016-11-19 07:33:16"
- },
- {
- "name": "sebastian/resource-operations",
- "version": "1.0.0",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/resource-operations.git",
- "reference": "ce990bb21759f94aeafd30209e8cfcdfa8bc3f52"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/resource-operations/zipball/ce990bb21759f94aeafd30209e8cfcdfa8bc3f52",
- "reference": "ce990bb21759f94aeafd30209e8cfcdfa8bc3f52",
- "shasum": ""
- },
- "require": {
- "php": ">=5.6.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Provides a list of PHP built-in functions that operate on resources",
- "homepage": "https://www.github.com/sebastianbergmann/resource-operations",
- "time": "2015-07-28 20:34:47"
- },
- {
- "name": "sebastian/version",
- "version": "2.0.1",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/version.git",
- "reference": "99732be0ddb3361e16ad77b68ba41efc8e979019"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/99732be0ddb3361e16ad77b68ba41efc8e979019",
- "reference": "99732be0ddb3361e16ad77b68ba41efc8e979019",
- "shasum": ""
- },
- "require": {
- "php": ">=5.6"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.0.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de",
- "role": "lead"
- }
- ],
- "description": "Library that helps with managing the version number of Git-hosted PHP projects",
- "homepage": "https://github.com/sebastianbergmann/version",
- "time": "2016-10-03 07:35:21"
- },
- {
- "name": "symfony/browser-kit",
- "version": "v3.1.7",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/browser-kit.git",
- "reference": "901319a31c9b3cee7857b4aeeb81b5d64dfa34fc"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/browser-kit/zipball/901319a31c9b3cee7857b4aeeb81b5d64dfa34fc",
- "reference": "901319a31c9b3cee7857b4aeeb81b5d64dfa34fc",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9",
- "symfony/dom-crawler": "~2.8|~3.0"
- },
- "require-dev": {
- "symfony/css-selector": "~2.8|~3.0",
- "symfony/process": "~2.8|~3.0"
- },
- "suggest": {
- "symfony/process": ""
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.1-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\BrowserKit\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony BrowserKit Component",
- "homepage": "https://symfony.com/",
- "time": "2016-09-06 11:02:40"
- },
- {
- "name": "symfony/dom-crawler",
- "version": "v3.1.7",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/dom-crawler.git",
- "reference": "1eb3b4d216e8db117218dd2bb7d23dfe67bdf518"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/1eb3b4d216e8db117218dd2bb7d23dfe67bdf518",
- "reference": "1eb3b4d216e8db117218dd2bb7d23dfe67bdf518",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9",
- "symfony/polyfill-mbstring": "~1.0"
- },
- "require-dev": {
- "symfony/css-selector": "~2.8|~3.0"
- },
- "suggest": {
- "symfony/css-selector": ""
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.1-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\DomCrawler\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony DomCrawler Component",
- "homepage": "https://symfony.com/",
- "time": "2016-11-14 16:20:02"
- },
- {
- "name": "symfony/polyfill-mbstring",
- "version": "v1.3.0",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/polyfill-mbstring.git",
- "reference": "e79d363049d1c2128f133a2667e4f4190904f7f4"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/e79d363049d1c2128f133a2667e4f4190904f7f4",
- "reference": "e79d363049d1c2128f133a2667e4f4190904f7f4",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "suggest": {
- "ext-mbstring": "For best performance"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.3-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": "2016-11-14 01:06:16"
- },
- {
- "name": "symfony/process",
- "version": "v3.1.7",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/process.git",
- "reference": "66de154ae86b1a07001da9fbffd620206e4faf94"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/process/zipball/66de154ae86b1a07001da9fbffd620206e4faf94",
- "reference": "66de154ae86b1a07001da9fbffd620206e4faf94",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.1-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\Process\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony Process Component",
- "homepage": "https://symfony.com/",
- "time": "2016-09-29 14:13:09"
- },
- {
- "name": "symfony/yaml",
- "version": "v3.1.7",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/yaml.git",
- "reference": "9da375317228e54f4ea1b013b30fa47417e84943"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/yaml/zipball/9da375317228e54f4ea1b013b30fa47417e84943",
- "reference": "9da375317228e54f4ea1b013b30fa47417e84943",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.1-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\Yaml\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony Yaml Component",
- "homepage": "https://symfony.com/",
- "time": "2016-11-18 21:05:29"
- },
- {
- "name": "webmozart/assert",
- "version": "1.2.0",
- "source": {
- "type": "git",
- "url": "https://github.com/webmozart/assert.git",
- "reference": "2db61e59ff05fe5126d152bd0655c9ea113e550f"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/webmozart/assert/zipball/2db61e59ff05fe5126d152bd0655c9ea113e550f",
- "reference": "2db61e59ff05fe5126d152bd0655c9ea113e550f",
- "shasum": ""
- },
- "require": {
- "php": "^5.3.3 || ^7.0"
- },
- "require-dev": {
- "phpunit/phpunit": "^4.6",
- "sebastian/version": "^1.0.1"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.3-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Webmozart\\Assert\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Bernhard Schussek",
- "email": "bschussek@gmail.com"
- }
- ],
- "description": "Assertions to validate method input/output with nice error messages.",
- "keywords": [
- "assert",
- "check",
- "validate"
- ],
- "time": "2016-11-23 20:04:58"
- }
- ],
- "aliases": [],
- "minimum-stability": "stable",
- "stability-flags": [],
- "prefer-stable": false,
- "prefer-lowest": false,
- "platform": [],
- "platform-dev": []
-}
diff --git a/appengine/flexible/laravel/config/logging.php b/appengine/flexible/laravel/config/logging.php
new file mode 100644
index 0000000000..4dc65b9d81
--- /dev/null
+++ b/appengine/flexible/laravel/config/logging.php
@@ -0,0 +1,76 @@
+ env('LOG_CHANNEL', 'stack'),
+
+ /*
+ |--------------------------------------------------------------------------
+ | Log Channels
+ |--------------------------------------------------------------------------
+ |
+ | Here you may configure the log channels for your application. Out of
+ | the box, Laravel uses the Monolog PHP logging library. This gives
+ | you a variety of powerful log handlers / formatters to utilize.
+ |
+ | Available Drivers: "single", "daily", "slack", "syslog",
+ | "errorlog", "custom", "stack"
+ |
+ */
+
+ 'channels' => [
+ 'stack' => [
+ 'driver' => 'stack',
+ 'channels' => ['single'],
+ ],
+
+ 'single' => [
+ 'driver' => 'single',
+ 'path' => storage_path('logs/laravel.log'),
+ 'level' => 'debug',
+ ],
+
+ 'daily' => [
+ 'driver' => 'daily',
+ 'path' => storage_path('logs/laravel.log'),
+ 'level' => 'debug',
+ 'days' => 7,
+ ],
+
+ 'slack' => [
+ 'driver' => 'slack',
+ 'url' => env('LOG_SLACK_WEBHOOK_URL'),
+ 'username' => 'Laravel Log',
+ 'emoji' => ':boom:',
+ 'level' => 'critical',
+ ],
+
+ 'syslog' => [
+ 'driver' => 'syslog',
+ 'level' => 'debug',
+ ],
+
+ 'errorlog' => [
+ 'driver' => 'errorlog',
+ 'level' => 'debug',
+ ],
+ 'stackdriver' => [
+ 'driver' => 'custom',
+ 'via' => App\Logging\CreateCustomLogger::class,
+ 'level' => 'debug',
+ ],
+
+ ],
+
+];
diff --git a/appengine/flexible/laravel/phpunit.xml b/appengine/flexible/laravel/phpunit.xml
deleted file mode 100644
index 94224fd482..0000000000
--- a/appengine/flexible/laravel/phpunit.xml
+++ /dev/null
@@ -1,23 +0,0 @@
-
-
-
-
-
- tests
-
-
-
diff --git a/appengine/flexible/laravel/phpunit.xml.dist b/appengine/flexible/laravel/phpunit.xml.dist
new file mode 100644
index 0000000000..74216aad61
--- /dev/null
+++ b/appengine/flexible/laravel/phpunit.xml.dist
@@ -0,0 +1,32 @@
+
+
+
+
+
+ test
+ test/DeployTest.php
+
+
+
+
+ ./src
+
+ ./vendor
+
+
+
+
diff --git a/appengine/flexible/laravel/routes/web.php b/appengine/flexible/laravel/routes/web.php
new file mode 100644
index 0000000000..9e6d128db9
--- /dev/null
+++ b/appengine/flexible/laravel/routes/web.php
@@ -0,0 +1,25 @@
+setDir($tmpDir);
+ chdir($tmpDir);
+ }
+
+ private static function verifyEnvironmentVariables()
+ {
+ $envVars = [
+ 'LARAVEL_CLOUDSQL_CONNECTION_NAME',
+ 'LARAVEL_DB_DATABASE',
+ 'LARAVEL_DB_USERNAME',
+ 'LARAVEL_DB_PASSWORD',
+ ];
+ foreach ($envVars as $envVar) {
+ if (false === getenv($envVar)) {
+ self::fail("Please set the {$envVar} environment variable");
+ }
+ }
+ }
+
+ private static function createLaravelProject($targetDir)
+ {
+ // install
+ $laravelPackage = 'laravel/laravel';
+ $cmd = sprintf('composer create-project --no-scripts %s %s', $laravelPackage, $targetDir);
+ $process = self::createProcess($cmd);
+ $process->setTimeout(300); // 5 minutes
+ self::executeProcess($process);
+
+ // copy and set the proper env vars in app.yaml
+ $appYaml = str_replace([
+ 'YOUR_APP_KEY',
+ 'YOUR_CLOUDSQL_CONNECTION_NAME',
+ 'YOUR_DB_DATABASE',
+ 'YOUR_DB_USERNAME',
+ 'YOUR_DB_PASSWORD',
+ ], [
+ self::execute('php artisan key:generate --show --no-ansi'),
+ getenv('LARAVEL_CLOUDSQL_CONNECTION_NAME'),
+ getenv('LARAVEL_DB_DATABASE'),
+ getenv('LARAVEL_DB_USERNAME'),
+ getenv('LARAVEL_DB_PASSWORD'),
+ ], file_get_contents(__DIR__ . '/../app-dbsessions.yaml'));
+ file_put_contents($targetDir . '/app.yaml', $appYaml);
+ }
+
+ private static function addPostDeployCommands($targetDir)
+ {
+ $contents = file_get_contents($targetDir . '/composer.json');
+ $json = json_decode($contents, true);
+ $json['scripts']['post-install-cmd'] = [
+ 'chmod -R 755 bootstrap\/cache',
+ 'php artisan cache:clear',
+ ];
+ $newContents = json_encode($json, JSON_PRETTY_PRINT);
+ file_put_contents($targetDir . '/composer.json', $newContents);
+ }
+
+ public function testHomepage()
+ {
+ // Access the blog top page
+ $resp = $this->client->get('/');
+ $this->assertEquals(
+ '200',
+ $resp->getStatusCode(),
+ 'top page status code'
+ );
+ $content = $resp->getBody()->getContents();
+ $this->assertStringContainsString('Laravel', $content);
+ }
+}
diff --git a/appengine/flexible/laravel/test/DeployTest.php b/appengine/flexible/laravel/test/DeployTest.php
new file mode 100644
index 0000000000..2386bf380d
--- /dev/null
+++ b/appengine/flexible/laravel/test/DeployTest.php
@@ -0,0 +1,188 @@
+setDir($tmpDir);
+ chdir($tmpDir);
+ }
+
+ private static function createLaravelProject($targetDir)
+ {
+ // install
+ $laravelPackage = 'laravel/laravel';
+ $cmd = sprintf('composer create-project --no-scripts %s %s', $laravelPackage, $targetDir);
+ $process = self::createProcess($cmd);
+ $process->setTimeout(300); // 5 minutes
+ self::executeProcess($process);
+ // add cloud libraries
+ $cmd = sprintf(
+ 'composer --working-dir=%s require google/cloud-logging '
+ . 'google/cloud-error-reporting',
+ $targetDir
+ );
+ $process = self::createProcess($cmd);
+ $process->setTimeout(300); // 5 minutes
+ self::executeProcess($process);
+
+ // copy in the app.yaml and add the app key.
+ $appYaml = str_replace([
+ 'YOUR_APP_KEY',
+ ], [
+ self::execute('php artisan key:generate --show --no-ansi'),
+ ], file_get_contents(__DIR__ . '/../app.yaml'));
+ file_put_contents($targetDir . '/app.yaml', $appYaml);
+ // move the code for the sample to the new laravel installation
+ mkdir("$targetDir/app/Logging", 0700, true);
+ $files = [
+ 'routes/web.php',
+ 'config/logging.php',
+ 'app/Exceptions/Handler.php',
+ 'app/Logging/CreateCustomLogger.php',
+ ];
+ foreach ($files as $file) {
+ $source = sprintf('%s/../%s', __DIR__, $file);
+ $target = sprintf('%s/%s', $targetDir, $file);
+ copy($source, $target);
+ }
+ }
+
+ private static function addPostDeployCommands($targetDir)
+ {
+ $contents = file_get_contents($targetDir . '/composer.json');
+ $json = json_decode($contents, true);
+ $json['scripts']['post-install-cmd'] = [
+ 'php artisan cache:clear',
+ ];
+ $newContents = json_encode($json, JSON_PRETTY_PRINT);
+ file_put_contents($targetDir . '/composer.json', $newContents);
+ }
+
+ public function testHomepage()
+ {
+ // Access the blog top page
+ $resp = $this->client->get('/');
+ $this->assertEquals(
+ '200',
+ $resp->getStatusCode(),
+ 'top page status code'
+ );
+ $content = $resp->getBody()->getContents();
+ $this->assertStringContainsString('Laravel', $content);
+ }
+
+ public function testNormalLog()
+ {
+ // Access a page erroring with 500
+ $token = uniqid();
+ // The routes are defined in routes/web.php
+ $path = "/log/$token";
+ $resp = $this->client->request('GET', $path, ['http_errors' => false]);
+ $this->assertEquals(
+ '200',
+ $resp->getStatusCode(),
+ 'log page status code'
+ );
+ $logging = new LoggingClient(
+ ['projectId' => getenv('GOOGLE_PROJECT_ID')]
+ );
+ // 'app' is the default logname of our Stackdriver Logging
+ // integration.
+ $logger = $logging->logger('app');
+
+ $this->runEventuallyConsistentTest(
+ function () use ($logger, $token) {
+ $logs = $logger->entries([
+ 'pageSize' => 100,
+ 'orderBy' => 'timestamp desc',
+ 'resultLimit' => 100
+ ]);
+ $found = false;
+ foreach ($logs as $log) {
+ $info = $log->info();
+ if (strpos("token: $token", $info['jsonPayload']['message']) !== 0) {
+ $found = true;
+ }
+ }
+ $this->assertTrue($found, 'The log entry was not found');
+ });
+ }
+
+ public function testErrorLog()
+ {
+ // Access a page erroring with 500
+ $token = uniqid();
+ // The routes are defined in routes/web.php
+ $path = "/exception/$token";
+ $resp = $this->client->request('GET', $path, ['http_errors' => false]);
+ $this->assertEquals(
+ '500',
+ $resp->getStatusCode(),
+ 'exception page status code'
+ );
+ $logging = new LoggingClient(
+ ['projectId' => getenv('GOOGLE_PROJECT_ID')]
+ );
+ // 'app-error' is the default logname of our Stackdriver Error
+ // Reporting integration.
+ $logger = $logging->logger('app-error');
+
+ $this->runEventuallyConsistentTest(
+ function () use ($logger, $token) {
+ $logs = $logger->entries([
+ 'pageSize' => 100,
+ 'orderBy' => 'timestamp desc',
+ 'resultLimit' => 100
+ ]);
+ $found = false;
+ foreach ($logs as $log) {
+ $info = $log->info();
+ if (strpos("token: $token", $info['jsonPayload']['message']) !== 0) {
+ $found = true;
+ }
+ }
+ $this->assertTrue($found, 'The log entry was not found');
+ });
+ }
+}
diff --git a/appengine/flexible/laravel/tests/DeployTest.php b/appengine/flexible/laravel/tests/DeployTest.php
deleted file mode 100644
index 851c67f4c2..0000000000
--- a/appengine/flexible/laravel/tests/DeployTest.php
+++ /dev/null
@@ -1,127 +0,0 @@
-setDir($tmpDir);
- chdir($tmpDir);
- }
-
- private static function verifyEnvironmentVariables()
- {
- $envVars = [
- 'LARAVEL_CLOUDSQL_CONNECTION_NAME',
- 'LARAVEL_DB_DATABASE',
- 'LARAVEL_DB_USERNAME',
- 'LARAVEL_DB_PASSWORD',
- ];
- foreach ($envVars as $envVar) {
- if (false === getenv($envVar)) {
- self::fail("Please set the ${envVar} environment variable");
- }
- }
- }
-
- private static function createLaravelProject($targetDir)
- {
- // install
- $laravelVersion = 'laravel/laravel';
- $cmd = sprintf('composer create-project --no-scripts %s %s', $laravelVersion, $targetDir);
- $process = self::createProcess($cmd);
- $process->setTimeout(300); // 5 minutes
- self::executeProcess($process);
-
- // copy and set the proper env vars in app.yaml
- $appYaml = str_replace([
- 'YOUR_CLOUDSQL_CONNECTION_NAME',
- 'YOUR_DB_DATABASE',
- 'YOUR_DB_USERNAME',
- 'YOUR_DB_PASSWORD',
- ], [
- getenv('LARAVEL_CLOUDSQL_CONNECTION_NAME'),
- getenv('LARAVEL_DB_DATABASE'),
- getenv('LARAVEL_DB_USERNAME'),
- getenv('LARAVEL_DB_PASSWORD'),
- ], file_get_contents(__DIR__ . '/../app.yaml'));
- file_put_contents($targetDir . '/app.yaml', $appYaml);
-
- // add "socket" to "config/database.php"
- $databaseConfig = str_replace(
- "'driver' => 'mysql',",
- "'driver' => 'mysql',
- 'unix_socket' => env('DB_SOCKET', ''),",
- file_get_contents($targetDir . '/config/database.php'));
- file_put_contents($targetDir . '/config/database.php', $databaseConfig);
-
- // copy over the base .env file
- self::execute('cp .env.example .env');
-
- // generate the secret
- self::execute('php artisan key:generate');
- }
-
- private static function addPostBuildCommands($targetDir)
- {
- $contents = file_get_contents($targetDir . '/composer.json');
- $json = json_decode($contents, true);
- $json['scripts']['post-deploy-cmd'] = [
- 'chmod -R 755 bootstrap\/cache',
- ];
- $newContents = json_encode($json, JSON_PRETTY_PRINT);
- file_put_contents($targetDir . '/composer.json', $newContents);
- }
-
- public function testHomepage()
- {
- // Access the blog top page
- $resp = $this->client->get('/');
- $this->assertEquals(
- '200',
- $resp->getStatusCode(),
- 'top page status code'
- );
- $content = $resp->getBody()->getContents();
- $this->assertContains('Laravel', $content);
- }
-}
diff --git a/appengine/flexible/laravel/tests/bootstrap.php b/appengine/flexible/laravel/tests/bootstrap.php
deleted file mode 100644
index ee2e3fe6e6..0000000000
--- a/appengine/flexible/laravel/tests/bootstrap.php
+++ /dev/null
@@ -1,19 +0,0 @@
-addErrorMiddleware(true, true, true);
+
+// Create Twig
+$twig = Twig::create(__DIR__);
+$app->add(TwigMiddleware::create($app, $twig));
+
+$projectId = getenv('GCLOUD_PROJECT');
+
+$app->get('/', function (Request $request, Response $response) use ($projectId, $twig) {
+ if (empty($projectId)) {
+ $response->getBody()->write('Set the GCLOUD_PROJECT environment variable to run locally');
+ return $response;
+ }
+ $logging = new LoggingClient([
+ 'projectId' => $projectId
+ ]);
+ $logger = $logging->logger('app');
+ $oneDayAgo = (new \DateTime('-1 day'))->format('c'); // ISO-8061
+ $logs = $logger->entries([
+ 'pageSize' => 10,
+ 'resultLimit' => 10,
+ 'orderBy' => 'timestamp desc',
+ 'filter' => sprintf('timestamp >= "%s"', $oneDayAgo),
+ ]);
+ return $twig->render($response, 'index.html.twig', ['logs' => $logs]);
+});
+
+$app->post('/log', function (Request $request, Response $response) use ($projectId) {
+ parse_str((string) $request->getBody(), $postData);
+ # [START gae_flex_configure_logging]
+ # [START logging_creating_psr3_logger]
+ $logging = new LoggingClient([
+ 'projectId' => $projectId
+ ]);
+ $logger = $logging->psrLogger('app');
+ # [END logging_creating_psr3_logger]
+ $logger->notice($postData['text'] ?? '');
+ # [END gae_flex_configure_logging]
+ return $response
+ ->withHeader('Location', '/')
+ ->withStatus(302);
+});
+
+$app->get('/async_log', function (Request $request, Response $response) use ($projectId) {
+ $token = $request->getUri()->getQuery('token');
+ # [START logging_enabling_psr3_batch]
+ $logger = LoggingClient::psrBatchLogger('app');
+ # [END logging_enabling_psr3_batch]
+ # [START logging_using_psr3_logger]
+ $logger->info('Hello World');
+ $logger->error('Oh no');
+ # [END logging_using_psr3_logger]
+ $logger->info("Token: $token");
+ $response->getBody()->write('Sent some logs');
+ return $response;
+});
+
+return $app;
diff --git a/appengine/flexible/logging/app.yaml b/appengine/flexible/logging/app.yaml
new file mode 100644
index 0000000000..8d960608f5
--- /dev/null
+++ b/appengine/flexible/logging/app.yaml
@@ -0,0 +1,10 @@
+runtime: php
+env: flex
+
+runtime_config:
+ document_root: .
+ # [START error_reporting_setup_php_app_yaml]
+ # [START trace_setup_php_enabling_stackdriver_integration]
+ enable_stackdriver_integration: true
+ # [END trace_setup_php_enabling_stackdriver_integration]
+ # [END error_reporting_setup_php_app_yaml]
diff --git a/appengine/flexible/logging/composer.json b/appengine/flexible/logging/composer.json
new file mode 100644
index 0000000000..e3b309fe15
--- /dev/null
+++ b/appengine/flexible/logging/composer.json
@@ -0,0 +1,9 @@
+{
+ "require": {
+ "google/cloud-logging": "^1.21.0",
+ "google/cloud-error-reporting": "^0.18.0",
+ "slim/slim": "^4.0",
+ "slim/psr7": "^1.3",
+ "slim/twig-view": "^3.2"
+ }
+}
diff --git a/appengine/flexible/logging/index.html.twig b/appengine/flexible/logging/index.html.twig
new file mode 100644
index 0000000000..9ee879ecb0
--- /dev/null
+++ b/appengine/flexible/logging/index.html.twig
@@ -0,0 +1,17 @@
+
+
+Logs:
+
+
+{% for log in logs %}
+ -
+ {{ log.info.timestamp|split('.')[0]|date('M jS, H:i')}}:
+ {{ log.info.jsonPayload.message }}
+
+{% else %}
+ - No Logs!
+{% endfor %}
+
diff --git a/appengine/flexible/logging/index.php b/appengine/flexible/logging/index.php
new file mode 100644
index 0000000000..d8dfc5ea3e
--- /dev/null
+++ b/appengine/flexible/logging/index.php
@@ -0,0 +1,22 @@
+run();
diff --git a/appengine/flexible/logging/phpunit.xml.dist b/appengine/flexible/logging/phpunit.xml.dist
new file mode 100644
index 0000000000..6c24c63aee
--- /dev/null
+++ b/appengine/flexible/logging/phpunit.xml.dist
@@ -0,0 +1,35 @@
+
+
+
+
+
+ test
+ test/DeployTest.php
+
+
+
+
+
+
+
+ app.php
+
+ ./vendor
+
+
+
+
diff --git a/appengine/flexible/logging/test/DeployTest.php b/appengine/flexible/logging/test/DeployTest.php
new file mode 100644
index 0000000000..27493c9712
--- /dev/null
+++ b/appengine/flexible/logging/test/DeployTest.php
@@ -0,0 +1,74 @@
+markTestSkipped('No secret available');
+ // TODO: Make the test runnable without secret
+ }
+ }
+ public function testIndex()
+ {
+ // Access the modules app top page.
+ $resp = $this->client->get('/');
+ $this->assertEquals('200', $resp->getStatusCode(),
+ 'top page status code');
+
+ $this->assertStringContainsString('Logs:', (string) $resp->getBody());
+ }
+ public function testAsyncLog()
+ {
+ $token = uniqid();
+ $resp = $this->client->get("/async_log?token=$token");
+ $this->assertEquals('200', $resp->getStatusCode(),
+ 'async_log status code');
+ $logging = new LoggingClient(
+ ['projectId' => getenv('GOOGLE_PROJECT_ID')]
+ );
+ $logger = $logging->logger('app');
+
+ $this->runEventuallyConsistentTest(
+ function () use ($logger, $token) {
+ $logs = $logger->entries([
+ 'pageSize' => 100,
+ 'orderBy' => 'timestamp desc',
+ 'resultLimit' => 100
+ ]);
+ $found = false;
+ foreach ($logs as $log) {
+ $info = $log->info();
+ if (strpos($token, $info['jsonPayload']['message']) !== 0) {
+ $found = true;
+ }
+ }
+ $this->assertTrue($found, 'The log entry was not found');
+ });
+ }
+}
diff --git a/appengine/flexible/logging/test/LocalTest.php b/appengine/flexible/logging/test/LocalTest.php
new file mode 100644
index 0000000000..ff1ceffe90
--- /dev/null
+++ b/appengine/flexible/logging/test/LocalTest.php
@@ -0,0 +1,48 @@
+createRequest('GET', '/');
+ $response = $app->handle($request);
+
+ $this->assertEquals(200, $response->getStatusCode());
+ $text = (string) $response->getBody();
+ $this->assertStringContainsString('Logs:', $text);
+ }
+
+ public function testAsyncLog()
+ {
+ $app = require __DIR__ . '/../app.php';
+
+ $request = (new RequestFactory)->createRequest('GET', '/async_log');
+ $response = $app->handle($request);
+
+ $this->assertEquals(200, $response->getStatusCode());
+ }
+}
diff --git a/appengine/flexible/mailgun/README.md b/appengine/flexible/mailgun/README.md
deleted file mode 100644
index ec84849f2f..0000000000
--- a/appengine/flexible/mailgun/README.md
+++ /dev/null
@@ -1,48 +0,0 @@
-# Mailgun PHP Sample Application for App Engine Flexible Environment.
-
-## Description
-
-This sample application demonstrates how to use [Mailgun with Google App Engine](https://cloud.google.com/appengine/docs/php/mail/).
-
-## Setup
-
-Before running this sample:
-
-1. You will need a [Mailgun account](http://www.mailgun.com/google).
-2. Update `MAILGUN_DOMAIN` and `MAILGUN_APIKEY` in `index.php` to match your
- Mailgun credentials. You can use your account's sandbox domain.
-
-## Prerequisites
-
-- Install [`composer`](https://getcomposer.org)
-- Install dependencies by running:
-
-```sh
-composer install
-```
-
-## Deploy to App Engine
-
-**Prerequisites**
-
-- Install the [Google Cloud SDK](https://developers.google.com/cloud/sdk/).
-
-**Deploy with gcloud**
-
-```
-gcloud config set project YOUR_PROJECT_ID
-gcloud app deploy
-gcloud app browse
-```
-
-The last command will open `https://{YOUR_PROJECT_ID}.appspot.com/`
-in your browser.
-
-## Run Locally
-
-```
-cd /path/to/php-docs-samples/appengine/flexible/mailgun
-php -S localhost:8080
-```
-
-Now browse to `http://localhost:8080` to view the sample.
diff --git a/appengine/flexible/mailgun/app.php b/appengine/flexible/mailgun/app.php
deleted file mode 100644
index cc7969a4a6..0000000000
--- a/appengine/flexible/mailgun/app.php
+++ /dev/null
@@ -1,100 +0,0 @@
-get('/', function () use ($app) {
- if ($app['mailgun.domain'] == 'MAILGUN_DOMAIN') {
- return 'set your mailgun domain and API key in index.php';
- }
-
- return <<
-
-
-
-EOF;
-});
-
-$app->post('/', function () use ($app) {
- /** @var Symfony\Component\HttpFoundation\Request $request */
- $request = $app['request'];
- $recipient = $request->get('recipient');
- $action = $request->get('submit');
-
- $app['send_message.' . $action]($recipient, $app['mailgun.domain'], $app['mailgun.api_key']);
-
- return ucfirst($action . ' email sent');
-});
-
-$app['send_message.simple'] = $app->protect(function (
- $recipient,
- $mailgunDomain,
- $mailgunApiKey
-) {
- # [START simple_message]
- // Instantiate the client.
- $httpClient = new Http\Adapter\Guzzle6\Client();
- $mailgunClient = new Mailgun\Mailgun($mailgunApiKey, $httpClient);
-
- // Make the call to the client.
- $result = $mailgunClient->sendMessage($mailgunDomain, array(
- 'from' => sprintf('Example Sender ', $mailgunDomain),
- 'to' => $recipient,
- 'subject' => 'Hello',
- 'text' => 'Testing some Mailgun awesomeness!',
- ));
- # [END simple_message]
- return $result;
-});
-
-$app['send_message.complex'] = $app->protect(function (
- $recipient,
- $mailgunDomain,
- $mailgunApiKey,
- $cc = 'cc@example.com',
- $bcc = 'bcc@example.com'
-) {
- # [START complex_message]
- // Instantiate the client.
- $httpClient = new Http\Adapter\Guzzle6\Client();
- $mailgunClient = new Mailgun\Mailgun($mailgunApiKey, $httpClient);
- $fileAttachment = __DIR__ . '/attachment.txt';
-
- // Make the call to the client.
- $result = $mailgunClient->sendMessage($mailgunDomain, array(
- 'from' => sprintf('Example Sender ', $mailgunDomain),
- 'to' => $recipient,
- 'cc' => $cc,
- 'bcc' => $bcc,
- 'subject' => 'Hello',
- 'text' => 'Testing some Mailgun awesomeness!',
- 'html' => 'HTML version of the body',
- ), array(
- 'attachment' => array($fileAttachment, $fileAttachment),
- ));
- # [END complex_message]
- return $result;
-});
-
-return $app;
diff --git a/appengine/flexible/mailgun/attachment.txt b/appengine/flexible/mailgun/attachment.txt
deleted file mode 100644
index 41153913f0..0000000000
--- a/appengine/flexible/mailgun/attachment.txt
+++ /dev/null
@@ -1 +0,0 @@
-This is a mailgun attachment
\ No newline at end of file
diff --git a/appengine/flexible/mailgun/composer.json b/appengine/flexible/mailgun/composer.json
deleted file mode 100644
index 68a1a2213f..0000000000
--- a/appengine/flexible/mailgun/composer.json
+++ /dev/null
@@ -1,13 +0,0 @@
-{
- "require": {
- "silex/silex": "^1.3",
- "mailgun/mailgun-php": "~2.0",
- "php-http/guzzle6-adapter": "^1.0",
- "symfony/yaml": "^3.1"
- },
- "require-dev": {
- "symfony/browser-kit": "^3.0",
- "google/cloud-tools": "^0.6",
- "paragonie/random_compat": "^2.0"
- }
-}
diff --git a/appengine/flexible/mailgun/composer.lock b/appengine/flexible/mailgun/composer.lock
deleted file mode 100644
index 4b4ef0b96a..0000000000
--- a/appengine/flexible/mailgun/composer.lock
+++ /dev/null
@@ -1,2855 +0,0 @@
-{
- "_readme": [
- "This file locks the dependencies of your project to a known state",
- "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file",
- "This file is @generated automatically"
- ],
- "hash": "72e37c7e2a905dfd37f8d79ea9896704",
- "content-hash": "bf92a77afafaf99b57db5ce4d7c549d3",
- "packages": [
- {
- "name": "clue/stream-filter",
- "version": "v1.3.0",
- "source": {
- "type": "git",
- "url": "https://github.com/clue/php-stream-filter.git",
- "reference": "e3bf9415da163d9ad6701dccb407ed501ae69785"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/clue/php-stream-filter/zipball/e3bf9415da163d9ad6701dccb407ed501ae69785",
- "reference": "e3bf9415da163d9ad6701dccb407ed501ae69785",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3"
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "Clue\\StreamFilter\\": "src/"
- },
- "files": [
- "src/functions.php"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Christian Lück",
- "email": "christian@lueck.tv"
- }
- ],
- "description": "A simple and modern approach to stream filtering in PHP",
- "homepage": "https://github.com/clue/php-stream-filter",
- "keywords": [
- "bucket brigade",
- "callback",
- "filter",
- "php_user_filter",
- "stream",
- "stream_filter_append",
- "stream_filter_register"
- ],
- "time": "2015-11-08 23:41:30"
- },
- {
- "name": "guzzlehttp/guzzle",
- "version": "6.2.2",
- "source": {
- "type": "git",
- "url": "https://github.com/guzzle/guzzle.git",
- "reference": "ebf29dee597f02f09f4d5bbecc68230ea9b08f60"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/guzzle/guzzle/zipball/ebf29dee597f02f09f4d5bbecc68230ea9b08f60",
- "reference": "ebf29dee597f02f09f4d5bbecc68230ea9b08f60",
- "shasum": ""
- },
- "require": {
- "guzzlehttp/promises": "^1.0",
- "guzzlehttp/psr7": "^1.3.1",
- "php": ">=5.5"
- },
- "require-dev": {
- "ext-curl": "*",
- "phpunit/phpunit": "^4.0",
- "psr/log": "^1.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "6.2-dev"
- }
- },
- "autoload": {
- "files": [
- "src/functions_include.php"
- ],
- "psr-4": {
- "GuzzleHttp\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Michael Dowling",
- "email": "mtdowling@gmail.com",
- "homepage": "https://github.com/mtdowling"
- }
- ],
- "description": "Guzzle is a PHP HTTP client library",
- "homepage": "http://guzzlephp.org/",
- "keywords": [
- "client",
- "curl",
- "framework",
- "http",
- "http client",
- "rest",
- "web service"
- ],
- "time": "2016-10-08 15:01:37"
- },
- {
- "name": "guzzlehttp/promises",
- "version": "1.3.0",
- "source": {
- "type": "git",
- "url": "https://github.com/guzzle/promises.git",
- "reference": "2693c101803ca78b27972d84081d027fca790a1e"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/guzzle/promises/zipball/2693c101803ca78b27972d84081d027fca790a1e",
- "reference": "2693c101803ca78b27972d84081d027fca790a1e",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.0"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "GuzzleHttp\\Promise\\": "src/"
- },
- "files": [
- "src/functions_include.php"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Michael Dowling",
- "email": "mtdowling@gmail.com",
- "homepage": "https://github.com/mtdowling"
- }
- ],
- "description": "Guzzle promises library",
- "keywords": [
- "promise"
- ],
- "time": "2016-11-18 17:47:58"
- },
- {
- "name": "guzzlehttp/psr7",
- "version": "1.3.1",
- "source": {
- "type": "git",
- "url": "https://github.com/guzzle/psr7.git",
- "reference": "5c6447c9df362e8f8093bda8f5d8873fe5c7f65b"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/guzzle/psr7/zipball/5c6447c9df362e8f8093bda8f5d8873fe5c7f65b",
- "reference": "5c6447c9df362e8f8093bda8f5d8873fe5c7f65b",
- "shasum": ""
- },
- "require": {
- "php": ">=5.4.0",
- "psr/http-message": "~1.0"
- },
- "provide": {
- "psr/http-message-implementation": "1.0"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.4-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "GuzzleHttp\\Psr7\\": "src/"
- },
- "files": [
- "src/functions_include.php"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Michael Dowling",
- "email": "mtdowling@gmail.com",
- "homepage": "https://github.com/mtdowling"
- }
- ],
- "description": "PSR-7 message implementation",
- "keywords": [
- "http",
- "message",
- "stream",
- "uri"
- ],
- "time": "2016-06-24 23:00:38"
- },
- {
- "name": "mailgun/mailgun-php",
- "version": "v2.1.2",
- "source": {
- "type": "git",
- "url": "https://github.com/mailgun/mailgun-php.git",
- "reference": "54b7f851b8e0241d593897dc2d50906bf4a43995"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/mailgun/mailgun-php/zipball/54b7f851b8e0241d593897dc2d50906bf4a43995",
- "reference": "54b7f851b8e0241d593897dc2d50906bf4a43995",
- "shasum": ""
- },
- "require": {
- "php": "^5.5|^7.0",
- "php-http/discovery": "^1.0",
- "php-http/httplug": "^1.0",
- "php-http/message": "^1.0",
- "php-http/multipart-stream-builder": "^0.1"
- },
- "require-dev": {
- "php-http/guzzle6-adapter": "^1.0",
- "phpunit/phpunit": "~4.6"
- },
- "type": "library",
- "autoload": {
- "psr-0": {
- "Mailgun": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Travis Swientek",
- "email": "travis@mailgunhq.com"
- }
- ],
- "description": "The Mailgun SDK provides methods for all API functions.",
- "time": "2016-08-10 16:58:18"
- },
- {
- "name": "php-http/discovery",
- "version": "v1.1.1",
- "source": {
- "type": "git",
- "url": "https://github.com/php-http/discovery.git",
- "reference": "47fc36bd73ab615b55c31f4134e6bae70f1c04c1"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/php-http/discovery/zipball/47fc36bd73ab615b55c31f4134e6bae70f1c04c1",
- "reference": "47fc36bd73ab615b55c31f4134e6bae70f1c04c1",
- "shasum": ""
- },
- "require": {
- "php": "^5.5 || ^7.0"
- },
- "require-dev": {
- "henrikbjorn/phpspec-code-coverage": "^2.0.2",
- "php-http/httplug": "^1.0",
- "php-http/message-factory": "^1.0",
- "phpspec/phpspec": "^2.4",
- "puli/composer-plugin": "1.0.0-beta10"
- },
- "suggest": {
- "php-http/message": "Allow to use Guzzle, Diactoros or Slim Framework factories",
- "puli/composer-plugin": "Sets up Puli which is recommended for Discovery to work. Check http://docs.php-http.org/en/latest/discovery.html for more details."
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.2-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Http\\Discovery\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Márk Sági-Kazár",
- "email": "mark.sagikazar@gmail.com"
- }
- ],
- "description": "Finds installed HTTPlug implementations and PSR-7 message factories",
- "homepage": "http://php-http.org/",
- "keywords": [
- "adapter",
- "client",
- "discovery",
- "factory",
- "http",
- "message",
- "psr7"
- ],
- "time": "2016-11-27 12:21:25"
- },
- {
- "name": "php-http/guzzle6-adapter",
- "version": "v1.1.1",
- "source": {
- "type": "git",
- "url": "https://github.com/php-http/guzzle6-adapter.git",
- "reference": "a56941f9dc6110409cfcddc91546ee97039277ab"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/php-http/guzzle6-adapter/zipball/a56941f9dc6110409cfcddc91546ee97039277ab",
- "reference": "a56941f9dc6110409cfcddc91546ee97039277ab",
- "shasum": ""
- },
- "require": {
- "guzzlehttp/guzzle": "^6.0",
- "php": ">=5.5.0",
- "php-http/httplug": "^1.0"
- },
- "provide": {
- "php-http/async-client-implementation": "1.0",
- "php-http/client-implementation": "1.0"
- },
- "require-dev": {
- "ext-curl": "*",
- "php-http/adapter-integration-tests": "^0.4"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.2-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Http\\Adapter\\Guzzle6\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Márk Sági-Kazár",
- "email": "mark.sagikazar@gmail.com"
- },
- {
- "name": "David de Boer",
- "email": "david@ddeboer.nl"
- }
- ],
- "description": "Guzzle 6 HTTP Adapter",
- "homepage": "http://httplug.io/",
- "keywords": [
- "Guzzle",
- "http"
- ],
- "time": "2016-05-10 06:13:32"
- },
- {
- "name": "php-http/httplug",
- "version": "v1.1.0",
- "source": {
- "type": "git",
- "url": "https://github.com/php-http/httplug.git",
- "reference": "1c6381726c18579c4ca2ef1ec1498fdae8bdf018"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/php-http/httplug/zipball/1c6381726c18579c4ca2ef1ec1498fdae8bdf018",
- "reference": "1c6381726c18579c4ca2ef1ec1498fdae8bdf018",
- "shasum": ""
- },
- "require": {
- "php": ">=5.4",
- "php-http/promise": "^1.0",
- "psr/http-message": "^1.0"
- },
- "require-dev": {
- "henrikbjorn/phpspec-code-coverage": "^1.0",
- "phpspec/phpspec": "^2.4"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.1-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Http\\Client\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Eric GELOEN",
- "email": "geloen.eric@gmail.com"
- },
- {
- "name": "Márk Sági-Kazár",
- "email": "mark.sagikazar@gmail.com"
- }
- ],
- "description": "HTTPlug, the HTTP client abstraction for PHP",
- "homepage": "http://httplug.io/",
- "keywords": [
- "client",
- "http"
- ],
- "time": "2016-08-31 08:30:17"
- },
- {
- "name": "php-http/message",
- "version": "v1.4.0",
- "source": {
- "type": "git",
- "url": "https://github.com/php-http/message.git",
- "reference": "20ffbdc291a127e93f66007742693fbdf020d223"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/php-http/message/zipball/20ffbdc291a127e93f66007742693fbdf020d223",
- "reference": "20ffbdc291a127e93f66007742693fbdf020d223",
- "shasum": ""
- },
- "require": {
- "clue/stream-filter": "^1.3",
- "php": ">=5.4",
- "php-http/message-factory": "^1.0.2",
- "psr/http-message": "^1.0"
- },
- "require-dev": {
- "akeneo/phpspec-skip-example-extension": "^1.0",
- "coduo/phpspec-data-provider-extension": "^1.0",
- "ext-zlib": "*",
- "guzzlehttp/psr7": "^1.0",
- "henrikbjorn/phpspec-code-coverage": "^1.0",
- "phpspec/phpspec": "^2.4",
- "slim/slim": "^3.0",
- "zendframework/zend-diactoros": "^1.0"
- },
- "suggest": {
- "ext-zlib": "Used with compressor/decompressor streams",
- "guzzlehttp/psr7": "Used with Guzzle PSR-7 Factories",
- "slim/slim": "Used with Slim Framework PSR-7 implementation",
- "zendframework/zend-diactoros": "Used with Diactoros Factories"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.5-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Http\\Message\\": "src/"
- },
- "files": [
- "src/filters.php"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Márk Sági-Kazár",
- "email": "mark.sagikazar@gmail.com"
- }
- ],
- "description": "HTTP Message related tools",
- "homepage": "http://php-http.org/",
- "keywords": [
- "http",
- "message",
- "psr-7"
- ],
- "time": "2016-10-20 06:59:05"
- },
- {
- "name": "php-http/message-factory",
- "version": "v1.0.2",
- "source": {
- "type": "git",
- "url": "https://github.com/php-http/message-factory.git",
- "reference": "a478cb11f66a6ac48d8954216cfed9aa06a501a1"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/php-http/message-factory/zipball/a478cb11f66a6ac48d8954216cfed9aa06a501a1",
- "reference": "a478cb11f66a6ac48d8954216cfed9aa06a501a1",
- "shasum": ""
- },
- "require": {
- "php": ">=5.4",
- "psr/http-message": "^1.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Http\\Message\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Márk Sági-Kazár",
- "email": "mark.sagikazar@gmail.com"
- }
- ],
- "description": "Factory interfaces for PSR-7 HTTP Message",
- "homepage": "http://php-http.org/",
- "keywords": [
- "factory",
- "http",
- "message",
- "stream",
- "uri"
- ],
- "time": "2015-12-19 14:08:53"
- },
- {
- "name": "php-http/multipart-stream-builder",
- "version": "0.1.2",
- "source": {
- "type": "git",
- "url": "https://github.com/php-http/multipart-stream-builder.git",
- "reference": "29f8b0a9e00ebaa7cbf0f2f0f7db4e0bc3f403d2"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/php-http/multipart-stream-builder/zipball/29f8b0a9e00ebaa7cbf0f2f0f7db4e0bc3f403d2",
- "reference": "29f8b0a9e00ebaa7cbf0f2f0f7db4e0bc3f403d2",
- "shasum": ""
- },
- "require": {
- "php": "^5.5 || ^7.0",
- "php-http/discovery": "^1.0",
- "php-http/message-factory": "^1.0.2",
- "psr/http-message": "^1.0"
- },
- "require-dev": {
- "php-http/message": "^1.0",
- "phpunit/phpunit": "^4.8 || ^5.4",
- "zendframework/zend-diactoros": "^1.3.5"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "0.2-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Http\\Message\\MultipartStream\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Tobias Nyholm",
- "email": "tobias.nyholm@gmail.com"
- }
- ],
- "description": "A builder class that help you create a multipart stream",
- "homepage": "http://php-http.org/",
- "keywords": [
- "factory",
- "http",
- "message",
- "stream"
- ],
- "time": "2016-08-31 10:13:17"
- },
- {
- "name": "php-http/promise",
- "version": "v1.0.0",
- "source": {
- "type": "git",
- "url": "https://github.com/php-http/promise.git",
- "reference": "dc494cdc9d7160b9a09bd5573272195242ce7980"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/php-http/promise/zipball/dc494cdc9d7160b9a09bd5573272195242ce7980",
- "reference": "dc494cdc9d7160b9a09bd5573272195242ce7980",
- "shasum": ""
- },
- "require-dev": {
- "henrikbjorn/phpspec-code-coverage": "^1.0",
- "phpspec/phpspec": "^2.4"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.1-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Http\\Promise\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Márk Sági-Kazár",
- "email": "mark.sagikazar@gmail.com"
- },
- {
- "name": "Joel Wurtz",
- "email": "joel.wurtz@gmail.com"
- }
- ],
- "description": "Promise used for asynchronous HTTP requests",
- "homepage": "http://httplug.io/",
- "keywords": [
- "promise"
- ],
- "time": "2016-01-26 13:27:02"
- },
- {
- "name": "pimple/pimple",
- "version": "v1.1.1",
- "source": {
- "type": "git",
- "url": "https://github.com/silexphp/Pimple.git",
- "reference": "2019c145fe393923f3441b23f29bbdfaa5c58c4d"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/silexphp/Pimple/zipball/2019c145fe393923f3441b23f29bbdfaa5c58c4d",
- "reference": "2019c145fe393923f3441b23f29bbdfaa5c58c4d",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.1.x-dev"
- }
- },
- "autoload": {
- "psr-0": {
- "Pimple": "lib/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- }
- ],
- "description": "Pimple is a simple Dependency Injection Container for PHP 5.3",
- "homepage": "http://pimple.sensiolabs.org/",
- "keywords": [
- "container",
- "dependency injection"
- ],
- "time": "2013-11-22 08:30:29"
- },
- {
- "name": "psr/http-message",
- "version": "1.0.1",
- "source": {
- "type": "git",
- "url": "https://github.com/php-fig/http-message.git",
- "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/php-fig/http-message/zipball/f6561bf28d520154e4b0ec72be95418abe6d9363",
- "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Psr\\Http\\Message\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "PHP-FIG",
- "homepage": "http://www.php-fig.org/"
- }
- ],
- "description": "Common interface for HTTP messages",
- "homepage": "https://github.com/php-fig/http-message",
- "keywords": [
- "http",
- "http-message",
- "psr",
- "psr-7",
- "request",
- "response"
- ],
- "time": "2016-08-06 14:39:51"
- },
- {
- "name": "psr/log",
- "version": "1.0.2",
- "source": {
- "type": "git",
- "url": "https://github.com/php-fig/log.git",
- "reference": "4ebe3a8bf773a19edfe0a84b6585ba3d401b724d"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/php-fig/log/zipball/4ebe3a8bf773a19edfe0a84b6585ba3d401b724d",
- "reference": "4ebe3a8bf773a19edfe0a84b6585ba3d401b724d",
- "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": "2016-10-10 12:19:37"
- },
- {
- "name": "silex/silex",
- "version": "v1.3.5",
- "source": {
- "type": "git",
- "url": "https://github.com/silexphp/Silex.git",
- "reference": "374c7e04040a6f781c90f7d746726a5daa78e783"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/silexphp/Silex/zipball/374c7e04040a6f781c90f7d746726a5daa78e783",
- "reference": "374c7e04040a6f781c90f7d746726a5daa78e783",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.9",
- "pimple/pimple": "~1.0",
- "symfony/event-dispatcher": "~2.3|3.0.*",
- "symfony/http-foundation": "~2.3|3.0.*",
- "symfony/http-kernel": "~2.3|3.0.*",
- "symfony/routing": "~2.3|3.0.*"
- },
- "require-dev": {
- "doctrine/dbal": "~2.2",
- "monolog/monolog": "^1.4.1",
- "swiftmailer/swiftmailer": "~5",
- "symfony/browser-kit": "~2.3|3.0.*",
- "symfony/config": "~2.3|3.0.*",
- "symfony/css-selector": "~2.3|3.0.*",
- "symfony/debug": "~2.3|3.0.*",
- "symfony/dom-crawler": "~2.3|3.0.*",
- "symfony/finder": "~2.3|3.0.*",
- "symfony/form": "~2.3|3.0.*",
- "symfony/locale": "~2.3|3.0.*",
- "symfony/monolog-bridge": "~2.3|3.0.*",
- "symfony/options-resolver": "~2.3|3.0.*",
- "symfony/phpunit-bridge": "~2.7",
- "symfony/process": "~2.3|3.0.*",
- "symfony/security": "~2.3|3.0.*",
- "symfony/serializer": "~2.3|3.0.*",
- "symfony/translation": "~2.3|3.0.*",
- "symfony/twig-bridge": "~2.3|3.0.*",
- "symfony/validator": "~2.3|3.0.*",
- "twig/twig": "~1.8|~2.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.3.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Silex\\": "src/Silex"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Igor Wiedler",
- "email": "igor@wiedler.ch"
- }
- ],
- "description": "The PHP micro-framework based on the Symfony Components",
- "homepage": "http://silex.sensiolabs.org/",
- "keywords": [
- "microframework"
- ],
- "time": "2016-01-06 14:59:35"
- },
- {
- "name": "symfony/debug",
- "version": "v3.1.7",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/debug.git",
- "reference": "c058661c32f5b462722e36d120905940089cbd9a"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/debug/zipball/c058661c32f5b462722e36d120905940089cbd9a",
- "reference": "c058661c32f5b462722e36d120905940089cbd9a",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9",
- "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"
- },
- "require-dev": {
- "symfony/class-loader": "~2.8|~3.0",
- "symfony/http-kernel": "~2.8|~3.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.1-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\Debug\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "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": "2016-11-15 12:55:20"
- },
- {
- "name": "symfony/event-dispatcher",
- "version": "v3.0.9",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/event-dispatcher.git",
- "reference": "54da3ff63dec3c9c0e32ec3f95a7d94ef64baa00"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/54da3ff63dec3c9c0e32ec3f95a7d94ef64baa00",
- "reference": "54da3ff63dec3c9c0e32ec3f95a7d94ef64baa00",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9"
- },
- "require-dev": {
- "psr/log": "~1.0",
- "symfony/config": "~2.8|~3.0",
- "symfony/dependency-injection": "~2.8|~3.0",
- "symfony/expression-language": "~2.8|~3.0",
- "symfony/stopwatch": "~2.8|~3.0"
- },
- "suggest": {
- "symfony/dependency-injection": "",
- "symfony/http-kernel": ""
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.0-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\EventDispatcher\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony EventDispatcher Component",
- "homepage": "https://symfony.com/",
- "time": "2016-07-19 10:44:15"
- },
- {
- "name": "symfony/http-foundation",
- "version": "v3.0.9",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/http-foundation.git",
- "reference": "49ba00f8ede742169cb6b70abe33243f4d673f82"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/http-foundation/zipball/49ba00f8ede742169cb6b70abe33243f4d673f82",
- "reference": "49ba00f8ede742169cb6b70abe33243f4d673f82",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9",
- "symfony/polyfill-mbstring": "~1.1"
- },
- "require-dev": {
- "symfony/expression-language": "~2.8|~3.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.0-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\HttpFoundation\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony HttpFoundation Component",
- "homepage": "https://symfony.com/",
- "time": "2016-07-17 13:54:30"
- },
- {
- "name": "symfony/http-kernel",
- "version": "v3.0.9",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/http-kernel.git",
- "reference": "d97ba4425e36e79c794e7d14ff36f00f081b37b3"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/http-kernel/zipball/d97ba4425e36e79c794e7d14ff36f00f081b37b3",
- "reference": "d97ba4425e36e79c794e7d14ff36f00f081b37b3",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9",
- "psr/log": "~1.0",
- "symfony/debug": "~2.8|~3.0",
- "symfony/event-dispatcher": "~2.8|~3.0",
- "symfony/http-foundation": "~2.8.8|~3.0.8|~3.1.2|~3.2"
- },
- "conflict": {
- "symfony/config": "<2.8"
- },
- "require-dev": {
- "symfony/browser-kit": "~2.8|~3.0",
- "symfony/class-loader": "~2.8|~3.0",
- "symfony/config": "~2.8|~3.0",
- "symfony/console": "~2.8|~3.0",
- "symfony/css-selector": "~2.8|~3.0",
- "symfony/dependency-injection": "~2.8|~3.0",
- "symfony/dom-crawler": "~2.8|~3.0",
- "symfony/expression-language": "~2.8|~3.0",
- "symfony/finder": "~2.8|~3.0",
- "symfony/process": "~2.8|~3.0",
- "symfony/routing": "~2.8|~3.0",
- "symfony/stopwatch": "~2.8|~3.0",
- "symfony/templating": "~2.8|~3.0",
- "symfony/translation": "~2.8|~3.0",
- "symfony/var-dumper": "~2.8|~3.0"
- },
- "suggest": {
- "symfony/browser-kit": "",
- "symfony/class-loader": "",
- "symfony/config": "",
- "symfony/console": "",
- "symfony/dependency-injection": "",
- "symfony/finder": "",
- "symfony/var-dumper": ""
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.0-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\HttpKernel\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony HttpKernel Component",
- "homepage": "https://symfony.com/",
- "time": "2016-07-30 09:10:37"
- },
- {
- "name": "symfony/polyfill-mbstring",
- "version": "v1.3.0",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/polyfill-mbstring.git",
- "reference": "e79d363049d1c2128f133a2667e4f4190904f7f4"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/e79d363049d1c2128f133a2667e4f4190904f7f4",
- "reference": "e79d363049d1c2128f133a2667e4f4190904f7f4",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "suggest": {
- "ext-mbstring": "For best performance"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.3-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": "2016-11-14 01:06:16"
- },
- {
- "name": "symfony/routing",
- "version": "v3.0.9",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/routing.git",
- "reference": "9038984bd9c05ab07280121e9e10f61a7231457b"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/routing/zipball/9038984bd9c05ab07280121e9e10f61a7231457b",
- "reference": "9038984bd9c05ab07280121e9e10f61a7231457b",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9"
- },
- "conflict": {
- "symfony/config": "<2.8"
- },
- "require-dev": {
- "doctrine/annotations": "~1.0",
- "doctrine/common": "~2.2",
- "psr/log": "~1.0",
- "symfony/config": "~2.8|~3.0",
- "symfony/expression-language": "~2.8|~3.0",
- "symfony/http-foundation": "~2.8|~3.0",
- "symfony/yaml": "~2.8|~3.0"
- },
- "suggest": {
- "doctrine/annotations": "For using the annotation loader",
- "symfony/config": "For using the all-in-one router or any loader",
- "symfony/dependency-injection": "For loading routes from a service",
- "symfony/expression-language": "For using expression matching",
- "symfony/http-foundation": "For using a Symfony Request object",
- "symfony/yaml": "For using the YAML loader"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.0-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\Routing\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony Routing Component",
- "homepage": "https://symfony.com/",
- "keywords": [
- "router",
- "routing",
- "uri",
- "url"
- ],
- "time": "2016-06-29 05:40:00"
- },
- {
- "name": "symfony/yaml",
- "version": "v3.1.7",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/yaml.git",
- "reference": "9da375317228e54f4ea1b013b30fa47417e84943"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/yaml/zipball/9da375317228e54f4ea1b013b30fa47417e84943",
- "reference": "9da375317228e54f4ea1b013b30fa47417e84943",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.1-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\Yaml\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony Yaml Component",
- "homepage": "https://symfony.com/",
- "time": "2016-11-18 21:05:29"
- }
- ],
- "packages-dev": [
- {
- "name": "doctrine/instantiator",
- "version": "1.0.5",
- "source": {
- "type": "git",
- "url": "https://github.com/doctrine/instantiator.git",
- "reference": "8e884e78f9f0eb1329e445619e04456e64d8051d"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/doctrine/instantiator/zipball/8e884e78f9f0eb1329e445619e04456e64d8051d",
- "reference": "8e884e78f9f0eb1329e445619e04456e64d8051d",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3,<8.0-DEV"
- },
- "require-dev": {
- "athletic/athletic": "~0.1.8",
- "ext-pdo": "*",
- "ext-phar": "*",
- "phpunit/phpunit": "~4.0",
- "squizlabs/php_codesniffer": "~2.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Doctrine\\Instantiator\\": "src/Doctrine/Instantiator/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Marco Pivetta",
- "email": "ocramius@gmail.com",
- "homepage": "http://ocramius.github.com/"
- }
- ],
- "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors",
- "homepage": "https://github.com/doctrine/instantiator",
- "keywords": [
- "constructor",
- "instantiate"
- ],
- "time": "2015-06-14 21:17:01"
- },
- {
- "name": "google/cloud-tools",
- "version": "v0.6.1",
- "source": {
- "type": "git",
- "url": "https://github.com/GoogleCloudPlatform/php-tools.git",
- "reference": "6546fab38b9ac7d9563e1ada6ed1e945eb7d10ac"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/GoogleCloudPlatform/php-tools/zipball/6546fab38b9ac7d9563e1ada6ed1e945eb7d10ac",
- "reference": "6546fab38b9ac7d9563e1ada6ed1e945eb7d10ac",
- "shasum": ""
- },
- "require": {
- "guzzlehttp/guzzle": "~5.3|~6.0",
- "php": ">=5.5",
- "phpunit/phpunit": "~4|~5",
- "symfony/browser-kit": "~2|~3",
- "symfony/process": "~2|~3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.0"
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "Google\\Cloud\\TestUtils\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "Apache-2.0"
- ],
- "authors": [
- {
- "name": "Takashi Matsuo",
- "email": "tmatsuo@google.com",
- "homepage": "https://wp.gaeflex.ninja/"
- }
- ],
- "description": "PHP tools for Google Cloud Platform",
- "homepage": "https://github.com/GoogleCloudPlatform/php-tools",
- "keywords": [
- "appengine",
- "gcp",
- "test"
- ],
- "time": "2016-12-08 21:36:15"
- },
- {
- "name": "myclabs/deep-copy",
- "version": "1.5.5",
- "source": {
- "type": "git",
- "url": "https://github.com/myclabs/DeepCopy.git",
- "reference": "399c1f9781e222f6eb6cc238796f5200d1b7f108"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/399c1f9781e222f6eb6cc238796f5200d1b7f108",
- "reference": "399c1f9781e222f6eb6cc238796f5200d1b7f108",
- "shasum": ""
- },
- "require": {
- "php": ">=5.4.0"
- },
- "require-dev": {
- "doctrine/collections": "1.*",
- "phpunit/phpunit": "~4.1"
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "DeepCopy\\": "src/DeepCopy/"
- }
- },
- "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",
- "duplicate",
- "object",
- "object graph"
- ],
- "time": "2016-10-31 17:19:45"
- },
- {
- "name": "paragonie/random_compat",
- "version": "v2.0.4",
- "source": {
- "type": "git",
- "url": "https://github.com/paragonie/random_compat.git",
- "reference": "a9b97968bcde1c4de2a5ec6cbd06a0f6c919b46e"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/paragonie/random_compat/zipball/a9b97968bcde1c4de2a5ec6cbd06a0f6c919b46e",
- "reference": "a9b97968bcde1c4de2a5ec6cbd06a0f6c919b46e",
- "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",
- "pseudorandom",
- "random"
- ],
- "time": "2016-11-07 23:38:38"
- },
- {
- "name": "phpdocumentor/reflection-common",
- "version": "1.0",
- "source": {
- "type": "git",
- "url": "https://github.com/phpDocumentor/ReflectionCommon.git",
- "reference": "144c307535e82c8fdcaacbcfc1d6d8eeb896687c"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phpDocumentor/ReflectionCommon/zipball/144c307535e82c8fdcaacbcfc1d6d8eeb896687c",
- "reference": "144c307535e82c8fdcaacbcfc1d6d8eeb896687c",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5"
- },
- "require-dev": {
- "phpunit/phpunit": "^4.6"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "phpDocumentor\\Reflection\\": [
- "src"
- ]
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Jaap van Otterdijk",
- "email": "opensource@ijaap.nl"
- }
- ],
- "description": "Common reflection classes used by phpdocumentor to reflect the code structure",
- "homepage": "http://www.phpdoc.org/",
- "keywords": [
- "FQSEN",
- "phpDocumentor",
- "phpdoc",
- "reflection",
- "static analysis"
- ],
- "time": "2015-12-27 11:43:31"
- },
- {
- "name": "phpdocumentor/reflection-docblock",
- "version": "3.1.1",
- "source": {
- "type": "git",
- "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git",
- "reference": "8331b5efe816ae05461b7ca1e721c01b46bafb3e"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/8331b5efe816ae05461b7ca1e721c01b46bafb3e",
- "reference": "8331b5efe816ae05461b7ca1e721c01b46bafb3e",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5",
- "phpdocumentor/reflection-common": "^1.0@dev",
- "phpdocumentor/type-resolver": "^0.2.0",
- "webmozart/assert": "^1.0"
- },
- "require-dev": {
- "mockery/mockery": "^0.9.4",
- "phpunit/phpunit": "^4.4"
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "phpDocumentor\\Reflection\\": [
- "src/"
- ]
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Mike van Riel",
- "email": "me@mikevanriel.com"
- }
- ],
- "description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.",
- "time": "2016-09-30 07:12:33"
- },
- {
- "name": "phpdocumentor/type-resolver",
- "version": "0.2.1",
- "source": {
- "type": "git",
- "url": "https://github.com/phpDocumentor/TypeResolver.git",
- "reference": "e224fb2ea2fba6d3ad6fdaef91cd09a172155ccb"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/e224fb2ea2fba6d3ad6fdaef91cd09a172155ccb",
- "reference": "e224fb2ea2fba6d3ad6fdaef91cd09a172155ccb",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5",
- "phpdocumentor/reflection-common": "^1.0"
- },
- "require-dev": {
- "mockery/mockery": "^0.9.4",
- "phpunit/phpunit": "^5.2||^4.8.24"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "phpDocumentor\\Reflection\\": [
- "src/"
- ]
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Mike van Riel",
- "email": "me@mikevanriel.com"
- }
- ],
- "time": "2016-11-25 06:54:22"
- },
- {
- "name": "phpspec/prophecy",
- "version": "v1.6.2",
- "source": {
- "type": "git",
- "url": "https://github.com/phpspec/prophecy.git",
- "reference": "6c52c2722f8460122f96f86346600e1077ce22cb"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phpspec/prophecy/zipball/6c52c2722f8460122f96f86346600e1077ce22cb",
- "reference": "6c52c2722f8460122f96f86346600e1077ce22cb",
- "shasum": ""
- },
- "require": {
- "doctrine/instantiator": "^1.0.2",
- "php": "^5.3|^7.0",
- "phpdocumentor/reflection-docblock": "^2.0|^3.0.2",
- "sebastian/comparator": "^1.1",
- "sebastian/recursion-context": "^1.0|^2.0"
- },
- "require-dev": {
- "phpspec/phpspec": "^2.0",
- "phpunit/phpunit": "^4.8 || ^5.6.5"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.6.x-dev"
- }
- },
- "autoload": {
- "psr-0": {
- "Prophecy\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Konstantin Kudryashov",
- "email": "ever.zet@gmail.com",
- "homepage": "http://everzet.com/"
- },
- {
- "name": "Marcello Duarte",
- "email": "marcello.duarte@gmail.com"
- }
- ],
- "description": "Highly opinionated mocking framework for PHP 5.3+",
- "homepage": "https://github.com/phpspec/prophecy",
- "keywords": [
- "Double",
- "Dummy",
- "fake",
- "mock",
- "spy",
- "stub"
- ],
- "time": "2016-11-21 14:58:47"
- },
- {
- "name": "phpunit/php-code-coverage",
- "version": "4.0.3",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-code-coverage.git",
- "reference": "903fd6318d0a90b4770a009ff73e4a4e9c437929"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/903fd6318d0a90b4770a009ff73e4a4e9c437929",
- "reference": "903fd6318d0a90b4770a009ff73e4a4e9c437929",
- "shasum": ""
- },
- "require": {
- "php": "^5.6 || ^7.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"
- },
- "require-dev": {
- "ext-xdebug": ">=2.1.4",
- "phpunit/phpunit": "^5.4"
- },
- "suggest": {
- "ext-dom": "*",
- "ext-xdebug": ">=2.4.0",
- "ext-xmlwriter": "*"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "4.0.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sb@sebastian-bergmann.de",
- "role": "lead"
- }
- ],
- "description": "Library that provides collection, processing, and rendering functionality for PHP code coverage information.",
- "homepage": "https://github.com/sebastianbergmann/php-code-coverage",
- "keywords": [
- "coverage",
- "testing",
- "xunit"
- ],
- "time": "2016-11-28 16:00:31"
- },
- {
- "name": "phpunit/php-file-iterator",
- "version": "1.4.2",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-file-iterator.git",
- "reference": "3cc8f69b3028d0f96a9078e6295d86e9bf019be5"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/3cc8f69b3028d0f96a9078e6295d86e9bf019be5",
- "reference": "3cc8f69b3028d0f96a9078e6295d86e9bf019be5",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.4.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sb@sebastian-bergmann.de",
- "role": "lead"
- }
- ],
- "description": "FilterIterator implementation that filters files based on a list of suffixes.",
- "homepage": "https://github.com/sebastianbergmann/php-file-iterator/",
- "keywords": [
- "filesystem",
- "iterator"
- ],
- "time": "2016-10-03 07:40:28"
- },
- {
- "name": "phpunit/php-text-template",
- "version": "1.2.1",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-text-template.git",
- "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/31f8b717e51d9a2afca6c9f046f5d69fc27c8686",
- "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "type": "library",
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de",
- "role": "lead"
- }
- ],
- "description": "Simple template engine.",
- "homepage": "https://github.com/sebastianbergmann/php-text-template/",
- "keywords": [
- "template"
- ],
- "time": "2015-06-21 13:50:34"
- },
- {
- "name": "phpunit/php-timer",
- "version": "1.0.8",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-timer.git",
- "reference": "38e9124049cf1a164f1e4537caf19c99bf1eb260"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/38e9124049cf1a164f1e4537caf19c99bf1eb260",
- "reference": "38e9124049cf1a164f1e4537caf19c99bf1eb260",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4|~5"
- },
- "type": "library",
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sb@sebastian-bergmann.de",
- "role": "lead"
- }
- ],
- "description": "Utility class for timing",
- "homepage": "https://github.com/sebastianbergmann/php-timer/",
- "keywords": [
- "timer"
- ],
- "time": "2016-05-12 18:03:57"
- },
- {
- "name": "phpunit/php-token-stream",
- "version": "1.4.9",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-token-stream.git",
- "reference": "3b402f65a4cc90abf6e1104e388b896ce209631b"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/3b402f65a4cc90abf6e1104e388b896ce209631b",
- "reference": "3b402f65a4cc90abf6e1104e388b896ce209631b",
- "shasum": ""
- },
- "require": {
- "ext-tokenizer": "*",
- "php": ">=5.3.3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.2"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.4-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Wrapper around PHP's tokenizer extension.",
- "homepage": "https://github.com/sebastianbergmann/php-token-stream/",
- "keywords": [
- "tokenizer"
- ],
- "time": "2016-11-15 14:06:22"
- },
- {
- "name": "phpunit/phpunit",
- "version": "5.6.7",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/phpunit.git",
- "reference": "38810e97481723ef918f6e35c03cb1014a645bd5"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/38810e97481723ef918f6e35c03cb1014a645bd5",
- "reference": "38810e97481723ef918f6e35c03cb1014a645bd5",
- "shasum": ""
- },
- "require": {
- "ext-dom": "*",
- "ext-json": "*",
- "ext-libxml": "*",
- "ext-mbstring": "*",
- "ext-xml": "*",
- "myclabs/deep-copy": "~1.3",
- "php": "^5.6 || ^7.0",
- "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.2",
- "sebastian/diff": "~1.2",
- "sebastian/environment": "^1.3 || ^2.0",
- "sebastian/exporter": "~2.0",
- "sebastian/global-state": "~1.0",
- "sebastian/object-enumerator": "~2.0",
- "sebastian/resource-operations": "~1.0",
- "sebastian/version": "~1.0|~2.0",
- "symfony/yaml": "~2.1|~3.0"
- },
- "conflict": {
- "phpdocumentor/reflection-docblock": "3.0.2"
- },
- "require-dev": {
- "ext-pdo": "*"
- },
- "suggest": {
- "ext-xdebug": "*",
- "phpunit/php-invoker": "~1.1"
- },
- "bin": [
- "phpunit"
- ],
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "5.6.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de",
- "role": "lead"
- }
- ],
- "description": "The PHP Unit Testing framework.",
- "homepage": "https://phpunit.de/",
- "keywords": [
- "phpunit",
- "testing",
- "xunit"
- ],
- "time": "2016-11-28 16:04:24"
- },
- {
- "name": "phpunit/phpunit-mock-objects",
- "version": "3.4.2",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/phpunit-mock-objects.git",
- "reference": "90a08f5deed5f7ac35463c161f2e8fa0e5652faf"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/phpunit-mock-objects/zipball/90a08f5deed5f7ac35463c161f2e8fa0e5652faf",
- "reference": "90a08f5deed5f7ac35463c161f2e8fa0e5652faf",
- "shasum": ""
- },
- "require": {
- "doctrine/instantiator": "^1.0.2",
- "php": "^5.6 || ^7.0",
- "phpunit/php-text-template": "^1.2",
- "sebastian/exporter": "^1.2 || ^2.0"
- },
- "conflict": {
- "phpunit/phpunit": "<5.4.0"
- },
- "require-dev": {
- "phpunit/phpunit": "^5.4"
- },
- "suggest": {
- "ext-soap": "*"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.2.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sb@sebastian-bergmann.de",
- "role": "lead"
- }
- ],
- "description": "Mock Object library for PHPUnit",
- "homepage": "https://github.com/sebastianbergmann/phpunit-mock-objects/",
- "keywords": [
- "mock",
- "xunit"
- ],
- "time": "2016-11-27 07:52:03"
- },
- {
- "name": "sebastian/code-unit-reverse-lookup",
- "version": "1.0.0",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/code-unit-reverse-lookup.git",
- "reference": "c36f5e7cfce482fde5bf8d10d41a53591e0198fe"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/c36f5e7cfce482fde5bf8d10d41a53591e0198fe",
- "reference": "c36f5e7cfce482fde5bf8d10d41a53591e0198fe",
- "shasum": ""
- },
- "require": {
- "php": ">=5.6"
- },
- "require-dev": {
- "phpunit/phpunit": "~5"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Looks up which function or method a line of code belongs to",
- "homepage": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/",
- "time": "2016-02-13 06:45:14"
- },
- {
- "name": "sebastian/comparator",
- "version": "1.2.2",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/comparator.git",
- "reference": "6a1ed12e8b2409076ab22e3897126211ff8b1f7f"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/6a1ed12e8b2409076ab22e3897126211ff8b1f7f",
- "reference": "6a1ed12e8b2409076ab22e3897126211ff8b1f7f",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3",
- "sebastian/diff": "~1.2",
- "sebastian/exporter": "~1.2 || ~2.0"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.4"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.2.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Jeff Welch",
- "email": "whatthejeff@gmail.com"
- },
- {
- "name": "Volker Dusch",
- "email": "github@wallbash.com"
- },
- {
- "name": "Bernhard Schussek",
- "email": "bschussek@2bepublished.at"
- },
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Provides the functionality to compare PHP values for equality",
- "homepage": "http://www.github.com/sebastianbergmann/comparator",
- "keywords": [
- "comparator",
- "compare",
- "equality"
- ],
- "time": "2016-11-19 09:18:40"
- },
- {
- "name": "sebastian/diff",
- "version": "1.4.1",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/diff.git",
- "reference": "13edfd8706462032c2f52b4b862974dd46b71c9e"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/13edfd8706462032c2f52b4b862974dd46b71c9e",
- "reference": "13edfd8706462032c2f52b4b862974dd46b71c9e",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.8"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.4-dev"
- }
- },
- "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"
- }
- ],
- "description": "Diff implementation",
- "homepage": "https://github.com/sebastianbergmann/diff",
- "keywords": [
- "diff"
- ],
- "time": "2015-12-08 07:14:41"
- },
- {
- "name": "sebastian/environment",
- "version": "2.0.0",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/environment.git",
- "reference": "5795ffe5dc5b02460c3e34222fee8cbe245d8fac"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/5795ffe5dc5b02460c3e34222fee8cbe245d8fac",
- "reference": "5795ffe5dc5b02460c3e34222fee8cbe245d8fac",
- "shasum": ""
- },
- "require": {
- "php": "^5.6 || ^7.0"
- },
- "require-dev": {
- "phpunit/phpunit": "^5.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.0.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Provides functionality to handle HHVM/PHP environments",
- "homepage": "http://www.github.com/sebastianbergmann/environment",
- "keywords": [
- "Xdebug",
- "environment",
- "hhvm"
- ],
- "time": "2016-11-26 07:53:53"
- },
- {
- "name": "sebastian/exporter",
- "version": "2.0.0",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/exporter.git",
- "reference": "ce474bdd1a34744d7ac5d6aad3a46d48d9bac4c4"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/ce474bdd1a34744d7ac5d6aad3a46d48d9bac4c4",
- "reference": "ce474bdd1a34744d7ac5d6aad3a46d48d9bac4c4",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3",
- "sebastian/recursion-context": "~2.0"
- },
- "require-dev": {
- "ext-mbstring": "*",
- "phpunit/phpunit": "~4.4"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.0.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Jeff Welch",
- "email": "whatthejeff@gmail.com"
- },
- {
- "name": "Volker Dusch",
- "email": "github@wallbash.com"
- },
- {
- "name": "Bernhard Schussek",
- "email": "bschussek@2bepublished.at"
- },
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- },
- {
- "name": "Adam Harvey",
- "email": "aharvey@php.net"
- }
- ],
- "description": "Provides the functionality to export PHP variables for visualization",
- "homepage": "http://www.github.com/sebastianbergmann/exporter",
- "keywords": [
- "export",
- "exporter"
- ],
- "time": "2016-11-19 08:54:04"
- },
- {
- "name": "sebastian/global-state",
- "version": "1.1.1",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/global-state.git",
- "reference": "bc37d50fea7d017d3d340f230811c9f1d7280af4"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/bc37d50fea7d017d3d340f230811c9f1d7280af4",
- "reference": "bc37d50fea7d017d3d340f230811c9f1d7280af4",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.2"
- },
- "suggest": {
- "ext-uopz": "*"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Snapshotting of global state",
- "homepage": "http://www.github.com/sebastianbergmann/global-state",
- "keywords": [
- "global state"
- ],
- "time": "2015-10-12 03:26:01"
- },
- {
- "name": "sebastian/object-enumerator",
- "version": "2.0.0",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/object-enumerator.git",
- "reference": "96f8a3f257b69e8128ad74d3a7fd464bcbaa3b35"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/96f8a3f257b69e8128ad74d3a7fd464bcbaa3b35",
- "reference": "96f8a3f257b69e8128ad74d3a7fd464bcbaa3b35",
- "shasum": ""
- },
- "require": {
- "php": ">=5.6",
- "sebastian/recursion-context": "~2.0"
- },
- "require-dev": {
- "phpunit/phpunit": "~5"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.0.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Traverses array structures and object graphs to enumerate all referenced objects",
- "homepage": "https://github.com/sebastianbergmann/object-enumerator/",
- "time": "2016-11-19 07:35:10"
- },
- {
- "name": "sebastian/recursion-context",
- "version": "2.0.0",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/recursion-context.git",
- "reference": "2c3ba150cbec723aa057506e73a8d33bdb286c9a"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/2c3ba150cbec723aa057506e73a8d33bdb286c9a",
- "reference": "2c3ba150cbec723aa057506e73a8d33bdb286c9a",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.4"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.0.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Jeff Welch",
- "email": "whatthejeff@gmail.com"
- },
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- },
- {
- "name": "Adam Harvey",
- "email": "aharvey@php.net"
- }
- ],
- "description": "Provides functionality to recursively process PHP variables",
- "homepage": "http://www.github.com/sebastianbergmann/recursion-context",
- "time": "2016-11-19 07:33:16"
- },
- {
- "name": "sebastian/resource-operations",
- "version": "1.0.0",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/resource-operations.git",
- "reference": "ce990bb21759f94aeafd30209e8cfcdfa8bc3f52"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/resource-operations/zipball/ce990bb21759f94aeafd30209e8cfcdfa8bc3f52",
- "reference": "ce990bb21759f94aeafd30209e8cfcdfa8bc3f52",
- "shasum": ""
- },
- "require": {
- "php": ">=5.6.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Provides a list of PHP built-in functions that operate on resources",
- "homepage": "https://www.github.com/sebastianbergmann/resource-operations",
- "time": "2015-07-28 20:34:47"
- },
- {
- "name": "sebastian/version",
- "version": "2.0.1",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/version.git",
- "reference": "99732be0ddb3361e16ad77b68ba41efc8e979019"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/99732be0ddb3361e16ad77b68ba41efc8e979019",
- "reference": "99732be0ddb3361e16ad77b68ba41efc8e979019",
- "shasum": ""
- },
- "require": {
- "php": ">=5.6"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.0.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de",
- "role": "lead"
- }
- ],
- "description": "Library that helps with managing the version number of Git-hosted PHP projects",
- "homepage": "https://github.com/sebastianbergmann/version",
- "time": "2016-10-03 07:35:21"
- },
- {
- "name": "symfony/browser-kit",
- "version": "v3.1.7",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/browser-kit.git",
- "reference": "901319a31c9b3cee7857b4aeeb81b5d64dfa34fc"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/browser-kit/zipball/901319a31c9b3cee7857b4aeeb81b5d64dfa34fc",
- "reference": "901319a31c9b3cee7857b4aeeb81b5d64dfa34fc",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9",
- "symfony/dom-crawler": "~2.8|~3.0"
- },
- "require-dev": {
- "symfony/css-selector": "~2.8|~3.0",
- "symfony/process": "~2.8|~3.0"
- },
- "suggest": {
- "symfony/process": ""
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.1-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\BrowserKit\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony BrowserKit Component",
- "homepage": "https://symfony.com/",
- "time": "2016-09-06 11:02:40"
- },
- {
- "name": "symfony/dom-crawler",
- "version": "v3.1.7",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/dom-crawler.git",
- "reference": "1eb3b4d216e8db117218dd2bb7d23dfe67bdf518"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/1eb3b4d216e8db117218dd2bb7d23dfe67bdf518",
- "reference": "1eb3b4d216e8db117218dd2bb7d23dfe67bdf518",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9",
- "symfony/polyfill-mbstring": "~1.0"
- },
- "require-dev": {
- "symfony/css-selector": "~2.8|~3.0"
- },
- "suggest": {
- "symfony/css-selector": ""
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.1-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\DomCrawler\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony DomCrawler Component",
- "homepage": "https://symfony.com/",
- "time": "2016-11-14 16:20:02"
- },
- {
- "name": "symfony/process",
- "version": "v3.1.7",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/process.git",
- "reference": "66de154ae86b1a07001da9fbffd620206e4faf94"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/process/zipball/66de154ae86b1a07001da9fbffd620206e4faf94",
- "reference": "66de154ae86b1a07001da9fbffd620206e4faf94",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.1-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\Process\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony Process Component",
- "homepage": "https://symfony.com/",
- "time": "2016-09-29 14:13:09"
- },
- {
- "name": "webmozart/assert",
- "version": "1.2.0",
- "source": {
- "type": "git",
- "url": "https://github.com/webmozart/assert.git",
- "reference": "2db61e59ff05fe5126d152bd0655c9ea113e550f"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/webmozart/assert/zipball/2db61e59ff05fe5126d152bd0655c9ea113e550f",
- "reference": "2db61e59ff05fe5126d152bd0655c9ea113e550f",
- "shasum": ""
- },
- "require": {
- "php": "^5.3.3 || ^7.0"
- },
- "require-dev": {
- "phpunit/phpunit": "^4.6",
- "sebastian/version": "^1.0.1"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.3-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Webmozart\\Assert\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Bernhard Schussek",
- "email": "bschussek@gmail.com"
- }
- ],
- "description": "Assertions to validate method input/output with nice error messages.",
- "keywords": [
- "assert",
- "check",
- "validate"
- ],
- "time": "2016-11-23 20:04:58"
- }
- ],
- "aliases": [],
- "minimum-stability": "stable",
- "stability-flags": [],
- "prefer-stable": false,
- "prefer-lowest": false,
- "platform": [],
- "platform-dev": []
-}
diff --git a/appengine/flexible/mailgun/index.php b/appengine/flexible/mailgun/index.php
deleted file mode 100644
index 1fc2c34391..0000000000
--- a/appengine/flexible/mailgun/index.php
+++ /dev/null
@@ -1,31 +0,0 @@
-run();
diff --git a/appengine/flexible/mailgun/phpunit.xml b/appengine/flexible/mailgun/phpunit.xml
deleted file mode 100644
index 701cf94fd5..0000000000
--- a/appengine/flexible/mailgun/phpunit.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-
-
-
-
-
- test
-
-
-
-
-
-
-
- app.php
-
-
-
diff --git a/appengine/flexible/mailgun/test/DeployTest.php b/appengine/flexible/mailgun/test/DeployTest.php
deleted file mode 100644
index 31b7226a01..0000000000
--- a/appengine/flexible/mailgun/test/DeployTest.php
+++ /dev/null
@@ -1,74 +0,0 @@
-setDir($tmpDir);
- chdir($tmpDir);
-
- $indexPhp = file_get_contents('index.php');
- $indexPhp = str_replace(
- 'MAILGUN_DOMAIN',
- $mailgunDomain,
- $indexPhp
- );
- $indexPhp = str_replace(
- 'MAILGUN_APIKEY',
- $mailgunApiKey,
- $indexPhp
- );
- file_put_contents('index.php', $indexPhp);
- }
-
- public function testIndex()
- {
- // Access the modules app top page.
- $resp = $this->client->get('/');
- $this->assertEquals('200', $resp->getStatusCode(),
- 'top page status code');
- }
-
- public function testSendMessage()
- {
- $resp = $this->client->request('POST', '/', [
- 'form_params' => [
- 'recipient' => 'fake@example.com',
- 'submit' => 'simple',
- ]
- ]);
-
- $this->assertEquals('200', $resp->getStatusCode(),
- 'send message status code');
- }
-}
diff --git a/appengine/flexible/mailgun/test/bootstrap.php b/appengine/flexible/mailgun/test/bootstrap.php
deleted file mode 100644
index 15d727445c..0000000000
--- a/appengine/flexible/mailgun/test/bootstrap.php
+++ /dev/null
@@ -1,18 +0,0 @@
-get('/', function () use ($app) {
- /** @var Mailjet\Client $mailjet */
- $mailjet = $app['mailjet'];
- return <<
-
-
-
-EOF;
-});
-
-$app->post('/send', function () use ($app) {
- /** @var Symfony\Component\HttpFoundation\Request $request */
- $request = $app['request'];
- /** @var Mailjet\Client $mailjet */
- $mailjet = $app['mailjet'];
- $recipient = $request->get('recipient');
-
- # [START send_email]
- $body = [
- 'FromEmail' => "test@example.com",
- 'FromName' => "Testing Mailjet",
- 'Subject' => "Your email flight plan!",
- 'Text-part' => "Dear passenger, welcome to Mailjet! May the delivery force be with you!",
- 'Html-part' => "Dear passenger, welcome to Mailjet!
May the delivery force be with you!",
- 'Recipients' => [
- [
- 'Email' => $recipient,
- ]
- ]
- ];
-
- // trigger the API call
- $response = $mailjet->post(Mailjet\Resources::$Email, ['body' => $body]);
- if ($response->success()) {
- // if the call succed, data will go here
- return sprintf(
- '%s
',
- json_encode($response->getData(), JSON_PRETTY_PRINT)
- );
- }
-
- return 'Error: ' . print_r($response->getStatus(), true);
- # [END send_email]
-});
-
-$app['mailjet'] = function () use ($app) {
- if ($app['mailjet.api_key'] == 'MAILJET_APIKEY') {
- return 'set your mailjet api key and secret in index.php';
- }
- $mailjetApiKey = $app['mailjet.api_key'];
- $mailjetSecret = $app['mailjet.secret'];
-
- # [START mailjet_client]
- $mailjet = new Mailjet\Client($mailjetApiKey, $mailjetSecret);
- # [END mailjet_client]
-
- return $mailjet;
-};
-
-return $app;
diff --git a/appengine/flexible/mailjet/app.yaml b/appengine/flexible/mailjet/app.yaml
deleted file mode 100644
index 9c3ea597a8..0000000000
--- a/appengine/flexible/mailjet/app.yaml
+++ /dev/null
@@ -1,2 +0,0 @@
-runtime: php
-env: flex
diff --git a/appengine/flexible/mailjet/composer.json b/appengine/flexible/mailjet/composer.json
deleted file mode 100644
index f53d7ac15c..0000000000
--- a/appengine/flexible/mailjet/composer.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "require": {
- "silex/silex": "^1.3",
- "mailjet/mailjet-apiv3-php": "^1.1",
- "guzzlehttp/guzzle": "~6.1.0"
- },
- "require-dev": {
- "symfony/browser-kit": "^3.0",
- "paragonie/random_compat": "^2.0",
- "google/cloud-tools": "^0.6"
- }
-}
diff --git a/appengine/flexible/mailjet/composer.lock b/appengine/flexible/mailjet/composer.lock
deleted file mode 100644
index a616ef20e8..0000000000
--- a/appengine/flexible/mailjet/composer.lock
+++ /dev/null
@@ -1,2408 +0,0 @@
-{
- "_readme": [
- "This file locks the dependencies of your project to a known state",
- "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file",
- "This file is @generated automatically"
- ],
- "hash": "68a8911c194e3738eb71fa918464e469",
- "content-hash": "f6ecc529fc6135a48b2c094ba9740bc0",
- "packages": [
- {
- "name": "guzzlehttp/guzzle",
- "version": "6.1.1",
- "source": {
- "type": "git",
- "url": "https://github.com/guzzle/guzzle.git",
- "reference": "c6851d6e48f63b69357cbfa55bca116448140e0c"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/guzzle/guzzle/zipball/c6851d6e48f63b69357cbfa55bca116448140e0c",
- "reference": "c6851d6e48f63b69357cbfa55bca116448140e0c",
- "shasum": ""
- },
- "require": {
- "guzzlehttp/promises": "~1.0",
- "guzzlehttp/psr7": "~1.1",
- "php": ">=5.5.0"
- },
- "require-dev": {
- "ext-curl": "*",
- "phpunit/phpunit": "~4.0",
- "psr/log": "~1.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "6.1-dev"
- }
- },
- "autoload": {
- "files": [
- "src/functions_include.php"
- ],
- "psr-4": {
- "GuzzleHttp\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Michael Dowling",
- "email": "mtdowling@gmail.com",
- "homepage": "https://github.com/mtdowling"
- }
- ],
- "description": "Guzzle is a PHP HTTP client library",
- "homepage": "http://guzzlephp.org/",
- "keywords": [
- "client",
- "curl",
- "framework",
- "http",
- "http client",
- "rest",
- "web service"
- ],
- "time": "2015-11-23 00:47:50"
- },
- {
- "name": "guzzlehttp/promises",
- "version": "1.3.0",
- "source": {
- "type": "git",
- "url": "https://github.com/guzzle/promises.git",
- "reference": "2693c101803ca78b27972d84081d027fca790a1e"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/guzzle/promises/zipball/2693c101803ca78b27972d84081d027fca790a1e",
- "reference": "2693c101803ca78b27972d84081d027fca790a1e",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.0"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "GuzzleHttp\\Promise\\": "src/"
- },
- "files": [
- "src/functions_include.php"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Michael Dowling",
- "email": "mtdowling@gmail.com",
- "homepage": "https://github.com/mtdowling"
- }
- ],
- "description": "Guzzle promises library",
- "keywords": [
- "promise"
- ],
- "time": "2016-11-18 17:47:58"
- },
- {
- "name": "guzzlehttp/psr7",
- "version": "1.3.1",
- "source": {
- "type": "git",
- "url": "https://github.com/guzzle/psr7.git",
- "reference": "5c6447c9df362e8f8093bda8f5d8873fe5c7f65b"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/guzzle/psr7/zipball/5c6447c9df362e8f8093bda8f5d8873fe5c7f65b",
- "reference": "5c6447c9df362e8f8093bda8f5d8873fe5c7f65b",
- "shasum": ""
- },
- "require": {
- "php": ">=5.4.0",
- "psr/http-message": "~1.0"
- },
- "provide": {
- "psr/http-message-implementation": "1.0"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.4-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "GuzzleHttp\\Psr7\\": "src/"
- },
- "files": [
- "src/functions_include.php"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Michael Dowling",
- "email": "mtdowling@gmail.com",
- "homepage": "https://github.com/mtdowling"
- }
- ],
- "description": "PSR-7 message implementation",
- "keywords": [
- "http",
- "message",
- "stream",
- "uri"
- ],
- "time": "2016-06-24 23:00:38"
- },
- {
- "name": "mailjet/mailjet-apiv3-php",
- "version": "v1.1.8",
- "source": {
- "type": "git",
- "url": "https://github.com/mailjet/mailjet-apiv3-php.git",
- "reference": "dcf05767a69ad7b9c824f148435760d97bcdead7"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/mailjet/mailjet-apiv3-php/zipball/dcf05767a69ad7b9c824f148435760d97bcdead7",
- "reference": "dcf05767a69ad7b9c824f148435760d97bcdead7",
- "shasum": ""
- },
- "require": {
- "guzzlehttp/guzzle": "~6.0|~5.3",
- "php": ">=5.4.0"
- },
- "require-dev": {
- "phpunit/phpunit": "^4.8"
- },
- "type": "library",
- "autoload": {
- "psr-0": {
- "Mailjet": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Mailjet",
- "email": "dev@mailjet.com",
- "homepage": "https://dev.mailjet.com/"
- }
- ],
- "description": "PHP wrapper for the Mailjet API",
- "homepage": "https://github.com/mailjet/mailjet-apiv3-php/",
- "keywords": [
- "Mailjet",
- "api",
- "email",
- "php",
- "v3"
- ],
- "time": "2016-11-22 14:53:36"
- },
- {
- "name": "pimple/pimple",
- "version": "v1.1.1",
- "source": {
- "type": "git",
- "url": "https://github.com/silexphp/Pimple.git",
- "reference": "2019c145fe393923f3441b23f29bbdfaa5c58c4d"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/silexphp/Pimple/zipball/2019c145fe393923f3441b23f29bbdfaa5c58c4d",
- "reference": "2019c145fe393923f3441b23f29bbdfaa5c58c4d",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.1.x-dev"
- }
- },
- "autoload": {
- "psr-0": {
- "Pimple": "lib/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- }
- ],
- "description": "Pimple is a simple Dependency Injection Container for PHP 5.3",
- "homepage": "http://pimple.sensiolabs.org/",
- "keywords": [
- "container",
- "dependency injection"
- ],
- "time": "2013-11-22 08:30:29"
- },
- {
- "name": "psr/http-message",
- "version": "1.0.1",
- "source": {
- "type": "git",
- "url": "https://github.com/php-fig/http-message.git",
- "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/php-fig/http-message/zipball/f6561bf28d520154e4b0ec72be95418abe6d9363",
- "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Psr\\Http\\Message\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "PHP-FIG",
- "homepage": "http://www.php-fig.org/"
- }
- ],
- "description": "Common interface for HTTP messages",
- "homepage": "https://github.com/php-fig/http-message",
- "keywords": [
- "http",
- "http-message",
- "psr",
- "psr-7",
- "request",
- "response"
- ],
- "time": "2016-08-06 14:39:51"
- },
- {
- "name": "psr/log",
- "version": "1.0.2",
- "source": {
- "type": "git",
- "url": "https://github.com/php-fig/log.git",
- "reference": "4ebe3a8bf773a19edfe0a84b6585ba3d401b724d"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/php-fig/log/zipball/4ebe3a8bf773a19edfe0a84b6585ba3d401b724d",
- "reference": "4ebe3a8bf773a19edfe0a84b6585ba3d401b724d",
- "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": "2016-10-10 12:19:37"
- },
- {
- "name": "silex/silex",
- "version": "v1.3.5",
- "source": {
- "type": "git",
- "url": "https://github.com/silexphp/Silex.git",
- "reference": "374c7e04040a6f781c90f7d746726a5daa78e783"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/silexphp/Silex/zipball/374c7e04040a6f781c90f7d746726a5daa78e783",
- "reference": "374c7e04040a6f781c90f7d746726a5daa78e783",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.9",
- "pimple/pimple": "~1.0",
- "symfony/event-dispatcher": "~2.3|3.0.*",
- "symfony/http-foundation": "~2.3|3.0.*",
- "symfony/http-kernel": "~2.3|3.0.*",
- "symfony/routing": "~2.3|3.0.*"
- },
- "require-dev": {
- "doctrine/dbal": "~2.2",
- "monolog/monolog": "^1.4.1",
- "swiftmailer/swiftmailer": "~5",
- "symfony/browser-kit": "~2.3|3.0.*",
- "symfony/config": "~2.3|3.0.*",
- "symfony/css-selector": "~2.3|3.0.*",
- "symfony/debug": "~2.3|3.0.*",
- "symfony/dom-crawler": "~2.3|3.0.*",
- "symfony/finder": "~2.3|3.0.*",
- "symfony/form": "~2.3|3.0.*",
- "symfony/locale": "~2.3|3.0.*",
- "symfony/monolog-bridge": "~2.3|3.0.*",
- "symfony/options-resolver": "~2.3|3.0.*",
- "symfony/phpunit-bridge": "~2.7",
- "symfony/process": "~2.3|3.0.*",
- "symfony/security": "~2.3|3.0.*",
- "symfony/serializer": "~2.3|3.0.*",
- "symfony/translation": "~2.3|3.0.*",
- "symfony/twig-bridge": "~2.3|3.0.*",
- "symfony/validator": "~2.3|3.0.*",
- "twig/twig": "~1.8|~2.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.3.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Silex\\": "src/Silex"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Igor Wiedler",
- "email": "igor@wiedler.ch"
- }
- ],
- "description": "The PHP micro-framework based on the Symfony Components",
- "homepage": "http://silex.sensiolabs.org/",
- "keywords": [
- "microframework"
- ],
- "time": "2016-01-06 14:59:35"
- },
- {
- "name": "symfony/debug",
- "version": "v3.1.7",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/debug.git",
- "reference": "c058661c32f5b462722e36d120905940089cbd9a"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/debug/zipball/c058661c32f5b462722e36d120905940089cbd9a",
- "reference": "c058661c32f5b462722e36d120905940089cbd9a",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9",
- "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"
- },
- "require-dev": {
- "symfony/class-loader": "~2.8|~3.0",
- "symfony/http-kernel": "~2.8|~3.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.1-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\Debug\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "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": "2016-11-15 12:55:20"
- },
- {
- "name": "symfony/event-dispatcher",
- "version": "v3.0.9",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/event-dispatcher.git",
- "reference": "54da3ff63dec3c9c0e32ec3f95a7d94ef64baa00"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/54da3ff63dec3c9c0e32ec3f95a7d94ef64baa00",
- "reference": "54da3ff63dec3c9c0e32ec3f95a7d94ef64baa00",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9"
- },
- "require-dev": {
- "psr/log": "~1.0",
- "symfony/config": "~2.8|~3.0",
- "symfony/dependency-injection": "~2.8|~3.0",
- "symfony/expression-language": "~2.8|~3.0",
- "symfony/stopwatch": "~2.8|~3.0"
- },
- "suggest": {
- "symfony/dependency-injection": "",
- "symfony/http-kernel": ""
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.0-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\EventDispatcher\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony EventDispatcher Component",
- "homepage": "https://symfony.com/",
- "time": "2016-07-19 10:44:15"
- },
- {
- "name": "symfony/http-foundation",
- "version": "v3.0.9",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/http-foundation.git",
- "reference": "49ba00f8ede742169cb6b70abe33243f4d673f82"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/http-foundation/zipball/49ba00f8ede742169cb6b70abe33243f4d673f82",
- "reference": "49ba00f8ede742169cb6b70abe33243f4d673f82",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9",
- "symfony/polyfill-mbstring": "~1.1"
- },
- "require-dev": {
- "symfony/expression-language": "~2.8|~3.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.0-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\HttpFoundation\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony HttpFoundation Component",
- "homepage": "https://symfony.com/",
- "time": "2016-07-17 13:54:30"
- },
- {
- "name": "symfony/http-kernel",
- "version": "v3.0.9",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/http-kernel.git",
- "reference": "d97ba4425e36e79c794e7d14ff36f00f081b37b3"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/http-kernel/zipball/d97ba4425e36e79c794e7d14ff36f00f081b37b3",
- "reference": "d97ba4425e36e79c794e7d14ff36f00f081b37b3",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9",
- "psr/log": "~1.0",
- "symfony/debug": "~2.8|~3.0",
- "symfony/event-dispatcher": "~2.8|~3.0",
- "symfony/http-foundation": "~2.8.8|~3.0.8|~3.1.2|~3.2"
- },
- "conflict": {
- "symfony/config": "<2.8"
- },
- "require-dev": {
- "symfony/browser-kit": "~2.8|~3.0",
- "symfony/class-loader": "~2.8|~3.0",
- "symfony/config": "~2.8|~3.0",
- "symfony/console": "~2.8|~3.0",
- "symfony/css-selector": "~2.8|~3.0",
- "symfony/dependency-injection": "~2.8|~3.0",
- "symfony/dom-crawler": "~2.8|~3.0",
- "symfony/expression-language": "~2.8|~3.0",
- "symfony/finder": "~2.8|~3.0",
- "symfony/process": "~2.8|~3.0",
- "symfony/routing": "~2.8|~3.0",
- "symfony/stopwatch": "~2.8|~3.0",
- "symfony/templating": "~2.8|~3.0",
- "symfony/translation": "~2.8|~3.0",
- "symfony/var-dumper": "~2.8|~3.0"
- },
- "suggest": {
- "symfony/browser-kit": "",
- "symfony/class-loader": "",
- "symfony/config": "",
- "symfony/console": "",
- "symfony/dependency-injection": "",
- "symfony/finder": "",
- "symfony/var-dumper": ""
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.0-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\HttpKernel\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony HttpKernel Component",
- "homepage": "https://symfony.com/",
- "time": "2016-07-30 09:10:37"
- },
- {
- "name": "symfony/polyfill-mbstring",
- "version": "v1.3.0",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/polyfill-mbstring.git",
- "reference": "e79d363049d1c2128f133a2667e4f4190904f7f4"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/e79d363049d1c2128f133a2667e4f4190904f7f4",
- "reference": "e79d363049d1c2128f133a2667e4f4190904f7f4",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "suggest": {
- "ext-mbstring": "For best performance"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.3-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": "2016-11-14 01:06:16"
- },
- {
- "name": "symfony/routing",
- "version": "v3.0.9",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/routing.git",
- "reference": "9038984bd9c05ab07280121e9e10f61a7231457b"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/routing/zipball/9038984bd9c05ab07280121e9e10f61a7231457b",
- "reference": "9038984bd9c05ab07280121e9e10f61a7231457b",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9"
- },
- "conflict": {
- "symfony/config": "<2.8"
- },
- "require-dev": {
- "doctrine/annotations": "~1.0",
- "doctrine/common": "~2.2",
- "psr/log": "~1.0",
- "symfony/config": "~2.8|~3.0",
- "symfony/expression-language": "~2.8|~3.0",
- "symfony/http-foundation": "~2.8|~3.0",
- "symfony/yaml": "~2.8|~3.0"
- },
- "suggest": {
- "doctrine/annotations": "For using the annotation loader",
- "symfony/config": "For using the all-in-one router or any loader",
- "symfony/dependency-injection": "For loading routes from a service",
- "symfony/expression-language": "For using expression matching",
- "symfony/http-foundation": "For using a Symfony Request object",
- "symfony/yaml": "For using the YAML loader"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.0-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\Routing\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony Routing Component",
- "homepage": "https://symfony.com/",
- "keywords": [
- "router",
- "routing",
- "uri",
- "url"
- ],
- "time": "2016-06-29 05:40:00"
- }
- ],
- "packages-dev": [
- {
- "name": "doctrine/instantiator",
- "version": "1.0.5",
- "source": {
- "type": "git",
- "url": "https://github.com/doctrine/instantiator.git",
- "reference": "8e884e78f9f0eb1329e445619e04456e64d8051d"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/doctrine/instantiator/zipball/8e884e78f9f0eb1329e445619e04456e64d8051d",
- "reference": "8e884e78f9f0eb1329e445619e04456e64d8051d",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3,<8.0-DEV"
- },
- "require-dev": {
- "athletic/athletic": "~0.1.8",
- "ext-pdo": "*",
- "ext-phar": "*",
- "phpunit/phpunit": "~4.0",
- "squizlabs/php_codesniffer": "~2.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Doctrine\\Instantiator\\": "src/Doctrine/Instantiator/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Marco Pivetta",
- "email": "ocramius@gmail.com",
- "homepage": "http://ocramius.github.com/"
- }
- ],
- "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors",
- "homepage": "https://github.com/doctrine/instantiator",
- "keywords": [
- "constructor",
- "instantiate"
- ],
- "time": "2015-06-14 21:17:01"
- },
- {
- "name": "google/cloud-tools",
- "version": "v0.6.1",
- "source": {
- "type": "git",
- "url": "https://github.com/GoogleCloudPlatform/php-tools.git",
- "reference": "6546fab38b9ac7d9563e1ada6ed1e945eb7d10ac"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/GoogleCloudPlatform/php-tools/zipball/6546fab38b9ac7d9563e1ada6ed1e945eb7d10ac",
- "reference": "6546fab38b9ac7d9563e1ada6ed1e945eb7d10ac",
- "shasum": ""
- },
- "require": {
- "guzzlehttp/guzzle": "~5.3|~6.0",
- "php": ">=5.5",
- "phpunit/phpunit": "~4|~5",
- "symfony/browser-kit": "~2|~3",
- "symfony/process": "~2|~3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.0"
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "Google\\Cloud\\TestUtils\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "Apache-2.0"
- ],
- "authors": [
- {
- "name": "Takashi Matsuo",
- "email": "tmatsuo@google.com",
- "homepage": "https://wp.gaeflex.ninja/"
- }
- ],
- "description": "PHP tools for Google Cloud Platform",
- "homepage": "https://github.com/GoogleCloudPlatform/php-tools",
- "keywords": [
- "appengine",
- "gcp",
- "test"
- ],
- "time": "2016-12-08 21:36:15"
- },
- {
- "name": "myclabs/deep-copy",
- "version": "1.5.5",
- "source": {
- "type": "git",
- "url": "https://github.com/myclabs/DeepCopy.git",
- "reference": "399c1f9781e222f6eb6cc238796f5200d1b7f108"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/399c1f9781e222f6eb6cc238796f5200d1b7f108",
- "reference": "399c1f9781e222f6eb6cc238796f5200d1b7f108",
- "shasum": ""
- },
- "require": {
- "php": ">=5.4.0"
- },
- "require-dev": {
- "doctrine/collections": "1.*",
- "phpunit/phpunit": "~4.1"
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "DeepCopy\\": "src/DeepCopy/"
- }
- },
- "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",
- "duplicate",
- "object",
- "object graph"
- ],
- "time": "2016-10-31 17:19:45"
- },
- {
- "name": "paragonie/random_compat",
- "version": "v2.0.4",
- "source": {
- "type": "git",
- "url": "https://github.com/paragonie/random_compat.git",
- "reference": "a9b97968bcde1c4de2a5ec6cbd06a0f6c919b46e"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/paragonie/random_compat/zipball/a9b97968bcde1c4de2a5ec6cbd06a0f6c919b46e",
- "reference": "a9b97968bcde1c4de2a5ec6cbd06a0f6c919b46e",
- "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",
- "pseudorandom",
- "random"
- ],
- "time": "2016-11-07 23:38:38"
- },
- {
- "name": "phpdocumentor/reflection-common",
- "version": "1.0",
- "source": {
- "type": "git",
- "url": "https://github.com/phpDocumentor/ReflectionCommon.git",
- "reference": "144c307535e82c8fdcaacbcfc1d6d8eeb896687c"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phpDocumentor/ReflectionCommon/zipball/144c307535e82c8fdcaacbcfc1d6d8eeb896687c",
- "reference": "144c307535e82c8fdcaacbcfc1d6d8eeb896687c",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5"
- },
- "require-dev": {
- "phpunit/phpunit": "^4.6"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "phpDocumentor\\Reflection\\": [
- "src"
- ]
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Jaap van Otterdijk",
- "email": "opensource@ijaap.nl"
- }
- ],
- "description": "Common reflection classes used by phpdocumentor to reflect the code structure",
- "homepage": "http://www.phpdoc.org/",
- "keywords": [
- "FQSEN",
- "phpDocumentor",
- "phpdoc",
- "reflection",
- "static analysis"
- ],
- "time": "2015-12-27 11:43:31"
- },
- {
- "name": "phpdocumentor/reflection-docblock",
- "version": "3.1.1",
- "source": {
- "type": "git",
- "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git",
- "reference": "8331b5efe816ae05461b7ca1e721c01b46bafb3e"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/8331b5efe816ae05461b7ca1e721c01b46bafb3e",
- "reference": "8331b5efe816ae05461b7ca1e721c01b46bafb3e",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5",
- "phpdocumentor/reflection-common": "^1.0@dev",
- "phpdocumentor/type-resolver": "^0.2.0",
- "webmozart/assert": "^1.0"
- },
- "require-dev": {
- "mockery/mockery": "^0.9.4",
- "phpunit/phpunit": "^4.4"
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "phpDocumentor\\Reflection\\": [
- "src/"
- ]
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Mike van Riel",
- "email": "me@mikevanriel.com"
- }
- ],
- "description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.",
- "time": "2016-09-30 07:12:33"
- },
- {
- "name": "phpdocumentor/type-resolver",
- "version": "0.2.1",
- "source": {
- "type": "git",
- "url": "https://github.com/phpDocumentor/TypeResolver.git",
- "reference": "e224fb2ea2fba6d3ad6fdaef91cd09a172155ccb"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/e224fb2ea2fba6d3ad6fdaef91cd09a172155ccb",
- "reference": "e224fb2ea2fba6d3ad6fdaef91cd09a172155ccb",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5",
- "phpdocumentor/reflection-common": "^1.0"
- },
- "require-dev": {
- "mockery/mockery": "^0.9.4",
- "phpunit/phpunit": "^5.2||^4.8.24"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "phpDocumentor\\Reflection\\": [
- "src/"
- ]
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Mike van Riel",
- "email": "me@mikevanriel.com"
- }
- ],
- "time": "2016-11-25 06:54:22"
- },
- {
- "name": "phpspec/prophecy",
- "version": "v1.6.2",
- "source": {
- "type": "git",
- "url": "https://github.com/phpspec/prophecy.git",
- "reference": "6c52c2722f8460122f96f86346600e1077ce22cb"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phpspec/prophecy/zipball/6c52c2722f8460122f96f86346600e1077ce22cb",
- "reference": "6c52c2722f8460122f96f86346600e1077ce22cb",
- "shasum": ""
- },
- "require": {
- "doctrine/instantiator": "^1.0.2",
- "php": "^5.3|^7.0",
- "phpdocumentor/reflection-docblock": "^2.0|^3.0.2",
- "sebastian/comparator": "^1.1",
- "sebastian/recursion-context": "^1.0|^2.0"
- },
- "require-dev": {
- "phpspec/phpspec": "^2.0",
- "phpunit/phpunit": "^4.8 || ^5.6.5"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.6.x-dev"
- }
- },
- "autoload": {
- "psr-0": {
- "Prophecy\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Konstantin Kudryashov",
- "email": "ever.zet@gmail.com",
- "homepage": "http://everzet.com/"
- },
- {
- "name": "Marcello Duarte",
- "email": "marcello.duarte@gmail.com"
- }
- ],
- "description": "Highly opinionated mocking framework for PHP 5.3+",
- "homepage": "https://github.com/phpspec/prophecy",
- "keywords": [
- "Double",
- "Dummy",
- "fake",
- "mock",
- "spy",
- "stub"
- ],
- "time": "2016-11-21 14:58:47"
- },
- {
- "name": "phpunit/php-code-coverage",
- "version": "4.0.3",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-code-coverage.git",
- "reference": "903fd6318d0a90b4770a009ff73e4a4e9c437929"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/903fd6318d0a90b4770a009ff73e4a4e9c437929",
- "reference": "903fd6318d0a90b4770a009ff73e4a4e9c437929",
- "shasum": ""
- },
- "require": {
- "php": "^5.6 || ^7.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"
- },
- "require-dev": {
- "ext-xdebug": ">=2.1.4",
- "phpunit/phpunit": "^5.4"
- },
- "suggest": {
- "ext-dom": "*",
- "ext-xdebug": ">=2.4.0",
- "ext-xmlwriter": "*"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "4.0.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sb@sebastian-bergmann.de",
- "role": "lead"
- }
- ],
- "description": "Library that provides collection, processing, and rendering functionality for PHP code coverage information.",
- "homepage": "https://github.com/sebastianbergmann/php-code-coverage",
- "keywords": [
- "coverage",
- "testing",
- "xunit"
- ],
- "time": "2016-11-28 16:00:31"
- },
- {
- "name": "phpunit/php-file-iterator",
- "version": "1.4.2",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-file-iterator.git",
- "reference": "3cc8f69b3028d0f96a9078e6295d86e9bf019be5"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/3cc8f69b3028d0f96a9078e6295d86e9bf019be5",
- "reference": "3cc8f69b3028d0f96a9078e6295d86e9bf019be5",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.4.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sb@sebastian-bergmann.de",
- "role": "lead"
- }
- ],
- "description": "FilterIterator implementation that filters files based on a list of suffixes.",
- "homepage": "https://github.com/sebastianbergmann/php-file-iterator/",
- "keywords": [
- "filesystem",
- "iterator"
- ],
- "time": "2016-10-03 07:40:28"
- },
- {
- "name": "phpunit/php-text-template",
- "version": "1.2.1",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-text-template.git",
- "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/31f8b717e51d9a2afca6c9f046f5d69fc27c8686",
- "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "type": "library",
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de",
- "role": "lead"
- }
- ],
- "description": "Simple template engine.",
- "homepage": "https://github.com/sebastianbergmann/php-text-template/",
- "keywords": [
- "template"
- ],
- "time": "2015-06-21 13:50:34"
- },
- {
- "name": "phpunit/php-timer",
- "version": "1.0.8",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-timer.git",
- "reference": "38e9124049cf1a164f1e4537caf19c99bf1eb260"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/38e9124049cf1a164f1e4537caf19c99bf1eb260",
- "reference": "38e9124049cf1a164f1e4537caf19c99bf1eb260",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4|~5"
- },
- "type": "library",
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sb@sebastian-bergmann.de",
- "role": "lead"
- }
- ],
- "description": "Utility class for timing",
- "homepage": "https://github.com/sebastianbergmann/php-timer/",
- "keywords": [
- "timer"
- ],
- "time": "2016-05-12 18:03:57"
- },
- {
- "name": "phpunit/php-token-stream",
- "version": "1.4.9",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-token-stream.git",
- "reference": "3b402f65a4cc90abf6e1104e388b896ce209631b"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/3b402f65a4cc90abf6e1104e388b896ce209631b",
- "reference": "3b402f65a4cc90abf6e1104e388b896ce209631b",
- "shasum": ""
- },
- "require": {
- "ext-tokenizer": "*",
- "php": ">=5.3.3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.2"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.4-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Wrapper around PHP's tokenizer extension.",
- "homepage": "https://github.com/sebastianbergmann/php-token-stream/",
- "keywords": [
- "tokenizer"
- ],
- "time": "2016-11-15 14:06:22"
- },
- {
- "name": "phpunit/phpunit",
- "version": "5.6.7",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/phpunit.git",
- "reference": "38810e97481723ef918f6e35c03cb1014a645bd5"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/38810e97481723ef918f6e35c03cb1014a645bd5",
- "reference": "38810e97481723ef918f6e35c03cb1014a645bd5",
- "shasum": ""
- },
- "require": {
- "ext-dom": "*",
- "ext-json": "*",
- "ext-libxml": "*",
- "ext-mbstring": "*",
- "ext-xml": "*",
- "myclabs/deep-copy": "~1.3",
- "php": "^5.6 || ^7.0",
- "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.2",
- "sebastian/diff": "~1.2",
- "sebastian/environment": "^1.3 || ^2.0",
- "sebastian/exporter": "~2.0",
- "sebastian/global-state": "~1.0",
- "sebastian/object-enumerator": "~2.0",
- "sebastian/resource-operations": "~1.0",
- "sebastian/version": "~1.0|~2.0",
- "symfony/yaml": "~2.1|~3.0"
- },
- "conflict": {
- "phpdocumentor/reflection-docblock": "3.0.2"
- },
- "require-dev": {
- "ext-pdo": "*"
- },
- "suggest": {
- "ext-xdebug": "*",
- "phpunit/php-invoker": "~1.1"
- },
- "bin": [
- "phpunit"
- ],
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "5.6.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de",
- "role": "lead"
- }
- ],
- "description": "The PHP Unit Testing framework.",
- "homepage": "https://phpunit.de/",
- "keywords": [
- "phpunit",
- "testing",
- "xunit"
- ],
- "time": "2016-11-28 16:04:24"
- },
- {
- "name": "phpunit/phpunit-mock-objects",
- "version": "3.4.2",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/phpunit-mock-objects.git",
- "reference": "90a08f5deed5f7ac35463c161f2e8fa0e5652faf"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/phpunit-mock-objects/zipball/90a08f5deed5f7ac35463c161f2e8fa0e5652faf",
- "reference": "90a08f5deed5f7ac35463c161f2e8fa0e5652faf",
- "shasum": ""
- },
- "require": {
- "doctrine/instantiator": "^1.0.2",
- "php": "^5.6 || ^7.0",
- "phpunit/php-text-template": "^1.2",
- "sebastian/exporter": "^1.2 || ^2.0"
- },
- "conflict": {
- "phpunit/phpunit": "<5.4.0"
- },
- "require-dev": {
- "phpunit/phpunit": "^5.4"
- },
- "suggest": {
- "ext-soap": "*"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.2.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sb@sebastian-bergmann.de",
- "role": "lead"
- }
- ],
- "description": "Mock Object library for PHPUnit",
- "homepage": "https://github.com/sebastianbergmann/phpunit-mock-objects/",
- "keywords": [
- "mock",
- "xunit"
- ],
- "time": "2016-11-27 07:52:03"
- },
- {
- "name": "sebastian/code-unit-reverse-lookup",
- "version": "1.0.0",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/code-unit-reverse-lookup.git",
- "reference": "c36f5e7cfce482fde5bf8d10d41a53591e0198fe"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/c36f5e7cfce482fde5bf8d10d41a53591e0198fe",
- "reference": "c36f5e7cfce482fde5bf8d10d41a53591e0198fe",
- "shasum": ""
- },
- "require": {
- "php": ">=5.6"
- },
- "require-dev": {
- "phpunit/phpunit": "~5"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Looks up which function or method a line of code belongs to",
- "homepage": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/",
- "time": "2016-02-13 06:45:14"
- },
- {
- "name": "sebastian/comparator",
- "version": "1.2.2",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/comparator.git",
- "reference": "6a1ed12e8b2409076ab22e3897126211ff8b1f7f"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/6a1ed12e8b2409076ab22e3897126211ff8b1f7f",
- "reference": "6a1ed12e8b2409076ab22e3897126211ff8b1f7f",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3",
- "sebastian/diff": "~1.2",
- "sebastian/exporter": "~1.2 || ~2.0"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.4"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.2.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Jeff Welch",
- "email": "whatthejeff@gmail.com"
- },
- {
- "name": "Volker Dusch",
- "email": "github@wallbash.com"
- },
- {
- "name": "Bernhard Schussek",
- "email": "bschussek@2bepublished.at"
- },
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Provides the functionality to compare PHP values for equality",
- "homepage": "http://www.github.com/sebastianbergmann/comparator",
- "keywords": [
- "comparator",
- "compare",
- "equality"
- ],
- "time": "2016-11-19 09:18:40"
- },
- {
- "name": "sebastian/diff",
- "version": "1.4.1",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/diff.git",
- "reference": "13edfd8706462032c2f52b4b862974dd46b71c9e"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/13edfd8706462032c2f52b4b862974dd46b71c9e",
- "reference": "13edfd8706462032c2f52b4b862974dd46b71c9e",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.8"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.4-dev"
- }
- },
- "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"
- }
- ],
- "description": "Diff implementation",
- "homepage": "https://github.com/sebastianbergmann/diff",
- "keywords": [
- "diff"
- ],
- "time": "2015-12-08 07:14:41"
- },
- {
- "name": "sebastian/environment",
- "version": "2.0.0",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/environment.git",
- "reference": "5795ffe5dc5b02460c3e34222fee8cbe245d8fac"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/5795ffe5dc5b02460c3e34222fee8cbe245d8fac",
- "reference": "5795ffe5dc5b02460c3e34222fee8cbe245d8fac",
- "shasum": ""
- },
- "require": {
- "php": "^5.6 || ^7.0"
- },
- "require-dev": {
- "phpunit/phpunit": "^5.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.0.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Provides functionality to handle HHVM/PHP environments",
- "homepage": "http://www.github.com/sebastianbergmann/environment",
- "keywords": [
- "Xdebug",
- "environment",
- "hhvm"
- ],
- "time": "2016-11-26 07:53:53"
- },
- {
- "name": "sebastian/exporter",
- "version": "2.0.0",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/exporter.git",
- "reference": "ce474bdd1a34744d7ac5d6aad3a46d48d9bac4c4"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/ce474bdd1a34744d7ac5d6aad3a46d48d9bac4c4",
- "reference": "ce474bdd1a34744d7ac5d6aad3a46d48d9bac4c4",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3",
- "sebastian/recursion-context": "~2.0"
- },
- "require-dev": {
- "ext-mbstring": "*",
- "phpunit/phpunit": "~4.4"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.0.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Jeff Welch",
- "email": "whatthejeff@gmail.com"
- },
- {
- "name": "Volker Dusch",
- "email": "github@wallbash.com"
- },
- {
- "name": "Bernhard Schussek",
- "email": "bschussek@2bepublished.at"
- },
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- },
- {
- "name": "Adam Harvey",
- "email": "aharvey@php.net"
- }
- ],
- "description": "Provides the functionality to export PHP variables for visualization",
- "homepage": "http://www.github.com/sebastianbergmann/exporter",
- "keywords": [
- "export",
- "exporter"
- ],
- "time": "2016-11-19 08:54:04"
- },
- {
- "name": "sebastian/global-state",
- "version": "1.1.1",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/global-state.git",
- "reference": "bc37d50fea7d017d3d340f230811c9f1d7280af4"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/bc37d50fea7d017d3d340f230811c9f1d7280af4",
- "reference": "bc37d50fea7d017d3d340f230811c9f1d7280af4",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.2"
- },
- "suggest": {
- "ext-uopz": "*"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Snapshotting of global state",
- "homepage": "http://www.github.com/sebastianbergmann/global-state",
- "keywords": [
- "global state"
- ],
- "time": "2015-10-12 03:26:01"
- },
- {
- "name": "sebastian/object-enumerator",
- "version": "2.0.0",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/object-enumerator.git",
- "reference": "96f8a3f257b69e8128ad74d3a7fd464bcbaa3b35"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/96f8a3f257b69e8128ad74d3a7fd464bcbaa3b35",
- "reference": "96f8a3f257b69e8128ad74d3a7fd464bcbaa3b35",
- "shasum": ""
- },
- "require": {
- "php": ">=5.6",
- "sebastian/recursion-context": "~2.0"
- },
- "require-dev": {
- "phpunit/phpunit": "~5"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.0.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Traverses array structures and object graphs to enumerate all referenced objects",
- "homepage": "https://github.com/sebastianbergmann/object-enumerator/",
- "time": "2016-11-19 07:35:10"
- },
- {
- "name": "sebastian/recursion-context",
- "version": "2.0.0",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/recursion-context.git",
- "reference": "2c3ba150cbec723aa057506e73a8d33bdb286c9a"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/2c3ba150cbec723aa057506e73a8d33bdb286c9a",
- "reference": "2c3ba150cbec723aa057506e73a8d33bdb286c9a",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.4"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.0.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Jeff Welch",
- "email": "whatthejeff@gmail.com"
- },
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- },
- {
- "name": "Adam Harvey",
- "email": "aharvey@php.net"
- }
- ],
- "description": "Provides functionality to recursively process PHP variables",
- "homepage": "http://www.github.com/sebastianbergmann/recursion-context",
- "time": "2016-11-19 07:33:16"
- },
- {
- "name": "sebastian/resource-operations",
- "version": "1.0.0",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/resource-operations.git",
- "reference": "ce990bb21759f94aeafd30209e8cfcdfa8bc3f52"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/resource-operations/zipball/ce990bb21759f94aeafd30209e8cfcdfa8bc3f52",
- "reference": "ce990bb21759f94aeafd30209e8cfcdfa8bc3f52",
- "shasum": ""
- },
- "require": {
- "php": ">=5.6.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Provides a list of PHP built-in functions that operate on resources",
- "homepage": "https://www.github.com/sebastianbergmann/resource-operations",
- "time": "2015-07-28 20:34:47"
- },
- {
- "name": "sebastian/version",
- "version": "2.0.1",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/version.git",
- "reference": "99732be0ddb3361e16ad77b68ba41efc8e979019"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/99732be0ddb3361e16ad77b68ba41efc8e979019",
- "reference": "99732be0ddb3361e16ad77b68ba41efc8e979019",
- "shasum": ""
- },
- "require": {
- "php": ">=5.6"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.0.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de",
- "role": "lead"
- }
- ],
- "description": "Library that helps with managing the version number of Git-hosted PHP projects",
- "homepage": "https://github.com/sebastianbergmann/version",
- "time": "2016-10-03 07:35:21"
- },
- {
- "name": "symfony/browser-kit",
- "version": "v3.1.7",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/browser-kit.git",
- "reference": "901319a31c9b3cee7857b4aeeb81b5d64dfa34fc"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/browser-kit/zipball/901319a31c9b3cee7857b4aeeb81b5d64dfa34fc",
- "reference": "901319a31c9b3cee7857b4aeeb81b5d64dfa34fc",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9",
- "symfony/dom-crawler": "~2.8|~3.0"
- },
- "require-dev": {
- "symfony/css-selector": "~2.8|~3.0",
- "symfony/process": "~2.8|~3.0"
- },
- "suggest": {
- "symfony/process": ""
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.1-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\BrowserKit\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony BrowserKit Component",
- "homepage": "https://symfony.com/",
- "time": "2016-09-06 11:02:40"
- },
- {
- "name": "symfony/dom-crawler",
- "version": "v3.1.7",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/dom-crawler.git",
- "reference": "1eb3b4d216e8db117218dd2bb7d23dfe67bdf518"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/1eb3b4d216e8db117218dd2bb7d23dfe67bdf518",
- "reference": "1eb3b4d216e8db117218dd2bb7d23dfe67bdf518",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9",
- "symfony/polyfill-mbstring": "~1.0"
- },
- "require-dev": {
- "symfony/css-selector": "~2.8|~3.0"
- },
- "suggest": {
- "symfony/css-selector": ""
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.1-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\DomCrawler\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony DomCrawler Component",
- "homepage": "https://symfony.com/",
- "time": "2016-11-14 16:20:02"
- },
- {
- "name": "symfony/process",
- "version": "v3.1.7",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/process.git",
- "reference": "66de154ae86b1a07001da9fbffd620206e4faf94"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/process/zipball/66de154ae86b1a07001da9fbffd620206e4faf94",
- "reference": "66de154ae86b1a07001da9fbffd620206e4faf94",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.1-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\Process\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony Process Component",
- "homepage": "https://symfony.com/",
- "time": "2016-09-29 14:13:09"
- },
- {
- "name": "symfony/yaml",
- "version": "v3.1.7",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/yaml.git",
- "reference": "9da375317228e54f4ea1b013b30fa47417e84943"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/yaml/zipball/9da375317228e54f4ea1b013b30fa47417e84943",
- "reference": "9da375317228e54f4ea1b013b30fa47417e84943",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.1-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\Yaml\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony Yaml Component",
- "homepage": "https://symfony.com/",
- "time": "2016-11-18 21:05:29"
- },
- {
- "name": "webmozart/assert",
- "version": "1.2.0",
- "source": {
- "type": "git",
- "url": "https://github.com/webmozart/assert.git",
- "reference": "2db61e59ff05fe5126d152bd0655c9ea113e550f"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/webmozart/assert/zipball/2db61e59ff05fe5126d152bd0655c9ea113e550f",
- "reference": "2db61e59ff05fe5126d152bd0655c9ea113e550f",
- "shasum": ""
- },
- "require": {
- "php": "^5.3.3 || ^7.0"
- },
- "require-dev": {
- "phpunit/phpunit": "^4.6",
- "sebastian/version": "^1.0.1"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.3-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Webmozart\\Assert\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Bernhard Schussek",
- "email": "bschussek@gmail.com"
- }
- ],
- "description": "Assertions to validate method input/output with nice error messages.",
- "keywords": [
- "assert",
- "check",
- "validate"
- ],
- "time": "2016-11-23 20:04:58"
- }
- ],
- "aliases": [],
- "minimum-stability": "stable",
- "stability-flags": [],
- "prefer-stable": false,
- "prefer-lowest": false,
- "platform": [],
- "platform-dev": []
-}
diff --git a/appengine/flexible/mailjet/index.php b/appengine/flexible/mailjet/index.php
deleted file mode 100644
index 248b8b209a..0000000000
--- a/appengine/flexible/mailjet/index.php
+++ /dev/null
@@ -1,31 +0,0 @@
-run();
diff --git a/appengine/flexible/mailjet/phpunit.xml b/appengine/flexible/mailjet/phpunit.xml
deleted file mode 100644
index 496e343907..0000000000
--- a/appengine/flexible/mailjet/phpunit.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-
-
-
-
-
- test
-
-
-
-
-
-
-
- app.php
-
-
-
diff --git a/appengine/flexible/mailjet/test/DeployTest.php b/appengine/flexible/mailjet/test/DeployTest.php
deleted file mode 100644
index 4e464fcaca..0000000000
--- a/appengine/flexible/mailjet/test/DeployTest.php
+++ /dev/null
@@ -1,65 +0,0 @@
-setDir($tmpDir);
- chdir($tmpDir);
-
- $indexPhp = file_get_contents('index.php');
- $indexPhp = str_replace(
- 'MAILJET_APIKEY',
- getenv('MAILJET_APIKEY'),
- $indexPhp
- );
- $indexPhp = str_replace(
- 'MAILJET_SECRET',
- getenv('MAILJET_SECRET'),
- $indexPhp
- );
- file_put_contents('index.php', $indexPhp);
- }
-
- public function testIndex()
- {
- // Access the modules app top page.
- $resp = $this->client->get('/');
- $this->assertEquals('200', $resp->getStatusCode(),
- 'top page status code');
- }
-
- public function testSendMessage()
- {
- $resp = $this->client->request('POST', '/send', [
- 'form_params' => [
- 'recipient' => 'fake@example.com',
- ]
- ]);
-
- $this->assertEquals('200', $resp->getStatusCode(),
- 'send message status code');
- }
-}
diff --git a/appengine/flexible/mailjet/test/bootstrap.php b/appengine/flexible/mailjet/test/bootstrap.php
deleted file mode 100644
index 15d727445c..0000000000
--- a/appengine/flexible/mailjet/test/bootstrap.php
+++ /dev/null
@@ -1,18 +0,0 @@
-register(new TwigServiceProvider());
-$app['twig.path'] = [ __DIR__ ];
-$app['memcached'] = function () {
- if (getenv('USE_GAE_MEMCACHE')) {
- $addr = getenv('GAE_MEMCACHE_HOST') ?: 'localhost';
- $port = getenv('GAE_MEMCACHE_PORT') ?: '11211';
- } else {
- $server = getenv('MEMCACHE_SERVER') ?: 'localhost:11211';
- list($addr, $port) = explode(':', $server);
- }
+// Create the container
+AppFactory::setContainer($container = new Container());
+$container->set('view', function () {
+ return Twig::create(__DIR__);
+});
+
+// Create App
+$app = AppFactory::create();
+
+// Display errors
+$app->addErrorMiddleware(true, true, true);
+
+$container->set('memcached', function () {
+ # [START gae_flex_redislabs_memcache]
+ $endpoint = getenv('MEMCACHE_ENDPOINT');
$username = getenv('MEMCACHE_USERNAME');
$password = getenv('MEMCACHE_PASSWORD');
$memcached = new Memcached;
@@ -40,85 +43,79 @@
$memcached->setOption(Memcached::OPT_BINARY_PROTOCOL, true);
$memcached->setSaslAuthData($username, $password);
}
- if (!$memcached->addServer($addr, $port)) {
- throw new Exception("Failed to add server $addr:$port");
+ list($host, $port) = explode(':', $endpoint);
+ if (!$memcached->addServer($host, $port)) {
+ throw new Exception("Failed to add server $host:$port");
}
+ # [END gae_flex_redislabs_memcache]
return $memcached;
-};
-# [END memcached]
+});
-$app->get('/vars', function () {
- $vars = array('MEMCACHE_PORT_11211_TCP_ADDR',
- 'MEMCACHE_PORT_11211_TCP_PORT');
+$app->get('/vars', function (Request $request, Response $response) {
+ $vars = [
+ 'MEMCACHE_PORT_11211_TCP_ADDR',
+ 'MEMCACHE_PORT_11211_TCP_PORT'
+ ];
$lines = array();
foreach ($vars as $var) {
$val = getenv($var);
array_push($lines, "$var = $val");
}
- return new Response(
- implode("\n", $lines),
- 200,
- ['Content-Type' => 'text/plain']);
+ $response->getBody()->write(implode("\n", $lines));
+ return $response->withHeader('Content-Type', 'text/plain');
});
-$app->get('/', function (Application $app, Request $request) {
- /** @var Twig_Environment $twig */
- $twig = $app['twig'];
- /** @var Memcached $memcached */
- $memcached = $app['memcached'];
- return $twig->render('memcache.html.twig', [
+$app->get('/', function (Request $request, Response $response) use ($container) {
+ $memcached = $container->get('memcached');
+ return $container->get('view')->render($response, 'memcache.html.twig', [
'who' => $memcached->get('who'),
'count' => $memcached->get('count'),
- 'host' => $request->getHttpHost(),
+ 'host' => $request->getUri()->getHost(),
]);
});
-$app->post('/reset', function (Application $app, Request $request) {
- /** @var Twig_Environment $twig */
- $twig = $app['twig'];
- /** @var Memcached $memcached */
- $memcached = $app['memcached'];
+$app->post('/reset', function (Request $request, Response $response) use ($container) {
+ $memcached = $container->get('memcached');
$memcached->delete('who');
$memcached->set('count', 0);
- return $twig->render('memcache.html.twig', [
- 'host' => $request->getHttpHost(),
+ return $container->get('view')->render($response, 'memcache.html.twig', [
+ 'host' => $request->getUri()->getHost(),
'count' => 0,
'who' => '',
]);
});
-$app->post('/', function (Application $app, Request $request) {
- /** @var Twig_Environment $twig */
- $twig = $app['twig'];
- /** @var Memcached $memcached */
- $memcached = $app['memcached'];
- $memcached->set('who', $request->get('who'));
+$app->post('/', function (Request $request, Response $response) use ($container) {
+ parse_str((string) $request->getBody(), $postData);
+ $who = $postData['who'] ?? '';
+ $memcached = $container->get('memcached');
+ $memcached->set('who', $who);
$count = $memcached->increment('count');
if (false === $count) {
// Potential race condition. Use binary protocol to avoid.
$memcached->set('count', 0);
$count = 0;
}
- return $twig->render('memcache.html.twig', [
- 'who' => $request->get('who'),
+ return $container->get('view')->render($response, 'memcache.html.twig', [
+ 'who' => $who,
'count' => $count,
- 'host' => $request->getHttpHost(),
+ 'host' => $request->getUri()->getHost(),
]);
});
-# [START memcached]
-$app->get('/memcached/{key}', function (Application $app, $key) {
- /** @var Memcached $memcached */
- $memcached = $app['memcached'];
- return $memcached->get($key);
+$app->get('/memcached/{key}', function (Request $request, Response $response, $args) use ($container) {
+ $memcached = $container->get('memcached');
+ $value = $memcached->get($args['key']);
+ $response->getBody()->write((string) $value);
+ return $response;
});
-$app->put('/memcached/{key}', function (Application $app, $key, Request $request) {
- /** @var Memcached $memcached */
- $memcached = $app['memcached'];
- $value = $request->getContent();
- return $memcached->set($key, $value, time() + 600); // 10 minutes expiration
+$app->put('/memcached/{key}', function (Request $request, Response $response, $args) use ($container) {
+ $memcached = $container->get('memcached');
+ $value = (string) $request->getBody();
+ $success = $memcached->set($args['key'], $value, time() + 600); // 10 minutes expiration
+ $response->getBody()->write((string) $success);
+ return $response;
});
-# [END memcached]
return $app;
diff --git a/appengine/flexible/memcache/app.yaml b/appengine/flexible/memcache/app.yaml
index 0d20960c9e..f7466994a5 100644
--- a/appengine/flexible/memcache/app.yaml
+++ b/appengine/flexible/memcache/app.yaml
@@ -1,17 +1,15 @@
runtime: php
-vm: true
+env: flex
runtime_config:
document_root: web
-# [START env_variables]
+# [START gae_flex_redislabs_memcache_yaml]
env_variables:
- # If you are using the App Engine Memcache service (currently in alpha),
- # uncomment this section and comment out the other Memcache variables.
- # USE_GAE_MEMCACHE: 1
- MEMCACHE_SERVER: your-memcache-server
+ # Set your memcache endpoint here. This should be in the format "host:port"
+ MEMCACHE_ENDPOINT: "YOUR_MEMCACHE_ENDPOINT"
# If you are using a Memcached server with SASL authentiation enabled,
# fill in these values with your username and password.
MEMCACHE_USERNAME: ""
MEMCACHE_PASSWORD: ""
-# [END env_variables]
\ No newline at end of file
+# [END gae_flex_redislabs_memcache_yaml]
diff --git a/appengine/flexible/memcache/composer.json b/appengine/flexible/memcache/composer.json
index 822c4ab164..7fa5d51921 100644
--- a/appengine/flexible/memcache/composer.json
+++ b/appengine/flexible/memcache/composer.json
@@ -1,14 +1,8 @@
{
"require": {
- "silex/silex": "^1.3",
- "twig/twig": "^1.24"
- },
- "require-dev": {
- "gecko-packages/gecko-memcache-mock": "^2.0",
- "google/cloud-tools": "^0.6",
- "paragonie/random_compat": "^2.0",
- "guzzlehttp/guzzle": "^6.2",
- "monolog/monolog": "^1.19",
- "phpunit/phpunit": "~4"
+ "slim/slim": "^4.0",
+ "slim/psr7": "^1.3",
+ "slim/twig-view": "^3.2",
+ "php-di/slim-bridge": "^3.1"
}
}
diff --git a/appengine/flexible/memcache/composer.lock b/appengine/flexible/memcache/composer.lock
deleted file mode 100644
index e89567ad14..0000000000
--- a/appengine/flexible/memcache/composer.lock
+++ /dev/null
@@ -1,2389 +0,0 @@
-{
- "_readme": [
- "This file locks the dependencies of your project to a known state",
- "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file",
- "This file is @generated automatically"
- ],
- "hash": "bb35611bd23a657f26c0e0b61b4c9337",
- "content-hash": "0c303adb3d1f5fb5c3bbb18099d75058",
- "packages": [
- {
- "name": "pimple/pimple",
- "version": "v1.1.1",
- "source": {
- "type": "git",
- "url": "https://github.com/silexphp/Pimple.git",
- "reference": "2019c145fe393923f3441b23f29bbdfaa5c58c4d"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/silexphp/Pimple/zipball/2019c145fe393923f3441b23f29bbdfaa5c58c4d",
- "reference": "2019c145fe393923f3441b23f29bbdfaa5c58c4d",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.1.x-dev"
- }
- },
- "autoload": {
- "psr-0": {
- "Pimple": "lib/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- }
- ],
- "description": "Pimple is a simple Dependency Injection Container for PHP 5.3",
- "homepage": "http://pimple.sensiolabs.org/",
- "keywords": [
- "container",
- "dependency injection"
- ],
- "time": "2013-11-22 08:30:29"
- },
- {
- "name": "psr/log",
- "version": "1.0.2",
- "source": {
- "type": "git",
- "url": "https://github.com/php-fig/log.git",
- "reference": "4ebe3a8bf773a19edfe0a84b6585ba3d401b724d"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/php-fig/log/zipball/4ebe3a8bf773a19edfe0a84b6585ba3d401b724d",
- "reference": "4ebe3a8bf773a19edfe0a84b6585ba3d401b724d",
- "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": "2016-10-10 12:19:37"
- },
- {
- "name": "silex/silex",
- "version": "v1.3.5",
- "source": {
- "type": "git",
- "url": "https://github.com/silexphp/Silex.git",
- "reference": "374c7e04040a6f781c90f7d746726a5daa78e783"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/silexphp/Silex/zipball/374c7e04040a6f781c90f7d746726a5daa78e783",
- "reference": "374c7e04040a6f781c90f7d746726a5daa78e783",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.9",
- "pimple/pimple": "~1.0",
- "symfony/event-dispatcher": "~2.3|3.0.*",
- "symfony/http-foundation": "~2.3|3.0.*",
- "symfony/http-kernel": "~2.3|3.0.*",
- "symfony/routing": "~2.3|3.0.*"
- },
- "require-dev": {
- "doctrine/dbal": "~2.2",
- "monolog/monolog": "^1.4.1",
- "swiftmailer/swiftmailer": "~5",
- "symfony/browser-kit": "~2.3|3.0.*",
- "symfony/config": "~2.3|3.0.*",
- "symfony/css-selector": "~2.3|3.0.*",
- "symfony/debug": "~2.3|3.0.*",
- "symfony/dom-crawler": "~2.3|3.0.*",
- "symfony/finder": "~2.3|3.0.*",
- "symfony/form": "~2.3|3.0.*",
- "symfony/locale": "~2.3|3.0.*",
- "symfony/monolog-bridge": "~2.3|3.0.*",
- "symfony/options-resolver": "~2.3|3.0.*",
- "symfony/phpunit-bridge": "~2.7",
- "symfony/process": "~2.3|3.0.*",
- "symfony/security": "~2.3|3.0.*",
- "symfony/serializer": "~2.3|3.0.*",
- "symfony/translation": "~2.3|3.0.*",
- "symfony/twig-bridge": "~2.3|3.0.*",
- "symfony/validator": "~2.3|3.0.*",
- "twig/twig": "~1.8|~2.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.3.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Silex\\": "src/Silex"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Igor Wiedler",
- "email": "igor@wiedler.ch"
- }
- ],
- "description": "The PHP micro-framework based on the Symfony Components",
- "homepage": "http://silex.sensiolabs.org/",
- "keywords": [
- "microframework"
- ],
- "time": "2016-01-06 14:59:35"
- },
- {
- "name": "symfony/debug",
- "version": "v3.1.7",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/debug.git",
- "reference": "c058661c32f5b462722e36d120905940089cbd9a"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/debug/zipball/c058661c32f5b462722e36d120905940089cbd9a",
- "reference": "c058661c32f5b462722e36d120905940089cbd9a",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9",
- "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"
- },
- "require-dev": {
- "symfony/class-loader": "~2.8|~3.0",
- "symfony/http-kernel": "~2.8|~3.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.1-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\Debug\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "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": "2016-11-15 12:55:20"
- },
- {
- "name": "symfony/event-dispatcher",
- "version": "v3.0.9",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/event-dispatcher.git",
- "reference": "54da3ff63dec3c9c0e32ec3f95a7d94ef64baa00"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/54da3ff63dec3c9c0e32ec3f95a7d94ef64baa00",
- "reference": "54da3ff63dec3c9c0e32ec3f95a7d94ef64baa00",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9"
- },
- "require-dev": {
- "psr/log": "~1.0",
- "symfony/config": "~2.8|~3.0",
- "symfony/dependency-injection": "~2.8|~3.0",
- "symfony/expression-language": "~2.8|~3.0",
- "symfony/stopwatch": "~2.8|~3.0"
- },
- "suggest": {
- "symfony/dependency-injection": "",
- "symfony/http-kernel": ""
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.0-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\EventDispatcher\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony EventDispatcher Component",
- "homepage": "https://symfony.com/",
- "time": "2016-07-19 10:44:15"
- },
- {
- "name": "symfony/http-foundation",
- "version": "v3.0.9",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/http-foundation.git",
- "reference": "49ba00f8ede742169cb6b70abe33243f4d673f82"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/http-foundation/zipball/49ba00f8ede742169cb6b70abe33243f4d673f82",
- "reference": "49ba00f8ede742169cb6b70abe33243f4d673f82",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9",
- "symfony/polyfill-mbstring": "~1.1"
- },
- "require-dev": {
- "symfony/expression-language": "~2.8|~3.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.0-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\HttpFoundation\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony HttpFoundation Component",
- "homepage": "https://symfony.com/",
- "time": "2016-07-17 13:54:30"
- },
- {
- "name": "symfony/http-kernel",
- "version": "v3.0.9",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/http-kernel.git",
- "reference": "d97ba4425e36e79c794e7d14ff36f00f081b37b3"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/http-kernel/zipball/d97ba4425e36e79c794e7d14ff36f00f081b37b3",
- "reference": "d97ba4425e36e79c794e7d14ff36f00f081b37b3",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9",
- "psr/log": "~1.0",
- "symfony/debug": "~2.8|~3.0",
- "symfony/event-dispatcher": "~2.8|~3.0",
- "symfony/http-foundation": "~2.8.8|~3.0.8|~3.1.2|~3.2"
- },
- "conflict": {
- "symfony/config": "<2.8"
- },
- "require-dev": {
- "symfony/browser-kit": "~2.8|~3.0",
- "symfony/class-loader": "~2.8|~3.0",
- "symfony/config": "~2.8|~3.0",
- "symfony/console": "~2.8|~3.0",
- "symfony/css-selector": "~2.8|~3.0",
- "symfony/dependency-injection": "~2.8|~3.0",
- "symfony/dom-crawler": "~2.8|~3.0",
- "symfony/expression-language": "~2.8|~3.0",
- "symfony/finder": "~2.8|~3.0",
- "symfony/process": "~2.8|~3.0",
- "symfony/routing": "~2.8|~3.0",
- "symfony/stopwatch": "~2.8|~3.0",
- "symfony/templating": "~2.8|~3.0",
- "symfony/translation": "~2.8|~3.0",
- "symfony/var-dumper": "~2.8|~3.0"
- },
- "suggest": {
- "symfony/browser-kit": "",
- "symfony/class-loader": "",
- "symfony/config": "",
- "symfony/console": "",
- "symfony/dependency-injection": "",
- "symfony/finder": "",
- "symfony/var-dumper": ""
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.0-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\HttpKernel\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony HttpKernel Component",
- "homepage": "https://symfony.com/",
- "time": "2016-07-30 09:10:37"
- },
- {
- "name": "symfony/polyfill-mbstring",
- "version": "v1.3.0",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/polyfill-mbstring.git",
- "reference": "e79d363049d1c2128f133a2667e4f4190904f7f4"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/e79d363049d1c2128f133a2667e4f4190904f7f4",
- "reference": "e79d363049d1c2128f133a2667e4f4190904f7f4",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "suggest": {
- "ext-mbstring": "For best performance"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.3-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": "2016-11-14 01:06:16"
- },
- {
- "name": "symfony/routing",
- "version": "v3.0.9",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/routing.git",
- "reference": "9038984bd9c05ab07280121e9e10f61a7231457b"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/routing/zipball/9038984bd9c05ab07280121e9e10f61a7231457b",
- "reference": "9038984bd9c05ab07280121e9e10f61a7231457b",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9"
- },
- "conflict": {
- "symfony/config": "<2.8"
- },
- "require-dev": {
- "doctrine/annotations": "~1.0",
- "doctrine/common": "~2.2",
- "psr/log": "~1.0",
- "symfony/config": "~2.8|~3.0",
- "symfony/expression-language": "~2.8|~3.0",
- "symfony/http-foundation": "~2.8|~3.0",
- "symfony/yaml": "~2.8|~3.0"
- },
- "suggest": {
- "doctrine/annotations": "For using the annotation loader",
- "symfony/config": "For using the all-in-one router or any loader",
- "symfony/dependency-injection": "For loading routes from a service",
- "symfony/expression-language": "For using expression matching",
- "symfony/http-foundation": "For using a Symfony Request object",
- "symfony/yaml": "For using the YAML loader"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.0-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\Routing\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony Routing Component",
- "homepage": "https://symfony.com/",
- "keywords": [
- "router",
- "routing",
- "uri",
- "url"
- ],
- "time": "2016-06-29 05:40:00"
- },
- {
- "name": "twig/twig",
- "version": "v1.28.2",
- "source": {
- "type": "git",
- "url": "https://github.com/twigphp/Twig.git",
- "reference": "b22ce0eb070e41f7cba65d78fe216de29726459c"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/twigphp/Twig/zipball/b22ce0eb070e41f7cba65d78fe216de29726459c",
- "reference": "b22ce0eb070e41f7cba65d78fe216de29726459c",
- "shasum": ""
- },
- "require": {
- "php": ">=5.2.7"
- },
- "require-dev": {
- "symfony/debug": "~2.7",
- "symfony/phpunit-bridge": "~3.2@dev"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.28-dev"
- }
- },
- "autoload": {
- "psr-0": {
- "Twig_": "lib/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com",
- "homepage": "http://fabien.potencier.org/",
- "role": "Lead Developer"
- },
- {
- "name": "Armin Ronacher",
- "email": "armin.ronacher@active-4.com",
- "role": "Project Founder"
- },
- {
- "name": "Twig Team",
- "homepage": "http://twig.sensiolabs.org/contributors",
- "role": "Contributors"
- }
- ],
- "description": "Twig, the flexible, fast, and secure template language for PHP",
- "homepage": "http://twig.sensiolabs.org/",
- "keywords": [
- "templating"
- ],
- "time": "2016-11-23 18:41:40"
- }
- ],
- "packages-dev": [
- {
- "name": "doctrine/instantiator",
- "version": "1.0.5",
- "source": {
- "type": "git",
- "url": "https://github.com/doctrine/instantiator.git",
- "reference": "8e884e78f9f0eb1329e445619e04456e64d8051d"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/doctrine/instantiator/zipball/8e884e78f9f0eb1329e445619e04456e64d8051d",
- "reference": "8e884e78f9f0eb1329e445619e04456e64d8051d",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3,<8.0-DEV"
- },
- "require-dev": {
- "athletic/athletic": "~0.1.8",
- "ext-pdo": "*",
- "ext-phar": "*",
- "phpunit/phpunit": "~4.0",
- "squizlabs/php_codesniffer": "~2.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Doctrine\\Instantiator\\": "src/Doctrine/Instantiator/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Marco Pivetta",
- "email": "ocramius@gmail.com",
- "homepage": "http://ocramius.github.com/"
- }
- ],
- "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors",
- "homepage": "https://github.com/doctrine/instantiator",
- "keywords": [
- "constructor",
- "instantiate"
- ],
- "time": "2015-06-14 21:17:01"
- },
- {
- "name": "gecko-packages/gecko-memcache-mock",
- "version": "v2.1",
- "source": {
- "type": "git",
- "url": "https://github.com/GeckoPackages/GeckoMemcacheMock.git",
- "reference": "ee641e22d02d6f7886ce4da7d4ca5dc95e17c23a"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/GeckoPackages/GeckoMemcacheMock/zipball/ee641e22d02d6f7886ce4da7d4ca5dc95e17c23a",
- "reference": "ee641e22d02d6f7886ce4da7d4ca5dc95e17c23a",
- "shasum": ""
- },
- "require": {
- "php": "^5.4 || ^7.0",
- "psr/log": "~1.0",
- "symfony/stopwatch": "~2.5|~3.0"
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "GeckoPackages\\MemcacheMock\\": "src\\MemcacheMock"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "description": "Memcache mock.",
- "homepage": "https://github.com/GeckoPackages",
- "keywords": [
- "memcache",
- "memcached",
- "mock",
- "test"
- ],
- "time": "2016-09-18 06:44:42"
- },
- {
- "name": "google/cloud-tools",
- "version": "v0.6.1",
- "source": {
- "type": "git",
- "url": "https://github.com/GoogleCloudPlatform/php-tools.git",
- "reference": "6546fab38b9ac7d9563e1ada6ed1e945eb7d10ac"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/GoogleCloudPlatform/php-tools/zipball/6546fab38b9ac7d9563e1ada6ed1e945eb7d10ac",
- "reference": "6546fab38b9ac7d9563e1ada6ed1e945eb7d10ac",
- "shasum": ""
- },
- "require": {
- "guzzlehttp/guzzle": "~5.3|~6.0",
- "php": ">=5.5",
- "phpunit/phpunit": "~4|~5",
- "symfony/browser-kit": "~2|~3",
- "symfony/process": "~2|~3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.0"
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "Google\\Cloud\\TestUtils\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "Apache-2.0"
- ],
- "authors": [
- {
- "name": "Takashi Matsuo",
- "email": "tmatsuo@google.com",
- "homepage": "https://wp.gaeflex.ninja/"
- }
- ],
- "description": "PHP tools for Google Cloud Platform",
- "homepage": "https://github.com/GoogleCloudPlatform/php-tools",
- "keywords": [
- "appengine",
- "gcp",
- "test"
- ],
- "time": "2016-12-08 21:36:15"
- },
- {
- "name": "guzzlehttp/guzzle",
- "version": "6.2.2",
- "source": {
- "type": "git",
- "url": "https://github.com/guzzle/guzzle.git",
- "reference": "ebf29dee597f02f09f4d5bbecc68230ea9b08f60"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/guzzle/guzzle/zipball/ebf29dee597f02f09f4d5bbecc68230ea9b08f60",
- "reference": "ebf29dee597f02f09f4d5bbecc68230ea9b08f60",
- "shasum": ""
- },
- "require": {
- "guzzlehttp/promises": "^1.0",
- "guzzlehttp/psr7": "^1.3.1",
- "php": ">=5.5"
- },
- "require-dev": {
- "ext-curl": "*",
- "phpunit/phpunit": "^4.0",
- "psr/log": "^1.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "6.2-dev"
- }
- },
- "autoload": {
- "files": [
- "src/functions_include.php"
- ],
- "psr-4": {
- "GuzzleHttp\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Michael Dowling",
- "email": "mtdowling@gmail.com",
- "homepage": "https://github.com/mtdowling"
- }
- ],
- "description": "Guzzle is a PHP HTTP client library",
- "homepage": "http://guzzlephp.org/",
- "keywords": [
- "client",
- "curl",
- "framework",
- "http",
- "http client",
- "rest",
- "web service"
- ],
- "time": "2016-10-08 15:01:37"
- },
- {
- "name": "guzzlehttp/promises",
- "version": "1.3.0",
- "source": {
- "type": "git",
- "url": "https://github.com/guzzle/promises.git",
- "reference": "2693c101803ca78b27972d84081d027fca790a1e"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/guzzle/promises/zipball/2693c101803ca78b27972d84081d027fca790a1e",
- "reference": "2693c101803ca78b27972d84081d027fca790a1e",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.0"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "GuzzleHttp\\Promise\\": "src/"
- },
- "files": [
- "src/functions_include.php"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Michael Dowling",
- "email": "mtdowling@gmail.com",
- "homepage": "https://github.com/mtdowling"
- }
- ],
- "description": "Guzzle promises library",
- "keywords": [
- "promise"
- ],
- "time": "2016-11-18 17:47:58"
- },
- {
- "name": "guzzlehttp/psr7",
- "version": "1.3.1",
- "source": {
- "type": "git",
- "url": "https://github.com/guzzle/psr7.git",
- "reference": "5c6447c9df362e8f8093bda8f5d8873fe5c7f65b"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/guzzle/psr7/zipball/5c6447c9df362e8f8093bda8f5d8873fe5c7f65b",
- "reference": "5c6447c9df362e8f8093bda8f5d8873fe5c7f65b",
- "shasum": ""
- },
- "require": {
- "php": ">=5.4.0",
- "psr/http-message": "~1.0"
- },
- "provide": {
- "psr/http-message-implementation": "1.0"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.4-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "GuzzleHttp\\Psr7\\": "src/"
- },
- "files": [
- "src/functions_include.php"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Michael Dowling",
- "email": "mtdowling@gmail.com",
- "homepage": "https://github.com/mtdowling"
- }
- ],
- "description": "PSR-7 message implementation",
- "keywords": [
- "http",
- "message",
- "stream",
- "uri"
- ],
- "time": "2016-06-24 23:00:38"
- },
- {
- "name": "monolog/monolog",
- "version": "1.22.0",
- "source": {
- "type": "git",
- "url": "https://github.com/Seldaek/monolog.git",
- "reference": "bad29cb8d18ab0315e6c477751418a82c850d558"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/Seldaek/monolog/zipball/bad29cb8d18ab0315e6c477751418a82c850d558",
- "reference": "bad29cb8d18ab0315e6c477751418a82c850d558",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.0",
- "psr/log": "~1.0"
- },
- "provide": {
- "psr/log-implementation": "1.0.0"
- },
- "require-dev": {
- "aws/aws-sdk-php": "^2.4.9 || ^3.0",
- "doctrine/couchdb": "~1.0@dev",
- "graylog2/gelf-php": "~1.0",
- "jakub-onderka/php-parallel-lint": "0.9",
- "php-amqplib/php-amqplib": "~2.4",
- "php-console/php-console": "^3.1.3",
- "phpunit/phpunit": "~4.5",
- "phpunit/phpunit-mock-objects": "2.3.0",
- "ruflin/elastica": ">=0.90 <3.0",
- "sentry/sentry": "^0.13",
- "swiftmailer/swiftmailer": "~5.3"
- },
- "suggest": {
- "aws/aws-sdk-php": "Allow sending log messages to AWS services like DynamoDB",
- "doctrine/couchdb": "Allow sending log messages to a CouchDB server",
- "ext-amqp": "Allow sending log messages to an AMQP server (1.0+ required)",
- "ext-mongo": "Allow sending log messages to a MongoDB server",
- "graylog2/gelf-php": "Allow sending log messages to a GrayLog2 server",
- "mongodb/mongodb": "Allow sending log messages to a MongoDB server via PHP Driver",
- "php-amqplib/php-amqplib": "Allow sending log messages to an AMQP server using php-amqplib",
- "php-console/php-console": "Allow sending log messages to Google Chrome",
- "rollbar/rollbar": "Allow sending log messages to Rollbar",
- "ruflin/elastica": "Allow sending log messages to an Elastic Search server",
- "sentry/sentry": "Allow sending log messages to a Sentry server"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.0.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Monolog\\": "src/Monolog"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Jordi Boggiano",
- "email": "j.boggiano@seld.be",
- "homepage": "http://seld.be/"
- }
- ],
- "description": "Sends your logs to files, sockets, inboxes, databases and various web services",
- "homepage": "http://github.com/Seldaek/monolog",
- "keywords": [
- "log",
- "logging",
- "psr-3"
- ],
- "time": "2016-11-26 00:15:39"
- },
- {
- "name": "paragonie/random_compat",
- "version": "v2.0.4",
- "source": {
- "type": "git",
- "url": "https://github.com/paragonie/random_compat.git",
- "reference": "a9b97968bcde1c4de2a5ec6cbd06a0f6c919b46e"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/paragonie/random_compat/zipball/a9b97968bcde1c4de2a5ec6cbd06a0f6c919b46e",
- "reference": "a9b97968bcde1c4de2a5ec6cbd06a0f6c919b46e",
- "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",
- "pseudorandom",
- "random"
- ],
- "time": "2016-11-07 23:38:38"
- },
- {
- "name": "phpdocumentor/reflection-common",
- "version": "1.0",
- "source": {
- "type": "git",
- "url": "https://github.com/phpDocumentor/ReflectionCommon.git",
- "reference": "144c307535e82c8fdcaacbcfc1d6d8eeb896687c"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phpDocumentor/ReflectionCommon/zipball/144c307535e82c8fdcaacbcfc1d6d8eeb896687c",
- "reference": "144c307535e82c8fdcaacbcfc1d6d8eeb896687c",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5"
- },
- "require-dev": {
- "phpunit/phpunit": "^4.6"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "phpDocumentor\\Reflection\\": [
- "src"
- ]
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Jaap van Otterdijk",
- "email": "opensource@ijaap.nl"
- }
- ],
- "description": "Common reflection classes used by phpdocumentor to reflect the code structure",
- "homepage": "http://www.phpdoc.org/",
- "keywords": [
- "FQSEN",
- "phpDocumentor",
- "phpdoc",
- "reflection",
- "static analysis"
- ],
- "time": "2015-12-27 11:43:31"
- },
- {
- "name": "phpdocumentor/reflection-docblock",
- "version": "3.1.1",
- "source": {
- "type": "git",
- "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git",
- "reference": "8331b5efe816ae05461b7ca1e721c01b46bafb3e"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/8331b5efe816ae05461b7ca1e721c01b46bafb3e",
- "reference": "8331b5efe816ae05461b7ca1e721c01b46bafb3e",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5",
- "phpdocumentor/reflection-common": "^1.0@dev",
- "phpdocumentor/type-resolver": "^0.2.0",
- "webmozart/assert": "^1.0"
- },
- "require-dev": {
- "mockery/mockery": "^0.9.4",
- "phpunit/phpunit": "^4.4"
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "phpDocumentor\\Reflection\\": [
- "src/"
- ]
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Mike van Riel",
- "email": "me@mikevanriel.com"
- }
- ],
- "description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.",
- "time": "2016-09-30 07:12:33"
- },
- {
- "name": "phpdocumentor/type-resolver",
- "version": "0.2.1",
- "source": {
- "type": "git",
- "url": "https://github.com/phpDocumentor/TypeResolver.git",
- "reference": "e224fb2ea2fba6d3ad6fdaef91cd09a172155ccb"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/e224fb2ea2fba6d3ad6fdaef91cd09a172155ccb",
- "reference": "e224fb2ea2fba6d3ad6fdaef91cd09a172155ccb",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5",
- "phpdocumentor/reflection-common": "^1.0"
- },
- "require-dev": {
- "mockery/mockery": "^0.9.4",
- "phpunit/phpunit": "^5.2||^4.8.24"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "phpDocumentor\\Reflection\\": [
- "src/"
- ]
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Mike van Riel",
- "email": "me@mikevanriel.com"
- }
- ],
- "time": "2016-11-25 06:54:22"
- },
- {
- "name": "phpspec/prophecy",
- "version": "v1.6.2",
- "source": {
- "type": "git",
- "url": "https://github.com/phpspec/prophecy.git",
- "reference": "6c52c2722f8460122f96f86346600e1077ce22cb"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phpspec/prophecy/zipball/6c52c2722f8460122f96f86346600e1077ce22cb",
- "reference": "6c52c2722f8460122f96f86346600e1077ce22cb",
- "shasum": ""
- },
- "require": {
- "doctrine/instantiator": "^1.0.2",
- "php": "^5.3|^7.0",
- "phpdocumentor/reflection-docblock": "^2.0|^3.0.2",
- "sebastian/comparator": "^1.1",
- "sebastian/recursion-context": "^1.0|^2.0"
- },
- "require-dev": {
- "phpspec/phpspec": "^2.0",
- "phpunit/phpunit": "^4.8 || ^5.6.5"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.6.x-dev"
- }
- },
- "autoload": {
- "psr-0": {
- "Prophecy\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Konstantin Kudryashov",
- "email": "ever.zet@gmail.com",
- "homepage": "http://everzet.com/"
- },
- {
- "name": "Marcello Duarte",
- "email": "marcello.duarte@gmail.com"
- }
- ],
- "description": "Highly opinionated mocking framework for PHP 5.3+",
- "homepage": "https://github.com/phpspec/prophecy",
- "keywords": [
- "Double",
- "Dummy",
- "fake",
- "mock",
- "spy",
- "stub"
- ],
- "time": "2016-11-21 14:58:47"
- },
- {
- "name": "phpunit/php-code-coverage",
- "version": "2.2.4",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-code-coverage.git",
- "reference": "eabf68b476ac7d0f73793aada060f1c1a9bf8979"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/eabf68b476ac7d0f73793aada060f1c1a9bf8979",
- "reference": "eabf68b476ac7d0f73793aada060f1c1a9bf8979",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3",
- "phpunit/php-file-iterator": "~1.3",
- "phpunit/php-text-template": "~1.2",
- "phpunit/php-token-stream": "~1.3",
- "sebastian/environment": "^1.3.2",
- "sebastian/version": "~1.0"
- },
- "require-dev": {
- "ext-xdebug": ">=2.1.4",
- "phpunit/phpunit": "~4"
- },
- "suggest": {
- "ext-dom": "*",
- "ext-xdebug": ">=2.2.1",
- "ext-xmlwriter": "*"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.2.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sb@sebastian-bergmann.de",
- "role": "lead"
- }
- ],
- "description": "Library that provides collection, processing, and rendering functionality for PHP code coverage information.",
- "homepage": "https://github.com/sebastianbergmann/php-code-coverage",
- "keywords": [
- "coverage",
- "testing",
- "xunit"
- ],
- "time": "2015-10-06 15:47:00"
- },
- {
- "name": "phpunit/php-file-iterator",
- "version": "1.4.2",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-file-iterator.git",
- "reference": "3cc8f69b3028d0f96a9078e6295d86e9bf019be5"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/3cc8f69b3028d0f96a9078e6295d86e9bf019be5",
- "reference": "3cc8f69b3028d0f96a9078e6295d86e9bf019be5",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.4.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sb@sebastian-bergmann.de",
- "role": "lead"
- }
- ],
- "description": "FilterIterator implementation that filters files based on a list of suffixes.",
- "homepage": "https://github.com/sebastianbergmann/php-file-iterator/",
- "keywords": [
- "filesystem",
- "iterator"
- ],
- "time": "2016-10-03 07:40:28"
- },
- {
- "name": "phpunit/php-text-template",
- "version": "1.2.1",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-text-template.git",
- "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/31f8b717e51d9a2afca6c9f046f5d69fc27c8686",
- "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "type": "library",
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de",
- "role": "lead"
- }
- ],
- "description": "Simple template engine.",
- "homepage": "https://github.com/sebastianbergmann/php-text-template/",
- "keywords": [
- "template"
- ],
- "time": "2015-06-21 13:50:34"
- },
- {
- "name": "phpunit/php-timer",
- "version": "1.0.8",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-timer.git",
- "reference": "38e9124049cf1a164f1e4537caf19c99bf1eb260"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/38e9124049cf1a164f1e4537caf19c99bf1eb260",
- "reference": "38e9124049cf1a164f1e4537caf19c99bf1eb260",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4|~5"
- },
- "type": "library",
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sb@sebastian-bergmann.de",
- "role": "lead"
- }
- ],
- "description": "Utility class for timing",
- "homepage": "https://github.com/sebastianbergmann/php-timer/",
- "keywords": [
- "timer"
- ],
- "time": "2016-05-12 18:03:57"
- },
- {
- "name": "phpunit/php-token-stream",
- "version": "1.4.9",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-token-stream.git",
- "reference": "3b402f65a4cc90abf6e1104e388b896ce209631b"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/3b402f65a4cc90abf6e1104e388b896ce209631b",
- "reference": "3b402f65a4cc90abf6e1104e388b896ce209631b",
- "shasum": ""
- },
- "require": {
- "ext-tokenizer": "*",
- "php": ">=5.3.3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.2"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.4-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Wrapper around PHP's tokenizer extension.",
- "homepage": "https://github.com/sebastianbergmann/php-token-stream/",
- "keywords": [
- "tokenizer"
- ],
- "time": "2016-11-15 14:06:22"
- },
- {
- "name": "phpunit/phpunit",
- "version": "4.8.29",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/phpunit.git",
- "reference": "f19d481b468b76a7fb55eb2b772ed487e484891e"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/f19d481b468b76a7fb55eb2b772ed487e484891e",
- "reference": "f19d481b468b76a7fb55eb2b772ed487e484891e",
- "shasum": ""
- },
- "require": {
- "ext-dom": "*",
- "ext-json": "*",
- "ext-pcre": "*",
- "ext-reflection": "*",
- "ext-spl": "*",
- "php": ">=5.3.3",
- "phpspec/prophecy": "^1.3.1",
- "phpunit/php-code-coverage": "~2.1",
- "phpunit/php-file-iterator": "~1.4",
- "phpunit/php-text-template": "~1.2",
- "phpunit/php-timer": "^1.0.6",
- "phpunit/phpunit-mock-objects": "~2.3",
- "sebastian/comparator": "~1.2.2",
- "sebastian/diff": "~1.2",
- "sebastian/environment": "~1.3",
- "sebastian/exporter": "~1.2",
- "sebastian/global-state": "~1.0",
- "sebastian/version": "~1.0",
- "symfony/yaml": "~2.1|~3.0"
- },
- "suggest": {
- "phpunit/php-invoker": "~1.1"
- },
- "bin": [
- "phpunit"
- ],
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "4.8.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de",
- "role": "lead"
- }
- ],
- "description": "The PHP Unit Testing framework.",
- "homepage": "https://phpunit.de/",
- "keywords": [
- "phpunit",
- "testing",
- "xunit"
- ],
- "time": "2016-11-20 10:35:28"
- },
- {
- "name": "phpunit/phpunit-mock-objects",
- "version": "2.3.8",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/phpunit-mock-objects.git",
- "reference": "ac8e7a3db35738d56ee9a76e78a4e03d97628983"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/phpunit-mock-objects/zipball/ac8e7a3db35738d56ee9a76e78a4e03d97628983",
- "reference": "ac8e7a3db35738d56ee9a76e78a4e03d97628983",
- "shasum": ""
- },
- "require": {
- "doctrine/instantiator": "^1.0.2",
- "php": ">=5.3.3",
- "phpunit/php-text-template": "~1.2",
- "sebastian/exporter": "~1.2"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.4"
- },
- "suggest": {
- "ext-soap": "*"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.3.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sb@sebastian-bergmann.de",
- "role": "lead"
- }
- ],
- "description": "Mock Object library for PHPUnit",
- "homepage": "https://github.com/sebastianbergmann/phpunit-mock-objects/",
- "keywords": [
- "mock",
- "xunit"
- ],
- "time": "2015-10-02 06:51:40"
- },
- {
- "name": "psr/http-message",
- "version": "1.0.1",
- "source": {
- "type": "git",
- "url": "https://github.com/php-fig/http-message.git",
- "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/php-fig/http-message/zipball/f6561bf28d520154e4b0ec72be95418abe6d9363",
- "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Psr\\Http\\Message\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "PHP-FIG",
- "homepage": "http://www.php-fig.org/"
- }
- ],
- "description": "Common interface for HTTP messages",
- "homepage": "https://github.com/php-fig/http-message",
- "keywords": [
- "http",
- "http-message",
- "psr",
- "psr-7",
- "request",
- "response"
- ],
- "time": "2016-08-06 14:39:51"
- },
- {
- "name": "sebastian/comparator",
- "version": "1.2.2",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/comparator.git",
- "reference": "6a1ed12e8b2409076ab22e3897126211ff8b1f7f"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/6a1ed12e8b2409076ab22e3897126211ff8b1f7f",
- "reference": "6a1ed12e8b2409076ab22e3897126211ff8b1f7f",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3",
- "sebastian/diff": "~1.2",
- "sebastian/exporter": "~1.2 || ~2.0"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.4"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.2.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Jeff Welch",
- "email": "whatthejeff@gmail.com"
- },
- {
- "name": "Volker Dusch",
- "email": "github@wallbash.com"
- },
- {
- "name": "Bernhard Schussek",
- "email": "bschussek@2bepublished.at"
- },
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Provides the functionality to compare PHP values for equality",
- "homepage": "http://www.github.com/sebastianbergmann/comparator",
- "keywords": [
- "comparator",
- "compare",
- "equality"
- ],
- "time": "2016-11-19 09:18:40"
- },
- {
- "name": "sebastian/diff",
- "version": "1.4.1",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/diff.git",
- "reference": "13edfd8706462032c2f52b4b862974dd46b71c9e"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/13edfd8706462032c2f52b4b862974dd46b71c9e",
- "reference": "13edfd8706462032c2f52b4b862974dd46b71c9e",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.8"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.4-dev"
- }
- },
- "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"
- }
- ],
- "description": "Diff implementation",
- "homepage": "https://github.com/sebastianbergmann/diff",
- "keywords": [
- "diff"
- ],
- "time": "2015-12-08 07:14:41"
- },
- {
- "name": "sebastian/environment",
- "version": "1.3.8",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/environment.git",
- "reference": "be2c607e43ce4c89ecd60e75c6a85c126e754aea"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/be2c607e43ce4c89ecd60e75c6a85c126e754aea",
- "reference": "be2c607e43ce4c89ecd60e75c6a85c126e754aea",
- "shasum": ""
- },
- "require": {
- "php": "^5.3.3 || ^7.0"
- },
- "require-dev": {
- "phpunit/phpunit": "^4.8 || ^5.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.3.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Provides functionality to handle HHVM/PHP environments",
- "homepage": "http://www.github.com/sebastianbergmann/environment",
- "keywords": [
- "Xdebug",
- "environment",
- "hhvm"
- ],
- "time": "2016-08-18 05:49:44"
- },
- {
- "name": "sebastian/exporter",
- "version": "1.2.2",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/exporter.git",
- "reference": "42c4c2eec485ee3e159ec9884f95b431287edde4"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/42c4c2eec485ee3e159ec9884f95b431287edde4",
- "reference": "42c4c2eec485ee3e159ec9884f95b431287edde4",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3",
- "sebastian/recursion-context": "~1.0"
- },
- "require-dev": {
- "ext-mbstring": "*",
- "phpunit/phpunit": "~4.4"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.3.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Jeff Welch",
- "email": "whatthejeff@gmail.com"
- },
- {
- "name": "Volker Dusch",
- "email": "github@wallbash.com"
- },
- {
- "name": "Bernhard Schussek",
- "email": "bschussek@2bepublished.at"
- },
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- },
- {
- "name": "Adam Harvey",
- "email": "aharvey@php.net"
- }
- ],
- "description": "Provides the functionality to export PHP variables for visualization",
- "homepage": "http://www.github.com/sebastianbergmann/exporter",
- "keywords": [
- "export",
- "exporter"
- ],
- "time": "2016-06-17 09:04:28"
- },
- {
- "name": "sebastian/global-state",
- "version": "1.1.1",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/global-state.git",
- "reference": "bc37d50fea7d017d3d340f230811c9f1d7280af4"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/bc37d50fea7d017d3d340f230811c9f1d7280af4",
- "reference": "bc37d50fea7d017d3d340f230811c9f1d7280af4",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.2"
- },
- "suggest": {
- "ext-uopz": "*"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Snapshotting of global state",
- "homepage": "http://www.github.com/sebastianbergmann/global-state",
- "keywords": [
- "global state"
- ],
- "time": "2015-10-12 03:26:01"
- },
- {
- "name": "sebastian/recursion-context",
- "version": "1.0.2",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/recursion-context.git",
- "reference": "913401df809e99e4f47b27cdd781f4a258d58791"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/913401df809e99e4f47b27cdd781f4a258d58791",
- "reference": "913401df809e99e4f47b27cdd781f4a258d58791",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.4"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Jeff Welch",
- "email": "whatthejeff@gmail.com"
- },
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- },
- {
- "name": "Adam Harvey",
- "email": "aharvey@php.net"
- }
- ],
- "description": "Provides functionality to recursively process PHP variables",
- "homepage": "http://www.github.com/sebastianbergmann/recursion-context",
- "time": "2015-11-11 19:50:13"
- },
- {
- "name": "sebastian/version",
- "version": "1.0.6",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/version.git",
- "reference": "58b3a85e7999757d6ad81c787a1fbf5ff6c628c6"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/58b3a85e7999757d6ad81c787a1fbf5ff6c628c6",
- "reference": "58b3a85e7999757d6ad81c787a1fbf5ff6c628c6",
- "shasum": ""
- },
- "type": "library",
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de",
- "role": "lead"
- }
- ],
- "description": "Library that helps with managing the version number of Git-hosted PHP projects",
- "homepage": "https://github.com/sebastianbergmann/version",
- "time": "2015-06-21 13:59:46"
- },
- {
- "name": "symfony/browser-kit",
- "version": "v3.1.7",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/browser-kit.git",
- "reference": "901319a31c9b3cee7857b4aeeb81b5d64dfa34fc"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/browser-kit/zipball/901319a31c9b3cee7857b4aeeb81b5d64dfa34fc",
- "reference": "901319a31c9b3cee7857b4aeeb81b5d64dfa34fc",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9",
- "symfony/dom-crawler": "~2.8|~3.0"
- },
- "require-dev": {
- "symfony/css-selector": "~2.8|~3.0",
- "symfony/process": "~2.8|~3.0"
- },
- "suggest": {
- "symfony/process": ""
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.1-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\BrowserKit\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony BrowserKit Component",
- "homepage": "https://symfony.com/",
- "time": "2016-09-06 11:02:40"
- },
- {
- "name": "symfony/dom-crawler",
- "version": "v3.1.7",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/dom-crawler.git",
- "reference": "1eb3b4d216e8db117218dd2bb7d23dfe67bdf518"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/1eb3b4d216e8db117218dd2bb7d23dfe67bdf518",
- "reference": "1eb3b4d216e8db117218dd2bb7d23dfe67bdf518",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9",
- "symfony/polyfill-mbstring": "~1.0"
- },
- "require-dev": {
- "symfony/css-selector": "~2.8|~3.0"
- },
- "suggest": {
- "symfony/css-selector": ""
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.1-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\DomCrawler\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony DomCrawler Component",
- "homepage": "https://symfony.com/",
- "time": "2016-11-14 16:20:02"
- },
- {
- "name": "symfony/process",
- "version": "v3.1.7",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/process.git",
- "reference": "66de154ae86b1a07001da9fbffd620206e4faf94"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/process/zipball/66de154ae86b1a07001da9fbffd620206e4faf94",
- "reference": "66de154ae86b1a07001da9fbffd620206e4faf94",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.1-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\Process\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony Process Component",
- "homepage": "https://symfony.com/",
- "time": "2016-09-29 14:13:09"
- },
- {
- "name": "symfony/stopwatch",
- "version": "v3.1.7",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/stopwatch.git",
- "reference": "bb42806b12c5f89db4ebf64af6741afe6d8457e1"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/stopwatch/zipball/bb42806b12c5f89db4ebf64af6741afe6d8457e1",
- "reference": "bb42806b12c5f89db4ebf64af6741afe6d8457e1",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.1-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\Stopwatch\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony Stopwatch Component",
- "homepage": "https://symfony.com/",
- "time": "2016-06-29 05:41:56"
- },
- {
- "name": "symfony/yaml",
- "version": "v3.1.7",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/yaml.git",
- "reference": "9da375317228e54f4ea1b013b30fa47417e84943"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/yaml/zipball/9da375317228e54f4ea1b013b30fa47417e84943",
- "reference": "9da375317228e54f4ea1b013b30fa47417e84943",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.1-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\Yaml\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony Yaml Component",
- "homepage": "https://symfony.com/",
- "time": "2016-11-18 21:05:29"
- },
- {
- "name": "webmozart/assert",
- "version": "1.2.0",
- "source": {
- "type": "git",
- "url": "https://github.com/webmozart/assert.git",
- "reference": "2db61e59ff05fe5126d152bd0655c9ea113e550f"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/webmozart/assert/zipball/2db61e59ff05fe5126d152bd0655c9ea113e550f",
- "reference": "2db61e59ff05fe5126d152bd0655c9ea113e550f",
- "shasum": ""
- },
- "require": {
- "php": "^5.3.3 || ^7.0"
- },
- "require-dev": {
- "phpunit/phpunit": "^4.6",
- "sebastian/version": "^1.0.1"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.3-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Webmozart\\Assert\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Bernhard Schussek",
- "email": "bschussek@gmail.com"
- }
- ],
- "description": "Assertions to validate method input/output with nice error messages.",
- "keywords": [
- "assert",
- "check",
- "validate"
- ],
- "time": "2016-11-23 20:04:58"
- }
- ],
- "aliases": [],
- "minimum-stability": "stable",
- "stability-flags": [],
- "prefer-stable": false,
- "prefer-lowest": false,
- "platform": [],
- "platform-dev": []
-}
diff --git a/appengine/flexible/memcache/php.ini b/appengine/flexible/memcache/php.ini
index 5aa0c930c0..095f003cbf 100644
--- a/appengine/flexible/memcache/php.ini
+++ b/appengine/flexible/memcache/php.ini
@@ -1,3 +1,3 @@
; Use SASL authentication for connections
; Required for Memcache SASL Auth in the Google App Engine Flexible environemnt.
-memcached.use_sasl = On
\ No newline at end of file
+memcached.use_sasl = On
diff --git a/appengine/flexible/memcache/phpunit.xml b/appengine/flexible/memcache/phpunit.xml
deleted file mode 100644
index 21e45651dd..0000000000
--- a/appengine/flexible/memcache/phpunit.xml
+++ /dev/null
@@ -1,16 +0,0 @@
-
-
-
-
- tests
-
-
-
-
-
-
-
- app.php
-
-
-
diff --git a/appengine/flexible/memcache/phpunit.xml.dist b/appengine/flexible/memcache/phpunit.xml.dist
new file mode 100644
index 0000000000..705324faa2
--- /dev/null
+++ b/appengine/flexible/memcache/phpunit.xml.dist
@@ -0,0 +1,35 @@
+
+
+
+
+
+ test
+ test/DeployTest.php
+
+
+
+
+
+
+
+ app.php
+
+ ./vendor
+
+
+
+
diff --git a/appengine/flexible/memcache/test/DeployTest.php b/appengine/flexible/memcache/test/DeployTest.php
new file mode 100644
index 0000000000..a2b6ce2317
--- /dev/null
+++ b/appengine/flexible/memcache/test/DeployTest.php
@@ -0,0 +1,87 @@
+setDir($tmpDir);
+ chdir($tmpDir);
+
+ $appYaml = Yaml::parse(file_get_contents('app.yaml'));
+ $appYaml['env_variables']['MEMCACHE_ENDPOINT'] = self::requireEnv('MEMCACHE_ENDPOINT');
+ $appYaml['env_variables']['MEMCACHE_USERNAME'] = self::requireEnv('MEMCACHE_USERNAME');
+ $appYaml['env_variables']['MEMCACHE_PASSWORD'] = self::requireEnv('MEMCACHE_PASSWORD');
+
+ file_put_contents('app.yaml', Yaml::dump($appYaml));
+ }
+
+ public function testIndex()
+ {
+ // Access the modules app top page.
+ $resp = $this->client->get('');
+ $this->assertEquals('200', $resp->getStatusCode(),
+ 'top page status code');
+
+ // Use a random key to avoid colliding with simultaneous tests.
+ $key = rand(0, 1000);
+
+ // Test the /memcached REST API.
+ $this->put("/memcached/test$key", 'sour');
+ $this->assertEquals('sour', $this->get("/memcached/test$key"));
+ $this->put("/memcached/test$key", 'sweet');
+ $this->assertEquals('sweet', $this->get("/memcached/test$key"));
+
+ // Make sure it handles a POST request too, which will increment the
+ // counter.
+ $resp = $this->client->post('');
+ $this->assertEquals('200', $resp->getStatusCode(),
+ 'top page status code');
+ }
+
+ /**
+ * HTTP PUTs the body to the url path.
+ * @param $path string
+ * @param $body string
+ */
+ private function put($path, $body)
+ {
+ $url = join('/', [trim(self::$gcloudWrapper->getBaseUrl(), '/'),
+ trim($path, '/')]);
+ $request = new \GuzzleHttp\Psr7\Request('PUT', $url, array(), $body);
+ $this->client->send($request);
+ }
+
+ /**
+ * HTTP GETs the url path.
+ * @param $path string
+ * @return string The HTTP Response.
+ */
+ private function get($path)
+ {
+ return $this->client->get($path)->getBody()->getContents();
+ }
+}
diff --git a/appengine/flexible/memcache/test/LocalTest.php b/appengine/flexible/memcache/test/LocalTest.php
new file mode 100644
index 0000000000..5bc240cabd
--- /dev/null
+++ b/appengine/flexible/memcache/test/LocalTest.php
@@ -0,0 +1,95 @@
+prophesize(Memcached::class);
+ $container = $app->getContainer();
+ $container->set('memcached', $memcached->reveal());
+
+ // Access the modules app top page.
+ $request1 = (new RequestFactory)->createRequest('GET', '/');
+ $response = $app->handle($request1);
+ $this->assertEquals(200, $response->getStatusCode());
+
+ // Make sure it handles a POST request too, which will increment the
+ // counter.
+ $request2 = (new RequestFactory)->createRequest('POST', '/');
+ $response = $app->handle($request2);
+ $this->assertEquals(200, $response->getStatusCode());
+ }
+
+ public function testGetAndPut()
+ {
+ $app = require __DIR__ . '/../app.php';
+
+ $memcached = $this->prophesize(Memcached::class);
+ $memcached->set('testkey1', 'sour', Argument::type('int'))
+ ->willReturn(true);
+ $memcached->get('testkey1')
+ ->willReturn('sour');
+
+ $memcached->set('testkey2', 'sweet', Argument::type('int'))
+ ->willReturn(true);
+ $memcached->get('testkey2')
+ ->willReturn('sweet');
+
+ $container = $app->getContainer();
+ $container->set('memcached', $memcached->reveal());
+
+ // Use a random key to avoid colliding with simultaneous tests.
+
+ // Test the /memcached REST API.
+ $request1 = (new RequestFactory)->createRequest('PUT', '/memcached/testkey1');
+ $request1->getBody()->write('sour');
+ $response1 = $app->handle($request1);
+ $this->assertEquals(200, (string) $response1->getStatusCode());
+
+ // Check that the key was written as expected
+ $request2 = (new RequestFactory)->createRequest('GET', '/memcached/testkey1');
+ $response2 = $app->handle($request2);
+ $this->assertEquals('sour', (string) $response2->getBody());
+
+ // Test the /memcached REST API with a new value.
+ $request3 = (new RequestFactory)->createRequest('PUT', '/memcached/testkey2');
+ $request3->getBody()->write('sweet');
+ $response3 = $app->handle($request3);
+ $this->assertEquals(200, (string) $response3->getStatusCode());
+
+ // Check that the key was written as expected
+ $request4 = (new RequestFactory)->createRequest('GET', '/memcached/testkey2');
+ $response4 = $app->handle($request4);
+ $this->assertEquals('sweet', (string) $response4->getBody());
+ }
+}
+
+if (!class_exists('Memcached')) {
+ interface Memcached
+ {
+ public function get($key);
+ public function set($key, $value, $timestamp = 0);
+ public function increment();
+ }
+}
diff --git a/appengine/flexible/memcache/tests/DeployTest.php b/appengine/flexible/memcache/tests/DeployTest.php
deleted file mode 100644
index de23cbf5a8..0000000000
--- a/appengine/flexible/memcache/tests/DeployTest.php
+++ /dev/null
@@ -1,95 +0,0 @@
-setDir($tmpDir);
- chdir($tmpDir);
-
- $user = getenv('MEMCACHE_USERNAME');
- $password = getenv('MEMCACHE_PASSWORD');
- $server = getenv('MEMCACHE_SERVER');
-
- if (empty($user) || empty($password) || empty($server)) {
- self::markTestSkipped('Must set MEMCACHE_USERNAME, ' .
- 'MEMCACHE_PASSWORD, and MEMCACHE_SERVER');
- }
-
- $appYaml = Yaml::parse(file_get_contents('app.yaml'));
- $appYaml['env_variables']['MEMCACHE_USERNAME'] = $user;
- $appYaml['env_variables']['MEMCACHE_PASSWORD'] = $password;
- $appYaml['env_variables']['MEMCACHE_SERVER'] = $server;
-
- file_put_contents('app.yaml', Yaml::dump($appYaml));
- }
-
- public function testIndex()
- {
- // Access the modules app top page.
- $resp = $this->client->get('');
- $this->assertEquals('200', $resp->getStatusCode(),
- 'top page status code');
-
- // Use a random key to avoid colliding with simultaneous tests.
- $key = rand(0, 1000);
-
- // Test the /memcached REST API.
- $this->put("/memcached/test$key", "sour");
- $this->assertEquals("sour", $this->get("/memcached/test$key"));
- $this->put("/memcached/test$key", "sweet");
- $this->assertEquals("sweet", $this->get("/memcached/test$key"));
-
- // Make sure it handles a POST request too, which will increment the
- // counter.
- $resp = $this->client->post('');
- $this->assertEquals('200', $resp->getStatusCode(),
- 'top page status code');
- }
-
- /**
- * HTTP PUTs the body to the url path.
- * @param $path string
- * @param $body string
- */
- private function put($path, $body)
- {
- $url = join('/', [trim(self::$gcloudWrapper->getBaseUrl(), '/'),
- trim($path, '/')]);
- $request = new \GuzzleHttp\Psr7\Request('PUT', $url, array(), $body);
- $this->client->send($request);
- }
-
- /**
- * HTTP GETs the url path.
- * @param $path string
- * @return string The HTTP Response.
- */
- private function get($path)
- {
- return $this->client->get($path)->getBody()->getContents();
- }
-}
diff --git a/appengine/flexible/memcache/tests/LocalTest.php b/appengine/flexible/memcache/tests/LocalTest.php
deleted file mode 100644
index 50ca4595f3..0000000000
--- a/appengine/flexible/memcache/tests/LocalTest.php
+++ /dev/null
@@ -1,84 +0,0 @@
-client = $this->createClient();
- }
-
- public function createApplication()
- {
- $app = require __DIR__ . '/../app.php';
- $app['memcached'] = new MemcachedMock;
- $app['memcached']->addServer("localhost", 11211);
- return $app;
- }
-
- public function testIndex()
- {
- // Access the modules app top page.
- $client = $this->client;
- $client->request('GET', '/');
- $this->assertTrue($client->getResponse()->isOk());
-
- // Make sure it handles a POST request too, which will increment the
- // counter.
- $this->client->request('POST', '/');
- $this->assertTrue($this->client->getResponse()->isOk());
- }
-
- public function testGetAndPut()
- {
- // Use a random key to avoid colliding with simultaneous tests.
- $key = rand(0, 1000);
-
- // Test the /memcached REST API.
- $this->put("/memcached/test$key", "sour");
- $this->assertEquals("sour", $this->get("/memcached/test$key"));
- $this->put("/memcached/test$key", "sweet");
- $this->assertEquals("sweet", $this->get("/memcached/test$key"));
- }
-
- /**
- * HTTP PUTs the body to the url path.
- * @param $path string
- * @param $body string
- */
- private function put($path, $body)
- {
- $this->client->request('PUT', $path, array(), array(), array(), $body);
- return $this->client->getResponse()->getContent();
- }
-
- /**
- * HTTP GETs the url path.
- * @param $path string
- * @return string The HTTP Response.
- */
- private function get($path)
- {
- $this->client->request('GET', $path);
- return $this->client->getResponse()->getContent();
- }
-}
diff --git a/appengine/flexible/memcache/tests/bootstrap.php b/appengine/flexible/memcache/tests/bootstrap.php
deleted file mode 100644
index be234bb16a..0000000000
--- a/appengine/flexible/memcache/tests/bootstrap.php
+++ /dev/null
@@ -1,18 +0,0 @@
-run();
diff --git a/appengine/flexible/metadata/README.md b/appengine/flexible/metadata/README.md
new file mode 100644
index 0000000000..c2c0eb95d8
--- /dev/null
+++ b/appengine/flexible/metadata/README.md
@@ -0,0 +1,45 @@
+# Compute Metadata on App Engine Flexible Environment
+
+This sample application demonstrates how to access
+[Compute Metadata](https://cloud.google.com/compute/docs/storing-retrieving-metadata)
+from App Engine flexible environment.
+
+## Setup
+
+Before running this sample:
+
+### Register your application
+
+- Go to
+ [Google Developers Console](https://console.developers.google.com/project)
+ and create a new project.
+
+### Prerequisites
+
+- Install [`composer`](https://getcomposer.org)
+- Install dependencies by running:
+
+ ```sh
+ composer install
+ ```
+
+- Install the [Google Cloud SDK](https://developers.google.com/cloud/sdk/).
+- Initialize the SDK by running `gcloud init`
+
+## Run Locally
+
+This sample is designed to run in App Engine flexible environment.
+This application will fail to reach the Metadata server if run locally.
+
+## Deploy to App Engine
+
+**Deploy with gcloud**
+
+```
+gcloud config set project YOUR_PROJECT_ID
+gcloud app deploy
+gcloud app browse
+```
+
+The last command will open `https://{YOUR_PROJECT_ID}.appspot.com/`
+in your browser.
diff --git a/appengine/flexible/metadata/app.php b/appengine/flexible/metadata/app.php
new file mode 100644
index 0000000000..bc355f73c1
--- /dev/null
+++ b/appengine/flexible/metadata/app.php
@@ -0,0 +1,66 @@
+get(
+ 'instance/network-interfaces/0/access-configs/0/external-ip');
+
+ return $externalIp;
+}
+
+function get_external_ip_using_curl()
+{
+ $url = 'http://metadata.google.internal/computeMetadata/v1/' .
+ 'instance/network-interfaces/0/access-configs/0/external-ip';
+
+ $ch = curl_init();
+ curl_setopt($ch, CURLOPT_URL, $url);
+ curl_setopt($ch, CURLOPT_HTTPHEADER, array('Metadata-Flavor: Google'));
+ curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
+ return curl_exec($ch);
+}
+# [END gae_flex_metadata]
+
+// Create App
+$app = AppFactory::create();
+
+// Display errors
+$app->addErrorMiddleware(true, true, true);
+
+$app->get('/', function (Request $request, Response $response) {
+ if (!$externalIp = get_external_ip_using_google_cloud()) {
+ return 'Unable to reach Metadata server - are you running locally?';
+ }
+ $response->getBody()->write(sprintf('External IP: %s', $externalIp));
+ return $response;
+});
+
+$app->get('/curl', function (Request $request, Response $response) {
+ if (!$externalIp = get_external_ip_using_curl()) {
+ return 'Unable to reach Metadata server - are you running locally?';
+ }
+ $response->getBody()->write(sprintf('External IP: %s', $externalIp));
+ return $response;
+});
+
+return $app;
diff --git a/appengine/flexible/metadata/app.yaml b/appengine/flexible/metadata/app.yaml
new file mode 100644
index 0000000000..7ae9a2661c
--- /dev/null
+++ b/appengine/flexible/metadata/app.yaml
@@ -0,0 +1,5 @@
+runtime: php
+env: flex
+
+runtime_config:
+ document_root: .
diff --git a/appengine/flexible/metadata/composer.json b/appengine/flexible/metadata/composer.json
new file mode 100644
index 0000000000..e5c6a01272
--- /dev/null
+++ b/appengine/flexible/metadata/composer.json
@@ -0,0 +1,7 @@
+{
+ "require": {
+ "slim/slim": "^4.0",
+ "slim/psr7": "^1.3",
+ "google/cloud-core": "^1.5"
+ }
+}
diff --git a/appengine/flexible/metadata/index.php b/appengine/flexible/metadata/index.php
new file mode 100644
index 0000000000..726d166977
--- /dev/null
+++ b/appengine/flexible/metadata/index.php
@@ -0,0 +1,26 @@
+run();
diff --git a/appengine/flexible/metadata/phpunit.xml.dist b/appengine/flexible/metadata/phpunit.xml.dist
new file mode 100644
index 0000000000..4c501f6f06
--- /dev/null
+++ b/appengine/flexible/metadata/phpunit.xml.dist
@@ -0,0 +1,35 @@
+
+
+
+
+
+ test
+ test/DeployTest.php
+
+
+
+
+
+
+
+ app.php
+
+ ./vendor
+
+
+
+
diff --git a/appengine/flexible/metadata/test/DeployTest.php b/appengine/flexible/metadata/test/DeployTest.php
new file mode 100644
index 0000000000..dae5409df9
--- /dev/null
+++ b/appengine/flexible/metadata/test/DeployTest.php
@@ -0,0 +1,47 @@
+client->get('/');
+
+ $this->assertEquals(
+ '200',
+ $resp->getStatusCode(),
+ 'Top page status code should be 200');
+ $this->assertMatchesRegularExpression('/External IP: .*/', (string) $resp->getBody());
+ }
+
+ public function testCurl()
+ {
+ $resp = $this->client->get('/curl');
+
+ $this->assertEquals(
+ '200',
+ $resp->getStatusCode(),
+ '/curl status code should be 200');
+ $this->assertMatchesRegularExpression('/External IP: .*/', (string) $resp->getBody());
+ }
+}
diff --git a/appengine/flexible/pubsub/README.md b/appengine/flexible/pubsub/README.md
index 9aa4bc6022..a2444255f2 100644
--- a/appengine/flexible/pubsub/README.md
+++ b/appengine/flexible/pubsub/README.md
@@ -3,47 +3,5 @@
## Description
This sample demonstrates how to invoke PubSub from Google App Engine Flexible
-Environment.
-
-The sample code lives in [a parent pubsub directory](../../../pubsub/app).
-Only one configuration file differs: `app.yaml`.
-
-## Register your application
-
-## Configuration
-
-- Edit `app.yaml`. Replace `YOUR_PROJECT_ID` with your google project id.
-
-- Copy `app.yaml` into [../../../pubsub/app](../../../pubsub/app). Ex:
-```sh
-~/gitrepos/php-docs-samples/appengine/flexible/pubsub$ cp -f app.yaml ../../../pubsub/app
-~/gitrepos/php-docs-samples/appengine/flexible/pubsub$ cd ../../../pubsub/app
-~/gitrepos/php-docs-samples/pubsub$
-```
-
-- Follow the [Prerequisite Instructions](../../../pubsub/app/README.md#prerequisites)
-
-## Deploy the application to App Engine
-
-```
-$ gcloud app deploy --set-default --project YOUR_PROJECT_ID
-```
-
-Then access the following URL:
- https://{YOUR_PROJECT_NAME}.appspot.com/
-
-## Run the application locally
-
-```
-/usr/bin/php -S localhost:8910 -t web
-```
-
-## Contributing changes
-
-* See [CONTRIBUTING.md](../../../CONTRIBUTING.md)
-
-## Licensing
-
-* See [LICENSE](../../../LICENSE)
-
+Environment. See the section **Deploy to App Engine Flexible** in [Google PubSub PHP Sample Application](../../../pubsub/app).
diff --git a/appengine/flexible/pubsub/app.yaml b/appengine/flexible/pubsub/app.yaml
deleted file mode 100644
index 9c3ea597a8..0000000000
--- a/appengine/flexible/pubsub/app.yaml
+++ /dev/null
@@ -1,2 +0,0 @@
-runtime: php
-env: flex
diff --git a/appengine/flexible/sendgrid/README.md b/appengine/flexible/sendgrid/README.md
deleted file mode 100644
index a53da51cb4..0000000000
--- a/appengine/flexible/sendgrid/README.md
+++ /dev/null
@@ -1,43 +0,0 @@
-# Sendgrid and Google App Engine Flexible Environment
-
-This sample application demonstrates how to use [Sendgrid with Google App Engine Flexible Environment](https://cloud.google.com/appengine/docs/flexible/php/sending-emails-with-sendgrid).
-
-## Setup
-
-Before running this sample:
-
-1. You will need a [SendGrid account](http://sendgrid.com/partner/google).
-2. Update `SENDGRID_SENDER` and `SENDGRID_API_KEY` in `app.yaml` to match your
- SendGrid credentials. You can use your account's sandbox domain.
-
-## Prerequisites
-
-- Install [`composer`](https://getcomposer.org)
-- Install dependencies by running:
-
-```sh
-composer install
-```
-
-## Deploy to App Engine
-
-**Prerequisites**
-
-- Install the [Google Cloud SDK](https://developers.google.com/cloud/sdk/).
-
-**Run Locally**
-```sh
-export SENDGRID_API_KEY=your-sendgrid-api-key
-export SENDGRID_SENDER=somebody@yourdomain.com
-php -S localhost:8000 -t .
-```
-
-**Deploy with gcloud**
-```
-gcloud config set project YOUR_PROJECT_ID
-gcloud app deploy
-gcloud app browse
-```
-
-The last command will open `https://{YOUR_PROJECT_ID}.appspot.com/`
-in your browser.
diff --git a/appengine/flexible/sendgrid/app.php b/appengine/flexible/sendgrid/app.php
deleted file mode 100644
index 6f36b43d06..0000000000
--- a/appengine/flexible/sendgrid/app.php
+++ /dev/null
@@ -1,56 +0,0 @@
-get('/', function () use ($app) {
- return <<
-
-
-
-EOF;
-});
-
-$app->post('/', function (Request $request) use ($app) {
- $mail = new SendGrid\Mail(
- new SendGrid\Email(null, $app['sendgrid.sender']),
- 'This is a test email',
- new SendGrid\Email(null, $request->get('recipient')),
- new SendGrid\Content('text/plain', 'Example text body.')
- );
- /** @var SendGrid $sendgrid */
- $sendgrid = $app['sendgrid'];
- $response = $sendgrid->client->mail()->send()->post($mail);
- if ($response->statusCode() < 200 || $response->statusCode() >= 300) {
- return new Response($response->body(), $response->statusCode());
- }
- return 'Email sent.';
-});
-
-return $app;
diff --git a/appengine/flexible/sendgrid/app.yaml b/appengine/flexible/sendgrid/app.yaml
deleted file mode 100644
index c0a71831e2..0000000000
--- a/appengine/flexible/sendgrid/app.yaml
+++ /dev/null
@@ -1,8 +0,0 @@
-runtime: php
-env: flex
-
-# [START env_variables]
-env_variables:
- SENDGRID_API_KEY: your-sendgrid-api-key
- SENDGRID_SENDER: your-sendgrid-sender
-# [END env_variables]
diff --git a/appengine/flexible/sendgrid/composer.json b/appengine/flexible/sendgrid/composer.json
deleted file mode 100644
index 9c8dcd56d8..0000000000
--- a/appengine/flexible/sendgrid/composer.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "require": {
- "silex/silex": "^1.3",
- "sendgrid/sendgrid": "^5.0"
- },
- "require-dev": {
- "google/cloud-tools": "^0.6",
- "paragonie/random_compat": "^2.0",
- "symfony/browser-kit": "^3.0",
- "symfony/yaml": "^3.1"
- }
-}
diff --git a/appengine/flexible/sendgrid/composer.lock b/appengine/flexible/sendgrid/composer.lock
deleted file mode 100644
index c6c393a245..0000000000
--- a/appengine/flexible/sendgrid/composer.lock
+++ /dev/null
@@ -1,2457 +0,0 @@
-{
- "_readme": [
- "This file locks the dependencies of your project to a known state",
- "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file",
- "This file is @generated automatically"
- ],
- "hash": "b8f1e20625eaca1a9358c516ca54cead",
- "content-hash": "9c46d8f4dacd5b6dd5db5eae32eb986a",
- "packages": [
- {
- "name": "pimple/pimple",
- "version": "v1.1.1",
- "source": {
- "type": "git",
- "url": "https://github.com/silexphp/Pimple.git",
- "reference": "2019c145fe393923f3441b23f29bbdfaa5c58c4d"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/silexphp/Pimple/zipball/2019c145fe393923f3441b23f29bbdfaa5c58c4d",
- "reference": "2019c145fe393923f3441b23f29bbdfaa5c58c4d",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.1.x-dev"
- }
- },
- "autoload": {
- "psr-0": {
- "Pimple": "lib/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- }
- ],
- "description": "Pimple is a simple Dependency Injection Container for PHP 5.3",
- "homepage": "http://pimple.sensiolabs.org/",
- "keywords": [
- "container",
- "dependency injection"
- ],
- "time": "2013-11-22 08:30:29"
- },
- {
- "name": "psr/log",
- "version": "1.0.2",
- "source": {
- "type": "git",
- "url": "https://github.com/php-fig/log.git",
- "reference": "4ebe3a8bf773a19edfe0a84b6585ba3d401b724d"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/php-fig/log/zipball/4ebe3a8bf773a19edfe0a84b6585ba3d401b724d",
- "reference": "4ebe3a8bf773a19edfe0a84b6585ba3d401b724d",
- "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": "2016-10-10 12:19:37"
- },
- {
- "name": "sendgrid/php-http-client",
- "version": "3.5.1",
- "source": {
- "type": "git",
- "url": "https://github.com/sendgrid/php-http-client.git",
- "reference": "3c4c35eafd364ebcfdbb0a37f655417beed8ee0f"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sendgrid/php-http-client/zipball/3c4c35eafd364ebcfdbb0a37f655417beed8ee0f",
- "reference": "3c4c35eafd364ebcfdbb0a37f655417beed8ee0f",
- "shasum": ""
- },
- "require": {
- "php": ">=5.6"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.4",
- "squizlabs/php_codesniffer": "~2.0"
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "SendGrid\\": "lib/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Matt Bernier",
- "email": "dx@sendgrid.com"
- },
- {
- "name": "Elmer Thomas",
- "email": "elmer@thinkingserious.com"
- }
- ],
- "description": "HTTP REST client, simplified for PHP",
- "homepage": "http://github.com/sendgrid/php-http-client",
- "keywords": [
- "api",
- "fluent",
- "http",
- "rest",
- "sendgrid"
- ],
- "time": "2016-11-17 22:45:31"
- },
- {
- "name": "sendgrid/sendgrid",
- "version": "5.1.2",
- "source": {
- "type": "git",
- "url": "https://github.com/sendgrid/sendgrid-php.git",
- "reference": "46f85e69ec6a36d4674e7131e442fbecdaa5d183"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sendgrid/sendgrid-php/zipball/46f85e69ec6a36d4674e7131e442fbecdaa5d183",
- "reference": "46f85e69ec6a36d4674e7131e442fbecdaa5d183",
- "shasum": ""
- },
- "require": {
- "php": ">=5.6",
- "sendgrid/php-http-client": "~3.5"
- },
- "replace": {
- "sendgrid/sendgrid-php": "*"
- },
- "require-dev": {
- "phpunit/phpunit": "4.*",
- "squizlabs/php_codesniffer": "2.*"
- },
- "type": "library",
- "autoload": {
- "files": [
- "lib/SendGrid.php",
- "lib/helpers/mail/Mail.php"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "description": "This library allows you to quickly and easily send emails through SendGrid using PHP.",
- "homepage": "http://github.com/sendgrid/sendgrid-php",
- "keywords": [
- "email",
- "grid",
- "send",
- "sendgrid"
- ],
- "time": "2016-11-17 23:05:01"
- },
- {
- "name": "silex/silex",
- "version": "v1.3.5",
- "source": {
- "type": "git",
- "url": "https://github.com/silexphp/Silex.git",
- "reference": "374c7e04040a6f781c90f7d746726a5daa78e783"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/silexphp/Silex/zipball/374c7e04040a6f781c90f7d746726a5daa78e783",
- "reference": "374c7e04040a6f781c90f7d746726a5daa78e783",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.9",
- "pimple/pimple": "~1.0",
- "symfony/event-dispatcher": "~2.3|3.0.*",
- "symfony/http-foundation": "~2.3|3.0.*",
- "symfony/http-kernel": "~2.3|3.0.*",
- "symfony/routing": "~2.3|3.0.*"
- },
- "require-dev": {
- "doctrine/dbal": "~2.2",
- "monolog/monolog": "^1.4.1",
- "swiftmailer/swiftmailer": "~5",
- "symfony/browser-kit": "~2.3|3.0.*",
- "symfony/config": "~2.3|3.0.*",
- "symfony/css-selector": "~2.3|3.0.*",
- "symfony/debug": "~2.3|3.0.*",
- "symfony/dom-crawler": "~2.3|3.0.*",
- "symfony/finder": "~2.3|3.0.*",
- "symfony/form": "~2.3|3.0.*",
- "symfony/locale": "~2.3|3.0.*",
- "symfony/monolog-bridge": "~2.3|3.0.*",
- "symfony/options-resolver": "~2.3|3.0.*",
- "symfony/phpunit-bridge": "~2.7",
- "symfony/process": "~2.3|3.0.*",
- "symfony/security": "~2.3|3.0.*",
- "symfony/serializer": "~2.3|3.0.*",
- "symfony/translation": "~2.3|3.0.*",
- "symfony/twig-bridge": "~2.3|3.0.*",
- "symfony/validator": "~2.3|3.0.*",
- "twig/twig": "~1.8|~2.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.3.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Silex\\": "src/Silex"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Igor Wiedler",
- "email": "igor@wiedler.ch"
- }
- ],
- "description": "The PHP micro-framework based on the Symfony Components",
- "homepage": "http://silex.sensiolabs.org/",
- "keywords": [
- "microframework"
- ],
- "time": "2016-01-06 14:59:35"
- },
- {
- "name": "symfony/debug",
- "version": "v3.1.7",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/debug.git",
- "reference": "c058661c32f5b462722e36d120905940089cbd9a"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/debug/zipball/c058661c32f5b462722e36d120905940089cbd9a",
- "reference": "c058661c32f5b462722e36d120905940089cbd9a",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9",
- "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"
- },
- "require-dev": {
- "symfony/class-loader": "~2.8|~3.0",
- "symfony/http-kernel": "~2.8|~3.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.1-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\Debug\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "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": "2016-11-15 12:55:20"
- },
- {
- "name": "symfony/event-dispatcher",
- "version": "v3.0.9",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/event-dispatcher.git",
- "reference": "54da3ff63dec3c9c0e32ec3f95a7d94ef64baa00"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/54da3ff63dec3c9c0e32ec3f95a7d94ef64baa00",
- "reference": "54da3ff63dec3c9c0e32ec3f95a7d94ef64baa00",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9"
- },
- "require-dev": {
- "psr/log": "~1.0",
- "symfony/config": "~2.8|~3.0",
- "symfony/dependency-injection": "~2.8|~3.0",
- "symfony/expression-language": "~2.8|~3.0",
- "symfony/stopwatch": "~2.8|~3.0"
- },
- "suggest": {
- "symfony/dependency-injection": "",
- "symfony/http-kernel": ""
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.0-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\EventDispatcher\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony EventDispatcher Component",
- "homepage": "https://symfony.com/",
- "time": "2016-07-19 10:44:15"
- },
- {
- "name": "symfony/http-foundation",
- "version": "v3.0.9",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/http-foundation.git",
- "reference": "49ba00f8ede742169cb6b70abe33243f4d673f82"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/http-foundation/zipball/49ba00f8ede742169cb6b70abe33243f4d673f82",
- "reference": "49ba00f8ede742169cb6b70abe33243f4d673f82",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9",
- "symfony/polyfill-mbstring": "~1.1"
- },
- "require-dev": {
- "symfony/expression-language": "~2.8|~3.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.0-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\HttpFoundation\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony HttpFoundation Component",
- "homepage": "https://symfony.com/",
- "time": "2016-07-17 13:54:30"
- },
- {
- "name": "symfony/http-kernel",
- "version": "v3.0.9",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/http-kernel.git",
- "reference": "d97ba4425e36e79c794e7d14ff36f00f081b37b3"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/http-kernel/zipball/d97ba4425e36e79c794e7d14ff36f00f081b37b3",
- "reference": "d97ba4425e36e79c794e7d14ff36f00f081b37b3",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9",
- "psr/log": "~1.0",
- "symfony/debug": "~2.8|~3.0",
- "symfony/event-dispatcher": "~2.8|~3.0",
- "symfony/http-foundation": "~2.8.8|~3.0.8|~3.1.2|~3.2"
- },
- "conflict": {
- "symfony/config": "<2.8"
- },
- "require-dev": {
- "symfony/browser-kit": "~2.8|~3.0",
- "symfony/class-loader": "~2.8|~3.0",
- "symfony/config": "~2.8|~3.0",
- "symfony/console": "~2.8|~3.0",
- "symfony/css-selector": "~2.8|~3.0",
- "symfony/dependency-injection": "~2.8|~3.0",
- "symfony/dom-crawler": "~2.8|~3.0",
- "symfony/expression-language": "~2.8|~3.0",
- "symfony/finder": "~2.8|~3.0",
- "symfony/process": "~2.8|~3.0",
- "symfony/routing": "~2.8|~3.0",
- "symfony/stopwatch": "~2.8|~3.0",
- "symfony/templating": "~2.8|~3.0",
- "symfony/translation": "~2.8|~3.0",
- "symfony/var-dumper": "~2.8|~3.0"
- },
- "suggest": {
- "symfony/browser-kit": "",
- "symfony/class-loader": "",
- "symfony/config": "",
- "symfony/console": "",
- "symfony/dependency-injection": "",
- "symfony/finder": "",
- "symfony/var-dumper": ""
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.0-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\HttpKernel\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony HttpKernel Component",
- "homepage": "https://symfony.com/",
- "time": "2016-07-30 09:10:37"
- },
- {
- "name": "symfony/polyfill-mbstring",
- "version": "v1.3.0",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/polyfill-mbstring.git",
- "reference": "e79d363049d1c2128f133a2667e4f4190904f7f4"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/e79d363049d1c2128f133a2667e4f4190904f7f4",
- "reference": "e79d363049d1c2128f133a2667e4f4190904f7f4",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "suggest": {
- "ext-mbstring": "For best performance"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.3-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": "2016-11-14 01:06:16"
- },
- {
- "name": "symfony/routing",
- "version": "v3.0.9",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/routing.git",
- "reference": "9038984bd9c05ab07280121e9e10f61a7231457b"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/routing/zipball/9038984bd9c05ab07280121e9e10f61a7231457b",
- "reference": "9038984bd9c05ab07280121e9e10f61a7231457b",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9"
- },
- "conflict": {
- "symfony/config": "<2.8"
- },
- "require-dev": {
- "doctrine/annotations": "~1.0",
- "doctrine/common": "~2.2",
- "psr/log": "~1.0",
- "symfony/config": "~2.8|~3.0",
- "symfony/expression-language": "~2.8|~3.0",
- "symfony/http-foundation": "~2.8|~3.0",
- "symfony/yaml": "~2.8|~3.0"
- },
- "suggest": {
- "doctrine/annotations": "For using the annotation loader",
- "symfony/config": "For using the all-in-one router or any loader",
- "symfony/dependency-injection": "For loading routes from a service",
- "symfony/expression-language": "For using expression matching",
- "symfony/http-foundation": "For using a Symfony Request object",
- "symfony/yaml": "For using the YAML loader"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.0-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\Routing\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony Routing Component",
- "homepage": "https://symfony.com/",
- "keywords": [
- "router",
- "routing",
- "uri",
- "url"
- ],
- "time": "2016-06-29 05:40:00"
- }
- ],
- "packages-dev": [
- {
- "name": "doctrine/instantiator",
- "version": "1.0.5",
- "source": {
- "type": "git",
- "url": "https://github.com/doctrine/instantiator.git",
- "reference": "8e884e78f9f0eb1329e445619e04456e64d8051d"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/doctrine/instantiator/zipball/8e884e78f9f0eb1329e445619e04456e64d8051d",
- "reference": "8e884e78f9f0eb1329e445619e04456e64d8051d",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3,<8.0-DEV"
- },
- "require-dev": {
- "athletic/athletic": "~0.1.8",
- "ext-pdo": "*",
- "ext-phar": "*",
- "phpunit/phpunit": "~4.0",
- "squizlabs/php_codesniffer": "~2.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Doctrine\\Instantiator\\": "src/Doctrine/Instantiator/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Marco Pivetta",
- "email": "ocramius@gmail.com",
- "homepage": "http://ocramius.github.com/"
- }
- ],
- "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors",
- "homepage": "https://github.com/doctrine/instantiator",
- "keywords": [
- "constructor",
- "instantiate"
- ],
- "time": "2015-06-14 21:17:01"
- },
- {
- "name": "google/cloud-tools",
- "version": "v0.6.1",
- "source": {
- "type": "git",
- "url": "https://github.com/GoogleCloudPlatform/php-tools.git",
- "reference": "6546fab38b9ac7d9563e1ada6ed1e945eb7d10ac"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/GoogleCloudPlatform/php-tools/zipball/6546fab38b9ac7d9563e1ada6ed1e945eb7d10ac",
- "reference": "6546fab38b9ac7d9563e1ada6ed1e945eb7d10ac",
- "shasum": ""
- },
- "require": {
- "guzzlehttp/guzzle": "~5.3|~6.0",
- "php": ">=5.5",
- "phpunit/phpunit": "~4|~5",
- "symfony/browser-kit": "~2|~3",
- "symfony/process": "~2|~3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.0"
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "Google\\Cloud\\TestUtils\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "Apache-2.0"
- ],
- "authors": [
- {
- "name": "Takashi Matsuo",
- "email": "tmatsuo@google.com",
- "homepage": "https://wp.gaeflex.ninja/"
- }
- ],
- "description": "PHP tools for Google Cloud Platform",
- "homepage": "https://github.com/GoogleCloudPlatform/php-tools",
- "keywords": [
- "appengine",
- "gcp",
- "test"
- ],
- "time": "2016-12-08 21:36:15"
- },
- {
- "name": "guzzlehttp/guzzle",
- "version": "6.2.2",
- "source": {
- "type": "git",
- "url": "https://github.com/guzzle/guzzle.git",
- "reference": "ebf29dee597f02f09f4d5bbecc68230ea9b08f60"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/guzzle/guzzle/zipball/ebf29dee597f02f09f4d5bbecc68230ea9b08f60",
- "reference": "ebf29dee597f02f09f4d5bbecc68230ea9b08f60",
- "shasum": ""
- },
- "require": {
- "guzzlehttp/promises": "^1.0",
- "guzzlehttp/psr7": "^1.3.1",
- "php": ">=5.5"
- },
- "require-dev": {
- "ext-curl": "*",
- "phpunit/phpunit": "^4.0",
- "psr/log": "^1.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "6.2-dev"
- }
- },
- "autoload": {
- "files": [
- "src/functions_include.php"
- ],
- "psr-4": {
- "GuzzleHttp\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Michael Dowling",
- "email": "mtdowling@gmail.com",
- "homepage": "https://github.com/mtdowling"
- }
- ],
- "description": "Guzzle is a PHP HTTP client library",
- "homepage": "http://guzzlephp.org/",
- "keywords": [
- "client",
- "curl",
- "framework",
- "http",
- "http client",
- "rest",
- "web service"
- ],
- "time": "2016-10-08 15:01:37"
- },
- {
- "name": "guzzlehttp/promises",
- "version": "1.3.0",
- "source": {
- "type": "git",
- "url": "https://github.com/guzzle/promises.git",
- "reference": "2693c101803ca78b27972d84081d027fca790a1e"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/guzzle/promises/zipball/2693c101803ca78b27972d84081d027fca790a1e",
- "reference": "2693c101803ca78b27972d84081d027fca790a1e",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.0"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "GuzzleHttp\\Promise\\": "src/"
- },
- "files": [
- "src/functions_include.php"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Michael Dowling",
- "email": "mtdowling@gmail.com",
- "homepage": "https://github.com/mtdowling"
- }
- ],
- "description": "Guzzle promises library",
- "keywords": [
- "promise"
- ],
- "time": "2016-11-18 17:47:58"
- },
- {
- "name": "guzzlehttp/psr7",
- "version": "1.3.1",
- "source": {
- "type": "git",
- "url": "https://github.com/guzzle/psr7.git",
- "reference": "5c6447c9df362e8f8093bda8f5d8873fe5c7f65b"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/guzzle/psr7/zipball/5c6447c9df362e8f8093bda8f5d8873fe5c7f65b",
- "reference": "5c6447c9df362e8f8093bda8f5d8873fe5c7f65b",
- "shasum": ""
- },
- "require": {
- "php": ">=5.4.0",
- "psr/http-message": "~1.0"
- },
- "provide": {
- "psr/http-message-implementation": "1.0"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.4-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "GuzzleHttp\\Psr7\\": "src/"
- },
- "files": [
- "src/functions_include.php"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Michael Dowling",
- "email": "mtdowling@gmail.com",
- "homepage": "https://github.com/mtdowling"
- }
- ],
- "description": "PSR-7 message implementation",
- "keywords": [
- "http",
- "message",
- "stream",
- "uri"
- ],
- "time": "2016-06-24 23:00:38"
- },
- {
- "name": "myclabs/deep-copy",
- "version": "1.5.5",
- "source": {
- "type": "git",
- "url": "https://github.com/myclabs/DeepCopy.git",
- "reference": "399c1f9781e222f6eb6cc238796f5200d1b7f108"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/399c1f9781e222f6eb6cc238796f5200d1b7f108",
- "reference": "399c1f9781e222f6eb6cc238796f5200d1b7f108",
- "shasum": ""
- },
- "require": {
- "php": ">=5.4.0"
- },
- "require-dev": {
- "doctrine/collections": "1.*",
- "phpunit/phpunit": "~4.1"
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "DeepCopy\\": "src/DeepCopy/"
- }
- },
- "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",
- "duplicate",
- "object",
- "object graph"
- ],
- "time": "2016-10-31 17:19:45"
- },
- {
- "name": "paragonie/random_compat",
- "version": "v2.0.4",
- "source": {
- "type": "git",
- "url": "https://github.com/paragonie/random_compat.git",
- "reference": "a9b97968bcde1c4de2a5ec6cbd06a0f6c919b46e"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/paragonie/random_compat/zipball/a9b97968bcde1c4de2a5ec6cbd06a0f6c919b46e",
- "reference": "a9b97968bcde1c4de2a5ec6cbd06a0f6c919b46e",
- "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",
- "pseudorandom",
- "random"
- ],
- "time": "2016-11-07 23:38:38"
- },
- {
- "name": "phpdocumentor/reflection-common",
- "version": "1.0",
- "source": {
- "type": "git",
- "url": "https://github.com/phpDocumentor/ReflectionCommon.git",
- "reference": "144c307535e82c8fdcaacbcfc1d6d8eeb896687c"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phpDocumentor/ReflectionCommon/zipball/144c307535e82c8fdcaacbcfc1d6d8eeb896687c",
- "reference": "144c307535e82c8fdcaacbcfc1d6d8eeb896687c",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5"
- },
- "require-dev": {
- "phpunit/phpunit": "^4.6"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "phpDocumentor\\Reflection\\": [
- "src"
- ]
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Jaap van Otterdijk",
- "email": "opensource@ijaap.nl"
- }
- ],
- "description": "Common reflection classes used by phpdocumentor to reflect the code structure",
- "homepage": "http://www.phpdoc.org/",
- "keywords": [
- "FQSEN",
- "phpDocumentor",
- "phpdoc",
- "reflection",
- "static analysis"
- ],
- "time": "2015-12-27 11:43:31"
- },
- {
- "name": "phpdocumentor/reflection-docblock",
- "version": "3.1.1",
- "source": {
- "type": "git",
- "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git",
- "reference": "8331b5efe816ae05461b7ca1e721c01b46bafb3e"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/8331b5efe816ae05461b7ca1e721c01b46bafb3e",
- "reference": "8331b5efe816ae05461b7ca1e721c01b46bafb3e",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5",
- "phpdocumentor/reflection-common": "^1.0@dev",
- "phpdocumentor/type-resolver": "^0.2.0",
- "webmozart/assert": "^1.0"
- },
- "require-dev": {
- "mockery/mockery": "^0.9.4",
- "phpunit/phpunit": "^4.4"
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "phpDocumentor\\Reflection\\": [
- "src/"
- ]
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Mike van Riel",
- "email": "me@mikevanriel.com"
- }
- ],
- "description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.",
- "time": "2016-09-30 07:12:33"
- },
- {
- "name": "phpdocumentor/type-resolver",
- "version": "0.2.1",
- "source": {
- "type": "git",
- "url": "https://github.com/phpDocumentor/TypeResolver.git",
- "reference": "e224fb2ea2fba6d3ad6fdaef91cd09a172155ccb"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/e224fb2ea2fba6d3ad6fdaef91cd09a172155ccb",
- "reference": "e224fb2ea2fba6d3ad6fdaef91cd09a172155ccb",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5",
- "phpdocumentor/reflection-common": "^1.0"
- },
- "require-dev": {
- "mockery/mockery": "^0.9.4",
- "phpunit/phpunit": "^5.2||^4.8.24"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "phpDocumentor\\Reflection\\": [
- "src/"
- ]
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Mike van Riel",
- "email": "me@mikevanriel.com"
- }
- ],
- "time": "2016-11-25 06:54:22"
- },
- {
- "name": "phpspec/prophecy",
- "version": "v1.6.2",
- "source": {
- "type": "git",
- "url": "https://github.com/phpspec/prophecy.git",
- "reference": "6c52c2722f8460122f96f86346600e1077ce22cb"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phpspec/prophecy/zipball/6c52c2722f8460122f96f86346600e1077ce22cb",
- "reference": "6c52c2722f8460122f96f86346600e1077ce22cb",
- "shasum": ""
- },
- "require": {
- "doctrine/instantiator": "^1.0.2",
- "php": "^5.3|^7.0",
- "phpdocumentor/reflection-docblock": "^2.0|^3.0.2",
- "sebastian/comparator": "^1.1",
- "sebastian/recursion-context": "^1.0|^2.0"
- },
- "require-dev": {
- "phpspec/phpspec": "^2.0",
- "phpunit/phpunit": "^4.8 || ^5.6.5"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.6.x-dev"
- }
- },
- "autoload": {
- "psr-0": {
- "Prophecy\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Konstantin Kudryashov",
- "email": "ever.zet@gmail.com",
- "homepage": "http://everzet.com/"
- },
- {
- "name": "Marcello Duarte",
- "email": "marcello.duarte@gmail.com"
- }
- ],
- "description": "Highly opinionated mocking framework for PHP 5.3+",
- "homepage": "https://github.com/phpspec/prophecy",
- "keywords": [
- "Double",
- "Dummy",
- "fake",
- "mock",
- "spy",
- "stub"
- ],
- "time": "2016-11-21 14:58:47"
- },
- {
- "name": "phpunit/php-code-coverage",
- "version": "4.0.3",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-code-coverage.git",
- "reference": "903fd6318d0a90b4770a009ff73e4a4e9c437929"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/903fd6318d0a90b4770a009ff73e4a4e9c437929",
- "reference": "903fd6318d0a90b4770a009ff73e4a4e9c437929",
- "shasum": ""
- },
- "require": {
- "php": "^5.6 || ^7.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"
- },
- "require-dev": {
- "ext-xdebug": ">=2.1.4",
- "phpunit/phpunit": "^5.4"
- },
- "suggest": {
- "ext-dom": "*",
- "ext-xdebug": ">=2.4.0",
- "ext-xmlwriter": "*"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "4.0.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sb@sebastian-bergmann.de",
- "role": "lead"
- }
- ],
- "description": "Library that provides collection, processing, and rendering functionality for PHP code coverage information.",
- "homepage": "https://github.com/sebastianbergmann/php-code-coverage",
- "keywords": [
- "coverage",
- "testing",
- "xunit"
- ],
- "time": "2016-11-28 16:00:31"
- },
- {
- "name": "phpunit/php-file-iterator",
- "version": "1.4.2",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-file-iterator.git",
- "reference": "3cc8f69b3028d0f96a9078e6295d86e9bf019be5"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/3cc8f69b3028d0f96a9078e6295d86e9bf019be5",
- "reference": "3cc8f69b3028d0f96a9078e6295d86e9bf019be5",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.4.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sb@sebastian-bergmann.de",
- "role": "lead"
- }
- ],
- "description": "FilterIterator implementation that filters files based on a list of suffixes.",
- "homepage": "https://github.com/sebastianbergmann/php-file-iterator/",
- "keywords": [
- "filesystem",
- "iterator"
- ],
- "time": "2016-10-03 07:40:28"
- },
- {
- "name": "phpunit/php-text-template",
- "version": "1.2.1",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-text-template.git",
- "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/31f8b717e51d9a2afca6c9f046f5d69fc27c8686",
- "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "type": "library",
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de",
- "role": "lead"
- }
- ],
- "description": "Simple template engine.",
- "homepage": "https://github.com/sebastianbergmann/php-text-template/",
- "keywords": [
- "template"
- ],
- "time": "2015-06-21 13:50:34"
- },
- {
- "name": "phpunit/php-timer",
- "version": "1.0.8",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-timer.git",
- "reference": "38e9124049cf1a164f1e4537caf19c99bf1eb260"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/38e9124049cf1a164f1e4537caf19c99bf1eb260",
- "reference": "38e9124049cf1a164f1e4537caf19c99bf1eb260",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4|~5"
- },
- "type": "library",
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sb@sebastian-bergmann.de",
- "role": "lead"
- }
- ],
- "description": "Utility class for timing",
- "homepage": "https://github.com/sebastianbergmann/php-timer/",
- "keywords": [
- "timer"
- ],
- "time": "2016-05-12 18:03:57"
- },
- {
- "name": "phpunit/php-token-stream",
- "version": "1.4.9",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-token-stream.git",
- "reference": "3b402f65a4cc90abf6e1104e388b896ce209631b"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/3b402f65a4cc90abf6e1104e388b896ce209631b",
- "reference": "3b402f65a4cc90abf6e1104e388b896ce209631b",
- "shasum": ""
- },
- "require": {
- "ext-tokenizer": "*",
- "php": ">=5.3.3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.2"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.4-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Wrapper around PHP's tokenizer extension.",
- "homepage": "https://github.com/sebastianbergmann/php-token-stream/",
- "keywords": [
- "tokenizer"
- ],
- "time": "2016-11-15 14:06:22"
- },
- {
- "name": "phpunit/phpunit",
- "version": "5.6.7",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/phpunit.git",
- "reference": "38810e97481723ef918f6e35c03cb1014a645bd5"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/38810e97481723ef918f6e35c03cb1014a645bd5",
- "reference": "38810e97481723ef918f6e35c03cb1014a645bd5",
- "shasum": ""
- },
- "require": {
- "ext-dom": "*",
- "ext-json": "*",
- "ext-libxml": "*",
- "ext-mbstring": "*",
- "ext-xml": "*",
- "myclabs/deep-copy": "~1.3",
- "php": "^5.6 || ^7.0",
- "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.2",
- "sebastian/diff": "~1.2",
- "sebastian/environment": "^1.3 || ^2.0",
- "sebastian/exporter": "~2.0",
- "sebastian/global-state": "~1.0",
- "sebastian/object-enumerator": "~2.0",
- "sebastian/resource-operations": "~1.0",
- "sebastian/version": "~1.0|~2.0",
- "symfony/yaml": "~2.1|~3.0"
- },
- "conflict": {
- "phpdocumentor/reflection-docblock": "3.0.2"
- },
- "require-dev": {
- "ext-pdo": "*"
- },
- "suggest": {
- "ext-xdebug": "*",
- "phpunit/php-invoker": "~1.1"
- },
- "bin": [
- "phpunit"
- ],
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "5.6.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de",
- "role": "lead"
- }
- ],
- "description": "The PHP Unit Testing framework.",
- "homepage": "https://phpunit.de/",
- "keywords": [
- "phpunit",
- "testing",
- "xunit"
- ],
- "time": "2016-11-28 16:04:24"
- },
- {
- "name": "phpunit/phpunit-mock-objects",
- "version": "3.4.2",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/phpunit-mock-objects.git",
- "reference": "90a08f5deed5f7ac35463c161f2e8fa0e5652faf"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/phpunit-mock-objects/zipball/90a08f5deed5f7ac35463c161f2e8fa0e5652faf",
- "reference": "90a08f5deed5f7ac35463c161f2e8fa0e5652faf",
- "shasum": ""
- },
- "require": {
- "doctrine/instantiator": "^1.0.2",
- "php": "^5.6 || ^7.0",
- "phpunit/php-text-template": "^1.2",
- "sebastian/exporter": "^1.2 || ^2.0"
- },
- "conflict": {
- "phpunit/phpunit": "<5.4.0"
- },
- "require-dev": {
- "phpunit/phpunit": "^5.4"
- },
- "suggest": {
- "ext-soap": "*"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.2.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sb@sebastian-bergmann.de",
- "role": "lead"
- }
- ],
- "description": "Mock Object library for PHPUnit",
- "homepage": "https://github.com/sebastianbergmann/phpunit-mock-objects/",
- "keywords": [
- "mock",
- "xunit"
- ],
- "time": "2016-11-27 07:52:03"
- },
- {
- "name": "psr/http-message",
- "version": "1.0.1",
- "source": {
- "type": "git",
- "url": "https://github.com/php-fig/http-message.git",
- "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/php-fig/http-message/zipball/f6561bf28d520154e4b0ec72be95418abe6d9363",
- "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Psr\\Http\\Message\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "PHP-FIG",
- "homepage": "http://www.php-fig.org/"
- }
- ],
- "description": "Common interface for HTTP messages",
- "homepage": "https://github.com/php-fig/http-message",
- "keywords": [
- "http",
- "http-message",
- "psr",
- "psr-7",
- "request",
- "response"
- ],
- "time": "2016-08-06 14:39:51"
- },
- {
- "name": "sebastian/code-unit-reverse-lookup",
- "version": "1.0.0",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/code-unit-reverse-lookup.git",
- "reference": "c36f5e7cfce482fde5bf8d10d41a53591e0198fe"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/c36f5e7cfce482fde5bf8d10d41a53591e0198fe",
- "reference": "c36f5e7cfce482fde5bf8d10d41a53591e0198fe",
- "shasum": ""
- },
- "require": {
- "php": ">=5.6"
- },
- "require-dev": {
- "phpunit/phpunit": "~5"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Looks up which function or method a line of code belongs to",
- "homepage": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/",
- "time": "2016-02-13 06:45:14"
- },
- {
- "name": "sebastian/comparator",
- "version": "1.2.2",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/comparator.git",
- "reference": "6a1ed12e8b2409076ab22e3897126211ff8b1f7f"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/6a1ed12e8b2409076ab22e3897126211ff8b1f7f",
- "reference": "6a1ed12e8b2409076ab22e3897126211ff8b1f7f",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3",
- "sebastian/diff": "~1.2",
- "sebastian/exporter": "~1.2 || ~2.0"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.4"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.2.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Jeff Welch",
- "email": "whatthejeff@gmail.com"
- },
- {
- "name": "Volker Dusch",
- "email": "github@wallbash.com"
- },
- {
- "name": "Bernhard Schussek",
- "email": "bschussek@2bepublished.at"
- },
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Provides the functionality to compare PHP values for equality",
- "homepage": "http://www.github.com/sebastianbergmann/comparator",
- "keywords": [
- "comparator",
- "compare",
- "equality"
- ],
- "time": "2016-11-19 09:18:40"
- },
- {
- "name": "sebastian/diff",
- "version": "1.4.1",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/diff.git",
- "reference": "13edfd8706462032c2f52b4b862974dd46b71c9e"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/13edfd8706462032c2f52b4b862974dd46b71c9e",
- "reference": "13edfd8706462032c2f52b4b862974dd46b71c9e",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.8"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.4-dev"
- }
- },
- "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"
- }
- ],
- "description": "Diff implementation",
- "homepage": "https://github.com/sebastianbergmann/diff",
- "keywords": [
- "diff"
- ],
- "time": "2015-12-08 07:14:41"
- },
- {
- "name": "sebastian/environment",
- "version": "2.0.0",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/environment.git",
- "reference": "5795ffe5dc5b02460c3e34222fee8cbe245d8fac"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/5795ffe5dc5b02460c3e34222fee8cbe245d8fac",
- "reference": "5795ffe5dc5b02460c3e34222fee8cbe245d8fac",
- "shasum": ""
- },
- "require": {
- "php": "^5.6 || ^7.0"
- },
- "require-dev": {
- "phpunit/phpunit": "^5.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.0.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Provides functionality to handle HHVM/PHP environments",
- "homepage": "http://www.github.com/sebastianbergmann/environment",
- "keywords": [
- "Xdebug",
- "environment",
- "hhvm"
- ],
- "time": "2016-11-26 07:53:53"
- },
- {
- "name": "sebastian/exporter",
- "version": "2.0.0",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/exporter.git",
- "reference": "ce474bdd1a34744d7ac5d6aad3a46d48d9bac4c4"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/ce474bdd1a34744d7ac5d6aad3a46d48d9bac4c4",
- "reference": "ce474bdd1a34744d7ac5d6aad3a46d48d9bac4c4",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3",
- "sebastian/recursion-context": "~2.0"
- },
- "require-dev": {
- "ext-mbstring": "*",
- "phpunit/phpunit": "~4.4"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.0.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Jeff Welch",
- "email": "whatthejeff@gmail.com"
- },
- {
- "name": "Volker Dusch",
- "email": "github@wallbash.com"
- },
- {
- "name": "Bernhard Schussek",
- "email": "bschussek@2bepublished.at"
- },
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- },
- {
- "name": "Adam Harvey",
- "email": "aharvey@php.net"
- }
- ],
- "description": "Provides the functionality to export PHP variables for visualization",
- "homepage": "http://www.github.com/sebastianbergmann/exporter",
- "keywords": [
- "export",
- "exporter"
- ],
- "time": "2016-11-19 08:54:04"
- },
- {
- "name": "sebastian/global-state",
- "version": "1.1.1",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/global-state.git",
- "reference": "bc37d50fea7d017d3d340f230811c9f1d7280af4"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/bc37d50fea7d017d3d340f230811c9f1d7280af4",
- "reference": "bc37d50fea7d017d3d340f230811c9f1d7280af4",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.2"
- },
- "suggest": {
- "ext-uopz": "*"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Snapshotting of global state",
- "homepage": "http://www.github.com/sebastianbergmann/global-state",
- "keywords": [
- "global state"
- ],
- "time": "2015-10-12 03:26:01"
- },
- {
- "name": "sebastian/object-enumerator",
- "version": "2.0.0",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/object-enumerator.git",
- "reference": "96f8a3f257b69e8128ad74d3a7fd464bcbaa3b35"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/96f8a3f257b69e8128ad74d3a7fd464bcbaa3b35",
- "reference": "96f8a3f257b69e8128ad74d3a7fd464bcbaa3b35",
- "shasum": ""
- },
- "require": {
- "php": ">=5.6",
- "sebastian/recursion-context": "~2.0"
- },
- "require-dev": {
- "phpunit/phpunit": "~5"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.0.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Traverses array structures and object graphs to enumerate all referenced objects",
- "homepage": "https://github.com/sebastianbergmann/object-enumerator/",
- "time": "2016-11-19 07:35:10"
- },
- {
- "name": "sebastian/recursion-context",
- "version": "2.0.0",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/recursion-context.git",
- "reference": "2c3ba150cbec723aa057506e73a8d33bdb286c9a"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/2c3ba150cbec723aa057506e73a8d33bdb286c9a",
- "reference": "2c3ba150cbec723aa057506e73a8d33bdb286c9a",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.4"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.0.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Jeff Welch",
- "email": "whatthejeff@gmail.com"
- },
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- },
- {
- "name": "Adam Harvey",
- "email": "aharvey@php.net"
- }
- ],
- "description": "Provides functionality to recursively process PHP variables",
- "homepage": "http://www.github.com/sebastianbergmann/recursion-context",
- "time": "2016-11-19 07:33:16"
- },
- {
- "name": "sebastian/resource-operations",
- "version": "1.0.0",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/resource-operations.git",
- "reference": "ce990bb21759f94aeafd30209e8cfcdfa8bc3f52"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/resource-operations/zipball/ce990bb21759f94aeafd30209e8cfcdfa8bc3f52",
- "reference": "ce990bb21759f94aeafd30209e8cfcdfa8bc3f52",
- "shasum": ""
- },
- "require": {
- "php": ">=5.6.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Provides a list of PHP built-in functions that operate on resources",
- "homepage": "https://www.github.com/sebastianbergmann/resource-operations",
- "time": "2015-07-28 20:34:47"
- },
- {
- "name": "sebastian/version",
- "version": "2.0.1",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/version.git",
- "reference": "99732be0ddb3361e16ad77b68ba41efc8e979019"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/99732be0ddb3361e16ad77b68ba41efc8e979019",
- "reference": "99732be0ddb3361e16ad77b68ba41efc8e979019",
- "shasum": ""
- },
- "require": {
- "php": ">=5.6"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.0.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de",
- "role": "lead"
- }
- ],
- "description": "Library that helps with managing the version number of Git-hosted PHP projects",
- "homepage": "https://github.com/sebastianbergmann/version",
- "time": "2016-10-03 07:35:21"
- },
- {
- "name": "symfony/browser-kit",
- "version": "v3.1.7",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/browser-kit.git",
- "reference": "901319a31c9b3cee7857b4aeeb81b5d64dfa34fc"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/browser-kit/zipball/901319a31c9b3cee7857b4aeeb81b5d64dfa34fc",
- "reference": "901319a31c9b3cee7857b4aeeb81b5d64dfa34fc",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9",
- "symfony/dom-crawler": "~2.8|~3.0"
- },
- "require-dev": {
- "symfony/css-selector": "~2.8|~3.0",
- "symfony/process": "~2.8|~3.0"
- },
- "suggest": {
- "symfony/process": ""
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.1-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\BrowserKit\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony BrowserKit Component",
- "homepage": "https://symfony.com/",
- "time": "2016-09-06 11:02:40"
- },
- {
- "name": "symfony/dom-crawler",
- "version": "v3.1.7",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/dom-crawler.git",
- "reference": "1eb3b4d216e8db117218dd2bb7d23dfe67bdf518"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/1eb3b4d216e8db117218dd2bb7d23dfe67bdf518",
- "reference": "1eb3b4d216e8db117218dd2bb7d23dfe67bdf518",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9",
- "symfony/polyfill-mbstring": "~1.0"
- },
- "require-dev": {
- "symfony/css-selector": "~2.8|~3.0"
- },
- "suggest": {
- "symfony/css-selector": ""
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.1-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\DomCrawler\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony DomCrawler Component",
- "homepage": "https://symfony.com/",
- "time": "2016-11-14 16:20:02"
- },
- {
- "name": "symfony/process",
- "version": "v3.1.7",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/process.git",
- "reference": "66de154ae86b1a07001da9fbffd620206e4faf94"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/process/zipball/66de154ae86b1a07001da9fbffd620206e4faf94",
- "reference": "66de154ae86b1a07001da9fbffd620206e4faf94",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.1-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\Process\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony Process Component",
- "homepage": "https://symfony.com/",
- "time": "2016-09-29 14:13:09"
- },
- {
- "name": "symfony/yaml",
- "version": "v3.1.7",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/yaml.git",
- "reference": "9da375317228e54f4ea1b013b30fa47417e84943"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/yaml/zipball/9da375317228e54f4ea1b013b30fa47417e84943",
- "reference": "9da375317228e54f4ea1b013b30fa47417e84943",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.1-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\Yaml\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony Yaml Component",
- "homepage": "https://symfony.com/",
- "time": "2016-11-18 21:05:29"
- },
- {
- "name": "webmozart/assert",
- "version": "1.2.0",
- "source": {
- "type": "git",
- "url": "https://github.com/webmozart/assert.git",
- "reference": "2db61e59ff05fe5126d152bd0655c9ea113e550f"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/webmozart/assert/zipball/2db61e59ff05fe5126d152bd0655c9ea113e550f",
- "reference": "2db61e59ff05fe5126d152bd0655c9ea113e550f",
- "shasum": ""
- },
- "require": {
- "php": "^5.3.3 || ^7.0"
- },
- "require-dev": {
- "phpunit/phpunit": "^4.6",
- "sebastian/version": "^1.0.1"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.3-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Webmozart\\Assert\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Bernhard Schussek",
- "email": "bschussek@gmail.com"
- }
- ],
- "description": "Assertions to validate method input/output with nice error messages.",
- "keywords": [
- "assert",
- "check",
- "validate"
- ],
- "time": "2016-11-23 20:04:58"
- }
- ],
- "aliases": [],
- "minimum-stability": "stable",
- "stability-flags": [],
- "prefer-stable": false,
- "prefer-lowest": false,
- "platform": [],
- "platform-dev": []
-}
diff --git a/appengine/flexible/sendgrid/index.php b/appengine/flexible/sendgrid/index.php
deleted file mode 100644
index 6e2a2d21ff..0000000000
--- a/appengine/flexible/sendgrid/index.php
+++ /dev/null
@@ -1,30 +0,0 @@
-run();
diff --git a/appengine/flexible/sendgrid/phpunit.xml b/appengine/flexible/sendgrid/phpunit.xml
deleted file mode 100644
index e1aed97978..0000000000
--- a/appengine/flexible/sendgrid/phpunit.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-
-
-
-
-
- test
-
-
-
-
-
-
-
- app.php
-
-
-
diff --git a/appengine/flexible/sendgrid/test/DeployTest.php b/appengine/flexible/sendgrid/test/DeployTest.php
deleted file mode 100644
index 20e1e050c4..0000000000
--- a/appengine/flexible/sendgrid/test/DeployTest.php
+++ /dev/null
@@ -1,60 +0,0 @@
-setDir($tmpDir);
- chdir($tmpDir);
-
- $appYaml = Yaml::parse(file_get_contents('app.yaml'));
- $appYaml['env_variables']['SENDGRID_API_KEY'] =
- getenv('SENDGRID_API_KEY');
- $appYaml['env_variables']['SENDGRID_SENDER'] =
- getenv('SENDGRID_SENDER');
- file_put_contents('app.yaml', Yaml::dump($appYaml));
- }
-
- public function testIndex()
- {
- // Access the modules app top page.
- $resp = $this->client->get('/');
- $this->assertEquals('200', $resp->getStatusCode(),
- 'top page status code');
- }
-
- public function testSendMessage()
- {
- $resp = $this->client->request('POST', '/', [
- 'form_params' => [
- 'recipient' => 'fake@example.com',
- ]
- ]);
-
- $this->assertEquals('200', $resp->getStatusCode(),
- 'send message status code');
- }
-}
diff --git a/appengine/flexible/sendgrid/test/LocalTest.php b/appengine/flexible/sendgrid/test/LocalTest.php
deleted file mode 100644
index 893e9101b3..0000000000
--- a/appengine/flexible/sendgrid/test/LocalTest.php
+++ /dev/null
@@ -1,60 +0,0 @@
-markTestSkipped(
- 'set the SENDGRID_SENDER and SENDGRID_API_KEY' .
- 'environment variables'
- );
- }
-
- // prevent HTML error exceptions
- unset($app['exception_handler']);
-
- return $app;
- }
-
- public function testHome()
- {
- $client = $this->createClient();
- $client->request('GET', '/');
- $this->assertTrue($client->getResponse()->isOk());
- }
-
- public function testSimpleEmail()
- {
- $client = $this->createClient();
- $client->request('POST', '/', ['recipient' => 'fake@example.com']);
- $response = $client->getResponse();
- $this->assertEquals(200, $response->getStatusCode());
- $this->assertEquals('Email sent.', $response->getContent());
- }
-}
diff --git a/appengine/flexible/sendgrid/test/bootstrap.php b/appengine/flexible/sendgrid/test/bootstrap.php
deleted file mode 100644
index 15d727445c..0000000000
--- a/appengine/flexible/sendgrid/test/bootstrap.php
+++ /dev/null
@@ -1,18 +0,0 @@
-register(new TwigServiceProvider());
-$app['twig.path'] = [ __DIR__ ];
+// Create App
+$app = AppFactory::create();
-$app->get('/', function (Application $app, Request $request) {
+// Display errors
+$app->addErrorMiddleware(true, true, true);
+
+// Create Twig
+$twig = Twig::create(__DIR__);
+$app->add(TwigMiddleware::create($app, $twig));
+
+// Add IP address middleware
+$checkProxyHeaders = true;
+$trustedProxies = ['10.0.0.1', '10.0.0.2'];
+$app->add(new IpAddress($checkProxyHeaders, $trustedProxies));
+
+$app->get('/', function (Request $request, Response $response) use ($twig) {
/** @var Twig_Environment $twig */
- $twig = $app['twig'];
- return $twig->render('index.html.twig',
- ['ip' => $request->getClientIps()[0]]);
+ return $twig->render($response, 'index.html.twig',
+ ['ip' => $request->getAttribute('ip_address')]);
});
return $app;
diff --git a/appengine/flexible/staticcontent/app.yaml b/appengine/flexible/staticcontent/app.yaml
index cbe07810a5..8b5360cc02 100644
--- a/appengine/flexible/staticcontent/app.yaml
+++ b/appengine/flexible/staticcontent/app.yaml
@@ -2,4 +2,9 @@ runtime: php
env: flex
runtime_config:
- document_root: web
\ No newline at end of file
+ document_root: web
+ operating_system: ubuntu22
+ runtime_version: 8.3
+
+build_env_variables:
+ NGINX_SERVES_STATIC_FILES: true
diff --git a/appengine/flexible/staticcontent/composer.json b/appengine/flexible/staticcontent/composer.json
index 49044da6f8..a55125062f 100644
--- a/appengine/flexible/staticcontent/composer.json
+++ b/appengine/flexible/staticcontent/composer.json
@@ -1,11 +1,8 @@
{
"require": {
- "silex/silex": "^1.3",
- "twig/twig": "^1.24"
- },
- "require-dev": {
- "google/cloud-tools": "^0.6",
- "guzzlehttp/guzzle": "^6.2",
- "phpunit/phpunit": "~4"
+ "slim/slim": "^4.0",
+ "slim/psr7": "^1.3",
+ "slim/twig-view": "^3.2",
+ "akrabat/ip-address-middleware": "^2.0"
}
}
diff --git a/appengine/flexible/staticcontent/composer.lock b/appengine/flexible/staticcontent/composer.lock
deleted file mode 100644
index 6ee5c62e29..0000000000
--- a/appengine/flexible/staticcontent/composer.lock
+++ /dev/null
@@ -1,2175 +0,0 @@
-{
- "_readme": [
- "This file locks the dependencies of your project to a known state",
- "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file",
- "This file is @generated automatically"
- ],
- "hash": "e6eb08e67d8f9b4342997d19762dab04",
- "content-hash": "9e8e88502f4923f2001cbfc5e990e03c",
- "packages": [
- {
- "name": "pimple/pimple",
- "version": "v1.1.1",
- "source": {
- "type": "git",
- "url": "https://github.com/silexphp/Pimple.git",
- "reference": "2019c145fe393923f3441b23f29bbdfaa5c58c4d"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/silexphp/Pimple/zipball/2019c145fe393923f3441b23f29bbdfaa5c58c4d",
- "reference": "2019c145fe393923f3441b23f29bbdfaa5c58c4d",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.1.x-dev"
- }
- },
- "autoload": {
- "psr-0": {
- "Pimple": "lib/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- }
- ],
- "description": "Pimple is a simple Dependency Injection Container for PHP 5.3",
- "homepage": "http://pimple.sensiolabs.org/",
- "keywords": [
- "container",
- "dependency injection"
- ],
- "time": "2013-11-22 08:30:29"
- },
- {
- "name": "psr/log",
- "version": "1.0.2",
- "source": {
- "type": "git",
- "url": "https://github.com/php-fig/log.git",
- "reference": "4ebe3a8bf773a19edfe0a84b6585ba3d401b724d"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/php-fig/log/zipball/4ebe3a8bf773a19edfe0a84b6585ba3d401b724d",
- "reference": "4ebe3a8bf773a19edfe0a84b6585ba3d401b724d",
- "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": "2016-10-10 12:19:37"
- },
- {
- "name": "silex/silex",
- "version": "v1.3.5",
- "source": {
- "type": "git",
- "url": "https://github.com/silexphp/Silex.git",
- "reference": "374c7e04040a6f781c90f7d746726a5daa78e783"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/silexphp/Silex/zipball/374c7e04040a6f781c90f7d746726a5daa78e783",
- "reference": "374c7e04040a6f781c90f7d746726a5daa78e783",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.9",
- "pimple/pimple": "~1.0",
- "symfony/event-dispatcher": "~2.3|3.0.*",
- "symfony/http-foundation": "~2.3|3.0.*",
- "symfony/http-kernel": "~2.3|3.0.*",
- "symfony/routing": "~2.3|3.0.*"
- },
- "require-dev": {
- "doctrine/dbal": "~2.2",
- "monolog/monolog": "^1.4.1",
- "swiftmailer/swiftmailer": "~5",
- "symfony/browser-kit": "~2.3|3.0.*",
- "symfony/config": "~2.3|3.0.*",
- "symfony/css-selector": "~2.3|3.0.*",
- "symfony/debug": "~2.3|3.0.*",
- "symfony/dom-crawler": "~2.3|3.0.*",
- "symfony/finder": "~2.3|3.0.*",
- "symfony/form": "~2.3|3.0.*",
- "symfony/locale": "~2.3|3.0.*",
- "symfony/monolog-bridge": "~2.3|3.0.*",
- "symfony/options-resolver": "~2.3|3.0.*",
- "symfony/phpunit-bridge": "~2.7",
- "symfony/process": "~2.3|3.0.*",
- "symfony/security": "~2.3|3.0.*",
- "symfony/serializer": "~2.3|3.0.*",
- "symfony/translation": "~2.3|3.0.*",
- "symfony/twig-bridge": "~2.3|3.0.*",
- "symfony/validator": "~2.3|3.0.*",
- "twig/twig": "~1.8|~2.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.3.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Silex\\": "src/Silex"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Igor Wiedler",
- "email": "igor@wiedler.ch"
- }
- ],
- "description": "The PHP micro-framework based on the Symfony Components",
- "homepage": "http://silex.sensiolabs.org/",
- "keywords": [
- "microframework"
- ],
- "time": "2016-01-06 14:59:35"
- },
- {
- "name": "symfony/debug",
- "version": "v3.1.7",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/debug.git",
- "reference": "c058661c32f5b462722e36d120905940089cbd9a"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/debug/zipball/c058661c32f5b462722e36d120905940089cbd9a",
- "reference": "c058661c32f5b462722e36d120905940089cbd9a",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9",
- "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"
- },
- "require-dev": {
- "symfony/class-loader": "~2.8|~3.0",
- "symfony/http-kernel": "~2.8|~3.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.1-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\Debug\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "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": "2016-11-15 12:55:20"
- },
- {
- "name": "symfony/event-dispatcher",
- "version": "v3.0.9",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/event-dispatcher.git",
- "reference": "54da3ff63dec3c9c0e32ec3f95a7d94ef64baa00"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/54da3ff63dec3c9c0e32ec3f95a7d94ef64baa00",
- "reference": "54da3ff63dec3c9c0e32ec3f95a7d94ef64baa00",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9"
- },
- "require-dev": {
- "psr/log": "~1.0",
- "symfony/config": "~2.8|~3.0",
- "symfony/dependency-injection": "~2.8|~3.0",
- "symfony/expression-language": "~2.8|~3.0",
- "symfony/stopwatch": "~2.8|~3.0"
- },
- "suggest": {
- "symfony/dependency-injection": "",
- "symfony/http-kernel": ""
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.0-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\EventDispatcher\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony EventDispatcher Component",
- "homepage": "https://symfony.com/",
- "time": "2016-07-19 10:44:15"
- },
- {
- "name": "symfony/http-foundation",
- "version": "v3.0.9",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/http-foundation.git",
- "reference": "49ba00f8ede742169cb6b70abe33243f4d673f82"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/http-foundation/zipball/49ba00f8ede742169cb6b70abe33243f4d673f82",
- "reference": "49ba00f8ede742169cb6b70abe33243f4d673f82",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9",
- "symfony/polyfill-mbstring": "~1.1"
- },
- "require-dev": {
- "symfony/expression-language": "~2.8|~3.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.0-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\HttpFoundation\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony HttpFoundation Component",
- "homepage": "https://symfony.com/",
- "time": "2016-07-17 13:54:30"
- },
- {
- "name": "symfony/http-kernel",
- "version": "v3.0.9",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/http-kernel.git",
- "reference": "d97ba4425e36e79c794e7d14ff36f00f081b37b3"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/http-kernel/zipball/d97ba4425e36e79c794e7d14ff36f00f081b37b3",
- "reference": "d97ba4425e36e79c794e7d14ff36f00f081b37b3",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9",
- "psr/log": "~1.0",
- "symfony/debug": "~2.8|~3.0",
- "symfony/event-dispatcher": "~2.8|~3.0",
- "symfony/http-foundation": "~2.8.8|~3.0.8|~3.1.2|~3.2"
- },
- "conflict": {
- "symfony/config": "<2.8"
- },
- "require-dev": {
- "symfony/browser-kit": "~2.8|~3.0",
- "symfony/class-loader": "~2.8|~3.0",
- "symfony/config": "~2.8|~3.0",
- "symfony/console": "~2.8|~3.0",
- "symfony/css-selector": "~2.8|~3.0",
- "symfony/dependency-injection": "~2.8|~3.0",
- "symfony/dom-crawler": "~2.8|~3.0",
- "symfony/expression-language": "~2.8|~3.0",
- "symfony/finder": "~2.8|~3.0",
- "symfony/process": "~2.8|~3.0",
- "symfony/routing": "~2.8|~3.0",
- "symfony/stopwatch": "~2.8|~3.0",
- "symfony/templating": "~2.8|~3.0",
- "symfony/translation": "~2.8|~3.0",
- "symfony/var-dumper": "~2.8|~3.0"
- },
- "suggest": {
- "symfony/browser-kit": "",
- "symfony/class-loader": "",
- "symfony/config": "",
- "symfony/console": "",
- "symfony/dependency-injection": "",
- "symfony/finder": "",
- "symfony/var-dumper": ""
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.0-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\HttpKernel\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony HttpKernel Component",
- "homepage": "https://symfony.com/",
- "time": "2016-07-30 09:10:37"
- },
- {
- "name": "symfony/polyfill-mbstring",
- "version": "v1.3.0",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/polyfill-mbstring.git",
- "reference": "e79d363049d1c2128f133a2667e4f4190904f7f4"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/e79d363049d1c2128f133a2667e4f4190904f7f4",
- "reference": "e79d363049d1c2128f133a2667e4f4190904f7f4",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "suggest": {
- "ext-mbstring": "For best performance"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.3-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": "2016-11-14 01:06:16"
- },
- {
- "name": "symfony/routing",
- "version": "v3.0.9",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/routing.git",
- "reference": "9038984bd9c05ab07280121e9e10f61a7231457b"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/routing/zipball/9038984bd9c05ab07280121e9e10f61a7231457b",
- "reference": "9038984bd9c05ab07280121e9e10f61a7231457b",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9"
- },
- "conflict": {
- "symfony/config": "<2.8"
- },
- "require-dev": {
- "doctrine/annotations": "~1.0",
- "doctrine/common": "~2.2",
- "psr/log": "~1.0",
- "symfony/config": "~2.8|~3.0",
- "symfony/expression-language": "~2.8|~3.0",
- "symfony/http-foundation": "~2.8|~3.0",
- "symfony/yaml": "~2.8|~3.0"
- },
- "suggest": {
- "doctrine/annotations": "For using the annotation loader",
- "symfony/config": "For using the all-in-one router or any loader",
- "symfony/dependency-injection": "For loading routes from a service",
- "symfony/expression-language": "For using expression matching",
- "symfony/http-foundation": "For using a Symfony Request object",
- "symfony/yaml": "For using the YAML loader"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.0-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\Routing\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony Routing Component",
- "homepage": "https://symfony.com/",
- "keywords": [
- "router",
- "routing",
- "uri",
- "url"
- ],
- "time": "2016-06-29 05:40:00"
- },
- {
- "name": "twig/twig",
- "version": "v1.28.2",
- "source": {
- "type": "git",
- "url": "https://github.com/twigphp/Twig.git",
- "reference": "b22ce0eb070e41f7cba65d78fe216de29726459c"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/twigphp/Twig/zipball/b22ce0eb070e41f7cba65d78fe216de29726459c",
- "reference": "b22ce0eb070e41f7cba65d78fe216de29726459c",
- "shasum": ""
- },
- "require": {
- "php": ">=5.2.7"
- },
- "require-dev": {
- "symfony/debug": "~2.7",
- "symfony/phpunit-bridge": "~3.2@dev"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.28-dev"
- }
- },
- "autoload": {
- "psr-0": {
- "Twig_": "lib/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com",
- "homepage": "http://fabien.potencier.org/",
- "role": "Lead Developer"
- },
- {
- "name": "Armin Ronacher",
- "email": "armin.ronacher@active-4.com",
- "role": "Project Founder"
- },
- {
- "name": "Twig Team",
- "homepage": "http://twig.sensiolabs.org/contributors",
- "role": "Contributors"
- }
- ],
- "description": "Twig, the flexible, fast, and secure template language for PHP",
- "homepage": "http://twig.sensiolabs.org/",
- "keywords": [
- "templating"
- ],
- "time": "2016-11-23 18:41:40"
- }
- ],
- "packages-dev": [
- {
- "name": "doctrine/instantiator",
- "version": "1.0.5",
- "source": {
- "type": "git",
- "url": "https://github.com/doctrine/instantiator.git",
- "reference": "8e884e78f9f0eb1329e445619e04456e64d8051d"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/doctrine/instantiator/zipball/8e884e78f9f0eb1329e445619e04456e64d8051d",
- "reference": "8e884e78f9f0eb1329e445619e04456e64d8051d",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3,<8.0-DEV"
- },
- "require-dev": {
- "athletic/athletic": "~0.1.8",
- "ext-pdo": "*",
- "ext-phar": "*",
- "phpunit/phpunit": "~4.0",
- "squizlabs/php_codesniffer": "~2.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Doctrine\\Instantiator\\": "src/Doctrine/Instantiator/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Marco Pivetta",
- "email": "ocramius@gmail.com",
- "homepage": "http://ocramius.github.com/"
- }
- ],
- "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors",
- "homepage": "https://github.com/doctrine/instantiator",
- "keywords": [
- "constructor",
- "instantiate"
- ],
- "time": "2015-06-14 21:17:01"
- },
- {
- "name": "google/cloud-tools",
- "version": "v0.6.1",
- "source": {
- "type": "git",
- "url": "https://github.com/GoogleCloudPlatform/php-tools.git",
- "reference": "6546fab38b9ac7d9563e1ada6ed1e945eb7d10ac"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/GoogleCloudPlatform/php-tools/zipball/6546fab38b9ac7d9563e1ada6ed1e945eb7d10ac",
- "reference": "6546fab38b9ac7d9563e1ada6ed1e945eb7d10ac",
- "shasum": ""
- },
- "require": {
- "guzzlehttp/guzzle": "~5.3|~6.0",
- "php": ">=5.5",
- "phpunit/phpunit": "~4|~5",
- "symfony/browser-kit": "~2|~3",
- "symfony/process": "~2|~3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.0"
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "Google\\Cloud\\TestUtils\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "Apache-2.0"
- ],
- "authors": [
- {
- "name": "Takashi Matsuo",
- "email": "tmatsuo@google.com",
- "homepage": "https://wp.gaeflex.ninja/"
- }
- ],
- "description": "PHP tools for Google Cloud Platform",
- "homepage": "https://github.com/GoogleCloudPlatform/php-tools",
- "keywords": [
- "appengine",
- "gcp",
- "test"
- ],
- "time": "2016-12-08 21:36:15"
- },
- {
- "name": "guzzlehttp/guzzle",
- "version": "6.2.2",
- "source": {
- "type": "git",
- "url": "https://github.com/guzzle/guzzle.git",
- "reference": "ebf29dee597f02f09f4d5bbecc68230ea9b08f60"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/guzzle/guzzle/zipball/ebf29dee597f02f09f4d5bbecc68230ea9b08f60",
- "reference": "ebf29dee597f02f09f4d5bbecc68230ea9b08f60",
- "shasum": ""
- },
- "require": {
- "guzzlehttp/promises": "^1.0",
- "guzzlehttp/psr7": "^1.3.1",
- "php": ">=5.5"
- },
- "require-dev": {
- "ext-curl": "*",
- "phpunit/phpunit": "^4.0",
- "psr/log": "^1.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "6.2-dev"
- }
- },
- "autoload": {
- "files": [
- "src/functions_include.php"
- ],
- "psr-4": {
- "GuzzleHttp\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Michael Dowling",
- "email": "mtdowling@gmail.com",
- "homepage": "https://github.com/mtdowling"
- }
- ],
- "description": "Guzzle is a PHP HTTP client library",
- "homepage": "http://guzzlephp.org/",
- "keywords": [
- "client",
- "curl",
- "framework",
- "http",
- "http client",
- "rest",
- "web service"
- ],
- "time": "2016-10-08 15:01:37"
- },
- {
- "name": "guzzlehttp/promises",
- "version": "1.3.0",
- "source": {
- "type": "git",
- "url": "https://github.com/guzzle/promises.git",
- "reference": "2693c101803ca78b27972d84081d027fca790a1e"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/guzzle/promises/zipball/2693c101803ca78b27972d84081d027fca790a1e",
- "reference": "2693c101803ca78b27972d84081d027fca790a1e",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.0"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "GuzzleHttp\\Promise\\": "src/"
- },
- "files": [
- "src/functions_include.php"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Michael Dowling",
- "email": "mtdowling@gmail.com",
- "homepage": "https://github.com/mtdowling"
- }
- ],
- "description": "Guzzle promises library",
- "keywords": [
- "promise"
- ],
- "time": "2016-11-18 17:47:58"
- },
- {
- "name": "guzzlehttp/psr7",
- "version": "1.3.1",
- "source": {
- "type": "git",
- "url": "https://github.com/guzzle/psr7.git",
- "reference": "5c6447c9df362e8f8093bda8f5d8873fe5c7f65b"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/guzzle/psr7/zipball/5c6447c9df362e8f8093bda8f5d8873fe5c7f65b",
- "reference": "5c6447c9df362e8f8093bda8f5d8873fe5c7f65b",
- "shasum": ""
- },
- "require": {
- "php": ">=5.4.0",
- "psr/http-message": "~1.0"
- },
- "provide": {
- "psr/http-message-implementation": "1.0"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.4-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "GuzzleHttp\\Psr7\\": "src/"
- },
- "files": [
- "src/functions_include.php"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Michael Dowling",
- "email": "mtdowling@gmail.com",
- "homepage": "https://github.com/mtdowling"
- }
- ],
- "description": "PSR-7 message implementation",
- "keywords": [
- "http",
- "message",
- "stream",
- "uri"
- ],
- "time": "2016-06-24 23:00:38"
- },
- {
- "name": "phpdocumentor/reflection-common",
- "version": "1.0",
- "source": {
- "type": "git",
- "url": "https://github.com/phpDocumentor/ReflectionCommon.git",
- "reference": "144c307535e82c8fdcaacbcfc1d6d8eeb896687c"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phpDocumentor/ReflectionCommon/zipball/144c307535e82c8fdcaacbcfc1d6d8eeb896687c",
- "reference": "144c307535e82c8fdcaacbcfc1d6d8eeb896687c",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5"
- },
- "require-dev": {
- "phpunit/phpunit": "^4.6"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "phpDocumentor\\Reflection\\": [
- "src"
- ]
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Jaap van Otterdijk",
- "email": "opensource@ijaap.nl"
- }
- ],
- "description": "Common reflection classes used by phpdocumentor to reflect the code structure",
- "homepage": "http://www.phpdoc.org/",
- "keywords": [
- "FQSEN",
- "phpDocumentor",
- "phpdoc",
- "reflection",
- "static analysis"
- ],
- "time": "2015-12-27 11:43:31"
- },
- {
- "name": "phpdocumentor/reflection-docblock",
- "version": "3.1.1",
- "source": {
- "type": "git",
- "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git",
- "reference": "8331b5efe816ae05461b7ca1e721c01b46bafb3e"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/8331b5efe816ae05461b7ca1e721c01b46bafb3e",
- "reference": "8331b5efe816ae05461b7ca1e721c01b46bafb3e",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5",
- "phpdocumentor/reflection-common": "^1.0@dev",
- "phpdocumentor/type-resolver": "^0.2.0",
- "webmozart/assert": "^1.0"
- },
- "require-dev": {
- "mockery/mockery": "^0.9.4",
- "phpunit/phpunit": "^4.4"
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "phpDocumentor\\Reflection\\": [
- "src/"
- ]
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Mike van Riel",
- "email": "me@mikevanriel.com"
- }
- ],
- "description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.",
- "time": "2016-09-30 07:12:33"
- },
- {
- "name": "phpdocumentor/type-resolver",
- "version": "0.2.1",
- "source": {
- "type": "git",
- "url": "https://github.com/phpDocumentor/TypeResolver.git",
- "reference": "e224fb2ea2fba6d3ad6fdaef91cd09a172155ccb"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/e224fb2ea2fba6d3ad6fdaef91cd09a172155ccb",
- "reference": "e224fb2ea2fba6d3ad6fdaef91cd09a172155ccb",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5",
- "phpdocumentor/reflection-common": "^1.0"
- },
- "require-dev": {
- "mockery/mockery": "^0.9.4",
- "phpunit/phpunit": "^5.2||^4.8.24"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "phpDocumentor\\Reflection\\": [
- "src/"
- ]
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Mike van Riel",
- "email": "me@mikevanriel.com"
- }
- ],
- "time": "2016-11-25 06:54:22"
- },
- {
- "name": "phpspec/prophecy",
- "version": "v1.6.2",
- "source": {
- "type": "git",
- "url": "https://github.com/phpspec/prophecy.git",
- "reference": "6c52c2722f8460122f96f86346600e1077ce22cb"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phpspec/prophecy/zipball/6c52c2722f8460122f96f86346600e1077ce22cb",
- "reference": "6c52c2722f8460122f96f86346600e1077ce22cb",
- "shasum": ""
- },
- "require": {
- "doctrine/instantiator": "^1.0.2",
- "php": "^5.3|^7.0",
- "phpdocumentor/reflection-docblock": "^2.0|^3.0.2",
- "sebastian/comparator": "^1.1",
- "sebastian/recursion-context": "^1.0|^2.0"
- },
- "require-dev": {
- "phpspec/phpspec": "^2.0",
- "phpunit/phpunit": "^4.8 || ^5.6.5"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.6.x-dev"
- }
- },
- "autoload": {
- "psr-0": {
- "Prophecy\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Konstantin Kudryashov",
- "email": "ever.zet@gmail.com",
- "homepage": "http://everzet.com/"
- },
- {
- "name": "Marcello Duarte",
- "email": "marcello.duarte@gmail.com"
- }
- ],
- "description": "Highly opinionated mocking framework for PHP 5.3+",
- "homepage": "https://github.com/phpspec/prophecy",
- "keywords": [
- "Double",
- "Dummy",
- "fake",
- "mock",
- "spy",
- "stub"
- ],
- "time": "2016-11-21 14:58:47"
- },
- {
- "name": "phpunit/php-code-coverage",
- "version": "2.2.4",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-code-coverage.git",
- "reference": "eabf68b476ac7d0f73793aada060f1c1a9bf8979"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/eabf68b476ac7d0f73793aada060f1c1a9bf8979",
- "reference": "eabf68b476ac7d0f73793aada060f1c1a9bf8979",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3",
- "phpunit/php-file-iterator": "~1.3",
- "phpunit/php-text-template": "~1.2",
- "phpunit/php-token-stream": "~1.3",
- "sebastian/environment": "^1.3.2",
- "sebastian/version": "~1.0"
- },
- "require-dev": {
- "ext-xdebug": ">=2.1.4",
- "phpunit/phpunit": "~4"
- },
- "suggest": {
- "ext-dom": "*",
- "ext-xdebug": ">=2.2.1",
- "ext-xmlwriter": "*"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.2.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sb@sebastian-bergmann.de",
- "role": "lead"
- }
- ],
- "description": "Library that provides collection, processing, and rendering functionality for PHP code coverage information.",
- "homepage": "https://github.com/sebastianbergmann/php-code-coverage",
- "keywords": [
- "coverage",
- "testing",
- "xunit"
- ],
- "time": "2015-10-06 15:47:00"
- },
- {
- "name": "phpunit/php-file-iterator",
- "version": "1.4.2",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-file-iterator.git",
- "reference": "3cc8f69b3028d0f96a9078e6295d86e9bf019be5"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/3cc8f69b3028d0f96a9078e6295d86e9bf019be5",
- "reference": "3cc8f69b3028d0f96a9078e6295d86e9bf019be5",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.4.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sb@sebastian-bergmann.de",
- "role": "lead"
- }
- ],
- "description": "FilterIterator implementation that filters files based on a list of suffixes.",
- "homepage": "https://github.com/sebastianbergmann/php-file-iterator/",
- "keywords": [
- "filesystem",
- "iterator"
- ],
- "time": "2016-10-03 07:40:28"
- },
- {
- "name": "phpunit/php-text-template",
- "version": "1.2.1",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-text-template.git",
- "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/31f8b717e51d9a2afca6c9f046f5d69fc27c8686",
- "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "type": "library",
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de",
- "role": "lead"
- }
- ],
- "description": "Simple template engine.",
- "homepage": "https://github.com/sebastianbergmann/php-text-template/",
- "keywords": [
- "template"
- ],
- "time": "2015-06-21 13:50:34"
- },
- {
- "name": "phpunit/php-timer",
- "version": "1.0.8",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-timer.git",
- "reference": "38e9124049cf1a164f1e4537caf19c99bf1eb260"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/38e9124049cf1a164f1e4537caf19c99bf1eb260",
- "reference": "38e9124049cf1a164f1e4537caf19c99bf1eb260",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4|~5"
- },
- "type": "library",
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sb@sebastian-bergmann.de",
- "role": "lead"
- }
- ],
- "description": "Utility class for timing",
- "homepage": "https://github.com/sebastianbergmann/php-timer/",
- "keywords": [
- "timer"
- ],
- "time": "2016-05-12 18:03:57"
- },
- {
- "name": "phpunit/php-token-stream",
- "version": "1.4.9",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-token-stream.git",
- "reference": "3b402f65a4cc90abf6e1104e388b896ce209631b"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/3b402f65a4cc90abf6e1104e388b896ce209631b",
- "reference": "3b402f65a4cc90abf6e1104e388b896ce209631b",
- "shasum": ""
- },
- "require": {
- "ext-tokenizer": "*",
- "php": ">=5.3.3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.2"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.4-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Wrapper around PHP's tokenizer extension.",
- "homepage": "https://github.com/sebastianbergmann/php-token-stream/",
- "keywords": [
- "tokenizer"
- ],
- "time": "2016-11-15 14:06:22"
- },
- {
- "name": "phpunit/phpunit",
- "version": "4.8.29",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/phpunit.git",
- "reference": "f19d481b468b76a7fb55eb2b772ed487e484891e"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/f19d481b468b76a7fb55eb2b772ed487e484891e",
- "reference": "f19d481b468b76a7fb55eb2b772ed487e484891e",
- "shasum": ""
- },
- "require": {
- "ext-dom": "*",
- "ext-json": "*",
- "ext-pcre": "*",
- "ext-reflection": "*",
- "ext-spl": "*",
- "php": ">=5.3.3",
- "phpspec/prophecy": "^1.3.1",
- "phpunit/php-code-coverage": "~2.1",
- "phpunit/php-file-iterator": "~1.4",
- "phpunit/php-text-template": "~1.2",
- "phpunit/php-timer": "^1.0.6",
- "phpunit/phpunit-mock-objects": "~2.3",
- "sebastian/comparator": "~1.2.2",
- "sebastian/diff": "~1.2",
- "sebastian/environment": "~1.3",
- "sebastian/exporter": "~1.2",
- "sebastian/global-state": "~1.0",
- "sebastian/version": "~1.0",
- "symfony/yaml": "~2.1|~3.0"
- },
- "suggest": {
- "phpunit/php-invoker": "~1.1"
- },
- "bin": [
- "phpunit"
- ],
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "4.8.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de",
- "role": "lead"
- }
- ],
- "description": "The PHP Unit Testing framework.",
- "homepage": "https://phpunit.de/",
- "keywords": [
- "phpunit",
- "testing",
- "xunit"
- ],
- "time": "2016-11-20 10:35:28"
- },
- {
- "name": "phpunit/phpunit-mock-objects",
- "version": "2.3.8",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/phpunit-mock-objects.git",
- "reference": "ac8e7a3db35738d56ee9a76e78a4e03d97628983"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/phpunit-mock-objects/zipball/ac8e7a3db35738d56ee9a76e78a4e03d97628983",
- "reference": "ac8e7a3db35738d56ee9a76e78a4e03d97628983",
- "shasum": ""
- },
- "require": {
- "doctrine/instantiator": "^1.0.2",
- "php": ">=5.3.3",
- "phpunit/php-text-template": "~1.2",
- "sebastian/exporter": "~1.2"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.4"
- },
- "suggest": {
- "ext-soap": "*"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.3.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sb@sebastian-bergmann.de",
- "role": "lead"
- }
- ],
- "description": "Mock Object library for PHPUnit",
- "homepage": "https://github.com/sebastianbergmann/phpunit-mock-objects/",
- "keywords": [
- "mock",
- "xunit"
- ],
- "time": "2015-10-02 06:51:40"
- },
- {
- "name": "psr/http-message",
- "version": "1.0.1",
- "source": {
- "type": "git",
- "url": "https://github.com/php-fig/http-message.git",
- "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/php-fig/http-message/zipball/f6561bf28d520154e4b0ec72be95418abe6d9363",
- "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Psr\\Http\\Message\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "PHP-FIG",
- "homepage": "http://www.php-fig.org/"
- }
- ],
- "description": "Common interface for HTTP messages",
- "homepage": "https://github.com/php-fig/http-message",
- "keywords": [
- "http",
- "http-message",
- "psr",
- "psr-7",
- "request",
- "response"
- ],
- "time": "2016-08-06 14:39:51"
- },
- {
- "name": "sebastian/comparator",
- "version": "1.2.2",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/comparator.git",
- "reference": "6a1ed12e8b2409076ab22e3897126211ff8b1f7f"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/6a1ed12e8b2409076ab22e3897126211ff8b1f7f",
- "reference": "6a1ed12e8b2409076ab22e3897126211ff8b1f7f",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3",
- "sebastian/diff": "~1.2",
- "sebastian/exporter": "~1.2 || ~2.0"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.4"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.2.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Jeff Welch",
- "email": "whatthejeff@gmail.com"
- },
- {
- "name": "Volker Dusch",
- "email": "github@wallbash.com"
- },
- {
- "name": "Bernhard Schussek",
- "email": "bschussek@2bepublished.at"
- },
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Provides the functionality to compare PHP values for equality",
- "homepage": "http://www.github.com/sebastianbergmann/comparator",
- "keywords": [
- "comparator",
- "compare",
- "equality"
- ],
- "time": "2016-11-19 09:18:40"
- },
- {
- "name": "sebastian/diff",
- "version": "1.4.1",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/diff.git",
- "reference": "13edfd8706462032c2f52b4b862974dd46b71c9e"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/13edfd8706462032c2f52b4b862974dd46b71c9e",
- "reference": "13edfd8706462032c2f52b4b862974dd46b71c9e",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.8"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.4-dev"
- }
- },
- "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"
- }
- ],
- "description": "Diff implementation",
- "homepage": "https://github.com/sebastianbergmann/diff",
- "keywords": [
- "diff"
- ],
- "time": "2015-12-08 07:14:41"
- },
- {
- "name": "sebastian/environment",
- "version": "1.3.8",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/environment.git",
- "reference": "be2c607e43ce4c89ecd60e75c6a85c126e754aea"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/be2c607e43ce4c89ecd60e75c6a85c126e754aea",
- "reference": "be2c607e43ce4c89ecd60e75c6a85c126e754aea",
- "shasum": ""
- },
- "require": {
- "php": "^5.3.3 || ^7.0"
- },
- "require-dev": {
- "phpunit/phpunit": "^4.8 || ^5.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.3.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Provides functionality to handle HHVM/PHP environments",
- "homepage": "http://www.github.com/sebastianbergmann/environment",
- "keywords": [
- "Xdebug",
- "environment",
- "hhvm"
- ],
- "time": "2016-08-18 05:49:44"
- },
- {
- "name": "sebastian/exporter",
- "version": "1.2.2",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/exporter.git",
- "reference": "42c4c2eec485ee3e159ec9884f95b431287edde4"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/42c4c2eec485ee3e159ec9884f95b431287edde4",
- "reference": "42c4c2eec485ee3e159ec9884f95b431287edde4",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3",
- "sebastian/recursion-context": "~1.0"
- },
- "require-dev": {
- "ext-mbstring": "*",
- "phpunit/phpunit": "~4.4"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.3.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Jeff Welch",
- "email": "whatthejeff@gmail.com"
- },
- {
- "name": "Volker Dusch",
- "email": "github@wallbash.com"
- },
- {
- "name": "Bernhard Schussek",
- "email": "bschussek@2bepublished.at"
- },
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- },
- {
- "name": "Adam Harvey",
- "email": "aharvey@php.net"
- }
- ],
- "description": "Provides the functionality to export PHP variables for visualization",
- "homepage": "http://www.github.com/sebastianbergmann/exporter",
- "keywords": [
- "export",
- "exporter"
- ],
- "time": "2016-06-17 09:04:28"
- },
- {
- "name": "sebastian/global-state",
- "version": "1.1.1",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/global-state.git",
- "reference": "bc37d50fea7d017d3d340f230811c9f1d7280af4"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/bc37d50fea7d017d3d340f230811c9f1d7280af4",
- "reference": "bc37d50fea7d017d3d340f230811c9f1d7280af4",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.2"
- },
- "suggest": {
- "ext-uopz": "*"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Snapshotting of global state",
- "homepage": "http://www.github.com/sebastianbergmann/global-state",
- "keywords": [
- "global state"
- ],
- "time": "2015-10-12 03:26:01"
- },
- {
- "name": "sebastian/recursion-context",
- "version": "1.0.2",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/recursion-context.git",
- "reference": "913401df809e99e4f47b27cdd781f4a258d58791"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/913401df809e99e4f47b27cdd781f4a258d58791",
- "reference": "913401df809e99e4f47b27cdd781f4a258d58791",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.4"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0.x-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Jeff Welch",
- "email": "whatthejeff@gmail.com"
- },
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- },
- {
- "name": "Adam Harvey",
- "email": "aharvey@php.net"
- }
- ],
- "description": "Provides functionality to recursively process PHP variables",
- "homepage": "http://www.github.com/sebastianbergmann/recursion-context",
- "time": "2015-11-11 19:50:13"
- },
- {
- "name": "sebastian/version",
- "version": "1.0.6",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/version.git",
- "reference": "58b3a85e7999757d6ad81c787a1fbf5ff6c628c6"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/58b3a85e7999757d6ad81c787a1fbf5ff6c628c6",
- "reference": "58b3a85e7999757d6ad81c787a1fbf5ff6c628c6",
- "shasum": ""
- },
- "type": "library",
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de",
- "role": "lead"
- }
- ],
- "description": "Library that helps with managing the version number of Git-hosted PHP projects",
- "homepage": "https://github.com/sebastianbergmann/version",
- "time": "2015-06-21 13:59:46"
- },
- {
- "name": "symfony/browser-kit",
- "version": "v3.1.7",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/browser-kit.git",
- "reference": "901319a31c9b3cee7857b4aeeb81b5d64dfa34fc"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/browser-kit/zipball/901319a31c9b3cee7857b4aeeb81b5d64dfa34fc",
- "reference": "901319a31c9b3cee7857b4aeeb81b5d64dfa34fc",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9",
- "symfony/dom-crawler": "~2.8|~3.0"
- },
- "require-dev": {
- "symfony/css-selector": "~2.8|~3.0",
- "symfony/process": "~2.8|~3.0"
- },
- "suggest": {
- "symfony/process": ""
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.1-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\BrowserKit\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony BrowserKit Component",
- "homepage": "https://symfony.com/",
- "time": "2016-09-06 11:02:40"
- },
- {
- "name": "symfony/dom-crawler",
- "version": "v3.1.7",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/dom-crawler.git",
- "reference": "1eb3b4d216e8db117218dd2bb7d23dfe67bdf518"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/1eb3b4d216e8db117218dd2bb7d23dfe67bdf518",
- "reference": "1eb3b4d216e8db117218dd2bb7d23dfe67bdf518",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9",
- "symfony/polyfill-mbstring": "~1.0"
- },
- "require-dev": {
- "symfony/css-selector": "~2.8|~3.0"
- },
- "suggest": {
- "symfony/css-selector": ""
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.1-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\DomCrawler\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony DomCrawler Component",
- "homepage": "https://symfony.com/",
- "time": "2016-11-14 16:20:02"
- },
- {
- "name": "symfony/process",
- "version": "v3.1.7",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/process.git",
- "reference": "66de154ae86b1a07001da9fbffd620206e4faf94"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/process/zipball/66de154ae86b1a07001da9fbffd620206e4faf94",
- "reference": "66de154ae86b1a07001da9fbffd620206e4faf94",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.1-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\Process\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony Process Component",
- "homepage": "https://symfony.com/",
- "time": "2016-09-29 14:13:09"
- },
- {
- "name": "symfony/yaml",
- "version": "v3.1.7",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/yaml.git",
- "reference": "9da375317228e54f4ea1b013b30fa47417e84943"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/yaml/zipball/9da375317228e54f4ea1b013b30fa47417e84943",
- "reference": "9da375317228e54f4ea1b013b30fa47417e84943",
- "shasum": ""
- },
- "require": {
- "php": ">=5.5.9"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.1-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Component\\Yaml\\": ""
- },
- "exclude-from-classmap": [
- "/Tests/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Fabien Potencier",
- "email": "fabien@symfony.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony Yaml Component",
- "homepage": "https://symfony.com/",
- "time": "2016-11-18 21:05:29"
- },
- {
- "name": "webmozart/assert",
- "version": "1.2.0",
- "source": {
- "type": "git",
- "url": "https://github.com/webmozart/assert.git",
- "reference": "2db61e59ff05fe5126d152bd0655c9ea113e550f"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/webmozart/assert/zipball/2db61e59ff05fe5126d152bd0655c9ea113e550f",
- "reference": "2db61e59ff05fe5126d152bd0655c9ea113e550f",
- "shasum": ""
- },
- "require": {
- "php": "^5.3.3 || ^7.0"
- },
- "require-dev": {
- "phpunit/phpunit": "^4.6",
- "sebastian/version": "^1.0.1"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.3-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Webmozart\\Assert\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Bernhard Schussek",
- "email": "bschussek@gmail.com"
- }
- ],
- "description": "Assertions to validate method input/output with nice error messages.",
- "keywords": [
- "assert",
- "check",
- "validate"
- ],
- "time": "2016-11-23 20:04:58"
- }
- ],
- "aliases": [],
- "minimum-stability": "stable",
- "stability-flags": [],
- "prefer-stable": false,
- "prefer-lowest": false,
- "platform": [],
- "platform-dev": []
-}
diff --git a/appengine/flexible/staticcontent/index.html.twig b/appengine/flexible/staticcontent/index.html.twig
index 5405693ad0..aa875dc856 100644
--- a/appengine/flexible/staticcontent/index.html.twig
+++ b/appengine/flexible/staticcontent/index.html.twig
@@ -2,7 +2,7 @@
Hello Static Content
This sample demonstrates how to serve static content with nginx, and
-dynamic content with silex.
+dynamic content with SlimPHP.
Enjoy this static image of trees:
diff --git a/appengine/flexible/staticcontent/phpunit.xml b/appengine/flexible/staticcontent/phpunit.xml
deleted file mode 100644
index 8ded898453..0000000000
--- a/appengine/flexible/staticcontent/phpunit.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
-
-
- tests
-
-
-
diff --git a/appengine/flexible/staticcontent/phpunit.xml.dist b/appengine/flexible/staticcontent/phpunit.xml.dist
new file mode 100644
index 0000000000..9e29ed0386
--- /dev/null
+++ b/appengine/flexible/staticcontent/phpunit.xml.dist
@@ -0,0 +1,32 @@
+
+
+
+
+
+ test
+ test/DeployTest.php
+
+
+
+
+ index.php
+
+ ./vendor
+
+
+
+
diff --git a/appengine/flexible/staticcontent/test/DeployTest.php b/appengine/flexible/staticcontent/test/DeployTest.php
new file mode 100644
index 0000000000..f5f399ffd7
--- /dev/null
+++ b/appengine/flexible/staticcontent/test/DeployTest.php
@@ -0,0 +1,38 @@
+client->get('/');
+ $this->assertEquals('200', $resp->getStatusCode(),
+ 'top page status code');
+
+ // Access the static web page.
+ $resp = $this->client->get('/static.html');
+ $this->assertEquals('200', $resp->getStatusCode(),
+ 'static page status code');
+ }
+}
diff --git a/appengine/flexible/staticcontent/tests/DeployTest.php b/appengine/flexible/staticcontent/tests/DeployTest.php
deleted file mode 100644
index 6e6a6002ea..0000000000
--- a/appengine/flexible/staticcontent/tests/DeployTest.php
+++ /dev/null
@@ -1,37 +0,0 @@
-client->get('/');
- $this->assertEquals('200', $resp->getStatusCode(),
- 'top page status code');
-
- // Access the static web page.
- $resp = $this->client->get('/static.html');
- $this->assertEquals('200', $resp->getStatusCode(),
- 'static page status code');
- }
-}
diff --git a/appengine/flexible/staticcontent/tests/bootstrap.php b/appengine/flexible/staticcontent/tests/bootstrap.php
deleted file mode 100644
index 855a955f73..0000000000
--- a/appengine/flexible/staticcontent/tests/bootstrap.php
+++ /dev/null
@@ -1,17 +0,0 @@
-run();
diff --git a/appengine/flexible/staticcontent/web/static.html b/appengine/flexible/staticcontent/web/static.html
index 0647ec2d37..9369eda4f4 100644
--- a/appengine/flexible/staticcontent/web/static.html
+++ b/appengine/flexible/staticcontent/web/static.html
@@ -7,4 +7,4 @@
This is a static html document.
-
\ No newline at end of file
+