From 1f910f91c1ce7a9673b13b38dcd26ce8bfe34701 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Carlos=20Mart=C3=ADnez=20Gadea?= Date: Mon, 13 Sep 2021 14:41:58 +0200 Subject: [PATCH] Feature/symfony upgrade to.3.4 (#222) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * fix install of grunt-cli to only install the 1.3.2 so that it does not brake with older versions of node * Renew SSL certs until 2026 * Removed symfony/security-csrf package since it was colliding with symfony/security which replaces thr former one. Thanks to that, symfony/security can be safely updated to 2.8.52 . * Removed enforcement to keep some Symfony package in v2.8.0 so they are now updatable to 2.8.52 * Added (un)zip packages to Dockerfile so we remove Composer warning (#170) * Bug/fix unit tests (#171) * Added missing PDO dependency which is in fact needed * Fixed Sponsor model unit tests * Removed pointless comments and deprecated method on Mail model * Fixed Mail model unit tests * Fixed TextTest translations tests due to missing and/or incorrect HTML tags/attributes * Updated Matcher model tests * Enforce PHP 7.1 as minimum PHP version in Composer * Fixed HTML structure on newsletter template and removed commented CSS classes * Improved readability, added parameter types and some small refactors on Mail model * Improved readability and added parameter types on MatcherTest class * Further cleanup on User and MatcherTest classes * Downgraded minimum PHP version to the production one * Reintroduced sqlWhere variable so we don't get errors since it's used in the code * Fully reintroduced the Sponsor 'type' property and fixed related failing test * Refactored call to obtain Sponsors list into a method * Fix SQL query to obtain Sponsors list * Fix Mail model tests along with issues on the HTML formatting with 2 related templates * Changed method syntax so is PHP 7.0 compliant (it was using PHP 7.1 syntax) * Fix Matcher model tests (some translations were missing when querying for them) * Reduced tests verbosity (we don't need to know if users, projects, etc were removed when running tests) * Ignored .idea (Jetbrains IDEs) folder * Bumped PHPMailer to 6.x and fixed Mail model and test with related changes * Bumped Mockery to 1.x * Added OpenSSL extension, since it's used by AmazonSns and AuthListener classes * Updated amazon-s3-php-class with many changes (last updated on 2015) * Assure PHPMailer minimum version is 6.4 * Updated to PHPUnit 6.5 * Removed empty test along with unused imports * Moved PHP extensions on composer file right after the PHP version for easy spotting * Reduced verbosity on tests output so we can focus on seeing if the focus passed, failed, errored or were skipped * Remove deprecated asserts and upgrade PHPUnit from 6.x to 7.x * Bumped min PHP version to 7.1 * Upgrade PHP from 7.0/7.1 to 7.4 * Upgraded PHPUnit to 8.x (depends on PR that enforces PHP 7.4) * Removed deprecated expectedException (will be removed on PHPUnit 9.x). Flipped assertEquals comparators to be compliant with expected/actual order. * Removed deprecated class * Got rid of last array curly braces access * Removed duplicated key * Removed deprecated (and unused) FlattenException import * Removed last noisy message on PHPUnit so we only have test results status * WIP Upgrade to Symfony 3.x * Tidy index(_env).php files so they have less differences between them, for a future merge * Got rid of index_dev.php in favor of index.php that read ENV DEBUG parameter * Added import, rewritten some PHPDocs and added some return types * Clean container.php * Refactor getName() method from custom Symfony Form Types, so they just have getBlockPrefix() method * Refactor to add Form Types as is required in Symfony 3 * Fix install of migrations on PHP 7.4 and latest Composer dependencies * Fix RouteListener initialization. Fix DB setup. * Use ::class to register services in the ServiceContainer instead of strings * Fix composer.json so it reckognizes goteo-private tests * Fix tests for App class (due to having renamed a property) * Updated Omnipay dependency to the new one from league * Grouped Composer dependencies * Used Symfony HttpKernel class instead of HttpKernel\HttpKernel * Removed unneeded package * Cleanup Omnipay classes and fix some issues while initilizing the Payment Gateway * Made final changes to support all Omnipay payment methods using Omnipay v3 * Deprecated static AbstractPaymentMethod::getId() method in favor of non static one * Converted static calculateComission method into non-static calculateCommission * Converted static AbstractPaymentMethod::isInternal() into a non-static method * Add parameter / return types and import used classes * Updated TelegramBot so it doesn't use deprecated code * Reviewed controllers to ensure they follow Symfony 3 convention * Add User property type * Removed unused code * Tidy up classes * Removed unused parameters from PHPDoc * Upgraded Symfony from 3.0 to 3.1 * Included some used classes * Finalize migration to symfony/forms 3.x (there must be a getBlockPrefix() method on a new Type, even if their parents have the method * Enforce getModelForm() & createFormBuilder() from controllers to return FormProcessorInterface & FormFactory respectively * Fix return parameter of Controller::createFormBuilder() method and the controllers that inherit it * Upgraded to Symfony 3.2 * Symfony packages upgraded to 3.3 * WIP Migration to Symfony 3.4 almost completed * Fix call to Mail::renderEmailTemplate (got renamed recently) * Fix Settings Dashboard form (ChoiceType elements had flipped key / values) * Fix loading of ChoiceType and some minor refactors * Fix ChoiceType for some forms related to Contract PersonDocumentTypes * Revert BooleanType::getBlockPrefix() method so it returns 'boolean' which to match it's class name * Refactor ProjectOverviewForm to fix it and to ease its reading * Fix import of PDOException (it was written incorrectly) * Fix ChoiceTypes on several Project related forms * Refactor to use the new Controller:getModelForm() method that requires a class instead of just a string. Fixed some Symfony Forms due to incomplete migration when Symfony 3.0 upgrade. * Refactored last controller that used the deprecated method to guess SymfonyForm class * Tiny refactors * Removed unnecessary EventDispatcher from Console class * Clean up of some classes * Change test to testLegacy, since the deprecation notice is due to Symfony code (and is due to expire on Symfony 4.3) * Fix some Symfony Forms with unfinished migration to Symfony 3.x. Remove some unused code / comments. * General cleanup of controllers * Tiny cleanup * Fix access to some admin pages * Fix usage of DatepickerType so it actually replaces the Symfony type while keeping all it's parents features * Fix admin blog add/edit form * Fix behaviour of some custom Symfony Form Types * Fix FilterForm so it conforms to Symfony 3.x standards * Readd workshop_location table since it got removed sometime ago by mistake * Fix Symfony Console (probably due to some incomplete step after migrating to Symfony 3.x) * Fix admin workshop add/edit form * Fix some translations * Refactor Sponsors controller * Fix broken CSS on Call edit form for rewards items * Fix admin Stories add/edit form * Fix CSS error while displaying TypeaheadType form elements * Fix Controller::redirect() parameter types * Fix admin Channel Questionnaire and Channel Section forms to add/edit * Fix Admin Charts API controller * Cleanup SessionListener * Reformatted Filter and Project models * Simplify public/index.php * Cleanup main PHP classes * Minor refactors on controllers * Removed deprecated mcrypt PHP extension * Removed deprecated mcrypt PHP extension from composer.lock * Fix SQL migration * Fix SQL migration related to mail table * Fix SQL migration related to mail table * Fix SQL migration related to mail table * Improved Docker readme * Moved Omnipay/Mock/Gateway class to goteo repository (is needed to run PHPUnits successfully) Co-authored-by: Javier Co-authored-by: David Igón Co-authored-by: Ivan Vergés --- .htaccess | 3 - Resources/translations/ca/workshop.yml | 8 +- composer.json | 52 +- composer.lock | 5513 ++++++++--------- .../20180627171755_goteo_callchecks.php | 2 +- db/migrations/init-v3.2.sql | 22 + docker/nginx/nginx.conf | 6 +- docker/php/Dockerfile | 1 + docker/php/init.sh | 2 +- docs/INSTALL.md | 2 +- docs/developers/DOCKER.md | 7 +- .../EventListener/BotControllerListener.php | 44 +- .../src/GoteoBot/Model/Bot/TelegramBot.php | 39 +- .../EventListener/LiveReloadListener.php | 2 - .../EventListener/MockListener.php | 3 +- .../Goteodev/Payment/DummyPaymentMethod.php | 52 +- .../EventListener/ProfilerListener.php | 9 +- extend/goteo-dev/start.php | 23 +- .../InvestStatusChangerListener.php | 47 +- package-lock.json | 1840 +++--- public/index.php | 45 +- public/index_dev.php | 65 - public/view/css/project/edit/rewards.css | 5 +- rector.php | 31 + src/Goteo/Application/App.php | 119 +- src/Goteo/Application/Config.php | 97 +- .../Application/Event/FilterAuthEvent.php | 4 +- .../Application/Event/FilterInvestEvent.php | 1 - .../Event/FilterInvestFinishEvent.php | 2 - .../Event/FilterInvestModifyEvent.php | 1 - .../Event/FilterInvestRequestEvent.php | 1 - .../EventListener/AbstractListener.php | 6 +- .../EventListener/DonateInvestListener.php | 8 +- .../EventListener/InvestListener.php | 89 +- .../EventListener/InvestMatcherListener.php | 8 +- .../EventListener/PoolInvestListener.php | 8 +- .../EventListener/SessionListener.php | 44 +- src/Goteo/Application/Lang.php | 117 +- src/Goteo/Application/Session.php | 2 - src/Goteo/Application/View.php | 24 +- src/Goteo/Console/Command/AbstractCommand.php | 43 +- src/Goteo/Console/Command/CacheCommand.php | 11 +- .../Console/Command/CertificateCommand.php | 47 +- src/Goteo/Console/Command/ChannelCommand.php | 14 +- src/Goteo/Console/Command/ContractCommand.php | 18 +- src/Goteo/Console/Command/CronCommand.php | 18 +- .../Console/Command/DBVerifierCommand.php | 38 +- src/Goteo/Console/Command/LocationCommand.php | 15 +- src/Goteo/Console/Command/MailingCommand.php | 41 +- .../Console/Command/ProjectWatcherCommand.php | 14 +- src/Goteo/Console/Command/RefundCommand.php | 12 +- src/Goteo/Console/Command/RoundCommand.php | 44 +- src/Goteo/Console/Command/SendmailCommand.php | 31 +- .../Console/Command/SqlMigrationCommand.php | 25 +- src/Goteo/Console/Command/TestCommand.php | 13 +- src/Goteo/Console/Command/ToolkitCommand.php | 13 +- .../Console/Command/TranslationsCommand.php | 14 +- src/Goteo/Console/Console.php | 65 +- .../Console/Event/FilterProjectEvent.php | 15 +- .../ConsoleExceptionListener.php | 38 +- .../EventListener/ConsoleInvestListener.php | 10 +- src/Goteo/Controller/AboutController.php | 49 +- .../Admin/AbstractAdminController.php | 28 +- .../Admin/AbstractSubController.php | 62 +- .../Admin/AccountsSubController.php | 89 +- .../Controller/Admin/BannersSubController.php | 25 +- .../Controller/Admin/BlogAdminController.php | 28 +- .../Controller/Admin/BlogSubController.php | 17 +- .../Admin/CategoriesAdminController.php | 78 +- .../Admin/CategoriesSubController.php | 4 +- .../Admin/ChannelCriteriaAdminController.php | 412 +- .../Admin/ChannelPostsAdminController.php | 64 +- .../Admin/ChannelProgramAdminController.php | 77 +- .../Admin/ChannelResourceAdminController.php | 19 +- .../Admin/ChannelSectionAdminController.php | 308 +- .../Admin/ChannelStoryAdminController.php | 64 +- .../Controller/Admin/CommonsSubController.php | 40 +- .../Admin/CommunicationAdminController.php | 84 +- .../Admin/CriteriaSubController.php | 12 +- .../Controller/Admin/FaqSubController.php | 18 +- .../Admin/FilterAdminController.php | 43 +- .../Controller/Admin/FooterSubController.php | 15 +- .../Admin/GlossarySubController.php | 8 +- .../Controller/Admin/IconsSubController.php | 11 +- .../Controller/Admin/InfoSubController.php | 14 +- .../Admin/LicensesSubController.php | 37 +- .../Controller/Admin/MailingSubController.php | 85 +- .../Admin/MilestonesSubController.php | 10 +- .../Controller/Admin/NewsSubController.php | 14 +- .../Admin/NewsletterSubController.php | 13 +- .../Controller/Admin/NodeSubController.php | 17 +- .../Controller/Admin/NodesSubController.php | 51 +- .../Admin/OpenTagsSubController.php | 7 +- .../Controller/Admin/PagesSubController.php | 8 +- .../Admin/ProjectsSubController.php | 157 +- .../Admin/PromoteAdminController.php | 24 +- .../Controller/Admin/RecentSubController.php | 9 +- .../Controller/Admin/ReviewsSubController.php | 14 +- .../Controller/Admin/RewardsSubController.php | 8 +- .../Controller/Admin/SentSubController.php | 13 +- .../Admin/SocialCommitmentSubController.php | 3 +- .../Controller/Admin/SphereSubController.php | 8 +- .../Admin/SponsorsSubController.php | 201 +- .../Controller/Admin/StatsAdminController.php | 26 +- .../Admin/StoriesAdminController.php | 19 +- .../Controller/Admin/StoriesSubController.php | 113 +- .../Controller/Admin/TagsSubController.php | 8 +- .../Admin/TemplatesSubController.php | 10 +- .../Controller/Admin/TextsSubController.php | 15 +- .../Admin/TranslatesSubController.php | 27 +- .../Admin/TransnodesSubController.php | 19 +- .../Controller/Admin/UsersAdminController.php | 24 +- .../Controller/Admin/UsersSubController.php | 64 +- .../Admin/WordcountSubController.php | 3 +- .../Admin/WorkshopAdminController.php | 20 +- .../Admin/WorkshopSubController.php | 11 +- .../Controller/Admin/WorthSubController.php | 10 +- src/Goteo/Controller/AdminController.php | 134 +- .../Controller/Api/AbstractApiController.php | 12 +- .../Api/AdminChartsApiController.php | 181 +- .../Controller/Api/BlogApiController.php | 31 +- .../Controller/Api/CallsApiController.php | 16 +- .../Api/CategoriesApiController.php | 16 +- .../Api/ChannelPostsApiController.php | 12 +- .../Api/ChannelResourcesApiController.php | 10 +- .../Api/ChannelStoriesApiController.php | 12 +- .../Controller/Api/ChannelsApiController.php | 19 +- .../Controller/Api/ChartsApiController.php | 54 +- .../Api/CommunicationApiController.php | 9 +- .../Controller/Api/GeolocApiController.php | 18 +- .../Controller/Api/LicensesApiController.php | 10 +- .../Controller/Api/MapsApiController.php | 33 +- .../Controller/Api/MatchersApiController.php | 19 +- .../Controller/Api/MessagesApiController.php | 55 +- .../Controller/Api/ProjectsApiController.php | 75 +- .../Controller/Api/PromoteApiController.php | 28 +- .../Api/QuestionnaireApiController.php | 10 +- .../Controller/Api/StatsApiController.php | 12 +- .../Controller/Api/StoriesApiController.php | 27 +- .../Controller/Api/UsersApiController.php | 38 +- .../Controller/Api/WorkshopsApiController.php | 9 +- src/Goteo/Controller/AuthController.php | 97 +- src/Goteo/Controller/BlogController.php | 49 +- .../C7feb7803386d713e60894036feeee9e.php | 280 +- src/Goteo/Controller/ChannelController.php | 119 +- src/Goteo/Controller/Community.php | 172 +- src/Goteo/Controller/ContactController.php | 68 +- .../Dashboard/ProjectDashboardController.php | 276 +- .../Dashboard/SettingsDashboardController.php | 125 +- .../TranslateProjectDashboardController.php | 208 +- src/Goteo/Controller/DashboardController.php | 39 +- src/Goteo/Controller/DiscoverController.php | 60 +- src/Goteo/Controller/DonateController.php | 63 +- src/Goteo/Controller/ErrorController.php | 24 +- src/Goteo/Controller/Faq.php | 92 +- src/Goteo/Controller/GlossaryController.php | 100 +- src/Goteo/Controller/ImageController.php | 60 +- src/Goteo/Controller/InvestController.php | 243 +- src/Goteo/Controller/MailController.php | 60 +- src/Goteo/Controller/MapController.php | 144 +- src/Goteo/Controller/Message.php | 751 ++- src/Goteo/Controller/News.php | 52 +- src/Goteo/Controller/NewsletterController.php | 25 +- src/Goteo/Controller/PoolController.php | 313 +- src/Goteo/Controller/ProjectController.php | 200 +- src/Goteo/Controller/Review.php | 426 +- src/Goteo/Controller/RssController.php | 36 +- src/Goteo/Controller/TranslateController.php | 50 +- src/Goteo/Controller/UserController.php | 152 +- src/Goteo/Controller/WidgetController.php | 5 +- src/Goteo/Controller/WorkshopController.php | 47 +- src/Goteo/Controller/Ws.php | 146 +- src/Goteo/Core/CacheStatement.php | 32 +- src/Goteo/Core/Controller.php | 124 +- src/Goteo/Core/DB.php | 63 +- src/Goteo/Core/Helpers.php | 38 +- src/Goteo/Core/Model.php | 107 +- src/Goteo/Core/NodeSys.php | 29 +- src/Goteo/Core/Redirection.php | 28 +- src/Goteo/Core/View.php | 178 +- .../Library/Forms/AbstractFormProcessor.php | 10 +- .../Forms/Admin/AdminCategoryEditForm.php | 24 +- .../Admin/AdminChannelResourceEditForm.php | 32 +- .../Forms/Admin/AdminFootprintEditForm.php | 27 +- .../Library/Forms/Admin/AdminPostEditForm.php | 74 +- .../Library/Forms/Admin/AdminProgramForm.php | 28 +- .../Library/Forms/Admin/AdminSdgEditForm.php | 23 +- .../Library/Forms/Admin/AdminSectionForm.php | 39 +- .../Admin/AdminSocialCommitmentEditForm.php | 22 +- .../Forms/Admin/AdminSphereEditForm.php | 20 +- .../Forms/Admin/AdminStoryEditForm.php | 87 +- .../Forms/Admin/AdminUserCreateForm.php | 16 +- .../Forms/Admin/AdminWorkshopEditForm.php | 116 +- .../Library/Forms/FormModelException.php | 8 +- src/Goteo/Library/Forms/Model/FilterForm.php | 288 +- .../Forms/Model/ProjectCampaignForm.php | 41 +- .../Library/Forms/Model/ProjectCostsForm.php | 85 +- .../Forms/Model/ProjectOverviewForm.php | 199 +- .../Forms/Model/ProjectPersonalForm.php | 16 +- .../Library/Forms/Model/ProjectPostForm.php | 33 +- .../Forms/Model/ProjectRewardsForm.php | 55 +- .../Library/Forms/Model/ProjectStoryForm.php | 24 +- .../Model/ProjectTranslateOverviewForm.php | 35 +- .../Forms/Model/ProjectTranslateStoryForm.php | 11 +- .../Forms/Model/QuestionnaireCreateForm.php | 123 +- .../QuestionnaireCreateTranslateForm.php | 27 +- .../Library/Forms/Model/QuestionnaireForm.php | 35 +- .../Forms/Model/QuestionnaireScoringForm.php | 47 +- .../Library/Forms/Model/UserProfileForm.php | 130 +- .../Forms/Model/UserTranslateProfileForm.php | 13 +- src/Goteo/Library/Newsletter.php | 510 +- src/Goteo/Library/Password.php | 59 +- src/Goteo/Library/Paypal/Handler.php | 41 - src/Goteo/Model/Blog/Post.php | 42 +- src/Goteo/Model/Contract.php | 162 +- src/Goteo/Model/Filter.php | 444 +- src/Goteo/Model/Invest.php | 44 +- src/Goteo/Model/Mail.php | 8 - src/Goteo/Model/Mail/MailStats.php | 25 +- src/Goteo/Model/Matcher.php | 80 +- src/Goteo/Model/Node.php | 27 +- src/Goteo/Model/Project.php | 438 +- src/Goteo/Model/User.php | 195 +- src/Goteo/Model/User/Interest.php | 26 +- src/Goteo/Model/Workshop.php | 85 +- .../Payment/Method/AbstractPaymentMethod.php | 211 +- .../Payment/Method/CashPaymentMethod.php | 8 +- .../Payment/Method/PaymentMethodInterface.php | 62 +- .../Payment/Method/PaypalPaymentMethod.php | 30 +- .../Payment/Method/PoolPaymentMethod.php | 39 +- src/Goteo/Payment/Payment.php | 65 +- src/Goteo/Util/Foil/Extension/GoteoCore.php | 1 - src/Goteo/Util/Foil/Extension/TextUtils.php | 3 +- src/Goteo/Util/Form/FormBuilder.php | 31 +- src/Goteo/Util/Form/FormFinder.php | 24 +- src/Goteo/Util/Form/Type/BooleanType.php | 15 +- src/Goteo/Util/Form/Type/ChoiceType.php | 13 +- src/Goteo/Util/Form/Type/DatepickerType.php | 8 +- src/Goteo/Util/Form/Type/EmailType.php | 20 +- src/Goteo/Util/Form/Type/LocationType.php | 23 +- src/Goteo/Util/Form/Type/MarkdownType.php | 6 +- src/Goteo/Util/Form/Type/MediaType.php | 31 +- src/Goteo/Util/Form/Type/NumberType.php | 13 +- src/Goteo/Util/Form/Type/PasswordType.php | 21 +- src/Goteo/Util/Form/Type/SubmitType.php | 12 +- src/Goteo/Util/Form/Type/TagsType.php | 16 +- src/Goteo/Util/Form/Type/TextType.php | 21 +- src/Goteo/Util/Form/Type/TextareaType.php | 20 +- src/Goteo/Util/Form/Type/TitleType.php | 6 +- src/Goteo/Util/Form/Type/TypeaheadType.php | 32 +- src/Goteo/Util/Form/Type/UrlType.php | 23 +- src/Goteo/Util/Form/Type/YearType.php | 14 +- .../AbstractMatcherProcessor.php | 7 +- src/Omnipay/Mock/Gateway.php | 13 + src/autoload.php | 10 +- src/container.php | 182 +- src/legacy_dispatcher.php | 23 +- src/routes.php | 85 +- tests/Goteo/Application/AppTest.php | 40 +- ...ranslateProjectDashboardControllerTest.php | 16 +- .../Goteo/Controller/InvestControllerTest.php | 3 +- .../Controller/TranslateControllerTest.php | 3 +- tests/Goteo/Model/ProjectTest.php | 1 - tests/Goteo/Payment/PaymentTest.php | 19 +- tests/bootstrap.php | 3 +- var/php/nginx.conf | 6 +- var/php/router_dev.php | 2 +- 267 files changed, 9942 insertions(+), 12544 deletions(-) delete mode 100644 public/index_dev.php create mode 100644 rector.php delete mode 100644 src/Goteo/Library/Paypal/Handler.php create mode 100644 src/Omnipay/Mock/Gateway.php diff --git a/.htaccess b/.htaccess index af15e07785..2e6b4d1194 100644 --- a/.htaccess +++ b/.htaccess @@ -7,8 +7,5 @@ ServerSignature Off RewriteEngine On RewriteBase /dist RewriteCond %{REQUEST_FILENAME} !-f - # Use this for debugging - # RewriteRule .* index_dev.php?%{QUERY_STRING} - # For production RewriteRule .* index.php?%{QUERY_STRING} diff --git a/Resources/translations/ca/workshop.yml b/Resources/translations/ca/workshop.yml index b739263f62..d9b08b92d1 100644 --- a/Resources/translations/ca/workshop.yml +++ b/Resources/translations/ca/workshop.yml @@ -3,9 +3,9 @@ workshop-register: 'Inscriu-te' workshop-intro-text: 'Asistiendo a los talleres conocerás cómo las tecnologías digitales revolucionan la relación entre financiadores y proyectos a financiar, potenciando modelos de financiación más transparentes, abiertos y participativos.' workshop-where-label: 'On estarem?' workshop-how-label: 'Com arribar?' -workshop-related: 'Conoce otros Fundlabs' -workshop-btn-action: 'Quiero mi Fundlab' -workshop-count-down: 'Queden %s dias!' +workshop-related: 'Coneix altres Fundlabs' +workshop-btn-action: 'Vuic el meu Fundlab' +workshop-count-down: 'Queden %s dies!' workshop-file-label: 'Programa' workshop-terms-label: 'Basses' workshop-share: 'Comparteix!' @@ -14,4 +14,4 @@ workshop-type-fundlab: 'Fundlab' workshop-type-fundlab-esil: 'Fundlab ESIL' workshop-type-crowdcoop: 'Crowdcoop' workshsop-partner-promote: 'Promou:' -workshsop-partner-finances: 'Amb el finançament de:' \ No newline at end of file +workshsop-partner-finances: 'Amb el finançament de:' diff --git a/composer.json b/composer.json index eebd2f6565..c5f4f1324a 100644 --- a/composer.json +++ b/composer.json @@ -3,11 +3,14 @@ "php": "^7.4", "ext-curl": "*", "ext-dom": "*", + "ext-fileinfo": "*", "ext-gd": "*", + "ext-intl": "*", "ext-json": "*", "ext-mbstring": "*", "ext-openssl": "*", "ext-pdo": "*", + "ext-simplexml": "*", "ext-xml": "*", "foil/foil": "~0.6", "tpyo/amazon-s3-php-class": "dev-master#81a35c61bf76be7c02c95a57771031d21277b1b5", @@ -19,26 +22,26 @@ "iignatov/lightopenid": "~1.0", "paypal/adaptivepayments-sdk-php": "*", "paypal/merchant-sdk-php": "*", - "symfony/class-loader": "2.8.30", - "symfony/http-foundation": "2.8.30", - "symfony/routing": "2.8.30", - "symfony/http-kernel": "2.8.30", - "symfony/security": "2.8.30", - "symfony/config": "2.8.30", - "symfony/stopwatch": "2.8.30", - "symfony/dependency-injection": "2.8.30", - "symfony/debug": "2.8.30", - "symfony/console": "2.8.30", - "symfony/translation": "2.8.30", - "symfony/finder": "2.8.30", - "symfony/dom-crawler": "2.8.30", - "symfony/css-selector": "2.8.30", - "symfony/process": "2.8.30", - "symfony/form": "2.8.30", - "symfony/templating": "2.8.30", - "symfony/framework-bundle": "2.8.30", - "symfony/validator": "2.8.30", - "symfony/yaml": "^3.3", + "symfony/class-loader": "3.4.*", + "symfony/config": "3.4.*", + "symfony/console": "3.4.*", + "symfony/css-selector": "3.4.*", + "symfony/debug": "3.4.*", + "symfony/dependency-injection": "3.4.*", + "symfony/dom-crawler": "3.4.*", + "symfony/finder": "3.4.*", + "symfony/form": "3.4.*", + "symfony/framework-bundle": "3.4.*", + "symfony/http-foundation": "3.4.*", + "symfony/http-kernel": "3.4.*", + "symfony/routing": "3.4.*", + "symfony/security": "3.4.*", + "symfony/stopwatch": "3.4.*", + "symfony/templating": "3.4.*", + "symfony/translation": "3.4.*", + "symfony/process": "3.4.*", + "symfony/validator": "3.4.*", + "symfony/yaml": "3.4.*", "monolog/monolog": "^1.17", "gregwar/captcha": "^1.1", "geoip2/geoip2": "~2.0", @@ -49,9 +52,11 @@ "setasign/fpdf": ">=1.8.1", "rych/phpass": "3.0.*@beta", "erusev/parsedown": "^1.6", - "omnipay/omnipay": "~2.0", - "omnipay/paypal": "~2.0", + "league/omnipay": "~3.0", "league/html-to-markdown": "^4.4", + "omnipay/dummy": "^3.0", + "omnipay/manual": "^3.0", + "omnipay/paypal": "~3.0", "ua-parser/uap-php": "^3.4", "kohkimakimoto/lib-migration": "^1.2", "sensiolabs/ansi-to-html": "^1.1", @@ -67,6 +72,7 @@ }, "require-dev": { "phpunit/phpunit": "^8.0", - "guzzle/plugin-mock": "~3.1" + "guzzle/plugin-mock": "~3.1", + "symfony/phpunit-bridge": "^5.3" } } diff --git a/composer.lock b/composer.lock index 1e8c2fb079..e13cc307dd 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "31c30537814ba0b4262291f3ac0fab52", + "content-hash": "1884835872ce8460d9a5167fe3d39d0b", "packages": [ { "name": "amphp/amp", @@ -1153,6 +1153,72 @@ ], "time": "2020-08-21T14:09:44+00:00" }, + { + "name": "clue/stream-filter", + "version": "v1.5.0", + "source": { + "type": "git", + "url": "https://github.com/clue/stream-filter.git", + "reference": "aeb7d8ea49c7963d3b581378955dbf5bc49aa320" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/clue/stream-filter/zipball/aeb7d8ea49c7963d3b581378955dbf5bc49aa320", + "reference": "aeb7d8ea49c7963d3b581378955dbf5bc49aa320", + "shasum": "" + }, + "require": { + "php": ">=5.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.3 || ^5.7 || ^4.8.36" + }, + "type": "library", + "autoload": { + "psr-4": { + "Clue\\StreamFilter\\": "src/" + }, + "files": [ + "src/functions_include.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Christian Lück", + "email": "christian@clue.engineering" + } + ], + "description": "A simple and modern approach to stream filtering in PHP", + "homepage": "https://github.com/clue/php-stream-filter", + "keywords": [ + "bucket brigade", + "callback", + "filter", + "php_user_filter", + "stream", + "stream_filter_append", + "stream_filter_register" + ], + "support": { + "issues": "https://github.com/clue/stream-filter/issues", + "source": "https://github.com/clue/stream-filter/tree/v1.5.0" + }, + "funding": [ + { + "url": "https://clue.engineering/support", + "type": "custom" + }, + { + "url": "https://github.com/clue", + "type": "github" + } + ], + "time": "2020-10-02T12:38:20+00:00" + }, { "name": "composer/ca-bundle", "version": "1.2.10", @@ -1322,257 +1388,6 @@ }, "time": "2019-12-03T09:12:46+00:00" }, - { - "name": "doctrine/annotations", - "version": "1.13.1", - "source": { - "type": "git", - "url": "https://github.com/doctrine/annotations.git", - "reference": "e6e7b7d5b45a2f2abc5460cc6396480b2b1d321f" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/doctrine/annotations/zipball/e6e7b7d5b45a2f2abc5460cc6396480b2b1d321f", - "reference": "e6e7b7d5b45a2f2abc5460cc6396480b2b1d321f", - "shasum": "" - }, - "require": { - "doctrine/lexer": "1.*", - "ext-tokenizer": "*", - "php": "^7.1 || ^8.0", - "psr/cache": "^1 || ^2 || ^3" - }, - "require-dev": { - "doctrine/cache": "^1.11 || ^2.0", - "doctrine/coding-standard": "^6.0 || ^8.1", - "phpstan/phpstan": "^0.12.20", - "phpunit/phpunit": "^7.5 || ^8.0 || ^9.1.5", - "symfony/cache": "^4.4 || ^5.2" - }, - "type": "library", - "autoload": { - "psr-4": { - "Doctrine\\Common\\Annotations\\": "lib/Doctrine/Common/Annotations" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Guilherme Blanco", - "email": "guilhermeblanco@gmail.com" - }, - { - "name": "Roman Borschel", - "email": "roman@code-factory.org" - }, - { - "name": "Benjamin Eberlei", - "email": "kontakt@beberlei.de" - }, - { - "name": "Jonathan Wage", - "email": "jonwage@gmail.com" - }, - { - "name": "Johannes Schmitt", - "email": "schmittjoh@gmail.com" - } - ], - "description": "Docblock Annotations Parser", - "homepage": "https://www.doctrine-project.org/projects/annotations.html", - "keywords": [ - "annotations", - "docblock", - "parser" - ], - "support": { - "issues": "https://github.com/doctrine/annotations/issues", - "source": "https://github.com/doctrine/annotations/tree/1.13.1" - }, - "time": "2021-05-16T18:07:53+00:00" - }, - { - "name": "doctrine/cache", - "version": "1.12.1", - "source": { - "type": "git", - "url": "https://github.com/doctrine/cache.git", - "reference": "4cf401d14df219fa6f38b671f5493449151c9ad8" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/doctrine/cache/zipball/4cf401d14df219fa6f38b671f5493449151c9ad8", - "reference": "4cf401d14df219fa6f38b671f5493449151c9ad8", - "shasum": "" - }, - "require": { - "php": "~7.1 || ^8.0" - }, - "conflict": { - "doctrine/common": ">2.2,<2.4" - }, - "require-dev": { - "alcaeus/mongo-php-adapter": "^1.1", - "cache/integration-tests": "dev-master", - "doctrine/coding-standard": "^8.0", - "mongodb/mongodb": "^1.1", - "phpunit/phpunit": "^7.0 || ^8.0 || ^9.0", - "predis/predis": "~1.0", - "psr/cache": "^1.0 || ^2.0 || ^3.0", - "symfony/cache": "^4.4 || ^5.2 || ^6.0@dev", - "symfony/var-exporter": "^4.4 || ^5.2 || ^6.0@dev" - }, - "suggest": { - "alcaeus/mongo-php-adapter": "Required to use legacy MongoDB driver" - }, - "type": "library", - "autoload": { - "psr-4": { - "Doctrine\\Common\\Cache\\": "lib/Doctrine/Common/Cache" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Guilherme Blanco", - "email": "guilhermeblanco@gmail.com" - }, - { - "name": "Roman Borschel", - "email": "roman@code-factory.org" - }, - { - "name": "Benjamin Eberlei", - "email": "kontakt@beberlei.de" - }, - { - "name": "Jonathan Wage", - "email": "jonwage@gmail.com" - }, - { - "name": "Johannes Schmitt", - "email": "schmittjoh@gmail.com" - } - ], - "description": "PHP Doctrine Cache library is a popular cache implementation that supports many different drivers such as redis, memcache, apc, mongodb and others.", - "homepage": "https://www.doctrine-project.org/projects/cache.html", - "keywords": [ - "abstraction", - "apcu", - "cache", - "caching", - "couchdb", - "memcached", - "php", - "redis", - "xcache" - ], - "support": { - "issues": "https://github.com/doctrine/cache/issues", - "source": "https://github.com/doctrine/cache/tree/1.12.1" - }, - "funding": [ - { - "url": "https://www.doctrine-project.org/sponsorship.html", - "type": "custom" - }, - { - "url": "https://www.patreon.com/phpdoctrine", - "type": "patreon" - }, - { - "url": "https://tidelift.com/funding/github/packagist/doctrine%2Fcache", - "type": "tidelift" - } - ], - "time": "2021-07-17T14:39:21+00:00" - }, - { - "name": "doctrine/lexer", - "version": "1.2.1", - "source": { - "type": "git", - "url": "https://github.com/doctrine/lexer.git", - "reference": "e864bbf5904cb8f5bb334f99209b48018522f042" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/doctrine/lexer/zipball/e864bbf5904cb8f5bb334f99209b48018522f042", - "reference": "e864bbf5904cb8f5bb334f99209b48018522f042", - "shasum": "" - }, - "require": { - "php": "^7.2 || ^8.0" - }, - "require-dev": { - "doctrine/coding-standard": "^6.0", - "phpstan/phpstan": "^0.11.8", - "phpunit/phpunit": "^8.2" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.2.x-dev" - } - }, - "autoload": { - "psr-4": { - "Doctrine\\Common\\Lexer\\": "lib/Doctrine/Common/Lexer" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Guilherme Blanco", - "email": "guilhermeblanco@gmail.com" - }, - { - "name": "Roman Borschel", - "email": "roman@code-factory.org" - }, - { - "name": "Johannes Schmitt", - "email": "schmittjoh@gmail.com" - } - ], - "description": "PHP Doctrine Lexer parser library that can be used in Top-Down, Recursive Descent Parsers.", - "homepage": "https://www.doctrine-project.org/projects/lexer.html", - "keywords": [ - "annotations", - "docblock", - "lexer", - "parser", - "php" - ], - "support": { - "issues": "https://github.com/doctrine/lexer/issues", - "source": "https://github.com/doctrine/lexer/tree/1.2.1" - }, - "funding": [ - { - "url": "https://www.doctrine-project.org/sponsorship.html", - "type": "custom" - }, - { - "url": "https://www.patreon.com/phpdoctrine", - "type": "patreon" - }, - { - "url": "https://tidelift.com/funding/github/packagist/doctrine%2Flexer", - "type": "tidelift" - } - ], - "time": "2020-05-25T17:44:05+00:00" - }, { "name": "erusev/parsedown", "version": "1.7.4", @@ -1798,22 +1613,22 @@ }, { "name": "graylog2/gelf-php", - "version": "1.7.0", + "version": "1.7.1", "source": { "type": "git", "url": "https://github.com/bzikarsky/gelf-php.git", - "reference": "16cab667fa01e6e298af1ec3279fe08d43e40a96" + "reference": "8dceab86227c184725479cc36ab5cae4da940f6e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/bzikarsky/gelf-php/zipball/16cab667fa01e6e298af1ec3279fe08d43e40a96", - "reference": "16cab667fa01e6e298af1ec3279fe08d43e40a96", + "url": "https://api.github.com/repos/bzikarsky/gelf-php/zipball/8dceab86227c184725479cc36ab5cae4da940f6e", + "reference": "8dceab86227c184725479cc36ab5cae4da940f6e", "shasum": "" }, "require": { "paragonie/constant_time_encoding": "^1|^2", "php": ">=5.6", - "psr/log": "~1.0" + "psr/log": "^1.0|^2.0" }, "provide": { "psr/log-implementation": "~1.0" @@ -1850,9 +1665,9 @@ "description": "A php implementation to send log-messages to a GELF compatible backend like Graylog2.", "support": { "issues": "https://github.com/bzikarsky/gelf-php/issues", - "source": "https://github.com/bzikarsky/gelf-php/tree/1.7.0" + "source": "https://github.com/bzikarsky/gelf-php/tree/1.7.1" }, - "time": "2021-02-04T09:05:55+00:00" + "time": "2021-08-20T09:39:08+00:00" }, { "name": "gregwar/captcha", @@ -1912,194 +1727,141 @@ "time": "2020-03-24T14:39:05+00:00" }, { - "name": "guzzle/common", - "version": "v3.9.2", - "target-dir": "Guzzle/Common", + "name": "guzzlehttp/guzzle", + "version": "7.3.0", "source": { "type": "git", - "url": "https://github.com/Guzzle3/common.git", - "reference": "2e36af7cf2ce3ea1f2d7c2831843b883a8e7b7dc" + "url": "https://github.com/guzzle/guzzle.git", + "reference": "7008573787b430c1c1f650e3722d9bba59967628" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Guzzle3/common/zipball/2e36af7cf2ce3ea1f2d7c2831843b883a8e7b7dc", - "reference": "2e36af7cf2ce3ea1f2d7c2831843b883a8e7b7dc", + "url": "https://api.github.com/repos/guzzle/guzzle/zipball/7008573787b430c1c1f650e3722d9bba59967628", + "reference": "7008573787b430c1c1f650e3722d9bba59967628", "shasum": "" }, "require": { - "php": ">=5.3.2", - "symfony/event-dispatcher": ">=2.1" + "ext-json": "*", + "guzzlehttp/promises": "^1.4", + "guzzlehttp/psr7": "^1.7 || ^2.0", + "php": "^7.2.5 || ^8.0", + "psr/http-client": "^1.0" + }, + "provide": { + "psr/http-client-implementation": "1.0" + }, + "require-dev": { + "bamarni/composer-bin-plugin": "^1.4.1", + "ext-curl": "*", + "php-http/client-integration-tests": "^3.0", + "phpunit/phpunit": "^8.5.5 || ^9.3.5", + "psr/log": "^1.1" + }, + "suggest": { + "ext-curl": "Required for CURL handler support", + "ext-intl": "Required for Internationalized Domain Name (IDN) support", + "psr/log": "Required for using the Log middleware" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "3.7-dev" + "dev-master": "7.3-dev" } }, "autoload": { - "psr-0": { - "Guzzle\\Common": "" - } + "psr-4": { + "GuzzleHttp\\": "src/" + }, + "files": [ + "src/functions_include.php" + ] }, "notification-url": "https://packagist.org/downloads/", "license": [ "MIT" ], - "description": "Common libraries used by Guzzle", + "authors": [ + { + "name": "Michael Dowling", + "email": "mtdowling@gmail.com", + "homepage": "https://github.com/mtdowling" + }, + { + "name": "Márk Sági-Kazár", + "email": "mark.sagikazar@gmail.com", + "homepage": "https://sagikazarmark.hu" + } + ], + "description": "Guzzle is a PHP HTTP client library", "homepage": "http://guzzlephp.org/", "keywords": [ - "collection", - "common", - "event", - "exception" + "client", + "curl", + "framework", + "http", + "http client", + "psr-18", + "psr-7", + "rest", + "web service" ], "support": { - "source": "https://github.com/Guzzle3/common/tree/v3.9.2" + "issues": "https://github.com/guzzle/guzzle/issues", + "source": "https://github.com/guzzle/guzzle/tree/7.3.0" }, - "abandoned": "guzzle/guzzle", - "time": "2014-08-11T04:32:36+00:00" - }, - { - "name": "guzzle/http", - "version": "v3.9.2", - "target-dir": "Guzzle/Http", - "source": { - "type": "git", - "url": "https://github.com/Guzzle3/http.git", - "reference": "1e8dd1e2ba9dc42332396f39fbfab950b2301dc5" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/Guzzle3/http/zipball/1e8dd1e2ba9dc42332396f39fbfab950b2301dc5", - "reference": "1e8dd1e2ba9dc42332396f39fbfab950b2301dc5", - "shasum": "" - }, - "require": { - "guzzle/common": "self.version", - "guzzle/parser": "self.version", - "guzzle/stream": "self.version", - "php": ">=5.3.2" - }, - "suggest": { - "ext-curl": "*" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.7-dev" - } - }, - "autoload": { - "psr-0": { - "Guzzle\\Http": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ + "funding": [ { - "name": "Michael Dowling", - "email": "mtdowling@gmail.com", - "homepage": "https://github.com/mtdowling" - } - ], - "description": "HTTP libraries used by Guzzle", - "homepage": "http://guzzlephp.org/", - "keywords": [ - "Guzzle", - "client", - "curl", - "http", - "http client" - ], - "support": { - "source": "https://github.com/Guzzle3/http/tree/v3.9.2" - }, - "abandoned": "guzzle/guzzle", - "time": "2014-08-11T04:32:36+00:00" - }, - { - "name": "guzzle/parser", - "version": "v3.9.2", - "target-dir": "Guzzle/Parser", - "source": { - "type": "git", - "url": "https://github.com/Guzzle3/parser.git", - "reference": "6874d171318a8e93eb6d224cf85e4678490b625c" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/Guzzle3/parser/zipball/6874d171318a8e93eb6d224cf85e4678490b625c", - "reference": "6874d171318a8e93eb6d224cf85e4678490b625c", - "shasum": "" - }, - "require": { - "php": ">=5.3.2" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.7-dev" - } - }, - "autoload": { - "psr-0": { - "Guzzle\\Parser": "" + "url": "https://github.com/GrahamCampbell", + "type": "github" + }, + { + "url": "https://github.com/Nyholm", + "type": "github" + }, + { + "url": "https://github.com/alexeyshockov", + "type": "github" + }, + { + "url": "https://github.com/gmponos", + "type": "github" } - }, - "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" ], - "support": { - "source": "https://github.com/Guzzle3/parser/tree/v3.9.2" - }, - "abandoned": "guzzle/guzzle", - "time": "2014-02-05T18:29:46+00:00" + "time": "2021-03-23T11:33:13+00:00" }, { - "name": "guzzle/stream", - "version": "v3.9.2", - "target-dir": "Guzzle/Stream", + "name": "guzzlehttp/promises", + "version": "1.4.1", "source": { "type": "git", - "url": "https://github.com/Guzzle3/stream.git", - "reference": "60c7fed02e98d2c518dae8f97874c8f4622100f0" + "url": "https://github.com/guzzle/promises.git", + "reference": "8e7d04f1f6450fef59366c399cfad4b9383aa30d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Guzzle3/stream/zipball/60c7fed02e98d2c518dae8f97874c8f4622100f0", - "reference": "60c7fed02e98d2c518dae8f97874c8f4622100f0", + "url": "https://api.github.com/repos/guzzle/promises/zipball/8e7d04f1f6450fef59366c399cfad4b9383aa30d", + "reference": "8e7d04f1f6450fef59366c399cfad4b9383aa30d", "shasum": "" }, "require": { - "guzzle/common": "self.version", - "php": ">=5.3.2" + "php": ">=5.5" }, - "suggest": { - "guzzle/http": "To convert Guzzle request objects to PHP streams" + "require-dev": { + "symfony/phpunit-bridge": "^4.4 || ^5.1" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "3.7-dev" + "dev-master": "1.4-dev" } }, "autoload": { - "psr-0": { - "Guzzle\\Stream": "" - } + "psr-4": { + "GuzzleHttp\\Promise\\": "src/" + }, + "files": [ + "src/functions_include.php" + ] }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -2112,18 +1874,15 @@ "homepage": "https://github.com/mtdowling" } ], - "description": "Guzzle stream wrapper component", - "homepage": "http://guzzlephp.org/", + "description": "Guzzle promises library", "keywords": [ - "Guzzle", - "component", - "stream" + "promise" ], "support": { - "source": "https://github.com/Guzzle3/stream/tree/v3.9.2" + "issues": "https://github.com/guzzle/promises/issues", + "source": "https://github.com/guzzle/promises/tree/1.4.1" }, - "abandoned": "guzzle/guzzle", - "time": "2014-05-01T21:36:02+00:00" + "time": "2021-03-07T09:25:29+00:00" }, { "name": "guzzlehttp/psr7", @@ -2685,6 +2444,69 @@ ], "time": "2020-07-01T00:34:03+00:00" }, + { + "name": "league/omnipay", + "version": "v3.2.1", + "source": { + "type": "git", + "url": "https://github.com/thephpleague/omnipay.git", + "reference": "38f66a0cc043ed51d6edf7956d6439a2f263501f" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/thephpleague/omnipay/zipball/38f66a0cc043ed51d6edf7956d6439a2f263501f", + "reference": "38f66a0cc043ed51d6edf7956d6439a2f263501f", + "shasum": "" + }, + "require": { + "omnipay/common": "^3.1", + "php": "^7.2|^8.0", + "php-http/discovery": "^1.14", + "php-http/guzzle7-adapter": "^1" + }, + "require-dev": { + "omnipay/tests": "^3|^4" + }, + "type": "metapackage", + "extra": { + "branch-alias": { + "dev-master": "3.2.x-dev" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Adrian Macneil", + "email": "adrian@adrianmacneil.com" + }, + { + "name": "Barry vd. Heuvel", + "email": "barryvdh@gmail.com" + } + ], + "description": "Omnipay payment processing library", + "homepage": "https://omnipay.thephpleague.com/", + "keywords": [ + "checkout", + "creditcard", + "omnipay", + "payment" + ], + "support": { + "issues": "https://github.com/thephpleague/omnipay/issues", + "source": "https://github.com/thephpleague/omnipay/tree/v3.2.1" + }, + "funding": [ + { + "url": "https://github.com/barryvdh", + "type": "github" + } + ], + "time": "2021-06-05T11:34:12+00:00" + }, { "name": "lusitanian/oauth", "version": "v0.8.11", @@ -3044,6 +2866,92 @@ }, "time": "2021-02-24T09:51:49+00:00" }, + { + "name": "moneyphp/money", + "version": "v3.3.1", + "source": { + "type": "git", + "url": "https://github.com/moneyphp/money.git", + "reference": "122664c2621a95180a13c1ac81fea1d2ef20781e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/moneyphp/money/zipball/122664c2621a95180a13c1ac81fea1d2ef20781e", + "reference": "122664c2621a95180a13c1ac81fea1d2ef20781e", + "shasum": "" + }, + "require": { + "ext-json": "*", + "php": ">=5.6" + }, + "require-dev": { + "cache/taggable-cache": "^0.4.0", + "doctrine/instantiator": "^1.0.5", + "ext-bcmath": "*", + "ext-gmp": "*", + "ext-intl": "*", + "florianv/exchanger": "^1.0", + "florianv/swap": "^3.0", + "friends-of-phpspec/phpspec-code-coverage": "^3.1.1 || ^4.3", + "moneyphp/iso-currencies": "^3.2.1", + "php-http/message": "^1.4", + "php-http/mock-client": "^1.0.0", + "phpspec/phpspec": "^3.4.3", + "phpunit/phpunit": "^5.7.27 || ^6.5.14 || ^7.5.18 || ^8.5", + "psr/cache": "^1.0", + "symfony/phpunit-bridge": "^4" + }, + "suggest": { + "ext-bcmath": "Calculate without integer limits", + "ext-gmp": "Calculate without integer limits", + "ext-intl": "Format Money objects with intl", + "florianv/exchanger": "Exchange rates library for PHP", + "florianv/swap": "Exchange rates library for PHP", + "psr/cache-implementation": "Used for Currency caching" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.x-dev" + } + }, + "autoload": { + "psr-4": { + "Money\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Mathias Verraes", + "email": "mathias@verraes.net", + "homepage": "http://verraes.net" + }, + { + "name": "Márk Sági-Kazár", + "email": "mark.sagikazar@gmail.com" + }, + { + "name": "Frederik Bosch", + "email": "f.bosch@genkgo.nl" + } + ], + "description": "PHP implementation of Fowler's Money pattern", + "homepage": "http://moneyphp.org", + "keywords": [ + "Value Object", + "money", + "vo" + ], + "support": { + "issues": "https://github.com/moneyphp/money/issues", + "source": "https://github.com/moneyphp/money/tree/master" + }, + "time": "2020-03-18T17:49:59+00:00" + }, { "name": "monolog/monolog", "version": "1.26.1", @@ -3131,35 +3039,49 @@ "time": "2021-05-28T08:32:12+00:00" }, { - "name": "omnipay/2checkout", - "version": "v2.1.1", + "name": "omnipay/common", + "version": "v3.1.2", "source": { "type": "git", - "url": "https://github.com/thephpleague/omnipay-2checkout.git", - "reference": "31394ce58d5999b6f49b321cb3547747837c1297" + "url": "https://github.com/thephpleague/omnipay-common.git", + "reference": "5b16387ec5ab1b9ff86bdf0f20415088693b9948" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/omnipay-2checkout/zipball/31394ce58d5999b6f49b321cb3547747837c1297", - "reference": "31394ce58d5999b6f49b321cb3547747837c1297", + "url": "https://api.github.com/repos/thephpleague/omnipay-common/zipball/5b16387ec5ab1b9ff86bdf0f20415088693b9948", + "reference": "5b16387ec5ab1b9ff86bdf0f20415088693b9948", "shasum": "" }, "require": { - "omnipay/common": "~2.0" + "moneyphp/money": "^3.1", + "php": "^7.2|^8", + "php-http/client-implementation": "^1", + "php-http/discovery": "^1.14", + "php-http/message": "^1.5", + "symfony/http-foundation": "^2.1|^3|^4|^5" }, "require-dev": { - "omnipay/tests": "~2.0" + "omnipay/tests": "^4.1", + "php-http/guzzle7-adapter": "^1", + "php-http/mock-client": "^1", + "squizlabs/php_codesniffer": "^3.5" + }, + "suggest": { + "league/omnipay": "The default Omnipay package provides a default HTTP Adapter." }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.0.x-dev" + "dev-master": "3.1.x-dev" } }, "autoload": { "psr-4": { - "Omnipay\\TwoCheckout\\": "src/" - } + "Omnipay\\Common\\": "src/Common" + }, + "classmap": [ + "src/Omnipay.php" + ] }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -3170,58 +3092,74 @@ "name": "Adrian Macneil", "email": "adrian@adrianmacneil.com" }, + { + "name": "Barry vd. Heuvel", + "email": "barryvdh@gmail.com" + }, + { + "name": "Jason Judge", + "email": "jason.judge@consil.co.uk" + }, + { + "name": "Del" + }, { "name": "Omnipay Contributors", - "homepage": "https://github.com/thephpleague/omnipay-2checkout/contributors" + "homepage": "https://github.com/thephpleague/omnipay-common/contributors" } ], - "description": "2Checkout driver for the Omnipay payment processing library", - "homepage": "https://github.com/thephpleague/omnipay-2checkout", + "description": "Common components for Omnipay payment processing library", + "homepage": "https://github.com/thephpleague/omnipay-common", "keywords": [ - "2checkout", - "2co", "gateway", "merchant", "omnipay", "pay", "payment", - "twocheckout" + "purchase" ], "support": { - "issues": "https://github.com/thephpleague/omnipay-2checkout/issues", - "source": "https://github.com/thephpleague/omnipay-2checkout/tree/master" + "issues": "https://github.com/thephpleague/omnipay-common/issues", + "source": "https://github.com/thephpleague/omnipay-common/tree/v3.1.2" }, - "time": "2014-09-17T00:35:37+00:00" - }, + "funding": [ + { + "url": "https://github.com/barryvdh", + "type": "github" + } + ], + "time": "2021-06-05T11:36:12+00:00" + }, { - "name": "omnipay/authorizenet", - "version": "2.6.0", + "name": "omnipay/dummy", + "version": "v3.0.0", "source": { "type": "git", - "url": "https://github.com/thephpleague/omnipay-authorizenet.git", - "reference": "c2ed2361fc9b6dbd571b9e2d8ed00c731aa2ae2d" + "url": "https://github.com/thephpleague/omnipay-dummy.git", + "reference": "bfddc1e3127b7df41a5291213b314fdb4c66f6a2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/omnipay-authorizenet/zipball/c2ed2361fc9b6dbd571b9e2d8ed00c731aa2ae2d", - "reference": "c2ed2361fc9b6dbd571b9e2d8ed00c731aa2ae2d", + "url": "https://api.github.com/repos/thephpleague/omnipay-dummy/zipball/bfddc1e3127b7df41a5291213b314fdb4c66f6a2", + "reference": "bfddc1e3127b7df41a5291213b314fdb4c66f6a2", "shasum": "" }, "require": { - "omnipay/common": "~2.2" + "omnipay/common": "~3.0" }, "require-dev": { - "omnipay/tests": "~2.0" + "omnipay/tests": "~3.0", + "squizlabs/php_codesniffer": "~3.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.0.x-dev" + "dev-master": "3.0.x-dev" } }, "autoload": { "psr-4": { - "Omnipay\\AuthorizeNet\\": "src/" + "Omnipay\\Dummy\\": "src/" } }, "notification-url": "https://packagist.org/downloads/", @@ -3235,15 +3173,13 @@ }, { "name": "Omnipay Contributors", - "homepage": "https://github.com/thephpleague/omnipay-authorizenet/contributors" + "homepage": "https://github.com/thephpleague/omnipay-dummy/contributors" } ], - "description": "Authorize.Net gateway for the Omnipay payment processing library", - "homepage": "https://github.com/thephpleague/omnipay-authorizenet", + "description": "Dummy driver for the Omnipay payment processing library", + "homepage": "https://github.com/thephpleague/omnipay-dummy", "keywords": [ - "authorize", - "authorize net", - "authorize.net", + "Dummy", "gateway", "merchant", "omnipay", @@ -3251,40 +3187,40 @@ "payment" ], "support": { - "issues": "https://github.com/thephpleague/omnipay-authorizenet/issues", - "source": "https://github.com/thephpleague/omnipay-authorizenet/tree/master" + "issues": "https://github.com/thephpleague/omnipay-dummy/issues", + "source": "https://github.com/thephpleague/omnipay-dummy/tree/v3.0.0" }, - "time": "2018-01-13T18:47:39+00:00" + "time": "2018-05-14T18:41:15+00:00" }, { - "name": "omnipay/buckaroo", - "version": "v2.2.0", + "name": "omnipay/manual", + "version": "v3.0.0", "source": { "type": "git", - "url": "https://github.com/thephpleague/omnipay-buckaroo.git", - "reference": "b1d74b4121a9c889fe8cc77715e6cffb14b8833c" + "url": "https://github.com/thephpleague/omnipay-manual.git", + "reference": "82d23772ac50b549ff65bdb3ff38a61a5de0130f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/omnipay-buckaroo/zipball/b1d74b4121a9c889fe8cc77715e6cffb14b8833c", - "reference": "b1d74b4121a9c889fe8cc77715e6cffb14b8833c", + "url": "https://api.github.com/repos/thephpleague/omnipay-manual/zipball/82d23772ac50b549ff65bdb3ff38a61a5de0130f", + "reference": "82d23772ac50b549ff65bdb3ff38a61a5de0130f", "shasum": "" }, "require": { - "omnipay/common": "~2.0" + "omnipay/common": "^2.0||^3.0" }, "require-dev": { - "omnipay/tests": "~2.0" + "omnipay/tests": "^2.0||^3.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.0.x-dev" + "dev-master": "3.0.x-dev" } }, "autoload": { "psr-4": { - "Omnipay\\Buckaroo\\": "src/" + "Omnipay\\Manual\\": "src/" } }, "notification-url": "https://packagist.org/downloads/", @@ -3298,54 +3234,56 @@ }, { "name": "Omnipay Contributors", - "homepage": "https://github.com/thephpleague/omnipay-buckaroo/contributors" + "homepage": "https://github.com/thephpleague/omnipay-manual/contributors" } ], - "description": "Buckaroo driver for the Omnipay payment processing library", - "homepage": "https://github.com/thephpleague/omnipay-buckaroo", + "description": "Manual driver for the Omnipay payment processing library", + "homepage": "https://github.com/thephpleague/omnipay-manual", "keywords": [ - "buckaroo", "gateway", + "manual", "merchant", "omnipay", "pay", "payment" ], "support": { - "issues": "https://github.com/thephpleague/omnipay-buckaroo/issues", - "source": "https://github.com/thephpleague/omnipay-buckaroo/tree/master" + "issues": "https://github.com/thephpleague/omnipay-manual/issues", + "source": "https://github.com/thephpleague/omnipay-manual/tree/v3.0.0" }, - "time": "2017-05-30T09:43:42+00:00" + "time": "2018-07-18T13:53:13+00:00" }, { - "name": "omnipay/cardsave", - "version": "2.1.2", + "name": "omnipay/paypal", + "version": "v3.0.2", "source": { "type": "git", - "url": "https://github.com/thephpleague/omnipay-cardsave.git", - "reference": "368fb2f56adb5be2ffcb3c29a7ddcd585cb41a04" + "url": "https://github.com/thephpleague/omnipay-paypal.git", + "reference": "519db61b32ff0c1e56cbec94762b970ee9674f65" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/omnipay-cardsave/zipball/368fb2f56adb5be2ffcb3c29a7ddcd585cb41a04", - "reference": "368fb2f56adb5be2ffcb3c29a7ddcd585cb41a04", + "url": "https://api.github.com/repos/thephpleague/omnipay-paypal/zipball/519db61b32ff0c1e56cbec94762b970ee9674f65", + "reference": "519db61b32ff0c1e56cbec94762b970ee9674f65", "shasum": "" }, "require": { - "omnipay/common": "~2.0" + "omnipay/common": "^3" }, "require-dev": { - "omnipay/tests": "~2.0" + "omnipay/tests": "^3", + "phpro/grumphp": "^0.14", + "squizlabs/php_codesniffer": "^3" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.0.x-dev" + "dev-master": "3.0.x-dev" } }, "autoload": { "psr-4": { - "Omnipay\\CardSave\\": "src/" + "Omnipay\\PayPal\\": "src/" } }, "notification-url": "https://packagist.org/downloads/", @@ -3359,176 +3297,78 @@ }, { "name": "Omnipay Contributors", - "homepage": "https://github.com/thephpleague/omnipay-cardsave/contributors" + "homepage": "https://github.com/thephpleague/omnipay-paypal/contributors" } ], - "description": "CardSave driver for the Omnipay payment processing library", - "homepage": "https://github.com/thephpleague/omnipay-cardsave", + "description": "PayPal gateway for Omnipay payment processing library", + "homepage": "https://github.com/thephpleague/omnipay-paypal", "keywords": [ - "card save", - "cardsave", "gateway", "merchant", "omnipay", "pay", - "payment" + "payment", + "paypal", + "purchase" ], "support": { - "issues": "https://github.com/thephpleague/omnipay-cardsave/issues", - "source": "https://github.com/thephpleague/omnipay-cardsave/tree/master" + "issues": "https://github.com/thephpleague/omnipay-paypal/issues", + "source": "https://github.com/thephpleague/omnipay-paypal/tree/v3.0.2" }, - "time": "2014-09-21T02:27:16+00:00" + "time": "2018-05-15T10:35:58+00:00" }, { - "name": "omnipay/coinbase", - "version": "v2.0.4", + "name": "openclerk/country-list", + "version": "1.0.0", "source": { "type": "git", - "url": "https://github.com/thephpleague/omnipay-coinbase.git", - "reference": "69c4f07d88ef3bdb2b42cd90234b358b641dfa29" + "url": "https://github.com/openclerk/country-list.git", + "reference": "3e0c1714c2d90a27f88dd9128af2ac72232d83ee" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/omnipay-coinbase/zipball/69c4f07d88ef3bdb2b42cd90234b358b641dfa29", - "reference": "69c4f07d88ef3bdb2b42cd90234b358b641dfa29", + "url": "https://api.github.com/repos/openclerk/country-list/zipball/3e0c1714c2d90a27f88dd9128af2ac72232d83ee", + "reference": "3e0c1714c2d90a27f88dd9128af2ac72232d83ee", "shasum": "" }, - "require": { - "omnipay/common": "~2.0" - }, "require-dev": { - "omnipay/tests": "~2.0" + "umpirsky/country-list": "dev-master" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.0.x-dev" - } - }, - "autoload": { - "psr-4": { - "Omnipay\\Coinbase\\": "src/" - } - }, "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Adrian Macneil", - "email": "adrian@adrianmacneil.com" - }, - { - "name": "Omnipay Contributors", - "homepage": "https://github.com/thephpleague/omnipay-coinbase/contributors" - } - ], - "description": "Coinbase driver for the Omnipay payment processing library", - "homepage": "https://github.com/thephpleague/omnipay-coinbase", - "keywords": [ - "coinbase", - "gateway", - "merchant", - "omnipay", - "pay", - "payment" - ], + "description": "List of all countries with names and ISO 3166-1 codes in many languages and data formats", "support": { - "issues": "https://github.com/thephpleague/omnipay-coinbase/issues", - "source": "https://github.com/thephpleague/omnipay-coinbase/tree/master" + "issues": "https://github.com/openclerk/country-list/issues", + "source": "https://github.com/openclerk/country-list/tree/master" }, - "time": "2015-03-06T05:35:39+00:00" + "time": "2015-02-20T02:09:35+00:00" }, { - "name": "omnipay/common", - "version": "v2.3.3", + "name": "paragonie/constant_time_encoding", + "version": "v2.4.0", "source": { "type": "git", - "url": "https://github.com/thephpleague/omnipay-common.git", - "reference": "e4c54a314a2529c1008ad3f77e9eef26ed1f311b" + "url": "https://github.com/paragonie/constant_time_encoding.git", + "reference": "f34c2b11eb9d2c9318e13540a1dbc2a3afbd939c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/omnipay-common/zipball/e4c54a314a2529c1008ad3f77e9eef26ed1f311b", - "reference": "e4c54a314a2529c1008ad3f77e9eef26ed1f311b", + "url": "https://api.github.com/repos/paragonie/constant_time_encoding/zipball/f34c2b11eb9d2c9318e13540a1dbc2a3afbd939c", + "reference": "f34c2b11eb9d2c9318e13540a1dbc2a3afbd939c", "shasum": "" }, "require": { - "guzzle/http": "~3.1", - "php": ">=5.3.2", - "symfony/http-foundation": "~2.1" + "php": "^7|^8" }, "require-dev": { - "omnipay/tests": "~2.0" + "phpunit/phpunit": "^6|^7|^8|^9", + "vimeo/psalm": "^1|^2|^3|^4" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.0.x-dev" - }, - "gateways": [ - "AuthorizeNet_AIM", - "AuthorizeNet_SIM", - "Buckaroo", - "Buckaroo_Ideal", - "Buckaroo_PayPal", - "CardSave", - "Coinbase", - "Dummy", - "Eway_Rapid", - "FirstData_Connect", - "GoCardless", - "Manual", - "Migs_ThreeParty", - "Migs_TwoParty", - "Mollie", - "MultiSafepay", - "Netaxept", - "NetBanx", - "PayFast", - "Payflow_Pro", - "PaymentExpress_PxPay", - "PaymentExpress_PxPost", - "PayPal_Express", - "PayPal_Pro", - "Pin", - "SagePay_Direct", - "SagePay_Server", - "SecurePay_DirectPost", - "Stripe", - "TargetPay_Directebanking", - "TargetPay_Ideal", - "TargetPay_Mrcash", - "TwoCheckout", - "WorldPay", - "Alipay Bank", - "AliPay Dual Func", - "Alipay Express", - "Alipay Mobile Express", - "Alipay Secured", - "Alipay Wap Express", - "Cybersource", - "DataCash", - "Ecopayz", - "Neteller", - "Pacnet", - "PaymentSense", - "Realex Remote", - "SecPay (PayPoint.net)", - "Sisow", - "Skrill", - "YandexMoney", - "YandexMoneyIndividual" - ] - }, "autoload": { - "psr-0": { - "Omnipay\\Common\\": "src/" - }, - "classmap": [ - "src/Omnipay/Omnipay.php" - ] + "psr-4": { + "ParagonIE\\ConstantTime\\": "src/" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -3536,243 +3376,232 @@ ], "authors": [ { - "name": "Adrian Macneil", - "email": "adrian@adrianmacneil.com" + "name": "Paragon Initiative Enterprises", + "email": "security@paragonie.com", + "homepage": "https://paragonie.com", + "role": "Maintainer" }, { - "name": "Omnipay Contributors", - "homepage": "https://github.com/thephpleague/omnipay-common/contributors" + "name": "Steve 'Sc00bz' Thomas", + "email": "steve@tobtu.com", + "homepage": "https://www.tobtu.com", + "role": "Original Developer" } ], - "description": "Common components for Omnipay payment processing library", - "homepage": "https://github.com/thephpleague/omnipay-common", + "description": "Constant-time Implementations of RFC 4648 Encoding (Base-64, Base-32, Base-16)", "keywords": [ - "gateway", - "merchant", - "omnipay", - "pay", - "payment", - "purchase" + "base16", + "base32", + "base32_decode", + "base32_encode", + "base64", + "base64_decode", + "base64_encode", + "bin2hex", + "encoding", + "hex", + "hex2bin", + "rfc4648" ], "support": { - "issues": "https://github.com/thephpleague/omnipay-common/issues", - "source": "https://github.com/thephpleague/omnipay-common/tree/master" + "email": "info@paragonie.com", + "issues": "https://github.com/paragonie/constant_time_encoding/issues", + "source": "https://github.com/paragonie/constant_time_encoding" }, - "time": "2015-01-11T04:54:29+00:00" + "time": "2020-12-06T15:14:20+00:00" }, { - "name": "omnipay/dummy", - "version": "v2.2.0", + "name": "paypal/adaptivepayments-sdk-php", + "version": "v3.9.2", "source": { "type": "git", - "url": "https://github.com/thephpleague/omnipay-dummy.git", - "reference": "0ced02379aff446011ccde1392e641d9da436442" + "url": "https://github.com/paypal/adaptivepayments-sdk-php.git", + "reference": "9fd8af48a7134f296552efd192023055b80f3cd2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/omnipay-dummy/zipball/0ced02379aff446011ccde1392e641d9da436442", - "reference": "0ced02379aff446011ccde1392e641d9da436442", + "url": "https://api.github.com/repos/paypal/adaptivepayments-sdk-php/zipball/9fd8af48a7134f296552efd192023055b80f3cd2", + "reference": "9fd8af48a7134f296552efd192023055b80f3cd2", "shasum": "" }, "require": { - "omnipay/common": "~2.0" - }, - "require-dev": { - "omnipay/tests": "~2.0" + "ext-curl": "*", + "paypal/sdk-core-php": "3.*", + "php": ">=5.3.0" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.0.x-dev" - } - }, "autoload": { - "psr-4": { - "Omnipay\\Dummy\\": "src/" + "psr-0": { + "PayPal\\Service": "lib/", + "PayPal\\Types": "lib/" } }, "notification-url": "https://packagist.org/downloads/", "license": [ - "MIT" + "Apache2" ], "authors": [ { - "name": "Adrian Macneil", - "email": "adrian@adrianmacneil.com" - }, - { - "name": "Omnipay Contributors", - "homepage": "https://github.com/thephpleague/omnipay-dummy/contributors" + "name": "PayPal", + "homepage": "https://github.com/paypal/adaptivepayments-sdk-php/contributors" } ], - "description": "Dummy driver for the Omnipay payment processing library", - "homepage": "https://github.com/thephpleague/omnipay-dummy", + "description": "PayPal adaptivepayments SDK for PHP", + "homepage": "https://developer.paypal.com", "keywords": [ - "Dummy", - "gateway", - "merchant", - "omnipay", - "pay", - "payment" + "paypal", + "php", + "sdk" ], "support": { - "issues": "https://github.com/thephpleague/omnipay-dummy/issues", - "source": "https://github.com/thephpleague/omnipay-dummy/tree/v2.2.0" + "issues": "https://github.com/paypal/adaptivepayments-sdk-php/issues", + "source": "https://github.com/paypal/adaptivepayments-sdk-php/tree/stable-php5.3" }, - "time": "2018-04-17T09:57:18+00:00" + "abandoned": true, + "time": "2016-04-08T16:14:06+00:00" }, { - "name": "omnipay/eway", - "version": "v2.2.2", + "name": "paypal/merchant-sdk-php", + "version": "v3.12.0", "source": { "type": "git", - "url": "https://github.com/thephpleague/omnipay-eway.git", - "reference": "480153441ad2e7aff9c26cf55e398c88da3e7eb1" + "url": "https://github.com/paypal/merchant-sdk-php.git", + "reference": "f21fe42ad787f98ea5d7186b19e8bec97f1852ed" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/omnipay-eway/zipball/480153441ad2e7aff9c26cf55e398c88da3e7eb1", - "reference": "480153441ad2e7aff9c26cf55e398c88da3e7eb1", + "url": "https://api.github.com/repos/paypal/merchant-sdk-php/zipball/f21fe42ad787f98ea5d7186b19e8bec97f1852ed", + "reference": "f21fe42ad787f98ea5d7186b19e8bec97f1852ed", "shasum": "" }, "require": { - "omnipay/common": "~2.0" - }, - "require-dev": { - "omnipay/tests": "~2.0" + "ext-curl": "*", + "paypal/sdk-core-php": "3.*", + "php": ">=5.3.0" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.0.x-dev" - } - }, "autoload": { - "psr-4": { - "Omnipay\\Eway\\": "src/" + "psr-0": { + "PayPal\\Service": "lib/", + "PayPal\\CoreComponentTypes": "lib/", + "PayPal\\EBLBaseComponents": "lib/", + "PayPal\\EnhancedDataTypes": "lib/", + "PayPal\\PayPalAPI": "lib/" } }, "notification-url": "https://packagist.org/downloads/", "license": [ - "MIT" + "Apache-2.0" ], "authors": [ { - "name": "Adrian Macneil", - "email": "adrian@adrianmacneil.com" - }, - { - "name": "Omnipay Contributors", - "homepage": "https://github.com/thephpleague/omnipay-eway/contributors" + "name": "PayPal", + "homepage": "https://github.com/paypal/merchant-sdk-php/contributors" } ], - "description": "eWay driver for the Omnipay payment processing library", - "homepage": "https://github.com/thephpleague/omnipay-eway", + "description": "PayPal Merchant SDK for PHP", + "homepage": "https://developer.paypal.com", "keywords": [ - "eway", - "gateway", - "merchant", - "omnipay", - "pay", - "payment" + "paypal", + "php", + "sdk" ], "support": { - "issues": "https://github.com/thephpleague/omnipay-eway/issues", - "source": "https://github.com/thephpleague/omnipay-eway/tree/master" + "issues": "https://github.com/paypal/merchant-sdk-php/issues", + "source": "https://github.com/paypal/merchant-sdk-php/tree/master" }, - "time": "2017-05-12T08:17:12+00:00" + "time": "2017-10-10T19:03:05+00:00" }, { - "name": "omnipay/firstdata", - "version": "v2.4.1", + "name": "paypal/sdk-core-php", + "version": "3.4.0", "source": { "type": "git", - "url": "https://github.com/thephpleague/omnipay-firstdata.git", - "reference": "addb59b381cb31609071201506ad54bf2402668a" + "url": "https://github.com/paypal/sdk-core-php.git", + "reference": "d2174f69f9811a8f2e79af7498fdf89586457d76" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/omnipay-firstdata/zipball/addb59b381cb31609071201506ad54bf2402668a", - "reference": "addb59b381cb31609071201506ad54bf2402668a", + "url": "https://api.github.com/repos/paypal/sdk-core-php/zipball/d2174f69f9811a8f2e79af7498fdf89586457d76", + "reference": "d2174f69f9811a8f2e79af7498fdf89586457d76", "shasum": "" }, "require": { - "omnipay/common": "~2.0" + "ext-curl": "*", + "php": ">=5.3.0" }, "require-dev": { - "omnipay/tests": "~2.0" + "phpunit/phpunit": "3.7.*" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.0.x-dev" - } - }, - "autoload": { - "psr-4": { - "Omnipay\\FirstData\\": "src/" + "autoload": { + "psr-0": { + "PayPal": "lib/" } }, "notification-url": "https://packagist.org/downloads/", "license": [ - "MIT" + "Apache-2.0" ], "authors": [ { - "name": "Adrian Macneil", - "email": "adrian@adrianmacneil.com" - }, - { - "name": "Omnipay Contributors", - "homepage": "https://github.com/thephpleague/omnipay-firstdata/contributors" + "name": "PayPal", + "homepage": "https://github.com/paypal/sdk-core-php/contributors" } ], - "description": "First Data driver for the Omnipay payment processing library", - "homepage": "https://github.com/thephpleague/omnipay-firstdata", + "description": "PayPal Core SDK for PHP", + "homepage": "https://github.com/paypal/sdk-core-php", "keywords": [ - "first data", - "firstdata", - "gateway", - "merchant", - "omnipay", - "pay", - "payment" + "paypal", + "php", + "sdk" ], "support": { - "issues": "https://github.com/thephpleague/omnipay-firstdata/issues", - "source": "https://github.com/thephpleague/omnipay-firstdata/tree/master" + "issues": "https://github.com/paypal/sdk-core-php/issues", + "source": "https://github.com/paypal/sdk-core-php/tree/master" }, - "time": "2019-01-27T20:05:45+00:00" + "abandoned": true, + "time": "2017-11-13T18:53:13+00:00" }, { - "name": "omnipay/gocardless", - "version": "2.2.0", + "name": "php-http/discovery", + "version": "1.14.0", "source": { "type": "git", - "url": "https://github.com/thephpleague/omnipay-gocardless.git", - "reference": "1c0bebdcc32d89fd243e1183028d2d50316e8bb1" + "url": "https://github.com/php-http/discovery.git", + "reference": "778f722e29250c1fac0bbdef2c122fa5d038c9eb" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/omnipay-gocardless/zipball/1c0bebdcc32d89fd243e1183028d2d50316e8bb1", - "reference": "1c0bebdcc32d89fd243e1183028d2d50316e8bb1", + "url": "https://api.github.com/repos/php-http/discovery/zipball/778f722e29250c1fac0bbdef2c122fa5d038c9eb", + "reference": "778f722e29250c1fac0bbdef2c122fa5d038c9eb", "shasum": "" }, "require": { - "omnipay/common": "~2.0" + "php": "^7.1 || ^8.0" + }, + "conflict": { + "nyholm/psr7": "<1.0" }, "require-dev": { - "omnipay/tests": "~2.0" + "graham-campbell/phpspec-skip-example-extension": "^5.0", + "php-http/httplug": "^1.0 || ^2.0", + "php-http/message-factory": "^1.0", + "phpspec/phpspec": "^5.1 || ^6.1", + "puli/composer-plugin": "1.0.0-beta10" + }, + "suggest": { + "php-http/message": "Allow to use Guzzle, Diactoros or Slim Framework factories" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.0.x-dev" + "dev-master": "1.9-dev" } }, "autoload": { "psr-4": { - "Omnipay\\GoCardless\\": "src/" + "Http\\Discovery\\": "src/" } }, "notification-url": "https://packagist.org/downloads/", @@ -3781,60 +3610,65 @@ ], "authors": [ { - "name": "Adrian Macneil", - "email": "adrian@adrianmacneil.com" - }, - { - "name": "Omnipay Contributors", - "homepage": "https://github.com/thephpleague/omnipay-gocardless/contributors" + "name": "Márk Sági-Kazár", + "email": "mark.sagikazar@gmail.com" } ], - "description": "GoCardless driver for the Omnipay payment processing library", - "homepage": "https://github.com/thephpleague/omnipay-gocardless", + "description": "Finds installed HTTPlug implementations and PSR-7 message factories", + "homepage": "http://php-http.org", "keywords": [ - "gateway", - "go cardless", - "gocardless", - "merchant", - "omnipay", - "pay", - "payment" + "adapter", + "client", + "discovery", + "factory", + "http", + "message", + "psr7" ], "support": { - "issues": "https://github.com/thephpleague/omnipay-gocardless/issues", - "source": "https://github.com/thephpleague/omnipay-gocardless/tree/master" + "issues": "https://github.com/php-http/discovery/issues", + "source": "https://github.com/php-http/discovery/tree/1.14.0" }, - "time": "2015-09-24T14:44:29+00:00" + "time": "2021-06-01T14:30:21+00:00" }, { - "name": "omnipay/manual", - "version": "v2.2.1", + "name": "php-http/guzzle7-adapter", + "version": "1.0.0", "source": { "type": "git", - "url": "https://github.com/thephpleague/omnipay-manual.git", - "reference": "d896909093422f25a9deec13232b31ea69a72994" + "url": "https://github.com/php-http/guzzle7-adapter.git", + "reference": "fb075a71dbfa4847cf0c2938c4e5a9c478ef8b01" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/omnipay-manual/zipball/d896909093422f25a9deec13232b31ea69a72994", - "reference": "d896909093422f25a9deec13232b31ea69a72994", + "url": "https://api.github.com/repos/php-http/guzzle7-adapter/zipball/fb075a71dbfa4847cf0c2938c4e5a9c478ef8b01", + "reference": "fb075a71dbfa4847cf0c2938c4e5a9c478ef8b01", "shasum": "" }, "require": { - "omnipay/common": "~2.0" + "guzzlehttp/guzzle": "^7.0", + "php": "^7.2 | ^8.0", + "php-http/httplug": "^2.0", + "psr/http-client": "^1.0" + }, + "provide": { + "php-http/async-client-implementation": "1.0", + "php-http/client-implementation": "1.0", + "psr/http-client-implementation": "1.0" }, "require-dev": { - "omnipay/tests": "~2.0" + "php-http/client-integration-tests": "^3.0", + "phpunit/phpunit": "^8.0|^9.3" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.0.x-dev" + "dev-master": "0.2.x-dev" } }, "autoload": { "psr-4": { - "Omnipay\\Manual\\": "src/" + "Http\\Adapter\\Guzzle7\\": "src/" } }, "notification-url": "https://packagist.org/downloads/", @@ -3843,59 +3677,55 @@ ], "authors": [ { - "name": "Adrian Macneil", - "email": "adrian@adrianmacneil.com" - }, - { - "name": "Omnipay Contributors", - "homepage": "https://github.com/thephpleague/omnipay-manual/contributors" + "name": "Tobias Nyholm", + "email": "tobias.nyholm@gmail.com" } ], - "description": "Manual driver for the Omnipay payment processing library", - "homepage": "https://github.com/thephpleague/omnipay-manual", + "description": "Guzzle 7 HTTP Adapter", + "homepage": "http://httplug.io", "keywords": [ - "gateway", - "manual", - "merchant", - "omnipay", - "pay", - "payment" + "Guzzle", + "http" ], "support": { - "issues": "https://github.com/thephpleague/omnipay-manual/issues", - "source": "https://github.com/thephpleague/omnipay-manual/tree/master" + "issues": "https://github.com/php-http/guzzle7-adapter/issues", + "source": "https://github.com/php-http/guzzle7-adapter/tree/1.0.0" }, - "time": "2016-12-28T03:02:15+00:00" + "time": "2021-03-09T07:35:15+00:00" }, { - "name": "omnipay/migs", - "version": "v2.2.2", + "name": "php-http/httplug", + "version": "2.2.0", "source": { "type": "git", - "url": "https://github.com/thephpleague/omnipay-migs.git", - "reference": "0f79c818a150e73497efbe5e097ac4377d8f9717" + "url": "https://github.com/php-http/httplug.git", + "reference": "191a0a1b41ed026b717421931f8d3bd2514ffbf9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/omnipay-migs/zipball/0f79c818a150e73497efbe5e097ac4377d8f9717", - "reference": "0f79c818a150e73497efbe5e097ac4377d8f9717", + "url": "https://api.github.com/repos/php-http/httplug/zipball/191a0a1b41ed026b717421931f8d3bd2514ffbf9", + "reference": "191a0a1b41ed026b717421931f8d3bd2514ffbf9", "shasum": "" }, "require": { - "omnipay/common": "~2.0" + "php": "^7.1 || ^8.0", + "php-http/promise": "^1.1", + "psr/http-client": "^1.0", + "psr/http-message": "^1.0" }, "require-dev": { - "omnipay/tests": "~2.0" + "friends-of-phpspec/phpspec-code-coverage": "^4.1", + "phpspec/phpspec": "^5.1 || ^6.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.0.x-dev" + "dev-master": "2.x-dev" } }, "autoload": { "psr-4": { - "Omnipay\\Migs\\": "src/" + "Http\\Client\\": "src/" } }, "notification-url": "https://packagist.org/downloads/", @@ -3904,61 +3734,77 @@ ], "authors": [ { - "name": "Adrian Macneil", - "email": "adrian@adrianmacneil.com" + "name": "Eric GELOEN", + "email": "geloen.eric@gmail.com" }, { - "name": "Omnipay Contributors", - "homepage": "https://github.com/thephpleague/omnipay-migs/contributors" + "name": "Márk Sági-Kazár", + "email": "mark.sagikazar@gmail.com", + "homepage": "https://sagikazarmark.hu" } ], - "description": "MIGS driver for the Omnipay payment processing library", - "homepage": "https://github.com/thephpleague/omnipay-migs", + "description": "HTTPlug, the HTTP client abstraction for PHP", + "homepage": "http://httplug.io", "keywords": [ - "gateway", - "mastercard internet gateway service", - "merchant", - "migs", - "omnipay", - "pay", - "payment" + "client", + "http" ], "support": { - "issues": "https://github.com/thephpleague/omnipay-migs/issues", - "source": "https://github.com/thephpleague/omnipay-migs/tree/master" + "issues": "https://github.com/php-http/httplug/issues", + "source": "https://github.com/php-http/httplug/tree/master" }, - "time": "2017-06-07T07:52:47+00:00" + "time": "2020-07-13T15:43:23+00:00" }, { - "name": "omnipay/mollie", - "version": "v3.2.0", + "name": "php-http/message", + "version": "1.12.0", "source": { "type": "git", - "url": "https://github.com/thephpleague/omnipay-mollie.git", - "reference": "8a81a9980a3de726e6badb2ca0edc3728bba6c95" + "url": "https://github.com/php-http/message.git", + "reference": "39eb7548be982a81085fe5a6e2a44268cd586291" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/omnipay-mollie/zipball/8a81a9980a3de726e6badb2ca0edc3728bba6c95", - "reference": "8a81a9980a3de726e6badb2ca0edc3728bba6c95", + "url": "https://api.github.com/repos/php-http/message/zipball/39eb7548be982a81085fe5a6e2a44268cd586291", + "reference": "39eb7548be982a81085fe5a6e2a44268cd586291", "shasum": "" }, "require": { - "omnipay/common": "~2.2" + "clue/stream-filter": "^1.5", + "php": "^7.1 || ^8.0", + "php-http/message-factory": "^1.0.2", + "psr/http-message": "^1.0" + }, + "provide": { + "php-http/message-factory-implementation": "1.0" }, "require-dev": { - "omnipay/tests": "~2.0" + "ergebnis/composer-normalize": "^2.6", + "ext-zlib": "*", + "guzzlehttp/psr7": "^1.0", + "laminas/laminas-diactoros": "^2.0", + "phpspec/phpspec": "^5.1 || ^6.3", + "slim/slim": "^3.0" + }, + "suggest": { + "ext-zlib": "Used with compressor/decompressor streams", + "guzzlehttp/psr7": "Used with Guzzle PSR-7 Factories", + "laminas/laminas-diactoros": "Used with Diactoros Factories", + "slim/slim": "Used with Slim Framework PSR-7 implementation" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.0.x-dev" + "dev-master": "1.10-dev" } }, "autoload": { "psr-4": { - "Omnipay\\Mollie\\": "src/" - } + "Http\\Message\\": "src/" + }, + "files": [ + "src/filters.php" + ] }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -3966,59 +3812,50 @@ ], "authors": [ { - "name": "Adrian Macneil", - "email": "adrian@adrianmacneil.com" - }, - { - "name": "Omnipay Contributors", - "homepage": "https://github.com/thephpleague/omnipay-mollie/contributors" + "name": "Márk Sági-Kazár", + "email": "mark.sagikazar@gmail.com" } ], - "description": "Mollie driver for the Omnipay payment processing library", - "homepage": "https://github.com/thephpleague/omnipay-mollie", + "description": "HTTP Message related tools", + "homepage": "http://php-http.org", "keywords": [ - "gateway", - "merchant", - "mollie", - "omnipay", - "pay", - "payment" + "http", + "message", + "psr-7" ], "support": { - "issues": "https://github.com/thephpleague/omnipay-mollie/issues", - "source": "https://github.com/thephpleague/omnipay-mollie/tree/master" + "issues": "https://github.com/php-http/message/issues", + "source": "https://github.com/php-http/message/tree/1.12.0" }, - "time": "2016-10-11T09:44:09+00:00" + "time": "2021-08-29T09:13:12+00:00" }, { - "name": "omnipay/multisafepay", - "version": "v2.3.6", + "name": "php-http/message-factory", + "version": "v1.0.2", "source": { "type": "git", - "url": "https://github.com/thephpleague/omnipay-multisafepay.git", - "reference": "6d7a6d64fa0e124b90767e505ea105f4c3ecbadd" + "url": "https://github.com/php-http/message-factory.git", + "reference": "a478cb11f66a6ac48d8954216cfed9aa06a501a1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/omnipay-multisafepay/zipball/6d7a6d64fa0e124b90767e505ea105f4c3ecbadd", - "reference": "6d7a6d64fa0e124b90767e505ea105f4c3ecbadd", + "url": "https://api.github.com/repos/php-http/message-factory/zipball/a478cb11f66a6ac48d8954216cfed9aa06a501a1", + "reference": "a478cb11f66a6ac48d8954216cfed9aa06a501a1", "shasum": "" }, "require": { - "omnipay/common": "~2.0" - }, - "require-dev": { - "omnipay/tests": "~2.0" + "php": ">=5.4", + "psr/http-message": "^1.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.0.x-dev" + "dev-master": "1.0-dev" } }, "autoload": { "psr-4": { - "Omnipay\\MultiSafepay\\": "src/" + "Http\\Message\\": "src/" } }, "notification-url": "https://packagist.org/downloads/", @@ -4027,60 +3864,55 @@ ], "authors": [ { - "name": "Adrian Macneil", - "email": "adrian@adrianmacneil.com" - }, - { - "name": "Omnipay Contributors", - "homepage": "https://github.com/thephpleague/omnipay-multisafepay/contributors" + "name": "Márk Sági-Kazár", + "email": "mark.sagikazar@gmail.com" } ], - "description": "MultiSafepay driver for the Omnipay payment processing library", - "homepage": "https://github.com/thephpleague/omnipay-multisafepay", + "description": "Factory interfaces for PSR-7 HTTP Message", + "homepage": "http://php-http.org", "keywords": [ - "gateway", - "merchant", - "multi safepay", - "multisafepay", - "omnipay", - "pay", - "payment" + "factory", + "http", + "message", + "stream", + "uri" ], "support": { - "issues": "https://github.com/thephpleague/omnipay-multisafepay/issues", - "source": "https://github.com/thephpleague/omnipay-multisafepay/tree/master" + "issues": "https://github.com/php-http/message-factory/issues", + "source": "https://github.com/php-http/message-factory/tree/master" }, - "time": "2017-05-28T06:28:10+00:00" + "time": "2015-12-19T14:08:53+00:00" }, { - "name": "omnipay/netaxept", - "version": "v2.4.0", + "name": "php-http/promise", + "version": "1.1.0", "source": { "type": "git", - "url": "https://github.com/thephpleague/omnipay-netaxept.git", - "reference": "4cefa26d47af97fc1fefa2a651ea5eea25d23af8" + "url": "https://github.com/php-http/promise.git", + "reference": "4c4c1f9b7289a2ec57cde7f1e9762a5789506f88" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/omnipay-netaxept/zipball/4cefa26d47af97fc1fefa2a651ea5eea25d23af8", - "reference": "4cefa26d47af97fc1fefa2a651ea5eea25d23af8", + "url": "https://api.github.com/repos/php-http/promise/zipball/4c4c1f9b7289a2ec57cde7f1e9762a5789506f88", + "reference": "4c4c1f9b7289a2ec57cde7f1e9762a5789506f88", "shasum": "" }, "require": { - "omnipay/common": "~2.0" + "php": "^7.1 || ^8.0" }, "require-dev": { - "omnipay/tests": "~2.0" + "friends-of-phpspec/phpspec-code-coverage": "^4.3.2", + "phpspec/phpspec": "^5.1.2 || ^6.2" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.0.x-dev" + "dev-master": "1.1-dev" } }, "autoload": { "psr-4": { - "Omnipay\\Netaxept\\": "src/" + "Http\\Promise\\": "src/" } }, "notification-url": "https://packagist.org/downloads/", @@ -4089,140 +3921,133 @@ ], "authors": [ { - "name": "Adrian Macneil", - "email": "adrian@adrianmacneil.com" + "name": "Joel Wurtz", + "email": "joel.wurtz@gmail.com" }, { - "name": "Omnipay Contributors", - "homepage": "https://github.com/thephpleague/omnipay-netaxept/contributors" + "name": "Márk Sági-Kazár", + "email": "mark.sagikazar@gmail.com" } ], - "description": "Netaxept driver for the Omnipay payment processing library", - "homepage": "https://github.com/thephpleague/omnipay-netaxept", + "description": "Promise used for asynchronous HTTP requests", + "homepage": "http://httplug.io", "keywords": [ - "gateway", - "merchant", - "netaxept", - "omnipay", - "pay", - "payment" + "promise" ], "support": { - "issues": "https://github.com/thephpleague/omnipay-netaxept/issues", - "source": "https://github.com/thephpleague/omnipay-netaxept/tree/master" + "issues": "https://github.com/php-http/promise/issues", + "source": "https://github.com/php-http/promise/tree/1.1.0" }, - "time": "2018-05-14T08:46:15+00:00" + "time": "2020-07-07T09:29:14+00:00" }, { - "name": "omnipay/netbanx", - "version": "v2.2", + "name": "phpmailer/phpmailer", + "version": "v6.5.1", "source": { "type": "git", - "url": "https://github.com/thephpleague/omnipay-netbanx.git", - "reference": "3684bbbf0dbdb977c1484d7252d776d81c68c813" + "url": "https://github.com/PHPMailer/PHPMailer.git", + "reference": "dd803df5ad7492e1b40637f7ebd258fee5ca7355" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/omnipay-netbanx/zipball/3684bbbf0dbdb977c1484d7252d776d81c68c813", - "reference": "3684bbbf0dbdb977c1484d7252d776d81c68c813", + "url": "https://api.github.com/repos/PHPMailer/PHPMailer/zipball/dd803df5ad7492e1b40637f7ebd258fee5ca7355", + "reference": "dd803df5ad7492e1b40637f7ebd258fee5ca7355", "shasum": "" }, "require": { - "omnipay/common": "~2.0" + "ext-ctype": "*", + "ext-filter": "*", + "ext-hash": "*", + "php": ">=5.5.0" }, "require-dev": { - "omnipay/tests": "~2.0" + "dealerdirect/phpcodesniffer-composer-installer": "^0.7.0", + "doctrine/annotations": "^1.2", + "php-parallel-lint/php-console-highlighter": "^0.5.0", + "php-parallel-lint/php-parallel-lint": "^1.3", + "phpcompatibility/php-compatibility": "^9.3.5", + "roave/security-advisories": "dev-latest", + "squizlabs/php_codesniffer": "^3.6.0", + "yoast/phpunit-polyfills": "^1.0.0" }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.0.x-dev" - } + "suggest": { + "ext-mbstring": "Needed to send email in multibyte encoding charset or decode encoded addresses", + "hayageek/oauth2-yahoo": "Needed for Yahoo XOAUTH2 authentication", + "league/oauth2-google": "Needed for Google XOAUTH2 authentication", + "psr/log": "For optional PSR-3 debug logging", + "stevenmaguire/oauth2-microsoft": "Needed for Microsoft XOAUTH2 authentication", + "symfony/polyfill-mbstring": "To support UTF-8 if the Mbstring PHP extension is not enabled (^1.2)" }, + "type": "library", "autoload": { "psr-4": { - "Omnipay\\NetBanx\\": "src/" + "PHPMailer\\PHPMailer\\": "src/" } }, "notification-url": "https://packagist.org/downloads/", "license": [ - "MIT" + "LGPL-2.1-only" ], "authors": [ { - "name": "Adrian Macneil", - "email": "adrian@adrianmacneil.com" + "name": "Marcus Bointon", + "email": "phpmailer@synchromedia.co.uk" }, { - "name": "Omnipay Contributors", - "homepage": "https://github.com/thephpleague/omnipay-netbanx/contributors" + "name": "Jim Jagielski", + "email": "jimjag@gmail.com" + }, + { + "name": "Andy Prevost", + "email": "codeworxtech@users.sourceforge.net" + }, + { + "name": "Brent R. Matzelle" } ], - "description": "NetBanx driver for the Omnipay payment processing library", - "homepage": "https://github.com/thephpleague/omnipay-netbanx", - "keywords": [ - "gateway", - "merchant", - "netbanx", - "omnipay", - "pay", - "payment" - ], + "description": "PHPMailer is a full-featured email creation and transfer class for PHP", "support": { - "issues": "https://github.com/thephpleague/omnipay-netbanx/issues", - "source": "https://github.com/thephpleague/omnipay-netbanx/tree/master" + "issues": "https://github.com/PHPMailer/PHPMailer/issues", + "source": "https://github.com/PHPMailer/PHPMailer/tree/v6.5.1" }, - "time": "2016-09-21T10:52:03+00:00" + "funding": [ + { + "url": "https://github.com/Synchro", + "type": "github" + } + ], + "time": "2021-08-18T09:14:16+00:00" }, { - "name": "omnipay/omnipay", - "version": "2.3.2", + "name": "pimple/pimple", + "version": "v3.4.0", "source": { "type": "git", - "url": "https://github.com/thephpleague/omnipay.git", - "reference": "e9e6d95a2e7c3641ba31c985334d82e39dbd6078" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/thephpleague/omnipay/zipball/e9e6d95a2e7c3641ba31c985334d82e39dbd6078", - "reference": "e9e6d95a2e7c3641ba31c985334d82e39dbd6078", - "shasum": "" - }, - "require": { - "omnipay/2checkout": "~2.0", - "omnipay/authorizenet": "~2.0", - "omnipay/buckaroo": "~2.0", - "omnipay/cardsave": "~2.0", - "omnipay/coinbase": "~2.0", - "omnipay/common": "~2.3.0", - "omnipay/dummy": "~2.0", - "omnipay/eway": "~2.0", - "omnipay/firstdata": "~2.0", - "omnipay/gocardless": "~2.0", - "omnipay/manual": "~2.0", - "omnipay/migs": "~2.0", - "omnipay/mollie": "~3.0", - "omnipay/multisafepay": "~2.0", - "omnipay/netaxept": "~2.0", - "omnipay/netbanx": "~2.0", - "omnipay/payfast": "~2.0", - "omnipay/payflow": "~2.0", - "omnipay/paymentexpress": "~2.0", - "omnipay/paypal": "~2.0", - "omnipay/pin": "~2.0", - "omnipay/sagepay": "~2.0", - "omnipay/securepay": "~2.0", - "omnipay/stripe": "~2.0", - "omnipay/targetpay": "~2.0", - "omnipay/worldpay": "~2.0" + "url": "https://github.com/silexphp/Pimple.git", + "reference": "86406047271859ffc13424a048541f4531f53601" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/silexphp/Pimple/zipball/86406047271859ffc13424a048541f4531f53601", + "reference": "86406047271859ffc13424a048541f4531f53601", + "shasum": "" + }, + "require": { + "php": ">=7.2.5", + "psr/container": "^1.1" }, "require-dev": { - "omnipay/tests": "~2.0" + "symfony/phpunit-bridge": "^5.0" }, - "type": "metapackage", + "type": "library", "extra": { "branch-alias": { - "dev-master": "2.0.x-dev" + "dev-master": "3.4.x-dev" + } + }, + "autoload": { + "psr-0": { + "Pimple": "src/" } }, "notification-url": "https://packagist.org/downloads/", @@ -4231,1037 +4056,91 @@ ], "authors": [ { - "name": "Adrian Macneil", - "email": "adrian@adrianmacneil.com" - }, - { - "name": "Omnipay Community", - "homepage": "https://github.com/thephpleague/omnipay/graphs/contributors" + "name": "Fabien Potencier", + "email": "fabien@symfony.com" } ], - "description": "Includes Omnipay payment processing library and all officially supported gateways", - "homepage": "https://github.com/thephpleague/omnipay", + "description": "Pimple, a simple Dependency Injection Container", + "homepage": "https://pimple.symfony.com", "keywords": [ - "2checkout", - "2co", - "auth.net", - "authorize", - "authorize.net", - "buckaroo", - "cardsave", - "coinbase", - "commweb", - "dps", - "egate", - "eway", - "express", - "first data", - "firstdata", - "gateway", - "gocardless", - "ideal", - "merchant", - "migs", - "mollie", - "multisafepay", - "netaxept", - "netbanx", - "pay", - "payfast", - "payflow", - "payment", - "paymentexpress", - "paypal", - "pin", - "purchase", - "rapid", - "sagepay", - "securepay", - "stripe", - "tala", - "tala-payments", - "targetpay", - "twocheckout", - "worldpay" + "container", + "dependency injection" ], "support": { - "issues": "https://github.com/thephpleague/omnipay/issues", - "source": "https://github.com/thephpleague/omnipay/tree/master" + "source": "https://github.com/silexphp/Pimple/tree/v3.4.0" }, - "abandoned": "league/omnipay", - "time": "2014-12-10T13:55:00+00:00" + "time": "2021-03-06T08:28:00+00:00" }, { - "name": "omnipay/payfast", - "version": "v2.2", + "name": "psr/cache", + "version": "1.0.1", "source": { "type": "git", - "url": "https://github.com/thephpleague/omnipay-payfast.git", - "reference": "c3ff0de9d02c5ac1b502eefb29e6aa6f12a374d2" + "url": "https://github.com/php-fig/cache.git", + "reference": "d11b50ad223250cf17b86e38383413f5a6764bf8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/omnipay-payfast/zipball/c3ff0de9d02c5ac1b502eefb29e6aa6f12a374d2", - "reference": "c3ff0de9d02c5ac1b502eefb29e6aa6f12a374d2", + "url": "https://api.github.com/repos/php-fig/cache/zipball/d11b50ad223250cf17b86e38383413f5a6764bf8", + "reference": "d11b50ad223250cf17b86e38383413f5a6764bf8", "shasum": "" }, "require": { - "omnipay/common": "~2.0" - }, - "require-dev": { - "omnipay/tests": "~2.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.0.x-dev" - } - }, - "autoload": { - "psr-4": { - "Omnipay\\PayFast\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Adrian Macneil", - "email": "adrian@adrianmacneil.com" - }, - { - "name": "Omnipay Contributors", - "homepage": "https://github.com/thephpleague/omnipay-payfast/contributors" - } - ], - "description": "PayFast driver for the Omnipay payment processing library", - "homepage": "https://github.com/thephpleague/omnipay-payfast", - "keywords": [ - "gateway", - "merchant", - "omnipay", - "pay", - "payfast", - "payment" - ], - "support": { - "issues": "https://github.com/thephpleague/omnipay-payfast/issues", - "source": "https://github.com/thephpleague/omnipay-payfast/tree/master" - }, - "time": "2018-02-02T17:02:45+00:00" - }, - { - "name": "omnipay/payflow", - "version": "v2.3.1", - "source": { - "type": "git", - "url": "https://github.com/thephpleague/omnipay-payflow.git", - "reference": "88fb22e1203caff81e106abd4a9b77fc32bb1708" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/thephpleague/omnipay-payflow/zipball/88fb22e1203caff81e106abd4a9b77fc32bb1708", - "reference": "88fb22e1203caff81e106abd4a9b77fc32bb1708", - "shasum": "" - }, - "require": { - "omnipay/common": "~2.0" - }, - "require-dev": { - "omnipay/tests": "~2.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.0.x-dev" - } - }, - "autoload": { - "psr-4": { - "Omnipay\\Payflow\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Adrian Macneil", - "email": "adrian@adrianmacneil.com" - }, - { - "name": "Omnipay Contributors", - "homepage": "https://github.com/thephpleague/omnipay-payflow/contributors" - } - ], - "description": "Payflow driver for the Omnipay payment processing library", - "homepage": "https://github.com/thephpleague/omnipay-payflow", - "keywords": [ - "gateway", - "merchant", - "omnipay", - "pay", - "payflow", - "payment" - ], - "support": { - "issues": "https://github.com/thephpleague/omnipay-payflow/issues", - "source": "https://github.com/thephpleague/omnipay-payflow/tree/master" - }, - "time": "2018-04-11T04:19:09+00:00" - }, - { - "name": "omnipay/paymentexpress", - "version": "v2.3.0", - "source": { - "type": "git", - "url": "https://github.com/thephpleague/omnipay-paymentexpress.git", - "reference": "ffae669fa3833bfd07c111c390cf863b8db3c7d2" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/thephpleague/omnipay-paymentexpress/zipball/ffae669fa3833bfd07c111c390cf863b8db3c7d2", - "reference": "ffae669fa3833bfd07c111c390cf863b8db3c7d2", - "shasum": "" - }, - "require": { - "omnipay/common": "~2.0" - }, - "require-dev": { - "omnipay/tests": "~2.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.0.x-dev" - } - }, - "autoload": { - "psr-4": { - "Omnipay\\PaymentExpress\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Adrian Macneil", - "email": "adrian@adrianmacneil.com" - }, - { - "name": "Omnipay Contributors", - "homepage": "https://github.com/thephpleague/omnipay-paymentexpress/contributors" - } - ], - "description": "Payment Express (DPS) driver for the Omnipay payment processing library", - "homepage": "https://github.com/thephpleague/omnipay-paymentexpress", - "keywords": [ - "direct payment solutions", - "dps", - "gateway", - "merchant", - "omnipay", - "pay", - "payment", - "payment express", - "paymentexpress", - "pxaccess", - "pxpay", - "pxpost" - ], - "support": { - "issues": "https://github.com/thephpleague/omnipay-paymentexpress/issues", - "source": "https://github.com/thephpleague/omnipay-paymentexpress/tree/2.x" - }, - "time": "2020-06-05T07:06:48+00:00" - }, - { - "name": "omnipay/paypal", - "version": "v2.6.4", - "source": { - "type": "git", - "url": "https://github.com/thephpleague/omnipay-paypal.git", - "reference": "9e44c31a7038d4a23232b3739b602e8842106c4e" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/thephpleague/omnipay-paypal/zipball/9e44c31a7038d4a23232b3739b602e8842106c4e", - "reference": "9e44c31a7038d4a23232b3739b602e8842106c4e", - "shasum": "" - }, - "require": { - "omnipay/common": "~2.0" - }, - "require-dev": { - "omnipay/tests": "~2.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.3.x-dev" - } - }, - "autoload": { - "psr-4": { - "Omnipay\\PayPal\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Adrian Macneil", - "email": "adrian@adrianmacneil.com" - }, - { - "name": "Omnipay Contributors", - "homepage": "https://github.com/thephpleague/omnipay-paypal/contributors" - } - ], - "description": "PayPal gateway for Omnipay payment processing library", - "homepage": "https://github.com/thephpleague/omnipay-paypal", - "keywords": [ - "gateway", - "merchant", - "omnipay", - "pay", - "payment", - "paypal", - "purchase" - ], - "support": { - "issues": "https://github.com/thephpleague/omnipay-paypal/issues", - "source": "https://github.com/thephpleague/omnipay-paypal/tree/master" - }, - "time": "2017-11-10T08:10:43+00:00" - }, - { - "name": "omnipay/pin", - "version": "v2.2.2", - "source": { - "type": "git", - "url": "https://github.com/thephpleague/omnipay-pin.git", - "reference": "8c859bc71de8def70623eacd1b3ec6da1829a445" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/thephpleague/omnipay-pin/zipball/8c859bc71de8def70623eacd1b3ec6da1829a445", - "reference": "8c859bc71de8def70623eacd1b3ec6da1829a445", - "shasum": "" - }, - "require": { - "omnipay/common": "~2.0" - }, - "require-dev": { - "omnipay/tests": "~2.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.0.x-dev" - } - }, - "autoload": { - "psr-4": { - "Omnipay\\Pin\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Adrian Macneil", - "email": "adrian@adrianmacneil.com" - }, - { - "name": "Omnipay Contributors", - "homepage": "https://github.com/thephpleague/omnipay-pin/contributors" - } - ], - "description": "Pin Payments driver for the Omnipay payment processing library", - "homepage": "https://github.com/thephpleague/omnipay-pin", - "keywords": [ - "gateway", - "merchant", - "omnipay", - "pay", - "payment", - "pin" - ], - "support": { - "issues": "https://github.com/thephpleague/omnipay-pin/issues", - "source": "https://github.com/thephpleague/omnipay-pin/tree/master" - }, - "time": "2016-03-25T18:06:33+00:00" - }, - { - "name": "omnipay/sagepay", - "version": "2.4.1", - "source": { - "type": "git", - "url": "https://github.com/thephpleague/omnipay-sagepay.git", - "reference": "8e14e235caf6530ee9afcbbb8cd6a54ad160a0f0" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/thephpleague/omnipay-sagepay/zipball/8e14e235caf6530ee9afcbbb8cd6a54ad160a0f0", - "reference": "8e14e235caf6530ee9afcbbb8cd6a54ad160a0f0", - "shasum": "" - }, - "require": { - "omnipay/common": "~2.0" - }, - "require-dev": { - "omnipay/tests": "~2.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.0.x-dev" - } - }, - "autoload": { - "psr-4": { - "Omnipay\\SagePay\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Adrian Macneil", - "email": "adrian@adrianmacneil.com" - }, - { - "name": "Omnipay Contributors", - "homepage": "https://github.com/thephpleague/omnipay-sagepay/contributors" - } - ], - "description": "Sage Pay driver for the Omnipay PHP payment processing library", - "homepage": "https://github.com/thephpleague/omnipay-sagepay", - "keywords": [ - "gateway", - "merchant", - "omnipay", - "pay", - "payment", - "purchase", - "sage pay", - "sagepay" - ], - "support": { - "issues": "https://github.com/thephpleague/omnipay-sagepay/issues", - "source": "https://github.com/thephpleague/omnipay-sagepay/tree/master" - }, - "time": "2017-09-05T15:31:15+00:00" - }, - { - "name": "omnipay/securepay", - "version": "2.2.0", - "source": { - "type": "git", - "url": "https://github.com/thephpleague/omnipay-securepay.git", - "reference": "ac2982c4b5382e233d620bdfec345a54b0394977" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/thephpleague/omnipay-securepay/zipball/ac2982c4b5382e233d620bdfec345a54b0394977", - "reference": "ac2982c4b5382e233d620bdfec345a54b0394977", - "shasum": "" - }, - "require": { - "omnipay/common": "~2.0" - }, - "require-dev": { - "omnipay/tests": "~2.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.0.x-dev" - } - }, - "autoload": { - "psr-4": { - "Omnipay\\SecurePay\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Adrian Macneil", - "email": "adrian@adrianmacneil.com" - }, - { - "name": "Omnipay Contributors", - "homepage": "https://github.com/thephpleague/omnipay-securepay/contributors" - } - ], - "description": "SecurePay driver for the Omnipay payment processing library", - "homepage": "https://github.com/thephpleague/omnipay-securepay", - "keywords": [ - "gateway", - "merchant", - "omnipay", - "pay", - "payment", - "securepay" - ], - "support": { - "issues": "https://github.com/thephpleague/omnipay-securepay/issues", - "source": "https://github.com/thephpleague/omnipay-securepay/tree/2.2.0" - }, - "time": "2018-05-25T07:49:11+00:00" - }, - { - "name": "omnipay/stripe", - "version": "V2.4.7", - "source": { - "type": "git", - "url": "https://github.com/thephpleague/omnipay-stripe.git", - "reference": "26a33414a75939af75064022112005d5e51fc9ea" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/thephpleague/omnipay-stripe/zipball/26a33414a75939af75064022112005d5e51fc9ea", - "reference": "26a33414a75939af75064022112005d5e51fc9ea", - "shasum": "" - }, - "require": { - "omnipay/common": "~2.0" - }, - "require-dev": { - "omnipay/tests": "~2.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.0.x-dev" - } - }, - "autoload": { - "psr-4": { - "Omnipay\\Stripe\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Adrian Macneil", - "email": "adrian@adrianmacneil.com" - }, - { - "name": "Omnipay Contributors", - "homepage": "https://github.com/thephpleague/omnipay-stripe/contributors" - } - ], - "description": "Stripe driver for the Omnipay payment processing library", - "homepage": "https://github.com/thephpleague/omnipay-stripe", - "keywords": [ - "gateway", - "merchant", - "omnipay", - "pay", - "payment", - "stripe" - ], - "support": { - "issues": "https://github.com/thephpleague/omnipay-stripe/issues", - "source": "https://github.com/thephpleague/omnipay-stripe/tree/master" - }, - "time": "2017-07-14T09:22:01+00:00" - }, - { - "name": "omnipay/targetpay", - "version": "v2.2.1", - "source": { - "type": "git", - "url": "https://github.com/thephpleague/omnipay-targetpay.git", - "reference": "fc74d5d0f7929ce86298faec9e195985d7d4afe0" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/thephpleague/omnipay-targetpay/zipball/fc74d5d0f7929ce86298faec9e195985d7d4afe0", - "reference": "fc74d5d0f7929ce86298faec9e195985d7d4afe0", - "shasum": "" - }, - "require": { - "omnipay/common": "~2.0" - }, - "require-dev": { - "omnipay/tests": "~2.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.0.x-dev" - } - }, - "autoload": { - "psr-4": { - "Omnipay\\TargetPay\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Adrian Macneil", - "email": "adrian@adrianmacneil.com" - }, - { - "name": "Omnipay Contributors", - "homepage": "https://github.com/thephpleague/omnipay-targetpay/contributors" - } - ], - "description": "TargetPay driver for the Omnipay payment processing library", - "homepage": "https://github.com/thephpleague/omnipay-targetpay", - "keywords": [ - "gateway", - "merchant", - "omnipay", - "pay", - "payment", - "targetpay" - ], - "support": { - "issues": "https://github.com/thephpleague/omnipay-targetpay/issues", - "source": "https://github.com/thephpleague/omnipay-targetpay/tree/master" - }, - "time": "2014-09-17T00:38:39+00:00" - }, - { - "name": "omnipay/worldpay", - "version": "v2.2.2", - "source": { - "type": "git", - "url": "https://github.com/thephpleague/omnipay-worldpay.git", - "reference": "522fbac76b1baa65cb62192fedff227fe37a8cf0" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/thephpleague/omnipay-worldpay/zipball/522fbac76b1baa65cb62192fedff227fe37a8cf0", - "reference": "522fbac76b1baa65cb62192fedff227fe37a8cf0", - "shasum": "" - }, - "require": { - "omnipay/common": "~2.0" - }, - "require-dev": { - "omnipay/tests": "~2.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.0.x-dev" - } - }, - "autoload": { - "psr-4": { - "Omnipay\\WorldPay\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Adrian Macneil", - "email": "adrian@adrianmacneil.com" - }, - { - "name": "Omnipay Contributors", - "homepage": "https://github.com/thephpleague/omnipay-worldpay/contributors" - } - ], - "description": "WorldPay driver for the Omnipay payment processing library", - "homepage": "https://github.com/thephpleague/omnipay-worldpay", - "keywords": [ - "gateway", - "merchant", - "omnipay", - "pay", - "payment", - "worldpay" - ], - "support": { - "issues": "https://github.com/thephpleague/omnipay-worldpay/issues", - "source": "https://github.com/thephpleague/omnipay-worldpay/tree/master" - }, - "time": "2017-10-23T08:31:50+00:00" - }, - { - "name": "openclerk/country-list", - "version": "1.0.0", - "source": { - "type": "git", - "url": "https://github.com/openclerk/country-list.git", - "reference": "3e0c1714c2d90a27f88dd9128af2ac72232d83ee" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/openclerk/country-list/zipball/3e0c1714c2d90a27f88dd9128af2ac72232d83ee", - "reference": "3e0c1714c2d90a27f88dd9128af2ac72232d83ee", - "shasum": "" - }, - "require-dev": { - "umpirsky/country-list": "dev-master" - }, - "type": "library", - "notification-url": "https://packagist.org/downloads/", - "description": "List of all countries with names and ISO 3166-1 codes in many languages and data formats", - "support": { - "issues": "https://github.com/openclerk/country-list/issues", - "source": "https://github.com/openclerk/country-list/tree/master" - }, - "time": "2015-02-20T02:09:35+00:00" - }, - { - "name": "paragonie/constant_time_encoding", - "version": "v2.4.0", - "source": { - "type": "git", - "url": "https://github.com/paragonie/constant_time_encoding.git", - "reference": "f34c2b11eb9d2c9318e13540a1dbc2a3afbd939c" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/paragonie/constant_time_encoding/zipball/f34c2b11eb9d2c9318e13540a1dbc2a3afbd939c", - "reference": "f34c2b11eb9d2c9318e13540a1dbc2a3afbd939c", - "shasum": "" - }, - "require": { - "php": "^7|^8" - }, - "require-dev": { - "phpunit/phpunit": "^6|^7|^8|^9", - "vimeo/psalm": "^1|^2|^3|^4" - }, - "type": "library", - "autoload": { - "psr-4": { - "ParagonIE\\ConstantTime\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Paragon Initiative Enterprises", - "email": "security@paragonie.com", - "homepage": "https://paragonie.com", - "role": "Maintainer" - }, - { - "name": "Steve 'Sc00bz' Thomas", - "email": "steve@tobtu.com", - "homepage": "https://www.tobtu.com", - "role": "Original Developer" - } - ], - "description": "Constant-time Implementations of RFC 4648 Encoding (Base-64, Base-32, Base-16)", - "keywords": [ - "base16", - "base32", - "base32_decode", - "base32_encode", - "base64", - "base64_decode", - "base64_encode", - "bin2hex", - "encoding", - "hex", - "hex2bin", - "rfc4648" - ], - "support": { - "email": "info@paragonie.com", - "issues": "https://github.com/paragonie/constant_time_encoding/issues", - "source": "https://github.com/paragonie/constant_time_encoding" - }, - "time": "2020-12-06T15:14:20+00:00" - }, - { - "name": "paypal/adaptivepayments-sdk-php", - "version": "v3.9.2", - "source": { - "type": "git", - "url": "https://github.com/paypal/adaptivepayments-sdk-php.git", - "reference": "9fd8af48a7134f296552efd192023055b80f3cd2" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/paypal/adaptivepayments-sdk-php/zipball/9fd8af48a7134f296552efd192023055b80f3cd2", - "reference": "9fd8af48a7134f296552efd192023055b80f3cd2", - "shasum": "" - }, - "require": { - "ext-curl": "*", - "paypal/sdk-core-php": "3.*", - "php": ">=5.3.0" - }, - "type": "library", - "autoload": { - "psr-0": { - "PayPal\\Service": "lib/", - "PayPal\\Types": "lib/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "Apache2" - ], - "authors": [ - { - "name": "PayPal", - "homepage": "https://github.com/paypal/adaptivepayments-sdk-php/contributors" - } - ], - "description": "PayPal adaptivepayments SDK for PHP", - "homepage": "https://developer.paypal.com", - "keywords": [ - "paypal", - "php", - "sdk" - ], - "support": { - "issues": "https://github.com/paypal/adaptivepayments-sdk-php/issues", - "source": "https://github.com/paypal/adaptivepayments-sdk-php/tree/stable-php5.3" - }, - "abandoned": true, - "time": "2016-04-08T16:14:06+00:00" - }, - { - "name": "paypal/merchant-sdk-php", - "version": "v3.12.0", - "source": { - "type": "git", - "url": "https://github.com/paypal/merchant-sdk-php.git", - "reference": "f21fe42ad787f98ea5d7186b19e8bec97f1852ed" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/paypal/merchant-sdk-php/zipball/f21fe42ad787f98ea5d7186b19e8bec97f1852ed", - "reference": "f21fe42ad787f98ea5d7186b19e8bec97f1852ed", - "shasum": "" - }, - "require": { - "ext-curl": "*", - "paypal/sdk-core-php": "3.*", - "php": ">=5.3.0" - }, - "type": "library", - "autoload": { - "psr-0": { - "PayPal\\Service": "lib/", - "PayPal\\CoreComponentTypes": "lib/", - "PayPal\\EBLBaseComponents": "lib/", - "PayPal\\EnhancedDataTypes": "lib/", - "PayPal\\PayPalAPI": "lib/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "Apache-2.0" - ], - "authors": [ - { - "name": "PayPal", - "homepage": "https://github.com/paypal/merchant-sdk-php/contributors" - } - ], - "description": "PayPal Merchant SDK for PHP", - "homepage": "https://developer.paypal.com", - "keywords": [ - "paypal", - "php", - "sdk" - ], - "support": { - "issues": "https://github.com/paypal/merchant-sdk-php/issues", - "source": "https://github.com/paypal/merchant-sdk-php/tree/master" - }, - "time": "2017-10-10T19:03:05+00:00" - }, - { - "name": "paypal/sdk-core-php", - "version": "3.4.0", - "source": { - "type": "git", - "url": "https://github.com/paypal/sdk-core-php.git", - "reference": "d2174f69f9811a8f2e79af7498fdf89586457d76" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/paypal/sdk-core-php/zipball/d2174f69f9811a8f2e79af7498fdf89586457d76", - "reference": "d2174f69f9811a8f2e79af7498fdf89586457d76", - "shasum": "" - }, - "require": { - "ext-curl": "*", - "php": ">=5.3.0" - }, - "require-dev": { - "phpunit/phpunit": "3.7.*" + "php": ">=5.3.0" }, "type": "library", - "autoload": { - "psr-0": { - "PayPal": "lib/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "Apache-2.0" - ], - "authors": [ - { - "name": "PayPal", - "homepage": "https://github.com/paypal/sdk-core-php/contributors" + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" } - ], - "description": "PayPal Core SDK for PHP", - "homepage": "https://github.com/paypal/sdk-core-php", - "keywords": [ - "paypal", - "php", - "sdk" - ], - "support": { - "issues": "https://github.com/paypal/sdk-core-php/issues", - "source": "https://github.com/paypal/sdk-core-php/tree/master" - }, - "abandoned": true, - "time": "2017-11-13T18:53:13+00:00" - }, - { - "name": "phpmailer/phpmailer", - "version": "v6.5.0", - "source": { - "type": "git", - "url": "https://github.com/PHPMailer/PHPMailer.git", - "reference": "a5b5c43e50b7fba655f793ad27303cd74c57363c" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/PHPMailer/PHPMailer/zipball/a5b5c43e50b7fba655f793ad27303cd74c57363c", - "reference": "a5b5c43e50b7fba655f793ad27303cd74c57363c", - "shasum": "" - }, - "require": { - "ext-ctype": "*", - "ext-filter": "*", - "ext-hash": "*", - "php": ">=5.5.0" - }, - "require-dev": { - "dealerdirect/phpcodesniffer-composer-installer": "^0.7.0", - "doctrine/annotations": "^1.2", - "phpcompatibility/php-compatibility": "^9.3.5", - "roave/security-advisories": "dev-latest", - "squizlabs/php_codesniffer": "^3.5.6", - "yoast/phpunit-polyfills": "^0.2.0" - }, - "suggest": { - "ext-mbstring": "Needed to send email in multibyte encoding charset or decode encoded addresses", - "hayageek/oauth2-yahoo": "Needed for Yahoo XOAUTH2 authentication", - "league/oauth2-google": "Needed for Google XOAUTH2 authentication", - "psr/log": "For optional PSR-3 debug logging", - "stevenmaguire/oauth2-microsoft": "Needed for Microsoft XOAUTH2 authentication", - "symfony/polyfill-mbstring": "To support UTF-8 if the Mbstring PHP extension is not enabled (^1.2)" }, - "type": "library", "autoload": { "psr-4": { - "PHPMailer\\PHPMailer\\": "src/" + "Psr\\Cache\\": "src/" } }, "notification-url": "https://packagist.org/downloads/", "license": [ - "LGPL-2.1-only" + "MIT" ], "authors": [ { - "name": "Marcus Bointon", - "email": "phpmailer@synchromedia.co.uk" - }, - { - "name": "Jim Jagielski", - "email": "jimjag@gmail.com" - }, - { - "name": "Andy Prevost", - "email": "codeworxtech@users.sourceforge.net" - }, - { - "name": "Brent R. Matzelle" + "name": "PHP-FIG", + "homepage": "http://www.php-fig.org/" } ], - "description": "PHPMailer is a full-featured email creation and transfer class for PHP", + "description": "Common interface for caching libraries", + "keywords": [ + "cache", + "psr", + "psr-6" + ], "support": { - "issues": "https://github.com/PHPMailer/PHPMailer/issues", - "source": "https://github.com/PHPMailer/PHPMailer/tree/v6.5.0" + "source": "https://github.com/php-fig/cache/tree/master" }, - "funding": [ - { - "url": "https://github.com/Synchro", - "type": "github" - } - ], - "time": "2021-06-16T14:33:43+00:00" + "time": "2016-08-06T20:24:11+00:00" }, { - "name": "pimple/pimple", - "version": "v3.4.0", + "name": "psr/container", + "version": "1.1.1", "source": { "type": "git", - "url": "https://github.com/silexphp/Pimple.git", - "reference": "86406047271859ffc13424a048541f4531f53601" + "url": "https://github.com/php-fig/container.git", + "reference": "8622567409010282b7aeebe4bb841fe98b58dcaf" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/silexphp/Pimple/zipball/86406047271859ffc13424a048541f4531f53601", - "reference": "86406047271859ffc13424a048541f4531f53601", + "url": "https://api.github.com/repos/php-fig/container/zipball/8622567409010282b7aeebe4bb841fe98b58dcaf", + "reference": "8622567409010282b7aeebe4bb841fe98b58dcaf", "shasum": "" }, "require": { - "php": ">=7.2.5", - "psr/container": "^1.1" - }, - "require-dev": { - "symfony/phpunit-bridge": "^5.0" + "php": ">=7.2.0" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.4.x-dev" - } - }, "autoload": { - "psr-0": { - "Pimple": "src/" + "psr-4": { + "Psr\\Container\\": "src/" } }, "notification-url": "https://packagist.org/downloads/", @@ -5270,37 +4149,42 @@ ], "authors": [ { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" + "name": "PHP-FIG", + "homepage": "https://www.php-fig.org/" } ], - "description": "Pimple, a simple Dependency Injection Container", - "homepage": "https://pimple.symfony.com", + "description": "Common Container Interface (PHP FIG PSR-11)", + "homepage": "https://github.com/php-fig/container", "keywords": [ + "PSR-11", "container", - "dependency injection" + "container-interface", + "container-interop", + "psr" ], "support": { - "source": "https://github.com/silexphp/Pimple/tree/v3.4.0" + "issues": "https://github.com/php-fig/container/issues", + "source": "https://github.com/php-fig/container/tree/1.1.1" }, - "time": "2021-03-06T08:28:00+00:00" + "time": "2021-03-05T17:36:06+00:00" }, { - "name": "psr/cache", + "name": "psr/http-client", "version": "1.0.1", "source": { "type": "git", - "url": "https://github.com/php-fig/cache.git", - "reference": "d11b50ad223250cf17b86e38383413f5a6764bf8" + "url": "https://github.com/php-fig/http-client.git", + "reference": "2dfb5f6c5eff0e91e20e913f8c5452ed95b86621" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/cache/zipball/d11b50ad223250cf17b86e38383413f5a6764bf8", - "reference": "d11b50ad223250cf17b86e38383413f5a6764bf8", + "url": "https://api.github.com/repos/php-fig/http-client/zipball/2dfb5f6c5eff0e91e20e913f8c5452ed95b86621", + "reference": "2dfb5f6c5eff0e91e20e913f8c5452ed95b86621", "shasum": "" }, "require": { - "php": ">=5.3.0" + "php": "^7.0 || ^8.0", + "psr/http-message": "^1.0" }, "type": "library", "extra": { @@ -5310,7 +4194,7 @@ }, "autoload": { "psr-4": { - "Psr\\Cache\\": "src/" + "Psr\\Http\\Client\\": "src/" } }, "notification-url": "https://packagist.org/downloads/", @@ -5323,64 +4207,18 @@ "homepage": "http://www.php-fig.org/" } ], - "description": "Common interface for caching libraries", + "description": "Common interface for HTTP clients", + "homepage": "https://github.com/php-fig/http-client", "keywords": [ - "cache", + "http", + "http-client", "psr", - "psr-6" - ], - "support": { - "source": "https://github.com/php-fig/cache/tree/master" - }, - "time": "2016-08-06T20:24:11+00:00" - }, - { - "name": "psr/container", - "version": "1.1.1", - "source": { - "type": "git", - "url": "https://github.com/php-fig/container.git", - "reference": "8622567409010282b7aeebe4bb841fe98b58dcaf" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/php-fig/container/zipball/8622567409010282b7aeebe4bb841fe98b58dcaf", - "reference": "8622567409010282b7aeebe4bb841fe98b58dcaf", - "shasum": "" - }, - "require": { - "php": ">=7.2.0" - }, - "type": "library", - "autoload": { - "psr-4": { - "Psr\\Container\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "PHP-FIG", - "homepage": "https://www.php-fig.org/" - } - ], - "description": "Common Container Interface (PHP FIG PSR-11)", - "homepage": "https://github.com/php-fig/container", - "keywords": [ - "PSR-11", - "container", - "container-interface", - "container-interop", - "psr" + "psr-18" ], "support": { - "issues": "https://github.com/php-fig/container/issues", - "source": "https://github.com/php-fig/container/tree/1.1.1" + "source": "https://github.com/php-fig/http-client/tree/master" }, - "time": "2021-03-05T17:36:06+00:00" + "time": "2020-06-29T06:28:15+00:00" }, { "name": "psr/http-factory", @@ -6012,16 +4850,16 @@ }, { "name": "react/socket", - "version": "v1.8.0", + "version": "v1.9.0", "source": { "type": "git", "url": "https://github.com/reactphp/socket.git", - "reference": "92fb72d8e58fff94da84ea86ebda26788ddd672f" + "reference": "aa6e3f8ebcd6dec3ad1ee92a449b4cc341994001" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/reactphp/socket/zipball/92fb72d8e58fff94da84ea86ebda26788ddd672f", - "reference": "92fb72d8e58fff94da84ea86ebda26788ddd672f", + "url": "https://api.github.com/repos/reactphp/socket/zipball/aa6e3f8ebcd6dec3ad1ee92a449b4cc341994001", + "reference": "aa6e3f8ebcd6dec3ad1ee92a449b4cc341994001", "shasum": "" }, "require": { @@ -6080,7 +4918,7 @@ ], "support": { "issues": "https://github.com/reactphp/socket/issues", - "source": "https://github.com/reactphp/socket/tree/v1.8.0" + "source": "https://github.com/reactphp/socket/tree/v1.9.0" }, "funding": [ { @@ -6092,7 +4930,7 @@ "type": "github" } ], - "time": "2021-07-11T12:50:07+00:00" + "time": "2021-08-03T12:37:06+00:00" }, { "name": "react/stream", @@ -6346,16 +5184,16 @@ }, { "name": "setasign/fpdf", - "version": "1.8.3", + "version": "1.8.4", "source": { "type": "git", "url": "https://github.com/Setasign/FPDF.git", - "reference": "6a83253ece0df1c5b6c05fe7a900c660ae38afc3" + "reference": "b0ddd9c5b98ced8230ef38534f6f3c17308a7974" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Setasign/FPDF/zipball/6a83253ece0df1c5b6c05fe7a900c660ae38afc3", - "reference": "6a83253ece0df1c5b6c05fe7a900c660ae38afc3", + "url": "https://api.github.com/repos/Setasign/FPDF/zipball/b0ddd9c5b98ced8230ef38534f6f3c17308a7974", + "reference": "b0ddd9c5b98ced8230ef38534f6f3c17308a7974", "shasum": "" }, "require": { @@ -6386,9 +5224,9 @@ "pdf" ], "support": { - "source": "https://github.com/Setasign/FPDF/tree/1.8.3" + "source": "https://github.com/Setasign/FPDF/tree/1.8.4" }, - "time": "2021-04-20T09:49:57+00:00" + "time": "2021-08-30T07:50:06+00:00" }, { "name": "snowplow/referer-parser", @@ -6493,41 +5331,121 @@ "time": "2020-03-22T16:23:26+00:00" }, { - "name": "symfony/asset", - "version": "v3.0.9", + "name": "symfony/cache", + "version": "v4.3.11", "source": { "type": "git", - "url": "https://github.com/symfony/asset.git", - "reference": "f844899f663285ce819c041237777140e0c061c3" + "url": "https://github.com/symfony/cache.git", + "reference": "8794ccf68ac341fc19311919d2287f7557bfccba" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/asset/zipball/f844899f663285ce819c041237777140e0c061c3", - "reference": "f844899f663285ce819c041237777140e0c061c3", + "url": "https://api.github.com/repos/symfony/cache/zipball/8794ccf68ac341fc19311919d2287f7557bfccba", + "reference": "8794ccf68ac341fc19311919d2287f7557bfccba", "shasum": "" }, "require": { - "php": ">=5.5.9" + "php": "^7.1.3", + "psr/cache": "~1.0", + "psr/log": "~1.0", + "symfony/cache-contracts": "^1.1", + "symfony/service-contracts": "^1.1", + "symfony/var-exporter": "^4.2" + }, + "conflict": { + "doctrine/dbal": "<2.5", + "symfony/dependency-injection": "<3.4", + "symfony/var-dumper": "<3.4" + }, + "provide": { + "psr/cache-implementation": "1.0", + "psr/simple-cache-implementation": "1.0", + "symfony/cache-implementation": "1.0" }, "require-dev": { - "symfony/http-foundation": "~2.8|~3.0" + "cache/integration-tests": "dev-master", + "doctrine/cache": "~1.6", + "doctrine/dbal": "~2.5", + "predis/predis": "~1.1", + "psr/simple-cache": "^1.0", + "symfony/config": "~4.2", + "symfony/dependency-injection": "~3.4|~4.1", + "symfony/var-dumper": "^4.1.1" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "4.3-dev" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Component\\Cache\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony Cache component with PSR-6, PSR-16, and tags", + "homepage": "https://symfony.com", + "keywords": [ + "caching", + "psr6" + ], + "support": { + "source": "https://github.com/symfony/cache/tree/v4.3.11" + }, + "time": "2020-01-27T09:15:09+00:00" + }, + { + "name": "symfony/cache-contracts", + "version": "v1.1.10", + "source": { + "type": "git", + "url": "https://github.com/symfony/cache-contracts.git", + "reference": "8d5489c10ef90aa7413e4921fc3c0520e24cbed7" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/cache-contracts/zipball/8d5489c10ef90aa7413e4921fc3c0520e24cbed7", + "reference": "8d5489c10ef90aa7413e4921fc3c0520e24cbed7", + "shasum": "" + }, + "require": { + "php": ">=7.1.3", + "psr/cache": "^1.0" }, "suggest": { - "symfony/http-foundation": "" + "symfony/cache-implementation": "" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "3.0-dev" + "dev-master": "1.1-dev" + }, + "thanks": { + "name": "symfony/contracts", + "url": "https://github.com/symfony/contracts" } }, "autoload": { "psr-4": { - "Symfony\\Component\\Asset\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] + "Symfony\\Contracts\\Cache\\": "" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -6535,48 +5453,68 @@ ], "authors": [ { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" + "name": "Nicolas Grekas", + "email": "p@tchwork.com" }, { "name": "Symfony Community", "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony Asset Component", + "description": "Generic abstractions related to caching", "homepage": "https://symfony.com", + "keywords": [ + "abstractions", + "contracts", + "decoupling", + "interfaces", + "interoperability", + "standards" + ], "support": { - "source": "https://github.com/symfony/asset/tree/3.0" + "source": "https://github.com/symfony/cache-contracts/tree/v1.1.10" }, - "time": "2016-07-01T15:14:41+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-09-02T16:08:58+00:00" }, { "name": "symfony/class-loader", - "version": "v2.8.30", + "version": "v3.4.47", "source": { "type": "git", "url": "https://github.com/symfony/class-loader.git", - "reference": "5d7aa644f5c5c7828f97d2d2f4957d2a7ad3ab17" + "reference": "a22265a9f3511c0212bf79f54910ca5a77c0e92c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/class-loader/zipball/5d7aa644f5c5c7828f97d2d2f4957d2a7ad3ab17", - "reference": "5d7aa644f5c5c7828f97d2d2f4957d2a7ad3ab17", + "url": "https://api.github.com/repos/symfony/class-loader/zipball/a22265a9f3511c0212bf79f54910ca5a77c0e92c", + "reference": "a22265a9f3511c0212bf79f54910ca5a77c0e92c", "shasum": "" }, "require": { - "php": ">=5.3.9", - "symfony/polyfill-apcu": "~1.1" + "php": "^5.5.9|>=7.0.8" }, "require-dev": { - "symfony/finder": "^2.0.5|~3.0.0" + "symfony/finder": "~2.8|~3.0|~4.0", + "symfony/polyfill-apcu": "~1.1" }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.8-dev" - } + "suggest": { + "symfony/polyfill-apcu": "For using ApcClassLoader on HHVM" }, + "type": "library", "autoload": { "psr-4": { "Symfony\\Component\\ClassLoader\\": "" @@ -6602,40 +5540,57 @@ "description": "Symfony ClassLoader Component", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/class-loader/tree/2.8" + "source": "https://github.com/symfony/class-loader/tree/v3.4.47" }, - "time": "2017-11-05T15:25:56+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-10-24T10:57:07+00:00" }, { "name": "symfony/config", - "version": "v2.8.30", + "version": "v3.4.47", "source": { "type": "git", "url": "https://github.com/symfony/config.git", - "reference": "f4f3f1d7090c464434bbbc3e8aa2b41149c59196" + "reference": "bc6b3fd3930d4b53a60b42fe2ed6fc466b75f03f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/config/zipball/f4f3f1d7090c464434bbbc3e8aa2b41149c59196", - "reference": "f4f3f1d7090c464434bbbc3e8aa2b41149c59196", + "url": "https://api.github.com/repos/symfony/config/zipball/bc6b3fd3930d4b53a60b42fe2ed6fc466b75f03f", + "reference": "bc6b3fd3930d4b53a60b42fe2ed6fc466b75f03f", "shasum": "" }, "require": { - "php": ">=5.3.9", - "symfony/filesystem": "~2.3|~3.0.0" + "php": "^5.5.9|>=7.0.8", + "symfony/filesystem": "~2.8|~3.0|~4.0", + "symfony/polyfill-ctype": "~1.8" + }, + "conflict": { + "symfony/dependency-injection": "<3.3", + "symfony/finder": "<3.3" }, "require-dev": { - "symfony/yaml": "~2.7|~3.0.0" + "symfony/dependency-injection": "~3.3|~4.0", + "symfony/event-dispatcher": "~3.3|~4.0", + "symfony/finder": "~3.3|~4.0", + "symfony/yaml": "~3.0|~4.0" }, "suggest": { "symfony/yaml": "To use the yaml reference dumper" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.8-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\Config\\": "" @@ -6661,45 +5616,65 @@ "description": "Symfony Config Component", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/config/tree/2.8" + "source": "https://github.com/symfony/config/tree/v3.4.47" }, - "time": "2017-11-07T11:56:23+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-10-24T10:57:07+00:00" }, { "name": "symfony/console", - "version": "v2.8.30", + "version": "v3.4.47", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "3eeaec6a5d9a253925139cd19eda07d882635d87" + "reference": "a10b1da6fc93080c180bba7219b5ff5b7518fe81" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/3eeaec6a5d9a253925139cd19eda07d882635d87", - "reference": "3eeaec6a5d9a253925139cd19eda07d882635d87", + "url": "https://api.github.com/repos/symfony/console/zipball/a10b1da6fc93080c180bba7219b5ff5b7518fe81", + "reference": "a10b1da6fc93080c180bba7219b5ff5b7518fe81", "shasum": "" }, "require": { - "php": ">=5.3.9", - "symfony/debug": "^2.7.2|~3.0.0", + "php": "^5.5.9|>=7.0.8", + "symfony/debug": "~2.8|~3.0|~4.0", "symfony/polyfill-mbstring": "~1.0" }, + "conflict": { + "symfony/dependency-injection": "<3.4", + "symfony/process": "<3.3" + }, + "provide": { + "psr/log-implementation": "1.0" + }, "require-dev": { "psr/log": "~1.0", - "symfony/event-dispatcher": "~2.1|~3.0.0", - "symfony/process": "~2.1|~3.0.0" + "symfony/config": "~3.3|~4.0", + "symfony/dependency-injection": "~3.4|~4.0", + "symfony/event-dispatcher": "~2.8|~3.0|~4.0", + "symfony/lock": "~3.4|~4.0", + "symfony/process": "~3.3|~4.0" }, "suggest": { "psr/log": "For using the console logger", "symfony/event-dispatcher": "", + "symfony/lock": "", "symfony/process": "" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.8-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\Console\\": "" @@ -6725,33 +5700,42 @@ "description": "Symfony Console Component", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/console/tree/2.8" + "source": "https://github.com/symfony/console/tree/v3.4.47" }, - "time": "2017-11-12T16:36:54+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-10-24T10:57:07+00:00" }, { "name": "symfony/css-selector", - "version": "v2.8.30", + "version": "v3.4.47", "source": { "type": "git", "url": "https://github.com/symfony/css-selector.git", - "reference": "b7b041487197fb6d803b7edbcaae7f00a793b1c4" + "reference": "da3d9da2ce0026771f5fe64cb332158f1bd2bc33" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/css-selector/zipball/b7b041487197fb6d803b7edbcaae7f00a793b1c4", - "reference": "b7b041487197fb6d803b7edbcaae7f00a793b1c4", + "url": "https://api.github.com/repos/symfony/css-selector/zipball/da3d9da2ce0026771f5fe64cb332158f1bd2bc33", + "reference": "da3d9da2ce0026771f5fe64cb332158f1bd2bc33", "shasum": "" }, "require": { - "php": ">=5.3.9" + "php": "^5.5.9|>=7.0.8" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.8-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\CssSelector\\": "" @@ -6765,14 +5749,14 @@ "MIT" ], "authors": [ - { - "name": "Jean-François Simon", - "email": "jeanfrancois.simon@sensiolabs.com" - }, { "name": "Fabien Potencier", "email": "fabien@symfony.com" }, + { + "name": "Jean-François Simon", + "email": "jeanfrancois.simon@sensiolabs.com" + }, { "name": "Symfony Community", "homepage": "https://symfony.com/contributors" @@ -6781,41 +5765,49 @@ "description": "Symfony CssSelector Component", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/css-selector/tree/2.8" + "source": "https://github.com/symfony/css-selector/tree/v3.4.47" }, - "time": "2017-11-05T15:25:56+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-10-24T10:57:07+00:00" }, { "name": "symfony/debug", - "version": "v2.8.30", + "version": "v3.4.47", "source": { "type": "git", "url": "https://github.com/symfony/debug.git", - "reference": "a0a29e9867debabdace779a20a9385c623a23bbd" + "reference": "ab42889de57fdfcfcc0759ab102e2fd4ea72dcae" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/debug/zipball/a0a29e9867debabdace779a20a9385c623a23bbd", - "reference": "a0a29e9867debabdace779a20a9385c623a23bbd", + "url": "https://api.github.com/repos/symfony/debug/zipball/ab42889de57fdfcfcc0759ab102e2fd4ea72dcae", + "reference": "ab42889de57fdfcfcc0759ab102e2fd4ea72dcae", "shasum": "" }, "require": { - "php": ">=5.3.9", + "php": "^5.5.9|>=7.0.8", "psr/log": "~1.0" }, "conflict": { "symfony/http-kernel": ">=2.3,<2.3.24|~2.4.0|>=2.5,<2.5.9|>=2.6,<2.6.2" }, "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" + "symfony/http-kernel": "~2.8|~3.0|~4.0" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.8-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\Debug\\": "" @@ -6841,50 +5833,203 @@ "description": "Symfony Debug Component", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/debug/tree/2.8" + "source": "https://github.com/symfony/debug/tree/v3.4.47" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-10-24T10:57:07+00:00" + }, + { + "name": "symfony/dependency-injection", + "version": "v3.4.47", + "source": { + "type": "git", + "url": "https://github.com/symfony/dependency-injection.git", + "reference": "51d2a2708c6ceadad84393f8581df1dcf9e5e84b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/51d2a2708c6ceadad84393f8581df1dcf9e5e84b", + "reference": "51d2a2708c6ceadad84393f8581df1dcf9e5e84b", + "shasum": "" + }, + "require": { + "php": "^5.5.9|>=7.0.8", + "psr/container": "^1.0" + }, + "conflict": { + "symfony/config": "<3.3.7", + "symfony/finder": "<3.3", + "symfony/proxy-manager-bridge": "<3.4", + "symfony/yaml": "<3.4" + }, + "provide": { + "psr/container-implementation": "1.0" + }, + "require-dev": { + "symfony/config": "~3.3|~4.0", + "symfony/expression-language": "~2.8|~3.0|~4.0", + "symfony/yaml": "~3.4|~4.0" + }, + "suggest": { + "symfony/config": "", + "symfony/expression-language": "For using expressions in service container configuration", + "symfony/finder": "For using double-star glob patterns or when GLOB_BRACE portability is required", + "symfony/proxy-manager-bridge": "Generate service proxies to lazy load them", + "symfony/yaml": "" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\DependencyInjection\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony DependencyInjection Component", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/dependency-injection/tree/v3.4.47" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-10-24T10:57:07+00:00" + }, + { + "name": "symfony/deprecation-contracts", + "version": "v2.4.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/deprecation-contracts.git", + "reference": "5f38c8804a9e97d23e0c8d63341088cd8a22d627" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/5f38c8804a9e97d23e0c8d63341088cd8a22d627", + "reference": "5f38c8804a9e97d23e0c8d63341088cd8a22d627", + "shasum": "" + }, + "require": { + "php": ">=7.1" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "2.4-dev" + }, + "thanks": { + "name": "symfony/contracts", + "url": "https://github.com/symfony/contracts" + } + }, + "autoload": { + "files": [ + "function.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": "A generic function and convention to trigger deprecation notices", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/deprecation-contracts/tree/v2.4.0" }, - "time": "2017-10-24T13:48:52+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2021-03-23T23:28:01+00:00" }, { - "name": "symfony/dependency-injection", - "version": "v2.8.30", + "name": "symfony/dom-crawler", + "version": "v3.4.47", "source": { "type": "git", - "url": "https://github.com/symfony/dependency-injection.git", - "reference": "bc845111480786a9a68b39578ecdf27d9a6a44ec" + "url": "https://github.com/symfony/dom-crawler.git", + "reference": "ef97bcfbae5b384b4ca6c8d57b617722f15241a6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/bc845111480786a9a68b39578ecdf27d9a6a44ec", - "reference": "bc845111480786a9a68b39578ecdf27d9a6a44ec", + "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/ef97bcfbae5b384b4ca6c8d57b617722f15241a6", + "reference": "ef97bcfbae5b384b4ca6c8d57b617722f15241a6", "shasum": "" }, "require": { - "php": ">=5.3.9" - }, - "conflict": { - "symfony/expression-language": "<2.6" + "php": "^5.5.9|>=7.0.8", + "symfony/polyfill-ctype": "~1.8", + "symfony/polyfill-mbstring": "~1.0" }, "require-dev": { - "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" + "symfony/css-selector": "~2.8|~3.0|~4.0" }, "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": "" + "symfony/css-selector": "" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.8-dev" - } - }, "autoload": { "psr-4": { - "Symfony\\Component\\DependencyInjection\\": "" + "Symfony\\Component\\DomCrawler\\": "" }, "exclude-from-classmap": [ "/Tests/" @@ -6904,46 +6049,71 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony DependencyInjection Component", + "description": "Symfony DomCrawler Component", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/dependency-injection/tree/2.8" + "source": "https://github.com/symfony/dom-crawler/tree/v3.4.47" }, - "time": "2017-11-07T14:08:47+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-10-24T10:57:07+00:00" }, { - "name": "symfony/dom-crawler", - "version": "v2.8.30", + "name": "symfony/event-dispatcher", + "version": "v4.4.30", "source": { "type": "git", - "url": "https://github.com/symfony/dom-crawler.git", - "reference": "eeb78092b5cc95b9e37017887da0e39f1530b8a8" + "url": "https://github.com/symfony/event-dispatcher.git", + "reference": "2fe81680070043c4c80e7cedceb797e34f377bac" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/eeb78092b5cc95b9e37017887da0e39f1530b8a8", - "reference": "eeb78092b5cc95b9e37017887da0e39f1530b8a8", + "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/2fe81680070043c4c80e7cedceb797e34f377bac", + "reference": "2fe81680070043c4c80e7cedceb797e34f377bac", "shasum": "" }, "require": { - "php": ">=5.3.9", - "symfony/polyfill-mbstring": "~1.0" + "php": ">=7.1.3", + "symfony/event-dispatcher-contracts": "^1.1", + "symfony/polyfill-php80": "^1.16" + }, + "conflict": { + "symfony/dependency-injection": "<3.4" + }, + "provide": { + "psr/event-dispatcher-implementation": "1.0", + "symfony/event-dispatcher-implementation": "1.1" }, "require-dev": { - "symfony/css-selector": "~2.8|~3.0.0" + "psr/log": "^1|^2|^3", + "symfony/config": "^3.4|^4.0|^5.0", + "symfony/dependency-injection": "^3.4|^4.0|^5.0", + "symfony/error-handler": "~3.4|~4.4", + "symfony/expression-language": "^3.4|^4.0|^5.0", + "symfony/http-foundation": "^3.4|^4.0|^5.0", + "symfony/service-contracts": "^1.1|^2", + "symfony/stopwatch": "^3.4|^4.0|^5.0" }, "suggest": { - "symfony/css-selector": "" + "symfony/dependency-injection": "", + "symfony/http-kernel": "" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.8-dev" - } - }, "autoload": { "psr-4": { - "Symfony\\Component\\DomCrawler\\": "" + "Symfony\\Component\\EventDispatcher\\": "" }, "exclude-from-classmap": [ "/Tests/" @@ -6963,54 +6133,62 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony DomCrawler Component", + "description": "Provides tools that allow your application components to communicate with each other by dispatching events and listening to them", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/dom-crawler/tree/2.8" + "source": "https://github.com/symfony/event-dispatcher/tree/v4.4.30" }, - "time": "2017-11-05T15:25:56+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2021-08-04T20:31:23+00:00" }, { - "name": "symfony/event-dispatcher", - "version": "v3.0.9", + "name": "symfony/event-dispatcher-contracts", + "version": "v1.1.9", "source": { "type": "git", - "url": "https://github.com/symfony/event-dispatcher.git", - "reference": "54da3ff63dec3c9c0e32ec3f95a7d94ef64baa00" + "url": "https://github.com/symfony/event-dispatcher-contracts.git", + "reference": "84e23fdcd2517bf37aecbd16967e83f0caee25a7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/54da3ff63dec3c9c0e32ec3f95a7d94ef64baa00", - "reference": "54da3ff63dec3c9c0e32ec3f95a7d94ef64baa00", + "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/84e23fdcd2517bf37aecbd16967e83f0caee25a7", + "reference": "84e23fdcd2517bf37aecbd16967e83f0caee25a7", "shasum": "" }, "require": { - "php": ">=5.5.9" - }, - "require-dev": { - "psr/log": "~1.0", - "symfony/config": "~2.8|~3.0", - "symfony/dependency-injection": "~2.8|~3.0", - "symfony/expression-language": "~2.8|~3.0", - "symfony/stopwatch": "~2.8|~3.0" + "php": ">=7.1.3" }, "suggest": { - "symfony/dependency-injection": "", - "symfony/http-kernel": "" + "psr/event-dispatcher": "", + "symfony/event-dispatcher-implementation": "" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "3.0-dev" + "dev-master": "1.1-dev" + }, + "thanks": { + "name": "symfony/contracts", + "url": "https://github.com/symfony/contracts" } }, "autoload": { "psr-4": { - "Symfony\\Component\\EventDispatcher\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] + "Symfony\\Contracts\\EventDispatcher\\": "" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -7018,44 +6196,63 @@ ], "authors": [ { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" + "name": "Nicolas Grekas", + "email": "p@tchwork.com" }, { "name": "Symfony Community", "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony EventDispatcher Component", + "description": "Generic abstractions related to dispatching event", "homepage": "https://symfony.com", + "keywords": [ + "abstractions", + "contracts", + "decoupling", + "interfaces", + "interoperability", + "standards" + ], "support": { - "source": "https://github.com/symfony/event-dispatcher/tree/3.0" + "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v1.1.9" }, - "time": "2016-07-19T10:44:15+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-07-06T13:19:58+00:00" }, { "name": "symfony/filesystem", - "version": "v3.0.9", + "version": "v4.4.27", "source": { "type": "git", "url": "https://github.com/symfony/filesystem.git", - "reference": "b2da5009d9bacbd91d83486aa1f44c793a8c380d" + "reference": "517fb795794faf29086a77d99eb8f35e457837a7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/filesystem/zipball/b2da5009d9bacbd91d83486aa1f44c793a8c380d", - "reference": "b2da5009d9bacbd91d83486aa1f44c793a8c380d", + "url": "https://api.github.com/repos/symfony/filesystem/zipball/517fb795794faf29086a77d99eb8f35e457837a7", + "reference": "517fb795794faf29086a77d99eb8f35e457837a7", "shasum": "" }, "require": { - "php": ">=5.5.9" + "php": ">=7.1.3", + "symfony/polyfill-ctype": "~1.8", + "symfony/polyfill-php80": "^1.16" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.0-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\Filesystem\\": "" @@ -7078,36 +6275,45 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony Filesystem Component", + "description": "Provides basic utilities for the filesystem", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/filesystem/tree/3.0" + "source": "https://github.com/symfony/filesystem/tree/v4.4.27" }, - "time": "2016-07-20T05:43:46+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2021-07-21T12:19:41+00:00" }, { "name": "symfony/finder", - "version": "v2.8.30", + "version": "v3.4.47", "source": { "type": "git", "url": "https://github.com/symfony/finder.git", - "reference": "efeceae6a05a9b2fcb3391333f1d4a828ff44ab8" + "reference": "b6b6ad3db3edb1b4b1c1896b1975fb684994de6e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/finder/zipball/efeceae6a05a9b2fcb3391333f1d4a828ff44ab8", - "reference": "efeceae6a05a9b2fcb3391333f1d4a828ff44ab8", + "url": "https://api.github.com/repos/symfony/finder/zipball/b6b6ad3db3edb1b4b1c1896b1975fb684994de6e", + "reference": "b6b6ad3db3edb1b4b1c1896b1975fb684994de6e", "shasum": "" }, "require": { - "php": ">=5.3.9" + "php": "^5.5.9|>=7.0.8" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.8-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\Finder\\": "" @@ -7133,46 +6339,67 @@ "description": "Symfony Finder Component", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/finder/tree/2.8" + "source": "https://github.com/symfony/finder/tree/v3.4.47" }, - "time": "2017-11-05T15:25:56+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-11-16T17:02:08+00:00" }, { "name": "symfony/form", - "version": "v2.8.30", + "version": "v3.4.47", "source": { "type": "git", "url": "https://github.com/symfony/form.git", - "reference": "6b6e1e382faf45541fe17808daeea7f94221bba5" + "reference": "62e841f089ec485e5ee425308b56b6ce2b5d11fa" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/form/zipball/6b6e1e382faf45541fe17808daeea7f94221bba5", - "reference": "6b6e1e382faf45541fe17808daeea7f94221bba5", + "url": "https://api.github.com/repos/symfony/form/zipball/62e841f089ec485e5ee425308b56b6ce2b5d11fa", + "reference": "62e841f089ec485e5ee425308b56b6ce2b5d11fa", "shasum": "" }, "require": { - "php": ">=5.3.9", - "symfony/event-dispatcher": "~2.1|~3.0.0", - "symfony/intl": "~2.7.25|^2.8.18|~3.2.5", - "symfony/options-resolver": "~2.6", + "php": "^5.5.9|>=7.0.8", + "symfony/event-dispatcher": "~2.8|~3.0|~4.0", + "symfony/intl": "^2.8.18|^3.2.5|~4.0", + "symfony/options-resolver": "~3.4|~4.0", + "symfony/polyfill-ctype": "~1.8", "symfony/polyfill-mbstring": "~1.0", - "symfony/property-access": "~2.3|~3.0.0" + "symfony/property-access": "~2.8|~3.0|~4.0" }, "conflict": { "phpunit/phpunit": "<4.8.35|<5.4.3,>=5.0", + "symfony/dependency-injection": "<3.3", "symfony/doctrine-bridge": "<2.7", - "symfony/framework-bundle": "<2.7", - "symfony/twig-bridge": "<2.7" + "symfony/framework-bundle": "<3.4", + "symfony/http-kernel": "<3.3.5", + "symfony/twig-bridge": "<3.4.5|<4.0.5,>=4.0" }, "require-dev": { "doctrine/collections": "~1.0", - "symfony/dependency-injection": "~2.7|~3.0.0", - "symfony/http-foundation": "~2.2|~3.0.0", - "symfony/http-kernel": "~2.4|~3.0.0", - "symfony/security-csrf": "~2.4|~3.0.0", - "symfony/translation": "^2.0.5|~3.0.0", - "symfony/validator": "^2.8.18|~3.2.5" + "symfony/config": "~2.7|~3.0|~4.0", + "symfony/console": "~3.4|~4.0", + "symfony/dependency-injection": "~3.3|~4.0", + "symfony/expression-language": "~3.4|~4.0", + "symfony/http-foundation": "~2.8|~3.0|~4.0", + "symfony/http-kernel": "^3.3.5|~4.0", + "symfony/security-csrf": "^2.8.31|^3.3.13|~4.0", + "symfony/translation": "~2.8|~3.0|~4.0", + "symfony/validator": "^3.4.44|^4.0.3", + "symfony/var-dumper": "~3.3.11|~3.4|~4.0" }, "suggest": { "symfony/framework-bundle": "For templating with PHP.", @@ -7181,11 +6408,6 @@ "symfony/validator": "For form validation." }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.8-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\Form\\": "" @@ -7211,81 +6433,108 @@ "description": "Symfony Form Component", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/form/tree/2.8" + "source": "https://github.com/symfony/form/tree/v3.4.47" }, - "time": "2017-11-13T18:11:59+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-10-28T05:23:51+00:00" }, { "name": "symfony/framework-bundle", - "version": "v2.8.30", + "version": "v3.4.47", "source": { "type": "git", "url": "https://github.com/symfony/framework-bundle.git", - "reference": "eac07ff5854977f701146fd03cf7f1470cc56109" + "reference": "6c95e747b75ddd2af61152ce93bf87299d15710e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/framework-bundle/zipball/eac07ff5854977f701146fd03cf7f1470cc56109", - "reference": "eac07ff5854977f701146fd03cf7f1470cc56109", + "url": "https://api.github.com/repos/symfony/framework-bundle/zipball/6c95e747b75ddd2af61152ce93bf87299d15710e", + "reference": "6c95e747b75ddd2af61152ce93bf87299d15710e", "shasum": "" }, "require": { - "doctrine/annotations": "~1.0", - "doctrine/cache": "~1.0", "ext-xml": "*", - "php": ">=5.3.9", - "symfony/asset": "~2.7|~3.0.0", - "symfony/class-loader": "~2.1|~3.0.0", - "symfony/config": "~2.8", - "symfony/dependency-injection": "~2.8", - "symfony/event-dispatcher": "~2.8|~3.0.0", - "symfony/filesystem": "~2.3|~3.0.0", - "symfony/finder": "^2.0.5|~3.0.0", - "symfony/http-foundation": "~2.7.36|^2.8.29", - "symfony/http-kernel": "^2.8.22", + "php": "^5.5.9|>=7.0.8", + "symfony/cache": "~3.4.31|^4.3.4", + "symfony/class-loader": "~3.2", + "symfony/config": "^3.4.31|^4.3.4", + "symfony/debug": "~2.8|~3.0|~4.0", + "symfony/dependency-injection": "^3.4.24|^4.2.5", + "symfony/event-dispatcher": "~3.4|~4.0", + "symfony/filesystem": "~2.8|~3.0|~4.0", + "symfony/finder": "~2.8|~3.0|~4.0", + "symfony/http-foundation": "^3.4.38|^4.3", + "symfony/http-kernel": "^3.4.44|^4.3.4", "symfony/polyfill-mbstring": "~1.0", - "symfony/routing": "^2.8.17", - "symfony/security-core": "~2.6.13|~2.7.9|~2.8|~3.0.0", - "symfony/security-csrf": "~2.6|~3.0.0", - "symfony/stopwatch": "~2.3|~3.0.0", - "symfony/templating": "~2.1|~3.0.0", - "symfony/translation": "~2.8" + "symfony/routing": "^3.4.5|^4.0.5" }, "conflict": { - "phpunit/phpunit": "<4.8.35|<5.4.3,>=5.0" - }, - "require-dev": { - "phpdocumentor/reflection": "^1.0.7", - "sensio/framework-extra-bundle": "^3.0.2", - "symfony/browser-kit": "~2.4|~3.0.0", - "symfony/console": "~2.8.19|~3.2.7", - "symfony/css-selector": "^2.0.5|~3.0.0", - "symfony/dom-crawler": "^2.0.5|~3.0.0", - "symfony/expression-language": "~2.6|~3.0.0", - "symfony/form": "^2.8.19", + "phpdocumentor/reflection-docblock": "<3.0", + "phpdocumentor/type-resolver": "<0.2.1", + "phpunit/phpunit": "<4.8.35|<5.4.3,>=5.0", + "symfony/asset": "<3.3", + "symfony/console": "<3.4", + "symfony/form": "<3.4", + "symfony/property-info": "<3.3", + "symfony/serializer": "<3.3", + "symfony/stopwatch": "<3.4", + "symfony/translation": "<3.4", + "symfony/validator": "<3.4", + "symfony/workflow": "<3.3" + }, + "require-dev": { + "doctrine/annotations": "~1.7", + "doctrine/cache": "~1.0", + "fig/link-util": "^1.0", + "phpdocumentor/reflection-docblock": "^3.0|^4.0", + "symfony/asset": "~3.3|~4.0", + "symfony/browser-kit": "~2.8|~3.0|~4.0", + "symfony/console": "~3.4.31|^4.3.4", + "symfony/css-selector": "~2.8|~3.0|~4.0", + "symfony/dom-crawler": "~2.8|~3.0|~4.0", + "symfony/expression-language": "~2.8|~3.0|~4.0", + "symfony/form": "^3.4.31|^4.3.4", + "symfony/lock": "~3.4|~4.0", "symfony/polyfill-intl-icu": "~1.0", - "symfony/process": "^2.0.5|~3.0.0", - "symfony/property-info": "~2.8|~3.0.0", - "symfony/security": "~2.6|~3.0.0", - "symfony/validator": "~2.5|~3.0.0", - "symfony/yaml": "^2.0.5|~3.0.0", + "symfony/process": "~2.8|~3.0|~4.0", + "symfony/property-info": "~3.3|~4.0", + "symfony/security-core": "~3.2|~4.0", + "symfony/security-csrf": "^2.8.31|^3.3.13|~4.0", + "symfony/serializer": "~3.3|~4.0", + "symfony/stopwatch": "~3.4|~4.0", + "symfony/templating": "~2.8|~3.0|~4.0", + "symfony/translation": "~3.4|~4.0", + "symfony/validator": "~3.4|~4.0", + "symfony/var-dumper": "~3.3|~4.0", + "symfony/web-link": "~3.3|~4.0", + "symfony/workflow": "~3.3|~4.0", + "symfony/yaml": "~3.2|~4.0", "twig/twig": "~1.34|~2.4" }, "suggest": { + "ext-apcu": "For best performance of the system caches", "symfony/console": "For using the console commands", "symfony/form": "For using forms", - "symfony/process": "For using the server:run, server:start, server:stop, and server:status commands", "symfony/property-info": "For using the property_info service", "symfony/serializer": "For using the serializer service", "symfony/validator": "For using validation", + "symfony/web-link": "For using web links, features such as preloading, prefetching or prerendering", "symfony/yaml": "For using the debug:config and lint:yaml commands" }, "type": "symfony-bundle", - "extra": { - "branch-alias": { - "dev-master": "2.8-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Bundle\\FrameworkBundle\\": "" @@ -7311,42 +6560,152 @@ "description": "Symfony FrameworkBundle", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/framework-bundle/tree/2.8" + "source": "https://github.com/symfony/framework-bundle/tree/v3.4.47" }, - "time": "2017-11-10T18:59:36+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-10-24T10:57:07+00:00" }, { "name": "symfony/http-foundation", - "version": "v2.8.30", + "version": "v3.4.47", "source": { "type": "git", "url": "https://github.com/symfony/http-foundation.git", - "reference": "984fa8301472a2857b1b2397f7ad1126fb83b229" + "reference": "b9885fcce6fe494201da4f70a9309770e9d13dc8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-foundation/zipball/984fa8301472a2857b1b2397f7ad1126fb83b229", - "reference": "984fa8301472a2857b1b2397f7ad1126fb83b229", + "url": "https://api.github.com/repos/symfony/http-foundation/zipball/b9885fcce6fe494201da4f70a9309770e9d13dc8", + "reference": "b9885fcce6fe494201da4f70a9309770e9d13dc8", "shasum": "" }, "require": { - "php": ">=5.3.9", + "php": "^5.5.9|>=7.0.8", "symfony/polyfill-mbstring": "~1.1", - "symfony/polyfill-php54": "~1.0", - "symfony/polyfill-php55": "~1.0" + "symfony/polyfill-php70": "~1.6" }, "require-dev": { - "symfony/expression-language": "~2.4|~3.0.0" + "symfony/expression-language": "~2.8|~3.0|~4.0" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.8-dev" + "autoload": { + "psr-4": { + "Symfony\\Component\\HttpFoundation\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony HttpFoundation Component", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/http-foundation/tree/v3.4.47" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" } + ], + "time": "2020-10-24T10:57:07+00:00" + }, + { + "name": "symfony/http-kernel", + "version": "v3.4.49", + "source": { + "type": "git", + "url": "https://github.com/symfony/http-kernel.git", + "reference": "5aa72405f5bd5583c36ed6e756acb17d3f98ac40" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/http-kernel/zipball/5aa72405f5bd5583c36ed6e756acb17d3f98ac40", + "reference": "5aa72405f5bd5583c36ed6e756acb17d3f98ac40", + "shasum": "" + }, + "require": { + "php": "^5.5.9|>=7.0.8", + "psr/log": "~1.0", + "symfony/debug": "^3.3.3|~4.0", + "symfony/event-dispatcher": "~2.8|~3.0|~4.0", + "symfony/http-foundation": "~3.4.12|~4.0.12|^4.1.1", + "symfony/polyfill-ctype": "~1.8", + "symfony/polyfill-php56": "~1.8" }, + "conflict": { + "symfony/config": "<2.8", + "symfony/dependency-injection": "<3.4.10|<4.0.10,>=4", + "symfony/var-dumper": "<3.3", + "twig/twig": "<1.34|<2.4,>=2" + }, + "provide": { + "psr/log-implementation": "1.0" + }, + "require-dev": { + "psr/cache": "~1.0", + "symfony/browser-kit": "~2.8|~3.0|~4.0", + "symfony/class-loader": "~2.8|~3.0", + "symfony/config": "~2.8|~3.0|~4.0", + "symfony/console": "~2.8|~3.0|~4.0", + "symfony/css-selector": "~2.8|~3.0|~4.0", + "symfony/dependency-injection": "^3.4.10|^4.0.10", + "symfony/dom-crawler": "~2.8|~3.0|~4.0", + "symfony/expression-language": "~2.8|~3.0|~4.0", + "symfony/finder": "~2.8|~3.0|~4.0", + "symfony/process": "~2.8|~3.0|~4.0", + "symfony/routing": "~3.4|~4.0", + "symfony/stopwatch": "~2.8|~3.0|~4.0", + "symfony/templating": "~2.8|~3.0|~4.0", + "symfony/translation": "~2.8|~3.0|~4.0", + "symfony/var-dumper": "~3.3|~4.0" + }, + "suggest": { + "symfony/browser-kit": "", + "symfony/config": "", + "symfony/console": "", + "symfony/dependency-injection": "", + "symfony/finder": "", + "symfony/var-dumper": "" + }, + "type": "library", "autoload": { "psr-4": { - "Symfony\\Component\\HttpFoundation\\": "" + "Symfony\\Component\\HttpKernel\\": "" }, "exclude-from-classmap": [ "/Tests/" @@ -7366,73 +6725,51 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony HttpFoundation Component", + "description": "Symfony HttpKernel Component", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/http-foundation/tree/2.8" + "source": "https://github.com/symfony/http-kernel/tree/v3.4.49" }, - "time": "2017-11-13T18:11:59+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2021-05-19T12:06:59+00:00" }, { - "name": "symfony/http-kernel", - "version": "v2.8.30", + "name": "symfony/inflector", + "version": "v5.3.4", "source": { "type": "git", - "url": "https://github.com/symfony/http-kernel.git", - "reference": "0009e0092081d495d7349f1790f286d85d216f90" + "url": "https://github.com/symfony/inflector.git", + "reference": "b4a221138afa358f0833ec98de613108b6d25acf" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-kernel/zipball/0009e0092081d495d7349f1790f286d85d216f90", - "reference": "0009e0092081d495d7349f1790f286d85d216f90", + "url": "https://api.github.com/repos/symfony/inflector/zipball/b4a221138afa358f0833ec98de613108b6d25acf", + "reference": "b4a221138afa358f0833ec98de613108b6d25acf", "shasum": "" }, "require": { - "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.36|~2.8.29|~3.1.6" - }, - "conflict": { - "symfony/config": "<2.7", - "twig/twig": "<1.34|<2.4,>=2" - }, - "require-dev": { - "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": "", - "symfony/class-loader": "", - "symfony/config": "", - "symfony/console": "", - "symfony/dependency-injection": "", - "symfony/finder": "", - "symfony/var-dumper": "" + "php": ">=7.2.5", + "symfony/deprecation-contracts": "^2.1", + "symfony/polyfill-php80": "^1.16", + "symfony/string": "^5.2.8" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.8-dev" - } - }, "autoload": { "psr-4": { - "Symfony\\Component\\HttpKernel\\": "" + "Symfony\\Component\\Inflector\\": "" }, "exclude-from-classmap": [ "/Tests/" @@ -7444,51 +6781,70 @@ ], "authors": [ { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" + "name": "Bernhard Schussek", + "email": "bschussek@gmail.com" }, { "name": "Symfony Community", "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony HttpKernel Component", + "description": "Converts words between their singular and plural forms (English only)", "homepage": "https://symfony.com", + "keywords": [ + "inflection", + "pluralize", + "singularize", + "string", + "symfony", + "words" + ], "support": { - "source": "https://github.com/symfony/http-kernel/tree/2.8" + "source": "https://github.com/symfony/inflector/tree/v5.3.4" }, - "time": "2017-11-13T19:30:25+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "abandoned": "use `EnglishInflector` from the String component instead", + "time": "2021-07-21T12:38:00+00:00" }, { "name": "symfony/intl", - "version": "v3.2.14", + "version": "v4.4.30", "source": { "type": "git", "url": "https://github.com/symfony/intl.git", - "reference": "3fd98dde8e7d1c34c974d65b09e9c32abe88dafe" + "reference": "dded56f7a6d560c692f962e16175794fb2d798ee" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/intl/zipball/3fd98dde8e7d1c34c974d65b09e9c32abe88dafe", - "reference": "3fd98dde8e7d1c34c974d65b09e9c32abe88dafe", + "url": "https://api.github.com/repos/symfony/intl/zipball/dded56f7a6d560c692f962e16175794fb2d798ee", + "reference": "dded56f7a6d560c692f962e16175794fb2d798ee", "shasum": "" }, "require": { - "php": ">=5.5.9", - "symfony/polyfill-intl-icu": "~1.0" + "php": ">=7.1.3", + "symfony/polyfill-intl-icu": "~1.0", + "symfony/polyfill-php80": "^1.16" }, "require-dev": { - "symfony/filesystem": "~2.8|~3.0" + "symfony/filesystem": "^3.4|^4.0|^5.0" }, "suggest": { "ext-intl": "to use the component with locales other than \"en\"" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.2-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\Intl\\": "" @@ -7522,7 +6878,7 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "A PHP replacement layer for the C intl extension that includes additional data from the ICU library.", + "description": "Provides a PHP replacement layer for the C intl extension that includes additional data from the ICU library", "homepage": "https://symfony.com", "keywords": [ "i18n", @@ -7533,33 +6889,43 @@ "localization" ], "support": { - "source": "https://github.com/symfony/intl/tree/3.2" + "source": "https://github.com/symfony/intl/tree/v4.4.30" }, - "time": "2017-11-16T17:55:54+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2021-08-09T08:09:12+00:00" }, { "name": "symfony/options-resolver", - "version": "v2.8.52", + "version": "v4.4.30", "source": { "type": "git", "url": "https://github.com/symfony/options-resolver.git", - "reference": "7aaab725bb58f0e18aa12c61bdadd4793ab4c32b" + "reference": "fa0b12a3a47ed25749d47d6b4f61412fd5ca1554" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/options-resolver/zipball/7aaab725bb58f0e18aa12c61bdadd4793ab4c32b", - "reference": "7aaab725bb58f0e18aa12c61bdadd4793ab4c32b", + "url": "https://api.github.com/repos/symfony/options-resolver/zipball/fa0b12a3a47ed25749d47d6b4f61412fd5ca1554", + "reference": "fa0b12a3a47ed25749d47d6b4f61412fd5ca1554", "shasum": "" }, "require": { - "php": ">=5.3.9" + "php": ">=7.1.3", + "symfony/polyfill-php80": "^1.16" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.8-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\OptionsResolver\\": "" @@ -7582,7 +6948,7 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony OptionsResolver Component", + "description": "Provides an improved replacement for the array_replace PHP function", "homepage": "https://symfony.com", "keywords": [ "config", @@ -7590,27 +6956,44 @@ "options" ], "support": { - "source": "https://github.com/symfony/options-resolver/tree/v2.8.50" + "source": "https://github.com/symfony/options-resolver/tree/v4.4.30" }, - "time": "2018-11-11T11:18:13+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2021-08-04T20:31:23+00:00" }, { - "name": "symfony/polyfill-apcu", + "name": "symfony/polyfill-ctype", "version": "v1.23.0", "source": { "type": "git", - "url": "https://github.com/symfony/polyfill-apcu.git", - "reference": "80f7fb64c5b64ebcba76f40215e63808a2062a18" + "url": "https://github.com/symfony/polyfill-ctype.git", + "reference": "46cd95797e9df938fdd2b03693b5fca5e64b01ce" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-apcu/zipball/80f7fb64c5b64ebcba76f40215e63808a2062a18", - "reference": "80f7fb64c5b64ebcba76f40215e63808a2062a18", + "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/46cd95797e9df938fdd2b03693b5fca5e64b01ce", + "reference": "46cd95797e9df938fdd2b03693b5fca5e64b01ce", "shasum": "" }, "require": { "php": ">=7.1" }, + "suggest": { + "ext-ctype": "For best performance" + }, "type": "library", "extra": { "branch-alias": { @@ -7623,7 +7006,7 @@ }, "autoload": { "psr-4": { - "Symfony\\Polyfill\\Apcu\\": "" + "Symfony\\Polyfill\\Ctype\\": "" }, "files": [ "bootstrap.php" @@ -7635,25 +7018,24 @@ ], "authors": [ { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" + "name": "Gert de Pagter", + "email": "BackEndTea@gmail.com" }, { "name": "Symfony Community", "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony polyfill backporting apcu_* functions to lower PHP versions", + "description": "Symfony polyfill for ctype functions", "homepage": "https://symfony.com", "keywords": [ - "apcu", "compatibility", + "ctype", "polyfill", - "portable", - "shim" + "portable" ], "support": { - "source": "https://github.com/symfony/polyfill-apcu/tree/v1.23.0" + "source": "https://github.com/symfony/polyfill-ctype/tree/v1.23.0" }, "funding": [ { @@ -7672,24 +7054,24 @@ "time": "2021-02-19T12:13:01+00:00" }, { - "name": "symfony/polyfill-intl-icu", - "version": "v1.23.0", + "name": "symfony/polyfill-intl-grapheme", + "version": "v1.23.1", "source": { "type": "git", - "url": "https://github.com/symfony/polyfill-intl-icu.git", - "reference": "4a80a521d6176870b6445cfb469c130f9cae1dda" + "url": "https://github.com/symfony/polyfill-intl-grapheme.git", + "reference": "16880ba9c5ebe3642d1995ab866db29270b36535" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-intl-icu/zipball/4a80a521d6176870b6445cfb469c130f9cae1dda", - "reference": "4a80a521d6176870b6445cfb469c130f9cae1dda", + "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/16880ba9c5ebe3642d1995ab866db29270b36535", + "reference": "16880ba9c5ebe3642d1995ab866db29270b36535", "shasum": "" }, "require": { "php": ">=7.1" }, "suggest": { - "ext-intl": "For best performance and support of other locales than \"en\"" + "ext-intl": "For best performance" }, "type": "library", "extra": { @@ -7702,17 +7084,11 @@ } }, "autoload": { - "files": [ - "bootstrap.php" - ], "psr-4": { - "Symfony\\Polyfill\\Intl\\Icu\\": "" + "Symfony\\Polyfill\\Intl\\Grapheme\\": "" }, - "classmap": [ - "Resources/stubs" - ], - "exclude-from-classmap": [ - "/Tests/" + "files": [ + "bootstrap.php" ] }, "notification-url": "https://packagist.org/downloads/", @@ -7729,18 +7105,18 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony polyfill for intl's ICU-related data and classes", + "description": "Symfony polyfill for intl's grapheme_* functions", "homepage": "https://symfony.com", "keywords": [ "compatibility", - "icu", + "grapheme", "intl", "polyfill", "portable", "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-intl-icu/tree/v1.23.0" + "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.23.1" }, "funding": [ { @@ -7756,27 +7132,27 @@ "type": "tidelift" } ], - "time": "2021-05-24T10:04:56+00:00" + "time": "2021-05-27T12:26:48+00:00" }, { - "name": "symfony/polyfill-mbstring", + "name": "symfony/polyfill-intl-icu", "version": "v1.23.0", "source": { "type": "git", - "url": "https://github.com/symfony/polyfill-mbstring.git", - "reference": "2df51500adbaebdc4c38dea4c89a2e131c45c8a1" + "url": "https://github.com/symfony/polyfill-intl-icu.git", + "reference": "4a80a521d6176870b6445cfb469c130f9cae1dda" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/2df51500adbaebdc4c38dea4c89a2e131c45c8a1", - "reference": "2df51500adbaebdc4c38dea4c89a2e131c45c8a1", + "url": "https://api.github.com/repos/symfony/polyfill-intl-icu/zipball/4a80a521d6176870b6445cfb469c130f9cae1dda", + "reference": "4a80a521d6176870b6445cfb469c130f9cae1dda", "shasum": "" }, "require": { "php": ">=7.1" }, "suggest": { - "ext-mbstring": "For best performance" + "ext-intl": "For best performance and support of other locales than \"en\"" }, "type": "library", "extra": { @@ -7789,11 +7165,17 @@ } }, "autoload": { - "psr-4": { - "Symfony\\Polyfill\\Mbstring\\": "" - }, "files": [ "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Intl\\Icu\\": "" + }, + "classmap": [ + "Resources/stubs" + ], + "exclude-from-classmap": [ + "/Tests/" ] }, "notification-url": "https://packagist.org/downloads/", @@ -7810,17 +7192,18 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony polyfill for the Mbstring extension", + "description": "Symfony polyfill for intl's ICU-related data and classes", "homepage": "https://symfony.com", "keywords": [ "compatibility", - "mbstring", + "icu", + "intl", "polyfill", "portable", "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.23.0" + "source": "https://github.com/symfony/polyfill-intl-icu/tree/v1.23.0" }, "funding": [ { @@ -7836,35 +7219,49 @@ "type": "tidelift" } ], - "time": "2021-05-27T09:27:20+00:00" + "time": "2021-05-24T10:04:56+00:00" }, { - "name": "symfony/polyfill-php54", - "version": "v1.20.0", + "name": "symfony/polyfill-intl-normalizer", + "version": "v1.23.0", "source": { "type": "git", - "url": "https://github.com/symfony/polyfill-php54.git", - "reference": "37285b1d5d13f37c8bee546d8d2ad0353460c4c7" + "url": "https://github.com/symfony/polyfill-intl-normalizer.git", + "reference": "8590a5f561694770bdcd3f9b5c69dde6945028e8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php54/zipball/37285b1d5d13f37c8bee546d8d2ad0353460c4c7", - "reference": "37285b1d5d13f37c8bee546d8d2ad0353460c4c7", + "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/8590a5f561694770bdcd3f9b5c69dde6945028e8", + "reference": "8590a5f561694770bdcd3f9b5c69dde6945028e8", "shasum": "" }, "require": { "php": ">=7.1" }, - "type": "metapackage", + "suggest": { + "ext-intl": "For best performance" + }, + "type": "library", "extra": { "branch-alias": { - "dev-main": "1.20-dev" + "dev-main": "1.23-dev" }, "thanks": { "name": "symfony/polyfill", "url": "https://github.com/symfony/polyfill" } }, + "autoload": { + "psr-4": { + "Symfony\\Polyfill\\Intl\\Normalizer\\": "" + }, + "files": [ + "bootstrap.php" + ], + "classmap": [ + "Resources/stubs" + ] + }, "notification-url": "https://packagist.org/downloads/", "license": [ "MIT" @@ -7879,16 +7276,18 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony polyfill backporting some PHP 5.4+ features to lower PHP versions", + "description": "Symfony polyfill for intl's Normalizer class and related functions", "homepage": "https://symfony.com", "keywords": [ "compatibility", + "intl", + "normalizer", "polyfill", "portable", "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php54/tree/v1.20.0" + "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.23.0" }, "funding": [ { @@ -7904,35 +7303,46 @@ "type": "tidelift" } ], - "time": "2020-10-23T14:02:19+00:00" + "time": "2021-02-19T12:13:01+00:00" }, { - "name": "symfony/polyfill-php55", - "version": "v1.20.0", + "name": "symfony/polyfill-mbstring", + "version": "v1.23.1", "source": { "type": "git", - "url": "https://github.com/symfony/polyfill-php55.git", - "reference": "c17452124a883900e1d73961f9075a638399c1a0" + "url": "https://github.com/symfony/polyfill-mbstring.git", + "reference": "9174a3d80210dca8daa7f31fec659150bbeabfc6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php55/zipball/c17452124a883900e1d73961f9075a638399c1a0", - "reference": "c17452124a883900e1d73961f9075a638399c1a0", + "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/9174a3d80210dca8daa7f31fec659150bbeabfc6", + "reference": "9174a3d80210dca8daa7f31fec659150bbeabfc6", "shasum": "" }, "require": { "php": ">=7.1" }, - "type": "metapackage", + "suggest": { + "ext-mbstring": "For best performance" + }, + "type": "library", "extra": { "branch-alias": { - "dev-main": "1.20-dev" + "dev-main": "1.23-dev" }, "thanks": { "name": "symfony/polyfill", "url": "https://github.com/symfony/polyfill" } }, + "autoload": { + "psr-4": { + "Symfony\\Polyfill\\Mbstring\\": "" + }, + "files": [ + "bootstrap.php" + ] + }, "notification-url": "https://packagist.org/downloads/", "license": [ "MIT" @@ -7947,16 +7357,17 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony polyfill backporting some PHP 5.5+ features to lower PHP versions", + "description": "Symfony polyfill for the Mbstring extension", "homepage": "https://symfony.com", "keywords": [ "compatibility", + "mbstring", "polyfill", "portable", "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php55/tree/v1.20.0" + "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.23.1" }, "funding": [ { @@ -7972,7 +7383,7 @@ "type": "tidelift" } ], - "time": "2020-10-23T14:02:19+00:00" + "time": "2021-05-27T12:26:48+00:00" }, { "name": "symfony/polyfill-php56", @@ -8111,17 +7522,17 @@ "time": "2020-10-23T14:02:19+00:00" }, { - "name": "symfony/polyfill-util", - "version": "v1.23.0", + "name": "symfony/polyfill-php80", + "version": "v1.23.1", "source": { "type": "git", - "url": "https://github.com/symfony/polyfill-util.git", - "reference": "f2a03e0938d3e4feabf63db6300da01b01cfa00e" + "url": "https://github.com/symfony/polyfill-php80.git", + "reference": "1100343ed1a92e3a38f9ae122fc0eb21602547be" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-util/zipball/f2a03e0938d3e4feabf63db6300da01b01cfa00e", - "reference": "f2a03e0938d3e4feabf63db6300da01b01cfa00e", + "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/1100343ed1a92e3a38f9ae122fc0eb21602547be", + "reference": "1100343ed1a92e3a38f9ae122fc0eb21602547be", "shasum": "" }, "require": { @@ -8139,14 +7550,24 @@ }, "autoload": { "psr-4": { - "Symfony\\Polyfill\\Util\\": "" - } + "Symfony\\Polyfill\\Php80\\": "" + }, + "files": [ + "bootstrap.php" + ], + "classmap": [ + "Resources/stubs" + ] }, "notification-url": "https://packagist.org/downloads/", "license": [ "MIT" ], "authors": [ + { + "name": "Ion Bazan", + "email": "ion.bazan@gmail.com" + }, { "name": "Nicolas Grekas", "email": "p@tchwork.com" @@ -8156,16 +7577,16 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony utilities for portability of PHP codes", + "description": "Symfony polyfill backporting some PHP 8.0+ features to lower PHP versions", "homepage": "https://symfony.com", "keywords": [ - "compat", "compatibility", "polyfill", + "portable", "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-util/tree/v1.23.0" + "source": "https://github.com/symfony/polyfill-php80/tree/v1.23.1" }, "funding": [ { @@ -8181,31 +7602,26 @@ "type": "tidelift" } ], - "time": "2021-02-19T12:13:01+00:00" + "time": "2021-07-28T13:41:28+00:00" }, { "name": "symfony/process", - "version": "v2.8.30", + "version": "v3.4.47", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "d25449e031f600807949aab7cadbf267712f4eee" + "reference": "b8648cf1d5af12a44a51d07ef9bf980921f15fca" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/d25449e031f600807949aab7cadbf267712f4eee", - "reference": "d25449e031f600807949aab7cadbf267712f4eee", + "url": "https://api.github.com/repos/symfony/process/zipball/b8648cf1d5af12a44a51d07ef9bf980921f15fca", + "reference": "b8648cf1d5af12a44a51d07ef9bf980921f15fca", "shasum": "" }, "require": { - "php": ">=5.3.9" + "php": "^5.5.9|>=7.0.8" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.8-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\Process\\": "" @@ -8231,33 +7647,50 @@ "description": "Symfony Process Component", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/process/tree/2.8" + "source": "https://github.com/symfony/process/tree/v3.4.47" }, - "time": "2017-11-05T15:25:56+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-10-24T10:57:07+00:00" }, { "name": "symfony/property-access", - "version": "v3.0.9", + "version": "v4.4.30", "source": { "type": "git", "url": "https://github.com/symfony/property-access.git", - "reference": "a4f1a668d0a269a65790f07d9ab2a97dd060fccb" + "reference": "727edd3a5fd2feca1562e0f2520ed6888805c0fa" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/property-access/zipball/a4f1a668d0a269a65790f07d9ab2a97dd060fccb", - "reference": "a4f1a668d0a269a65790f07d9ab2a97dd060fccb", + "url": "https://api.github.com/repos/symfony/property-access/zipball/727edd3a5fd2feca1562e0f2520ed6888805c0fa", + "reference": "727edd3a5fd2feca1562e0f2520ed6888805c0fa", "shasum": "" }, "require": { - "php": ">=5.5.9" + "php": ">=7.1.3", + "symfony/inflector": "^3.4|^4.0|^5.0", + "symfony/polyfill-php80": "^1.16" }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.0-dev" - } + "require-dev": { + "symfony/cache": "^3.4|^4.0|^5.0" + }, + "suggest": { + "psr/cache-implementation": "To cache access methods." }, + "type": "library", "autoload": { "psr-4": { "Symfony\\Component\\PropertyAccess\\": "" @@ -8280,7 +7713,7 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony PropertyAccess Component", + "description": "Provides functions to read and write from/to an object or array using a simple string notation", "homepage": "https://symfony.com", "keywords": [ "access", @@ -8293,54 +7726,64 @@ "property path", "reflection" ], - "support": { - "source": "https://github.com/symfony/property-access/tree/3.0" - }, - "time": "2016-07-30T07:22:48+00:00" + "support": { + "source": "https://github.com/symfony/property-access/tree/v4.4.30" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2021-08-09T12:05:14+00:00" }, { "name": "symfony/routing", - "version": "v2.8.30", + "version": "v3.4.47", "source": { "type": "git", "url": "https://github.com/symfony/routing.git", - "reference": "67bcd31a2f2fb1bf25cd8f4d4e0e2e2c91cccd5f" + "reference": "3e522ac69cadffd8131cc2b22157fa7662331a6c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/routing/zipball/67bcd31a2f2fb1bf25cd8f4d4e0e2e2c91cccd5f", - "reference": "67bcd31a2f2fb1bf25cd8f4d4e0e2e2c91cccd5f", + "url": "https://api.github.com/repos/symfony/routing/zipball/3e522ac69cadffd8131cc2b22157fa7662331a6c", + "reference": "3e522ac69cadffd8131cc2b22157fa7662331a6c", "shasum": "" }, "require": { - "php": ">=5.3.9" + "php": "^5.5.9|>=7.0.8" }, "conflict": { - "symfony/config": "<2.7" + "symfony/config": "<3.3.1", + "symfony/dependency-injection": "<3.3", + "symfony/yaml": "<3.4" }, "require-dev": { "doctrine/annotations": "~1.0", - "doctrine/common": "~2.2", "psr/log": "~1.0", - "symfony/config": "~2.7|~3.0.0", - "symfony/expression-language": "~2.4|~3.0.0", - "symfony/http-foundation": "~2.3|~3.0.0", - "symfony/yaml": "^2.0.5|~3.0.0" + "symfony/config": "^3.3.1|~4.0", + "symfony/dependency-injection": "~3.3|~4.0", + "symfony/expression-language": "~2.8|~3.0|~4.0", + "symfony/http-foundation": "~2.8|~3.0|~4.0", + "symfony/yaml": "~3.4|~4.0" }, "suggest": { "doctrine/annotations": "For using the annotation loader", "symfony/config": "For using the all-in-one router or any loader", - "symfony/dependency-injection": "For loading routes from a service", "symfony/expression-language": "For using expression matching", "symfony/http-foundation": "For using a Symfony Request object", "symfony/yaml": "For using the YAML loader" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.8-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\Routing\\": "" @@ -8372,35 +7815,46 @@ "url" ], "support": { - "source": "https://github.com/symfony/routing/tree/2.8" + "source": "https://github.com/symfony/routing/tree/v3.4.47" }, - "time": "2017-11-07T14:08:47+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-10-24T10:57:07+00:00" }, { "name": "symfony/security", - "version": "v2.8.30", + "version": "v3.4.49", "source": { "type": "git", "url": "https://github.com/symfony/security.git", - "reference": "87807daa2b5192dd3573ade1353fa0b497582f2d" + "reference": "ac1af40e3e0a183f80f0ff8c3d22b18bfb74dbb3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/security/zipball/87807daa2b5192dd3573ade1353fa0b497582f2d", - "reference": "87807daa2b5192dd3573ade1353fa0b497582f2d", + "url": "https://api.github.com/repos/symfony/security/zipball/ac1af40e3e0a183f80f0ff8c3d22b18bfb74dbb3", + "reference": "ac1af40e3e0a183f80f0ff8c3d22b18bfb74dbb3", "shasum": "" }, "require": { - "php": ">=5.3.9", - "symfony/event-dispatcher": "~2.2|~3.0.0", - "symfony/http-foundation": "~2.1|~3.0.0", - "symfony/http-kernel": "~2.4|~3.0.0", - "symfony/polyfill-php55": "~1.0", + "php": "^5.5.9|>=7.0.8", + "symfony/event-dispatcher": "~2.8|~3.0|~4.0", + "symfony/http-foundation": "~3.4.40|^4.4.7", + "symfony/http-kernel": "~3.3|~4.0", "symfony/polyfill-php56": "~1.0", "symfony/polyfill-php70": "~1.0", - "symfony/polyfill-util": "~1.0", - "symfony/property-access": "~2.3|~3.0.0", - "symfony/security-acl": "~2.7|~3.0.0" + "symfony/property-access": "~2.8|~3.0|~4.0" }, "replace": { "symfony/security-core": "self.version", @@ -8409,15 +7863,18 @@ "symfony/security-http": "self.version" }, "require-dev": { + "psr/container": "^1.0", "psr/log": "~1.0", - "symfony/expression-language": "~2.6|~3.0.0", - "symfony/finder": "~2.3|~3.0.0", - "symfony/ldap": "~2.8|~3.0.0", + "symfony/expression-language": "~2.8|~3.0|~4.0", + "symfony/finder": "~2.8|~3.0|~4.0", + "symfony/ldap": "~3.1|~4.0", + "symfony/polyfill-ctype": "~1.8", "symfony/polyfill-intl-icu": "~1.0", - "symfony/routing": "~2.2|~3.0.0", - "symfony/validator": "~2.7.25|^2.8.18|~3.2.5" + "symfony/routing": "~2.8|~3.0|~4.0", + "symfony/validator": "^3.2.5|~4.0" }, "suggest": { + "psr/container-implementation": "To instantiate the Security class", "symfony/expression-language": "For using the expression voter", "symfony/form": "", "symfony/ldap": "For using the LDAP user and authentication providers", @@ -8425,17 +7882,15 @@ "symfony/validator": "For using the user password constraint" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.8-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\Security\\": "" }, "exclude-from-classmap": [ - "/Tests/" + "/Core/Tests/", + "/Csrf/Tests/", + "/Guard/Tests/", + "/Http/Tests/" ] }, "notification-url": "https://packagist.org/downloads/", @@ -8455,52 +7910,59 @@ "description": "Symfony Security Component", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/security/tree/2.8" + "source": "https://github.com/symfony/security/tree/v3.4.49" }, - "time": "2017-11-07T14:08:47+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2021-05-19T12:03:21+00:00" }, { - "name": "symfony/security-acl", - "version": "v3.0.4", + "name": "symfony/service-contracts", + "version": "v1.1.9", "source": { "type": "git", - "url": "https://github.com/symfony/security-acl.git", - "reference": "dc8f10b3bda34e9ddcad49edc7accf61f31fce43" + "url": "https://github.com/symfony/service-contracts.git", + "reference": "b776d18b303a39f56c63747bcb977ad4b27aca26" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/security-acl/zipball/dc8f10b3bda34e9ddcad49edc7accf61f31fce43", - "reference": "dc8f10b3bda34e9ddcad49edc7accf61f31fce43", + "url": "https://api.github.com/repos/symfony/service-contracts/zipball/b776d18b303a39f56c63747bcb977ad4b27aca26", + "reference": "b776d18b303a39f56c63747bcb977ad4b27aca26", "shasum": "" }, "require": { - "php": ">=5.5.9", - "symfony/security-core": "^2.8|^3.0|^4.0|^5.0" - }, - "require-dev": { - "doctrine/common": "~2.2", - "doctrine/dbal": "~2.2", - "psr/log": "~1.0", - "symfony/phpunit-bridge": "^2.8|^3.0|^4.0|^5.0" + "php": ">=7.1.3", + "psr/container": "^1.0" }, "suggest": { - "doctrine/dbal": "For using the built-in ACL implementation", - "symfony/class-loader": "For using the ACL generateSql script", - "symfony/finder": "For using the ACL generateSql script" + "symfony/service-implementation": "" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "3.0-dev" + "dev-master": "1.1-dev" + }, + "thanks": { + "name": "symfony/contracts", + "url": "https://github.com/symfony/contracts" } }, "autoload": { "psr-4": { - "Symfony\\Component\\Security\\Acl\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] + "Symfony\\Contracts\\Service\\": "" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -8508,45 +7970,61 @@ ], "authors": [ { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" + "name": "Nicolas Grekas", + "email": "p@tchwork.com" }, { "name": "Symfony Community", "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony Security Component - ACL (Access Control List)", + "description": "Generic abstractions related to writing services", "homepage": "https://symfony.com", + "keywords": [ + "abstractions", + "contracts", + "decoupling", + "interfaces", + "interoperability", + "standards" + ], "support": { - "issues": "https://github.com/symfony/security-acl/issues", - "source": "https://github.com/symfony/security-acl/tree/master" + "source": "https://github.com/symfony/service-contracts/tree/v1.1.9" }, - "time": "2019-12-12T09:55:57+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-07-06T13:19:58+00:00" }, { "name": "symfony/stopwatch", - "version": "v2.8.30", + "version": "v3.4.47", "source": { "type": "git", "url": "https://github.com/symfony/stopwatch.git", - "reference": "533bb9d7c2da1c6d2da163ecf0f22043ea98f59b" + "reference": "298b81faad4ce60e94466226b2abbb8c9bca7462" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/stopwatch/zipball/533bb9d7c2da1c6d2da163ecf0f22043ea98f59b", - "reference": "533bb9d7c2da1c6d2da163ecf0f22043ea98f59b", + "url": "https://api.github.com/repos/symfony/stopwatch/zipball/298b81faad4ce60e94466226b2abbb8c9bca7462", + "reference": "298b81faad4ce60e94466226b2abbb8c9bca7462", "shasum": "" }, "require": { - "php": ">=5.3.9" + "php": "^5.5.9|>=7.0.8" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.8-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\Stopwatch\\": "" @@ -8572,39 +8050,132 @@ "description": "Symfony Stopwatch Component", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/stopwatch/tree/2.8" + "source": "https://github.com/symfony/stopwatch/tree/v3.4.47" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-10-24T10:57:07+00:00" + }, + { + "name": "symfony/string", + "version": "v5.3.7", + "source": { + "type": "git", + "url": "https://github.com/symfony/string.git", + "reference": "8d224396e28d30f81969f083a58763b8b9ceb0a5" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/string/zipball/8d224396e28d30f81969f083a58763b8b9ceb0a5", + "reference": "8d224396e28d30f81969f083a58763b8b9ceb0a5", + "shasum": "" + }, + "require": { + "php": ">=7.2.5", + "symfony/polyfill-ctype": "~1.8", + "symfony/polyfill-intl-grapheme": "~1.0", + "symfony/polyfill-intl-normalizer": "~1.0", + "symfony/polyfill-mbstring": "~1.0", + "symfony/polyfill-php80": "~1.15" + }, + "require-dev": { + "symfony/error-handler": "^4.4|^5.0", + "symfony/http-client": "^4.4|^5.0", + "symfony/translation-contracts": "^1.1|^2", + "symfony/var-exporter": "^4.4|^5.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\String\\": "" + }, + "files": [ + "Resources/functions.php" + ], + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Provides an object-oriented API to strings and deals with bytes, UTF-8 code points and grapheme clusters in a unified way", + "homepage": "https://symfony.com", + "keywords": [ + "grapheme", + "i18n", + "string", + "unicode", + "utf-8", + "utf8" + ], + "support": { + "source": "https://github.com/symfony/string/tree/v5.3.7" }, - "time": "2017-11-10T18:59:36+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2021-08-26T08:00:08+00:00" }, { "name": "symfony/templating", - "version": "v2.8.30", + "version": "v3.4.47", "source": { "type": "git", "url": "https://github.com/symfony/templating.git", - "reference": "ce8bd0f47706199383f082cf29b7a841a0dac682" + "reference": "84ca10f95aaff084ae2bcfc5c21ae551af173d5a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/templating/zipball/ce8bd0f47706199383f082cf29b7a841a0dac682", - "reference": "ce8bd0f47706199383f082cf29b7a841a0dac682", + "url": "https://api.github.com/repos/symfony/templating/zipball/84ca10f95aaff084ae2bcfc5c21ae551af173d5a", + "reference": "84ca10f95aaff084ae2bcfc5c21ae551af173d5a", "shasum": "" }, "require": { - "php": ">=5.3.9" + "php": "^5.5.9|>=7.0.8", + "symfony/polyfill-ctype": "~1.8" }, "require-dev": { "psr/log": "~1.0" }, "suggest": { - "psr/log": "For using debug logging in loaders" + "psr/log-implementation": "For using debug logging in loaders" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.8-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\Templating\\": "" @@ -8630,48 +8201,63 @@ "description": "Symfony Templating Component", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/templating/tree/2.8" + "source": "https://github.com/symfony/templating/tree/v3.4.47" }, - "time": "2017-11-07T14:08:47+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-10-24T10:57:07+00:00" }, { "name": "symfony/translation", - "version": "v2.8.30", + "version": "v3.4.47", "source": { "type": "git", "url": "https://github.com/symfony/translation.git", - "reference": "0c63d56516c4c4c323228ca6348eadb7c91b1daf" + "reference": "be83ee6c065cb32becdb306ba61160d598b1ce88" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/translation/zipball/0c63d56516c4c4c323228ca6348eadb7c91b1daf", - "reference": "0c63d56516c4c4c323228ca6348eadb7c91b1daf", + "url": "https://api.github.com/repos/symfony/translation/zipball/be83ee6c065cb32becdb306ba61160d598b1ce88", + "reference": "be83ee6c065cb32becdb306ba61160d598b1ce88", "shasum": "" }, "require": { - "php": ">=5.3.9", + "php": "^5.5.9|>=7.0.8", "symfony/polyfill-mbstring": "~1.0" }, "conflict": { - "symfony/config": "<2.7" + "symfony/config": "<2.8", + "symfony/dependency-injection": "<3.4", + "symfony/yaml": "<3.4" }, "require-dev": { "psr/log": "~1.0", - "symfony/config": "~2.8", - "symfony/intl": "~2.7.25|^2.8.18|~3.2.5", - "symfony/yaml": "~2.2|~3.0.0" + "symfony/config": "~2.8|~3.0|~4.0", + "symfony/dependency-injection": "~3.4|~4.0", + "symfony/finder": "~2.8|~3.0|~4.0", + "symfony/http-kernel": "~3.4|~4.0", + "symfony/intl": "^2.8.18|^3.2.5|~4.0", + "symfony/var-dumper": "~3.4|~4.0", + "symfony/yaml": "~3.4|~4.0" }, "suggest": { - "psr/log": "To use logging capability in translator", + "psr/log-implementation": "To use logging capability in translator", "symfony/config": "", "symfony/yaml": "" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.8-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\Translation\\": "" @@ -8697,57 +8283,79 @@ "description": "Symfony Translation Component", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/translation/tree/2.8" + "source": "https://github.com/symfony/translation/tree/v3.4.47" }, - "time": "2017-11-07T14:08:47+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-10-24T10:57:07+00:00" }, { "name": "symfony/validator", - "version": "v2.8.30", + "version": "v3.4.47", "source": { "type": "git", "url": "https://github.com/symfony/validator.git", - "reference": "2c5ae6fa983b65c58cb7c4481cd54871a3bfd10a" + "reference": "d25ceea5c99022aecf37adf157c76c31fc5dcbed" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/validator/zipball/2c5ae6fa983b65c58cb7c4481cd54871a3bfd10a", - "reference": "2c5ae6fa983b65c58cb7c4481cd54871a3bfd10a", + "url": "https://api.github.com/repos/symfony/validator/zipball/d25ceea5c99022aecf37adf157c76c31fc5dcbed", + "reference": "d25ceea5c99022aecf37adf157c76c31fc5dcbed", "shasum": "" }, "require": { - "php": ">=5.3.9", + "php": "^5.5.9|>=7.0.8", + "symfony/polyfill-ctype": "~1.8", "symfony/polyfill-mbstring": "~1.0", - "symfony/translation": "~2.4|~3.0.0" + "symfony/translation": "~2.8|~3.0|~4.0" + }, + "conflict": { + "doctrine/lexer": "<1.0.2", + "phpunit/phpunit": "<4.8.35|<5.4.3,>=5.0", + "symfony/dependency-injection": "<3.3", + "symfony/http-kernel": "<3.3.5", + "symfony/yaml": "<3.4" }, "require-dev": { - "doctrine/annotations": "~1.0", + "doctrine/annotations": "~1.7", "doctrine/cache": "~1.0", - "egulias/email-validator": "^1.2.1", - "symfony/config": "~2.2|~3.0.0", - "symfony/expression-language": "~2.4|~3.0.0", - "symfony/http-foundation": "~2.3|~3.0.0", - "symfony/intl": "~2.7.25|^2.8.18|~3.2.5", - "symfony/property-access": "~2.3|~3.0.0", - "symfony/yaml": "^2.0.5|~3.0.0" + "egulias/email-validator": "^2.1.10", + "symfony/cache": "~3.1|~4.0", + "symfony/config": "~2.8|~3.0|~4.0", + "symfony/dependency-injection": "~3.3|~4.0", + "symfony/expression-language": "~2.8|~3.0|~4.0", + "symfony/http-foundation": "~2.8|~3.0|~4.0", + "symfony/http-kernel": "^3.3.5|~4.0", + "symfony/intl": "^2.8.18|^3.2.5|~4.0", + "symfony/property-access": "~2.8|~3.0|~4.0", + "symfony/var-dumper": "~3.3|~4.0", + "symfony/yaml": "~3.4|~4.0" }, "suggest": { "doctrine/annotations": "For using the annotation mapping. You will also need doctrine/cache.", "doctrine/cache": "For using the default cached annotation reader and metadata cache.", "egulias/email-validator": "Strict (RFC compliant) email validation", + "psr/cache-implementation": "For using the metadata cache.", "symfony/config": "", - "symfony/expression-language": "For using the 2.4 Expression validator", + "symfony/expression-language": "For using the Expression validator", "symfony/http-foundation": "", "symfony/intl": "", - "symfony/property-access": "For using the 2.4 Validator API", + "symfony/property-access": "For accessing properties within comparison constraints", "symfony/yaml": "" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.8-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\Validator\\": "" @@ -8770,42 +8378,128 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony Validator Component", + "description": "Symfony Validator Component", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/validator/tree/v3.4.47" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-10-28T05:23:51+00:00" + }, + { + "name": "symfony/var-exporter", + "version": "v4.4.30", + "source": { + "type": "git", + "url": "https://github.com/symfony/var-exporter.git", + "reference": "67d0cbfac22a7f21bf6b94dd85de35df7b8a435e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/var-exporter/zipball/67d0cbfac22a7f21bf6b94dd85de35df7b8a435e", + "reference": "67d0cbfac22a7f21bf6b94dd85de35df7b8a435e", + "shasum": "" + }, + "require": { + "php": ">=7.1.3", + "symfony/polyfill-php80": "^1.16" + }, + "require-dev": { + "symfony/var-dumper": "^4.4.9|^5.0.9" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\VarExporter\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Allows exporting any serializable PHP data structure to plain PHP code", "homepage": "https://symfony.com", + "keywords": [ + "clone", + "construct", + "export", + "hydrate", + "instantiate", + "serialize" + ], "support": { - "source": "https://github.com/symfony/validator/tree/2.8" + "source": "https://github.com/symfony/var-exporter/tree/v4.4.30" }, - "time": "2017-11-10T18:59:36+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2021-08-04T22:42:04+00:00" }, { "name": "symfony/yaml", - "version": "v3.3.18", + "version": "v3.4.47", "source": { "type": "git", "url": "https://github.com/symfony/yaml.git", - "reference": "af615970e265543a26ee712c958404eb9b7ac93d" + "reference": "88289caa3c166321883f67fe5130188ebbb47094" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/yaml/zipball/af615970e265543a26ee712c958404eb9b7ac93d", - "reference": "af615970e265543a26ee712c958404eb9b7ac93d", + "url": "https://api.github.com/repos/symfony/yaml/zipball/88289caa3c166321883f67fe5130188ebbb47094", + "reference": "88289caa3c166321883f67fe5130188ebbb47094", "shasum": "" }, "require": { - "php": "^5.5.9|>=7.0.8" + "php": "^5.5.9|>=7.0.8", + "symfony/polyfill-ctype": "~1.8" + }, + "conflict": { + "symfony/console": "<3.4" }, "require-dev": { - "symfony/console": "~2.8|~3.0" + "symfony/console": "~3.4|~4.0" }, "suggest": { "symfony/console": "For validating YAML files using the lint command" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.3-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\Yaml\\": "" @@ -8831,9 +8525,23 @@ "description": "Symfony Yaml Component", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/yaml/tree/3.3" + "source": "https://github.com/symfony/yaml/tree/v3.4.47" }, - "time": "2018-01-20T15:04:53+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-10-24T10:57:07+00:00" }, { "name": "tecnickcom/tcpdf", @@ -8912,7 +8620,7 @@ "version": "dev-master", "source": { "type": "git", - "url": "git@github.com:tpyo/amazon-s3-php-class.git", + "url": "https://github.com/tpyo/amazon-s3-php-class.git", "reference": "81a35c61bf76be7c02c95a57771031d21277b1b5" }, "dist": { @@ -8943,6 +8651,10 @@ ], "description": "A standalone Amazon S3 (REST) client for PHP 5.2.x using CURL that does not require PEAR.", "homepage": "https://github.com/tpyo/amazon-s3-php-class", + "support": { + "issues": "https://github.com/tpyo/amazon-s3-php-class/issues", + "source": "https://github.com/tpyo/amazon-s3-php-class/tree/master" + }, "time": "2021-01-21T15:50:10+00:00" }, { @@ -9106,36 +8818,255 @@ "issues": "https://github.com/unreal4u/telegram-api/issues", "source": "https://github.com/unreal4u/telegram-api" }, - "time": "2020-06-24T07:29:02+00:00" + "time": "2020-06-24T07:29:02+00:00" + }, + { + "name": "yoshi2889/collections", + "version": "v0.1.6", + "source": { + "type": "git", + "url": "https://github.com/Yoshi2889/collections.git", + "reference": "32d9531f66584bfae51c09c7a505db1ce5a559b0" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Yoshi2889/collections/zipball/32d9531f66584bfae51c09c7a505db1ce5a559b0", + "reference": "32d9531f66584bfae51c09c7a505db1ce5a559b0", + "shasum": "" + }, + "require": { + "evenement/evenement": "^3.0 || ^2.0", + "php": ">=7.0.0" + }, + "require-dev": { + "phpunit/phpunit": "^6.2" + }, + "suggest": { + "yoshi2889/validation-closures": "Closures to use for validating data." + }, + "type": "library", + "autoload": { + "psr-4": { + "Yoshi2889\\Collections\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Yoshi2889", + "email": "rick.2889@gmail.com", + "homepage": "https://nanosector.nl", + "role": "Lead Developer" + } + ], + "description": "Simple Collection class allowing storage of specific data.", + "support": { + "issues": "https://github.com/Yoshi2889/collections/issues", + "source": "https://github.com/Yoshi2889/collections/tree/master" + }, + "time": "2017-08-27T19:19:15+00:00" + }, + { + "name": "yoshi2889/multipart-builder", + "version": "v0.1.1", + "source": { + "type": "git", + "url": "https://github.com/Yoshi2889/multipart-builder.git", + "reference": "6b97bdfe0270d177dcd35370d5eea2c771198e31" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Yoshi2889/multipart-builder/zipball/6b97bdfe0270d177dcd35370d5eea2c771198e31", + "reference": "6b97bdfe0270d177dcd35370d5eea2c771198e31", + "shasum": "" + }, + "require": { + "php": ">=7.0.0", + "yoshi2889/collections": "^0.1" + }, + "require-dev": { + "phpunit/phpunit": "^6.3" + }, + "type": "library", + "autoload": { + "psr-4": { + "MultipartBuilder\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Yoshi2889", + "email": "rick.2889@gmail.com", + "homepage": "https://nanosector.nl", + "role": "Lead Developer" + } + ], + "description": "Stream-independent RFC2388 compliant multipart form data builder.", + "support": { + "issues": "https://github.com/Yoshi2889/multipart-builder/issues", + "source": "https://github.com/Yoshi2889/multipart-builder/tree/master" + }, + "time": "2017-08-27T20:19:33+00:00" + } + ], + "packages-dev": [ + { + "name": "doctrine/instantiator", + "version": "1.4.0", + "source": { + "type": "git", + "url": "https://github.com/doctrine/instantiator.git", + "reference": "d56bf6102915de5702778fe20f2de3b2fe570b5b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/instantiator/zipball/d56bf6102915de5702778fe20f2de3b2fe570b5b", + "reference": "d56bf6102915de5702778fe20f2de3b2fe570b5b", + "shasum": "" + }, + "require": { + "php": "^7.1 || ^8.0" + }, + "require-dev": { + "doctrine/coding-standard": "^8.0", + "ext-pdo": "*", + "ext-phar": "*", + "phpbench/phpbench": "^0.13 || 1.0.0-alpha2", + "phpstan/phpstan": "^0.12", + "phpstan/phpstan-phpunit": "^0.12", + "phpunit/phpunit": "^7.0 || ^8.0 || ^9.0" + }, + "type": "library", + "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": "https://ocramius.github.io/" + } + ], + "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors", + "homepage": "https://www.doctrine-project.org/projects/instantiator.html", + "keywords": [ + "constructor", + "instantiate" + ], + "support": { + "issues": "https://github.com/doctrine/instantiator/issues", + "source": "https://github.com/doctrine/instantiator/tree/1.4.0" + }, + "funding": [ + { + "url": "https://www.doctrine-project.org/sponsorship.html", + "type": "custom" + }, + { + "url": "https://www.patreon.com/phpdoctrine", + "type": "patreon" + }, + { + "url": "https://tidelift.com/funding/github/packagist/doctrine%2Finstantiator", + "type": "tidelift" + } + ], + "time": "2020-11-10T18:47:58+00:00" + }, + { + "name": "guzzle/common", + "version": "v3.9.2", + "target-dir": "Guzzle/Common", + "source": { + "type": "git", + "url": "https://github.com/Guzzle3/common.git", + "reference": "2e36af7cf2ce3ea1f2d7c2831843b883a8e7b7dc" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Guzzle3/common/zipball/2e36af7cf2ce3ea1f2d7c2831843b883a8e7b7dc", + "reference": "2e36af7cf2ce3ea1f2d7c2831843b883a8e7b7dc", + "shasum": "" + }, + "require": { + "php": ">=5.3.2", + "symfony/event-dispatcher": ">=2.1" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.7-dev" + } + }, + "autoload": { + "psr-0": { + "Guzzle\\Common": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "Common libraries used by Guzzle", + "homepage": "http://guzzlephp.org/", + "keywords": [ + "collection", + "common", + "event", + "exception" + ], + "support": { + "source": "https://github.com/Guzzle3/common/tree/v3.9.2" + }, + "abandoned": "guzzle/guzzle", + "time": "2014-08-11T04:32:36+00:00" }, { - "name": "yoshi2889/collections", - "version": "v0.1.6", + "name": "guzzle/http", + "version": "v3.9.2", + "target-dir": "Guzzle/Http", "source": { "type": "git", - "url": "https://github.com/Yoshi2889/collections.git", - "reference": "32d9531f66584bfae51c09c7a505db1ce5a559b0" + "url": "https://github.com/Guzzle3/http.git", + "reference": "1e8dd1e2ba9dc42332396f39fbfab950b2301dc5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Yoshi2889/collections/zipball/32d9531f66584bfae51c09c7a505db1ce5a559b0", - "reference": "32d9531f66584bfae51c09c7a505db1ce5a559b0", + "url": "https://api.github.com/repos/Guzzle3/http/zipball/1e8dd1e2ba9dc42332396f39fbfab950b2301dc5", + "reference": "1e8dd1e2ba9dc42332396f39fbfab950b2301dc5", "shasum": "" }, "require": { - "evenement/evenement": "^3.0 || ^2.0", - "php": ">=7.0.0" - }, - "require-dev": { - "phpunit/phpunit": "^6.2" + "guzzle/common": "self.version", + "guzzle/parser": "self.version", + "guzzle/stream": "self.version", + "php": ">=5.3.2" }, "suggest": { - "yoshi2889/validation-closures": "Closures to use for validating data." + "ext-curl": "*" }, "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.7-dev" + } + }, "autoload": { - "psr-4": { - "Yoshi2889\\Collections\\": "src/" + "psr-0": { + "Guzzle\\Http": "" } }, "notification-url": "https://packagist.org/downloads/", @@ -9144,97 +9075,102 @@ ], "authors": [ { - "name": "Yoshi2889", - "email": "rick.2889@gmail.com", - "homepage": "https://nanosector.nl", - "role": "Lead Developer" + "name": "Michael Dowling", + "email": "mtdowling@gmail.com", + "homepage": "https://github.com/mtdowling" } ], - "description": "Simple Collection class allowing storage of specific data.", + "description": "HTTP libraries used by Guzzle", + "homepage": "http://guzzlephp.org/", + "keywords": [ + "Guzzle", + "client", + "curl", + "http", + "http client" + ], "support": { - "issues": "https://github.com/Yoshi2889/collections/issues", - "source": "https://github.com/Yoshi2889/collections/tree/master" + "source": "https://github.com/Guzzle3/http/tree/v3.9.2" }, - "time": "2017-08-27T19:19:15+00:00" + "abandoned": "guzzle/guzzle", + "time": "2014-08-11T04:32:36+00:00" }, { - "name": "yoshi2889/multipart-builder", - "version": "v0.1.1", + "name": "guzzle/parser", + "version": "v3.9.2", + "target-dir": "Guzzle/Parser", "source": { "type": "git", - "url": "https://github.com/Yoshi2889/multipart-builder.git", - "reference": "6b97bdfe0270d177dcd35370d5eea2c771198e31" + "url": "https://github.com/Guzzle3/parser.git", + "reference": "6874d171318a8e93eb6d224cf85e4678490b625c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Yoshi2889/multipart-builder/zipball/6b97bdfe0270d177dcd35370d5eea2c771198e31", - "reference": "6b97bdfe0270d177dcd35370d5eea2c771198e31", + "url": "https://api.github.com/repos/Guzzle3/parser/zipball/6874d171318a8e93eb6d224cf85e4678490b625c", + "reference": "6874d171318a8e93eb6d224cf85e4678490b625c", "shasum": "" }, "require": { - "php": ">=7.0.0", - "yoshi2889/collections": "^0.1" - }, - "require-dev": { - "phpunit/phpunit": "^6.3" + "php": ">=5.3.2" }, "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.7-dev" + } + }, "autoload": { - "psr-4": { - "MultipartBuilder\\": "src/" + "psr-0": { + "Guzzle\\Parser": "" } }, "notification-url": "https://packagist.org/downloads/", "license": [ "MIT" ], - "authors": [ - { - "name": "Yoshi2889", - "email": "rick.2889@gmail.com", - "homepage": "https://nanosector.nl", - "role": "Lead Developer" - } + "description": "Interchangeable parsers used by Guzzle", + "homepage": "http://guzzlephp.org/", + "keywords": [ + "URI Template", + "cookie", + "http", + "message", + "url" ], - "description": "Stream-independent RFC2388 compliant multipart form data builder.", "support": { - "issues": "https://github.com/Yoshi2889/multipart-builder/issues", - "source": "https://github.com/Yoshi2889/multipart-builder/tree/master" + "source": "https://github.com/Guzzle3/parser/tree/v3.9.2" }, - "time": "2017-08-27T20:19:33+00:00" - } - ], - "packages-dev": [ + "abandoned": "guzzle/guzzle", + "time": "2014-02-05T18:29:46+00:00" + }, { - "name": "doctrine/instantiator", - "version": "1.4.0", + "name": "guzzle/plugin-mock", + "version": "v3.9.2", + "target-dir": "Guzzle/Plugin/Mock", "source": { "type": "git", - "url": "https://github.com/doctrine/instantiator.git", - "reference": "d56bf6102915de5702778fe20f2de3b2fe570b5b" + "url": "https://github.com/Guzzle3/plugin-mock.git", + "reference": "36efdbf98fb3fbffb0942bc91fad749fbcffe0a6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/instantiator/zipball/d56bf6102915de5702778fe20f2de3b2fe570b5b", - "reference": "d56bf6102915de5702778fe20f2de3b2fe570b5b", + "url": "https://api.github.com/repos/Guzzle3/plugin-mock/zipball/36efdbf98fb3fbffb0942bc91fad749fbcffe0a6", + "reference": "36efdbf98fb3fbffb0942bc91fad749fbcffe0a6", "shasum": "" }, "require": { - "php": "^7.1 || ^8.0" - }, - "require-dev": { - "doctrine/coding-standard": "^8.0", - "ext-pdo": "*", - "ext-phar": "*", - "phpbench/phpbench": "^0.13 || 1.0.0-alpha2", - "phpstan/phpstan": "^0.12", - "phpstan/phpstan-phpunit": "^0.12", - "phpunit/phpunit": "^7.0 || ^8.0 || ^9.0" + "guzzle/http": "self.version", + "php": ">=5.3.2" }, "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.7-dev" + } + }, "autoload": { - "psr-4": { - "Doctrine\\Instantiator\\": "src/Doctrine/Instantiator/" + "psr-0": { + "Guzzle\\Plugin\\Mock": "" } }, "notification-url": "https://packagist.org/downloads/", @@ -9243,56 +9179,47 @@ ], "authors": [ { - "name": "Marco Pivetta", - "email": "ocramius@gmail.com", - "homepage": "https://ocramius.github.io/" + "name": "Michael Dowling", + "email": "mtdowling@gmail.com", + "homepage": "https://github.com/mtdowling" } ], - "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors", - "homepage": "https://www.doctrine-project.org/projects/instantiator.html", + "description": "Guzzle Mock plugin", + "homepage": "http://guzzlephp.org/", "keywords": [ - "constructor", - "instantiate" + "Guzzle", + "mock", + "plugin" ], "support": { - "issues": "https://github.com/doctrine/instantiator/issues", - "source": "https://github.com/doctrine/instantiator/tree/1.4.0" + "issues": "https://github.com/Guzzle3/plugin-mock/issues", + "source": "https://github.com/Guzzle3/plugin-mock/tree/v3.9.2" }, - "funding": [ - { - "url": "https://www.doctrine-project.org/sponsorship.html", - "type": "custom" - }, - { - "url": "https://www.patreon.com/phpdoctrine", - "type": "patreon" - }, - { - "url": "https://tidelift.com/funding/github/packagist/doctrine%2Finstantiator", - "type": "tidelift" - } - ], - "time": "2020-11-10T18:47:58+00:00" + "abandoned": "guzzle/guzzle", + "time": "2014-02-25T04:11:22+00:00" }, { - "name": "guzzle/plugin-mock", + "name": "guzzle/stream", "version": "v3.9.2", - "target-dir": "Guzzle/Plugin/Mock", + "target-dir": "Guzzle/Stream", "source": { "type": "git", - "url": "https://github.com/Guzzle3/plugin-mock.git", - "reference": "36efdbf98fb3fbffb0942bc91fad749fbcffe0a6" + "url": "https://github.com/Guzzle3/stream.git", + "reference": "60c7fed02e98d2c518dae8f97874c8f4622100f0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Guzzle3/plugin-mock/zipball/36efdbf98fb3fbffb0942bc91fad749fbcffe0a6", - "reference": "36efdbf98fb3fbffb0942bc91fad749fbcffe0a6", + "url": "https://api.github.com/repos/Guzzle3/stream/zipball/60c7fed02e98d2c518dae8f97874c8f4622100f0", + "reference": "60c7fed02e98d2c518dae8f97874c8f4622100f0", "shasum": "" }, "require": { - "guzzle/http": "self.version", + "guzzle/common": "self.version", "php": ">=5.3.2" }, + "suggest": { + "guzzle/http": "To convert Guzzle request objects to PHP streams" + }, "type": "library", "extra": { "branch-alias": { @@ -9301,7 +9228,7 @@ }, "autoload": { "psr-0": { - "Guzzle\\Plugin\\Mock": "" + "Guzzle\\Stream": "" } }, "notification-url": "https://packagist.org/downloads/", @@ -9315,19 +9242,18 @@ "homepage": "https://github.com/mtdowling" } ], - "description": "Guzzle Mock plugin", + "description": "Guzzle stream wrapper component", "homepage": "http://guzzlephp.org/", "keywords": [ "Guzzle", - "mock", - "plugin" + "component", + "stream" ], "support": { - "issues": "https://github.com/Guzzle3/plugin-mock/issues", - "source": "https://github.com/Guzzle3/plugin-mock/tree/v3.9.2" + "source": "https://github.com/Guzzle3/stream/tree/v3.9.2" }, "abandoned": "guzzle/guzzle", - "time": "2014-02-25T04:11:22+00:00" + "time": "2014-05-01T21:36:02+00:00" }, { "name": "myclabs/deep-copy", @@ -10022,16 +9948,16 @@ }, { "name": "phpunit/phpunit", - "version": "8.5.18", + "version": "8.5.20", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "bd5fc77c869e8dd65040dacbad170f074c13796c" + "reference": "9deefba183198398a09b927a6ac6bc1feb0b7b70" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/bd5fc77c869e8dd65040dacbad170f074c13796c", - "reference": "bd5fc77c869e8dd65040dacbad170f074c13796c", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/9deefba183198398a09b927a6ac6bc1feb0b7b70", + "reference": "9deefba183198398a09b927a6ac6bc1feb0b7b70", "shasum": "" }, "require": { @@ -10043,12 +9969,12 @@ "ext-xml": "*", "ext-xmlwriter": "*", "myclabs/deep-copy": "^1.10.0", - "phar-io/manifest": "^2.0.1", + "phar-io/manifest": "^2.0.3", "phar-io/version": "^3.0.2", "php": ">=7.2", "phpspec/prophecy": "^1.10.3", "phpunit/php-code-coverage": "^7.0.12", - "phpunit/php-file-iterator": "^2.0.2", + "phpunit/php-file-iterator": "^2.0.4", "phpunit/php-text-template": "^1.2.1", "phpunit/php-timer": "^2.1.2", "sebastian/comparator": "^3.0.2", @@ -10103,7 +10029,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/phpunit/issues", - "source": "https://github.com/sebastianbergmann/phpunit/tree/8.5.18" + "source": "https://github.com/sebastianbergmann/phpunit/tree/8.5.20" }, "funding": [ { @@ -10115,7 +10041,7 @@ "type": "github" } ], - "time": "2021-07-19T06:13:17+00:00" + "time": "2021-08-31T06:44:38+00:00" }, { "name": "sebastian/code-unit-reverse-lookup", @@ -10848,41 +10774,51 @@ "time": "2016-10-03T07:35:21+00:00" }, { - "name": "symfony/polyfill-ctype", - "version": "v1.23.0", + "name": "symfony/phpunit-bridge", + "version": "v5.3.7", "source": { "type": "git", - "url": "https://github.com/symfony/polyfill-ctype.git", - "reference": "46cd95797e9df938fdd2b03693b5fca5e64b01ce" + "url": "https://github.com/symfony/phpunit-bridge.git", + "reference": "2a1ff6e5a4521be1350bfce75784938e590d6342" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/46cd95797e9df938fdd2b03693b5fca5e64b01ce", - "reference": "46cd95797e9df938fdd2b03693b5fca5e64b01ce", + "url": "https://api.github.com/repos/symfony/phpunit-bridge/zipball/2a1ff6e5a4521be1350bfce75784938e590d6342", + "reference": "2a1ff6e5a4521be1350bfce75784938e590d6342", "shasum": "" }, "require": { - "php": ">=7.1" + "php": ">=7.1.3", + "symfony/deprecation-contracts": "^2.1" + }, + "conflict": { + "phpunit/phpunit": "<7.5|9.1.2" + }, + "require-dev": { + "symfony/error-handler": "^4.4|^5.0" }, "suggest": { - "ext-ctype": "For best performance" + "symfony/error-handler": "For tracking deprecated interfaces usages at runtime with DebugClassLoader" }, - "type": "library", + "bin": [ + "bin/simple-phpunit" + ], + "type": "symfony-bridge", "extra": { - "branch-alias": { - "dev-main": "1.23-dev" - }, "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" + "name": "phpunit/phpunit", + "url": "https://github.com/sebastianbergmann/phpunit" } }, "autoload": { - "psr-4": { - "Symfony\\Polyfill\\Ctype\\": "" - }, "files": [ "bootstrap.php" + ], + "psr-4": { + "Symfony\\Bridge\\PhpUnit\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" ] }, "notification-url": "https://packagist.org/downloads/", @@ -10891,24 +10827,18 @@ ], "authors": [ { - "name": "Gert de Pagter", - "email": "BackEndTea@gmail.com" + "name": "Nicolas Grekas", + "email": "p@tchwork.com" }, { "name": "Symfony Community", "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony polyfill for ctype functions", + "description": "Provides utilities for PHPUnit, especially user deprecation notices management", "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "ctype", - "polyfill", - "portable" - ], "support": { - "source": "https://github.com/symfony/polyfill-ctype/tree/v1.23.0" + "source": "https://github.com/symfony/phpunit-bridge/tree/v5.3.7" }, "funding": [ { @@ -10924,20 +10854,20 @@ "type": "tidelift" } ], - "time": "2021-02-19T12:13:01+00:00" + "time": "2021-08-26T13:36:50+00:00" }, { "name": "theseer/tokenizer", - "version": "1.2.0", + "version": "1.2.1", "source": { "type": "git", "url": "https://github.com/theseer/tokenizer.git", - "reference": "75a63c33a8577608444246075ea0af0d052e452a" + "reference": "34a41e998c2183e22995f158c581e7b5e755ab9e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/theseer/tokenizer/zipball/75a63c33a8577608444246075ea0af0d052e452a", - "reference": "75a63c33a8577608444246075ea0af0d052e452a", + "url": "https://api.github.com/repos/theseer/tokenizer/zipball/34a41e998c2183e22995f158c581e7b5e755ab9e", + "reference": "34a41e998c2183e22995f158c581e7b5e755ab9e", "shasum": "" }, "require": { @@ -10966,7 +10896,7 @@ "description": "A small library for converting tokenized PHP source code into XML and potentially other formats", "support": { "issues": "https://github.com/theseer/tokenizer/issues", - "source": "https://github.com/theseer/tokenizer/tree/master" + "source": "https://github.com/theseer/tokenizer/tree/1.2.1" }, "funding": [ { @@ -10974,7 +10904,7 @@ "type": "github" } ], - "time": "2020-07-12T23:59:07+00:00" + "time": "2021-07-28T10:34:58+00:00" }, { "name": "webmozart/assert", @@ -11049,11 +10979,14 @@ "php": "^7.4", "ext-curl": "*", "ext-dom": "*", + "ext-fileinfo": "*", "ext-gd": "*", + "ext-intl": "*", "ext-json": "*", "ext-mbstring": "*", "ext-openssl": "*", "ext-pdo": "*", + "ext-simplexml": "*", "ext-xml": "*" }, "platform-dev": [], diff --git a/db/migrations/20180627171755_goteo_callchecks.php b/db/migrations/20180627171755_goteo_callchecks.php index 8e7af496f5..151d53b550 100644 --- a/db/migrations/20180627171755_goteo_callchecks.php +++ b/db/migrations/20180627171755_goteo_callchecks.php @@ -53,7 +53,7 @@ public function getUpSQL() FOREIGN KEY (`id`) REFERENCES `call_check`(`id`) ON UPDATE CASCADE ON DELETE CASCADE ) ENGINE = InnoDB CHARACTER SET utf8 COLLATE utf8_general_ci; - CREATE TABLE `call_check_project`( `id` INT(10) NOT NULL AUTO_INCREMENT, `call_check` INT(10) UNSIGNED NOT NULL, `project` VARCHAR(50) CHARSET utf8 COLLATE utf8_general_ci NOT NULL, `response` TEXT, PRIMARY KEY (`id`), CONSTRAINT `call_check` FOREIGN KEY (`call_check`) REFERENCES `goteo`.`call_check`(`id`) ON UPDATE CASCADE ON DELETE CASCADE, CONSTRAINT `project` FOREIGN KEY (`project`) REFERENCES `goteo`.`project`(`id`) ON UPDATE CASCADE ON DELETE CASCADE ); + CREATE TABLE `call_check_project`( `id` INT(10) NOT NULL AUTO_INCREMENT, `call_check` INT(10) UNSIGNED NOT NULL, `project` VARCHAR(50) CHARSET utf8 COLLATE utf8_general_ci NOT NULL, `response` TEXT, PRIMARY KEY (`id`), CONSTRAINT `call_check` FOREIGN KEY (`call_check`) REFERENCES `call_check`(`id`) ON UPDATE CASCADE ON DELETE CASCADE, CONSTRAINT `project` FOREIGN KEY (`project`) REFERENCES `project`(`id`) ON UPDATE CASCADE ON DELETE CASCADE ); ALTER TABLE `call` ADD `intro_checks` TEXT NULL DEFAULT NULL COMMENT 'Intro checks in apply page'; diff --git a/db/migrations/init-v3.2.sql b/db/migrations/init-v3.2.sql index 221ffe41de..e04a81add3 100644 --- a/db/migrations/init-v3.2.sql +++ b/db/migrations/init-v3.2.sql @@ -862,6 +862,28 @@ CREATE TABLE `invest_location` ( CONSTRAINT `invest_location_ibfk_1` FOREIGN KEY (`id`) REFERENCES `invest` (`id`) ON DELETE CASCADE ON UPDATE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8; +/*Table structure for table `workshop_location` */ + +CREATE TABLE `workshop_location` ( + `id` bigint(20) unsigned NOT NULL, + `latitude` decimal(16,14) NOT NULL, + `longitude` decimal(16,14) NOT NULL, + `radius` smallint(6) unsigned NOT NULL DEFAULT '0', + `method` varchar(50) NOT NULL DEFAULT 'ip', + `locable` tinyint(1) NOT NULL DEFAULT '0', + `city` varchar(255) NOT NULL, + `region` varchar(255) NOT NULL, + `country` varchar(150) NOT NULL, + `country_code` varchar(2) NOT NULL, + `info` varchar(255) DEFAULT NULL, + `modified` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (`id`), + KEY `latitude` (`latitude`), + KEY `longitude` (`longitude`), + KEY `locable` (`locable`), + CONSTRAINT `workshop_location_ibfk_1` FOREIGN KEY (`id`) REFERENCES `invest` (`id`) ON DELETE CASCADE ON UPDATE CASCADE +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + /*Table structure for table `invest_msg` */ CREATE TABLE `invest_msg` ( diff --git a/docker/nginx/nginx.conf b/docker/nginx/nginx.conf index cdbd85242c..ea4f207308 100644 --- a/docker/nginx/nginx.conf +++ b/docker/nginx/nginx.conf @@ -15,12 +15,12 @@ server { root /application/.tmp; - rewrite ^/index_dev\.php/?(.*)$ /$1 permanent; + rewrite ^/index\.php/?(.*)$ /$1 permanent; try_files $uri @rewriteapp; location @rewriteapp { - rewrite ^(.*)$ /index_dev.php/$1 last; + rewrite ^(.*)$ /index.php/$1 last; } # Deny all . files @@ -28,7 +28,7 @@ server { deny all; } - location ~ ^/(index_dev)\.php(/|$) { + location ~ ^/(index)\.php(/|$) { fastcgi_pass php:9000; fastcgi_split_path_info ^(.+\.php)(/.*)$; fastcgi_index index.php; diff --git a/docker/php/Dockerfile b/docker/php/Dockerfile index 148b5a212a..8470723e03 100644 --- a/docker/php/Dockerfile +++ b/docker/php/Dockerfile @@ -19,6 +19,7 @@ RUN apt-key update RUN export DEBIAN_FRONTEND=noninteractive \ && apt-get update \ && apt-get -y --no-install-recommends install php${PHP_VERSION}-fpm php${PHP_VERSION}-zip php${PHP_VERSION}-xdebug \ + && apt-get -y --no-install-recommends install php${PHP_VERSION}-intl \ && apt-get -y --no-install-recommends install php${PHP_VERSION}-mysql php${PHP_VERSION}-gd php${PHP_VERSION}-xml \ && apt-get -y --no-install-recommends install php${PHP_VERSION}-curl php${PHP_VERSION}-dom php${PHP_VERSION}-json \ && apt-get -y --no-install-recommends install php${PHP_VERSION}-memcached php${PHP_VERSION}-mbstring php${PHP_VERSION}-readline \ diff --git a/docker/php/init.sh b/docker/php/init.sh index 6b176e0780..53240329ed 100755 --- a/docker/php/init.sh +++ b/docker/php/init.sh @@ -90,7 +90,7 @@ if [ "$DEBUG" = false ] || [ "$DEBUG" = 0 ]; then fi # Mock .tmp as dist minimized folder gosu goteo rsync -a --delete ./dist/ ./.tmp/ - gosu goteo cp -af ./dist/index.php ./.tmp/index_dev.php + gosu goteo cp -af ./dist/index.php ./.tmp/index.php echo -e "\e[33m Pointing nginx server as PRODUCTION (index.php)" else gosu goteo grunt build:tmp diff --git a/docs/INSTALL.md b/docs/INSTALL.md index e366c37a45..5a79be46c1 100644 --- a/docs/INSTALL.md +++ b/docs/INSTALL.md @@ -36,7 +36,7 @@ Server requirements > npm install > ``` > -> Create and edit your confinguration: +> Create and edit your configuration: > > ```bash > cp config/demo-settings.yml config/settings.yml diff --git a/docs/developers/DOCKER.md b/docs/developers/DOCKER.md index 721d58f005..ea760ae79e 100644 --- a/docs/developers/DOCKER.md +++ b/docs/developers/DOCKER.md @@ -121,7 +121,6 @@ git pull origin devel docker/up --rebuild ``` - ### SSL configuration The Docker image comes with (experimental) support for SSL. However, to use it you need to: @@ -129,9 +128,9 @@ The Docker image comes with (experimental) support for SSL. However, to use it y 1. Use a **test domain** supported by the certificate and configure your `/etc/hosts` to point it to your machine, for example `goteo.test`. Add a line to your `/etc/hosts` file like this: - ```ini - 127.0.0.1 localhost goteo.test www.goteo.test ca.goteo.test en.goteo.test es.goteo.test - ``` +``` +127.0.0.1 localhost goteo.test www.goteo.test ca.goteo.test en.goteo.test es.goteo.test +``` 2. Change the URL in your `local-docker-settings.yml` settings file, use `//goteo.test:8443` instead of `localhost:8081`. Something like: diff --git a/extend/goteo-bot/src/GoteoBot/Application/EventListener/BotControllerListener.php b/extend/goteo-bot/src/GoteoBot/Application/EventListener/BotControllerListener.php index 539b7d282d..cddc29b00c 100644 --- a/extend/goteo-bot/src/GoteoBot/Application/EventListener/BotControllerListener.php +++ b/extend/goteo-bot/src/GoteoBot/Application/EventListener/BotControllerListener.php @@ -2,32 +2,25 @@ namespace GoteoBot\Application\EventListener; -use Symfony\Component\EventDispatcher\EventSubscriberInterface; -use Symfony\Component\HttpKernel\KernelEvents; -use Symfony\Component\HttpKernel\Event\FilterControllerEvent; - -use Goteo\Model\Project; -use Goteo\Model\Project\ProjectMilestone; -use Goteo\Model\Event; -use Goteo\Model\Milestone; -use Goteo\Model\Image; use Goteo\Application\AppEvents; -use Goteo\Console\ConsoleEvents; use Goteo\Application\Event\FilterInvestRequestEvent; - -use GoteoBot\Model\ProjectBot; -use GoteoBot\Model\Bot\TelegramBot; -use GoteoBot\Controller\BotProjectDashboardController; - use Goteo\Application\Exception\DuplicatedEventException; +use Goteo\Console\ConsoleEvents; use Goteo\Console\Event\FilterProjectEvent; -use Goteo\Model\Contract\Document; -use Spipu\Html2Pdf\Html2Pdf; +use Goteo\Model\Event; +use Goteo\Model\Milestone; +use Goteo\Model\Project; +use Goteo\Model\Project\ProjectMilestone; +use GoteoBot\Controller\BotProjectDashboardController; +use GoteoBot\Model\Bot\TelegramBot; +use GoteoBot\Model\ProjectBot; +use Symfony\Component\EventDispatcher\EventSubscriberInterface; +use Symfony\Component\HttpKernel\Event\FilterControllerEvent; +use Symfony\Component\HttpKernel\KernelEvents; class BotControllerListener implements EventSubscriberInterface { - public function onController(FilterControllerEvent $event) { $request = $event->getRequest(); $controller = $request->attributes->get('_controller'); @@ -43,30 +36,26 @@ public function onController(FilterControllerEvent $event) { $pid = $request->attributes->get('pid'); if(!$pid) return; BotProjectDashboardController::createBotSidebar(Project::get($pid)); - } - } private function create_milestone($project, $type){ //Insert milestone $projectBot = ProjectBot::get($project->id); if (!$projectBot) return; - + $project_milestone= new ProjectMilestone(); $project_milestone->project=$project->id; $project_milestone->milestone_type=$type; $project_milestone->source_message='bot_message'; - try { $action = [$project->id, 'milestone-day-bot', $type]; $event = new Event($action, 'milestone'); } catch(DuplicatedEventException $e) { - // $this->warning('Duplicated event', ['action' => $e->getMessage(), $project, 'event' => "milestone:$type"]); return; } - + $event->fire(function() use ($project_milestone) { $project_milestone->save($errors); }); @@ -104,7 +93,6 @@ public function onProjectActive(FilterProjectEvent $event) { $type = 'day-'.$event->getDays(); if ($event->getDays() == 2) { - //Milestones by percentage $percentage = $project->mincost ? ($project->invested / $project->mincost) * 100 : 0; @@ -118,7 +106,6 @@ public function onProjectActive(FilterProjectEvent $event) { $this->create_milestone($project, $type); } - /** * Sends a reminder to the owners that they have to accomplish with the collective returns * @param FilterProjectEvent $event @@ -130,7 +117,6 @@ public function onInvestSucceeded(FilterInvestRequestEvent $event) { $invest = $method->getInvest(); $project = $invest->getProject(); - //Milestones by percentage $percentage = $project->mincost ? ($project->invested / $project->mincost) * 100 : 0; @@ -153,7 +139,7 @@ public function onInvestSucceeded(FilterInvestRequestEvent $event) { public function onProjectPublish(FilterProjectEvent $event) { $project = $event->getProject(); - + $type = 'on-publish'; $this->create_milestone($project, $type); @@ -167,8 +153,6 @@ public static function getSubscribedEvents() ConsoleEvents::PROJECT_ACTIVE => 'onProjectActive', ConsoleEvents::PROJECT_PUBLISH => 'onProjectPublish', AppEvents::PROJECT_PUBLISH => 'onProjectPublish' - ); } } - diff --git a/extend/goteo-bot/src/GoteoBot/Model/Bot/TelegramBot.php b/extend/goteo-bot/src/GoteoBot/Model/Bot/TelegramBot.php index d78e2add16..847ec66bf1 100644 --- a/extend/goteo-bot/src/GoteoBot/Model/Bot/TelegramBot.php +++ b/extend/goteo-bot/src/GoteoBot/Model/Bot/TelegramBot.php @@ -10,32 +10,33 @@ namespace GoteoBot\Model\Bot; -use \React\EventLoop\Factory; -use \unreal4u\TelegramAPI\HttpClientRequestHandler; -use \unreal4u\TelegramAPI\TgLog; -use \unreal4u\TelegramAPI\Telegram\Methods\SendMessage; -use \unreal4u\TelegramAPI\Telegram\Methods\SendPhoto; -use \unreal4u\TelegramAPI\Telegram\Methods\SetWebhook; -use unreal4u\TelegramAPI\Telegram\Methods\SendAnimation; -use unreal4u\TelegramAPI\Telegram\Methods\SendDocument; - +use Exception; use Goteo\Application\Config; -use Goteo\Model\Image; +use Goteo\Application\Config\ConfigException; use Goteo\Application\Message; -use Goteo\Model\Contract\Document; +use GoteoBot\Model\Bot; +use React\EventLoop\Loop; +use React\EventLoop\LoopInterface; +use unreal4u\TelegramAPI\HttpClientRequestHandler; +use unreal4u\TelegramAPI\RequestHandlerInterface; +use unreal4u\TelegramAPI\Telegram\Methods\SendAnimation; +use unreal4u\TelegramAPI\Telegram\Methods\SendDocument; +use unreal4u\TelegramAPI\Telegram\Methods\SendMessage; +use unreal4u\TelegramAPI\Telegram\Methods\SendPhoto; +use unreal4u\TelegramAPI\Telegram\Methods\SetWebhook; +use unreal4u\TelegramAPI\TgLog; -Class TelegramBot implements \GoteoBot\Model\Bot { +Class TelegramBot implements Bot { const PLATFORM = "telegram"; const URL = "t.me"; - private - $loop, - $handler, - $tgLog; + private LoopInterface $loop; + private RequestHandlerInterface $handler; + private TgLog $tgLog; public function createBot() { - $this->loop = Factory::create(); + $this->loop = Loop::get(); $this->handler = new HttpClientRequestHandler($this->loop); try { $this->tgLog = new TgLog(Config::get('bot.telegram.token'), $this->handler); @@ -71,7 +72,7 @@ public function sendAnimation($chatId, $animation, $caption) { $result->then( function ($response) { }, - function (\Exception $exception) use ($sendAnimation) { + function (Exception $exception) use ($sendAnimation) { Message::error('Exception ' . get_class($exception) . ' caught, message: ' . $exception->getMessage().PHP_EOL . " - " . $sendAnimation->animation); } ); @@ -88,7 +89,7 @@ public function sendDocument($chatId, $document, $caption) { $result->then( function ($response) { }, - function (\Exception $exception) use ($sendDocument) { + function (Exception $exception) use ($sendDocument) { Message::error('Exception ' . get_class($exception) . ' caught, message: ' . $exception->getMessage().PHP_EOL . " - " . $sendDocument->document); } ); diff --git a/extend/goteo-dev/src/Goteodev/Application/EventListener/LiveReloadListener.php b/extend/goteo-dev/src/Goteodev/Application/EventListener/LiveReloadListener.php index 59eea89a74..a7db30fb8e 100644 --- a/extend/goteo-dev/src/Goteodev/Application/EventListener/LiveReloadListener.php +++ b/extend/goteo-dev/src/Goteodev/Application/EventListener/LiveReloadListener.php @@ -13,7 +13,6 @@ use Symfony\Component\EventDispatcher\EventSubscriberInterface; use Symfony\Component\HttpKernel\KernelEvents; use Symfony\Component\HttpKernel\Event\FilterResponseEvent; -use Symfony\Component\HttpFoundation\Response; use Goteo\Application\Config; use Goteo\Application\App; @@ -33,7 +32,6 @@ public function onKernelResponse(FilterResponseEvent $event) { if(!App::debug()) return; $port = Config::get('plugins.goteo-dev.liveport'); - // if(empty($port)) $port = 35729; if(empty($port)) return; diff --git a/extend/goteo-dev/src/Goteodev/Application/EventListener/MockListener.php b/extend/goteo-dev/src/Goteodev/Application/EventListener/MockListener.php index 5d5c2796df..886783c87c 100644 --- a/extend/goteo-dev/src/Goteodev/Application/EventListener/MockListener.php +++ b/extend/goteo-dev/src/Goteodev/Application/EventListener/MockListener.php @@ -13,7 +13,6 @@ use Symfony\Component\EventDispatcher\EventSubscriberInterface; use Symfony\Component\HttpKernel\KernelEvents; use Symfony\Component\HttpKernel\Event\GetResponseEvent; -use Symfony\Component\HttpFoundation\Response; use Goteo\Application\Config; use Goteo\Application\App; @@ -38,7 +37,7 @@ public function onKernelRequest(GetResponseEvent $event) { } } - public static function getSubscribedEvents() + public static function getSubscribedEvents(): array { return array( // Events with high priority diff --git a/extend/goteo-dev/src/Goteodev/Payment/DummyPaymentMethod.php b/extend/goteo-dev/src/Goteodev/Payment/DummyPaymentMethod.php index 159431b9cd..92944aa624 100644 --- a/extend/goteo-dev/src/Goteodev/Payment/DummyPaymentMethod.php +++ b/extend/goteo-dev/src/Goteodev/Payment/DummyPaymentMethod.php @@ -27,21 +27,26 @@ * Does not use Omnipay */ class DummyPaymentMethod extends AbstractPaymentMethod { + private $simulating_gateway = false; - public function getGatewayName() { + public function getGatewayName(): string + { return 'Dummy'; } - public function getName() { + public function getName(): string + { return 'Dummy Payment'; } - public function getDesc() { + public function getDesc(): string + { return 'Not really a payment, just for testing'; } - public function getIcon() { + public function getIcon(): string + { return SRC_URL . '/assets/img/pay/cash.png'; } @@ -92,28 +97,28 @@ public function getDefaultHttpResponse(ResponseInterface $response) { )); } - public function purchase() { + public function purchase(): ResponseInterface + { $this->simulating_gateway = true; return new EmptyFailedResponse(); } - public function completePurchase() { - - // Let's obtain the gateway and the + public function completePurchase(): ResponseInterface + { $gateway = $this->getGateway(); $gateway->setCurrency(Currency::getDefault('id')); $request = $this->getRequest(); $invest = $this->getInvest(); $payment = $gateway->purchase([ - 'amount' => (float) $this->getTotalAmount(), - 'card' => [ - 'number' => $request->request->get('number'), - 'expiryMonth' => '12', - 'expiryYear' => date('Y'), - ], - 'description' => $this->getInvestDescription(), - 'returnUrl' => $this->getCompleteUrl(), - 'cancelUrl' => $this->getCompleteUrl(), + 'amount' => (float) $this->getTotalAmount(), + 'card' => [ + 'number' => $request->request->get('number'), + 'expiryMonth' => '12', + 'expiryYear' => date('Y'), + ], + 'description' => $this->getInvestDescription(), + 'returnUrl' => $this->getCompleteUrl(), + 'cancelUrl' => $this->getCompleteUrl(), ]); // set the dummy card as payment detail data $invest->setPayment($request->request->get('number')); @@ -121,12 +126,13 @@ public function completePurchase() { return $payment->send(); } - public function refundable() { + public function refundable(): bool + { return true; } - public function refund() { - + public function refund(): EmptySuccessfulResponse + { $invest=$this->getInvest(); $invest->amount+=$this->getTotalAmount(); @@ -135,13 +141,13 @@ public function refund() { return new EmptySuccessfulResponse(); } - + /** * Internal payments does not increased raised amounts * (pool) - * @return boolean */ - static public function isInternal() { + public function isInternal(): bool + { return true; } } diff --git a/extend/goteo-dev/src/Goteodev/Profiler/EventListener/ProfilerListener.php b/extend/goteo-dev/src/Goteodev/Profiler/EventListener/ProfilerListener.php index 7b852612d4..57974779de 100644 --- a/extend/goteo-dev/src/Goteodev/Profiler/EventListener/ProfilerListener.php +++ b/extend/goteo-dev/src/Goteodev/Profiler/EventListener/ProfilerListener.php @@ -13,7 +13,6 @@ use Symfony\Component\EventDispatcher\EventSubscriberInterface; use Symfony\Component\HttpKernel\KernelEvents; use Symfony\Component\HttpKernel\Event; -use Symfony\Component\HttpFoundation\Response; use Symfony\Component\HttpFoundation\StreamedResponse; use Goteodev\Profiler\DebugProfiler; @@ -29,10 +28,6 @@ public function onKernelController(Event\FilterControllerEvent $event) { DebugProfiler::addEvent($event); } - // public function onKernelView(Event\GetResponseForControllerResultEvent $event) { - // DebugProfiler::addEvent($event); - // } - public function onKernelResponse(Event\FilterResponseEvent $event) { DebugProfiler::addEvent($event); $response = $event->getResponse(); @@ -86,7 +81,7 @@ public function onKernelException(Event\GetResponseForExceptionEvent $event) { } - public static function getSubscribedEvents() + public static function getSubscribedEvents(): array { return array( // kernel.request must be registered as early as possible to not break @@ -95,8 +90,6 @@ public static function getSubscribedEvents() // Others events with low priority KernelEvents::CONTROLLER => array('onKernelController', -100), KernelEvents::RESPONSE => array('onKernelResponse', -512), - // KernelEvents::EXCEPTION => array('onKernelException', 512), - // KernelEvents::TERMINATE => array('onKernelTerminate', -512), ); } } diff --git a/extend/goteo-dev/start.php b/extend/goteo-dev/start.php index e2c7ecccc1..53932c9498 100644 --- a/extend/goteo-dev/start.php +++ b/extend/goteo-dev/start.php @@ -8,16 +8,14 @@ * and LICENSE files that was distributed with this source code. */ -use Symfony\Component\Routing\Route; -use Symfony\Component\Routing\RouteCollection; -use Symfony\Component\DependencyInjection\Reference; - use Goteo\Application\App; -use Goteo\Console\Console; use Goteo\Application\Config; -use Goteodev\Console\Command\StatusInitCommand; +use Goteo\Console\Console; +use Goteo\Payment\Payment; use Goteodev\Console\Command\CrowdinCommand; - +use Goteodev\Console\Command\StatusInitCommand; +use Goteodev\Payment\DummyPaymentMethod; +use Symfony\Component\DependencyInjection\Reference; // Autoload additional Classes @@ -38,18 +36,9 @@ $sc->getDefinition('dispatcher')->addMethodCall('addSubscriber', array(new Reference('dev.listener.dev_mocks'))); } -// Adding Routes: - $routes = App::getRoutes(); -// $routes->add('some-identifier', new Route( -// '/some/route', -// array('_controller' => 'Goteodev\Controller\SomeController::someAction') -// )); - +Payment::addMethod(DummyPaymentMethod::class); -// Adding payment method -\Goteo\Payment\Payment::addMethod('Goteodev\Payment\DummyPaymentMethod'); -// add usefull testing commands Console::add(new StatusInitCommand()); Console::add(new CrowdinCommand()); diff --git a/extend/invest-return/src/Goteo/EventListener/InvestStatusChangerListener.php b/extend/invest-return/src/Goteo/EventListener/InvestStatusChangerListener.php index e34c782c5c..aa66c2ce18 100644 --- a/extend/invest-return/src/Goteo/EventListener/InvestStatusChangerListener.php +++ b/extend/invest-return/src/Goteo/EventListener/InvestStatusChangerListener.php @@ -2,34 +2,21 @@ namespace Goteo\EventListener; -use Symfony\Component\EventDispatcher\EventSubscriberInterface; -use Symfony\Component\HttpKernel\KernelEvents; -use Symfony\Component\HttpKernel\Event\FilterControllerEvent; -use Symfony\Component\HttpKernel\Event\FilterResponseEvent; -use Symfony\Component\HttpFoundation\Response; -use Symfony\Component\HttpFoundation\RedirectResponse; - -use Goteo\Model\Invest; - -use Goteo\Application\AppEvents; -use Goteo\Application\Session; -use Goteo\Application\Exception\ModelException; -use Goteo\Application\Exception\ModelNotFoundException; -use Goteo\Application\Event\FilterInvestFinishEvent; -use Goteo\Application\Event\FilterInvestRequestEvent; -use Goteo\Application\Event\FilterInvestEvent; -use Goteo\Application\Event\FilterInvestModifyEvent; -use Goteo\Application\View; +use Goteo\Application\EventListener\AbstractListener; use Goteo\Application\Message; -use Goteo\Application\Config; +use Goteo\Application\Session; +use Goteo\Controller\InvestController; +use Goteo\Controller\InvestRecoverController; use Goteo\Library\Text; -use Goteo\Payment\PaymentException; +use Goteo\Model\Invest; +use Symfony\Component\HttpFoundation\RedirectResponse; +use Symfony\Component\HttpKernel\Event\FilterControllerEvent; +use Symfony\Component\HttpKernel\KernelEvents; // -class InvestStatusChangerListener extends \Goteo\Application\EventListener\AbstractListener { +class InvestStatusChangerListener extends AbstractListener { private $ok = false; - // añadiendo custom variables public function onController(FilterControllerEvent $event) { //not need to do anything on sub-requests @@ -39,13 +26,10 @@ public function onController(FilterControllerEvent $event) { $controller = $event->getController(); $invest = Session::get('recover-invest'); - // if(!$invest) return; - // if($invest->isReturned()) { - // return; - // } + if( !is_array($controller) ) return; - if( $controller[0] instanceOf \Goteo\Controller\InvestController){ + if( $controller[0] instanceOf InvestController){ if(!$invest) return; $user = $invest->getUser(); @@ -85,7 +69,6 @@ public function onController(FilterControllerEvent $event) { return; } elseif($controller[1] === 'selectPaymentMethodAction') { - // print_r($controller);die; if(Session::getUserId() !== $user->id) { if(Session::isLogged()) { Session::store('recover-old-user', Session::getUser()); @@ -99,10 +82,7 @@ public function onController(FilterControllerEvent $event) { if($reward = $invest->getFirstReward()) { Message::info(Text::get('invest-return-reward', $reward->reward)); } - // print_r($invest); - // print_r($controller);die; - } elseif( ! $controller[0] instanceOf \Goteo\Controller\InvestRecoverController) { - // print_r($controller);die("out of {$invest->id}"); + } elseif( ! $controller[0] instanceOf InvestRecoverController) { // Out of invest scope remove the session if($old = Session::get('recover-old-user')) { Session::setUser($old); @@ -111,10 +91,9 @@ public function onController(FilterControllerEvent $event) { } Session::del('recover-old-user'); } - } - public static function getSubscribedEvents() + public static function getSubscribedEvents(): array { return array( KernelEvents::CONTROLLER => 'onController' diff --git a/package-lock.json b/package-lock.json index bf4268fe11..6d40932a7d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -7,7 +7,7 @@ "abbrev": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", + "integrity": "sha1-+PLIh60Qv2f2NPAFtph/7TF5qsg=", "dev": true }, "ansi-gray": { @@ -46,16 +46,16 @@ "dev": true, "optional": true, "requires": { - "file-type": "3.9.0" + "file-type": "^3.1.0" } }, "argparse": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "integrity": "sha1-vNZ5HqWuCXJeF+WtmIE0zUCz2RE=", "dev": true, "requires": { - "sprintf-js": "1.0.3" + "sprintf-js": "~1.0.2" } }, "arr-diff": { @@ -64,13 +64,13 @@ "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=", "dev": true, "requires": { - "arr-flatten": "1.1.0" + "arr-flatten": "^1.0.1" } }, "arr-flatten": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", - "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", + "integrity": "sha1-NgSLv/TntH4TZkQxbJlmnqWukfE=", "dev": true }, "array-differ": { @@ -102,7 +102,7 @@ "async": { "version": "1.5.2", "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", - "integrity": "sha512-nSVgobk4rv61R9PUSDtYt7mPVB2olxNR5RWJcAsH676/ef11bUZwvu7+RGYrYauVdDPcO519v68wRhXQtxsV9w==", + "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=", "dev": true }, "async-each-series": { @@ -141,13 +141,13 @@ "dev": true, "optional": true, "requires": { - "archive-type": "3.2.0", - "decompress": "3.0.0", - "download": "4.4.3", - "exec-series": "1.0.3", - "rimraf": "2.6.3", - "tempfile": "1.1.1", - "url-regex": "3.2.0" + "archive-type": "^3.0.1", + "decompress": "^3.0.0", + "download": "^4.1.2", + "exec-series": "^1.0.0", + "rimraf": "^2.2.6", + "tempfile": "^1.0.0", + "url-regex": "^3.0.0" } }, "bin-check": { @@ -157,7 +157,7 @@ "dev": true, "optional": true, "requires": { - "executable": "1.1.0" + "executable": "^1.0.0" } }, "bin-version": { @@ -167,7 +167,7 @@ "dev": true, "optional": true, "requires": { - "find-versions": "1.2.1" + "find-versions": "^1.0.0" } }, "bin-version-check": { @@ -177,10 +177,10 @@ "dev": true, "optional": true, "requires": { - "bin-version": "1.0.4", - "minimist": "1.2.0", - "semver": "4.3.6", - "semver-truncate": "1.1.2" + "bin-version": "^1.0.0", + "minimist": "^1.1.0", + "semver": "^4.0.3", + "semver-truncate": "^1.0.0" }, "dependencies": { "semver": { @@ -199,12 +199,12 @@ "dev": true, "optional": true, "requires": { - "bin-check": "2.0.0", - "bin-version-check": "2.1.0", - "download": "4.4.3", - "each-async": "1.1.1", - "lazy-req": "1.1.0", - "os-filter-obj": "1.0.3" + "bin-check": "^2.0.0", + "bin-version-check": "^2.1.0", + "download": "^4.0.0", + "each-async": "^1.1.1", + "lazy-req": "^1.0.0", + "os-filter-obj": "^1.0.0" } }, "bl": { @@ -214,8 +214,8 @@ "dev": true, "optional": true, "requires": { - "readable-stream": "2.3.6", - "safe-buffer": "5.1.2" + "readable-stream": "^2.3.5", + "safe-buffer": "^5.1.1" } }, "body": { @@ -224,19 +224,19 @@ "integrity": "sha1-5LoM5BCkaTYyM2dgnstOZVMSUGk=", "dev": true, "requires": { - "continuable-cache": "0.3.1", - "error": "7.0.2", - "raw-body": "1.1.7", - "safe-json-parse": "1.0.1" + "continuable-cache": "^0.3.1", + "error": "^7.0.0", + "raw-body": "~1.1.0", + "safe-json-parse": "~1.0.1" } }, "brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "integrity": "sha1-PH/L9SnYcibz0vUrlm/1Jx60Qd0=", "dev": true, "requires": { - "balanced-match": "1.0.0", + "balanced-match": "^1.0.0", "concat-map": "0.0.1" } }, @@ -246,9 +246,9 @@ "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=", "dev": true, "requires": { - "expand-range": "1.8.2", - "preserve": "0.2.0", - "repeat-element": "1.1.3" + "expand-range": "^1.8.1", + "preserve": "^0.2.0", + "repeat-element": "^1.1.2" } }, "browserify-zlib": { @@ -257,24 +257,24 @@ "integrity": "sha1-uzX4pRn2AOD6a4SFJByXnQFB+y0=", "dev": true, "requires": { - "pako": "0.2.9" + "pako": "~0.2.0" } }, "buffer-alloc": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/buffer-alloc/-/buffer-alloc-1.2.0.tgz", - "integrity": "sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==", + "integrity": "sha1-iQ3ZDZI6hz4I4Q5f1RpX5bfM4Ow=", "dev": true, "optional": true, "requires": { - "buffer-alloc-unsafe": "1.1.0", - "buffer-fill": "1.0.0" + "buffer-alloc-unsafe": "^1.1.0", + "buffer-fill": "^1.0.0" } }, "buffer-alloc-unsafe": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz", - "integrity": "sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==", + "integrity": "sha1-vX3CauKXLQ7aJTvgYdupkjScGfA=", "dev": true, "optional": true }, @@ -295,7 +295,7 @@ "buffer-from": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", - "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", + "integrity": "sha1-MnE7wCj3XAL9txDXx7zsHyxgcO8=", "dev": true }, "buffer-to-vinyl": { @@ -304,10 +304,10 @@ "integrity": "sha1-APFfruOreh3aLN5tkSG//dB7ImI=", "dev": true, "requires": { - "file-type": "3.9.0", - "readable-stream": "2.3.6", - "uuid": "2.0.3", - "vinyl": "1.2.0" + "file-type": "^3.1.0", + "readable-stream": "^2.0.2", + "uuid": "^2.0.1", + "vinyl": "^1.0.0" } }, "bytes": { @@ -322,10 +322,10 @@ "integrity": "sha1-HFQaoQilAQb2ML3Zj+HeyLoTP1E=", "dev": true, "requires": { - "graceful-fs": "4.1.15", - "mkdirp": "0.5.1", - "object-assign": "4.1.1", - "rimraf": "2.6.3" + "graceful-fs": "^4.1.2", + "mkdirp": "^0.5.1", + "object-assign": "^4.0.1", + "rimraf": "^2.4.0" } }, "camelcase": { @@ -340,14 +340,14 @@ "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", "dev": true, "requires": { - "camelcase": "2.1.1", - "map-obj": "1.0.1" + "camelcase": "^2.0.0", + "map-obj": "^1.0.0" } }, "capture-stack-trace": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/capture-stack-trace/-/capture-stack-trace-1.0.1.tgz", - "integrity": "sha512-mYQLZnx5Qt1JgB1WEiMCf2647plpGeQ2NMR/5L0HNZzGQo4fuSPnK+wjfPnKZV0aiJDgzmWqqkV/g7JD+DW0qw==", + "integrity": "sha1-psC74fOPOqC5Ijjstv9Cw0TUE10=", "dev": true, "optional": true }, @@ -358,10 +358,10 @@ "dev": true, "optional": true, "requires": { - "get-proxy": "1.1.0", - "is-obj": "1.0.1", - "object-assign": "3.0.0", - "tunnel-agent": "0.4.3" + "get-proxy": "^1.0.1", + "is-obj": "^1.0.0", + "object-assign": "^3.0.0", + "tunnel-agent": "^0.4.0" }, "dependencies": { "object-assign": { @@ -379,11 +379,11 @@ "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "dev": true, "requires": { - "ansi-styles": "2.2.1", - "escape-string-regexp": "1.0.5", - "has-ansi": "2.0.0", - "strip-ansi": "3.0.1", - "supports-color": "2.0.0" + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" }, "dependencies": { "ansi-regex": { @@ -398,7 +398,7 @@ "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "dev": true, "requires": { - "ansi-regex": "2.1.1" + "ansi-regex": "^2.0.0" } } } @@ -406,11 +406,11 @@ "clap": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/clap/-/clap-1.2.3.tgz", - "integrity": "sha512-4CoL/A3hf90V3VIEjeuhSvlGFEHKzOz+Wfc2IVZc+FaUgU0ZQafJTP49fvnULipOPcAfqhyI2duwQyns6xqjYA==", + "integrity": "sha1-TzZ0WzIAhJJVf0ZBLWbVDLmbzlE=", "dev": true, "optional": true, "requires": { - "chalk": "1.1.3" + "chalk": "^1.1.3" } }, "cli": { @@ -420,7 +420,7 @@ "dev": true, "requires": { "exit": "0.1.2", - "glob": "7.1.4" + "glob": "^7.1.1" }, "dependencies": { "glob": { @@ -429,12 +429,12 @@ "integrity": "sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A==", "dev": true, "requires": { - "fs.realpath": "1.0.0", - "inflight": "1.0.6", - "inherits": "2.0.3", - "minimatch": "3.0.4", - "once": "1.4.0", - "path-is-absolute": "1.0.1" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" } } } @@ -465,7 +465,7 @@ "dev": true, "optional": true, "requires": { - "q": "1.5.1" + "q": "^1.1.2" } }, "coffeescript": { @@ -477,7 +477,7 @@ "color-convert": { "version": "1.9.3", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "integrity": "sha1-u3GFBpDh8TZWfeYp0tVHHe2kweg=", "dev": true, "requires": { "color-name": "1.1.3" @@ -492,7 +492,7 @@ "color-support": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", - "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", + "integrity": "sha1-k4NDeaHMmgxh+C9S8NBDIiUb1aI=", "dev": true, "optional": true }, @@ -515,7 +515,7 @@ "dev": true, "optional": true, "requires": { - "graceful-readlink": "1.0.1" + "graceful-readlink": ">= 1.0.0" } }, "concat-map": { @@ -527,13 +527,13 @@ "concat-stream": { "version": "1.6.2", "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", - "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", + "integrity": "sha1-kEvfGUzTEi/Gdcd/xKw9T/D9GjQ=", "dev": true, "requires": { - "buffer-from": "1.1.1", - "inherits": "2.0.3", - "readable-stream": "2.3.6", - "typedarray": "0.0.6" + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" } }, "console-browserify": { @@ -542,7 +542,7 @@ "integrity": "sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA=", "dev": true, "requires": { - "date-now": "0.1.4" + "date-now": "^0.1.4" } }, "console-stream": { @@ -564,7 +564,7 @@ "integrity": "sha512-eFu7XigvxdZ1ETfbgPBohgyQ/Z++C0eEhTor0qRwBw9unw+L0/6V8wkSuGgzdThkiS5lSpdptOQPD8Ak40a+7A==", "dev": true, "requires": { - "safe-buffer": "5.1.2" + "safe-buffer": "~5.1.1" } }, "core-util-is": { @@ -580,7 +580,7 @@ "dev": true, "optional": true, "requires": { - "capture-stack-trace": "1.0.1" + "capture-stack-trace": "^1.0.0" } }, "cross-spawn": { @@ -589,7 +589,7 @@ "integrity": "sha1-vWf5bAfvtjA7f+lMHpefiEeOCjk=", "dev": true, "requires": { - "lru-cache": "2.7.3" + "lru-cache": "^2.5.0" } }, "csso": { @@ -599,8 +599,8 @@ "dev": true, "optional": true, "requires": { - "clap": "1.2.3", - "source-map": "0.5.6" + "clap": "^1.0.9", + "source-map": "^0.5.3" } }, "currently-unhandled": { @@ -609,7 +609,7 @@ "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", "dev": true, "requires": { - "array-find-index": "1.0.2" + "array-find-index": "^1.0.1" } }, "dargs": { @@ -618,7 +618,7 @@ "integrity": "sha1-A6nbtLXC8Tm/FK5T8LiipqhvThc=", "dev": true, "requires": { - "number-is-nan": "1.0.1" + "number-is-nan": "^1.0.0" } }, "date-now": { @@ -633,7 +633,7 @@ "integrity": "sha1-GIdtC9pMGf5w3Tv0sDTygbEqQLY=", "dev": true, "requires": { - "time-zone": "0.1.0" + "time-zone": "^0.1.0" } }, "dateformat": { @@ -642,8 +642,8 @@ "integrity": "sha1-nxJLZ1lMk3/3BpMuSmQsyo27/uk=", "dev": true, "requires": { - "get-stdin": "4.0.1", - "meow": "3.7.0" + "get-stdin": "^4.0.1", + "meow": "^3.3.0" } }, "debug": { @@ -652,7 +652,7 @@ "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", "dev": true, "requires": { - "ms": "2.1.1" + "ms": "^2.1.1" } }, "decamelize": { @@ -668,15 +668,15 @@ "dev": true, "optional": true, "requires": { - "buffer-to-vinyl": "1.1.0", - "concat-stream": "1.6.2", - "decompress-tar": "3.1.0", - "decompress-tarbz2": "3.1.0", - "decompress-targz": "3.1.0", - "decompress-unzip": "3.4.0", - "stream-combiner2": "1.1.1", - "vinyl-assign": "1.2.1", - "vinyl-fs": "2.4.4" + "buffer-to-vinyl": "^1.0.0", + "concat-stream": "^1.4.6", + "decompress-tar": "^3.0.0", + "decompress-tarbz2": "^3.0.0", + "decompress-targz": "^3.0.0", + "decompress-unzip": "^3.0.0", + "stream-combiner2": "^1.1.1", + "vinyl-assign": "^1.0.1", + "vinyl-fs": "^2.2.0" } }, "decompress-tar": { @@ -686,12 +686,12 @@ "dev": true, "optional": true, "requires": { - "is-tar": "1.0.0", - "object-assign": "2.1.1", - "strip-dirs": "1.1.1", - "tar-stream": "1.6.2", - "through2": "0.6.5", - "vinyl": "0.4.6" + "is-tar": "^1.0.0", + "object-assign": "^2.0.0", + "strip-dirs": "^1.0.0", + "tar-stream": "^1.1.1", + "through2": "^0.6.1", + "vinyl": "^0.4.3" }, "dependencies": { "clone": { @@ -715,8 +715,8 @@ "dev": true, "optional": true, "requires": { - "clone": "0.2.0", - "clone-stats": "0.0.1" + "clone": "^0.2.0", + "clone-stats": "^0.0.1" } } } @@ -728,13 +728,13 @@ "dev": true, "optional": true, "requires": { - "is-bzip2": "1.0.0", - "object-assign": "2.1.1", - "seek-bzip": "1.0.5", - "strip-dirs": "1.1.1", - "tar-stream": "1.6.2", - "through2": "0.6.5", - "vinyl": "0.4.6" + "is-bzip2": "^1.0.0", + "object-assign": "^2.0.0", + "seek-bzip": "^1.0.3", + "strip-dirs": "^1.0.0", + "tar-stream": "^1.1.1", + "through2": "^0.6.1", + "vinyl": "^0.4.3" }, "dependencies": { "clone": { @@ -758,8 +758,8 @@ "dev": true, "optional": true, "requires": { - "clone": "0.2.0", - "clone-stats": "0.0.1" + "clone": "^0.2.0", + "clone-stats": "^0.0.1" } } } @@ -771,12 +771,12 @@ "dev": true, "optional": true, "requires": { - "is-gzip": "1.0.0", - "object-assign": "2.1.1", - "strip-dirs": "1.1.1", - "tar-stream": "1.6.2", - "through2": "0.6.5", - "vinyl": "0.4.6" + "is-gzip": "^1.0.0", + "object-assign": "^2.0.0", + "strip-dirs": "^1.0.0", + "tar-stream": "^1.1.1", + "through2": "^0.6.1", + "vinyl": "^0.4.3" }, "dependencies": { "clone": { @@ -800,8 +800,8 @@ "dev": true, "optional": true, "requires": { - "clone": "0.2.0", - "clone-stats": "0.0.1" + "clone": "^0.2.0", + "clone-stats": "^0.0.1" } } } @@ -813,24 +813,24 @@ "dev": true, "optional": true, "requires": { - "is-zip": "1.0.0", - "read-all-stream": "3.1.0", - "stat-mode": "0.2.2", - "strip-dirs": "1.1.1", - "through2": "2.0.5", - "vinyl": "1.2.0", - "yauzl": "2.10.0" + "is-zip": "^1.0.0", + "read-all-stream": "^3.0.0", + "stat-mode": "^0.2.0", + "strip-dirs": "^1.0.0", + "through2": "^2.0.0", + "vinyl": "^1.0.0", + "yauzl": "^2.2.1" }, "dependencies": { "through2": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", - "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", + "integrity": "sha1-AcHjnrMdB8t9A6lqcIIyYLIxMs0=", "dev": true, "optional": true, "requires": { - "readable-stream": "2.3.6", - "xtend": "4.0.1" + "readable-stream": "~2.3.6", + "xtend": "~4.0.1" } } } @@ -838,7 +838,7 @@ "deep-extend": { "version": "0.6.0", "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", - "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", + "integrity": "sha1-xPp8lUBKF6nD6Mp+FTcxK3NjMKw=", "dev": true, "optional": true }, @@ -848,8 +848,8 @@ "integrity": "sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA==", "dev": true, "requires": { - "domelementtype": "1.3.1", - "entities": "1.1.2" + "domelementtype": "^1.3.0", + "entities": "^1.1.1" }, "dependencies": { "entities": { @@ -863,7 +863,7 @@ "domelementtype": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", - "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==", + "integrity": "sha1-0EjESzew0Qp/Kj1f7j9DM9eQSB8=", "dev": true }, "domhandler": { @@ -872,7 +872,7 @@ "integrity": "sha1-LeWaCCLVAn+r/28DLCsloqir5zg=", "dev": true, "requires": { - "domelementtype": "1.3.1" + "domelementtype": "1" } }, "domutils": { @@ -881,8 +881,8 @@ "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=", "dev": true, "requires": { - "dom-serializer": "0.1.1", - "domelementtype": "1.3.1" + "dom-serializer": "0", + "domelementtype": "1" } }, "download": { @@ -892,21 +892,21 @@ "dev": true, "optional": true, "requires": { - "caw": "1.2.0", - "concat-stream": "1.6.2", - "each-async": "1.1.1", - "filenamify": "1.2.1", - "got": "5.7.1", - "gulp-decompress": "1.2.0", - "gulp-rename": "1.4.0", - "is-url": "1.2.4", - "object-assign": "4.1.1", - "read-all-stream": "3.1.0", - "readable-stream": "2.3.6", - "stream-combiner2": "1.1.1", - "vinyl": "1.2.0", - "vinyl-fs": "2.4.4", - "ware": "1.3.0" + "caw": "^1.0.1", + "concat-stream": "^1.4.7", + "each-async": "^1.0.0", + "filenamify": "^1.0.1", + "got": "^5.0.0", + "gulp-decompress": "^1.2.0", + "gulp-rename": "^1.2.0", + "is-url": "^1.2.0", + "object-assign": "^4.0.1", + "read-all-stream": "^3.0.0", + "readable-stream": "^2.0.2", + "stream-combiner2": "^1.1.1", + "vinyl": "^1.0.0", + "vinyl-fs": "^2.2.0", + "ware": "^1.2.0" } }, "duplexer": { @@ -921,19 +921,19 @@ "integrity": "sha1-ixLauHjA1p4+eJEFFmKjL8a93ME=", "dev": true, "requires": { - "readable-stream": "2.3.6" + "readable-stream": "^2.0.2" } }, "duplexify": { "version": "3.7.1", "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", - "integrity": "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==", + "integrity": "sha1-Kk31MX9sz9kfhtb9JdjYoQO4gwk=", "dev": true, "requires": { - "end-of-stream": "1.4.1", - "inherits": "2.0.3", - "readable-stream": "2.3.6", - "stream-shift": "1.0.0" + "end-of-stream": "^1.0.0", + "inherits": "^2.0.1", + "readable-stream": "^2.0.0", + "stream-shift": "^1.0.0" } }, "each-async": { @@ -943,8 +943,8 @@ "dev": true, "optional": true, "requires": { - "onetime": "1.1.0", - "set-immediate-shim": "1.0.1" + "onetime": "^1.0.0", + "set-immediate-shim": "^1.0.0" } }, "end-of-stream": { @@ -953,7 +953,7 @@ "integrity": "sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==", "dev": true, "requires": { - "once": "1.4.0" + "once": "^1.4.0" } }, "entities": { @@ -968,17 +968,17 @@ "integrity": "sha1-pfdf/02ZJhJt2sDqXcOOaJFTywI=", "dev": true, "requires": { - "string-template": "0.2.1", - "xtend": "4.0.1" + "string-template": "~0.2.1", + "xtend": "~4.0.0" } }, "error-ex": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "integrity": "sha1-tKxAZIEH/c3PriQvQovqihTU8b8=", "dev": true, "requires": { - "is-arrayish": "0.2.1" + "is-arrayish": "^0.2.1" } }, "escape-string-regexp": { @@ -990,7 +990,7 @@ "esprima": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "integrity": "sha1-E7BM2z5sXRnfkatph6hpVhmwqnE=", "dev": true }, "eventemitter2": { @@ -1006,8 +1006,8 @@ "dev": true, "optional": true, "requires": { - "rimraf": "2.6.3", - "tempfile": "1.1.1" + "rimraf": "^2.2.6", + "tempfile": "^1.0.0" } }, "exec-series": { @@ -1017,8 +1017,8 @@ "dev": true, "optional": true, "requires": { - "async-each-series": "1.1.0", - "object-assign": "4.1.1" + "async-each-series": "^1.1.0", + "object-assign": "^4.1.0" } }, "executable": { @@ -1028,7 +1028,7 @@ "dev": true, "optional": true, "requires": { - "meow": "3.7.0" + "meow": "^3.1.0" } }, "exit": { @@ -1043,7 +1043,7 @@ "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=", "dev": true, "requires": { - "is-posix-bracket": "0.1.1" + "is-posix-bracket": "^0.1.0" } }, "expand-range": { @@ -1052,13 +1052,13 @@ "integrity": "sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=", "dev": true, "requires": { - "fill-range": "2.2.4" + "fill-range": "^2.1.0" } }, "extend": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", + "integrity": "sha1-+LETa0Bx+9jrFAr/hYsQGewpFfo=", "dev": true }, "extend-shallow": { @@ -1067,7 +1067,7 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } }, "extglob": { @@ -1076,7 +1076,7 @@ "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=", "dev": true, "requires": { - "is-extglob": "1.0.0" + "is-extglob": "^1.0.0" }, "dependencies": { "is-extglob": { @@ -1090,14 +1090,14 @@ "fancy-log": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/fancy-log/-/fancy-log-1.3.3.tgz", - "integrity": "sha512-k9oEhlyc0FrVh25qYuSELjr8oxsCoc4/LEZfg2iJJrfEk/tZL9bCoJE47gqAvI2m/AUjluCS4+3I0eTx8n3AEw==", + "integrity": "sha1-28GRVPVYaQFQojlToK29A1vkX8c=", "dev": true, "optional": true, "requires": { - "ansi-gray": "0.1.1", - "color-support": "1.1.3", - "parse-node-version": "1.0.1", - "time-stamp": "1.1.0" + "ansi-gray": "^0.1.1", + "color-support": "^1.1.3", + "parse-node-version": "^1.0.0", + "time-stamp": "^1.0.0" } }, "faye-websocket": { @@ -1106,7 +1106,7 @@ "integrity": "sha1-TkkvjQTftviQA1B/btvy1QHnxvQ=", "dev": true, "requires": { - "websocket-driver": "0.7.0" + "websocket-driver": ">=0.5.1" } }, "fd-slicer": { @@ -1116,7 +1116,7 @@ "dev": true, "optional": true, "requires": { - "pend": "1.2.0" + "pend": "~1.2.0" } }, "figures": { @@ -1125,8 +1125,8 @@ "integrity": "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=", "dev": true, "requires": { - "escape-string-regexp": "1.0.5", - "object-assign": "4.1.1" + "escape-string-regexp": "^1.0.5", + "object-assign": "^4.1.0" } }, "file-sync-cmp": { @@ -1161,22 +1161,22 @@ "dev": true, "optional": true, "requires": { - "filename-reserved-regex": "1.0.0", - "strip-outer": "1.0.1", - "trim-repeated": "1.0.0" + "filename-reserved-regex": "^1.0.0", + "strip-outer": "^1.0.0", + "trim-repeated": "^1.0.0" } }, "fill-range": { "version": "2.2.4", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.4.tgz", - "integrity": "sha512-cnrcCbj01+j2gTG921VZPnHbjmdAf8oQV/iGeV2kZxGSyfYjjTyY79ErsK1WJWMpw6DaApEX72binqJE+/d+5Q==", + "integrity": "sha1-6x53OrsFbc2N8r/favWbizqTZWU=", "dev": true, "requires": { - "is-number": "2.1.0", - "isobject": "2.1.0", - "randomatic": "3.1.1", - "repeat-element": "1.1.3", - "repeat-string": "1.6.1" + "is-number": "^2.1.0", + "isobject": "^2.0.0", + "randomatic": "^3.0.0", + "repeat-element": "^1.1.2", + "repeat-string": "^1.5.2" } }, "find-up": { @@ -1185,8 +1185,8 @@ "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", "dev": true, "requires": { - "path-exists": "2.1.0", - "pinkie-promise": "2.0.1" + "path-exists": "^2.0.0", + "pinkie-promise": "^2.0.0" } }, "find-versions": { @@ -1196,10 +1196,10 @@ "dev": true, "optional": true, "requires": { - "array-uniq": "1.0.3", - "get-stdin": "4.0.1", - "meow": "3.7.0", - "semver-regex": "1.0.0" + "array-uniq": "^1.0.0", + "get-stdin": "^4.0.1", + "meow": "^3.5.0", + "semver-regex": "^1.0.0" } }, "findup-sync": { @@ -1208,7 +1208,7 @@ "integrity": "sha1-N5MKpdgWt3fANEXhlmzGeQpMCxY=", "dev": true, "requires": { - "glob": "5.0.15" + "glob": "~5.0.0" }, "dependencies": { "glob": { @@ -1217,11 +1217,11 @@ "integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=", "dev": true, "requires": { - "inflight": "1.0.6", - "inherits": "2.0.3", - "minimatch": "3.0.4", - "once": "1.4.0", - "path-is-absolute": "1.0.1" + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "2 || 3", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" } } } @@ -1244,13 +1244,13 @@ "integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=", "dev": true, "requires": { - "for-in": "1.0.2" + "for-in": "^1.0.1" } }, "fs-constants": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", - "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==", + "integrity": "sha1-a+Dem+mYzhavivwkSXue6bfM2a0=", "dev": true, "optional": true }, @@ -1263,10 +1263,10 @@ "gaze": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/gaze/-/gaze-1.1.3.tgz", - "integrity": "sha512-BRdNm8hbWzFzWHERTrejLqwHDfS4GibPoq5wjTPIoJHoBtKGPg3xAFfxmM+9ztbXelxcf2hwQcaz1PtmFeue8g==", + "integrity": "sha1-xEFzPhO5J6yMD/C0w7Az8ogSkko=", "dev": true, "requires": { - "globule": "1.2.1" + "globule": "^1.0.0" } }, "get-proxy": { @@ -1276,7 +1276,7 @@ "dev": true, "optional": true, "requires": { - "rc": "1.2.8" + "rc": "^1.1.2" } }, "get-stdin": { @@ -1298,9 +1298,9 @@ "dev": true, "optional": true, "requires": { - "bin-build": "2.2.0", - "bin-wrapper": "3.0.2", - "logalot": "2.1.0" + "bin-build": "^2.0.0", + "bin-wrapper": "^3.0.0", + "logalot": "^2.0.0" } }, "glob": { @@ -1309,12 +1309,12 @@ "integrity": "sha1-IRuvr0nlJbjNkyYNFKsTYVKz9Xo=", "dev": true, "requires": { - "fs.realpath": "1.0.0", - "inflight": "1.0.6", - "inherits": "2.0.3", - "minimatch": "3.0.4", - "once": "1.4.0", - "path-is-absolute": "1.0.1" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.2", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" } }, "glob-base": { @@ -1323,8 +1323,8 @@ "integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=", "dev": true, "requires": { - "glob-parent": "2.0.0", - "is-glob": "2.0.1" + "glob-parent": "^2.0.0", + "is-glob": "^2.0.0" }, "dependencies": { "glob-parent": { @@ -1333,7 +1333,7 @@ "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=", "dev": true, "requires": { - "is-glob": "2.0.1" + "is-glob": "^2.0.0" } }, "is-extglob": { @@ -1348,7 +1348,7 @@ "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", "dev": true, "requires": { - "is-extglob": "1.0.0" + "is-extglob": "^1.0.0" } } } @@ -1359,8 +1359,8 @@ "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", "dev": true, "requires": { - "is-glob": "3.1.0", - "path-dirname": "1.0.2" + "is-glob": "^3.1.0", + "path-dirname": "^1.0.0" } }, "glob-stream": { @@ -1369,14 +1369,14 @@ "integrity": "sha1-pVZlqajM3EGRWofHAeMtTgFvrSI=", "dev": true, "requires": { - "extend": "3.0.2", - "glob": "5.0.15", - "glob-parent": "3.1.0", - "micromatch": "2.3.11", - "ordered-read-streams": "0.3.0", - "through2": "0.6.5", - "to-absolute-glob": "0.1.1", - "unique-stream": "2.3.1" + "extend": "^3.0.0", + "glob": "^5.0.3", + "glob-parent": "^3.0.0", + "micromatch": "^2.3.7", + "ordered-read-streams": "^0.3.0", + "through2": "^0.6.0", + "to-absolute-glob": "^0.1.1", + "unique-stream": "^2.0.2" }, "dependencies": { "glob": { @@ -1385,11 +1385,11 @@ "integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=", "dev": true, "requires": { - "inflight": "1.0.6", - "inherits": "2.0.3", - "minimatch": "3.0.4", - "once": "1.4.0", - "path-is-absolute": "1.0.1" + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "2 || 3", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" } } } @@ -1400,9 +1400,9 @@ "integrity": "sha512-g7QtgWF4uYSL5/dn71WxubOrS7JVGCnFPEnoeChJmBnyR9Mw8nGoEwOgJL/RC2Te0WhbsEUCejfH8SZNJ+adYQ==", "dev": true, "requires": { - "glob": "7.1.4", - "lodash": "4.17.11", - "minimatch": "3.0.4" + "glob": "~7.1.1", + "lodash": "~4.17.10", + "minimatch": "~3.0.2" }, "dependencies": { "glob": { @@ -1411,12 +1411,12 @@ "integrity": "sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A==", "dev": true, "requires": { - "fs.realpath": "1.0.0", - "inflight": "1.0.6", - "inherits": "2.0.3", - "minimatch": "3.0.4", - "once": "1.4.0", - "path-is-absolute": "1.0.1" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" } }, "lodash": { @@ -1430,11 +1430,11 @@ "glogg": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/glogg/-/glogg-1.0.2.tgz", - "integrity": "sha512-5mwUoSuBk44Y4EshyiqcH95ZntbDdTQqA3QYSrxmzj28Ai0vXBGMH1ApSANH14j2sIRtqCEyg6PfsuP7ElOEDA==", + "integrity": "sha1-LX3XAr7aIus7/634gGltpthGMT8=", "dev": true, "optional": true, "requires": { - "sparkles": "1.0.1" + "sparkles": "^1.0.0" } }, "got": { @@ -1444,21 +1444,21 @@ "dev": true, "optional": true, "requires": { - "create-error-class": "3.0.2", - "duplexer2": "0.1.4", - "is-redirect": "1.0.0", - "is-retry-allowed": "1.1.0", - "is-stream": "1.1.0", - "lowercase-keys": "1.0.1", - "node-status-codes": "1.0.0", - "object-assign": "4.1.1", - "parse-json": "2.2.0", - "pinkie-promise": "2.0.1", - "read-all-stream": "3.1.0", - "readable-stream": "2.3.6", - "timed-out": "3.1.3", - "unzip-response": "1.0.2", - "url-parse-lax": "1.0.0" + "create-error-class": "^3.0.1", + "duplexer2": "^0.1.4", + "is-redirect": "^1.0.0", + "is-retry-allowed": "^1.0.0", + "is-stream": "^1.0.0", + "lowercase-keys": "^1.0.0", + "node-status-codes": "^1.0.0", + "object-assign": "^4.0.1", + "parse-json": "^2.1.0", + "pinkie-promise": "^2.0.0", + "read-all-stream": "^3.0.0", + "readable-stream": "^2.0.5", + "timed-out": "^3.0.0", + "unzip-response": "^1.0.2", + "url-parse-lax": "^1.0.0" } }, "graceful-fs": { @@ -1477,26 +1477,26 @@ "grunt": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/grunt/-/grunt-1.0.4.tgz", - "integrity": "sha512-PYsMOrOC+MsdGEkFVwMaMyc6Ob7pKmq+deg1Sjr+vvMWp35sztfwKE7qoN51V+UEtHsyNuMcGdgMLFkBHvMxHQ==", - "dev": true, - "requires": { - "coffeescript": "1.10.0", - "dateformat": "1.0.12", - "eventemitter2": "0.4.14", - "exit": "0.1.2", - "findup-sync": "0.3.0", - "glob": "7.0.6", - "grunt-cli": "1.2.0", - "grunt-known-options": "1.1.1", - "grunt-legacy-log": "2.0.0", - "grunt-legacy-util": "1.1.1", - "iconv-lite": "0.4.24", - "js-yaml": "3.13.1", - "minimatch": "3.0.4", - "mkdirp": "0.5.1", - "nopt": "3.0.6", - "path-is-absolute": "1.0.1", - "rimraf": "2.6.3" + "integrity": "sha1-x5mIOUWlOj0HYi4HN8j3C/4Z6zg=", + "dev": true, + "requires": { + "coffeescript": "~1.10.0", + "dateformat": "~1.0.12", + "eventemitter2": "~0.4.13", + "exit": "~0.1.1", + "findup-sync": "~0.3.0", + "glob": "~7.0.0", + "grunt-cli": "~1.2.0", + "grunt-known-options": "~1.1.0", + "grunt-legacy-log": "~2.0.0", + "grunt-legacy-util": "~1.1.1", + "iconv-lite": "~0.4.13", + "js-yaml": "~3.13.0", + "minimatch": "~3.0.2", + "mkdirp": "~0.5.1", + "nopt": "~3.0.6", + "path-is-absolute": "~1.0.0", + "rimraf": "~2.6.2" }, "dependencies": { "grunt-cli": { @@ -1505,10 +1505,10 @@ "integrity": "sha1-VisRnrsGndtGSs4oRVAb6Xs1tqg=", "dev": true, "requires": { - "findup-sync": "0.3.0", - "grunt-known-options": "1.1.1", - "nopt": "3.0.6", - "resolve": "1.1.7" + "findup-sync": "~0.3.0", + "grunt-known-options": "~1.1.0", + "nopt": "~3.0.6", + "resolve": "~1.1.0" } }, "resolve": { @@ -1525,11 +1525,11 @@ "integrity": "sha1-9VAZrPvrBbibJFpRzPGoHb+GjfQ=", "dev": true, "requires": { - "async": "0.9.2", - "aws-sdk": "2.0.31", - "lodash": "2.4.2", - "mime-types": "2.0.14", - "progress": "1.1.8" + "async": "0.9.x", + "aws-sdk": "2.0.x", + "lodash": "2.4.x", + "mime-types": "2.0.x", + "progress": "1.1.x" }, "dependencies": { "async": { @@ -1552,8 +1552,8 @@ "integrity": "sha1-Vkq/LQN4qYOhW54/MO51tzjEBjg=", "dev": true, "requires": { - "async": "1.5.2", - "rimraf": "2.6.2" + "async": "^1.5.2", + "rimraf": "^2.5.1" }, "dependencies": { "inherits": { @@ -1568,7 +1568,7 @@ "integrity": "sha1-LtgVDSShbqhlHm1u8PR8QVjOejY=", "dev": true, "requires": { - "glob": "7.0.6" + "glob": "^7.0.5" }, "dependencies": { "glob": { @@ -1577,12 +1577,12 @@ "integrity": "sha512-f8c0rE8JiCxpa52kWPAOa3ZaYEnzofDzCQLCn3Vdk0Z5OVLq3BsRFJI4S4ykpeVW6QMGBUkMeUpoEgWnMTnw5Q==", "dev": true, "requires": { - "fs.realpath": "1.0.0", - "inflight": "1.0.6", - "inherits": "2.0.3", - "minimatch": "3.0.4", - "once": "1.4.0", - "path-is-absolute": "1.0.1" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.2", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" } } } @@ -1595,8 +1595,8 @@ "integrity": "sha1-YVCYYwhOhx1+ht5IwBUlntl3Rb0=", "dev": true, "requires": { - "chalk": "1.1.3", - "source-map": "0.5.6" + "chalk": "^1.0.0", + "source-map": "^0.5.3" } }, "grunt-contrib-copy": { @@ -1605,8 +1605,8 @@ "integrity": "sha1-cGDGWB6QS4qw0A8HbgqPbj58NXM=", "dev": true, "requires": { - "chalk": "1.1.3", - "file-sync-cmp": "0.1.1" + "chalk": "^1.1.1", + "file-sync-cmp": "^0.1.0" } }, "grunt-contrib-cssmin": { @@ -1615,9 +1615,9 @@ "integrity": "sha1-ZMvr5gE0vBJwykFUUU7EAHzBb38=", "dev": true, "requires": { - "chalk": "1.1.3", - "clean-css": "4.1.11", - "maxmin": "2.1.0" + "chalk": "^1.0.0", + "clean-css": "~4.1.1", + "maxmin": "^2.1.0" }, "dependencies": { "ansi-regex": { @@ -1629,14 +1629,14 @@ "chalk": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "dev": true, "requires": { - "ansi-styles": "2.2.1", - "escape-string-regexp": "1.0.5", - "has-ansi": "2.0.0", - "strip-ansi": "3.0.1", - "supports-color": "2.0.0" + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" } }, "clean-css": { @@ -1645,7 +1645,7 @@ "integrity": "sha1-Ls3xRaujj1R0DybO/Q/z4D4SXWo=", "dev": true, "requires": { - "source-map": "0.5.7" + "source-map": "0.5.x" } }, "escape-string-regexp": { @@ -1660,7 +1660,7 @@ "integrity": "sha1-VGGI6b3DN/Zzdy+BZgRks4nc5SA=", "dev": true, "requires": { - "duplexer": "0.1.1" + "duplexer": "^0.1.1" } }, "maxmin": { @@ -1669,10 +1669,10 @@ "integrity": "sha1-TTsiCQPZXu5+t6x/qGTnLcCaMWY=", "dev": true, "requires": { - "chalk": "1.1.3", - "figures": "1.7.0", - "gzip-size": "3.0.0", - "pretty-bytes": "3.0.1" + "chalk": "^1.0.0", + "figures": "^1.0.1", + "gzip-size": "^3.0.0", + "pretty-bytes": "^3.0.0" }, "dependencies": { "figures": { @@ -1681,8 +1681,8 @@ "integrity": "sha512-UxKlfCRuCBxSXU4C6t9scbDyWZ4VlaFFdojKtzJuSkuOBQ5CNFum+zZXFwHjo+CxBC1t6zlYPgHIgFjL8ggoEQ==", "dev": true, "requires": { - "escape-string-regexp": "1.0.5", - "object-assign": "4.1.1" + "escape-string-regexp": "^1.0.5", + "object-assign": "^4.1.0" } } } @@ -1699,7 +1699,7 @@ "integrity": "sha1-J9AAjXeAY6C0gRuzXHnxvV1fvM8=", "dev": true, "requires": { - "number-is-nan": "1.0.1" + "number-is-nan": "^1.0.0" }, "dependencies": { "number-is-nan": { @@ -1722,7 +1722,7 @@ "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "dev": true, "requires": { - "ansi-regex": "2.1.1" + "ansi-regex": "^2.0.0" } } } @@ -1733,11 +1733,11 @@ "integrity": "sha1-5Ho1YTN29MqpwfkERlA8rhyUTXk=", "dev": true, "requires": { - "async": "1.5.2", - "chalk": "1.1.3", - "gulp-rename": "1.4.0", - "imagemin": "4.0.0", - "pretty-bytes": "3.0.1" + "async": "^1.5.2", + "chalk": "^1.0.0", + "gulp-rename": "^1.2.0", + "imagemin": "^4.0.0", + "pretty-bytes": "^3.0.1" }, "dependencies": { "pretty-bytes": { @@ -1746,7 +1746,7 @@ "integrity": "sha1-J9AAjXeAY6C0gRuzXHnxvV1fvM8=", "dev": true, "requires": { - "number-is-nan": "1.0.1" + "number-is-nan": "^1.0.0" } } } @@ -1757,9 +1757,9 @@ "integrity": "sha1-Np2QmyWTxA6L55lAshNAhQx5Oaw=", "dev": true, "requires": { - "chalk": "1.1.3", - "hooker": "0.2.3", - "jshint": "2.9.7" + "chalk": "^1.1.1", + "hooker": "^0.2.3", + "jshint": "~2.9.4" } }, "grunt-contrib-sass": { @@ -1768,11 +1768,11 @@ "integrity": "sha1-gGg4JRy8DhqU1k1RXN00z2dNcBs=", "dev": true, "requires": { - "async": "0.9.2", - "chalk": "1.1.3", - "cross-spawn": "0.2.9", - "dargs": "4.1.0", - "which": "1.3.1" + "async": "^0.9.0", + "chalk": "^1.0.0", + "cross-spawn": "^0.2.3", + "dargs": "^4.0.0", + "which": "^1.0.5" }, "dependencies": { "async": { @@ -1789,22 +1789,22 @@ "integrity": "sha1-ENHkhJIQ7JK/CwgkfiQYY1TV6e4=", "dev": true, "requires": { - "chalk": "1.1.3", - "maxmin": "1.1.0", - "uglify-js": "3.0.28", - "uri-path": "1.0.0" + "chalk": "^1.0.0", + "maxmin": "^1.1.0", + "uglify-js": "~3.0.4", + "uri-path": "^1.0.0" } }, "grunt-contrib-watch": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/grunt-contrib-watch/-/grunt-contrib-watch-1.1.0.tgz", - "integrity": "sha512-yGweN+0DW5yM+oo58fRu/XIRrPcn3r4tQx+nL7eMRwjpvk+rQY6R8o94BPK0i2UhTg9FN21hS+m8vR8v9vXfeg==", + "integrity": "sha1-wUPKW4JLKIoCS4VmOaU0Wu23jtQ=", "dev": true, "requires": { - "async": "2.6.2", - "gaze": "1.1.3", - "lodash": "4.17.11", - "tiny-lr": "1.1.1" + "async": "^2.6.0", + "gaze": "^1.1.0", + "lodash": "^4.17.10", + "tiny-lr": "^1.1.1" }, "dependencies": { "async": { @@ -1813,7 +1813,7 @@ "integrity": "sha512-H1qVYh1MYhEEFLsP97cVKqCGo7KfCyTt6uEWqsTBr9SO84oK9Uwbyd/yCW+6rKJLHksBNUVWZDAjfS+Ccx0Bbg==", "dev": true, "requires": { - "lodash": "4.17.11" + "lodash": "^4.17.11" } }, "lodash": { @@ -1830,9 +1830,9 @@ "integrity": "sha1-KZAhDwtantxecZiYf9HAKcbV9N8=", "dev": true, "requires": { - "chalk": "1.1.3", - "convert-source-map": "1.2.0", - "each-async": "0.1.3" + "chalk": "^1.0.0", + "convert-source-map": "^1.0.0", + "each-async": "^0.1.3" }, "dependencies": { "chalk": { @@ -1841,11 +1841,11 @@ "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "dev": true, "requires": { - "ansi-styles": "2.2.1", - "escape-string-regexp": "1.0.5", - "has-ansi": "2.0.0", - "strip-ansi": "3.0.1", - "supports-color": "2.0.0" + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" }, "dependencies": { "ansi-styles": { @@ -1866,7 +1866,7 @@ "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", "dev": true, "requires": { - "ansi-regex": "2.0.0" + "ansi-regex": "^2.0.0" }, "dependencies": { "ansi-regex": { @@ -1883,7 +1883,7 @@ "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "dev": true, "requires": { - "ansi-regex": "2.0.0" + "ansi-regex": "^2.0.0" }, "dependencies": { "ansi-regex": { @@ -1919,19 +1919,19 @@ "grunt-known-options": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/grunt-known-options/-/grunt-known-options-1.1.1.tgz", - "integrity": "sha512-cHwsLqoighpu7TuYj5RonnEuxGVFnztcUqTqp5rXFGYL4OuPFofwC4Ycg7n9fYwvK6F5WbYgeVOwph9Crs2fsQ==", + "integrity": "sha1-bMCIEHvQIZ3F0+V9kZI/RpBZgE0=", "dev": true }, "grunt-legacy-log": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/grunt-legacy-log/-/grunt-legacy-log-2.0.0.tgz", - "integrity": "sha512-1m3+5QvDYfR1ltr8hjiaiNjddxGdQWcH0rw1iKKiQnF0+xtgTazirSTGu68RchPyh1OBng1bBUjLmX8q9NpoCw==", + "integrity": "sha1-yM0sbIGkRlubvy2HTZY/73pZ/7k=", "dev": true, "requires": { - "colors": "1.1.2", - "grunt-legacy-log-utils": "2.0.1", - "hooker": "0.2.3", - "lodash": "4.17.11" + "colors": "~1.1.2", + "grunt-legacy-log-utils": "~2.0.0", + "hooker": "~0.2.3", + "lodash": "~4.17.5" }, "dependencies": { "lodash": { @@ -1945,11 +1945,11 @@ "grunt-legacy-log-utils": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/grunt-legacy-log-utils/-/grunt-legacy-log-utils-2.0.1.tgz", - "integrity": "sha512-o7uHyO/J+i2tXG8r2bZNlVk20vlIFJ9IEYyHMCQGfWYru8Jv3wTqKZzvV30YW9rWEjq0eP3cflQ1qWojIe9VFA==", + "integrity": "sha1-0vRCx8AVAGXZAEsI/XQQ03UZGU4=", "dev": true, "requires": { - "chalk": "2.4.2", - "lodash": "4.17.11" + "chalk": "~2.4.1", + "lodash": "~4.17.10" }, "dependencies": { "ansi-styles": { @@ -1958,7 +1958,7 @@ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", "dev": true, "requires": { - "color-convert": "1.9.3" + "color-convert": "^1.9.0" } }, "chalk": { @@ -1967,9 +1967,9 @@ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", "dev": true, "requires": { - "ansi-styles": "3.2.1", - "escape-string-regexp": "1.0.5", - "supports-color": "5.5.0" + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" } }, "lodash": { @@ -1984,7 +1984,7 @@ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", "dev": true, "requires": { - "has-flag": "3.0.0" + "has-flag": "^3.0.0" } } } @@ -1992,16 +1992,16 @@ "grunt-legacy-util": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/grunt-legacy-util/-/grunt-legacy-util-1.1.1.tgz", - "integrity": "sha512-9zyA29w/fBe6BIfjGENndwoe1Uy31BIXxTH3s8mga0Z5Bz2Sp4UCjkeyv2tI449ymkx3x26B+46FV4fXEddl5A==", + "integrity": "sha1-4QYk58hgNOW4cMioYWdD8KCEXkI=", "dev": true, "requires": { - "async": "1.5.2", - "exit": "0.1.2", - "getobject": "0.1.0", - "hooker": "0.2.3", - "lodash": "4.17.11", - "underscore.string": "3.3.5", - "which": "1.3.1" + "async": "~1.5.2", + "exit": "~0.1.1", + "getobject": "~0.1.0", + "hooker": "~0.2.3", + "lodash": "~4.17.10", + "underscore.string": "~3.3.4", + "which": "~1.3.0" }, "dependencies": { "lodash": { @@ -2018,8 +2018,8 @@ "integrity": "sha1-g8y3od2ny9irI7BZAk6+YUrS80I=", "dev": true, "requires": { - "async": "1.5.2", - "rimraf": "2.6.2" + "async": "^1.5.2", + "rimraf": "^2.5.2" }, "dependencies": { "rimraf": { @@ -2028,7 +2028,7 @@ "integrity": "sha1-LtgVDSShbqhlHm1u8PR8QVjOejY=", "dev": true, "requires": { - "glob": "7.1.4" + "glob": "^7.0.5" }, "dependencies": { "glob": { @@ -2037,12 +2037,12 @@ "integrity": "sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A==", "dev": true, "requires": { - "fs.realpath": "1.0.0", - "inflight": "1.0.6", - "inherits": "2.0.3", - "minimatch": "3.0.4", - "once": "1.4.0", - "path-is-absolute": "1.0.1" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" } } } @@ -2055,9 +2055,9 @@ "integrity": "sha1-BSk5kGFhENtrwK0V5sBZL/4YrDE=", "dev": true, "requires": { - "semver": "5.7.0", - "stack-parser": "0.0.1", - "which": "1.3.1" + "semver": "^5.1.0", + "stack-parser": "^0.0.1", + "which": "^1.2.4" } }, "grunt-php": { @@ -2066,10 +2066,10 @@ "integrity": "sha1-0QrEZolNhGFnYxsgPmfYxjRIC8k=", "dev": true, "requires": { - "bin-version-check": "2.1.0", - "get-port": "1.0.0", - "object-assign": "2.1.1", - "opn": "1.0.2" + "bin-version-check": "^2.0.0", + "get-port": "^1.0.0", + "object-assign": "^2.0.0", + "opn": "^1.0.0" }, "dependencies": { "bin-version-check": { @@ -2078,10 +2078,10 @@ "integrity": "sha1-5OXfKQuQaffRETJAMe/BP90RpbA=", "dev": true, "requires": { - "bin-version": "1.0.4", - "minimist": "1.2.0", - "semver": "4.3.6", - "semver-truncate": "1.1.0" + "bin-version": "^1.0.0", + "minimist": "^1.1.0", + "semver": "^4.0.3", + "semver-truncate": "^1.0.0" }, "dependencies": { "bin-version": { @@ -2090,7 +2090,7 @@ "integrity": "sha1-nrSY7m/Xb3q5p8FgQ2+JV5Q1144=", "dev": true, "requires": { - "find-versions": "1.2.1" + "find-versions": "^1.0.0" }, "dependencies": { "find-versions": { @@ -2099,10 +2099,10 @@ "integrity": "sha1-y96fEuOFdaCvG+G5osXV/Y8Ya2I=", "dev": true, "requires": { - "array-uniq": "1.0.2", - "get-stdin": "4.0.1", - "meow": "3.7.0", - "semver-regex": "1.0.0" + "array-uniq": "^1.0.0", + "get-stdin": "^4.0.1", + "meow": "^3.5.0", + "semver-regex": "^1.0.0" }, "dependencies": { "array-uniq": { @@ -2123,16 +2123,16 @@ "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", "dev": true, "requires": { - "camelcase-keys": "2.1.0", - "decamelize": "1.2.0", - "loud-rejection": "1.3.0", - "map-obj": "1.0.1", - "minimist": "1.2.0", - "normalize-package-data": "2.3.5", - "object-assign": "4.1.0", - "read-pkg-up": "1.0.1", - "redent": "1.0.0", - "trim-newlines": "1.0.0" + "camelcase-keys": "^2.0.0", + "decamelize": "^1.1.2", + "loud-rejection": "^1.0.0", + "map-obj": "^1.0.1", + "minimist": "^1.1.3", + "normalize-package-data": "^2.3.4", + "object-assign": "^4.0.1", + "read-pkg-up": "^1.0.1", + "redent": "^1.0.0", + "trim-newlines": "^1.0.0" }, "dependencies": { "camelcase-keys": { @@ -2141,8 +2141,8 @@ "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", "dev": true, "requires": { - "camelcase": "2.1.1", - "map-obj": "1.0.1" + "camelcase": "^2.0.0", + "map-obj": "^1.0.0" }, "dependencies": { "camelcase": { @@ -2165,8 +2165,8 @@ "integrity": "sha1-8omjkvF9K6rPGU0KZzAEOUQzsRU=", "dev": true, "requires": { - "array-find-index": "1.0.1", - "signal-exit": "2.1.2" + "array-find-index": "^1.0.0", + "signal-exit": "^2.1.2" }, "dependencies": { "array-find-index": { @@ -2195,10 +2195,10 @@ "integrity": "sha1-jZJPFClg4Xd+f/4XBUNjHMfLAt8=", "dev": true, "requires": { - "hosted-git-info": "2.1.5", - "is-builtin-module": "1.0.0", - "semver": "4.3.6", - "validate-npm-package-license": "3.0.1" + "hosted-git-info": "^2.1.4", + "is-builtin-module": "^1.0.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" }, "dependencies": { "hosted-git-info": { @@ -2213,7 +2213,7 @@ "integrity": "sha1-VAVy0096wxGfj3bDDLwbHgN6/74=", "dev": true, "requires": { - "builtin-modules": "1.1.1" + "builtin-modules": "^1.0.0" }, "dependencies": { "builtin-modules": { @@ -2230,8 +2230,8 @@ "integrity": "sha1-KAS6vnEq0zeUWaz74kdGqywwP7w=", "dev": true, "requires": { - "spdx-correct": "1.0.2", - "spdx-expression-parse": "1.0.2" + "spdx-correct": "~1.0.0", + "spdx-expression-parse": "~1.0.0" }, "dependencies": { "spdx-correct": { @@ -2240,7 +2240,7 @@ "integrity": "sha1-SzBz2TP/UfORLwOsVRlJikFQ20A=", "dev": true, "requires": { - "spdx-license-ids": "1.2.1" + "spdx-license-ids": "^1.0.2" }, "dependencies": { "spdx-license-ids": { @@ -2257,8 +2257,8 @@ "integrity": "sha1-1SsUtelnB3FECvIlvLVjEirEUvY=", "dev": true, "requires": { - "spdx-exceptions": "1.0.4", - "spdx-license-ids": "1.2.1" + "spdx-exceptions": "^1.0.4", + "spdx-license-ids": "^1.0.0" }, "dependencies": { "spdx-exceptions": { @@ -2291,8 +2291,8 @@ "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", "dev": true, "requires": { - "find-up": "1.1.2", - "read-pkg": "1.1.0" + "find-up": "^1.0.0", + "read-pkg": "^1.0.0" }, "dependencies": { "find-up": { @@ -2301,8 +2301,8 @@ "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", "dev": true, "requires": { - "path-exists": "2.1.0", - "pinkie-promise": "2.0.1" + "path-exists": "^2.0.0", + "pinkie-promise": "^2.0.0" }, "dependencies": { "path-exists": { @@ -2311,7 +2311,7 @@ "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", "dev": true, "requires": { - "pinkie-promise": "2.0.1" + "pinkie-promise": "^2.0.0" } }, "pinkie-promise": { @@ -2320,7 +2320,7 @@ "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", "dev": true, "requires": { - "pinkie": "2.0.4" + "pinkie": "^2.0.0" }, "dependencies": { "pinkie": { @@ -2339,9 +2339,9 @@ "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", "dev": true, "requires": { - "load-json-file": "1.1.0", - "normalize-package-data": "2.3.5", - "path-type": "1.1.0" + "load-json-file": "^1.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^1.0.0" }, "dependencies": { "load-json-file": { @@ -2350,11 +2350,11 @@ "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", "dev": true, "requires": { - "graceful-fs": "4.1.4", - "parse-json": "2.2.0", - "pify": "2.3.0", - "pinkie-promise": "2.0.1", - "strip-bom": "2.0.0" + "graceful-fs": "^4.1.2", + "parse-json": "^2.2.0", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0", + "strip-bom": "^2.0.0" }, "dependencies": { "graceful-fs": { @@ -2369,7 +2369,7 @@ "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", "dev": true, "requires": { - "error-ex": "1.3.0" + "error-ex": "^1.2.0" }, "dependencies": { "error-ex": { @@ -2378,7 +2378,7 @@ "integrity": "sha1-5ntD8+gsluo6WE/+4Ln8MyXYAtk=", "dev": true, "requires": { - "is-arrayish": "0.2.1" + "is-arrayish": "^0.2.1" }, "dependencies": { "is-arrayish": { @@ -2403,7 +2403,7 @@ "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", "dev": true, "requires": { - "pinkie": "2.0.4" + "pinkie": "^2.0.0" }, "dependencies": { "pinkie": { @@ -2420,7 +2420,7 @@ "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", "dev": true, "requires": { - "is-utf8": "0.2.1" + "is-utf8": "^0.2.0" }, "dependencies": { "is-utf8": { @@ -2439,9 +2439,9 @@ "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", "dev": true, "requires": { - "graceful-fs": "4.1.4", - "pify": "2.3.0", - "pinkie-promise": "2.0.1" + "graceful-fs": "^4.1.2", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" }, "dependencies": { "graceful-fs": { @@ -2462,7 +2462,7 @@ "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", "dev": true, "requires": { - "pinkie": "2.0.4" + "pinkie": "^2.0.0" }, "dependencies": { "pinkie": { @@ -2485,8 +2485,8 @@ "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=", "dev": true, "requires": { - "indent-string": "2.1.0", - "strip-indent": "1.0.1" + "indent-string": "^2.1.0", + "strip-indent": "^1.0.1" }, "dependencies": { "indent-string": { @@ -2495,7 +2495,7 @@ "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", "dev": true, "requires": { - "repeating": "2.0.1" + "repeating": "^2.0.0" }, "dependencies": { "repeating": { @@ -2504,7 +2504,7 @@ "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", "dev": true, "requires": { - "is-finite": "1.0.1" + "is-finite": "^1.0.0" }, "dependencies": { "is-finite": { @@ -2513,7 +2513,7 @@ "integrity": "sha1-ZDhgPq6+J5OUj/SkJi7I2z1iWXs=", "dev": true, "requires": { - "number-is-nan": "1.0.0" + "number-is-nan": "^1.0.0" }, "dependencies": { "number-is-nan": { @@ -2534,7 +2534,7 @@ "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=", "dev": true, "requires": { - "get-stdin": "4.0.1" + "get-stdin": "^4.0.1" } } } @@ -2575,7 +2575,7 @@ "integrity": "sha1-iQT13I0AkYQcjfKAQv0AEyOxMNc=", "dev": true, "requires": { - "semver": "5.1.0" + "semver": "^5.0.3" }, "dependencies": { "semver": { @@ -2614,8 +2614,8 @@ "integrity": "sha1-bb4uauxTqiKc+sCtmnyZ4kGEhI0=", "dev": true, "requires": { - "cache-swap": "0.3.0", - "grunt": "0.4.5" + "cache-swap": "~0.3.0", + "grunt": "~0.4.1" }, "dependencies": { "argparse": { @@ -2624,8 +2624,8 @@ "integrity": "sha1-z9AeD7uj1srtBJ+9dY1A9lGW9Xw=", "dev": true, "requires": { - "underscore": "1.7.0", - "underscore.string": "2.4.0" + "underscore": "~1.7.0", + "underscore.string": "~2.4.0" }, "dependencies": { "underscore.string": { @@ -2672,8 +2672,8 @@ "integrity": "sha1-fz56l7gjksZTvwZYm9hRkOk8NoM=", "dev": true, "requires": { - "glob": "3.2.11", - "lodash": "2.4.2" + "glob": "~3.2.9", + "lodash": "~2.4.1" }, "dependencies": { "glob": { @@ -2682,8 +2682,8 @@ "integrity": "sha1-Spc/Y1uRkPcV0QmH1cAP0oFevj0=", "dev": true, "requires": { - "inherits": "2.0.3", - "minimatch": "0.3.0" + "inherits": "2", + "minimatch": "0.3" } }, "lodash": { @@ -2698,8 +2698,8 @@ "integrity": "sha1-J12O2qxPG7MyZHIInnlJyDlGmd0=", "dev": true, "requires": { - "lru-cache": "2.7.3", - "sigmund": "1.0.1" + "lru-cache": "2", + "sigmund": "~1.0.0" } } } @@ -2710,9 +2710,9 @@ "integrity": "sha1-0p4KBV3qUTj00H7UDomC6DwgZs0=", "dev": true, "requires": { - "graceful-fs": "1.2.3", - "inherits": "1.0.2", - "minimatch": "0.2.14" + "graceful-fs": "~1.2.0", + "inherits": "1", + "minimatch": "~0.2.11" }, "dependencies": { "inherits": { @@ -2735,26 +2735,26 @@ "integrity": "sha1-VpN81RlDJK3/bSB2MYMqnWuk5/A=", "dev": true, "requires": { - "async": "0.1.22", - "coffee-script": "1.3.3", - "colors": "0.6.2", + "async": "~0.1.22", + "coffee-script": "~1.3.3", + "colors": "~0.6.2", "dateformat": "1.0.2-1.2.3", - "eventemitter2": "0.4.14", - "exit": "0.1.2", - "findup-sync": "0.1.3", - "getobject": "0.1.0", - "glob": "3.1.21", - "grunt-legacy-log": "0.1.3", - "grunt-legacy-util": "0.2.0", - "hooker": "0.2.3", - "iconv-lite": "0.2.11", - "js-yaml": "2.0.5", - "lodash": "0.9.2", - "minimatch": "0.2.14", - "nopt": "1.0.10", - "rimraf": "2.2.8", - "underscore.string": "2.2.1", - "which": "1.0.9" + "eventemitter2": "~0.4.13", + "exit": "~0.1.1", + "findup-sync": "~0.1.2", + "getobject": "~0.1.0", + "glob": "~3.1.21", + "grunt-legacy-log": "~0.1.0", + "grunt-legacy-util": "~0.2.0", + "hooker": "~0.2.3", + "iconv-lite": "~0.2.11", + "js-yaml": "~2.0.5", + "lodash": "~0.9.2", + "minimatch": "~0.2.12", + "nopt": "~1.0.10", + "rimraf": "~2.2.8", + "underscore.string": "~2.2.1", + "which": "~1.0.5" } }, "grunt-legacy-log": { @@ -2763,11 +2763,11 @@ "integrity": "sha1-7ClCboAwIa9ZAp+H0vnNczWgVTE=", "dev": true, "requires": { - "colors": "0.6.2", - "grunt-legacy-log-utils": "0.1.1", - "hooker": "0.2.3", - "lodash": "2.4.2", - "underscore.string": "2.3.3" + "colors": "~0.6.2", + "grunt-legacy-log-utils": "~0.1.1", + "hooker": "~0.2.3", + "lodash": "~2.4.1", + "underscore.string": "~2.3.3" }, "dependencies": { "lodash": { @@ -2790,9 +2790,9 @@ "integrity": "sha1-wHBrndkGThFvNvI/5OawSGcsD34=", "dev": true, "requires": { - "colors": "0.6.2", - "lodash": "2.4.2", - "underscore.string": "2.3.3" + "colors": "~0.6.2", + "lodash": "~2.4.1", + "underscore.string": "~2.3.3" }, "dependencies": { "lodash": { @@ -2815,13 +2815,13 @@ "integrity": "sha1-kzJIhNv343qf98Am3/RR2UqeVUs=", "dev": true, "requires": { - "async": "0.1.22", - "exit": "0.1.2", - "getobject": "0.1.0", - "hooker": "0.2.3", - "lodash": "0.9.2", - "underscore.string": "2.2.1", - "which": "1.0.9" + "async": "~0.1.22", + "exit": "~0.1.1", + "getobject": "~0.1.0", + "hooker": "~0.2.3", + "lodash": "~0.9.2", + "underscore.string": "~2.2.1", + "which": "~1.0.5" } }, "iconv-lite": { @@ -2836,8 +2836,8 @@ "integrity": "sha1-olrmUJmZ6X3yeMZxnaEb0Gh3Q6g=", "dev": true, "requires": { - "argparse": "0.1.16", - "esprima": "1.0.4" + "argparse": "~ 0.1.11", + "esprima": "~ 1.0.2" } }, "lodash": { @@ -2852,8 +2852,8 @@ "integrity": "sha1-x054BXT2PG+aCQ6Q775u9TpqdWo=", "dev": true, "requires": { - "lru-cache": "2.7.3", - "sigmund": "1.0.1" + "lru-cache": "2", + "sigmund": "~1.0.0" } }, "nopt": { @@ -2862,7 +2862,7 @@ "integrity": "sha1-bd0hvSoxQXuScn3Vhfim83YI6+4=", "dev": true, "requires": { - "abbrev": "1.1.1" + "abbrev": "1" } }, "rimraf": { @@ -2894,10 +2894,10 @@ "grunt-run": { "version": "0.8.1", "resolved": "https://registry.npmjs.org/grunt-run/-/grunt-run-0.8.1.tgz", - "integrity": "sha512-+wvoOJevugcjMLldbVCyspRHHntwVIJiTGjx0HFq+UwXhVPe7AaAiUdY4135CS68pAoRLhd7pAILpL2ITe1tmA==", + "integrity": "sha1-UC+YiUeln5rVZ+Lcte7t7HEpgOw=", "dev": true, "requires": { - "strip-ansi": "3.0.1" + "strip-ansi": "^3.0.0" } }, "grunt-usemin": { @@ -2906,16 +2906,16 @@ "integrity": "sha1-WrZ5UQ1nLOpWbMcXq+i4oAn2QcI=", "dev": true, "requires": { - "chalk": "1.1.3", - "debug": "2.6.9", - "lodash": "3.10.1", - "path-exists": "1.0.0" + "chalk": "^1.1.1", + "debug": "^2.1.3", + "lodash": "^3.6.0", + "path-exists": "^1.0.0" }, "dependencies": { "debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", "dev": true, "requires": { "ms": "2.0.0" @@ -2947,9 +2947,9 @@ "integrity": "sha1-EAP3n5uluSMVedOOr8M/awmNdPM=", "dev": true, "requires": { - "async": "2.6.1", - "chalk": "1.1.3", - "js-yaml": "3.12.0" + "async": "^2.1.5", + "chalk": "^1.1.3", + "js-yaml": "^3.8.1" }, "dependencies": { "async": { @@ -2958,7 +2958,7 @@ "integrity": "sha512-fNEiL2+AZt6AlAw/29Cr0UDe4sRAHCpEHh54WMz+Bb7QfNcFw4h3loofyJpLeQs4Yx7yuqu/2dLgM5hKOs6HlQ==", "dev": true, "requires": { - "lodash": "4.17.10" + "lodash": "^4.17.10" } }, "esprima": { @@ -2973,8 +2973,8 @@ "integrity": "sha512-PIt2cnwmPfL4hKNwqeiuz4bKfnzHTBv6HyVgjahA6mPLwPDzjDWrplJBMjHUFxku/N3FlmrbyPclad+I+4mJ3A==", "dev": true, "requires": { - "argparse": "1.0.9", - "esprima": "4.0.1" + "argparse": "^1.0.7", + "esprima": "^4.0.0" }, "dependencies": { "argparse": { @@ -2983,7 +2983,7 @@ "integrity": "sha512-iK7YPKV+GsvihPUTKcM3hh2gq47zSFCpVDv/Ay2O9mzuD7dfvLV4vhms4XcjZvv4VRgXuGLMEts51IlTjS11/A==", "dev": true, "requires": { - "sprintf-js": "1.0.3" + "sprintf-js": "~1.0.2" } } } @@ -3003,16 +3003,16 @@ "dev": true, "optional": true, "requires": { - "archive-type": "3.2.0", - "decompress": "3.0.0", - "gulp-util": "3.0.8", - "readable-stream": "2.3.6" + "archive-type": "^3.0.0", + "decompress": "^3.0.0", + "gulp-util": "^3.0.1", + "readable-stream": "^2.0.2" } }, "gulp-rename": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/gulp-rename/-/gulp-rename-1.4.0.tgz", - "integrity": "sha512-swzbIGb/arEoFK89tPY58vg3Ok1bw+d35PfUNwWqdo7KM4jkmuGA78JiDNqR+JeZFaeeHnRg9N7aihX3YPmsyg==", + "integrity": "sha1-3hxxjnxAla6GH3KW708ySGSCQL0=", "dev": true }, "gulp-sourcemaps": { @@ -3021,21 +3021,21 @@ "integrity": "sha1-uG/zSdgBzrVuHZ59x7vLS33uYAw=", "dev": true, "requires": { - "convert-source-map": "1.6.0", - "graceful-fs": "4.1.15", - "strip-bom": "2.0.0", - "through2": "2.0.5", - "vinyl": "1.2.0" + "convert-source-map": "^1.1.1", + "graceful-fs": "^4.1.2", + "strip-bom": "^2.0.0", + "through2": "^2.0.0", + "vinyl": "^1.0.0" }, "dependencies": { "through2": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", - "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", + "integrity": "sha1-AcHjnrMdB8t9A6lqcIIyYLIxMs0=", "dev": true, "requires": { - "readable-stream": "2.3.6", - "xtend": "4.0.1" + "readable-stream": "~2.3.6", + "xtend": "~4.0.1" } } } @@ -3047,24 +3047,24 @@ "dev": true, "optional": true, "requires": { - "array-differ": "1.0.0", - "array-uniq": "1.0.3", - "beeper": "1.1.1", - "chalk": "1.1.3", - "dateformat": "2.2.0", - "fancy-log": "1.3.3", - "gulplog": "1.0.0", - "has-gulplog": "0.1.0", - "lodash._reescape": "3.0.0", - "lodash._reevaluate": "3.0.0", - "lodash._reinterpolate": "3.0.0", - "lodash.template": "3.6.2", - "minimist": "1.2.0", - "multipipe": "0.1.2", - "object-assign": "3.0.0", + "array-differ": "^1.0.0", + "array-uniq": "^1.0.2", + "beeper": "^1.0.0", + "chalk": "^1.0.0", + "dateformat": "^2.0.0", + "fancy-log": "^1.1.0", + "gulplog": "^1.0.0", + "has-gulplog": "^0.1.0", + "lodash._reescape": "^3.0.0", + "lodash._reevaluate": "^3.0.0", + "lodash._reinterpolate": "^3.0.0", + "lodash.template": "^3.0.0", + "minimist": "^1.1.0", + "multipipe": "^0.1.2", + "object-assign": "^3.0.0", "replace-ext": "0.0.1", - "through2": "2.0.5", - "vinyl": "0.5.3" + "through2": "^2.0.0", + "vinyl": "^0.5.0" }, "dependencies": { "dateformat": { @@ -3084,12 +3084,12 @@ "through2": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", - "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", + "integrity": "sha1-AcHjnrMdB8t9A6lqcIIyYLIxMs0=", "dev": true, "optional": true, "requires": { - "readable-stream": "2.3.6", - "xtend": "4.0.1" + "readable-stream": "~2.3.6", + "xtend": "~4.0.1" } }, "vinyl": { @@ -3099,8 +3099,8 @@ "dev": true, "optional": true, "requires": { - "clone": "1.0.4", - "clone-stats": "0.0.1", + "clone": "^1.0.0", + "clone-stats": "^0.0.1", "replace-ext": "0.0.1" } } @@ -3113,7 +3113,7 @@ "dev": true, "optional": true, "requires": { - "glogg": "1.0.2" + "glogg": "^1.0.0" } }, "gzip-size": { @@ -3122,8 +3122,8 @@ "integrity": "sha1-Zs+LEBBHInuVus5uodoMF37Vwi8=", "dev": true, "requires": { - "browserify-zlib": "0.1.4", - "concat-stream": "1.6.2" + "browserify-zlib": "^0.1.4", + "concat-stream": "^1.4.1" } }, "has-ansi": { @@ -3132,7 +3132,7 @@ "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", "dev": true, "requires": { - "ansi-regex": "2.1.1" + "ansi-regex": "^2.0.0" }, "dependencies": { "ansi-regex": { @@ -3156,7 +3156,7 @@ "dev": true, "optional": true, "requires": { - "sparkles": "1.0.1" + "sparkles": "^1.0.0" } }, "hooker": { @@ -3177,11 +3177,11 @@ "integrity": "sha1-mWwosZFRaovoZQGn15dX5ccMEGg=", "dev": true, "requires": { - "domelementtype": "1.3.1", - "domhandler": "2.3.0", - "domutils": "1.5.1", - "entities": "1.0.0", - "readable-stream": "1.1.14" + "domelementtype": "1", + "domhandler": "2.3", + "domutils": "1.5", + "entities": "1.0", + "readable-stream": "1.1" }, "dependencies": { "isarray": { @@ -3196,10 +3196,10 @@ "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", "dev": true, "requires": { - "core-util-is": "1.0.2", - "inherits": "2.0.3", + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", "isarray": "0.0.1", - "string_decoder": "0.10.31" + "string_decoder": "~0.10.x" } }, "string_decoder": { @@ -3219,10 +3219,10 @@ "iconv-lite": { "version": "0.4.24", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "integrity": "sha1-ICK0sl+93CHS9SSXSkdKr+czkIs=", "dev": true, "requires": { - "safer-buffer": "2.1.2" + "safer-buffer": ">= 2.1.2 < 3" } }, "imagemin": { @@ -3231,16 +3231,16 @@ "integrity": "sha1-6Q5/CTaDZZXxj6Ff6Qb0+iWeqEc=", "dev": true, "requires": { - "buffer-to-vinyl": "1.1.0", - "concat-stream": "1.6.2", - "imagemin-gifsicle": "4.2.0", - "imagemin-jpegtran": "4.3.2", - "imagemin-optipng": "4.3.0", - "imagemin-svgo": "4.2.1", - "optional": "0.1.4", - "readable-stream": "2.3.6", - "stream-combiner2": "1.1.1", - "vinyl-fs": "2.4.4" + "buffer-to-vinyl": "^1.0.0", + "concat-stream": "^1.4.6", + "imagemin-gifsicle": "^4.0.0", + "imagemin-jpegtran": "^4.0.0", + "imagemin-optipng": "^4.0.0", + "imagemin-svgo": "^4.0.0", + "optional": "^0.1.0", + "readable-stream": "^2.0.0", + "stream-combiner2": "^1.1.1", + "vinyl-fs": "^2.1.1" } }, "imagemin-gifsicle": { @@ -3250,9 +3250,9 @@ "dev": true, "optional": true, "requires": { - "gifsicle": "3.0.4", - "is-gif": "1.0.0", - "through2": "0.6.5" + "gifsicle": "^3.0.0", + "is-gif": "^1.0.0", + "through2": "^0.6.1" } }, "imagemin-jpegtran": { @@ -3262,20 +3262,20 @@ "dev": true, "optional": true, "requires": { - "is-jpg": "1.0.1", - "jpegtran-bin": "3.2.0", - "through2": "2.0.5" + "is-jpg": "^1.0.0", + "jpegtran-bin": "^3.0.0", + "through2": "^2.0.0" }, "dependencies": { "through2": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", - "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", + "integrity": "sha1-AcHjnrMdB8t9A6lqcIIyYLIxMs0=", "dev": true, "optional": true, "requires": { - "readable-stream": "2.3.6", - "xtend": "4.0.1" + "readable-stream": "~2.3.6", + "xtend": "~4.0.1" } } } @@ -3287,10 +3287,10 @@ "dev": true, "optional": true, "requires": { - "exec-buffer": "2.0.1", - "is-png": "1.1.0", - "optipng-bin": "3.1.4", - "through2": "0.6.5" + "exec-buffer": "^2.0.0", + "is-png": "^1.0.0", + "optipng-bin": "^3.0.0", + "through2": "^0.6.1" } }, "imagemin-svgo": { @@ -3300,20 +3300,20 @@ "dev": true, "optional": true, "requires": { - "is-svg": "1.1.1", - "svgo": "0.6.6", - "through2": "2.0.5" + "is-svg": "^1.0.0", + "svgo": "^0.6.0", + "through2": "^2.0.0" }, "dependencies": { "through2": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", - "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", + "integrity": "sha1-AcHjnrMdB8t9A6lqcIIyYLIxMs0=", "dev": true, "optional": true, "requires": { - "readable-stream": "2.3.6", - "xtend": "4.0.1" + "readable-stream": "~2.3.6", + "xtend": "~4.0.1" } } } @@ -3324,7 +3324,7 @@ "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", "dev": true, "requires": { - "repeating": "2.0.1" + "repeating": "^2.0.0" } }, "inflight": { @@ -3333,8 +3333,8 @@ "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", "dev": true, "requires": { - "once": "1.4.0", - "wrappy": "1.0.2" + "once": "^1.3.0", + "wrappy": "1" } }, "inherits": { @@ -3370,7 +3370,7 @@ "dev": true, "optional": true, "requires": { - "is-relative": "0.1.3" + "is-relative": "^0.1.0" } }, "is-arrayish": { @@ -3382,7 +3382,7 @@ "is-buffer": { "version": "1.1.6", "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", - "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", + "integrity": "sha1-76ouqdqg16suoTqXsritUf776L4=", "dev": true }, "is-bzip2": { @@ -3404,7 +3404,7 @@ "integrity": "sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ=", "dev": true, "requires": { - "is-primitive": "2.0.0" + "is-primitive": "^2.0.0" } }, "is-extendable": { @@ -3425,7 +3425,7 @@ "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=", "dev": true, "requires": { - "number-is-nan": "1.0.1" + "number-is-nan": "^1.0.0" } }, "is-gif": { @@ -3441,7 +3441,7 @@ "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", "dev": true, "requires": { - "is-extglob": "2.1.1" + "is-extglob": "^2.1.0" } }, "is-gzip": { @@ -3471,7 +3471,7 @@ "integrity": "sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=", "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" } }, "is-obj": { @@ -3544,7 +3544,7 @@ "is-url": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/is-url/-/is-url-1.2.4.tgz", - "integrity": "sha512-ITvGim8FhRiYe4IQ5uHSkj7pVaPDrCTkNd3yq3cV7iZAcJdHTUMPMEHcqSOy9xZ9qFenQCvi+2wjH9a1nXqHww==", + "integrity": "sha1-BKTfRtKMTP89c9Af8Gq+sxihqlI=", "dev": true, "optional": true }, @@ -3595,35 +3595,35 @@ "dev": true, "optional": true, "requires": { - "bin-build": "2.2.0", - "bin-wrapper": "3.0.2", - "logalot": "2.1.0" + "bin-build": "^2.0.0", + "bin-wrapper": "^3.0.0", + "logalot": "^2.0.0" } }, "js-yaml": { "version": "3.13.1", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", - "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", + "integrity": "sha1-r/FRswv9+o5J4F2iLnQV6d+jeEc=", "dev": true, "requires": { - "argparse": "1.0.10", - "esprima": "4.0.1" + "argparse": "^1.0.7", + "esprima": "^4.0.0" } }, "jshint": { "version": "2.9.7", "resolved": "https://registry.npmjs.org/jshint/-/jshint-2.9.7.tgz", - "integrity": "sha512-Q8XN38hGsVQhdlM+4gd1Xl7OB1VieSuCJf+fEJjpo59JH99bVJhXRXAh26qQ15wfdd1VPMuDWNeSWoNl53T4YA==", + "integrity": "sha1-A4o/pcMo+jqwPd/YXfiNPYe+3L0=", "dev": true, "requires": { - "cli": "1.0.1", - "console-browserify": "1.1.0", - "exit": "0.1.2", - "htmlparser2": "3.8.3", - "lodash": "4.17.11", - "minimatch": "3.0.4", - "shelljs": "0.3.0", - "strip-json-comments": "1.0.4" + "cli": "~1.0.0", + "console-browserify": "1.1.x", + "exit": "0.1.x", + "htmlparser2": "3.8.x", + "lodash": "~4.17.10", + "minimatch": "~3.0.2", + "shelljs": "0.3.x", + "strip-json-comments": "1.0.x" }, "dependencies": { "lodash": { @@ -3646,12 +3646,12 @@ "integrity": "sha1-JCCCosA1rgP9gQROBXDMQgjPbmE=", "dev": true, "requires": { - "beeper": "1.1.1", - "chalk": "1.1.3", - "log-symbols": "1.0.2", - "plur": "2.1.2", - "string-length": "1.0.1", - "text-table": "0.2.0" + "beeper": "^1.1.0", + "chalk": "^1.0.0", + "log-symbols": "^1.0.0", + "plur": "^2.1.0", + "string-length": "^1.0.0", + "text-table": "^0.2.0" } }, "json-stable-stringify-without-jsonify": { @@ -3666,7 +3666,7 @@ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "dev": true, "requires": { - "is-buffer": "1.1.6" + "is-buffer": "^1.1.5" } }, "lazy-req": { @@ -3682,13 +3682,13 @@ "integrity": "sha1-9plf4PggOS9hOWvolGJAe7dxaOQ=", "dev": true, "requires": { - "readable-stream": "2.3.6" + "readable-stream": "^2.0.5" } }, "livereload-js": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/livereload-js/-/livereload-js-2.4.0.tgz", - "integrity": "sha512-XPQH8Z2GDP/Hwz2PCDrh2mth4yFejwA1OZ/81Ti3LgKyhDcEjsSsqFWZojHG0va/duGd+WyosY7eXLDoOyqcPw==", + "integrity": "sha1-RHwxzx6pq1L8INthXF3fZ494AJw=", "dev": true }, "load-json-file": { @@ -3697,11 +3697,11 @@ "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", "dev": true, "requires": { - "graceful-fs": "4.1.15", - "parse-json": "2.2.0", - "pify": "2.3.0", - "pinkie-promise": "2.0.1", - "strip-bom": "2.0.0" + "graceful-fs": "^4.1.2", + "parse-json": "^2.2.0", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0", + "strip-bom": "^2.0.0" } }, "lodash": { @@ -3780,7 +3780,7 @@ "dev": true, "optional": true, "requires": { - "lodash._root": "3.0.1" + "lodash._root": "^3.0.0" } }, "lodash.isarguments": { @@ -3810,9 +3810,9 @@ "dev": true, "optional": true, "requires": { - "lodash._getnative": "3.9.1", - "lodash.isarguments": "3.1.0", - "lodash.isarray": "3.0.4" + "lodash._getnative": "^3.0.0", + "lodash.isarguments": "^3.0.0", + "lodash.isarray": "^3.0.0" } }, "lodash.restparam": { @@ -3829,15 +3829,15 @@ "dev": true, "optional": true, "requires": { - "lodash._basecopy": "3.0.1", - "lodash._basetostring": "3.0.1", - "lodash._basevalues": "3.0.0", - "lodash._isiterateecall": "3.0.9", - "lodash._reinterpolate": "3.0.0", - "lodash.escape": "3.2.0", - "lodash.keys": "3.1.2", - "lodash.restparam": "3.6.1", - "lodash.templatesettings": "3.1.1" + "lodash._basecopy": "^3.0.0", + "lodash._basetostring": "^3.0.0", + "lodash._basevalues": "^3.0.0", + "lodash._isiterateecall": "^3.0.0", + "lodash._reinterpolate": "^3.0.0", + "lodash.escape": "^3.0.0", + "lodash.keys": "^3.0.0", + "lodash.restparam": "^3.0.0", + "lodash.templatesettings": "^3.0.0" } }, "lodash.templatesettings": { @@ -3847,8 +3847,8 @@ "dev": true, "optional": true, "requires": { - "lodash._reinterpolate": "3.0.0", - "lodash.escape": "3.2.0" + "lodash._reinterpolate": "^3.0.0", + "lodash.escape": "^3.0.0" } }, "log-symbols": { @@ -3857,7 +3857,7 @@ "integrity": "sha1-N2/3tY6jCGoPCfrMdGF+ylAeGhg=", "dev": true, "requires": { - "chalk": "1.1.3" + "chalk": "^1.0.0" } }, "logalot": { @@ -3867,8 +3867,8 @@ "dev": true, "optional": true, "requires": { - "figures": "1.7.0", - "squeak": "1.3.0" + "figures": "^1.3.5", + "squeak": "^1.0.0" } }, "longest": { @@ -3884,14 +3884,14 @@ "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", "dev": true, "requires": { - "currently-unhandled": "0.4.1", - "signal-exit": "3.0.2" + "currently-unhandled": "^0.4.1", + "signal-exit": "^3.0.0" } }, "lowercase-keys": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", - "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", + "integrity": "sha1-b54wtHCE2XGnyCD/FabFFnt0wm8=", "dev": true, "optional": true }, @@ -3902,10 +3902,10 @@ "dev": true, "optional": true, "requires": { - "get-stdin": "4.0.1", - "indent-string": "2.1.0", - "longest": "1.0.1", - "meow": "3.7.0" + "get-stdin": "^4.0.1", + "indent-string": "^2.1.0", + "longest": "^1.0.0", + "meow": "^3.3.0" } }, "lru-cache": { @@ -3926,9 +3926,9 @@ "integrity": "sha1-pXozgESR+64girqPaDgEN6vC3KU=", "dev": true, "requires": { - "findup-sync": "0.3.0", - "micromatch": "2.3.11", - "resolve": "1.1.7", + "findup-sync": "~0.3.0", + "micromatch": "^2.3.7", + "resolve": "~1.1.6", "stack-trace": "0.0.9" }, "dependencies": { @@ -3943,7 +3943,7 @@ "math-random": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/math-random/-/math-random-1.0.4.tgz", - "integrity": "sha512-rUxjysqif/BZQH2yhd5Aaq7vXMSx9NdEsQcyA07uEzIvxgI7zIr33gGsh+RU0/XjmQpCW7RsVof1vlkvQVCK5A==", + "integrity": "sha1-XdaUPJOFSCZwFtTjTwV1gwgMUUw=", "dev": true }, "maxmin": { @@ -3952,10 +3952,10 @@ "integrity": "sha512-jypoV6wTPuz/ngkc2sDZnFvpvx14QICNKS/jK9RbkmiQQJZ4JWstIszA8iT/z9tPSF/vXQ5qtG0h65N9tiLIKA==", "dev": true, "requires": { - "chalk": "1.1.3", - "figures": "1.7.0", - "gzip-size": "1.0.0", - "pretty-bytes": "1.0.4" + "chalk": "^1.0.0", + "figures": "^1.0.1", + "gzip-size": "^1.0.0", + "pretty-bytes": "^1.0.0" } }, "meow": { @@ -3964,16 +3964,16 @@ "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", "dev": true, "requires": { - "camelcase-keys": "2.1.0", - "decamelize": "1.2.0", - "loud-rejection": "1.6.0", - "map-obj": "1.0.1", - "minimist": "1.2.0", - "normalize-package-data": "2.5.0", - "object-assign": "4.1.1", - "read-pkg-up": "1.0.1", - "redent": "1.0.0", - "trim-newlines": "1.0.0" + "camelcase-keys": "^2.0.0", + "decamelize": "^1.1.2", + "loud-rejection": "^1.0.0", + "map-obj": "^1.0.1", + "minimist": "^1.1.3", + "normalize-package-data": "^2.3.4", + "object-assign": "^4.0.1", + "read-pkg-up": "^1.0.1", + "redent": "^1.0.0", + "trim-newlines": "^1.0.0" } }, "merge-stream": { @@ -3982,7 +3982,7 @@ "integrity": "sha1-QEEgLVCKNCugAXQAjfDCUbjBNeE=", "dev": true, "requires": { - "readable-stream": "2.3.6" + "readable-stream": "^2.0.1" } }, "micromatch": { @@ -3991,19 +3991,19 @@ "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=", "dev": true, "requires": { - "arr-diff": "2.0.0", - "array-unique": "0.2.1", - "braces": "1.8.5", - "expand-brackets": "0.1.5", - "extglob": "0.3.2", - "filename-regex": "2.0.1", - "is-extglob": "1.0.0", - "is-glob": "2.0.1", - "kind-of": "3.2.2", - "normalize-path": "2.1.1", - "object.omit": "2.0.1", - "parse-glob": "3.0.4", - "regex-cache": "0.4.4" + "arr-diff": "^2.0.0", + "array-unique": "^0.2.1", + "braces": "^1.8.2", + "expand-brackets": "^0.1.4", + "extglob": "^0.3.1", + "filename-regex": "^2.0.0", + "is-extglob": "^1.0.0", + "is-glob": "^2.0.1", + "kind-of": "^3.0.2", + "normalize-path": "^2.0.1", + "object.omit": "^2.0.0", + "parse-glob": "^3.0.4", + "regex-cache": "^0.4.2" }, "dependencies": { "is-extglob": { @@ -4018,7 +4018,7 @@ "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", "dev": true, "requires": { - "is-extglob": "1.0.0" + "is-extglob": "^1.0.0" } } } @@ -4035,16 +4035,16 @@ "integrity": "sha1-MQ4VnbI+B3+Lsit0jav6SVcUCqY=", "dev": true, "requires": { - "mime-db": "1.12.0" + "mime-db": "~1.12.0" } }, "minimatch": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "integrity": "sha1-UWbihkV/AzBgZL5Ul+jbsMPTIIM=", "dev": true, "requires": { - "brace-expansion": "1.1.11" + "brace-expansion": "^1.1.7" } }, "minimist": { @@ -4093,7 +4093,7 @@ "dev": true, "optional": true, "requires": { - "readable-stream": "1.1.14" + "readable-stream": "~1.1.9" } }, "isarray": { @@ -4110,10 +4110,10 @@ "dev": true, "optional": true, "requires": { - "core-util-is": "1.0.2", - "inherits": "2.0.3", + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", "isarray": "0.0.1", - "string_decoder": "0.10.31" + "string_decoder": "~0.10.x" } }, "string_decoder": { @@ -4138,19 +4138,19 @@ "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=", "dev": true, "requires": { - "abbrev": "1.1.1" + "abbrev": "1" } }, "normalize-package-data": { "version": "2.5.0", "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "integrity": "sha1-5m2xg4sgDB38IzIl0SyzZSDiNKg=", "dev": true, "requires": { - "hosted-git-info": "2.7.1", - "resolve": "1.11.0", - "semver": "5.7.0", - "validate-npm-package-license": "3.0.4" + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" } }, "normalize-path": { @@ -4159,7 +4159,7 @@ "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", "dev": true, "requires": { - "remove-trailing-separator": "1.1.0" + "remove-trailing-separator": "^1.0.1" } }, "number-is-nan": { @@ -4180,8 +4180,8 @@ "integrity": "sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo=", "dev": true, "requires": { - "for-own": "0.1.5", - "is-extendable": "0.1.1" + "for-own": "^0.1.4", + "is-extendable": "^0.1.1" } }, "once": { @@ -4190,7 +4190,7 @@ "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", "dev": true, "requires": { - "wrappy": "1.0.2" + "wrappy": "1" } }, "onetime": { @@ -4203,7 +4203,7 @@ "optional": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/optional/-/optional-0.1.4.tgz", - "integrity": "sha512-gtvrrCfkE08wKcgXaVwQVgwEQ8vel2dc5DDBn9RLQZ3YtmtkBss6A2HY6BnJH4N/4Ku97Ri/SF8sNWE2225WJw==", + "integrity": "sha1-zbGpvtxzfSAl9pDO61DgSURP1bM=", "dev": true }, "optipng-bin": { @@ -4213,9 +4213,9 @@ "dev": true, "optional": true, "requires": { - "bin-build": "2.2.0", - "bin-wrapper": "3.0.2", - "logalot": "2.1.0" + "bin-build": "^2.0.0", + "bin-wrapper": "^3.0.0", + "logalot": "^2.0.0" } }, "ordered-read-streams": { @@ -4224,8 +4224,8 @@ "integrity": "sha1-cTfmmzKYuzQiR6G77jiByA4v14s=", "dev": true, "requires": { - "is-stream": "1.1.0", - "readable-stream": "2.3.6" + "is-stream": "^1.0.1", + "readable-stream": "^2.0.1" } }, "os-filter-obj": { @@ -4254,10 +4254,10 @@ "integrity": "sha1-ssN2z7EfNVE7rdFz7wu246OIORw=", "dev": true, "requires": { - "glob-base": "0.3.0", - "is-dotfile": "1.0.3", - "is-extglob": "1.0.0", - "is-glob": "2.0.1" + "glob-base": "^0.3.0", + "is-dotfile": "^1.0.0", + "is-extglob": "^1.0.0", + "is-glob": "^2.0.0" }, "dependencies": { "is-extglob": { @@ -4272,7 +4272,7 @@ "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", "dev": true, "requires": { - "is-extglob": "1.0.0" + "is-extglob": "^1.0.0" } } } @@ -4283,7 +4283,7 @@ "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", "dev": true, "requires": { - "error-ex": "1.3.2" + "error-ex": "^1.2.0" } }, "parse-ms": { @@ -4295,7 +4295,7 @@ "parse-node-version": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/parse-node-version/-/parse-node-version-1.0.1.tgz", - "integrity": "sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==", + "integrity": "sha1-4rXb7eAOf6m8NjYH9TMn6LBzGJs=", "dev": true, "optional": true }, @@ -4311,7 +4311,7 @@ "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", "dev": true, "requires": { - "pinkie-promise": "2.0.1" + "pinkie-promise": "^2.0.0" } }, "path-is-absolute": { @@ -4323,7 +4323,7 @@ "path-parse": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", - "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", + "integrity": "sha1-1i27VnlAXXLEc37FhgDp3c8G0kw=", "dev": true }, "path-type": { @@ -4332,9 +4332,9 @@ "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", "dev": true, "requires": { - "graceful-fs": "4.1.15", - "pify": "2.3.0", - "pinkie-promise": "2.0.1" + "graceful-fs": "^4.1.2", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" } }, "pend": { @@ -4362,7 +4362,7 @@ "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", "dev": true, "requires": { - "pinkie": "2.0.4" + "pinkie": "^2.0.0" } }, "plur": { @@ -4371,7 +4371,7 @@ "integrity": "sha1-dIJFLBoPUI4+NE6uwxLJHCncZVo=", "dev": true, "requires": { - "irregular-plurals": "1.4.0" + "irregular-plurals": "^1.0.0" } }, "prepend-http": { @@ -4393,8 +4393,8 @@ "integrity": "sha1-CiLoIQYJrTVUL4yNXSFZr/B1HIQ=", "dev": true, "requires": { - "get-stdin": "4.0.1", - "meow": "3.7.0" + "get-stdin": "^4.0.1", + "meow": "^3.1.0" } }, "pretty-ms": { @@ -4403,9 +4403,9 @@ "integrity": "sha1-QlfCVt8/sLRR1q/6qwIYhBJpgdw=", "dev": true, "requires": { - "is-finite": "1.0.2", - "parse-ms": "1.0.1", - "plur": "1.0.0" + "is-finite": "^1.0.1", + "parse-ms": "^1.0.0", + "plur": "^1.0.0" }, "dependencies": { "plur": { @@ -4444,18 +4444,18 @@ "randomatic": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/randomatic/-/randomatic-3.1.1.tgz", - "integrity": "sha512-TuDE5KxZ0J461RVjrJZCJc+J+zCkTb1MbH9AQUq68sMhOMcy9jLcb3BrZKgp9q9Ncltdg4QVqWrH02W2EFFVYw==", + "integrity": "sha1-t3bvxZN1mE42xTey9RofCv8Noe0=", "dev": true, "requires": { - "is-number": "4.0.0", - "kind-of": "6.0.2", - "math-random": "1.0.4" + "is-number": "^4.0.0", + "kind-of": "^6.0.0", + "math-random": "^1.0.1" }, "dependencies": { "is-number": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz", - "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==", + "integrity": "sha1-ACbjf1RU1z41bf5lZGmYZ8an8P8=", "dev": true }, "kind-of": { @@ -4472,8 +4472,8 @@ "integrity": "sha1-HQJ8K/oRasxmI7yo8AAWVyqH1CU=", "dev": true, "requires": { - "bytes": "1.0.0", - "string_decoder": "0.10.31" + "bytes": "1", + "string_decoder": "0.10" }, "dependencies": { "string_decoder": { @@ -4487,14 +4487,14 @@ "rc": { "version": "1.2.8", "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", - "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", + "integrity": "sha1-zZJL9SAKB1uDwYjNa54hG3/A0+0=", "dev": true, "optional": true, "requires": { - "deep-extend": "0.6.0", - "ini": "1.3.5", - "minimist": "1.2.0", - "strip-json-comments": "2.0.1" + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" } }, "read-all-stream": { @@ -4504,8 +4504,8 @@ "dev": true, "optional": true, "requires": { - "pinkie-promise": "2.0.1", - "readable-stream": "2.3.6" + "pinkie-promise": "^2.0.0", + "readable-stream": "^2.0.0" } }, "read-pkg": { @@ -4514,9 +4514,9 @@ "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", "dev": true, "requires": { - "load-json-file": "1.1.0", - "normalize-package-data": "2.5.0", - "path-type": "1.1.0" + "load-json-file": "^1.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^1.0.0" } }, "read-pkg-up": { @@ -4525,8 +4525,8 @@ "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", "dev": true, "requires": { - "find-up": "1.1.2", - "read-pkg": "1.1.0" + "find-up": "^1.0.0", + "read-pkg": "^1.0.0" } }, "readable-stream": { @@ -4535,13 +4535,13 @@ "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", "dev": true, "requires": { - "core-util-is": "1.0.2", - "inherits": "2.0.3", - "isarray": "1.0.0", - "process-nextick-args": "2.0.0", - "safe-buffer": "5.1.2", - "string_decoder": "1.1.1", - "util-deprecate": "1.0.2" + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" } }, "redent": { @@ -4550,17 +4550,17 @@ "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=", "dev": true, "requires": { - "indent-string": "2.1.0", - "strip-indent": "1.0.1" + "indent-string": "^2.1.0", + "strip-indent": "^1.0.1" } }, "regex-cache": { "version": "0.4.4", "resolved": "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.4.tgz", - "integrity": "sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ==", + "integrity": "sha1-db3FiioUls7EihKDW8VMjVYjNt0=", "dev": true, "requires": { - "is-equal-shallow": "0.1.3" + "is-equal-shallow": "^0.1.3" } }, "remove-trailing-separator": { @@ -4587,7 +4587,7 @@ "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", "dev": true, "requires": { - "is-finite": "1.0.2" + "is-finite": "^1.0.0" } }, "replace-ext": { @@ -4602,16 +4602,16 @@ "integrity": "sha512-WL2pBDjqT6pGUNSUzMw00o4T7If+z4H2x3Gz893WoUQ5KW8Vr9txp00ykiP16VBaZF5+j/OcXJHZ9+PCvdiDKw==", "dev": true, "requires": { - "path-parse": "1.0.6" + "path-parse": "^1.0.6" } }, "rimraf": { "version": "2.6.3", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", - "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", + "integrity": "sha1-stEE/g2Psnz54KHNqCYt04M8bKs=", "dev": true, "requires": { - "glob": "7.1.4" + "glob": "^7.1.3" }, "dependencies": { "glob": { @@ -4620,12 +4620,12 @@ "integrity": "sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A==", "dev": true, "requires": { - "fs.realpath": "1.0.0", - "inflight": "1.0.6", - "inherits": "2.0.3", - "minimatch": "3.0.4", - "once": "1.4.0", - "path-is-absolute": "1.0.1" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" } } } @@ -4633,7 +4633,7 @@ "safe-buffer": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "integrity": "sha1-mR7GnSluAxN0fVm9/St0XDX4go0=", "dev": true }, "safe-json-parse": { @@ -4645,7 +4645,7 @@ "safer-buffer": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "integrity": "sha1-RPoWGwGHuVSd2Eu5GAL5vYOFzWo=", "dev": true }, "sax": { @@ -4661,7 +4661,7 @@ "dev": true, "optional": true, "requires": { - "commander": "2.8.1" + "commander": "~2.8.1" } }, "semver": { @@ -4684,7 +4684,7 @@ "dev": true, "optional": true, "requires": { - "semver": "5.7.0" + "semver": "^5.3.0" } }, "set-immediate-shim": { @@ -4721,7 +4721,7 @@ "sparkles": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/sparkles/-/sparkles-1.0.1.tgz", - "integrity": "sha512-dSO0DDYUahUt/0/pD/Is3VIm5TGJjludZ0HVymmhYF6eNA53PVLhnUk0znSYbH8IYBuJdCE+1luR22jNLMaQdw==", + "integrity": "sha1-AI22XtzmxQ7sDF4ijhlFBh3QQ3w=", "dev": true, "optional": true }, @@ -4731,8 +4731,8 @@ "integrity": "sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q==", "dev": true, "requires": { - "spdx-expression-parse": "3.0.0", - "spdx-license-ids": "3.0.4" + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" } }, "spdx-exceptions": { @@ -4747,8 +4747,8 @@ "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==", "dev": true, "requires": { - "spdx-exceptions": "2.2.0", - "spdx-license-ids": "3.0.4" + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" } }, "spdx-license-ids": { @@ -4770,9 +4770,9 @@ "dev": true, "optional": true, "requires": { - "chalk": "1.1.3", - "console-stream": "0.1.1", - "lpad-align": "1.1.2" + "chalk": "^1.0.0", + "console-stream": "^0.1.1", + "lpad-align": "^1.0.1" } }, "stack-parser": { @@ -4800,8 +4800,8 @@ "integrity": "sha1-+02KFCDqNidk4hrUeAOXvry0HL4=", "dev": true, "requires": { - "duplexer2": "0.1.4", - "readable-stream": "2.3.6" + "duplexer2": "~0.1.0", + "readable-stream": "^2.0.2" } }, "stream-shift": { @@ -4816,7 +4816,7 @@ "integrity": "sha1-VpcPscOFWOnnC3KL894mmsRa36w=", "dev": true, "requires": { - "strip-ansi": "3.0.1" + "strip-ansi": "^3.0.0" } }, "string-template": { @@ -4828,19 +4828,19 @@ "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "integrity": "sha1-nPFhG6YmhdcDCunkujQUnDrwP8g=", "dev": true, "requires": { - "safe-buffer": "5.1.2" + "safe-buffer": "~5.1.0" } }, "strip-ansi": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "dev": true, "requires": { - "ansi-regex": "2.1.1" + "ansi-regex": "^2.0.0" } }, "strip-bom": { @@ -4849,7 +4849,7 @@ "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", "dev": true, "requires": { - "is-utf8": "0.2.1" + "is-utf8": "^0.2.0" } }, "strip-bom-stream": { @@ -4858,8 +4858,8 @@ "integrity": "sha1-5xRDmFd9Uaa+0PoZlPoF9D/ZiO4=", "dev": true, "requires": { - "first-chunk-stream": "1.0.0", - "strip-bom": "2.0.0" + "first-chunk-stream": "^1.0.0", + "strip-bom": "^2.0.0" } }, "strip-dirs": { @@ -4869,12 +4869,12 @@ "dev": true, "optional": true, "requires": { - "chalk": "1.1.3", - "get-stdin": "4.0.1", - "is-absolute": "0.1.7", - "is-natural-number": "2.1.1", - "minimist": "1.2.0", - "sum-up": "1.0.3" + "chalk": "^1.0.0", + "get-stdin": "^4.0.1", + "is-absolute": "^0.1.5", + "is-natural-number": "^2.0.0", + "minimist": "^1.1.0", + "sum-up": "^1.0.1" } }, "strip-indent": { @@ -4883,7 +4883,7 @@ "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=", "dev": true, "requires": { - "get-stdin": "4.0.1" + "get-stdin": "^4.0.1" } }, "strip-json-comments": { @@ -4896,11 +4896,11 @@ "strip-outer": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/strip-outer/-/strip-outer-1.0.1.tgz", - "integrity": "sha512-k55yxKHwaXnpYGsOzg4Vl8+tDrWylxDEpknGjhTiZB8dFRU5rTo9CAzeycivxV3s+zlTKwrs6WxMxR95n26kwg==", + "integrity": "sha1-sv0qv2YEudHmATBXGV34Nrip1jE=", "dev": true, "optional": true, "requires": { - "escape-string-regexp": "1.0.5" + "escape-string-regexp": "^1.0.2" } }, "sum-up": { @@ -4910,7 +4910,7 @@ "dev": true, "optional": true, "requires": { - "chalk": "1.1.3" + "chalk": "^1.0.0" } }, "supports-color": { @@ -4926,13 +4926,13 @@ "dev": true, "optional": true, "requires": { - "coa": "1.0.4", - "colors": "1.1.2", - "csso": "2.0.0", - "js-yaml": "3.6.1", - "mkdirp": "0.5.1", - "sax": "1.2.4", - "whet.extend": "0.9.9" + "coa": "~1.0.1", + "colors": "~1.1.2", + "csso": "~2.0.0", + "js-yaml": "~3.6.0", + "mkdirp": "~0.5.1", + "sax": "~1.2.1", + "whet.extend": "~0.9.9" }, "dependencies": { "esprima": { @@ -4949,14 +4949,14 @@ "dev": true, "optional": true, "requires": { - "argparse": "1.0.10", - "esprima": "2.7.3" + "argparse": "^1.0.7", + "esprima": "^2.6.0" } }, "sax": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", + "integrity": "sha1-KBYjTiN4vdxOU1T6tcqold9xANk=", "dev": true, "optional": true } @@ -4965,17 +4965,17 @@ "tar-stream": { "version": "1.6.2", "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.6.2.tgz", - "integrity": "sha512-rzS0heiNf8Xn7/mpdSVVSMAWAoy9bfb1WOTYC78Z0UQKeKa/CWS8FOq0lKGNa8DWKAn9gxjCvMLYc5PGXYlK2A==", + "integrity": "sha1-jqVdqzeXIlPZqa+Q/c1VmuQ1xVU=", "dev": true, "optional": true, "requires": { - "bl": "1.2.2", - "buffer-alloc": "1.2.0", - "end-of-stream": "1.4.1", - "fs-constants": "1.0.0", - "readable-stream": "2.3.6", - "to-buffer": "1.1.1", - "xtend": "4.0.1" + "bl": "^1.0.0", + "buffer-alloc": "^1.2.0", + "end-of-stream": "^1.0.0", + "fs-constants": "^1.0.0", + "readable-stream": "^2.3.0", + "to-buffer": "^1.1.1", + "xtend": "^4.0.0" } }, "tempfile": { @@ -4985,8 +4985,8 @@ "dev": true, "optional": true, "requires": { - "os-tmpdir": "1.0.2", - "uuid": "2.0.3" + "os-tmpdir": "^1.0.0", + "uuid": "^2.0.1" } }, "text-table": { @@ -5001,8 +5001,8 @@ "integrity": "sha1-QaucZ7KdVyCQcUEOHXp6lozTrUg=", "dev": true, "requires": { - "readable-stream": "1.0.34", - "xtend": "4.0.1" + "readable-stream": ">=1.0.33-1 <1.1.0-0", + "xtend": ">=4.0.0 <4.1.0-0" }, "dependencies": { "isarray": { @@ -5017,10 +5017,10 @@ "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", "dev": true, "requires": { - "core-util-is": "1.0.2", - "inherits": "2.0.3", + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", "isarray": "0.0.1", - "string_decoder": "0.10.31" + "string_decoder": "~0.10.x" } }, "string_decoder": { @@ -5037,18 +5037,18 @@ "integrity": "sha1-YLxVoNrLdghdsfna6Zq0P4PWIuw=", "dev": true, "requires": { - "through2": "2.0.5", - "xtend": "4.0.1" + "through2": "~2.0.0", + "xtend": "~4.0.0" }, "dependencies": { "through2": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", - "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", + "integrity": "sha1-AcHjnrMdB8t9A6lqcIIyYLIxMs0=", "dev": true, "requires": { - "readable-stream": "2.3.6", - "xtend": "4.0.1" + "readable-stream": "~2.3.6", + "xtend": "~4.0.1" } } } @@ -5059,13 +5059,13 @@ "integrity": "sha1-BiIT5mDJB+hvRAVWwB6mWXtxJCA=", "dev": true, "requires": { - "chalk": "1.1.3", - "date-time": "1.1.0", - "figures": "1.7.0", - "hooker": "0.2.3", - "number-is-nan": "1.0.1", - "pretty-ms": "2.1.0", - "text-table": "0.2.0" + "chalk": "^1.0.0", + "date-time": "^1.1.0", + "figures": "^1.0.0", + "hooker": "^0.2.3", + "number-is-nan": "^1.0.0", + "pretty-ms": "^2.1.0", + "text-table": "^0.2.0" } }, "time-stamp": { @@ -5091,15 +5091,15 @@ "tiny-lr": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/tiny-lr/-/tiny-lr-1.1.1.tgz", - "integrity": "sha512-44yhA3tsaRoMOjQQ+5v5mVdqef+kH6Qze9jTpqtVufgYjYt08zyZAwNwwVBj3i1rJMnR52IxOW0LK0vBzgAkuA==", + "integrity": "sha1-n6VHQS8jj+2waO4pWvi2gsmLKqs=", "dev": true, "requires": { - "body": "5.1.0", - "debug": "3.2.6", - "faye-websocket": "0.10.0", - "livereload-js": "2.4.0", - "object-assign": "4.1.1", - "qs": "6.7.0" + "body": "^5.1.0", + "debug": "^3.1.0", + "faye-websocket": "~0.10.0", + "livereload-js": "^2.3.0", + "object-assign": "^4.1.0", + "qs": "^6.4.0" } }, "to-absolute-glob": { @@ -5108,13 +5108,13 @@ "integrity": "sha1-HN+kcqnvUMI57maZm2YsoOs5k38=", "dev": true, "requires": { - "extend-shallow": "2.0.1" + "extend-shallow": "^2.0.1" } }, "to-buffer": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/to-buffer/-/to-buffer-1.1.1.tgz", - "integrity": "sha512-lx9B5iv7msuFYE3dytT+KE5tap+rNYw+K4jVkb9R/asAb+pbBSM17jtunHplhBe6RRJdZx3Pn2Jph24O32mOVg==", + "integrity": "sha1-STvUj2LXxD/N7TE6A9ytsuEhOoA=", "dev": true, "optional": true }, @@ -5131,7 +5131,7 @@ "dev": true, "optional": true, "requires": { - "escape-string-regexp": "1.0.5" + "escape-string-regexp": "^1.0.2" } }, "tunnel-agent": { @@ -5153,8 +5153,8 @@ "integrity": "sha1-lrhJXwJylEeHtYQ6FnmqMmZA1fc=", "dev": true, "requires": { - "commander": "2.11.0", - "source-map": "0.5.6" + "commander": "~2.11.0", + "source-map": "~0.5.1" }, "dependencies": { "commander": { @@ -5179,41 +5179,41 @@ "underscore.string": { "version": "3.3.5", "resolved": "https://registry.npmjs.org/underscore.string/-/underscore.string-3.3.5.tgz", - "integrity": "sha512-g+dpmgn+XBneLmXXo+sGlW5xQEt4ErkS3mgeN2GFbremYeMBSJKr9Wf2KJplQVaiPY/f7FN6atosWYNm9ovrYg==", + "integrity": "sha1-/CrSVbi9MJ4jnLxYFv0jqbfqQCM=", "dev": true, "requires": { - "sprintf-js": "1.0.3", - "util-deprecate": "1.0.2" + "sprintf-js": "^1.0.3", + "util-deprecate": "^1.0.2" } }, "unique-stream": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/unique-stream/-/unique-stream-2.3.1.tgz", - "integrity": "sha512-2nY4TnBE70yoxHkDli7DMazpWiP7xMdCYqU2nBRO0UB+ZpEkGsSija7MvmvnZFUeC+mrgiUfcHSr3LmRFIg4+A==", + "integrity": "sha1-xl0RDppK35psWUiygFPZqNBMvqw=", "dev": true, "requires": { - "json-stable-stringify-without-jsonify": "1.0.1", - "through2-filter": "3.0.0" + "json-stable-stringify-without-jsonify": "^1.0.1", + "through2-filter": "^3.0.0" }, "dependencies": { "through2": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", - "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", + "integrity": "sha1-AcHjnrMdB8t9A6lqcIIyYLIxMs0=", "dev": true, "requires": { - "readable-stream": "2.3.6", - "xtend": "4.0.1" + "readable-stream": "~2.3.6", + "xtend": "~4.0.1" } }, "through2-filter": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/through2-filter/-/through2-filter-3.0.0.tgz", - "integrity": "sha512-jaRjI2WxN3W1V8/FMZ9HKIBXixtiqs3SQSX4/YGIiP3gL6djW48VoZq9tDqeCWs3MT8YY5wb/zli8VW8snY1CA==", + "integrity": "sha1-cA54bfI2fCyIzYqlvkz5weeDElQ=", "dev": true, "requires": { - "through2": "2.0.5", - "xtend": "4.0.1" + "through2": "~2.0.0", + "xtend": "~4.0.0" } } } @@ -5238,7 +5238,7 @@ "dev": true, "optional": true, "requires": { - "prepend-http": "1.0.4" + "prepend-http": "^1.0.1" } }, "url-regex": { @@ -5248,7 +5248,7 @@ "dev": true, "optional": true, "requires": { - "ip-regex": "1.0.3" + "ip-regex": "^1.0.1" } }, "util-deprecate": { @@ -5272,11 +5272,11 @@ "validate-npm-package-license": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "integrity": "sha1-/JH2uce6FchX9MssXe/uw51PQQo=", "dev": true, "requires": { - "spdx-correct": "3.1.0", - "spdx-expression-parse": "3.0.0" + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" } }, "vinyl": { @@ -5285,8 +5285,8 @@ "integrity": "sha1-XIgDbPVl5d8FVYv8kR+GVt8hiIQ=", "dev": true, "requires": { - "clone": "1.0.4", - "clone-stats": "0.0.1", + "clone": "^1.0.0", + "clone-stats": "^0.0.1", "replace-ext": "0.0.1" } }, @@ -5297,8 +5297,8 @@ "dev": true, "optional": true, "requires": { - "object-assign": "4.1.1", - "readable-stream": "2.3.6" + "object-assign": "^4.0.1", + "readable-stream": "^2.0.0" } }, "vinyl-fs": { @@ -5307,33 +5307,33 @@ "integrity": "sha1-vm/zJwy1Xf19MGNkDegfJddTIjk=", "dev": true, "requires": { - "duplexify": "3.7.1", - "glob-stream": "5.3.5", - "graceful-fs": "4.1.15", + "duplexify": "^3.2.0", + "glob-stream": "^5.3.2", + "graceful-fs": "^4.0.0", "gulp-sourcemaps": "1.6.0", - "is-valid-glob": "0.3.0", - "lazystream": "1.0.0", - "lodash.isequal": "4.5.0", - "merge-stream": "1.0.1", - "mkdirp": "0.5.1", - "object-assign": "4.1.1", - "readable-stream": "2.3.6", - "strip-bom": "2.0.0", - "strip-bom-stream": "1.0.0", - "through2": "2.0.5", - "through2-filter": "2.0.0", - "vali-date": "1.0.0", - "vinyl": "1.2.0" + "is-valid-glob": "^0.3.0", + "lazystream": "^1.0.0", + "lodash.isequal": "^4.0.0", + "merge-stream": "^1.0.0", + "mkdirp": "^0.5.0", + "object-assign": "^4.0.0", + "readable-stream": "^2.0.4", + "strip-bom": "^2.0.0", + "strip-bom-stream": "^1.0.0", + "through2": "^2.0.0", + "through2-filter": "^2.0.0", + "vali-date": "^1.0.0", + "vinyl": "^1.0.0" }, "dependencies": { "through2": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", - "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", + "integrity": "sha1-AcHjnrMdB8t9A6lqcIIyYLIxMs0=", "dev": true, "requires": { - "readable-stream": "2.3.6", - "xtend": "4.0.1" + "readable-stream": "~2.3.6", + "xtend": "~4.0.1" } } } @@ -5345,7 +5345,7 @@ "dev": true, "optional": true, "requires": { - "wrap-fn": "0.1.5" + "wrap-fn": "^0.1.0" } }, "websocket-driver": { @@ -5354,8 +5354,8 @@ "integrity": "sha1-DK+dLXVdk67gSdS90NP+LMoqJOs=", "dev": true, "requires": { - "http-parser-js": "0.5.0", - "websocket-extensions": "0.1.3" + "http-parser-js": ">=0.4.0", + "websocket-extensions": ">=0.1.1" } }, "websocket-extensions": { @@ -5374,10 +5374,10 @@ "which": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "integrity": "sha1-pFBD1U9YBTFtqNYvn1CRjT2nCwo=", "dev": true, "requires": { - "isexe": "2.0.0" + "isexe": "^2.0.0" } }, "wrap-fn": { @@ -5424,8 +5424,8 @@ "dev": true, "optional": true, "requires": { - "buffer-crc32": "0.2.13", - "fd-slicer": "1.1.0" + "buffer-crc32": "~0.2.3", + "fd-slicer": "~1.1.0" } } } diff --git a/public/index.php b/public/index.php index 83a8ebb19b..e60f587f1a 100644 --- a/public/index.php +++ b/public/index.php @@ -9,9 +9,11 @@ * file that was distributed with this source code. */ -use Symfony\Component\HttpFoundation\Request; use Goteo\Application\App; use Goteo\Application\Config; +use Symfony\Component\HttpFoundation\Request; + +$isDebugEnv = getenv("DEBUG"); //Public Web path define('GOTEO_WEB_PATH', __DIR__ . '/'); @@ -21,33 +23,46 @@ // Create first the request object (to avoid other classes reading from php://input specially) $request = Request::createFromGlobals(); -ini_set('display_errors', 0); error_reporting(E_ALL & ~E_NOTICE & ~E_USER_DEPRECATED); // for symfony user deprecated errors + +ini_set('display_errors', $isDebugEnv); +if ($isDebugEnv) { + App::debug(true); +} + +// Bored? Try the hard way and fix some notices: +//Symfony\Component\Debug\Debug::enable(); // error handle needs to go after autoload set_error_handler('Goteo\Application\App::errorHandler'); -// Config file... $config = getenv('GOTEO_CONFIG_FILE'); -if(!is_file($config)) $config = __DIR__ . '/../config/settings.yml'; + +if ($isDebugEnv && !is_file($config)) { + $config = __DIR__ . '/../config/dev-settings.yml'; +} else if (!is_file($config)) { + $config = __DIR__ . '/../config/settings.yml'; +} + Config::load($config); Config::autosave(); -// Due a symfony issue, disable FORWARDED header, it may cause some problems -// if not exactly the same as the X_FORWARDED_FOR -// See https://stackoverflow.com/questions/44543649/conflict-between-http-headers-in-symfony-3 -Request::setTrustedHeaderName(Request::HEADER_FORWARDED, null); - -// Add trusted proxies if (is_array(Config::get('proxies'))) { - $request->setTrustedProxies(Config::get('proxies')); + $request->setTrustedProxies( + Config::get('proxies'), + Request::HEADER_FORWARDED + ); } //Get from globals defaults App::setRequest($request); -// Get the app -$app = App::get(); +if ($isDebugEnv) { + $handler = new Monolog\Handler\StreamHandler('php://stdout', Monolog\Logger::DEBUG); + $handler->setFormatter(new Bramus\Monolog\Formatter\ColoredLineFormatter()); -// handle routes, flush buffer out -$app->run(); + App::getService('logger')->pushHandler($handler); + App::getService('syslogger')->pushHandler($handler); + App::getService('paylogger')->pushHandler($handler); +} +App::get()->run(); diff --git a/public/index_dev.php b/public/index_dev.php deleted file mode 100644 index 3085c466ec..0000000000 --- a/public/index_dev.php +++ /dev/null @@ -1,65 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -use Goteo\Application\App; -use Goteo\Application\Config; -use Symfony\Component\Debug; -use Symfony\Component\HttpFoundation\Request; - -// This check prevents access to debug front controllers that are deployed by accident to production servers. -// Feel free to remove this, extend it, or make something more sophisticated. -// if (isset($_SERVER['HTTP_CLIENT_IP']) -// || isset($_SERVER['HTTP_X_FORWARDED_FOR']) -// || !in_array(@$_SERVER['REMOTE_ADDR'], array('127.0.0.1', 'fe80::1', '::1')) -// ) { -// header('HTTP/1.0 403 Forbidden'); -// exit('You are not allowed to access this file. Check '.basename(__FILE__).' for more information.'); -// } - -//Public Web path -define('GOTEO_WEB_PATH', __DIR__ .'/'); - -require_once __DIR__ .'/../src/autoload.php'; - -// Create first the request object (to avoid other classes reading from php://input specially) -$request = Request::createFromGlobals(); - -// Error reporting -App::debug(true); -// Too much notices... -// error_reporting(E_ALL & ~E_NOTICE & ~E_STRICT & ~E_USER_DEPRECATED); -error_reporting(E_ALL & ~E_NOTICE & ~E_USER_DEPRECATED); // for symfony user deprecated errors - -// -// Bored? Try the hard way and fix some notices: -// Debug\Debug::enable(); -// error handle needs to go after autoload -set_error_handler('Goteo\Application\App::errorHandler'); - -// Config file... -$config = getenv('GOTEO_CONFIG_FILE'); -if(!is_file($config)) $config = __DIR__ . '/../config/dev-settings.yml'; -if(!is_file($config)) $config = __DIR__ . '/../config/settings.yml'; -Config::load($config); -Config::autosave(); - -//Get from globals defaults -App::setRequest($request); - -$handler = new Monolog\Handler\StreamHandler('php://stdout', Monolog\Logger::DEBUG); -$handler->setFormatter(new Bramus\Monolog\Formatter\ColoredLineFormatter()); - -// Add a log level debug to stderr -App::getService('logger')->pushHandler($handler); -App::getService('syslogger')->pushHandler($handler); -App::getService('paylogger')->pushHandler($handler); - -// Get the app -App::get()->run(); diff --git a/public/view/css/project/edit/rewards.css b/public/view/css/project/edit/rewards.css index 729a00999d..d10c0aef68 100644 --- a/public/view/css/project/edit/rewards.css +++ b/public/view/css/project/edit/rewards.css @@ -2,7 +2,7 @@ /** * Rewards */ - + body.project-edit div#main.rewards div.superform li.element.reward-new > .title { display: none; } @@ -22,6 +22,9 @@ body.project-edit div#main.overview div.superform li.element.icon, body.project-edit div#main.rewards div.superform li.element.reward div.reward { background: none no-repeat right center; min-height: 32px; + display: inline-block; + width: 30%; + margin-right: 1%; } body.project-edit div#main.overview div.superform li.element.icon.file, diff --git a/rector.php b/rector.php new file mode 100644 index 0000000000..7b1194f882 --- /dev/null +++ b/rector.php @@ -0,0 +1,31 @@ +import(SymfonySetList::SYMFONY_28); + $containerConfigurator->import(SymfonySetList::SYMFONY_30); + $containerConfigurator->import(SymfonySetList::SYMFONY_31); + $containerConfigurator->import(SymfonySetList::SYMFONY_32); + $containerConfigurator->import(SymfonySetList::SYMFONY_33); + $containerConfigurator->import(SymfonySetList::SYMFONY_34); + + // get services (needed for register a single rule) + // $services = $containerConfigurator->services(); + + // register a single rule + // $services->set(TypedPropertyRector::class); + + $parameters = $containerConfigurator->parameters(); + $parameters->set(Option::PATHS, [ + __DIR__ . '/src', + __DIR__ . '/tests', + ]); +}; diff --git a/src/Goteo/Application/App.php b/src/Goteo/Application/App.php index d0b6374046..0f428c143f 100644 --- a/src/Goteo/Application/App.php +++ b/src/Goteo/Application/App.php @@ -10,17 +10,19 @@ namespace Goteo\Application; +use Goteo\Util\Foil\Extension\GoteoCore; use Symfony\Component\DependencyInjection\ContainerBuilder; use Symfony\Component\EventDispatcher\Event; use Symfony\Component\HttpFoundation\Request; -use Symfony\Component\HttpKernel; +use Symfony\Component\HttpKernel\HttpKernel; use Symfony\Component\Routing\RouteCollection; -class App extends HttpKernel\HttpKernel { +class App extends HttpKernel +{ static protected $_app; static protected $_request; static protected $_routes; - static protected $_sc; + static protected $serviceContainer; static protected $_debug = false; static protected $_errors = array(); @@ -41,59 +43,45 @@ static public function getRequest() { */ static public function setRequest(Request $request) { self::$_request = $request; - // Session::factory($request); } - /** - * Gets the service container for the app - * @return RouteColletion object - */ - static public function getServiceContainer() { - if (!self::$_sc) { - self::$_sc = include (__DIR__ .'/../../container.php'); + static public function getServiceContainer(): ContainerBuilder + { + if (!self::$serviceContainer) { + self::$serviceContainer = include (__DIR__ .'/../../container.php'); } - return self::$_sc; + return self::$serviceContainer; } /** * Sets the service container for the app - * Must be called befor App::get() in order to set a different service container + * Must be called before App::get() in order to set a different service container */ static public function setServiceContainer(ContainerBuilder $sc) { - self::$_sc = $sc; + self::$serviceContainer = $sc; } - /** - * Shortcut to check if some service is available - * @param string $service the id of the service - * @return Object the instance of the service - */ - static public function isService($service) { + static public function isService(string $service): bool + { return self::getServiceContainer()->has($service); } - /** - * Shortcut to obtain a particular service - * @param string $service the id of the service - * @return Object the instance of the service - */ - static public function getService($service) { + + static public function getService(string $service): object + { return self::getServiceContainer()->get($service); } /** - * Dispatchs an event - * Events can be handled by any suscriber - * @param string $eventName event ID - * @param Event|null $event Event object - * @return Event the result object + * @return Event the result object */ - static public function dispatch($eventName, Event $event = null) { - return self::getService('dispatcher')->dispatch($eventName, $event); + static public function dispatch($eventName, Event $event) { + return self::getService('dispatcher') + ->dispatch($event, $eventName); } /** * Gets the routes for the app - * @return RouteColletion object + * @return RouteCollection object */ static public function getRoutes() { if (!self::$_routes) { @@ -104,7 +92,7 @@ static public function getRoutes() { /** * Sets the routes for the app - * Must be called befor App::get() in order to set a different sets of routes + * Must be called before App::get() in order to set a different sets of routes */ static public function setRoutes(RouteCollection $routes) { self::$_routes = $routes; @@ -112,16 +100,15 @@ static public function setRoutes(RouteCollection $routes) { /** * Creates a new instance of the App ready to run - * This methods can be optionally called before this ::get() call: + * These methods can be optionally called before this ::get() call: * ::setRequest() * ::setRoutes() * ::setServiceContainer() - * Next calls to this method will return the current instantatied App - * @return App object + * Next calls to this method will return the current instantiated App */ - static public function get() { + static public function get(): App + { if (!self::$_app) { - // Getting the request either from global or simulated $request = self::getRequest(); @@ -134,11 +121,12 @@ static public function get() { define('SITE_URL', 'http://'.$SITE_URL); } // Setup request for views - \Goteo\Util\Foil\Extension\GoteoCore::setRequest($request); + GoteoCore::setRequest($request); - $sc = self::getServiceContainer(); - self::$_app = $sc->get('app'); + $serviceContainer = self::getServiceContainer(); + self::$_app = $serviceContainer->get('app'); } + return self::$_app; } @@ -148,11 +136,12 @@ static public function get() { * - A bottom html profiler tool will be displayed on the bottom of the page * - SQL queries will be collected fo statistics * - Html/php error will be shown - * @param boolean $enable If must or no be enabled (do it before call App::get()) + * @param boolean|null $enable If must or no be enabled (do it before call App::get()) * A null value does nothing * @return boolean Returns the current debug mode */ - static public function debug($enable = null) { + static public function debug(bool $enable = null): bool + { if ($enable === true) { self::$_debug = true; } @@ -176,21 +165,15 @@ public function run() { self::$_app->terminate($request, $response); } - /** - * Resets the current app - * @return [type] [description] - */ static public function clearApp() { self::$_app = null; - self::$_sc = null; + self::$serviceContainer = null; self::$_routes = null; self::$_request = null; } - /** - * Retrieves current colletected errors - * @return array array of errors - */ - static public function getErrors() { + + static public function getErrors(): array + { return self::$_errors; } @@ -198,39 +181,41 @@ static public function getErrors() { * Error handler function to collect whatever error that can be collected * For use with the set_error_handler() function */ - static public function errorHandler($errno, $errstr, $errfile, $errline, $errcontext) { + static public function errorHandler($errno, $errstr, $errfile, $errline) { if (!(error_reporting() & $errno)) { return; } switch ($errno) { case E_USER_DEPRECATED: - // some symfony deprecated errors... $type = 'user deprecated'; - // return; + break; case E_WARNING: $type = 'warning'; + break; case E_USER_WARNING: $type = 'user warning'; + break; case E_STRICT: $type = 'strict standards'; + break; case E_NOTICE: $type = 'notice'; + break; case E_USER_NOTICE: $type = 'user notice'; - $fatal = false; break; default: $type = 'fatal error'; - $fatal = true; break; } + $trace = array_reverse(debug_backtrace()); $info = ''; array_pop($trace); $txtinfo = strtoupper($type).': \''.$errstr.'\' at '.$errfile.' '.$errline.':'."\n"; foreach ($trace as $item) - $txtinfo .= ' '.(isset($item['file'])?$item['file']:'').' '.(isset($item['line'])?$item['line']:'').' calling '.$item['function'].'()'."\n"; + $txtinfo .= ' '.($item['file'] ?? '').' '.($item['line'] ?? '').' calling '.$item['function'].'()'."\n"; if (php_sapi_name() == 'cli') { echo $txtinfo; } else { @@ -238,27 +223,19 @@ static public function errorHandler($errno, $errstr, $errfile, $errline, $errcon $info .= ''.$type.' \''.$errstr.'\' at '.$errfile.' '.$errline.':'."\n"; $info .= '
    '."\n"; foreach ($trace as $item) - $info .= '
  1. '.(isset($item['file'])?$item['file']:'').' '.(isset($item['line'])?$item['line']:'').' calling '.$item['function'].'()
  2. '."\n"; + $info .= '
  3. '.($item['file'] ?? '').' '.($item['line'] ?? '').' calling '.$item['function'].'()
  4. '."\n"; $info .= '
'."\n"; $info .= '

'."\n"; } if (ini_get('log_errors')) { $items = array(); foreach ($trace as $item) - $items[] = (isset($item['file'])?$item['file']:'').' '.(isset($item['line'])?$item['line']:'').' calling '.$item['function'].'()'; + $items[] = ($item['file'] ?? '').' '.($item['line'] ?? '').' calling '.$item['function'].'()'; $message = strtoupper($type).': \''.$errstr.'\' at '.$errfile.' '.$errline.': '.join(' | ', $items); error_log($message); } self::$_errors["$errfile:$errline"] = $info; self::getService('logger')->err($txtinfo); - - if ($fatal) { - // $code = \Symfony\Component\HttpFoundation\Response::HTTP_INTERNAL_SERVER_ERROR; - // \Goteo\Application\View::addFolder(__DIR__ . '/../../../templates/default'); - // // views function registering - // // TODO: custom template - // die(\Goteo\Application\View::render('errors/internal', ['msg' => $errstr, 'code' => $code, 'info' => $info], $code)); - } } } diff --git a/src/Goteo/Application/Config.php b/src/Goteo/Application/Config.php index cbe6c0f7df..4ff40282f8 100644 --- a/src/Goteo/Application/Config.php +++ b/src/Goteo/Application/Config.php @@ -11,6 +11,7 @@ namespace Goteo\Application; use Composer\Autoload\ClassLoader; +use Exception; use Goteo\Application\Config\ConfigException; use Goteo\Application\Config\YamlSettingsLoader; use Goteo\Console\UsersSend; @@ -25,11 +26,17 @@ use Symfony\Component\Routing\Route; class Config { + static public $trans_groups = [ + 'home', 'roles', 'public_profile', 'project', 'labels', 'form', 'profile', 'personal', 'overview', 'costs', + 'rewards', 'supports', 'preview', 'dashboard', 'register', 'login', 'discover', 'community', 'general', 'blog', + 'faq', 'contact', 'widget', 'invest', 'matcher', 'types', 'banners', 'footer', 'social', 'review', 'translate', + 'menu', 'feed', 'mailer', 'bluead', 'error', 'wof', 'node_public', 'contract', 'donor', 'text_groups', + 'template', 'admin', 'translator', 'metas', 'location', 'url', 'pool', 'dates', 'stories', 'workshop', 'donate', + 'questionnaire', 'poster', 'channel_call', 'map' + ]; const ENV_PARAMETER_REG_EX = "/^%env\((.*)\)%$/"; - // Initial translation groups (grouped in yml files into Resources/translations/) - static public $trans_groups = ['home', 'roles', 'public_profile', 'project', 'labels', 'form', 'profile', 'personal', 'overview', 'costs', 'rewards', 'supports', 'preview', 'dashboard', 'register', 'login', 'discover', 'community', 'general', 'blog', 'faq', 'contact', 'widget', 'invest', 'matcher', 'types', 'banners', 'footer', 'social', 'review', 'translate', 'menu', 'feed', 'mailer', 'bluead', 'error', 'wof', 'node_public', 'contract', 'donor', 'text_groups', 'template', 'admin', 'translator', 'metas', 'location', 'url', 'pool', 'dates', 'stories', 'workshop', 'donate', 'questionnaire', 'poster', 'channel_call', 'map']; static protected $loader; static protected $config; @@ -39,9 +46,10 @@ class Config { static protected $f_locales = __DIR__ . '/../../../Resources/locales.yml'; static protected $f_currencies = __DIR__ . '/../../../Resources/currencies.yml'; - /** - * Loads all configurations - */ + /** + * Loads all configurations + * @throws ConfigException + */ static public function load($config_file) { try { self::$config = self::loadFromYaml(static::$f_defaults); @@ -106,40 +114,32 @@ static public function load($config_file) { // Add model zones for the translator TranslateController::addTranslateModel('criteria'); - TranslateController::addTranslateModel('sphere'); - TranslateController::addTranslateModel('communication'); - TranslateController::addTranslateModel('call_to_action'); - TranslateController::addTranslateModel('node'); - TranslateController::addTranslateModel('node_program'); - TranslateController::addTranslateModel('node_faq'); - TranslateController::addTranslateModel('node_faq_question'); - TranslateController::addTranslateModel('node_faq_download'); - TranslateController::addTranslateModel('node_sponsor'); - TranslateController::addTranslateModel('node_team'); - TranslateController::addTranslateModel('node_resource'); - TranslateController::addTranslateModel('node_resource_category'); - TranslateController::addTranslateModel('image_credits'); - TranslateController::addTranslateModel('node_sections'); - TranslateController::addTranslateModel('question'); - TranslateController::addTranslateModel('question_options'); + TranslateController::addTranslateModel('sphere'); + TranslateController::addTranslateModel('communication'); + TranslateController::addTranslateModel('call_to_action'); + TranslateController::addTranslateModel('node'); + TranslateController::addTranslateModel('node_program'); + TranslateController::addTranslateModel('node_faq'); + TranslateController::addTranslateModel('node_faq_question'); + TranslateController::addTranslateModel('node_faq_download'); + TranslateController::addTranslateModel('node_sponsor'); + TranslateController::addTranslateModel('node_team'); + TranslateController::addTranslateModel('node_resource'); + TranslateController::addTranslateModel('node_resource_category'); + TranslateController::addTranslateModel('image_credits'); + TranslateController::addTranslateModel('node_sections'); + TranslateController::addTranslateModel('question'); + TranslateController::addTranslateModel('question_options'); // sets up the rest... self::setDirConfiguration(); - } catch (\Exception $e) { + } catch (Exception $e) { if (PHP_SAPI === 'cli') { throw $e; } View::addFolder(__DIR__ . '/../../../Resources/templates/responsive'); - // TODO: custom template - $info = ''; - $trace = EventListener\ExceptionListener::jTraceEx($e); - if (App::debug()) { - $info = '
' . $trace . '
'; - } - View::setTheme('responsive'); - // we die here and show a formatted error, most likely reason is a database misconfiguration - die(View::render('errors/config', ['msg' => $e->getMessage(), 'info' => $info, 'file' => $config_file, 'code' => 500], false)); + return; } } @@ -147,7 +147,8 @@ static public function load($config_file) { /** * Performs some saving operations to database if required */ - static public function autosave() { + static public function autosave(): bool + { if(!Config::get('autosave')) return false; $not_cached = !YamlSettingsLoader::getConfigCache(YamlSettingsLoader::getCacheFilename(static::$f_roles))->isFresh(); @@ -157,23 +158,14 @@ static public function autosave() { return true; } - /** - * Loads a configuration from a file - * @param [type] $file [description] - * @return [type] [description] - */ static public function loadFromYaml($file) { $locator = new FileLocator(array(dirname($file))); - $loaderResolver = new LoaderResolver(array(new YamlSettingsLoader($locator))); $delegatingLoader = new DelegatingLoader($loaderResolver); return $delegatingLoader->load($file); } - /** - * Purges all cached setting files - */ static public function clearCache() { foreach (YamlSettingsLoader::$cached_files as $file) { unlink($file); @@ -218,8 +210,6 @@ static private function setDirConfiguration() { AdminController::addSubController('Goteo\Controller\Admin\CommunicationAdminController'); AdminController::addSubController('Goteo\Controller\Admin\FilterAdminController'); AdminController::addSubController('Goteo\Controller\Admin\WorkshopAdminController'); - - // TODO: to be replace by the new AdminController AdminController::addSubController('Goteo\Controller\Admin\AccountsSubController'); AdminController::addSubController('Goteo\Controller\Admin\NodeSubController'); AdminController::addSubController('Goteo\Controller\Admin\NodesSubController'); @@ -294,14 +284,12 @@ static private function setDirConfiguration() { // TODO: add a generic matcher processor that uses Symfony Expression Language // http://symfony.com/doc/current/components/expression_language/syntax.html - // App::getService('app.matcher.finder')->addProcessor('Goteo\Util\MatcherProcessor\DuplicateInvestMatcherProcessor'); App::getService('app.matcher.finder')->addProcessor('Goteo\Util\MatcherProcessor\CriteriaInvestMatcherProcessor'); //Cache dir in libs Cacher::setCacheDir(GOTEO_CACHE_PATH); - /**********************************/ // LEGACY VIEWS // One day, this will be removed, and happiness will spread along the galaxy \Goteo\Core\View::addViewPath(GOTEO_PATH . 'Resources/templates/legacy'); @@ -309,7 +297,6 @@ static private function setDirConfiguration() { \Goteo\Core\View::addViewPath(GOTEO_PATH . 'src/Goteo/Library/NormalForm/view'); //SuperForm views \Goteo\Core\View::addViewPath(GOTEO_PATH . 'src/Goteo/Library/SuperForm/view'); - /**********************************/ // Default consultants to UsersSend if (is_array(Config::get('mail.consultants'))) { @@ -333,9 +320,6 @@ static private function setDirConfiguration() { // TODO: fire event here } - /** - * Compatibility constants - */ static public function setConstants() { define('GOTEO_MAINTENANCE', self::get('maintenance')); define('GOTEO_SESSION_TIME', self::get('session.time', true)); @@ -364,8 +348,6 @@ static public function setConstants() { } $database = self::get('db.database', true); - $username = self::get('db.username', true); - $password = self::get('db.password', true); self::set('dsn', "$driver:host=$host;dbname=$database;port=$port;charset=$charset"); if ($replica = self::get('db.replica.host')) { @@ -463,10 +445,11 @@ static private function _set(&$config, $name, $value) { return self::_set($config[substr($name, 0, $pos)], substr($name, $pos + 1), $value); } - /** - * Returns a mail (mail.mail, mail.contact, mail.manager) with fallback if not defined - * See config/settings-example.yml (mail part) for values - */ + /** + * Returns a mail (mail.mail, mail.contact, mail.manager) with fallback if not defined + * See config/settings-example.yml (mail part) for values + * @throws ConfigException + */ static public function getMail($type = 'mail', $fallback = 'mail') { if (self::get("mail.$type")) { return self::get("mail.$type"); @@ -482,7 +465,6 @@ static public function getMail($type = 'mail', $fallback = 'mail') { /** * Gets a suitable http(s) link for use * @param string $lang ca - * @return [type] [description] */ static public function getUrl($lang = null) { $url = self::get('url.main'); @@ -507,9 +489,8 @@ static public function getUrl($lang = null) { /** * Get sanitized Main URL - * @return [type] [description] */ - static public function getMainUrl($schema = true) { + static public function getMainUrl(bool $schema = true) { $url = self::get('url.main'); if(strpos($url, '//') === 0) { $url = (self::get('ssl') ? 'https:' : 'http:') . $url; diff --git a/src/Goteo/Application/Event/FilterAuthEvent.php b/src/Goteo/Application/Event/FilterAuthEvent.php index 60bfe778ca..5c4ffe78f5 100644 --- a/src/Goteo/Application/Event/FilterAuthEvent.php +++ b/src/Goteo/Application/Event/FilterAuthEvent.php @@ -50,7 +50,7 @@ public function setProvider($provider) } /** - * Returns the appropiate place to redirect a logged user + * Returns the appropriate place to redirect a logged user */ public function getUserRedirect(Request $request = null) { $user = $this->getUser(); @@ -68,8 +68,6 @@ public function getUserRedirect(Request $request = null) { $return = Session::getAndDel('jumpto'); } - // die($return); - return new RedirectResponse($return); } } diff --git a/src/Goteo/Application/Event/FilterInvestEvent.php b/src/Goteo/Application/Event/FilterInvestEvent.php index d9d865297a..5cc6c680b0 100644 --- a/src/Goteo/Application/Event/FilterInvestEvent.php +++ b/src/Goteo/Application/Event/FilterInvestEvent.php @@ -23,7 +23,6 @@ public function __construct(Invest $invest, PaymentMethodInterface $method) { $this->invest = $invest; $this->method = $method; - $this->request = $request; } public function getInvest() diff --git a/src/Goteo/Application/Event/FilterInvestFinishEvent.php b/src/Goteo/Application/Event/FilterInvestFinishEvent.php index 6cb7e7b35a..14fd6a6828 100644 --- a/src/Goteo/Application/Event/FilterInvestFinishEvent.php +++ b/src/Goteo/Application/Event/FilterInvestFinishEvent.php @@ -15,7 +15,6 @@ use Symfony\Component\HttpFoundation\RedirectResponse; use Symfony\Component\EventDispatcher\Event; use Goteo\Model\Invest; -use Goteo\Payment\Method\PaymentMethodInterface; class FilterInvestFinishEvent extends Event { @@ -57,6 +56,5 @@ public function getHttpResponse() { else { return new RedirectResponse('/donate/' . $this->invest->id . '/share'); } - } } diff --git a/src/Goteo/Application/Event/FilterInvestModifyEvent.php b/src/Goteo/Application/Event/FilterInvestModifyEvent.php index f66ab2f1fb..23562f2500 100644 --- a/src/Goteo/Application/Event/FilterInvestModifyEvent.php +++ b/src/Goteo/Application/Event/FilterInvestModifyEvent.php @@ -34,5 +34,4 @@ public function getNewInvest() return $this->new_invest; } - } diff --git a/src/Goteo/Application/Event/FilterInvestRequestEvent.php b/src/Goteo/Application/Event/FilterInvestRequestEvent.php index 703c1a1a12..d617bd5106 100644 --- a/src/Goteo/Application/Event/FilterInvestRequestEvent.php +++ b/src/Goteo/Application/Event/FilterInvestRequestEvent.php @@ -60,5 +60,4 @@ public function skipMail($skip = null) { return $this->skip; } - } diff --git a/src/Goteo/Application/EventListener/AbstractListener.php b/src/Goteo/Application/EventListener/AbstractListener.php index 429f85dbb6..b891bf5b4a 100644 --- a/src/Goteo/Application/EventListener/AbstractListener.php +++ b/src/Goteo/Application/EventListener/AbstractListener.php @@ -10,12 +10,10 @@ namespace Goteo\Application\EventListener; -use Symfony\Component\EventDispatcher\EventSubscriberInterface; -use Psr\Log\LoggerInterface; - use Goteo\Application\App; -use Goteo\Util\Monolog\Processor\WebProcessor; use Goteo\Core\Traits\LoggerTrait; +use Psr\Log\LoggerInterface; +use Symfony\Component\EventDispatcher\EventSubscriberInterface; abstract class AbstractListener implements EventSubscriberInterface { use LoggerTrait; diff --git a/src/Goteo/Application/EventListener/DonateInvestListener.php b/src/Goteo/Application/EventListener/DonateInvestListener.php index 95640ab618..78fd0a863e 100644 --- a/src/Goteo/Application/EventListener/DonateInvestListener.php +++ b/src/Goteo/Application/EventListener/DonateInvestListener.php @@ -58,14 +58,14 @@ public function onInvestFailed(FilterInvestRequestEvent $event) { $user = $invest->getUser(); $log->populate( - Text::sys('feed-invest-by', strtoupper($method::getId())), + Text::sys('feed-invest-by', strtoupper($method->getIdNonStatic())), '/admin/invests', new FeedBody (null, null, 'feed-user-invest-error', [ '%MESSAGE%' => $response->getMessage(), '%USER%' => Feed::item('user', $user->name, $user->id), '%AMOUNT%' => Feed::item('money', $invest->amount . ' ' . $coin), '%PROJECT%' => Feed::item('project', 'DONATE'), - '%METHOD%' => strtoupper($method::getId()) + '%METHOD%' => strtoupper($method->getIdNonStatic()) ]) ) ->doAdmin('money'); @@ -131,13 +131,13 @@ public function onInvestSuccess(FilterInvestRequestEvent $event) { $log = new Feed(); $user = $invest->getUser(); $log->populate( - Text::sys('feed-invest-by', strtoupper($method::getId())), + Text::sys('feed-invest-by', strtoupper($method->getIdNonStatic())), '/admin/invests', new FeedBody(null, null, 'feed-user-invest', [ '%USER%' => Feed::item('user', $user->name, $user->id), '%AMOUNT%' => Feed::item('money', $invest->donate_amount . ' ' . $coin), '%PROJECT%' => Feed::item('project', 'DONATE FOUNDATION'), - '%METHOD%' => strtoupper($method::getId()) + '%METHOD%' => strtoupper($method->getIdNonStatic()) ]) ) ->doAdmin('money'); diff --git a/src/Goteo/Application/EventListener/InvestListener.php b/src/Goteo/Application/EventListener/InvestListener.php index 5085a28407..ae0135a750 100644 --- a/src/Goteo/Application/EventListener/InvestListener.php +++ b/src/Goteo/Application/EventListener/InvestListener.php @@ -12,26 +12,26 @@ use Goteo\Application\AppEvents; use Goteo\Application\Config; +use Goteo\Application\Currency; +use Goteo\Application\Event\FilterInvestFinishEvent; use Goteo\Application\Event\FilterInvestInitEvent; +use Goteo\Application\Event\FilterInvestModifyEvent; use Goteo\Application\Event\FilterInvestRefundEvent; use Goteo\Application\Event\FilterInvestRequestEvent; -use Goteo\Application\Event\FilterInvestFinishEvent; -use Goteo\Application\Event\FilterInvestModifyEvent; -use Goteo\Application\Lang; +use Goteo\Application\Exception\ModelException; use Goteo\Application\Message; use Goteo\Application\Session; -use Goteo\Application\Exception\ModelException; -use Goteo\Application\Currency; use Goteo\Library\Feed; use Goteo\Library\FeedBody; use Goteo\Library\Text; +use Goteo\Model\Call; use Goteo\Model\Invest; use Goteo\Model\Invest\InvestLocation; use Goteo\Model\Mail; use Goteo\Model\Template; use Goteo\Model\User; +use RuntimeException; use Symfony\Component\HttpFoundation\RedirectResponse; -use Symfony\Component\HttpFoundation\Response; use Symfony\Component\HttpKernel\Event\FilterResponseEvent; use Symfony\Component\HttpKernel\KernelEvents; @@ -135,7 +135,7 @@ public function onInvestFailed(FilterInvestRequestEvent $event) { $errors = []; $invest->save($errors); if ($errors) { - throw new \RuntimeException('Error saving Invest details! '.implode("\n", $errors)); + throw new RuntimeException('Error saving Invest details! '.implode("\n", $errors)); } $this->warning('Invest finish failed', [$invest, $project, $invest->getFirstReward(), $invest->getUser(), 'message' => $response->getMessage()]); @@ -149,14 +149,14 @@ public function onInvestFailed(FilterInvestRequestEvent $event) { $user = $invest->getUser(); $log->setTarget($project->id) ->populate( - Text::sys('feed-invest-by', strtoupper($method::getId())), + Text::sys('feed-invest-by', strtoupper($method->getIdNonStatic())), '/admin/invests', new FeedBody(null, null, 'feed-user-invest-error', [ '%MESSAGE%' => $response->getMessage(), '%USER%' => Feed::item('user', $user->name, $user->id), '%AMOUNT%' => Feed::item('money', $invest->amount.' '.$coin, $invest->id), '%PROJECT%' => Feed::item('project', strip_tags($project->name), $project->id), - '%METHOD%' => strtoupper($method::getId()) + '%METHOD%' => strtoupper($method->getIdNonStatic()) ]) ) ->doAdmin('money'); @@ -196,10 +196,9 @@ public function onInvestSuccess(FilterInvestRequestEvent $event) { $errors = []; $invest->save($errors); if ($errors) { - throw new \RuntimeException('Error saving Invest details! '.implode("\n", $errors)); + throw new RuntimeException('Error saving Invest details! '.implode("\n", $errors)); } - // MAIL SENDING TO DONOR // Thanks template $original_lang = $lang = User::getPreferences($invest->getUser())->comlang; @@ -245,7 +244,7 @@ public function onInvestSuccess(FilterInvestRequestEvent $event) { // datos para el drop if (!empty($invest->droped) && Config::get('calls_enabled')) { $drop = Invest::get($invest->droped); - $call = \Goteo\Model\Call::getMini($drop->call); + $call = Call::getMini($drop->call); // texto de capital riego $txt_droped = Text::get('invest-mail_info-drop', $call->user->name, \amount_format($drop->amount), $call->name); } @@ -282,36 +281,6 @@ public function onInvestSuccess(FilterInvestRequestEvent $event) { } unset($mailHandler); - // // si es un regalo - // if ($invest->address->regalo && !empty($invest->address->emaildest)) { - // // Notificación al destinatario de regalo - // $template = Template::get(Template::BAZAAR_RECEIVER, $comlang); - // // Sustituimos los datos - // $subject = str_replace('%USERNAME%', $user->name, $template->title); - - // // En el contenido: - // $search = array('%DESTNAME%', '%USERNAME%', '%MESSAGE%', '%PROJECTNAME%', '%PROJECTURL%', '%AMOUNT%', '%PROJAMOUNT%', '%PROJPER%', '%REWNAME%', '%ADDRESS%', '%DROPED%'); - // $replace = array($invest->address->namedest, $user->name, $invest->address->message, $projectData->name, $URL.'/project/'.$projectData->id, $invest->amount, $amount, $percent, $txt_rewards, $txt_destaddr, $txt_droped); - // $content = \str_replace($search, $replace, $template->parseText()); - - // $mailHandler = new Mail(); - // $mailHandler->lang = $comlang;lang - // $mailHandler->to = $invest->address->emaildest; - // $mailHandler->toName = $invest->address->namedest; - // $mailHandler->subject = $subject; - // $mailHandler->content = $content; - // $mailHandler->html = true; - // $mailHandler->template = $template->id; - // if ($mailHandler->send($errors)) { - // Message::info(Text::get('project-invest-friend_mail-success')); - // } else { - // Message::error(Text::get('project-invest-friend_mail-fail')); - // Message::error(implode('
', $errors)); - // } - - // unset($mailHandler); - // } - // MAIL SENDING TO AUTHOR // idioma de preferencia $original_lang = $lang = User::getPreferences($project->getOwner())->comlang; @@ -340,7 +309,7 @@ public function onInvestSuccess(FilterInvestRequestEvent $event) { if($mailHandler->send($errors)) { $this->notice('Invest owner mail sent', [$invest, $invest->getProject(), $invest->getFirstReward(), $invest->getUser(), $mailHandler]); } else { - $this->warning('Invest owner mail error', [$invest, $invest->getProject(), $invest->getFirstReward(), $invest->getUser(), 'method' => $method::getId(), $mailHandler, 'errors' => $errors]); + $this->warning('Invest owner mail error', [$invest, $invest->getProject(), $invest->getFirstReward(), $invest->getUser(), 'method' => $method->getIdNonStatic(), $mailHandler, 'errors' => $errors]); } } @@ -352,13 +321,13 @@ public function onInvestSuccess(FilterInvestRequestEvent $event) { $user = $invest->getUser(); $log->setTarget($project->id) ->populate( - Text::sys('feed-invest-by', strtoupper($method::getId())), + Text::sys('feed-invest-by', strtoupper($method->getIdNonStatic())), '/admin/invests', new FeedBody(null, null, 'feed-user-invest', [ '%USER%' => Feed::item('user', $user->name, $user->id), '%AMOUNT%' => Feed::item('money', $invest->amount . ' ' . $coin, $invest->id), '%PROJECT%' => Feed::item('project', strip_tags($project->name), $project->id), - '%METHOD%' => strtoupper($method::getId()) + '%METHOD%' => strtoupper($method->getIdNonStatic()) ]) ) ->doAdmin('money'); @@ -394,7 +363,6 @@ public function onInvestSuccess(FilterInvestRequestEvent $event) { /** * Cancels and invest for other reasons than failed projects - * @param FilterInvestRefundEvent $event */ public function onInvestRefundCancel(FilterInvestRefundEvent $event) { $method = $event->getMethod(); @@ -402,19 +370,17 @@ public function onInvestRefundCancel(FilterInvestRefundEvent $event) { $errors = []; if ($invest->cancel(false, $errors)) { $this->notice(($invest->getProject() ? '' : 'Pool') .'Invest cancelled', [$invest, $invest->getProject(), $invest->getFirstReward(), $invest->getUser()]); - Invest::setDetail($invest->id, $method::getId().'-cancel', 'Invest process manually cancelled successfully'); + Invest::setDetail($invest->id, $method->getIdNonStatic().'-cancel', 'Invest process manually cancelled successfully'); // update cached data $invest->keepUpdated(); } else { $this->warning('Error cancelling invest', [$invest, $invest->getProject(), $invest->getFirstReward(), $invest->getUser(), 'errors' >= $errors]); - Invest::setDetail($invest->id, $method::getId().'-cancel-fail', 'Error while cancelling invest'); + Invest::setDetail($invest->id, $method->getIdNonStatic().'-cancel-fail', 'Error while cancelling invest'); } - } /** * Cancels and invest for failed projects - * @param FilterInvestRefundEvent $event */ public function onInvestRefundReturn(FilterInvestRefundEvent $event) { $method = $event->getMethod(); @@ -422,31 +388,29 @@ public function onInvestRefundReturn(FilterInvestRefundEvent $event) { $this->notice(($invest->getProject() ? '' : 'Pool') .'Invest refund cancel', [$invest, $invest->getProject(), $invest->getFirstReward(), $invest->getUser()]); if ($invest->cancel(true)) { $this->notice(($invest->getProject() ? '' : 'Pool') .'Invest refund succeeded', [$invest, $invest->getProject(), $invest->getFirstReward(), $invest->getUser()]); - Invest::setDetail($invest->id, $method::getId().'-cancel', 'Invest refunded successfully'); + Invest::setDetail($invest->id, $method->getIdNonStatic().'-cancel', 'Invest refunded successfully'); // update cached data $invest->keepUpdated(); } else { $this->warning('Error refunding invest', [$invest, $invest->getProject(), $invest->getFirstReward(), $invest->getUser()]); - Invest::setDetail($invest->id, $method::getId().'-cancel-fail', 'Error while refunding invest'); + Invest::setDetail($invest->id, $method->getIdNonStatic().'-cancel-fail', 'Error while refunding invest'); } } + /** * Handles failed refund process - * @param FilterInvestRefundEvent $event */ public function onInvestRefundFailed(FilterInvestRefundEvent $event) { $method = $event->getMethod(); $invest = $event->getInvest(); $response = $event->getResponse(); $this->warning(($invest->getProject() ? '' : 'Pool') .'Invest refund failed', [$invest, $invest->getProject(), $invest->getFirstReward(), $invest->getUser(), 'messages' => $response->getMessage()]); - Invest::setDetail($invest->id, $method::getId().'-return-fail', 'Error while refunding invest: '.$response->getMessage()); - + Invest::setDetail($invest->id, $method->getIdNonStatic().'-return-fail', 'Error while refunding invest: '.$response->getMessage()); } /** * Once user has entered data - * @param FilterInvestRefundEvent $event */ public function onInvestFinished(FilterInvestFinishEvent $event) { $request = $event->getRequest(); @@ -474,14 +438,10 @@ public function onInvestFinished(FilterInvestFinishEvent $event) { $this->notice(($invest->getProject() ? '' : 'Pool') .'Invest finished', [$invest, $invest->getProject(), $invest->getFirstReward(), $invest->getUser()]); Invest::setDetail($invest->id, $invest->method.'-return-data', 'User has saved personal data for rewards'); - } - /** * Saves a modified Invest - * @param FilterInvestFinishEvent $event [description] - * @return [type] [description] */ public function onInvestModify(FilterInvestModifyEvent $event) { $invest = $event->getNewInvest(); @@ -512,13 +472,10 @@ public function onInvestModify(FilterInvestModifyEvent $event) { $this->warning('Error modifying invest', [$invest, $invest->getOldInvest(), 'errors' => $errors]); throw new ModelException(implode(", ", $errors)); } - } /** - * Response should not be manipulated for controller Invest and method notifiy - * @param FilterResponseEvent $event [description] - * @return [type] [description] + * Response should not be manipulated for controller Invest and method notify */ public function onKernelResponse(FilterResponseEvent $event) { @@ -527,10 +484,10 @@ public function onKernelResponse(FilterResponseEvent $event) { if ($request->attributes->get('_controller') == 'Goteo\Controller\InvestController::notifyPaymentAction') { $event->stopPropagation(); } - } - public static function getSubscribedEvents() { + public static function getSubscribedEvents(): array + { return array( AppEvents::INVEST_INIT => 'onInvestInit', AppEvents::INVEST_INIT_REQUEST => 'onInvestInitRequest', diff --git a/src/Goteo/Application/EventListener/InvestMatcherListener.php b/src/Goteo/Application/EventListener/InvestMatcherListener.php index c71abd3e63..05b2083662 100644 --- a/src/Goteo/Application/EventListener/InvestMatcherListener.php +++ b/src/Goteo/Application/EventListener/InvestMatcherListener.php @@ -66,14 +66,14 @@ public function processPayments(Matcher $matcher, MatcherProcessorInterface $pro $user = $invest->getUser(); $method = $invest->getMethod(); $log->populate( - Text::sys('matcher-feed-invest-by', strtoupper($method::getId())), + Text::sys('matcher-feed-invest-by', strtoupper($method->getIdNonStatic())), '/admin/invests', new FeedBody(null, null, 'matcher-feed-user-invest', [ '%USER%' => Feed::item('user', $user->name, $user->id), '%MATCHER%' => Feed::item('matcher', $matcher->name, $matcher->id), '%AMOUNT%' => Feed::item('money', $drop->amount.' '.$coin), '%PROJECT%' => Feed::item('project', $project->name, $project->id), - '%METHOD%' => strtoupper($method::getId()) + '%METHOD%' => strtoupper($method->getIdNonStatic()) ]) ); } else { @@ -109,7 +109,7 @@ public function processPayments(Matcher $matcher, MatcherProcessorInterface $pro $user = $invest->getUser(); $method = $invest->getMethod(); $log->populate( - Text::sys('matcher-feed-invest-by', strtoupper($method::getId())), + Text::sys('matcher-feed-invest-by', strtoupper($method->getIdNonStatic())), '/admin/invests', new FeedBody(null, null, 'matcher-feed-user-invest-error', [ '%MESSAGE%' => implode(', ', $errors), @@ -117,7 +117,7 @@ public function processPayments(Matcher $matcher, MatcherProcessorInterface $pro '%MATCHER%' => Feed::item('matcher', $matcher->name, $matcher->id), '%AMOUNT%' => Feed::item('money', $drop->amount.' '.$coin), '%PROJECT%' => Feed::item('project', $project->name, $project->id), - '%METHOD%' => strtoupper($method::getId()) + '%METHOD%' => strtoupper($method->getIdNonStatic()) ]) ); } else { diff --git a/src/Goteo/Application/EventListener/PoolInvestListener.php b/src/Goteo/Application/EventListener/PoolInvestListener.php index 7efdcf0be1..d55cd92a17 100644 --- a/src/Goteo/Application/EventListener/PoolInvestListener.php +++ b/src/Goteo/Application/EventListener/PoolInvestListener.php @@ -54,14 +54,14 @@ public function onInvestFailed(FilterInvestRequestEvent $event) { $user = $invest->getUser(); $log->populate( - Text::sys('feed-invest-by', strtoupper($method::getId())), + Text::sys('feed-invest-by', strtoupper($method->getIdNonStatic())), '/admin/invests', new FeedBody (null, null, 'feed-user-invest-error', [ '%MESSAGE%' => $response->getMessage(), '%USER%' => Feed::item('user', $user->name, $user->id), '%AMOUNT%' => Feed::item('money', $invest->amount . ' ' . $coin), '%PROJECT%' => Feed::item('project', 'POOL'), - '%METHOD%' => strtoupper($method::getId()) + '%METHOD%' => strtoupper($method->getIdNonStatic()) ]) ) ->doAdmin('money'); @@ -134,13 +134,13 @@ public function onInvestSuccess(FilterInvestRequestEvent $event) { $log = new Feed(); $user = $invest->getUser(); $log->populate( - Text::sys('feed-invest-by', strtoupper($method::getId())), + Text::sys('feed-invest-by', strtoupper($method->getIdNonStatic())), '/admin/invests', new FeedBody(null, null, 'feed-user-invest', [ '%USER%' => Feed::item('user', $user->name, $user->id), '%AMOUNT%' => Feed::item('money', $invest->amount . ' ' . $coin), '%PROJECT%' => Feed::item('project', 'POOL'), - '%METHOD%' => strtoupper($method::getId()) + '%METHOD%' => strtoupper($method->getIdNonStatic()) ]) ) ->doAdmin('money'); diff --git a/src/Goteo/Application/EventListener/SessionListener.php b/src/Goteo/Application/EventListener/SessionListener.php index aae1857bbc..ba1bc429cc 100644 --- a/src/Goteo/Application/EventListener/SessionListener.php +++ b/src/Goteo/Application/EventListener/SessionListener.php @@ -25,13 +25,10 @@ use Goteo\Model\Image; use Goteo\Util\Parsers\UrlLang; use Symfony\Component\HttpFoundation\RedirectResponse; -use Symfony\Component\HttpFoundation\Response; -use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpKernel\Event\FilterResponseEvent; use Symfony\Component\HttpKernel\Event\GetResponseEvent; use Symfony\Component\HttpKernel\KernelEvents; -// class SessionListener extends AbstractListener { @@ -43,7 +40,6 @@ public function onRequest(GetResponseEvent $event) { } $request = $event->getRequest(); - $parser = new UrlLang($request); //non cookies for notifyAction on investController @@ -51,15 +47,11 @@ public function onRequest(GetResponseEvent $event) { return; } - - // clean all caches if requested // TODO: replace by some controller if ($request->query->has('cleancache')) { Model::cleanCache(); } - // Init session - // // if url_lang is defined set a common cookie for all domains if (Config::get('url.url_lang')) { $host = $request->getHost(); @@ -75,10 +67,6 @@ public function onRequest(GetResponseEvent $event) { } } Session::start('goteo-' . Config::get('env'), Config::get('session.time')); - - /** - * Session. - */ Session::onSessionExpires(function () { Message::info(Text::get('session-expired')); }); @@ -86,37 +74,28 @@ public function onRequest(GetResponseEvent $event) { //Message::info('That\'s all folks!'); }); - - // Set lang $lang = Lang::setFromGlobals($request); $host = $parser->getHost($lang); // Mantain user in secure enviroment if logged and ssl config on if (Config::get('ssl') && Session::isLogged() && !$request->isSecure()) { - // Force HTTPS redirection $host = 'https://' . $host; } else { - // Conserve the current scheme $host = $request->getScheme() . '://' . $host; } // Redirect if needed if ($host != $request->getScheme() . '://' . $request->getHttpHost()) { $query = http_build_query($request->query->all()); - // die($host . $request->getPathInfo() . ($query ? "?$query" : '')); $event->setResponse(new RedirectResponse($host . $request->getPathInfo() . ($query ? "?$query" : ''))); return; } - // die("[$host] - " .$request->getScheme() . '://' . $request->getHttpHost()); // the stupid cookie EU law if (!Cookie::exists('goteo_cookies')) { - // print_r($_COOKIE);die('cooki'); Cookie::store('goteo_cookies', 'ok'); - // print_r($_COOKIE);die('cooki'); Message::info(Text::get('message-cookies')); } - // set currency $currency = $request->query->get('currency'); if ($amount = $request->query->get('amount')) { $currency = (string) substr($amount, strlen((int) $amount)); @@ -129,7 +108,6 @@ public function onRequest(GetResponseEvent $event) { $currency = Currency::get($currency, 'id'); Session::store('currency', $currency); // depending on request - // Langs $langs = []; foreach (Lang::listAll('name', true) as $id => $lang) { if (Lang::isActive($id)) continue; @@ -149,7 +127,6 @@ public function onRequest(GetResponseEvent $event) { Session::addToMainMenu(' ' . Text::get('regular-header-about'), Lang::getUrl() . 'blog', 'about', 40); Session::addToMainMenu(' ' . Text::get('regular-faq'), Lang::getUrl() . 'faq', 'faq', 100); - // Currencies $currencies = []; foreach(Currency::$currencies as $id => $c) { @@ -178,11 +155,11 @@ public function onRequest(GetResponseEvent $event) { } if ( isset($user->roles['checker']) ) { - Session::addToUserMenu(Text::get('regular-review_board'), Lang::getUrl() . 'review', 'review', 90); + Session::addToUserMenu(Text::get('regular-review_board'), Lang::getUrl() . 'review', 'review', 90); } if ( Session::isAdmin() ) { - Session::addToUserMenu(Text::get('regular-admin_board'), Lang::getUrl() . 'admin', 'admin', 90); + Session::addToUserMenu(Text::get('regular-admin_board'), Lang::getUrl() . 'admin', 'admin', 90); } // Add last 4 owned projects @@ -199,18 +176,11 @@ public function onRequest(GetResponseEvent $event) { Session::addToUserMenu(' ' . Text::get('regular-logout'), Lang::getUrl() . 'user/logout', 'logout', 100); - // Controllers may use the Sidebar menu on specific activites - // Session::addToSidebarMenu(' Sidebar Item 1', '#'); - - // extend the life of the session Session::renew(); - } /** * Modifies the html to add some data - * @param FilterResponseEvent $event [description] - * @return [type] [description] */ public function onResponse(FilterResponseEvent $event) { $request = $event->getRequest(); @@ -223,14 +193,9 @@ public function onResponse(FilterResponseEvent $event) { $vars = [ 'code' => $response->getStatusCode(), - // 'method' => $request->getMethod(), - // 'ip' => $request->getClientIp(), 'agent' => $request->headers->get('User-Agent'), 'referer' => $request->headers->get('referer'), - // 'http_user' => $request->getUser(), - // 'uri' => $request->getUri(), 'path' => $request->getPathInfo(), - // 'query' => $request->query->all(), 'query' => $request->getQueryString(), 'user' => Session::getUserId(), 'time' => microtime(true) - Session::getStartTime(), @@ -246,15 +211,11 @@ public function onResponse(FilterResponseEvent $event) { } else { $vars['controller'] = $controller; } - // if ($route_params = $request->attributes->get('_route_params')) { - // $vars['route_params'] = $route_params; - // } $this->info('Request', $vars); //Are we shadowing some user? let's add a nice bar to return to the original user if ($shadowed_by = Session::get('shadowed_by')) { - // die(print_r(Session::get('shadowed_by'))); $body = ''; $content = $response->getContent(); $search = '