From ed01011dfb563e7d8ab13b6a0718eed7bf857880 Mon Sep 17 00:00:00 2001 From: Marcin Zelent Date: Fri, 16 Mar 2018 17:48:44 +0100 Subject: Moved PHP website to separate directory. --- pollutometer-php/app/.htaccess | 7 + pollutometer-php/app/AppCache.php | 7 + pollutometer-php/app/AppKernel.php | 54 + .../app/Resources/views/base.html.twig | 33 + .../app/Resources/views/default/AllData.html.twig | 35 + .../Resources/views/default/LastWeekData.html.twig | 35 + .../views/default/TrainSchedule.html.twig | 28 + .../app/Resources/views/default/index.html.twig | 34 + pollutometer-php/app/config/config.yml | 69 + pollutometer-php/app/config/config_dev.yml | 41 + pollutometer-php/app/config/config_prod.yml | 22 + pollutometer-php/app/config/config_test.yml | 16 + pollutometer-php/app/config/parameters.yml | 12 + pollutometer-php/app/config/parameters.yml.dist | 19 + pollutometer-php/app/config/routing.yml | 3 + pollutometer-php/app/config/routing_dev.yml | 14 + pollutometer-php/app/config/security.yml | 24 + pollutometer-php/app/config/services.yml | 38 + pollutometer-php/bin/console | 27 + pollutometer-php/bin/symfony_requirements | 146 + pollutometer-php/clean.sh | 1 + pollutometer-php/composer.json | 72 + pollutometer-php/composer.lock | 3602 ++++++++++++++++++++ pollutometer-php/phpunit.xml.dist | 31 + pollutometer-php/rebuild.sh | 2 + pollutometer-php/src/.htaccess | 7 + pollutometer-php/src/AppBundle/AppBundle.php | 9 + .../Controller/AllDataAverageController.php | 66 + .../src/AppBundle/Controller/AllDataController.php | 43 + .../src/AppBundle/Controller/HomeController.php | 60 + .../Controller/LastWeekDataAverageController.php | 66 + .../Controller/LastWeekDataController.php | 42 + .../src/AppBundle/Controller/NewDataController.php | 42 + .../Controller/TrainScheduleController.php | 110 + pollutometer-php/src/AppBundle/Utils/Aqi.php | 43 + .../AppBundle/Controller/DefaultControllerTest.php | 18 + pollutometer-php/var/SymfonyRequirements.php | 817 +++++ pollutometer-php/var/cache/.gitkeep | 0 pollutometer-php/var/logs/.gitkeep | 0 pollutometer-php/var/sessions/.gitkeep | 0 pollutometer-php/web.config | 35 + pollutometer-php/web/.htaccess | 68 + pollutometer-php/web/app.php | 21 + pollutometer-php/web/app_dev.php | 31 + pollutometer-php/web/apple-touch-icon.png | Bin 0 -> 2092 bytes pollutometer-php/web/config.php | 422 +++ pollutometer-php/web/favicon.ico | Bin 0 -> 6518 bytes pollutometer-php/web/js/AllDataChart.js | 63 + pollutometer-php/web/js/LastWeekDataChart.js | 63 + pollutometer-php/web/js/realtime.js | 110 + pollutometer-php/web/robots.txt | 5 + 51 files changed, 6513 insertions(+) create mode 100644 pollutometer-php/app/.htaccess create mode 100644 pollutometer-php/app/AppCache.php create mode 100644 pollutometer-php/app/AppKernel.php create mode 100644 pollutometer-php/app/Resources/views/base.html.twig create mode 100644 pollutometer-php/app/Resources/views/default/AllData.html.twig create mode 100644 pollutometer-php/app/Resources/views/default/LastWeekData.html.twig create mode 100644 pollutometer-php/app/Resources/views/default/TrainSchedule.html.twig create mode 100644 pollutometer-php/app/Resources/views/default/index.html.twig create mode 100644 pollutometer-php/app/config/config.yml create mode 100644 pollutometer-php/app/config/config_dev.yml create mode 100644 pollutometer-php/app/config/config_prod.yml create mode 100644 pollutometer-php/app/config/config_test.yml create mode 100644 pollutometer-php/app/config/parameters.yml create mode 100644 pollutometer-php/app/config/parameters.yml.dist create mode 100644 pollutometer-php/app/config/routing.yml create mode 100644 pollutometer-php/app/config/routing_dev.yml create mode 100644 pollutometer-php/app/config/security.yml create mode 100644 pollutometer-php/app/config/services.yml create mode 100755 pollutometer-php/bin/console create mode 100755 pollutometer-php/bin/symfony_requirements create mode 100644 pollutometer-php/clean.sh create mode 100644 pollutometer-php/composer.json create mode 100644 pollutometer-php/composer.lock create mode 100644 pollutometer-php/phpunit.xml.dist create mode 100644 pollutometer-php/rebuild.sh create mode 100644 pollutometer-php/src/.htaccess create mode 100644 pollutometer-php/src/AppBundle/AppBundle.php create mode 100644 pollutometer-php/src/AppBundle/Controller/AllDataAverageController.php create mode 100644 pollutometer-php/src/AppBundle/Controller/AllDataController.php create mode 100644 pollutometer-php/src/AppBundle/Controller/HomeController.php create mode 100644 pollutometer-php/src/AppBundle/Controller/LastWeekDataAverageController.php create mode 100644 pollutometer-php/src/AppBundle/Controller/LastWeekDataController.php create mode 100644 pollutometer-php/src/AppBundle/Controller/NewDataController.php create mode 100644 pollutometer-php/src/AppBundle/Controller/TrainScheduleController.php create mode 100644 pollutometer-php/src/AppBundle/Utils/Aqi.php create mode 100644 pollutometer-php/tests/AppBundle/Controller/DefaultControllerTest.php create mode 100644 pollutometer-php/var/SymfonyRequirements.php create mode 100644 pollutometer-php/var/cache/.gitkeep create mode 100644 pollutometer-php/var/logs/.gitkeep create mode 100644 pollutometer-php/var/sessions/.gitkeep create mode 100644 pollutometer-php/web.config create mode 100644 pollutometer-php/web/.htaccess create mode 100644 pollutometer-php/web/app.php create mode 100644 pollutometer-php/web/app_dev.php create mode 100644 pollutometer-php/web/apple-touch-icon.png create mode 100644 pollutometer-php/web/config.php create mode 100644 pollutometer-php/web/favicon.ico create mode 100644 pollutometer-php/web/js/AllDataChart.js create mode 100644 pollutometer-php/web/js/LastWeekDataChart.js create mode 100644 pollutometer-php/web/js/realtime.js create mode 100644 pollutometer-php/web/robots.txt diff --git a/pollutometer-php/app/.htaccess b/pollutometer-php/app/.htaccess new file mode 100644 index 0000000..fb1de45 --- /dev/null +++ b/pollutometer-php/app/.htaccess @@ -0,0 +1,7 @@ + + Require all denied + + + Order deny,allow + Deny from all + diff --git a/pollutometer-php/app/AppCache.php b/pollutometer-php/app/AppCache.php new file mode 100644 index 0000000..639ec2c --- /dev/null +++ b/pollutometer-php/app/AppCache.php @@ -0,0 +1,7 @@ +getEnvironment(), ['dev', 'test'], true)) { + $bundles[] = new Symfony\Bundle\DebugBundle\DebugBundle(); + $bundles[] = new Symfony\Bundle\WebProfilerBundle\WebProfilerBundle(); + $bundles[] = new Sensio\Bundle\DistributionBundle\SensioDistributionBundle(); + + if ('dev' === $this->getEnvironment()) { + $bundles[] = new Sensio\Bundle\GeneratorBundle\SensioGeneratorBundle(); + $bundles[] = new Symfony\Bundle\WebServerBundle\WebServerBundle(); + } + } + + return $bundles; + } + + public function getRootDir() + { + return __DIR__; + } + + public function getCacheDir() + { + return dirname(__DIR__).'/var/cache/'.$this->getEnvironment(); + } + + public function getLogDir() + { + return dirname(__DIR__).'/var/logs'; + } + + public function registerContainerConfiguration(LoaderInterface $loader) + { + $loader->load($this->getRootDir().'/config/config_'.$this->getEnvironment().'.yml'); + } +} diff --git a/pollutometer-php/app/Resources/views/base.html.twig b/pollutometer-php/app/Resources/views/base.html.twig new file mode 100644 index 0000000..f8d8374 --- /dev/null +++ b/pollutometer-php/app/Resources/views/base.html.twig @@ -0,0 +1,33 @@ + + + + + {% block title %}Welcome!{% endblock %} + {% block stylesheets %}{% endblock %} + + + + + +
+ {% block body %}{% endblock %} +
+ {% block javascripts %}{% endblock %} + + diff --git a/pollutometer-php/app/Resources/views/default/AllData.html.twig b/pollutometer-php/app/Resources/views/default/AllData.html.twig new file mode 100644 index 0000000..7bc33af --- /dev/null +++ b/pollutometer-php/app/Resources/views/default/AllData.html.twig @@ -0,0 +1,35 @@ +{% extends 'base.html.twig' %} + +{% block body %} +
+
+ + + + + + + + + + + + {% for table in data %} + + + + + + + {% endfor %} +
TimeStampCoNoSo
{{ table.TimeStamp }}{{ table.Co }}{{ table.No }}{{ table.So }}
+
+
+ +
+
+{% endblock %} +{% block javascripts %} + + +
+ + + + + + + + + + + + {% for table in data %} + + + + + + + {% endfor %} +
TimeStampCoNoSo
{{ table.TimeStamp }}{{ table.Co }}{{ table.No }}{{ table.So }}
+
+
+ +
+ +{% endblock %} +{% block javascripts %} + + + + + Name + Time + Date + Destination + AQI + + + + + {% for table in data %} + {{ table.name }} + {{ table.time }} + {{ table.date }} + {{ table.finalStop }} + {{ table.direction }} + + + {% endfor %} + +{% endblock %} +{% block javascripts %} +{% endblock %} \ No newline at end of file diff --git a/pollutometer-php/app/Resources/views/default/index.html.twig b/pollutometer-php/app/Resources/views/default/index.html.twig new file mode 100644 index 0000000..176f519 --- /dev/null +++ b/pollutometer-php/app/Resources/views/default/index.html.twig @@ -0,0 +1,34 @@ +{% extends 'base.html.twig' %} + +{% block body %} +
+
+ + + + + + + + + + + + + + + + + +
TimeStampCoNoSo
{{ TimeStamp }}{{ Co }}{{ No }}{{ So }}
+

The current air quality index is {{ Aqi }}

+
+
+ +
+
+ +{% endblock %} +{% block javascripts %} + +{% endblock %} diff --git a/pollutometer-php/app/config/config.yml b/pollutometer-php/app/config/config.yml new file mode 100644 index 0000000..4819c20 --- /dev/null +++ b/pollutometer-php/app/config/config.yml @@ -0,0 +1,69 @@ +imports: + - { resource: parameters.yml } + - { resource: security.yml } + - { resource: services.yml } + +# Put parameters here that don't need to change on each machine where the app is deployed +# https://symfony.com/doc/current/best_practices/configuration.html#application-related-configuration +parameters: + locale: en + +framework: + #esi: ~ + #translator: { fallbacks: ['%locale%'] } + secret: '%secret%' + router: + resource: '%kernel.project_dir%/app/config/routing.yml' + strict_requirements: ~ + form: ~ + csrf_protection: ~ + validation: { enable_annotations: true } + #serializer: { enable_annotations: true } + templating: + engines: ['twig'] + default_locale: '%locale%' + trusted_hosts: ~ + session: + # https://symfony.com/doc/current/reference/configuration/framework.html#handler-id + handler_id: session.handler.native_file + save_path: '%kernel.project_dir%/var/sessions/%kernel.environment%' + fragments: ~ + http_method_override: true + assets: ~ + php_errors: + log: true + +# Twig Configuration +twig: + debug: '%kernel.debug%' + strict_variables: '%kernel.debug%' + +# Doctrine Configuration +doctrine: + dbal: + driver: pdo_mysql + host: '%database_host%' + port: '%database_port%' + dbname: '%database_name%' + user: '%database_user%' + password: '%database_password%' + charset: UTF8 + # if using pdo_sqlite as your database driver: + # 1. add the path in parameters.yml + # e.g. database_path: '%kernel.project_dir%/var/data/data.sqlite' + # 2. Uncomment database_path in parameters.yml + # 3. Uncomment next line: + #path: '%database_path%' + + orm: + auto_generate_proxy_classes: '%kernel.debug%' + naming_strategy: doctrine.orm.naming_strategy.underscore + auto_mapping: true + +# Swiftmailer Configuration +swiftmailer: + transport: '%mailer_transport%' + host: '%mailer_host%' + username: '%mailer_user%' + password: '%mailer_password%' + spool: { type: memory } diff --git a/pollutometer-php/app/config/config_dev.yml b/pollutometer-php/app/config/config_dev.yml new file mode 100644 index 0000000..3a43646 --- /dev/null +++ b/pollutometer-php/app/config/config_dev.yml @@ -0,0 +1,41 @@ +imports: + - { resource: config.yml } + +framework: + router: + resource: '%kernel.project_dir%/app/config/routing_dev.yml' + strict_requirements: true + profiler: { only_exceptions: false } + +web_profiler: + toolbar: true + intercept_redirects: false + +monolog: + handlers: + main: + type: stream + path: '%kernel.logs_dir%/%kernel.environment%.log' + level: debug + channels: ['!event'] + console: + type: console + process_psr_3_messages: false + channels: ['!event', '!doctrine', '!console'] + # To follow logs in real time, execute the following command: + # `bin/console server:log -vv` + server_log: + type: server_log + process_psr_3_messages: false + host: 127.0.0.1:9911 + # uncomment to get logging in your browser + # you may have to allow bigger header sizes in your Web server configuration + #firephp: + # type: firephp + # level: info + #chromephp: + # type: chromephp + # level: info + +#swiftmailer: +# delivery_addresses: ['me@example.com'] diff --git a/pollutometer-php/app/config/config_prod.yml b/pollutometer-php/app/config/config_prod.yml new file mode 100644 index 0000000..5d460ce --- /dev/null +++ b/pollutometer-php/app/config/config_prod.yml @@ -0,0 +1,22 @@ +imports: + - { resource: config.yml } + +#doctrine: +# orm: +# metadata_cache_driver: apc +# result_cache_driver: apc +# query_cache_driver: apc + +monolog: + handlers: + main: + type: fingers_crossed + action_level: error + handler: nested + nested: + type: stream + path: '%kernel.logs_dir%/%kernel.environment%.log' + level: debug + console: + type: console + process_psr_3_messages: false diff --git a/pollutometer-php/app/config/config_test.yml b/pollutometer-php/app/config/config_test.yml new file mode 100644 index 0000000..2f6d925 --- /dev/null +++ b/pollutometer-php/app/config/config_test.yml @@ -0,0 +1,16 @@ +imports: + - { resource: config_dev.yml } + +framework: + test: ~ + session: + storage_id: session.storage.mock_file + profiler: + collect: false + +web_profiler: + toolbar: false + intercept_redirects: false + +swiftmailer: + disable_delivery: true diff --git a/pollutometer-php/app/config/parameters.yml b/pollutometer-php/app/config/parameters.yml new file mode 100644 index 0000000..355c026 --- /dev/null +++ b/pollutometer-php/app/config/parameters.yml @@ -0,0 +1,12 @@ +# This file is auto-generated during the composer install +parameters: + database_host: 127.0.0.1 + database_port: null + database_name: symfony + database_user: root + database_password: null + mailer_transport: smtp + mailer_host: 'mail.cock.li:587' + mailer_user: ***REMOVED*** + mailer_password: ***REMOVED*** + secret: ThisTokenIsNotSoSecretChangeIt diff --git a/pollutometer-php/app/config/parameters.yml.dist b/pollutometer-php/app/config/parameters.yml.dist new file mode 100644 index 0000000..2c20ddc --- /dev/null +++ b/pollutometer-php/app/config/parameters.yml.dist @@ -0,0 +1,19 @@ +# This file is a "template" of what your parameters.yml file should look like +# Set parameters here that may be different on each deployment target of the app, e.g. development, staging, production. +# https://symfony.com/doc/current/best_practices/configuration.html#infrastructure-related-configuration +parameters: + database_host: 127.0.0.1 + database_port: ~ + database_name: symfony + database_user: root + database_password: ~ + # You should uncomment this if you want to use pdo_sqlite + #database_path: '%kernel.project_dir%/var/data/data.sqlite' + + mailer_transport: smtp + mailer_host: 127.0.0.1 + mailer_user: ~ + mailer_password: ~ + + # A secret key that's used to generate certain security-related tokens + secret: ThisTokenIsNotSoSecretChangeIt diff --git a/pollutometer-php/app/config/routing.yml b/pollutometer-php/app/config/routing.yml new file mode 100644 index 0000000..2ec067f --- /dev/null +++ b/pollutometer-php/app/config/routing.yml @@ -0,0 +1,3 @@ +app: + resource: '@AppBundle/Controller/' + type: annotation diff --git a/pollutometer-php/app/config/routing_dev.yml b/pollutometer-php/app/config/routing_dev.yml new file mode 100644 index 0000000..20602eb --- /dev/null +++ b/pollutometer-php/app/config/routing_dev.yml @@ -0,0 +1,14 @@ +_wdt: + resource: '@WebProfilerBundle/Resources/config/routing/wdt.xml' + prefix: /_wdt + +_profiler: + resource: '@WebProfilerBundle/Resources/config/routing/profiler.xml' + prefix: /_profiler + +_errors: + resource: '@TwigBundle/Resources/config/routing/errors.xml' + prefix: /_error + +_main: + resource: routing.yml diff --git a/pollutometer-php/app/config/security.yml b/pollutometer-php/app/config/security.yml new file mode 100644 index 0000000..0e0b7cb --- /dev/null +++ b/pollutometer-php/app/config/security.yml @@ -0,0 +1,24 @@ +# To get started with security, check out the documentation: +# https://symfony.com/doc/current/security.html +security: + + # https://symfony.com/doc/current/security.html#b-configuring-how-users-are-loaded + providers: + in_memory: + memory: ~ + + firewalls: + # disables authentication for assets and the profiler, adapt it according to your needs + dev: + pattern: ^/(_(profiler|wdt)|css|images|js)/ + security: false + + main: + anonymous: ~ + # activate different ways to authenticate + + # https://symfony.com/doc/current/security.html#a-configuring-how-your-users-will-authenticate + #http_basic: ~ + + # https://symfony.com/doc/current/security/form_login_setup.html + #form_login: ~ diff --git a/pollutometer-php/app/config/services.yml b/pollutometer-php/app/config/services.yml new file mode 100644 index 0000000..7ddee7c --- /dev/null +++ b/pollutometer-php/app/config/services.yml @@ -0,0 +1,38 @@ +# Learn more about services, parameters and containers at +# https://symfony.com/doc/current/service_container.html +parameters: + #parameter_name: value + +services: + # default configuration for services in *this* file + _defaults: + # automatically injects dependencies in your services + autowire: true + # automatically registers your services as commands, event subscribers, etc. + autoconfigure: true + # this means you cannot fetch services directly from the container via $container->get() + # if you need to do this, you can override this setting on individual services + public: false + + # makes classes in src/AppBundle available to be used as services + # this creates a service per class whose id is the fully-qualified class name + AppBundle\: + resource: '../../src/AppBundle/*' + # you can exclude directories or files + # but if a service is unused, it's removed anyway + exclude: '../../src/AppBundle/{Entity,Repository,Tests}' + + # controllers are imported separately to make sure they're public + # and have a tag that allows actions to type-hint services + AppBundle\Controller\: + resource: '../../src/AppBundle/Controller' + public: true + tags: ['controller.service_arguments'] + + AppBundle\Utils\Aqi: + public: false + + # add more services, or override services that need manual wiring + # AppBundle\Service\ExampleService: + # arguments: + # $someArgument: 'some_value' diff --git a/pollutometer-php/bin/console b/pollutometer-php/bin/console new file mode 100755 index 0000000..0629023 --- /dev/null +++ b/pollutometer-php/bin/console @@ -0,0 +1,27 @@ +#!/usr/bin/env php +getParameterOption(['--env', '-e'], getenv('SYMFONY_ENV') ?: 'dev'); +$debug = getenv('SYMFONY_DEBUG') !== '0' && !$input->hasParameterOption(['--no-debug', '']) && $env !== 'prod'; + +if ($debug) { + Debug::enable(); +} + +$kernel = new AppKernel($env, $debug); +$application = new Application($kernel); +$application->run($input); diff --git a/pollutometer-php/bin/symfony_requirements b/pollutometer-php/bin/symfony_requirements new file mode 100755 index 0000000..a7bf65a --- /dev/null +++ b/pollutometer-php/bin/symfony_requirements @@ -0,0 +1,146 @@ +#!/usr/bin/env php +getPhpIniConfigPath(); + +echo_title('Symfony Requirements Checker'); + +echo '> PHP is using the following php.ini file:'.PHP_EOL; +if ($iniPath) { + echo_style('green', ' '.$iniPath); +} else { + echo_style('yellow', ' WARNING: No configuration file (php.ini) used by PHP!'); +} + +echo PHP_EOL.PHP_EOL; + +echo '> Checking Symfony requirements:'.PHP_EOL.' '; + +$messages = array(); +foreach ($symfonyRequirements->getRequirements() as $req) { + if ($helpText = get_error_message($req, $lineSize)) { + echo_style('red', 'E'); + $messages['error'][] = $helpText; + } else { + echo_style('green', '.'); + } +} + +$checkPassed = empty($messages['error']); + +foreach ($symfonyRequirements->getRecommendations() as $req) { + if ($helpText = get_error_message($req, $lineSize)) { + echo_style('yellow', 'W'); + $messages['warning'][] = $helpText; + } else { + echo_style('green', '.'); + } +} + +if ($checkPassed) { + echo_block('success', 'OK', 'Your system is ready to run Symfony projects'); +} else { + echo_block('error', 'ERROR', 'Your system is not ready to run Symfony projects'); + + echo_title('Fix the following mandatory requirements', 'red'); + + foreach ($messages['error'] as $helpText) { + echo ' * '.$helpText.PHP_EOL; + } +} + +if (!empty($messages['warning'])) { + echo_title('Optional recommendations to improve your setup', 'yellow'); + + foreach ($messages['warning'] as $helpText) { + echo ' * '.$helpText.PHP_EOL; + } +} + +echo PHP_EOL; +echo_style('title', 'Note'); +echo ' The command console could use a different php.ini file'.PHP_EOL; +echo_style('title', '~~~~'); +echo ' than the one used with your web server. To be on the'.PHP_EOL; +echo ' safe side, please check the requirements from your web'.PHP_EOL; +echo ' server using the '; +echo_style('yellow', 'web/config.php'); +echo ' script.'.PHP_EOL; +echo PHP_EOL; + +exit($checkPassed ? 0 : 1); + +function get_error_message(Requirement $requirement, $lineSize) +{ + if ($requirement->isFulfilled()) { + return; + } + + $errorMessage = wordwrap($requirement->getTestMessage(), $lineSize - 3, PHP_EOL.' ').PHP_EOL; + $errorMessage .= ' > '.wordwrap($requirement->getHelpText(), $lineSize - 5, PHP_EOL.' > ').PHP_EOL; + + return $errorMessage; +} + +function echo_title($title, $style = null) +{ + $style = $style ?: 'title'; + + echo PHP_EOL; + echo_style($style, $title.PHP_EOL); + echo_style($style, str_repeat('~', strlen($title)).PHP_EOL); + echo PHP_EOL; +} + +function echo_style($style, $message) +{ + // ANSI color codes + $styles = array( + 'reset' => "\033[0m", + 'red' => "\033[31m", + 'green' => "\033[32m", + 'yellow' => "\033[33m", + 'error' => "\033[37;41m", + 'success' => "\033[37;42m", + 'title' => "\033[34m", + ); + $supports = has_color_support(); + + echo($supports ? $styles[$style] : '').$message.($supports ? $styles['reset'] : ''); +} + +function echo_block($style, $title, $message) +{ + $message = ' '.trim($message).' '; + $width = strlen($message); + + echo PHP_EOL.PHP_EOL; + + echo_style($style, str_repeat(' ', $width)); + echo PHP_EOL; + echo_style($style, str_pad(' ['.$title.']', $width, ' ', STR_PAD_RIGHT)); + echo PHP_EOL; + echo_style($style, $message); + echo PHP_EOL; + echo_style($style, str_repeat(' ', $width)); + echo PHP_EOL; +} + +function has_color_support() +{ + static $support; + + if (null === $support) { + if (DIRECTORY_SEPARATOR == '\\') { + $support = false !== getenv('ANSICON') || 'ON' === getenv('ConEmuANSI'); + } else { + $support = function_exists('posix_isatty') && @posix_isatty(STDOUT); + } + } + + return $support; +} diff --git a/pollutometer-php/clean.sh b/pollutometer-php/clean.sh new file mode 100644 index 0000000..02d7baf --- /dev/null +++ b/pollutometer-php/clean.sh @@ -0,0 +1 @@ +rm -Rf app bin src tests var web .gitignore composer.json composer.lock composer.phar phpunit.xml.dist README.md web.config diff --git a/pollutometer-php/composer.json b/pollutometer-php/composer.json new file mode 100644 index 0000000..b11e53e --- /dev/null +++ b/pollutometer-php/composer.json @@ -0,0 +1,72 @@ +{ + "name": "pollution-sensor", + "license": "proprietary", + "type": "project", + "autoload": { + "psr-4": { + "AppBundle\\": "src/AppBundle" + }, + "classmap": [ + "app/AppKernel.php", + "app/AppCache.php" + ] + }, + "autoload-dev": { + "psr-4": { + "Tests\\": "tests/" + }, + "files": [ + "vendor/symfony/symfony/src/Symfony/Component/VarDumper/Resources/functions/dump.php" + ] + }, + "require": { + "php": ">=7.0", + "doctrine/doctrine-bundle": "^1.6", + "doctrine/orm": "^2.5", + "incenteev/composer-parameter-handler": "^2.0", + "phpunit/phpunit": "^5.7", + "sensio/distribution-bundle": "^5.0.19", + "sensio/framework-extra-bundle": "^3.0.2", + "symfony/monolog-bundle": "^3.1.0", + "symfony/polyfill-apcu": "^1.0", + "symfony/swiftmailer-bundle": "^2.3.10", + "symfony/symfony": "3.3.*", + "symfony/web-server-bundle": "^3.3", + "twig/twig": "^1.0||^2.0" + }, + "require-dev": { + "sensio/generator-bundle": "^3.0", + "symfony/phpunit-bridge": "^3.0" + }, + "scripts": { + "symfony-scripts": [ + "Incenteev\\ParameterHandler\\ScriptHandler::buildParameters", + "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::buildBootstrap", + "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::clearCache", + "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installAssets", + "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installRequirementsFile", + "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::prepareDeploymentTarget" + ], + "post-install-cmd": [ + "@symfony-scripts" + ], + "post-update-cmd": [ + "@symfony-scripts" + ] + }, + "config": { + "sort-packages": true + }, + "extra": { + "symfony-app-dir": "app", + "symfony-bin-dir": "bin", + "symfony-var-dir": "var", + "symfony-web-dir": "web", + "symfony-tests-dir": "tests", + "symfony-assets-install": "relative", + "incenteev-parameters": { + "file": "app/config/parameters.yml" + }, + "branch-alias": null + } +} diff --git a/pollutometer-php/composer.lock b/pollutometer-php/composer.lock new file mode 100644 index 0000000..55dc1ec --- /dev/null +++ b/pollutometer-php/composer.lock @@ -0,0 +1,3602 @@ +{ + "_readme": [ + "This file locks the dependencies of your project to a known state", + "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file", + "This file is @generated automatically" + ], + "content-hash": "d42561b82ef941aeac12c844bd2d4812", + "packages": [ + { + "name": "composer/ca-bundle", + "version": "1.1.0", + "source": { + "type": "git", + "url": "https://github.com/composer/ca-bundle.git", + "reference": "943b2c4fcad1ef178d16a713c2468bf7e579c288" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/composer/ca-bundle/zipball/943b2c4fcad1ef178d16a713c2468bf7e579c288", + "reference": "943b2c4fcad1ef178d16a713c2468bf7e579c288", + "shasum": "" + }, + "require": { + "ext-openssl": "*", + "ext-pcre": "*", + "php": "^5.3.2 || ^7.0" + }, + "require-dev": { + "phpunit/phpunit": "^4.8.35", + "psr/log": "^1.0", + "symfony/process": "^2.5 || ^3.0 || ^4.0" + }, + "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-11-29T09:37:33+00:00" + }, + { + "name": "doctrine/annotations", + "version": "v1.4.0", + "source": { + "type": "git", + "url": "https://github.com/doctrine/annotations.git", + "reference": "54cacc9b81758b14e3ce750f205a393d52339e97" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/annotations/zipball/54cacc9b81758b14e3ce750f205a393d52339e97", + "reference": "54cacc9b81758b14e3ce750f205a393d52339e97", + "shasum": "" + }, + "require": { + "doctrine/lexer": "1.*", + "php": "^5.6 || ^7.0" + }, + "require-dev": { + "doctrine/cache": "1.*", + "phpunit/phpunit": "^5.7" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.4.x-dev" + } + }, + "autoload": { + "psr-4": { + "Doctrine\\Common\\Annotations\\": "lib/Doctrine/Common/Annotations" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Roman Borschel", + "email": "roman@code-factory.org" + }, + { + "name": "Benjamin Eberlei", + "email": "kontakt@beberlei.de" + }, + { + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" + }, + { + "name": "Jonathan Wage", + "email": "jonwage@gmail.com" + }, + { + "name": "Johannes Schmitt", + "email": "schmittjoh@gmail.com" + } + ], + "description": "Docblock Annotations Parser", + "homepage": "http://www.doctrine-project.org", + "keywords": [ + "annotations", + "docblock", + "parser" + ], + "time": "2017-02-24T16:22:25+00:00" + }, + { + "name": "doctrine/cache", + "version": "v1.6.2", + "source": { + "type": "git", + "url": "https://github.com/doctrine/cache.git", + "reference": "eb152c5100571c7a45470ff2a35095ab3f3b900b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/cache/zipball/eb152c5100571c7a45470ff2a35095ab3f3b900b", + "reference": "eb152c5100571c7a45470ff2a35095ab3f3b900b", + "shasum": "" + }, + "require": { + "php": "~5.5|~7.0" + }, + "conflict": { + "doctrine/common": ">2.2,<2.4" + }, + "require-dev": { + "phpunit/phpunit": "~4.8|~5.0", + "predis/predis": "~1.0", + "satooshi/php-coveralls": "~0.6" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.6.x-dev" + } + }, + "autoload": { + "psr-4": { + "Doctrine\\Common\\Cache\\": "lib/Doctrine/Common/Cache" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Roman Borschel", + "email": "roman@code-factory.org" + }, + { + "name": "Benjamin Eberlei", + "email": "kontakt@beberlei.de" + }, + { + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" + }, + { + "name": "Jonathan Wage", + "email": "jonwage@gmail.com" + }, + { + "name": "Johannes Schmitt", + "email": "schmittjoh@gmail.com" + } + ], + "description": "Caching library offering an object-oriented API for many cache backends", + "homepage": "http://www.doctrine-project.org", + "keywords": [ + "cache", + "caching" + ], + "time": "2017-07-22T12:49:21+00:00" + }, + { + "name": "doctrine/collections", + "version": "v1.4.0", + "source": { + "type": "git", + "url": "https://github.com/doctrine/collections.git", + "reference": "1a4fb7e902202c33cce8c55989b945612943c2ba" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/collections/zipball/1a4fb7e902202c33cce8c55989b945612943c2ba", + "reference": "1a4fb7e902202c33cce8c55989b945612943c2ba", + "shasum": "" + }, + "require": { + "php": "^5.6 || ^7.0" + }, + "require-dev": { + "doctrine/coding-standard": "~0.1@dev", + "phpunit/phpunit": "^5.7" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.3.x-dev" + } + }, + "autoload": { + "psr-0": { + "Doctrine\\Common\\Collections\\": "lib/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Roman Borschel", + "email": "roman@code-factory.org" + }, + { + "name": "Benjamin Eberlei", + "email": "kontakt@beberlei.de" + }, + { + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" + }, + { + "name": "Jonathan Wage", + "email": "jonwage@gmail.com" + }, + { + "name": "Johannes Schmitt", + "email": "schmittjoh@gmail.com" + } + ], + "description": "Collections Abstraction library", + "homepage": "http://www.doctrine-project.org", + "keywords": [ + "array", + "collections", + "iterator" + ], + "time": "2017-01-03T10:49:41+00:00" + }, + { + "name": "doctrine/common", + "version": "v2.7.3", + "source": { + "type": "git", + "url": "https://github.com/doctrine/common.git", + "reference": "4acb8f89626baafede6ee5475bc5844096eba8a9" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/common/zipball/4acb8f89626baafede6ee5475bc5844096eba8a9", + "reference": "4acb8f89626baafede6ee5475bc5844096eba8a9", + "shasum": "" + }, + "require": { + "doctrine/annotations": "1.*", + "doctrine/cache": "1.*", + "doctrine/collections": "1.*", + "doctrine/inflector": "1.*", + "doctrine/lexer": "1.*", + "php": "~5.6|~7.0" + }, + "require-dev": { + "phpunit/phpunit": "^5.4.6" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.7.x-dev" + } + }, + "autoload": { + "psr-4": { + "Doctrine\\Common\\": "lib/Doctrine/Common" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Roman Borschel", + "email": "roman@code-factory.org" + }, + { + "name": "Benjamin Eberlei", + "email": "kontakt@beberlei.de" + }, + { + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" + }, + { + "name": "Jonathan Wage", + "email": "jonwage@gmail.com" + }, + { + "name": "Johannes Schmitt", + "email": "schmittjoh@gmail.com" + } + ], + "description": "Common Library for Doctrine projects", + "homepage": "http://www.doctrine-project.org", + "keywords": [ + "annotations", + "collections", + "eventmanager", + "persistence", + "spl" + ], + "time": "2017-07-22T08:35:12+00:00" + }, + { + "name": "doctrine/dbal", + "version": "v2.5.13", + "source": { + "type": "git", + "url": "https://github.com/doctrine/dbal.git", + "reference": "729340d8d1eec8f01bff708e12e449a3415af873" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/dbal/zipball/729340d8d1eec8f01bff708e12e449a3415af873", + "reference": "729340d8d1eec8f01bff708e12e449a3415af873", + "shasum": "" + }, + "require": { + "doctrine/common": ">=2.4,<2.8-dev", + "php": ">=5.3.2" + }, + "require-dev": { + "phpunit/phpunit": "4.*", + "symfony/console": "2.*||^3.0" + }, + "suggest": { + "symfony/console": "For helpful console commands such as SQL execution and import of files." + }, + "bin": [ + "bin/doctrine-dbal" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.5.x-dev" + } + }, + "autoload": { + "psr-0": { + "Doctrine\\DBAL\\": "lib/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Roman Borschel", + "email": "roman@code-factory.org" + }, + { + "name": "Benjamin Eberlei", + "email": "kontakt@beberlei.de" + }, + { + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" + }, + { + "name": "Jonathan Wage", + "email": "jonwage@gmail.com" + } + ], + "description": "Database Abstraction Layer", + "homepage": "http://www.doctrine-project.org", + "keywords": [ + "database", + "dbal", + "persistence", + "queryobject" + ], + "time": "2017-07-22T20:44:48+00:00" + }, + { + "name": "doctrine/doctrine-bundle", + "version": "1.8.1", + "source": { + "type": "git", + "url": "https://github.com/doctrine/DoctrineBundle.git", + "reference": "eb6e4fb904a459be28872765ab6e2d246aac7c87" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/DoctrineBundle/zipball/eb6e4fb904a459be28872765ab6e2d246aac7c87", + "reference": "eb6e4fb904a459be28872765ab6e2d246aac7c87", + "shasum": "" + }, + "require": { + "doctrine/dbal": "^2.5.12", + "doctrine/doctrine-cache-bundle": "~1.2", + "jdorn/sql-formatter": "^1.2.16", + "php": "^5.5.9|^7.0", + "symfony/console": "~2.7|~3.0|~4.0", + "symfony/dependency-injection": "~2.7|~3.0|~4.0", + "symfony/doctrine-bridge": "~2.7|~3.0|~4.0", + "symfony/framework-bundle": "~2.7|~3.0|~4.0" + }, + "conflict": { + "symfony/http-foundation": "<2.6" + }, + "require-dev": { + "doctrine/orm": "~2.3", + "phpunit/phpunit": "^4.8.36|^5.7|^6.4", + "satooshi/php-coveralls": "^1.0", + "symfony/phpunit-bridge": "~2.7|~3.0|~4.0", + "symfony/property-info": "~2.8|~3.0|~4.0", + "symfony/validator": "~2.7|~3.0|~4.0", + "symfony/web-profiler-bundle": "~2.7|~3.0|~4.0", + "symfony/yaml": "~2.7|~3.0|~4.0", + "twig/twig": "~1.26|~2.0" + }, + "suggest": { + "doctrine/orm": "The Doctrine ORM integration is optional in the bundle.", + "symfony/web-profiler-bundle": "To use the data collector." + }, + "type": "symfony-bundle", + "extra": { + "branch-alias": { + "dev-master": "1.8.x-dev" + } + }, + "autoload": { + "psr-4": { + "Doctrine\\Bundle\\DoctrineBundle\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Symfony Community", + "homepage": "http://symfony.com/contributors" + }, + { + "name": "Benjamin Eberlei", + "email": "kontakt@beberlei.de" + }, + { + "name": "Doctrine Project", + "homepage": "http://www.doctrine-project.org/" + }, + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + } + ], + "description": "Symfony DoctrineBundle", + "homepage": "http://www.doctrine-project.org", + "keywords": [ + "database", + "dbal", + "orm", + "persistence" + ], + "time": "2017-11-24T13:09:19+00:00" + }, + { + "name": "doctrine/doctrine-cache-bundle", + "version": "1.3.2", + "source": { + "type": "git", + "url": "https://github.com/doctrine/DoctrineCacheBundle.git", + "reference": "9baecbd6bfdd1123b0cf8c1b88fee0170a84ddd1" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/DoctrineCacheBundle/zipball/9baecbd6bfdd1123b0cf8c1b88fee0170a84ddd1", + "reference": "9baecbd6bfdd1123b0cf8c1b88fee0170a84ddd1", + "shasum": "" + }, + "require": { + "doctrine/cache": "^1.4.2", + "doctrine/inflector": "~1.0", + "php": ">=5.3.2", + "symfony/doctrine-bridge": "~2.2|~3.0|~4.0" + }, + "require-dev": { + "instaclick/coding-standard": "~1.1", + "instaclick/object-calisthenics-sniffs": "dev-master", + "instaclick/symfony2-coding-standard": "dev-remaster", + "phpunit/phpunit": "~4", + "predis/predis": "~0.8", + "satooshi/php-coveralls": "^1.0", + "squizlabs/php_codesniffer": "~1.5", + "symfony/console": "~2.2|~3.0|~4.0", + "symfony/finder": "~2.2|~3.0|~4.0", + "symfony/framework-bundle": "~2.2|~3.0|~4.0", + "symfony/phpunit-bridge": "~2.7|~3.0|~4.0", + "symfony/security-acl": "~2.3|~3.0", + "symfony/validator": "~2.2|~3.0|~4.0", + "symfony/yaml": "~2.2|~3.0|~4.0" + }, + "suggest": { + "symfony/security-acl": "For using this bundle to cache ACLs" + }, + "type": "symfony-bundle", + "extra": { + "branch-alias": { + "dev-master": "1.3.x-dev" + } + }, + "autoload": { + "psr-4": { + "Doctrine\\Bundle\\DoctrineCacheBundle\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Symfony Community", + "homepage": "http://symfony.com/contributors" + }, + { + "name": "Benjamin Eberlei", + "email": "kontakt@beberlei.de" + }, + { + "name": "Fabio B. Silva", + "email": "fabio.bat.silva@gmail.com" + }, + { + "name": "Guilherme Blanco", + "email": "guilhermeblanco@hotmail.com" + }, + { + "name": "Doctrine Project", + "homepage": "http://www.doctrine-project.org/" + }, + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + } + ], + "description": "Symfony Bundle for Doctrine Cache", + "homepage": "http://www.doctrine-project.org", + "keywords": [ + "cache", + "caching" + ], + "time": "2017-10-12T17:23:29+00:00" + }, + { + "name": "doctrine/inflector", + "version": "v1.2.0", + "source": { + "type": "git", + "url": "https://github.com/doctrine/inflector.git", + "reference": "e11d84c6e018beedd929cff5220969a3c6d1d462" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/inflector/zipball/e11d84c6e018beedd929cff5220969a3c6d1d462", + "reference": "e11d84c6e018beedd929cff5220969a3c6d1d462", + "shasum": "" + }, + "require": { + "php": "^7.0" + }, + "require-dev": { + "phpunit/phpunit": "^6.2" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.2.x-dev" + } + }, + "autoload": { + "psr-4": { + "Doctrine\\Common\\Inflector\\": "lib/Doctrine/Common/Inflector" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Roman Borschel", + "email": "roman@code-factory.org" + }, + { + "name": "Benjamin Eberlei", + "email": "kontakt@beberlei.de" + }, + { + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" + }, + { + "name": "Jonathan Wage", + "email": "jonwage@gmail.com" + }, + { + "name": "Johannes Schmitt", + "email": "schmittjoh@gmail.com" + } + ], + "description": "Common String Manipulations with regard to casing and singular/plural rules.", + "homepage": "http://www.doctrine-project.org", + "keywords": [ + "inflection", + "pluralize", + "singularize", + "string" + ], + "time": "2017-07-22T12:18:28+00:00" + }, + { + "name": "doctrine/instantiator", + "version": "1.0.5", + "source": { + "type": "git", + "url": "https://github.com/doctrine/instantiator.git", + "reference": "8e884e78f9f0eb1329e445619e04456e64d8051d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/instantiator/zipball/8e884e78f9f0eb1329e445619e04456e64d8051d", + "reference": "8e884e78f9f0eb1329e445619e04456e64d8051d", + "shasum": "" + }, + "require": { + "php": ">=5.3,<8.0-DEV" + }, + "require-dev": { + "athletic/athletic": "~0.1.8", + "ext-pdo": "*", + "ext-phar": "*", + "phpunit/phpunit": "~4.0", + "squizlabs/php_codesniffer": "~2.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Doctrine\\Instantiator\\": "src/Doctrine/Instantiator/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Marco Pivetta", + "email": "ocramius@gmail.com", + "homepage": "http://ocramius.github.com/" + } + ], + "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors", + "homepage": "https://github.com/doctrine/instantiator", + "keywords": [ + "constructor", + "instantiate" + ], + "time": "2015-06-14T21:17:01+00:00" + }, + { + "name": "doctrine/lexer", + "version": "v1.0.1", + "source": { + "type": "git", + "url": "https://github.com/doctrine/lexer.git", + "reference": "83893c552fd2045dd78aef794c31e694c37c0b8c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/lexer/zipball/83893c552fd2045dd78aef794c31e694c37c0b8c", + "reference": "83893c552fd2045dd78aef794c31e694c37c0b8c", + "shasum": "" + }, + "require": { + "php": ">=5.3.2" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-0": { + "Doctrine\\Common\\Lexer\\": "lib/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Roman Borschel", + "email": "roman@code-factory.org" + }, + { + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" + }, + { + "name": "Johannes Schmitt", + "email": "schmittjoh@gmail.com" + } + ], + "description": "Base library for a lexer that can be used in Top-Down, Recursive Descent Parsers.", + "homepage": "http://www.doctrine-project.org", + "keywords": [ + "lexer", + "parser" + ], + "time": "2014-09-09T13:34:57+00:00" + }, + { + "name": "doctrine/orm", + "version": "v2.5.13", + "source": { + "type": "git", + "url": "https://github.com/doctrine/doctrine2.git", + "reference": "93103f44a3e36e7b48165b6e6b736833f33b18ef" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/doctrine2/zipball/93103f44a3e36e7b48165b6e6b736833f33b18ef", + "reference": "93103f44a3e36e7b48165b6e6b736833f33b18ef", + "shasum": "" + }, + "require": { + "doctrine/cache": "~1.4", + "doctrine/collections": "~1.2", + "doctrine/common": ">=2.5-dev,<2.9-dev", + "doctrine/dbal": ">=2.5-dev,<2.7-dev", + "doctrine/instantiator": "^1.0.1", + "ext-pdo": "*", + "php": ">=5.4", + "symfony/console": "~2.5|~3.0|~4.0" + }, + "require-dev": { + "phpunit/phpunit": "~4.0", + "symfony/yaml": "~2.3|~3.0|~4.0" + }, + "suggest": { + "symfony/yaml": "If you want to use YAML Metadata Mapping Driver" + }, + "bin": [ + "bin/doctrine", + "bin/doctrine.php" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.6.x-dev" + } + }, + "autoload": { + "psr-0": { + "Doctrine\\ORM\\": "lib/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Roman Borschel", + "email": "roman@code-factory.org" + }, + { + "name": "Benjamin Eberlei", + "email": "kontakt@beberlei.de" + }, + { + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" + }, + { + "name": "Jonathan Wage", + "email": "jonwage@gmail.com" + } + ], + "description": "Object-Relational-Mapper for PHP", + "homepage": "http:/