diff --git a/README.md b/README.md index 48382f0..cb05574 100644 --- a/README.md +++ b/README.md @@ -6,21 +6,24 @@ This repository contains (almost) everything that makes up Powered by [Sculpin](http://sculpin.io). =) +### Install Composer if not exist. +`curl -s https://getcomposer.org/installer | php` + +Or if you don't have curl: + +`php -r "readfile('https://getcomposer.org/installer');" | php` Build ----- ### If You Already Have Composer - composer install - vendor/bin/sculpin generate --watch --server +`php composer.phar install` + +`vendor/bin/sculpin generate --watch --server` Your newly generated clone of [stackphp.com](http://stackphp.com) is now -accessible at `http://localhost:8000/`. +accessible at `http://127.0.0.1:8080/`. -### If You Need Composer - curl -s https://getcomposer.org/installer | php - php composer.phar install - vendor/bin/sculpin generate --watch --server diff --git a/composer.json b/composer.json index 1e5d0c0..b7ea915 100644 --- a/composer.json +++ b/composer.json @@ -17,7 +17,7 @@ "components/bootstrap": "~2.3.1", "components/jquery": "~1.9.1", "components/highlightjs": "~7.3.0", - "components/font-awesome": "~3.0.2", + "components/font-awesome": "~3.2.1", "dflydev/embedded-composer": "@dev", "composer/composer": "@dev" diff --git a/composer.lock b/composer.lock index 6f238df..0fcf524 100644 --- a/composer.lock +++ b/composer.lock @@ -1,9 +1,10 @@ { "_readme": [ "This file locks the dependencies of your project to a known state", - "Read more about it at http://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file" + "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file", + "This file is @generated automatically" ], - "hash": "cd4c8c35181a9e7793bb2349a8d12f7c", + "content-hash": "66fe931e0f3001db34913be081edb463", "packages": [ { "name": "components/bootstrap", @@ -11,12 +12,12 @@ "source": { "type": "git", "url": "https://github.com/components/bootstrap.git", - "reference": "2.3.2" + "reference": "4e517c991623b3bd913e2becd44831b2c9b0be90" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/components/bootstrap/zipball/2.3.2", - "reference": "2.3.2", + "url": "https://api.github.com/repos/components/bootstrap/zipball/4e517c991623b3bd913e2becd44831b2c9b0be90", + "reference": "4e517c991623b3bd913e2becd44831b2c9b0be90", "shasum": "" }, "require": { @@ -58,20 +59,20 @@ "bootstrap", "css" ], - "time": "2013-06-05 15:22:39" + "time": "2013-07-18T20:01:48+00:00" }, { "name": "components/font-awesome", - "version": "3.0.2", + "version": "3.2.1", "source": { "type": "git", "url": "https://github.com/components/font-awesome.git", - "reference": "3.0.2" + "reference": "44e665c187000d03eb055a14eeb74f89445212e6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/components/font-awesome/zipball/3.0.2", - "reference": "3.0.2", + "url": "https://api.github.com/repos/components/font-awesome/zipball/44e665c187000d03eb055a14eeb74f89445212e6", + "reference": "44e665c187000d03eb055a14eeb74f89445212e6", "shasum": "" }, "require": { @@ -80,7 +81,7 @@ "type": "component", "extra": { "branch-alias": { - "dev-master": "3.0-dev" + "dev-master": "3.2-dev" }, "component": { "styles": [ @@ -88,7 +89,7 @@ ], "files": [ "css/font-awesome.min.css", - "css/font-awesome-ie7.min.css", + "css/font-awesome-ie7.*", "font/*" ] } @@ -99,7 +100,7 @@ "OFL-1.1" ], "description": "The iconic font designed for use with Twitter Bootstrap.", - "time": "2013-05-02 22:22:19" + "time": "2013-07-27T07:29:06+00:00" }, { "name": "components/highlightjs", @@ -107,12 +108,12 @@ "source": { "type": "git", "url": "https://github.com/components/highlightjs.git", - "reference": "7.3.0" + "reference": "60f5b260c3ae12578f7241e15e8102e9b65c4d3b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/components/highlightjs/zipball/7.3.0", - "reference": "7.3.0", + "url": "https://api.github.com/repos/components/highlightjs/zipball/60f5b260c3ae12578f7241e15e8102e9b65c4d3b", + "reference": "60f5b260c3ae12578f7241e15e8102e9b65c4d3b", "shasum": "" }, "require": { @@ -144,7 +145,7 @@ } ], "description": "Highlight.js highlights syntax in code examples on blogs, forums and in fact on any web pages.", - "time": "2013-04-24 15:11:49" + "time": "2013-04-24T15:11:49+00:00" }, { "name": "components/jquery", @@ -152,12 +153,12 @@ "source": { "type": "git", "url": "https://github.com/components/jquery.git", - "reference": "1.9.1" + "reference": "ae5c0c13cf163b3751ce55f9d9e97c1ba7ff796d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/components/jquery/zipball/1.9.1", - "reference": "1.9.1", + "url": "https://api.github.com/repos/components/jquery/zipball/ae5c0c13cf163b3751ce55f9d9e97c1ba7ff796d", + "reference": "ae5c0c13cf163b3751ce55f9d9e97c1ba7ff796d", "shasum": "" }, "require": { @@ -172,7 +173,8 @@ "files": [ "jquery.min.js", "jquery-migrate.js", - "jquery-migrate.min.js" + "jquery-migrate.min.js", + "jquery.min.map" ] } }, @@ -183,13 +185,71 @@ "authors": [ { "name": "John Resig", - "email": "jeresig@gmail.com", - "homepage": "http://ejohn.org/" + "email": "jeresig@gmail.com" } ], "description": "jQuery JavaScript Library", "homepage": "http://jquery.com", - "time": "2013-04-22 17:13:31" + "time": "2014-10-11T11:52:45+00:00" + }, + { + "name": "composer/ca-bundle", + "version": "1.0.8", + "source": { + "type": "git", + "url": "https://github.com/composer/ca-bundle.git", + "reference": "9dd73a03951357922d8aee6cc084500de93e2343" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/composer/ca-bundle/zipball/9dd73a03951357922d8aee6cc084500de93e2343", + "reference": "9dd73a03951357922d8aee6cc084500de93e2343", + "shasum": "" + }, + "require": { + "ext-openssl": "*", + "ext-pcre": "*", + "php": "^5.3.2 || ^7.0" + }, + "require-dev": { + "phpunit/phpunit": "^4.5", + "psr/log": "^1.0", + "symfony/process": "^2.5 || ^3.0" + }, + "suggest": { + "symfony/process": "This is necessary to reliably check whether openssl_x509_parse is vulnerable on older php versions, but can be ignored on PHP 5.5.6+" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.x-dev" + } + }, + "autoload": { + "psr-4": { + "Composer\\CaBundle\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Jordi Boggiano", + "email": "j.boggiano@seld.be", + "homepage": "http://seld.be" + } + ], + "description": "Lets you find a path to the system CA bundle, and includes a fallback to the Mozilla CA bundle.", + "keywords": [ + "cabundle", + "cacert", + "certificate", + "ssl", + "tls" + ], + "time": "2017-09-11T07:24:36+00:00" }, { "name": "composer/composer", @@ -197,28 +257,37 @@ "source": { "type": "git", "url": "https://github.com/composer/composer.git", - "reference": "1a7f734bc78df99553a742dfac6651a4863c00c6" + "reference": "edece864e7e4c668dcad6601df70777882d22116" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/composer/zipball/1a7f734bc78df99553a742dfac6651a4863c00c6", - "reference": "1a7f734bc78df99553a742dfac6651a4863c00c6", + "url": "https://api.github.com/repos/composer/composer/zipball/edece864e7e4c668dcad6601df70777882d22116", + "reference": "edece864e7e4c668dcad6601df70777882d22116", "shasum": "" }, "require": { - "justinrainbow/json-schema": "1.1.*", - "php": ">=5.3.2", - "seld/jsonlint": "1.*", - "symfony/console": ">=2.3,<3.0", - "symfony/finder": ">=2.1,<3.0", - "symfony/process": ">=2.1,<3.0" + "composer/ca-bundle": "^1.0", + "composer/semver": "^1.0", + "composer/spdx-licenses": "^1.0", + "justinrainbow/json-schema": "^3.0 || ^4.0 || ^5.0", + "php": "^5.3.2 || ^7.0", + "psr/log": "^1.0", + "seld/cli-prompt": "^1.0", + "seld/jsonlint": "^1.4", + "seld/phar-utils": "^1.0", + "symfony/console": "^2.7 || ^3.0", + "symfony/filesystem": "^2.7 || ^3.0", + "symfony/finder": "^2.7 || ^3.0", + "symfony/process": "^2.7 || ^3.0" }, "require-dev": { - "phpunit/phpunit": ">=3.7.10.0,<3.8" + "phpunit/phpunit": "^4.5 || ^5.0.5", + "phpunit/phpunit-mock-objects": "^2.3 || ^3.0" }, "suggest": { "ext-openssl": "Enabling the openssl extension allows you to access https URLs for repositories and packages", - "ext-zip": "Enabling the zip extension allows you to unzip archives, and allows gzip compression of all internet traffic" + "ext-zip": "Enabling the zip extension allows you to unzip archives", + "ext-zlib": "Allow gzip compression of HTTP requests" }, "bin": [ "bin/composer" @@ -226,12 +295,12 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.0-dev" + "dev-master": "1.6-dev" } }, "autoload": { - "psr-0": { - "Composer": "src/" + "psr-4": { + "Composer\\": "src/Composer" } }, "notification-url": "https://packagist.org/downloads/", @@ -239,26 +308,148 @@ "MIT" ], "authors": [ + { + "name": "Nils Adermann", + "email": "naderman@naderman.de", + "homepage": "http://www.naderman.de" + }, { "name": "Jordi Boggiano", "email": "j.boggiano@seld.be", - "homepage": "http://seld.be", - "role": "Developer" + "homepage": "http://seld.be" + } + ], + "description": "Composer helps you declare, manage and install dependencies of PHP projects, ensuring you have the right stack everywhere.", + "homepage": "https://getcomposer.org/", + "keywords": [ + "autoload", + "dependency", + "package" + ], + "time": "2017-09-19T08:42:10+00:00" + }, + { + "name": "composer/semver", + "version": "1.4.2", + "source": { + "type": "git", + "url": "https://github.com/composer/semver.git", + "reference": "c7cb9a2095a074d131b65a8a0cd294479d785573" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/composer/semver/zipball/c7cb9a2095a074d131b65a8a0cd294479d785573", + "reference": "c7cb9a2095a074d131b65a8a0cd294479d785573", + "shasum": "" + }, + "require": { + "php": "^5.3.2 || ^7.0" + }, + "require-dev": { + "phpunit/phpunit": "^4.5 || ^5.0.5", + "phpunit/phpunit-mock-objects": "2.3.0 || ^3.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.x-dev" + } + }, + "autoload": { + "psr-4": { + "Composer\\Semver\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nils Adermann", + "email": "naderman@naderman.de", + "homepage": "http://www.naderman.de" + }, + { + "name": "Jordi Boggiano", + "email": "j.boggiano@seld.be", + "homepage": "http://seld.be" }, + { + "name": "Rob Bast", + "email": "rob.bast@gmail.com", + "homepage": "http://robbast.nl" + } + ], + "description": "Semver library that offers utilities, version constraint parsing and validation.", + "keywords": [ + "semantic", + "semver", + "validation", + "versioning" + ], + "time": "2016-08-30T16:08:34+00:00" + }, + { + "name": "composer/spdx-licenses", + "version": "1.1.6", + "source": { + "type": "git", + "url": "https://github.com/composer/spdx-licenses.git", + "reference": "2603a0d7ddc00a015deb576fa5297ca43dee6b1c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/composer/spdx-licenses/zipball/2603a0d7ddc00a015deb576fa5297ca43dee6b1c", + "reference": "2603a0d7ddc00a015deb576fa5297ca43dee6b1c", + "shasum": "" + }, + "require": { + "php": "^5.3.2 || ^7.0" + }, + "require-dev": { + "phpunit/phpunit": "^4.5 || ^5.0.5", + "phpunit/phpunit-mock-objects": "2.3.0 || ^3.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.x-dev" + } + }, + "autoload": { + "psr-4": { + "Composer\\Spdx\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ { "name": "Nils Adermann", "email": "naderman@naderman.de", "homepage": "http://www.naderman.de" + }, + { + "name": "Jordi Boggiano", + "email": "j.boggiano@seld.be", + "homepage": "http://seld.be" + }, + { + "name": "Rob Bast", + "email": "rob.bast@gmail.com", + "homepage": "http://robbast.nl" } ], - "description": "Dependency Manager", - "homepage": "http://getcomposer.org/", + "description": "SPDX licenses list and validation library.", "keywords": [ - "autoload", - "dependency", - "package" + "license", + "spdx", + "validator" ], - "time": "2013-06-04 13:39:55" + "time": "2017-04-03T19:08:52+00:00" }, { "name": "dflydev/ant-path-matcher", @@ -266,12 +457,12 @@ "source": { "type": "git", "url": "https://github.com/dflydev/dflydev-util-antPathMatcher.git", - "reference": "v1.0.3" + "reference": "66e0ed7cd07e1d989b170472d000b99ab8c9e33e" }, "dist": { "type": "zip", - "url": "https://github.com/dflydev/dflydev-util-antPathMatcher/archive/v1.0.3.zip", - "reference": "v1.0.3", + "url": "https://api.github.com/repos/dflydev/dflydev-util-antPathMatcher/zipball/66e0ed7cd07e1d989b170472d000b99ab8c9e33e", + "reference": "66e0ed7cd07e1d989b170472d000b99ab8c9e33e", "shasum": "" }, "require": { @@ -307,7 +498,7 @@ "path", "pattern" ], - "time": "2012-12-03 05:03:00" + "time": "2012-12-03T05:03:00+00:00" }, { "name": "dflydev/apache-mime-types", @@ -315,12 +506,12 @@ "source": { "type": "git", "url": "https://github.com/dflydev/dflydev-apache-mime-types.git", - "reference": "v1.0.1" + "reference": "f30a57e59b7476e4c5270b6a0727d79c9c0eb861" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/dflydev/dflydev-apache-mime-types/zipball/v1.0.1", - "reference": "v1.0.1", + "url": "https://api.github.com/repos/dflydev/dflydev-apache-mime-types/zipball/f30a57e59b7476e4c5270b6a0727d79c9c0eb861", + "reference": "f30a57e59b7476e4c5270b6a0727d79c9c0eb861", "shasum": "" }, "require": { @@ -362,7 +553,7 @@ "mime", "mimetypes" ], - "time": "2013-05-14 02:02:01" + "time": "2013-05-14T02:02:01+00:00" }, { "name": "dflydev/canal", @@ -370,12 +561,12 @@ "source": { "type": "git", "url": "https://github.com/dflydev/dflydev-canal.git", - "reference": "v1.0.0" + "reference": "668af213d86f0f378f5dcce6799b974044fa6a51" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/dflydev/dflydev-canal/zipball/v1.0.0", - "reference": "v1.0.0", + "url": "https://api.github.com/repos/dflydev/dflydev-canal/zipball/668af213d86f0f378f5dcce6799b974044fa6a51", + "reference": "668af213d86f0f378f5dcce6799b974044fa6a51", "shasum": "" }, "require": { @@ -417,20 +608,20 @@ "mime", "type" ], - "time": "2013-05-14 05:22:25" + "time": "2013-05-14T05:22:25+00:00" }, { "name": "dflydev/dot-access-configuration", - "version": "v1.0.0", + "version": "v1.0.2", "source": { "type": "git", - "url": "https://github.com/dflydev/dflydev-dot-access-configuration", - "reference": "v1.0.0" + "url": "https://github.com/dflydev/dflydev-dot-access-configuration.git", + "reference": "ae6e7138b1d9063d343322cca63994ee1ac5161d" }, "dist": { "type": "zip", - "url": "https://github.com/dflydev/dflydev-dot-access-configuration/archive/v1.0.0.zip", - "reference": "v1.0.0", + "url": "https://api.github.com/repos/dflydev/dflydev-dot-access-configuration/zipball/ae6e7138b1d9063d343322cca63994ee1ac5161d", + "reference": "ae6e7138b1d9063d343322cca63994ee1ac5161d", "shasum": "" }, "require": { @@ -439,7 +630,7 @@ "php": ">=5.3.2" }, "require-dev": { - "symfony/yaml": ">=2.1,<3.0" + "symfony/yaml": "~2.1" }, "suggest": { "symfony/yaml": "Required for using the YAML Configuration Builders" @@ -477,20 +668,20 @@ "config", "configuration" ], - "time": "2012-10-21 18:33:18" + "time": "2016-12-12T17:43:40+00:00" }, { "name": "dflydev/dot-access-data", - "version": "v1.0.0", + "version": "v1.1.0", "source": { "type": "git", - "url": "https://github.com/dflydev/dflydev-dot-access-data", - "reference": "v1.0.0" + "url": "https://github.com/dflydev/dflydev-dot-access-data.git", + "reference": "3fbd874921ab2c041e899d044585a2ab9795df8a" }, "dist": { "type": "zip", - "url": "https://github.com/dflydev/dflydev-dot-access-data/zipball/v1.0.0", - "reference": "v1.0.0", + "url": "https://api.github.com/repos/dflydev/dflydev-dot-access-data/zipball/3fbd874921ab2c041e899d044585a2ab9795df8a", + "reference": "3fbd874921ab2c041e899d044585a2ab9795df8a", "shasum": "" }, "require": { @@ -521,6 +712,11 @@ "name": "Beau Simensen", "email": "beau@dflydev.com", "homepage": "http://beausimensen.com" + }, + { + "name": "Carlos Frutos", + "email": "carlos@kiwing.it", + "homepage": "https://github.com/cfrutos" } ], "description": "Given a deep data structure, access data by dot notation.", @@ -531,7 +727,7 @@ "dot", "notation" ], - "time": "2012-07-17 13:32:32" + "time": "2017-01-20T21:14:22+00:00" }, { "name": "dflydev/embedded-composer", @@ -539,18 +735,17 @@ "source": { "type": "git", "url": "https://github.com/dflydev/dflydev-embedded-composer.git", - "reference": "4359e67e66a248110f61779bc2416bf8a3a65dd2" + "reference": "c9ca20fd3ccfbfb7bfcc3c65c33191f458c8a3a7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/dflydev/dflydev-embedded-composer/zipball/4359e67e66a248110f61779bc2416bf8a3a65dd2", - "reference": "4359e67e66a248110f61779bc2416bf8a3a65dd2", + "url": "https://api.github.com/repos/dflydev/dflydev-embedded-composer/zipball/c9ca20fd3ccfbfb7bfcc3c65c33191f458c8a3a7", + "reference": "c9ca20fd3ccfbfb7bfcc3c65c33191f458c8a3a7", "shasum": "" }, "require": { - "composer/composer": "1.0.*@dev", - "php": ">=5.3.2", - "seld/jsonlint": "1.*" + "composer/composer": "^1.0", + "php": ">=5.3.2" }, "replace": { "dflydev/embedded-composer-bundle": "self.version", @@ -558,9 +753,9 @@ "dflydev/embedded-composer-core": "self.version" }, "require-dev": { - "phpunit/phpunit": ">=3.7.10.0,<3.8", - "symfony/console": ">=2.3,<3.0", - "symfony/http-kernel": ">=2.1,<3.0" + "phpunit/phpunit": "~3.7.10", + "symfony/console": "~2.3@dev", + "symfony/http-kernel": "~2.1" }, "suggest": { "symfony/console": "~2.3", @@ -599,20 +794,20 @@ "embedded", "extensibility" ], - "time": "2013-05-21 17:09:09" + "time": "2016-05-21T00:49:42+00:00" }, { "name": "dflydev/placeholder-resolver", "version": "v1.0.2", "source": { "type": "git", - "url": "https://github.com/dflydev/dflydev-placeholder-resolver", - "reference": "v1.0.2" + "url": "https://github.com/dflydev/dflydev-placeholder-resolver.git", + "reference": "c498d0cae91b1bb36cc7d60906dab8e62bb7c356" }, "dist": { "type": "zip", - "url": "https://github.com/dflydev/dflydev-placeholder-resolver/archive/v1.0.2.zip", - "reference": "v1.0.2", + "url": "https://api.github.com/repos/dflydev/dflydev-placeholder-resolver/zipball/c498d0cae91b1bb36cc7d60906dab8e62bb7c356", + "reference": "c498d0cae91b1bb36cc7d60906dab8e62bb7c356", "shasum": "" }, "require": { @@ -651,25 +846,25 @@ "placeholder", "resolver" ], - "time": "2012-10-28 14:08:28" + "time": "2012-10-28T21:08:28+00:00" }, { "name": "dflydev/symfony-finder-factory", "version": "v1.0.0", "source": { "type": "git", - "url": "https://github.com/dflydev/dflydev-symfony-finder-factory", - "reference": "v1.0.0" + "url": "https://github.com/dflydev/dflydev-symfony-finder-factory.git", + "reference": "101b2decf308bfac9c9bbc52be1738e1fa863a8a" }, "dist": { "type": "zip", - "url": "https://github.com/dflydev/dflydev-symfony-finder-factory/archive/v1.0.0.zip", - "reference": "v1.0.0", + "url": "https://api.github.com/repos/dflydev/dflydev-symfony-finder-factory/zipball/101b2decf308bfac9c9bbc52be1738e1fa863a8a", + "reference": "101b2decf308bfac9c9bbc52be1738e1fa863a8a", "shasum": "" }, "require": { "php": ">=5.3.2", - "symfony/finder": ">=2.0,<3.0" + "symfony/finder": "~2.0" }, "type": "library", "extra": { @@ -704,123 +899,104 @@ "finder", "syfony" ], - "time": "2012-11-09 16:45:28" + "time": "2012-11-09T16:45:28+00:00" }, { - "name": "evenement/evenement", - "version": "v1.0.0", + "name": "doctrine/inflector", + "version": "v1.0.1", "source": { "type": "git", - "url": "https://github.com/igorw/evenement", - "reference": "v1.0.0" + "url": "https://github.com/doctrine/inflector.git", + "reference": "0bcb2e79d8571787f18b7eb036ed3d004908e604" }, "dist": { "type": "zip", - "url": "https://github.com/igorw/evenement/zipball/v1.0.0", - "reference": "v1.0.0", + "url": "https://api.github.com/repos/doctrine/inflector/zipball/0bcb2e79d8571787f18b7eb036ed3d004908e604", + "reference": "0bcb2e79d8571787f18b7eb036ed3d004908e604", "shasum": "" }, "require": { - "php": ">=5.3.0" - }, - "type": "library", - "autoload": { - "psr-0": { - "Evenement": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Igor Wiedler", - "email": "igor@wiedler.ch", - "homepage": "http://wiedler.ch/igor/" - } - ], - "description": "Événement is a very simple event dispatching library for PHP 5.3", - "keywords": [ - "event-dispatcher" - ], - "time": "2012-05-30 08:01:08" - }, - { - "name": "guzzle/common", - "version": "v3.0.7", - "target-dir": "Guzzle/Common", - "source": { - "type": "git", - "url": "git://github.com/guzzle/common.git", - "reference": "v3.0.7" - }, - "dist": { - "type": "zip", - "url": "https://github.com/guzzle/common/archive/v3.0.7.zip", - "reference": "v3.0.7", - "shasum": "" + "php": ">=5.3.2" }, - "require": { - "php": ">=5.3.2", - "symfony/event-dispatcher": ">=2.1" + "require-dev": { + "phpunit/phpunit": "4.*" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "3.0-dev" + "dev-master": "1.0.x-dev" } }, "autoload": { "psr-0": { - "Guzzle\\Common": "" + "Doctrine\\Common\\Inflector\\": "lib/" } }, "notification-url": "https://packagist.org/downloads/", "license": [ "MIT" ], - "description": "Common libraries used by Guzzle", - "homepage": "http://guzzlephp.org/", + "authors": [ + { + "name": "Roman Borschel", + "email": "roman@code-factory.org" + }, + { + "name": "Benjamin Eberlei", + "email": "kontakt@beberlei.de" + }, + { + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" + }, + { + "name": "Jonathan Wage", + "email": "jonwage@gmail.com" + }, + { + "name": "Johannes Schmitt", + "email": "schmittjoh@gmail.com" + } + ], + "description": "Common String Manipulations with regard to casing and singular/plural rules.", + "homepage": "http://www.doctrine-project.org", "keywords": [ - "collection", - "common", - "event", - "exception" + "inflection", + "pluralize", + "singularize", + "string" ], - "time": "2012-12-19 23:06:35" + "time": "2014-12-20T21:24:13+00:00" }, { - "name": "guzzle/http", - "version": "v3.0.7", - "target-dir": "Guzzle/Http", + "name": "evenement/evenement", + "version": "v2.1.0", "source": { "type": "git", - "url": "git://github.com/guzzle/http.git", - "reference": "v3.0.7" + "url": "https://github.com/igorw/evenement.git", + "reference": "6ba9a777870ab49f417e703229d53931ed40fd7a" }, "dist": { "type": "zip", - "url": "https://github.com/guzzle/http/archive/v3.0.7.zip", - "reference": "v3.0.7", + "url": "https://api.github.com/repos/igorw/evenement/zipball/6ba9a777870ab49f417e703229d53931ed40fd7a", + "reference": "6ba9a777870ab49f417e703229d53931ed40fd7a", "shasum": "" }, "require": { - "ext-curl": "*", - "guzzle/common": "self.version", - "guzzle/parser": "self.version", - "guzzle/stream": "self.version", - "php": ">=5.3.2" + "php": ">=5.4.0" + }, + "require-dev": { + "phpunit/phpunit": "^6.0||^5.7||^4.8.35" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "3.0-dev" + "dev-master": "2.0-dev" } }, "autoload": { "psr-0": { - "Guzzle\\Http": "" + "Evenement": "src" } }, "notification-url": "https://packagist.org/downloads/", @@ -829,94 +1005,51 @@ ], "authors": [ { - "name": "Michael Dowling", - "email": "mtdowling@gmail.com", - "homepage": "https://github.com/mtdowling" + "name": "Igor Wiedler", + "email": "igor@wiedler.ch" } ], - "description": "HTTP libraries used by Guzzle", - "homepage": "http://guzzlephp.org/", + "description": "Événement is a very simple event dispatching library for PHP", "keywords": [ - "Guzzle", - "client", - "curl", - "http", - "http client" + "event-dispatcher", + "event-emitter" ], - "time": "2012-12-14 00:49:17" + "time": "2017-07-17T17:39:19+00:00" }, { - "name": "guzzle/parser", - "version": "v3.0.7", - "target-dir": "Guzzle/Parser", + "name": "justinrainbow/json-schema", + "version": "5.2.6", "source": { "type": "git", - "url": "git://github.com/guzzle/parser.git", - "reference": "v3.0.7" + "url": "https://github.com/justinrainbow/json-schema.git", + "reference": "d283e11b6e14c6f4664cf080415c4341293e5bbd" }, "dist": { "type": "zip", - "url": "https://github.com/guzzle/parser/archive/v3.0.7.zip", - "reference": "v3.0.7", + "url": "https://api.github.com/repos/justinrainbow/json-schema/zipball/d283e11b6e14c6f4664cf080415c4341293e5bbd", + "reference": "d283e11b6e14c6f4664cf080415c4341293e5bbd", "shasum": "" }, "require": { - "php": ">=5.3.2" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.0-dev" - } + "php": ">=5.3.3" }, - "autoload": { - "psr-0": { - "Guzzle\\Parser": "" - } + "require-dev": { + "friendsofphp/php-cs-fixer": "^2.1", + "json-schema/json-schema-test-suite": "1.2.0", + "phpunit/phpunit": "^4.8.22" }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "description": "Interchangeable parsers used by Guzzle", - "homepage": "http://guzzlephp.org/", - "keywords": [ - "URI Template", - "cookie", - "http", - "message", - "url" + "bin": [ + "bin/validate-json" ], - "time": "2012-12-07 16:45:11" - }, - { - "name": "guzzle/stream", - "version": "v3.0.7", - "target-dir": "Guzzle/Stream", - "source": { - "type": "git", - "url": "https://github.com/guzzle/stream", - "reference": "v3.0.7" - }, - "dist": { - "type": "zip", - "url": "https://github.com/guzzle/stream/archive/v3.0.7.zip", - "reference": "v3.0.7", - "shasum": "" - }, - "require": { - "guzzle/common": "self.version", - "php": ">=5.3.2" - }, "type": "library", "extra": { "branch-alias": { - "dev-master": "3.0-dev" + "dev-master": "5.0.x-dev" } }, "autoload": { - "psr-0": { - "Guzzle\\Stream": "" + "psr-4": { + "JsonSchema\\": "src/JsonSchema/" } }, "notification-url": "https://packagist.org/downloads/", @@ -924,54 +1057,6 @@ "MIT" ], "authors": [ - { - "name": "Michael Dowling", - "email": "mtdowling@gmail.com", - "homepage": "https://github.com/mtdowling" - } - ], - "description": "Guzzle stream wrapper component", - "homepage": "http://guzzlephp.org/", - "keywords": [ - "Guzzle", - "component", - "stream" - ], - "time": "2012-12-07 16:45:11" - }, - { - "name": "justinrainbow/json-schema", - "version": "1.1.0", - "source": { - "type": "git", - "url": "git://github.com/justinrainbow/json-schema.git", - "reference": "v1.1.0" - }, - "dist": { - "type": "zip", - "url": "https://github.com/justinrainbow/json-schema/archive/v1.1.0.zip", - "reference": "v1.1.0", - "shasum": "" - }, - "require": { - "php": ">=5.3.0" - }, - "type": "library", - "autoload": { - "psr-0": { - "JsonSchema": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "NewBSD" - ], - "authors": [ - { - "name": "Igor Wiedler", - "email": "igor@wiedler.ch", - "homepage": "http://wiedler.ch/igor/" - }, { "name": "Bruno Prieto Reis", "email": "bruno.p.reis@gmail.com" @@ -980,10 +1065,13 @@ "name": "Justin Rainbow", "email": "justin.rainbow@gmail.com" }, + { + "name": "Igor Wiedler", + "email": "igor@wiedler.ch" + }, { "name": "Robert Schönthal", - "email": "seroscho@googlemail.com", - "homepage": "http://digitalkaoz.net" + "email": "seroscho@googlemail.com" } ], "description": "A library to validate a json schema.", @@ -992,49 +1080,55 @@ "json", "schema" ], - "time": "2012-01-03 00:33:17" + "time": "2017-10-21T13:15:38+00:00" }, { "name": "kriswallsmith/assetic", - "version": "v1.1.1", + "version": "v1.4.0", "source": { "type": "git", "url": "https://github.com/kriswallsmith/assetic.git", - "reference": "v1.1.1" + "reference": "e911c437dbdf006a8f62c2f59b15b2d69a5e0aa1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/kriswallsmith/assetic/zipball/v1.1.1", - "reference": "v1.1.1", + "url": "https://api.github.com/repos/kriswallsmith/assetic/zipball/e911c437dbdf006a8f62c2f59b15b2d69a5e0aa1", + "reference": "e911c437dbdf006a8f62c2f59b15b2d69a5e0aa1", "shasum": "" }, "require": { "php": ">=5.3.1", - "symfony/process": ">=2.1,<3.0" + "symfony/process": "~2.1|~3.0" + }, + "conflict": { + "twig/twig": "<1.27" }, "require-dev": { - "cssmin/cssmin": "*", - "joliclic/javascript-packer": "*", - "kamicane/packager": "*", - "leafo/lessphp": "*", - "leafo/scssphp": "*", - "leafo/scssphp-compass": "*", - "mrclay/minify": "*", - "phpunit/phpunit": ">=3.7,<4.0", - "ptachoire/cssembed": "*", - "twig/twig": ">=1.6,<2.0" + "leafo/lessphp": "^0.3.7", + "leafo/scssphp": "~0.1", + "meenie/javascript-packer": "^1.1", + "mrclay/minify": "<2.3", + "natxet/cssmin": "3.0.4", + "patchwork/jsqueeze": "~1.0|~2.0", + "phpunit/phpunit": "~4.8 || ^5.6", + "psr/log": "~1.0", + "ptachoire/cssembed": "~1.0", + "symfony/phpunit-bridge": "~2.7|~3.0", + "twig/twig": "~1.23|~2.0", + "yfix/packager": "dev-master" }, "suggest": { "leafo/lessphp": "Assetic provides the integration with the lessphp LESS compiler", "leafo/scssphp": "Assetic provides the integration with the scssphp SCSS compiler", "leafo/scssphp-compass": "Assetic provides the integration with the SCSS compass plugin", + "patchwork/jsqueeze": "Assetic provides the integration with the JSqueeze JavaScript compressor", "ptachoire/cssembed": "Assetic provides the integration with phpcssembed to embed data uris", "twig/twig": "Assetic provides the integration with the Twig templating engine" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.1-dev" + "dev-master": "1.4-dev" } }, "autoload": { @@ -1063,20 +1157,20 @@ "compression", "minification" ], - "time": "2013-06-01 22:13:43" + "time": "2016-11-11T18:43:20+00:00" }, { "name": "michelf/php-markdown", - "version": "1.3", + "version": "1.7.0", "source": { "type": "git", "url": "https://github.com/michelf/php-markdown.git", - "reference": "1.3" + "reference": "1f51cc520948f66cd2af8cbc45a5ee175e774220" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/michelf/php-markdown/zipball/1.3", - "reference": "1.3", + "url": "https://api.github.com/repos/michelf/php-markdown/zipball/1f51cc520948f66cd2af8cbc45a5ee175e774220", + "reference": "1f51cc520948f66cd2af8cbc45a5ee175e774220", "shasum": "" }, "require": { @@ -1085,7 +1179,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-lib": "1.3.x-dev" + "dev-lib": "1.4.x-dev" } }, "autoload": { @@ -1101,38 +1195,44 @@ { "name": "Michel Fortin", "email": "michel.fortin@michelf.ca", - "homepage": "http://michelf.ca/", + "homepage": "https://michelf.ca/", "role": "Developer" }, { "name": "John Gruber", - "homepage": "http://daringfireball.net/" + "homepage": "https://daringfireball.net/" } ], "description": "PHP Markdown", - "homepage": "http://michelf.ca/projects/php-markdown/", + "homepage": "https://michelf.ca/projects/php-markdown/", "keywords": [ "markdown" ], - "time": "2013-04-11 18:53:11" + "time": "2016-10-29T18:58:20+00:00" }, { "name": "netcarver/textile", - "version": "v3.5.1", + "version": "v3.5.5", "source": { "type": "git", - "url": "https://github.com/netcarver/textile", - "reference": "v3.5.1" + "url": "https://github.com/textile/php-textile.git", + "reference": "1b95af533775316d09bd36a38bee2c0b804add12" }, "dist": { "type": "zip", - "url": "https://github.com/netcarver/textile/archive/v3.5.1.zip", - "reference": "v3.5.1", + "url": "https://api.github.com/repos/textile/php-textile/zipball/1b95af533775316d09bd36a38bee2c0b804add12", + "reference": "1b95af533775316d09bd36a38bee2c0b804add12", "shasum": "" }, "require": { "php": ">=5.3.0" }, + "require-dev": { + "phpunit/phpunit": "3.7.*", + "satooshi/php-coveralls": "0.6.*", + "squizlabs/php_codesniffer": "1.5.*", + "symfony/yaml": "2.3.*" + }, "type": "library", "extra": { "branch-alias": { @@ -1148,28 +1248,97 @@ "license": [ "BSD-3-Clause" ], - "description": "A lightweight markup language that takes (almost) plaintext and converts it into well formed HTML.", - "homepage": "https://github.com/netcarver/textile", - "time": "2013-01-01 17:29:35" + "description": "Textile markup language parser", + "homepage": "https://github.com/textile/php-textile", + "keywords": [ + "document", + "format", + "html", + "language", + "markup", + "parser", + "php-textile", + "plaintext", + "textile" + ], + "time": "2014-01-02T09:39:06+00:00" + }, + { + "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-06T14:39:51+00:00" }, { "name": "psr/log", - "version": "1.0.0", + "version": "1.0.2", "source": { "type": "git", - "url": "https://github.com/php-fig/log", - "reference": "1.0.0" + "url": "https://github.com/php-fig/log.git", + "reference": "4ebe3a8bf773a19edfe0a84b6585ba3d401b724d" }, "dist": { "type": "zip", - "url": "https://github.com/php-fig/log/archive/1.0.0.zip", - "reference": "1.0.0", + "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-0": { - "Psr\\Log\\": "" + "psr-4": { + "Psr\\Log\\": "Psr/Log/" } }, "notification-url": "https://packagist.org/downloads/", @@ -1183,44 +1352,43 @@ } ], "description": "Common interface for logging libraries", + "homepage": "https://github.com/php-fig/log", "keywords": [ "log", "psr", "psr-3" ], - "time": "2012-12-21 11:40:51" + "time": "2016-10-10T12:19:37+00:00" }, { "name": "react/event-loop", - "version": "v0.2.7", - "target-dir": "React/EventLoop", + "version": "v0.4.3", "source": { "type": "git", - "url": "https://github.com/reactphp/event-loop", - "reference": "v0.2.7" + "url": "https://github.com/reactphp/event-loop.git", + "reference": "8bde03488ee897dc6bb3d91e4e17c353f9c5252f" }, "dist": { "type": "zip", - "url": "https://github.com/reactphp/event-loop/archive/v0.2.7.zip", - "reference": "v0.2.7", + "url": "https://api.github.com/repos/reactphp/event-loop/zipball/8bde03488ee897dc6bb3d91e4e17c353f9c5252f", + "reference": "8bde03488ee897dc6bb3d91e4e17c353f9c5252f", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": ">=5.4.0" + }, + "require-dev": { + "phpunit/phpunit": "~4.8" }, "suggest": { + "ext-event": "~1.0", "ext-libev": "*", - "ext-libevent": ">=0.0.5" + "ext-libevent": ">=0.1.0" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "0.2-dev" - } - }, "autoload": { - "psr-0": { - "React\\EventLoop": "" + "psr-4": { + "React\\EventLoop\\": "src" } }, "notification-url": "https://packagist.org/downloads/", @@ -1229,40 +1397,39 @@ ], "description": "Event loop abstraction layer that libraries can use for evented I/O.", "keywords": [ + "asynchronous", "event-loop" ], - "time": "2013-01-05 11:41:26" + "time": "2017-04-27T10:56:23+00:00" }, { "name": "react/http", - "version": "v0.2.7", - "target-dir": "React/Http", + "version": "v0.4.4", "source": { "type": "git", - "url": "https://github.com/reactphp/http", - "reference": "v0.2.7" + "url": "https://github.com/reactphp/http.git", + "reference": "aac319bd789cbc7b478d42cde2d03596e97e3222" }, "dist": { "type": "zip", - "url": "https://github.com/reactphp/http/archive/v0.2.7.zip", - "reference": "v0.2.7", + "url": "https://api.github.com/repos/reactphp/http/zipball/aac319bd789cbc7b478d42cde2d03596e97e3222", + "reference": "aac319bd789cbc7b478d42cde2d03596e97e3222", "shasum": "" }, "require": { - "guzzle/http": "3.0.*", - "guzzle/parser": "3.0.*", - "php": ">=5.3.3", - "react/socket": "0.2.*" + "evenement/evenement": "^2.0 || ^1.0", + "php": ">=5.3.0", + "react/socket": "^0.4", + "react/stream": "^0.4.4", + "ringcentral/psr7": "^1.2" }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "0.2-dev" - } + "require-dev": { + "phpunit/phpunit": "^4.8.10||^5.0" }, + "type": "library", "autoload": { - "psr-0": { - "React\\Http": "" + "psr-4": { + "React\\Http\\": "src" } }, "notification-url": "https://packagist.org/downloads/", @@ -1273,82 +1440,127 @@ "keywords": [ "http" ], - "time": "2012-12-26 16:33:04" + "time": "2017-02-13T14:12:50+00:00" }, { - "name": "react/socket", - "version": "v0.2.7", - "target-dir": "React/Socket", + "name": "react/promise", + "version": "v2.5.1", "source": { "type": "git", - "url": "https://github.com/reactphp/socket", - "reference": "v0.2.7" + "url": "https://github.com/reactphp/promise.git", + "reference": "62785ae604c8d69725d693eb370e1d67e94c4053" }, "dist": { "type": "zip", - "url": "https://github.com/reactphp/socket/archive/v0.2.7.zip", - "reference": "v0.2.7", + "url": "https://api.github.com/repos/reactphp/promise/zipball/62785ae604c8d69725d693eb370e1d67e94c4053", + "reference": "62785ae604c8d69725d693eb370e1d67e94c4053", "shasum": "" }, "require": { - "evenement/evenement": "1.0.*", - "php": ">=5.3.3", - "react/event-loop": "0.2.*", - "react/stream": "0.2.*" + "php": ">=5.4.0" + }, + "require-dev": { + "phpunit/phpunit": "~4.8" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "0.2-dev" + "autoload": { + "psr-4": { + "React\\Promise\\": "src/" + }, + "files": [ + "src/functions_include.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Jan Sorgalla", + "email": "jsorgalla@gmail.com" } + ], + "description": "A lightweight implementation of CommonJS Promises/A for PHP", + "keywords": [ + "promise", + "promises" + ], + "time": "2017-03-25T12:08:31+00:00" + }, + { + "name": "react/socket", + "version": "v0.4.6", + "source": { + "type": "git", + "url": "https://github.com/reactphp/socket.git", + "reference": "cf074e53c974df52388ebd09710a9018894745d2" }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/reactphp/socket/zipball/cf074e53c974df52388ebd09710a9018894745d2", + "reference": "cf074e53c974df52388ebd09710a9018894745d2", + "shasum": "" + }, + "require": { + "evenement/evenement": "~2.0|~1.0", + "php": ">=5.3.0", + "react/event-loop": "0.4.*|0.3.*", + "react/promise": "^2.0 || ^1.1", + "react/stream": "^0.4.5" + }, + "require-dev": { + "clue/block-react": "^1.1", + "phpunit/phpunit": "~4.8", + "react/socket-client": "^0.5.1" + }, + "type": "library", "autoload": { - "psr-0": { - "React\\Socket": "" + "psr-4": { + "React\\Socket\\": "src" } }, "notification-url": "https://packagist.org/downloads/", "license": [ "MIT" ], - "description": "Library for building an evented socket server.", + "description": "Async, streaming plaintext TCP/IP and secure TLS socket server for React PHP", "keywords": [ "Socket" ], - "time": "2012-12-14 00:58:14" + "time": "2017-01-26T09:23:38+00:00" }, { "name": "react/stream", - "version": "v0.2.7", - "target-dir": "React/Stream", + "version": "v0.4.6", "source": { "type": "git", - "url": "https://github.com/reactphp/stream", - "reference": "v0.2.7" + "url": "https://github.com/reactphp/stream.git", + "reference": "44dc7f51ea48624110136b535b9ba44fd7d0c1ee" }, "dist": { "type": "zip", - "url": "https://github.com/reactphp/stream/archive/v0.2.7.zip", - "reference": "v0.2.7", + "url": "https://api.github.com/repos/reactphp/stream/zipball/44dc7f51ea48624110136b535b9ba44fd7d0c1ee", + "reference": "44dc7f51ea48624110136b535b9ba44fd7d0c1ee", "shasum": "" }, "require": { - "evenement/evenement": "1.0.*", - "php": ">=5.3.3" + "evenement/evenement": "^2.0|^1.0", + "php": ">=5.3.8" + }, + "require-dev": { + "clue/stream-filter": "~1.2", + "react/event-loop": "^0.4|^0.3", + "react/promise": "^2.0|^1.0" }, "suggest": { - "react/event-loop": "0.2.*", - "react/promise": "1.0.*" + "react/event-loop": "^0.4", + "react/promise": "^2.0" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "0.2-dev" - } - }, "autoload": { - "psr-0": { - "React\\Stream": "" + "psr-4": { + "React\\Stream\\": "src" } }, "notification-url": "https://packagist.org/downloads/", @@ -1360,32 +1572,95 @@ "pipe", "stream" ], - "time": "2012-12-14 00:58:14" + "time": "2017-01-25T14:44:14+00:00" + }, + { + "name": "ringcentral/psr7", + "version": "1.2.1", + "source": { + "type": "git", + "url": "https://github.com/ringcentral/psr7.git", + "reference": "2594fb47cdc659f3fcf0aa1559b7355460555303" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/ringcentral/psr7/zipball/2594fb47cdc659f3fcf0aa1559b7355460555303", + "reference": "2594fb47cdc659f3fcf0aa1559b7355460555303", + "shasum": "" + }, + "require": { + "php": ">=5.3", + "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.0-dev" + } + }, + "autoload": { + "psr-4": { + "RingCentral\\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-03-25T17:36:49+00:00" }, { "name": "robloach/component-installer", - "version": "0.0.11", + "version": "0.2.3", "source": { "type": "git", "url": "https://github.com/RobLoach/component-installer.git", - "reference": "0.0.11" + "reference": "908a859aa7c4949ba9ad67091e67bac10b66d3d7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/RobLoach/component-installer/zipball/0.0.11", - "reference": "0.0.11", + "url": "https://api.github.com/repos/RobLoach/component-installer/zipball/908a859aa7c4949ba9ad67091e67bac10b66d3d7", + "reference": "908a859aa7c4949ba9ad67091e67bac10b66d3d7", "shasum": "" }, "require": { + "composer-plugin-api": "^1.0", "kriswallsmith/assetic": "1.*", "php": ">=5.3.2" }, "require-dev": { - "composer/composer": "1.*" + "composer/composer": "1.*@alpha", + "phpunit/phpunit": "4.*" }, - "type": "composer-installer", + "type": "composer-plugin", "extra": { - "class": "ComponentInstaller\\Installer" + "branch-alias": { + "dev-master": "1.0.x-dev" + }, + "class": "ComponentInstaller\\ComponentInstallerPlugin" }, "autoload": { "psr-0": { @@ -1399,78 +1674,173 @@ "authors": [ { "name": "Rob Loach", - "email": "robloach@gmail.com", "homepage": "http://robloach.net" } ], - "description": "Allows installation of Components via Composer.", - "time": "2013-05-10 04:14:46" + "description": "Allows installation of Components via Composer.", + "time": "2015-08-10T12:35:38+00:00" + }, + { + "name": "sculpin/sculpin", + "version": "dev-master", + "source": { + "type": "git", + "url": "https://github.com/sculpin/sculpin.git", + "reference": "64e59009dabd08492f0f172fbc5f5da30bdfb62b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sculpin/sculpin/zipball/64e59009dabd08492f0f172fbc5f5da30bdfb62b", + "reference": "64e59009dabd08492f0f172fbc5f5da30bdfb62b", + "shasum": "" + }, + "require": { + "dflydev/ant-path-matcher": "1.*", + "dflydev/apache-mime-types": "~1.0,>=1.0.1", + "dflydev/canal": "1.*", + "dflydev/dot-access-configuration": "^1.0.1", + "dflydev/embedded-composer": "^1.0@dev", + "dflydev/symfony-finder-factory": "1.*", + "doctrine/inflector": "1.0.*", + "michelf/php-markdown": "^1.7.0", + "netcarver/textile": "3.5.*", + "php": "^5.4|^7.0", + "react/http": "0.4.*", + "sculpin/sculpin-theme-composer-plugin": "^1.0", + "seld/jsonlint": "^1.4", + "symfony/config": "~2.3", + "symfony/console": "~2.3", + "symfony/dependency-injection": "~2.3", + "symfony/event-dispatcher": "~2.3", + "symfony/filesystem": "~2.3", + "symfony/finder": "~2.3", + "symfony/http-kernel": "~2.3", + "symfony/process": "~2.3", + "symfony/yaml": "~2.3", + "twig/extensions": "~1.0", + "twig/twig": "~1.11", + "webignition/internet-media-type": "^0.4" + }, + "replace": { + "sculpin/core": "self.version", + "sculpin/markdown-bundle": "self.version", + "sculpin/markdown-twig-compat-bundle": "self.version", + "sculpin/posts-bundle": "self.version", + "sculpin/proxy-source-collection-contrib": "self.version", + "sculpin/sculpin-bundle": "self.version", + "sculpin/standalone-bundle": "self.version", + "sculpin/taxonomy-contrib": "self.version", + "sculpin/textile-bundle": "self.version", + "sculpin/twig-bundle": "self.version" + }, + "require-dev": { + "phpunit/phpunit": "^4.8", + "squizlabs/php_codesniffer": "^2.8", + "symfony/css-selector": "~2.6", + "symfony/dom-crawler": "~2.6" + }, + "bin": [ + "bin/sculpin", + "bin/sculpin.php" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.1.x-dev", + "dev-develop": "3.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Sculpin\\": "src/Sculpin/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Dragonfly Development Inc.", + "email": "info@dflydev.com", + "homepage": "http://dflydev.com" + }, + { + "name": "Beau Simensen", + "email": "beau@dflydev.com", + "homepage": "http://beausimensen.com" + } + ], + "description": "Static Site Generator", + "homepage": "https://sculpin.io", + "keywords": [ + "generator", + "site", + "static" + ], + "time": "2017-07-10T16:36:06+00:00" + }, + { + "name": "sculpin/sculpin-theme-composer-plugin", + "version": "v1.0.2", + "source": { + "type": "git", + "url": "https://github.com/sculpin/sculpin-theme-composer-plugin.git", + "reference": "f22bbf89971054e0e37983263828ca39ffca2437" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sculpin/sculpin-theme-composer-plugin/zipball/f22bbf89971054e0e37983263828ca39ffca2437", + "reference": "f22bbf89971054e0e37983263828ca39ffca2437", + "shasum": "" + }, + "require": { + "composer-plugin-api": "^1.1" + }, + "type": "composer-plugin", + "extra": { + "class": "Sculpin\\Composer\\SculpinThemePlugin\\SculpinThemePlugin", + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-0": { + "Sculpin\\Composer\\SculpinThemePlugin\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "time": "2017-02-27T17:40:03+00:00" }, { - "name": "sculpin/sculpin", - "version": "dev-master", + "name": "seld/cli-prompt", + "version": "1.0.3", "source": { "type": "git", - "url": "https://github.com/sculpin/sculpin.git", - "reference": "42e92548f683e218b7f72a1acef24629fdf4a128" + "url": "https://github.com/Seldaek/cli-prompt.git", + "reference": "a19a7376a4689d4d94cab66ab4f3c816019ba8dd" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sculpin/sculpin/zipball/42e92548f683e218b7f72a1acef24629fdf4a128", - "reference": "42e92548f683e218b7f72a1acef24629fdf4a128", + "url": "https://api.github.com/repos/Seldaek/cli-prompt/zipball/a19a7376a4689d4d94cab66ab4f3c816019ba8dd", + "reference": "a19a7376a4689d4d94cab66ab4f3c816019ba8dd", "shasum": "" }, "require": { - "composer/composer": "1.*@dev", - "dflydev/ant-path-matcher": "1.*", - "dflydev/apache-mime-types": ">=1.0,<2.0,>=1.0.1", - "dflydev/canal": "1.*@dev", - "dflydev/dot-access-configuration": "1.*", - "dflydev/embedded-composer-console": "1.0.*@dev", - "dflydev/embedded-composer-core": "1.0.*@dev", - "dflydev/symfony-finder-factory": "1.*", - "michelf/php-markdown": "1.3.*", - "netcarver/textile": "3.5.*", - "php": ">=5.3.2", - "react/http": "0.2.*", - "symfony/class-loader": ">=2.1,<3.0", - "symfony/config": ">=2.1,<3.0", - "symfony/console": ">=2.3,<3.0", - "symfony/dependency-injection": ">=2.1,<3.0", - "symfony/event-dispatcher": ">=2.1,<3.0", - "symfony/filesystem": ">=2.1,<3.0", - "symfony/finder": ">=2.1,<3.0", - "symfony/http-kernel": ">=2.3,<3.0", - "symfony/process": ">=2.1,<3.0", - "symfony/yaml": ">=2.1,<3.0", - "twig/twig": ">=1.9,<2.0" - }, - "replace": { - "sculpin/core": "self.version", - "sculpin/markdown-bundle": "self.version", - "sculpin/markdown-twig-compat-bundle": "self.version", - "sculpin/posts-bundle": "self.version", - "sculpin/sculpin-bundle": "self.version", - "sculpin/standalone-bundle": "self.version", - "sculpin/textile-bundle": "self.version", - "sculpin/twig-bundle": "self.version" - }, - "require-dev": { - "phpunit/phpunit": "3.7.*" + "php": ">=5.3" }, - "bin": [ - "bin/sculpin", - "bin/sculpin.php" - ], - "type": "application", + "type": "library", "extra": { "branch-alias": { - "dev-master": "2.0-dev" + "dev-master": "1.x-dev" } }, "autoload": { - "psr-0": { - "Sculpin": "src" + "psr-4": { + "Seld\\CliPrompt\\": "src/" } }, "notification-url": "https://packagist.org/downloads/", @@ -1479,49 +1849,47 @@ ], "authors": [ { - "name": "Dragonfly Development Inc.", - "email": "info@dflydev.com", - "homepage": "http://dflydev.com" - }, - { - "name": "Beau Simensen", - "email": "beau@dflydev.com", - "homepage": "http://beausimensen.com" + "name": "Jordi Boggiano", + "email": "j.boggiano@seld.be" } ], - "description": "Static Site Generator", - "homepage": "http://getsculpin.com", + "description": "Allows you to prompt for user input on the command line, and optionally hide the characters they type", "keywords": [ - "generator", - "site", - "static" + "cli", + "console", + "hidden", + "input", + "prompt" ], - "time": "2013-06-05 16:04:52" + "time": "2017-03-18T11:32:45+00:00" }, { "name": "seld/jsonlint", - "version": "1.1.1", + "version": "1.6.1", "source": { "type": "git", - "url": "http://github.com/Seldaek/jsonlint", - "reference": "1.1.1" + "url": "https://github.com/Seldaek/jsonlint.git", + "reference": "50d63f2858d87c4738d5b76a7dcbb99fa8cf7c77" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Seldaek/jsonlint/zipball/1.1.1", - "reference": "1.1.1", + "url": "https://api.github.com/repos/Seldaek/jsonlint/zipball/50d63f2858d87c4738d5b76a7dcbb99fa8cf7c77", + "reference": "50d63f2858d87c4738d5b76a7dcbb99fa8cf7c77", "shasum": "" }, "require": { - "php": ">=5.3.0" + "php": "^5.3 || ^7.0" + }, + "require-dev": { + "phpunit/phpunit": "^4.5" }, "bin": [ "bin/jsonlint" ], "type": "library", "autoload": { - "psr-0": { - "Seld\\JsonLint": "src/" + "psr-4": { + "Seld\\JsonLint\\": "src/Seld/JsonLint/" } }, "notification-url": "https://packagist.org/downloads/", @@ -1532,8 +1900,7 @@ { "name": "Jordi Boggiano", "email": "j.boggiano@seld.be", - "homepage": "http://seld.be", - "role": "Developer" + "homepage": "http://seld.be" } ], "description": "JSON Linter", @@ -1543,38 +1910,34 @@ "parser", "validator" ], - "time": "2013-02-11 23:03:12" + "time": "2017-06-18T15:11:04+00:00" }, { - "name": "symfony/class-loader", - "version": "v2.3.0", - "target-dir": "Symfony/Component/ClassLoader", + "name": "seld/phar-utils", + "version": "1.0.1", "source": { "type": "git", - "url": "https://github.com/symfony/ClassLoader.git", - "reference": "v2.3.0" + "url": "https://github.com/Seldaek/phar-utils.git", + "reference": "7009b5139491975ef6486545a39f3e6dad5ac30a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/ClassLoader/zipball/v2.3.0", - "reference": "v2.3.0", + "url": "https://api.github.com/repos/Seldaek/phar-utils/zipball/7009b5139491975ef6486545a39f3e6dad5ac30a", + "reference": "7009b5139491975ef6486545a39f3e6dad5ac30a", "shasum": "" }, "require": { - "php": ">=5.3.3" - }, - "require-dev": { - "symfony/finder": ">=2.0,<3.0" + "php": ">=5.3" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.3-dev" + "dev-master": "1.x-dev" } }, "autoload": { - "psr-0": { - "Symfony\\Component\\ClassLoader\\": "" + "psr-4": { + "Seld\\PharUtils\\": "src/" } }, "notification-url": "https://packagist.org/downloads/", @@ -1583,47 +1946,53 @@ ], "authors": [ { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" + "name": "Jordi Boggiano", + "email": "j.boggiano@seld.be" } ], - "description": "Symfony ClassLoader Component", - "homepage": "http://symfony.com", - "time": "2013-05-24 17:54:44" + "description": "PHAR file format utilities, for when PHP phars you up", + "keywords": [ + "phra" + ], + "time": "2015-10-13T18:44:15+00:00" }, { "name": "symfony/config", - "version": "v2.3.0", - "target-dir": "Symfony/Component/Config", + "version": "v2.8.28", "source": { "type": "git", - "url": "https://github.com/symfony/Config.git", - "reference": "v2.3.0" + "url": "https://github.com/symfony/config.git", + "reference": "1dbeaa8e2db4b29159265867efff075ad961558c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Config/zipball/v2.3.0", - "reference": "v2.3.0", + "url": "https://api.github.com/repos/symfony/config/zipball/1dbeaa8e2db4b29159265867efff075ad961558c", + "reference": "1dbeaa8e2db4b29159265867efff075ad961558c", "shasum": "" }, "require": { - "php": ">=5.3.3", - "symfony/filesystem": ">=2.3,<3.0" + "php": ">=5.3.9", + "symfony/filesystem": "~2.3|~3.0.0" + }, + "require-dev": { + "symfony/yaml": "~2.7|~3.0.0" + }, + "suggest": { + "symfony/yaml": "To use the yaml reference dumper" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.3-dev" + "dev-master": "2.8-dev" } }, "autoload": { - "psr-0": { + "psr-4": { "Symfony\\Component\\Config\\": "" - } + }, + "exclude-from-classmap": [ + "/Tests/" + ] }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -1636,47 +2005,55 @@ }, { "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" + "homepage": "https://symfony.com/contributors" } ], "description": "Symfony Config Component", - "homepage": "http://symfony.com", - "time": "2013-05-18 21:11:24" + "homepage": "https://symfony.com", + "time": "2017-10-04T18:56:36+00:00" }, { "name": "symfony/console", - "version": "v2.3.0", - "target-dir": "Symfony/Component/Console", + "version": "v2.8.28", "source": { "type": "git", - "url": "https://github.com/symfony/Console.git", - "reference": "v2.3.0" + "url": "https://github.com/symfony/console.git", + "reference": "f81549d2c5fdee8d711c9ab3c7e7362353ea5853" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Console/zipball/v2.3.0", - "reference": "v2.3.0", + "url": "https://api.github.com/repos/symfony/console/zipball/f81549d2c5fdee8d711c9ab3c7e7362353ea5853", + "reference": "f81549d2c5fdee8d711c9ab3c7e7362353ea5853", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": ">=5.3.9", + "symfony/debug": "^2.7.2|~3.0.0", + "symfony/polyfill-mbstring": "~1.0" }, "require-dev": { - "symfony/event-dispatcher": ">=2.1,<3.0" + "psr/log": "~1.0", + "symfony/event-dispatcher": "~2.1|~3.0.0", + "symfony/process": "~2.1|~3.0.0" }, "suggest": { - "symfony/event-dispatcher": "" + "psr/log": "For using the console logger", + "symfony/event-dispatcher": "", + "symfony/process": "" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.3-dev" + "dev-master": "2.8-dev" } }, "autoload": { - "psr-0": { + "psr-4": { "Symfony\\Component\\Console\\": "" - } + }, + "exclude-from-classmap": [ + "/Tests/" + ] }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -1689,50 +2066,51 @@ }, { "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" + "homepage": "https://symfony.com/contributors" } ], "description": "Symfony Console Component", - "homepage": "http://symfony.com", - "time": "2013-05-30 05:11:26" + "homepage": "https://symfony.com", + "time": "2017-10-01T21:00:16+00:00" }, { "name": "symfony/debug", - "version": "v2.3.0", - "target-dir": "Symfony/Component/Debug", + "version": "v2.8.28", "source": { "type": "git", - "url": "https://github.com/symfony/Debug.git", - "reference": "v2.3.0" + "url": "https://github.com/symfony/debug.git", + "reference": "eaaec993ca5e8067e204b2ee653cdd142961f33e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Debug/zipball/v2.3.0", - "reference": "v2.3.0", + "url": "https://api.github.com/repos/symfony/debug/zipball/eaaec993ca5e8067e204b2ee653cdd142961f33e", + "reference": "eaaec993ca5e8067e204b2ee653cdd142961f33e", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": ">=5.3.9", + "psr/log": "~1.0" }, - "require-dev": { - "symfony/http-foundation": ">=2.1,<3.0", - "symfony/http-kernel": ">=2.1,<3.0" + "conflict": { + "symfony/http-kernel": ">=2.3,<2.3.24|~2.4.0|>=2.5,<2.5.9|>=2.6,<2.6.2" }, - "suggest": { - "symfony/class-loader": "", - "symfony/http-foundation": "", - "symfony/http-kernel": "" + "require-dev": { + "symfony/class-loader": "~2.2|~3.0.0", + "symfony/http-kernel": "~2.3.24|~2.5.9|^2.6.2|~3.0.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.3-dev" + "dev-master": "2.8-dev" } }, "autoload": { - "psr-0": { + "psr-4": { "Symfony\\Component\\Debug\\": "" - } + }, + "exclude-from-classmap": [ + "/Tests/" + ] }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -1745,50 +2123,57 @@ }, { "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" + "homepage": "https://symfony.com/contributors" } ], "description": "Symfony Debug Component", - "homepage": "http://symfony.com", - "time": "2013-06-02 11:58:44" + "homepage": "https://symfony.com", + "time": "2017-10-01T21:00:16+00:00" }, { "name": "symfony/dependency-injection", - "version": "v2.3.0", - "target-dir": "Symfony/Component/DependencyInjection", + "version": "v2.8.28", "source": { "type": "git", - "url": "https://github.com/symfony/DependencyInjection.git", - "reference": "v2.3.0-RC1" + "url": "https://github.com/symfony/dependency-injection.git", + "reference": "2562562610dbdabbb98c6ceb60459a351811c734" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/DependencyInjection/zipball/v2.3.0-RC1", - "reference": "v2.3.0-RC1", + "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/2562562610dbdabbb98c6ceb60459a351811c734", + "reference": "2562562610dbdabbb98c6ceb60459a351811c734", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": ">=5.3.9" + }, + "conflict": { + "symfony/expression-language": "<2.6" }, "require-dev": { - "symfony/config": ">=2.2,<3.0", - "symfony/yaml": ">=2.0,<3.0" + "symfony/config": "~2.2|~3.0.0", + "symfony/expression-language": "~2.6|~3.0.0", + "symfony/yaml": "~2.3.42|~2.7.14|~2.8.7|~3.0.7" }, "suggest": { "symfony/config": "", + "symfony/expression-language": "For using expressions in service container configuration", "symfony/proxy-manager-bridge": "Generate service proxies to lazy load them", "symfony/yaml": "" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.3-dev" + "dev-master": "2.8-dev" } }, "autoload": { - "psr-0": { + "psr-4": { "Symfony\\Component\\DependencyInjection\\": "" - } + }, + "exclude-from-classmap": [ + "/Tests/" + ] }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -1801,33 +2186,36 @@ }, { "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" + "homepage": "https://symfony.com/contributors" } ], "description": "Symfony DependencyInjection Component", - "homepage": "http://symfony.com", - "time": "2013-05-13 14:36:40" + "homepage": "https://symfony.com", + "time": "2017-10-02T07:17:52+00:00" }, { "name": "symfony/event-dispatcher", - "version": "v2.3.0", - "target-dir": "Symfony/Component/EventDispatcher", + "version": "v2.8.28", "source": { "type": "git", - "url": "https://github.com/symfony/EventDispatcher.git", - "reference": "v2.3.0-RC1" + "url": "https://github.com/symfony/event-dispatcher.git", + "reference": "7fe089232554357efb8d4af65ce209fc6e5a2186" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/EventDispatcher/zipball/v2.3.0-RC1", - "reference": "v2.3.0-RC1", + "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/7fe089232554357efb8d4af65ce209fc6e5a2186", + "reference": "7fe089232554357efb8d4af65ce209fc6e5a2186", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": ">=5.3.9" }, "require-dev": { - "symfony/dependency-injection": ">=2.0,<3.0" + "psr/log": "~1.0", + "symfony/config": "^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": "", @@ -1836,13 +2224,16 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.3-dev" + "dev-master": "2.8-dev" } }, "autoload": { - "psr-0": { + "psr-4": { "Symfony\\Component\\EventDispatcher\\": "" - } + }, + "exclude-from-classmap": [ + "/Tests/" + ] }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -1855,41 +2246,43 @@ }, { "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" + "homepage": "https://symfony.com/contributors" } ], "description": "Symfony EventDispatcher Component", - "homepage": "http://symfony.com", - "time": "2013-05-13 14:36:40" + "homepage": "https://symfony.com", + "time": "2017-10-01T21:00:16+00:00" }, { "name": "symfony/filesystem", - "version": "v2.3.0", - "target-dir": "Symfony/Component/Filesystem", + "version": "v2.8.28", "source": { "type": "git", - "url": "https://github.com/symfony/Filesystem.git", - "reference": "v2.3.0-RC1" + "url": "https://github.com/symfony/filesystem.git", + "reference": "5e3af878f144089faddd4060a48cadae4fc44dee" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Filesystem/zipball/v2.3.0-RC1", - "reference": "v2.3.0-RC1", + "url": "https://api.github.com/repos/symfony/filesystem/zipball/5e3af878f144089faddd4060a48cadae4fc44dee", + "reference": "5e3af878f144089faddd4060a48cadae4fc44dee", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": ">=5.3.9" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.3-dev" + "dev-master": "2.8-dev" } }, "autoload": { - "psr-0": { + "psr-4": { "Symfony\\Component\\Filesystem\\": "" - } + }, + "exclude-from-classmap": [ + "/Tests/" + ] }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -1902,41 +2295,43 @@ }, { "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" + "homepage": "https://symfony.com/contributors" } ], "description": "Symfony Filesystem Component", - "homepage": "http://symfony.com", - "time": "2013-05-06 20:03:44" + "homepage": "https://symfony.com", + "time": "2017-10-02T08:46:46+00:00" }, { "name": "symfony/finder", - "version": "v2.3.0", - "target-dir": "Symfony/Component/Finder", + "version": "v2.8.28", "source": { "type": "git", - "url": "https://github.com/symfony/Finder.git", - "reference": "v2.3.0" + "url": "https://github.com/symfony/finder.git", + "reference": "a945724b201f74d543e356f6059c930bb8d10c92" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Finder/zipball/v2.3.0", - "reference": "v2.3.0", + "url": "https://api.github.com/repos/symfony/finder/zipball/a945724b201f74d543e356f6059c930bb8d10c92", + "reference": "a945724b201f74d543e356f6059c930bb8d10c92", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": ">=5.3.9" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.3-dev" + "dev-master": "2.8-dev" } }, "autoload": { - "psr-0": { + "psr-4": { "Symfony\\Component\\Finder\\": "" - } + }, + "exclude-from-classmap": [ + "/Tests/" + ] }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -1949,43 +2344,46 @@ }, { "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" + "homepage": "https://symfony.com/contributors" } ], "description": "Symfony Finder Component", - "homepage": "http://symfony.com", - "time": "2013-06-02 12:05:51" + "homepage": "https://symfony.com", + "time": "2017-10-01T21:00:16+00:00" }, { "name": "symfony/http-foundation", - "version": "v2.3.0", - "target-dir": "Symfony/Component/HttpFoundation", + "version": "v3.1.10", "source": { "type": "git", - "url": "https://github.com/symfony/HttpFoundation.git", - "reference": "v2.3.0-RC1" + "url": "https://github.com/symfony/http-foundation.git", + "reference": "cef0ad49a2e90455cfc649522025b5a2929648c0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/HttpFoundation/zipball/v2.3.0-RC1", - "reference": "v2.3.0-RC1", + "url": "https://api.github.com/repos/symfony/http-foundation/zipball/cef0ad49a2e90455cfc649522025b5a2929648c0", + "reference": "cef0ad49a2e90455cfc649522025b5a2929648c0", "shasum": "" }, "require": { - "php": ">=5.3.3" + "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": "2.3-dev" + "dev-master": "3.1-dev" } }, "autoload": { - "psr-0": { + "psr-4": { "Symfony\\Component\\HttpFoundation\\": "" }, - "classmap": [ - "Symfony/Component/HttpFoundation/Resources/stubs" + "exclude-from-classmap": [ + "/Tests/" ] }, "notification-url": "https://packagist.org/downloads/", @@ -1999,45 +2397,54 @@ }, { "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" + "homepage": "https://symfony.com/contributors" } ], "description": "Symfony HttpFoundation Component", - "homepage": "http://symfony.com", - "time": "2013-05-10 06:00:03" + "homepage": "https://symfony.com", + "time": "2017-01-08T20:43:43+00:00" }, { "name": "symfony/http-kernel", - "version": "v2.3.0", - "target-dir": "Symfony/Component/HttpKernel", + "version": "v2.8.28", "source": { "type": "git", - "url": "https://github.com/symfony/HttpKernel.git", - "reference": "v2.3.0" + "url": "https://github.com/symfony/http-kernel.git", + "reference": "d912b76d7db324f7650da9d1132be78c5f7ceb93" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/HttpKernel/zipball/v2.3.0", - "reference": "v2.3.0", + "url": "https://api.github.com/repos/symfony/http-kernel/zipball/d912b76d7db324f7650da9d1132be78c5f7ceb93", + "reference": "d912b76d7db324f7650da9d1132be78c5f7ceb93", "shasum": "" }, "require": { - "php": ">=5.3.3", - "psr/log": ">=1.0,<2.0", - "symfony/debug": ">=2.3,<3.0", - "symfony/event-dispatcher": ">=2.1,<3.0", - "symfony/http-foundation": ">=2.2,<3.0" + "php": ">=5.3.9", + "psr/log": "~1.0", + "symfony/debug": "^2.6.2", + "symfony/event-dispatcher": "^2.6.7|~3.0.0", + "symfony/http-foundation": "~2.7.20|~2.8.13|~3.1.6" + }, + "conflict": { + "symfony/config": "<2.7", + "twig/twig": "<1.34|<2.4,>=2" }, "require-dev": { - "symfony/browser-kit": "2.2.*", - "symfony/class-loader": ">=2.1,<3.0", - "symfony/config": ">=2.0,<3.0", - "symfony/console": "2.2.*", - "symfony/dependency-injection": ">=2.0,<3.0", - "symfony/finder": ">=2.0,<3.0", - "symfony/process": ">=2.0,<3.0", - "symfony/routing": ">=2.2,<3.0", - "symfony/stopwatch": ">=2.2,<3.0" + "symfony/browser-kit": "~2.3|~3.0.0", + "symfony/class-loader": "~2.1|~3.0.0", + "symfony/config": "~2.8", + "symfony/console": "~2.3|~3.0.0", + "symfony/css-selector": "^2.0.5|~3.0.0", + "symfony/dependency-injection": "~2.8|~3.0.0", + "symfony/dom-crawler": "^2.0.5|~3.0.0", + "symfony/expression-language": "~2.4|~3.0.0", + "symfony/finder": "^2.0.5|~3.0.0", + "symfony/process": "^2.0.5|~3.0.0", + "symfony/routing": "~2.8|~3.0.0", + "symfony/stopwatch": "~2.3|~3.0.0", + "symfony/templating": "~2.2|~3.0.0", + "symfony/translation": "^2.0.5|~3.0.0", + "symfony/var-dumper": "~2.6|~3.0.0" }, "suggest": { "symfony/browser-kit": "", @@ -2045,18 +2452,22 @@ "symfony/config": "", "symfony/console": "", "symfony/dependency-injection": "", - "symfony/finder": "" + "symfony/finder": "", + "symfony/var-dumper": "" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.3-dev" + "dev-master": "2.8-dev" } }, "autoload": { - "psr-0": { + "psr-4": { "Symfony\\Component\\HttpKernel\\": "" - } + }, + "exclude-from-classmap": [ + "/Tests/" + ] }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -2069,42 +2480,103 @@ }, { "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" + "homepage": "https://symfony.com/contributors" } ], "description": "Symfony HttpKernel Component", - "homepage": "http://symfony.com", - "time": "2013-06-03 14:13:35" + "homepage": "https://symfony.com", + "time": "2017-10-05T23:24:02+00:00" }, { - "name": "symfony/process", - "version": "v2.3.0", - "target-dir": "Symfony/Component/Process", + "name": "symfony/polyfill-mbstring", + "version": "v1.6.0", "source": { "type": "git", - "url": "https://github.com/symfony/Process.git", - "reference": "v2.3.0-RC1" + "url": "https://github.com/symfony/polyfill-mbstring.git", + "reference": "2ec8b39c38cb16674bbf3fea2b6ce5bf117e1296" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Process/zipball/v2.3.0-RC1", - "reference": "v2.3.0-RC1", + "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/2ec8b39c38cb16674bbf3fea2b6ce5bf117e1296", + "reference": "2ec8b39c38cb16674bbf3fea2b6ce5bf117e1296", "shasum": "" }, "require": { "php": ">=5.3.3" }, + "suggest": { + "ext-mbstring": "For best performance" + }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.3-dev" + "dev-master": "1.6-dev" } }, "autoload": { - "psr-0": { - "Symfony\\Component\\Process\\": "" + "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": "2017-10-11T12:05:26+00:00" + }, + { + "name": "symfony/process", + "version": "v2.8.28", + "source": { + "type": "git", + "url": "https://github.com/symfony/process.git", + "reference": "26c9fb02bf06bd6b90f661a5bd17e510810d0176" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/process/zipball/26c9fb02bf06bd6b90f661a5bd17e510810d0176", + "reference": "26c9fb02bf06bd6b90f661a5bd17e510810d0176", + "shasum": "" + }, + "require": { + "php": ">=5.3.9" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.8-dev" } }, + "autoload": { + "psr-4": { + "Symfony\\Component\\Process\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, "notification-url": "https://packagist.org/downloads/", "license": [ "MIT" @@ -2116,41 +2588,43 @@ }, { "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" + "homepage": "https://symfony.com/contributors" } ], "description": "Symfony Process Component", - "homepage": "http://symfony.com", - "time": "2013-05-06 20:03:44" + "homepage": "https://symfony.com", + "time": "2017-10-01T21:00:16+00:00" }, { "name": "symfony/yaml", - "version": "v2.2.2", - "target-dir": "Symfony/Component/Yaml", + "version": "v2.8.28", "source": { "type": "git", - "url": "https://github.com/symfony/Yaml.git", - "reference": "v2.2.2" + "url": "https://github.com/symfony/yaml.git", + "reference": "842fb6df22180244b4c65935ce1a88d324e5ff9e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Yaml/zipball/v2.2.2", - "reference": "v2.2.2", + "url": "https://api.github.com/repos/symfony/yaml/zipball/842fb6df22180244b4c65935ce1a88d324e5ff9e", + "reference": "842fb6df22180244b4c65935ce1a88d324e5ff9e", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": ">=5.3.9" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.2-dev" + "dev-master": "2.8-dev" } }, "autoload": { - "psr-0": { + "psr-4": { "Symfony\\Component\\Yaml\\": "" - } + }, + "exclude-from-classmap": [ + "/Tests/" + ] }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -2163,53 +2637,125 @@ }, { "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" + "homepage": "https://symfony.com/contributors" } ], "description": "Symfony Yaml Component", - "homepage": "http://symfony.com", - "time": "2013-05-10 18:08:31" + "homepage": "https://symfony.com", + "time": "2017-10-05T14:38:30+00:00" + }, + { + "name": "twig/extensions", + "version": "v1.5.1", + "source": { + "type": "git", + "url": "https://github.com/twigphp/Twig-extensions.git", + "reference": "d188c76168b853481cc75879ea045bf93d718e9c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/twigphp/Twig-extensions/zipball/d188c76168b853481cc75879ea045bf93d718e9c", + "reference": "d188c76168b853481cc75879ea045bf93d718e9c", + "shasum": "" + }, + "require": { + "twig/twig": "~1.27|~2.0" + }, + "require-dev": { + "symfony/phpunit-bridge": "~3.3@dev", + "symfony/translation": "~2.3|~3.0" + }, + "suggest": { + "symfony/translation": "Allow the time_diff output to be translated" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.5-dev" + } + }, + "autoload": { + "psr-0": { + "Twig_Extensions_": "lib/" + }, + "psr-4": { + "Twig\\Extensions\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + } + ], + "description": "Common additional features for Twig that do not directly belong in core", + "homepage": "http://twig.sensiolabs.org/doc/extensions/index.html", + "keywords": [ + "i18n", + "text" + ], + "time": "2017-06-08T18:19:53+00:00" }, { "name": "twig/twig", - "version": "v1.13.0", + "version": "v1.35.0", "source": { "type": "git", - "url": "https://github.com/fabpot/Twig.git", - "reference": "v1.13.0" + "url": "https://github.com/twigphp/Twig.git", + "reference": "daa657073e55b0a78cce8fdd22682fddecc6385f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/fabpot/Twig/zipball/v1.13.0", - "reference": "v1.13.0", + "url": "https://api.github.com/repos/twigphp/Twig/zipball/daa657073e55b0a78cce8fdd22682fddecc6385f", + "reference": "daa657073e55b0a78cce8fdd22682fddecc6385f", "shasum": "" }, "require": { - "php": ">=5.2.4" + "php": ">=5.3.3" + }, + "require-dev": { + "psr/container": "^1.0", + "symfony/debug": "~2.7", + "symfony/phpunit-bridge": "~3.3@dev" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.13-dev" + "dev-master": "1.35-dev" } }, "autoload": { "psr-0": { "Twig_": "lib/" + }, + "psr-4": { + "Twig\\": "src/" } }, "notification-url": "https://packagist.org/downloads/", "license": [ - "BSD-3" + "BSD-3-Clause" ], "authors": [ { "name": "Fabien Potencier", - "email": "fabien@symfony.com" + "email": "fabien@symfony.com", + "homepage": "http://fabien.potencier.org", + "role": "Lead Developer" }, { "name": "Armin Ronacher", - "email": "armin.ronacher@active-4.com" + "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", @@ -2217,30 +2763,75 @@ "keywords": [ "templating" ], - "time": "2013-05-10 15:12:43" + "time": "2017-09-27T18:06:46+00:00" + }, + { + "name": "webignition/disallowed-character-terminated-string", + "version": "1.0", + "source": { + "type": "git", + "url": "https://github.com/webignition/disallowed-character-terminated-string.git", + "reference": "25d12868c82b56bc0d04278e31594385ba4dddc4" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/webignition/disallowed-character-terminated-string/zipball/25d12868c82b56bc0d04278e31594385ba4dddc4", + "reference": "25d12868c82b56bc0d04278e31594385ba4dddc4", + "shasum": "" + }, + "require": { + "php": ">=5.3.0" + }, + "type": "library", + "autoload": { + "psr-0": { + "": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Jon Cram", + "email": "jon@webignition.net" + } + ], + "description": "A string terminated by one or more disallowed characters", + "homepage": "https://github.com/webignition/disallowed-character-terminated-string", + "keywords": [ + "string", + "terminated" + ], + "time": "2012-07-16T21:29:50+00:00" }, { "name": "webignition/internet-media-type", - "version": "0.4.1.1", + "version": "0.4.7", "source": { "type": "git", "url": "https://github.com/webignition/internet-media-type.git", - "reference": "0.4.1.1" + "reference": "968b95796bc682c7f554c2ec671b6a97a9d5a5b0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/webignition/internet-media-type/zipball/0.4.1.1", - "reference": "0.4.1.1", + "url": "https://api.github.com/repos/webignition/internet-media-type/zipball/968b95796bc682c7f554c2ec671b6a97a9d5a5b0", + "reference": "968b95796bc682c7f554c2ec671b6a97a9d5a5b0", "shasum": "" }, "require": { "php": ">=5.3.0", - "webignition/quoted-string": ">=0.1,<2.0", - "webignition/string-parser": ">=0.2.1, <2.0" + "webignition/quoted-string": ">=0.1,<1.0", + "webignition/string-parser": ">=0.2.2,<1.0" + }, + "require-dev": { + "phpunit/phpunit": "~4.0" }, "type": "library", "autoload": { "psr-0": { + "webignition\\Tests": "tests/", "": "src/" } }, @@ -2263,29 +2854,35 @@ "media type", "media-type" ], - "time": "2013-03-18 14:58:48" + "time": "2015-02-20T16:52:30+00:00" }, { "name": "webignition/quoted-string", - "version": "0.1", + "version": "0.2.1", "source": { "type": "git", "url": "https://github.com/webignition/quoted-string.git", - "reference": "0.1" + "reference": "88b36b7be067796683ab3668e175322842dd5313" }, "dist": { "type": "zip", - "url": "https://github.com/webignition/quoted-string/zipball/0.1", - "reference": "0.1", + "url": "https://api.github.com/repos/webignition/quoted-string/zipball/88b36b7be067796683ab3668e175322842dd5313", + "reference": "88b36b7be067796683ab3668e175322842dd5313", "shasum": "" }, "require": { - "php": ">=5.3.0" + "php": ">=5.5.0", + "webignition/string-parser": ">=0.2.3,<1" + }, + "require-dev": { + "phpunit/phpunit": "~4.0", + "squizlabs/php_codesniffer": "3.*" }, "type": "library", "autoload": { - "psr-0": { - "": "src/" + "psr-4": { + "webignition\\QuotedString\\": "src/", + "webignition\\Tests\\QuotedString\\": "tests/" } }, "notification-url": "https://packagist.org/downloads/", @@ -2304,29 +2901,35 @@ "parser", "quoted-string" ], - "time": "2012-08-15 09:52:06" + "time": "2017-05-11T11:41:31+00:00" }, { "name": "webignition/string-parser", - "version": "0.2.1", + "version": "0.2.3", "source": { "type": "git", "url": "https://github.com/webignition/string-parser.git", - "reference": "0.2.1" + "reference": "8591e28c05bd250bcc67b8001f3588995b9ef74b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/webignition/string-parser/zipball/0.2.1", - "reference": "0.2.1", + "url": "https://api.github.com/repos/webignition/string-parser/zipball/8591e28c05bd250bcc67b8001f3588995b9ef74b", + "reference": "8591e28c05bd250bcc67b8001f3588995b9ef74b", "shasum": "" }, "require": { - "php": ">=5.3.0" + "php": ">=5.3.0", + "webignition/disallowed-character-terminated-string": ">=1.0" + }, + "require-dev": { + "phpunit/phpunit": "~4.0", + "squizlabs/php_codesniffer": "3.*" }, "type": "library", "autoload": { - "psr-0": { - "": "src/" + "psr-4": { + "webignition\\StringParser\\": "src/", + "webignition\\Tests\\StringParser\\": "tests/" } }, "notification-url": "https://packagist.org/downloads/", @@ -2345,25 +2948,19 @@ "parser", "string" ], - "time": "2013-03-18 14:32:24" + "time": "2017-05-11T10:04:12+00:00" } ], - "packages-dev": [ - - ], - "aliases": [ - - ], + "packages-dev": [], + "aliases": [], "minimum-stability": "stable", "stability-flags": { "sculpin/sculpin": 20, "dflydev/embedded-composer": 20, "composer/composer": 20 }, - "platform": [ - - ], - "platform-dev": [ - - ] + "prefer-stable": false, + "prefer-lowest": false, + "platform": [], + "platform-dev": [] } diff --git a/publish.sh.dist b/publish.sh.dist index a859fea..59a682f 100755 --- a/publish.sh.dist +++ b/publish.sh.dist @@ -1,4 +1,5 @@ #!/bin/bash +rm -rf output_prod vendor/bin/sculpin generate --env=prod || ( echo "Could not generate the site" && exit ) fab || ( echo "Could not publish the site" && exit ) diff --git a/source/_views/default.html b/source/_views/default.html index 609facf..09d2d7b 100644 --- a/source/_views/default.html +++ b/source/_views/default.html @@ -7,7 +7,7 @@ - + +
+
+ +
+
+ +
+
+ + {% if page.nav_name == "home" %} +
+

Stack

+

Composing HttpKernelInterface middlewares since 2013!

+

+

+

+
+ {% endif %} +
{% block content_wrapper %}{% block content %}{% endblock %}{% endblock %}
+ + + diff --git a/source/_views/spec.html b/source/_views/spec.html new file mode 100644 index 0000000..ab29059 --- /dev/null +++ b/source/_views/spec.html @@ -0,0 +1,19 @@ +{% extends "default.html" %} +{% block content_wrapper %} + + +
+

{{ page.title }} {{ page.status }}

+
+
+ + {% block content %} +

This proposal has no content.

+ {% endblock %} +
+{% endblock %} diff --git a/source/css/style.css b/source/css/style.css index 85391f0..af6ae78 100644 --- a/source/css/style.css +++ b/source/css/style.css @@ -1,6 +1,30 @@ +.anchor { + font-size: .75em; + text-decoration: none; + visibility: hidden; +} + +.standard-navigation { + display: none; +} +h2:hover .anchor { + visibility: visible; + text-decoration: none; +} + +h3 a, h3 a:hover { + color: inherit; + text-decoration: none; +} + +h2 .label, +h3 .label { vertical-align: middle; } + +.by { margin-top: -15px; color: #999; } + .jumbotron { text-align: center; - margin: 2em 0; + margin: 0.5em 0 2em 0; } .jumbotron .tagline a { @@ -12,15 +36,34 @@ } .jumbotron h1 { + display: inline-block; + font-size: 4em; + line-height: 1em; +} + +footer h1 a, +.jumbotron h1 a { display: inline-block; background-image: url(stack-logo.png); background-position: left; background-repeat: no-repeat; background-size: contain; - font-size: 5em; - line-height: 1em; + text-indent: 1em; + color: inherit; + text-decoration: none; +} + +/* +.navbar a.brand { + display: inline-block; + background-image: url(stack-logo.png); + background-position: left; + background-repeat: no-repeat; + background-size: 1em; + background-position-x: .5em; text-indent: 1em; } +*/ .jumbotron p.tagline { font-size: 1em; @@ -34,23 +77,23 @@ h4 small { color: #888; } -.mainContent, footer.container { +.navbar .container-fluid, .mainContent, footer.container { max-width: 900px; } +.navbar .container-fluid { + margin: 0 auto; +} footer.container { margin-top: 60px; padding: 30px 0; border-top: 2px solid #eee; } + pre code.php { background-color: #f5f5f5; } -.toolbox i { - font-size: 50px; -} - figure { text-align: center; } @@ -77,6 +120,11 @@ ul.avatars li a { text-decoration: none; } +.about.text, +.middleware.text, +.frameworks { + margin: 3em 0 5em; +} .frameworks-logo-list { list-style: none; text-align: center; @@ -106,8 +154,37 @@ ol.conventions .no { margin: 0 auto 10px auto; } +.stack-nav { + text-align: center; + margin-top: 2em; +} +.stack-nav ul { + display: inline-block; +} + +@media (max-width: 399px) { + .nav.social { + display: block; + width: 100%; + } + .nav.social li { + float: none; + width: 60%; + display: block; + margin: 0 auto; + } +} +@media (min-width: 400px) { + .standard-navigation { + display: block; + } + + .collapsable-navigation { + display: none; + } +} @media (max-width: 767px) { - .jumbotron a.btn { + .jumbotron .nav a.btn { font-size: 12px; padding: 5px 9px; } @@ -121,18 +198,30 @@ ol.conventions .no { margin-top: -0.2em; } + .conventions-and-protocols div.row-fluid h3, .middlewares div.row-fluid h3 { margin-top: 20px; } + + .mainContent.stack-nav { + margin-top: 0em; + } + .mainContent.stack-nav ul.nav { + margin-top: 1em; + } } @media (min-width: 768px) { - .jumbotron { + .jumbotron.huge { font-size: 2em; margin-bottom: 2em; } - .jumbotron a.btn { + .jumbotron .nav { + margin-bottom: 0; + } + + .jumbotron .nav a.btn { margin-top: 1em; } @@ -145,6 +234,7 @@ ol.conventions .no { margin-top: 10px; } + .conventions-and-protocols div.row-fluid:not(:nth-of-type(1)), .middlewares div.row-fluid:not(:nth-of-type(1)) { margin-top: 2em; } diff --git a/source/img/igorwesome.jpeg b/source/img/igorwesome.jpeg deleted file mode 100644 index 069efb7..0000000 Binary files a/source/img/igorwesome.jpeg and /dev/null differ diff --git a/source/img/igorwhiletrue.jpeg b/source/img/igorwhiletrue.jpeg new file mode 100644 index 0000000..f5c9bd5 Binary files /dev/null and b/source/img/igorwhiletrue.jpeg differ diff --git a/source/index.html b/source/index.html index 1f1c182..df61373 100644 --- a/source/index.html +++ b/source/index.html @@ -1,25 +1,9 @@ --- layout: default +nav_name: home --- {% block full_title %}{{ site.title }} — {{ site.subtitle }}{% endblock %} {% block content %} -
-

Stack

-

Composing HttpKernelInterface middlewares since 2013!

-

-

-

-

@@ -32,7 +16,7 @@

A common layer

Superglobals and side-effecting output mechanisms of PHP make this challenging and force every framework to re-invent.

- But Symfony's HttpKernelInterface provides a solid abstraction, which makes creating and sharing framework-agnostic HTTP filters a breeze! + But Symfony's HttpKernelInterface provides a solid interface, which makes creating and sharing framework-agnostic HTTP filters a breeze!

@@ -78,6 +62,10 @@

Supported frameworks

  • Yolo
  • {% endspaceless %} + +

    + See the full list on symfony.com +


    @@ -94,114 +82,17 @@

    Conventions

    - Yes, leveraging the HTTP abstraction is that easy! + Yes, leveraging the HTTP interface is that easy!

    - -
    - -
    -

    The Toolbox

    -
    -
    -

    Builder

    -

    Builder constructs a nested HttpKernelInterface decorator tree. It models it as a stack of middlewares.

    -

    Learn More

    -
    -
    -

    Session

    -

    Provides a request session for subsequent middlewares. Based on the Silex SessionServiceProvider.

    -

    Learn More

    -
    -
    -
    -
    -

    URL Map

    -

    Provides the ability to map paths to specific HttpKernelInterface applications and dispatches accordingly.

    -

    Learn More

    -
    -
    -

    OAuth

    -

    Provides experimental OAuth authentication for subsequent middlewares. Leverages PHPoAuthLib.

    -

    Learn More

    -
    -
    -
    - -
    - -
    -

    Community Middlewares

    -
    -
    -

    HttpCache

    -

    The Symfony2 cache system relies on the simplicity and power of the HTTP cache as defined in the HTTP specification.

    - -
    -
    -

    GeoIp

    -

    Adds geolocation results to the request for subsequent middlewares. Can use any geocoding provider from http://geocoder-php.org.

    -
    - GitHub -
    -
    -
    -
    -
    -

    IpRestrict

    -

    Stack middleware for restricting application access to specific IP addresses.

    -
    - GitHub -
    -
    -
    -

    Backstage

    -

    Stack middleware for displaying maintenance pages.

    -
    - GitHub -
    -
    -
    -
    - - - - {% endblock %} diff --git a/source/media.html b/source/media.html new file mode 100644 index 0000000..fe4f956 --- /dev/null +++ b/source/media.html @@ -0,0 +1,20 @@ +--- +layout: default +title: Media +nav_name: media +--- +{% block content %} +
    +

    Forum PHP 2013

    + + +

    Symfony Live London 2013

    + + +

    Symfony Live Portland 2013

    + + +

    Symfony Usergroup Zürich

    + +
    +{% endblock %} diff --git a/source/middlewares.html b/source/middlewares.html new file mode 100644 index 0000000..1a786ba --- /dev/null +++ b/source/middlewares.html @@ -0,0 +1,308 @@ +--- +layout: default +title: Community Middlewares +nav_name: middlewares +--- +{% block content %} +
    +

    Community Middlewares

    +
    +
    +

    + HttpCache +

    +

    + by symfony +

    +

    The Symfony2 cache system relies on the simplicity and power of the HTTP cache as defined in the HTTP specification.

    + +
    +
    +

    + CookieGuard +

    +

    + by laravel +

    +

    The laravel cookie guard encrypts outgoing cookies.

    + +
    +
    +
    +
    +

    + GeoIp +

    +

    + by geocoder +

    +

    Adds geolocation results to the request for subsequent middlewares. Can use any geocoding provider from Geocoder.

    + +
    +
    +

    + IpRestrict +

    +

    + by alsar +

    +

    Stack middleware for restricting application access to specific IP addresses.

    + +
    +
    +
    +
    +

    + Backstage +

    +

    + by atst +

    +

    Stack middleware for displaying maintenance pages.

    + +
    +
    +

    + OAuth +

    +

    + by igorw +

    +

    + OAuth authentication. +

    + +
    +
    +
    +
    +

    + Basic Authentication +

    +

    + by dflydev +

    +

    + Provides HTTP Basic Authentication following STACK-2 Authentication conventions. +

    + +
    +
    +

    + Hawk +

    +

    + by dflydev +

    +

    + Provides Hawk authentication following STACK-2 Authentication conventions. +

    + +
    +
    +
    +
    +

    + CORS +

    +

    + by asm89 +

    +

    + Cross-origin resource sharing. +

    + +
    +
    +

    + Robots +

    +

    + by dongilbert +

    +

    + Provides a default robots.txt for non-production environments. +

    + +
    +
    +
    +
    +

    + Negotiation +

    +

    + by willdurand +

    +

    + Content negotiation made easy. +

    + +
    +
    +

    + Honeypot +

    +

    + by CHH +

    +

    + Inserts a trap for spam bots into responses and catches bots + and then gives them a blank page. +

    + +
    +
    +
    +
    +

    + Turbolinks +

    +

    + by Helthe +

    +

    + Stack middleware for Turbolinks. +

    + +
    +
    +

    + Logger +

    +

    + by h4cc +

    +

    + Stack Middleware for logging Requests and Responses to a PSR-3 Logger. +

    + +
    +
    +
    +
    +

    + Throttle +

    +

    + by penoonan +

    +

    + Stack Middleware for throttling requests by IP. +

    + +
    +
    +

    + Whoops wrapper +

    +

    + by moufmouf +

    +

    + Stack Middleware for using the Whoops error handling library. +

    + +
    +
    +
    +
    +

    + Silex middleware +

    +

    + by moufmouf +

    +

    + Turns a Silex application into a Stack middleware. +

    + +
    +
    +

    + Symfony 2 middleware +

    +

    + by moufmouf +

    +

    + Turns a Symfony 2 application (i.e. Kernel) into a Stack middleware. +

    + +
    +
    +
    +
    +

    + PSR-7 Bridge +

    +

    + by h4cc +

    +

    + Converting PSR-7 and Symfony Http Foundation back and forth. +

    + +
    +
    +
    +
    +
    +{% endblock %} diff --git a/source/specs.html b/source/specs.html new file mode 100644 index 0000000..059a947 --- /dev/null +++ b/source/specs.html @@ -0,0 +1,64 @@ +--- +layout: default +title: Conventions and Protocols +nav_name: specs +--- +{% block content %} +
    +

    + Conventions and Protocols +

    +

    + In order to further the goal of interoperability between disparate + HttpKernelInterface implementations, Stack maintains a list + of community driven proposals for Stack conventions and protocols. +

    + +
    +
    +

    STACK-0 Proposals Draft

    +

    + Specification for how community driven Stack proposals will be + written and managed. +

    + +
    +
    +

    STACK-1 Core Draft

    +

    + Specification for writing and interacting with Stack middlewares + and applications. +

    + +
    +
    +
    +
    +

    STACK-2 Authentication Draft

    +

    + Specification for authentication middlewares to follow in order + for applications and authorization middlewares to be able to + interact with each other. +

    + +
    +
    +

    STACK-3 Authorization Draft

    +

    + Specification for authorization middlewares to follow in order + for applications and authentication middlewares to be able to + interact with each other. +

    + +
    +
    +
    +{% endblock %} diff --git a/source/specs/STACK-0.md b/source/specs/STACK-0.md new file mode 100644 index 0000000..8c36d23 --- /dev/null +++ b/source/specs/STACK-0.md @@ -0,0 +1,32 @@ +--- +layout: spec +title: STACK-0 Proposals +status: draft +--- + +Specification for how community driven Stack proposals will be written and +managed. + + * Name: {{ page.title }} + * Editor: Beau Simensen <[beau@dflydev.com](mailto:beau@dflydev.com)> + + +### Language + +The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", +"SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be +interpreted as described in [RFC 2119](http://www.ietf.org/rfc/rfc2119.txt). + + +### Goals + + * To define a workflow for community driven Stack proposals. + + +### Identification + + * Each proposal MUST have an identifier that MUST follow the format of + `STACK-{NUMBER}`. The number SHOULD just be the next available number but it MAY + be a special number. + * Each proposal MUST have a descriptive name that either names the subject of + the proposal or otherwise succinctly defines the focus of the proposal. diff --git a/source/specs/STACK-1.md b/source/specs/STACK-1.md new file mode 100644 index 0000000..3184cc6 --- /dev/null +++ b/source/specs/STACK-1.md @@ -0,0 +1,24 @@ +--- +layout: spec +title: STACK-1 Core +status: draft +--- + +Specification for writing and interacting with Stack middlewares and +applications. + + * Name: {{ page.title }} + * Editor: Beau Simensen <[beau@dflydev.com](mailto:beau@dflydev.com)> + + +### Language + +The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", +"SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be +interpreted as described in [RFC 2119](http://www.ietf.org/rfc/rfc2119.txt). + + +### Goals + + * Specify requirements for a Stack middleware + diff --git a/source/specs/STACK-2.md b/source/specs/STACK-2.md new file mode 100644 index 0000000..efc00ef --- /dev/null +++ b/source/specs/STACK-2.md @@ -0,0 +1,82 @@ +--- +layout: spec +title: STACK-2 Authentication +status: draft +--- + +This document proposes conventions for authentication middlewares to follow in +order for applications and authorization middlewares to be able to interact +with each other. + + * Name: {{ page.title }} + * Editor: Beau Simensen <[beau@dflydev.com](mailto:beau@dflydev.com)> + + +### Language + +The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", +"SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be +interpreted as described in [RFC 2119](http://www.ietf.org/rfc/rfc2119.txt). + + +### Goals + + * To allow authentication middlewares to communicate when a request has been + authenticated. + * To allow other middlewares or applications to communicate whether or not + the authentication was accepted (for example, authorization failed or is + required). + * To allow for some coexistence between multiple Stack authentiation + middlewares for the same request. + + +### Stack Authentication Middlewares + +#### Token + +A Stack authentication token represents the user or service driving the user +agent making a request. The token MUST be stored as the `stack.authn.token` +request attribute. The token MUST either be a string or serializable. + + +#### Authentication + +A Stack authentication middleware is free to use whatever means necessary to +authenticate a request. The end result of a successfully authenticated request +should be that the `stack.authn.token` attribute on the request is set to a +valid token. + +If a request has authentication credentials that are invalid for any reason a +Stack authentication middleware MAY either immediately challenge or return +another response (for example, a 400 error response). + +If a request already has the `stack.authn.token` attribute set a Stack +authentication middleware MUST NOT attempt to further authenticate the request. +However, the Stack authentication middleware MAY act further upon inspecting +the response. + + +#### Integration with Stack Authorization + +Stack authentication middlewares SHOULD inspect the response from the wrapped +app to see if it has a status code of `401` and a `WWW-Authenticate: Stack` +header. In this case, the Stack authentication middleware can use its own best +judgement to determine whether or not it should issue a challenge. + +Modifying or replacing the response is allowed but a Stack authentication +middleware MUST NOT challenge unless the response is in this state. If a Stack +authentication middleware does not change the `WWW-Authenticate` value other +Stack authentication middlewares will be given an opportunity to challenge. + + +### Implementations + + * [dflydev/stack-authentication](https://github.com/dflydev/dflydev-stack-authentication) + A collection of middlewares designed to help authentication middleware + implementors adhere to the STACK-2 Authentication conventions. + * [dflydev/stack-hawk](https://github.com/dflydev/dflydev-stack-hawk) + [Hawk](https://github.com/hueniverse/hawk) authentication middleware. + * [dflydev/stack-basic-authentication](https://github.com/dflydev/dflydev-stack-basic-authentication) + HTTP Basic Authentication middleware. + * [jsor/stack-jwt](https://github.com/jsor/stack-jwt) + JSON Web Token (JWT) authentication middleware. diff --git a/source/specs/STACK-3.md b/source/specs/STACK-3.md new file mode 100644 index 0000000..c0c4456 --- /dev/null +++ b/source/specs/STACK-3.md @@ -0,0 +1,48 @@ +--- +layout: spec +title: STACK-3 Authorization +status: draft +--- + +This document proposes conventions for authorization middlewares to follow in +order for applications and authentication middlewares to be able to interact +with each other. + + * Name: {{ page.title }} + * Editor: Beau Simensen <[beau@dflydev.com](mailto:beau@dflydev.com)> + + +### Language + +The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", +"SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be +interpreted as described in [RFC 2119](http://www.ietf.org/rfc/rfc2119.txt). + + +### Goals + + * To instruct authorization middlewares on how to determine if a request has + been authenticated by a Stack authentication middleware. + * To instruct authorization middlewares on how to respond in the event that + authorization fails when a request is authenticated. + * To instruct authorization middlewares on how to respond in the event that + authorization fails when a request is not authenticated. + + +### Stack Authorization Middlewares and Applications + +Authorization MUST be based on the token stored in the `stack.authn.token` +request attribute. + +If a token exists but the request is not authorized, a Stack authorization +middleware MUST return a `403` response. + +If a token does not exist, a Stack authorization middleware SHOULD return a +`401` response with a `WWW-Authenticate: Stack` header. This will give the +appropriate Stack authentication middlewares an opportunity to challenge as +appropriate. + + +### Implementations + + * None diff --git a/source/toolbox.html b/source/toolbox.html new file mode 100644 index 0000000..c7e6b98 --- /dev/null +++ b/source/toolbox.html @@ -0,0 +1,56 @@ +--- +layout: default +title: The Toolbox +nav_name: toolbox +--- +{% block content %} +
    +

    The Toolbox

    +
    +
    +

    Builder

    +

    Builder constructs a nested HttpKernelInterface decorator tree. It models it as a stack of middlewares.

    + +
    +
    +

    Run

    +

    Shortcut function for handling HttpKernel front-controller boilerplate.

    + +
    +
    +
    +
    +

    Session

    +

    Provides a request session for subsequent middlewares. Based on the Silex SessionServiceProvider.

    + +
    +
    +

    URL Map

    +

    Provides the ability to map paths to specific HttpKernelInterface applications and dispatches accordingly.

    + +
    +
    +
    +
    +

    Lazy Kernel

    +

    A lazy proxy for HttpKernelInterface, allows an app to be loaded on demand when combined with URL Map.

    + +
    +
    +
    +{% endblock %}