diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md new file mode 100644 index 00000000..e4df8977 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -0,0 +1,23 @@ +--- +name: Bug report +about: Report errors and problems +title: '' +labels: bug +assignees: '' + +--- + +**Magento version(s) used**: x.y.z +**Extension version(s) affected**: x.y.z + +**Description** + + +**How to reproduce** + + +**Possible Solution** + + +**Additional context** + diff --git a/.github/ISSUE_TEMPLATE/documentation-issue.md b/.github/ISSUE_TEMPLATE/documentation-issue.md new file mode 100644 index 00000000..4d522b65 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/documentation-issue.md @@ -0,0 +1,12 @@ +--- +name: Documentation Issue +about: Missing, misleading or incomplete documentation issues +title: '' +labels: docs +assignees: '' + +--- + +**Documentation issue** + + diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md new file mode 100644 index 00000000..86f78b2a --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature_request.md @@ -0,0 +1,20 @@ +--- +name: Feature request +about: Ideas for new features and improvements +title: '' +labels: enhancement +assignees: '' + +--- + +**Is your feature request related to a problem? Please describe.** +A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] + +**Describe the solution you'd like** +A clear and concise description of what you want to happen. + +**Describe alternatives you've considered** +A clear and concise description of any alternative solutions or features you've considered. + +**Additional context** +Add any other context or screenshots about the feature request here. diff --git a/CHANGELOG.md b/CHANGELOG.md index fbe43e3b..bb6f93c7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,10 @@ All notable changes to this project will be documented in this file. This project adheres to Semantic Versioning. +### 3.11.0 +* Use mock products in category personalisation when preview mode is enabled +* Ignore non-numeric product ids in Graphql responses +* Add inventory level to SKU + ### 3.10.0 * Add Nosto category personalization in the default Magento category sorting options diff --git a/app/code/community/Nosto/Tagging/Model/Meta/Sku.php b/app/code/community/Nosto/Tagging/Model/Meta/Sku.php index 99f1a18b..40b8e13d 100644 --- a/app/code/community/Nosto/Tagging/Model/Meta/Sku.php +++ b/app/code/community/Nosto/Tagging/Model/Meta/Sku.php @@ -55,6 +55,9 @@ public function loadData( Mage_Core_Model_Store $store = null ) { + /** @var Nosto_Tagging_Helper_Data $dataHelper */ + $dataHelper = Mage::helper('nosto_tagging'); + if ($store === null) { /** @var Nosto_Tagging_Helper_Data $helper */ $helper = Mage::helper('nosto_tagging'); @@ -83,6 +86,10 @@ public function loadData( $this->loadCustomFieldsFromConfigurableAttributes($sku, $parent, $store); $this->loadCustomFieldsFromAttributeSet($sku, $store); + if ($dataHelper->getUseInventoryLevel($store)) { + $this->amendInventoryLevel($sku); + } + return true; } @@ -173,4 +180,27 @@ protected function buildAvailability(Mage_Catalog_Model_Product $product) return $availability; } + + /** + * Adds the stock level / inventory level for SKU + * + * @param Mage_Catalog_Model_Product $sku the product sku model. + * + */ + protected function amendInventoryLevel(Mage_Catalog_Model_Product $sku) + { + /* @var Nosto_Tagging_Helper_Stock $stockHelper */ + $stockHelper = Mage::helper('nosto_tagging/stock'); + try { + $this->setInventoryLevel($stockHelper->getQty($sku)); + } catch (\Exception $e) { + Nosto_Tagging_Helper_Log::error( + 'Failed to resolve inventory level for SKU %d to tags. Error message was: %s', + array( + $sku->getId(), + $e->getMessage() + ) + ); + } + } } diff --git a/app/code/community/Nosto/Tagging/Model/Service/Recommendation/Category.php b/app/code/community/Nosto/Tagging/Model/Service/Recommendation/Category.php index 34390977..0ec6f0f2 100644 --- a/app/code/community/Nosto/Tagging/Model/Service/Recommendation/Category.php +++ b/app/code/community/Nosto/Tagging/Model/Service/Recommendation/Category.php @@ -35,6 +35,8 @@ class Nosto_Tagging_Model_Service_Recommendation_Category extends Nosto_Tagging_Model_Service_Recommendation_Base { + const NOSTO_PREVIEW_COOKIE = 'nostopreview'; + /** * Returns an array of product ids sorted by relevance * @@ -57,32 +59,35 @@ public function getSortedProductIds( if (!$featureAccess->canUseGraphql()) { return $productIds; } - switch ($type){ - case Nosto_Tagging_Model_Category_Config::NOSTO_PERSONALIZED_KEY: - $recoOperation = new Nosto_Operation_Recommendation_CategoryBrowsingHistory( - $nostoAccount, - $nostoCustomerId - ); - break; - default: - $recoOperation = new Nosto_Operation_Recommendation_CategoryTopList( - $nostoAccount, - $nostoCustomerId - ); - break; + if ($type === Nosto_Tagging_Model_Category_Config::NOSTO_PERSONALIZED_KEY) { + $recoOperation = new Nosto_Operation_Recommendation_CategoryBrowsingHistory( + $nostoAccount, + $nostoCustomerId + ); + } else { + $recoOperation = new Nosto_Operation_Recommendation_CategoryTopList( + $nostoAccount, + $nostoCustomerId + ); } $recoOperation->setCategory($category); + + $previewModeCookie = Mage::getModel('core/cookie') + ->get(self::NOSTO_PREVIEW_COOKIE); + if ($previewModeCookie !== null && $previewModeCookie === "true") { + $recoOperation->setPreviewMode(true); + } + try { $result = $recoOperation->execute(); foreach ($result as $item) { - if ($item->getProductId()) { + if ($item->getProductId() && is_numeric($item->getProductId())) { $productIds[] = $item->getProductId(); } } } catch (\Exception $e) { Nosto_Tagging_Helper_Log::exception($e); } - return $productIds; } -} \ No newline at end of file +} diff --git a/app/code/community/Nosto/Tagging/etc/config.xml b/app/code/community/Nosto/Tagging/etc/config.xml index b09f07b7..a56549f6 100644 --- a/app/code/community/Nosto/Tagging/etc/config.xml +++ b/app/code/community/Nosto/Tagging/etc/config.xml @@ -28,7 +28,7 @@ - 3.10.0 + 3.11.0 diff --git a/composer.json b/composer.json index fc91c607..fa1aac5c 100644 --- a/composer.json +++ b/composer.json @@ -23,7 +23,7 @@ }, "require": { "php": ">=5.4.0", - "nosto/php-sdk": "3.13.0" + "nosto/php-sdk": "3.15.0" }, "require-dev": { "php": ">=7.1.0", @@ -37,7 +37,8 @@ "magento/marketplace-eqp": "1.*", "openmage/magento-mirror": "1.9", "wimg/php-compatibility": "^8.0", - "mridang/pearify": "0.3" + "mridang/pearify": "0.3", + "vlucas/phpdotenv": ">=2.4.0 <3.0" }, "scripts": { "post-install-cmd": "if ! type \"composer\" > /dev/null; then echo \"composer not available in path - you must update the lib files manually\"; else composer dump-autoload --optimize; ./vendor/bin/pearify process .;fi", diff --git a/composer.lock b/composer.lock index 2fe210a0..c5c3c15f 100644 --- a/composer.lock +++ b/composer.lock @@ -4,26 +4,26 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "8567516866ecf1cd4087dbc8b6b76dba", + "content-hash": "37c26d6229f2553088c6a4b6defe356b", "packages": [ { "name": "nosto/php-sdk", - "version": "3.13.0", + "version": "3.15.0", "source": { "type": "git", "url": "https://github.com/Nosto/nosto-php-sdk.git", - "reference": "980fdeeab0583cae842cffc04552842edb33e046" + "reference": "57535f635e6ae6e0d019609de4bfdd0f2e6ddf19" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Nosto/nosto-php-sdk/zipball/980fdeeab0583cae842cffc04552842edb33e046", - "reference": "980fdeeab0583cae842cffc04552842edb33e046", + "url": "https://api.github.com/repos/Nosto/nosto-php-sdk/zipball/57535f635e6ae6e0d019609de4bfdd0f2e6ddf19", + "reference": "57535f635e6ae6e0d019609de4bfdd0f2e6ddf19", "shasum": "" }, "require": { "php": ">=5.4.0", "phpseclib/phpseclib": "2.0.*", - "vlucas/phpdotenv": ">=2.4.0 <=2.6" + "vlucas/phpdotenv": ">=2.4.0 <=3.0" }, "require-dev": { "codeception/base": "2.2.9", @@ -51,20 +51,20 @@ "BSD-3-Clause" ], "description": "PHP SDK for developing Nosto modules for e-commerce platforms", - "time": "2019-04-08T13:02:49+00:00" + "time": "2019-06-11T06:31:21+00:00" }, { "name": "phpseclib/phpseclib", - "version": "2.0.15", + "version": "2.0.17", "source": { "type": "git", "url": "https://github.com/phpseclib/phpseclib.git", - "reference": "11cf67cf78dc4acb18dc9149a57be4aee5036ce0" + "reference": "3ca5b88d582c69178c8d01fd9d02b94e15042bb8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpseclib/phpseclib/zipball/11cf67cf78dc4acb18dc9149a57be4aee5036ce0", - "reference": "11cf67cf78dc4acb18dc9149a57be4aee5036ce0", + "url": "https://api.github.com/repos/phpseclib/phpseclib/zipball/3ca5b88d582c69178c8d01fd9d02b94e15042bb8", + "reference": "3ca5b88d582c69178c8d01fd9d02b94e15042bb8", "shasum": "" }, "require": { @@ -143,7 +143,7 @@ "x.509", "x509" ], - "time": "2019-01-27T19:37:29+00:00" + "time": "2019-05-26T20:38:34+00:00" }, { "name": "symfony/polyfill-ctype", @@ -190,7 +190,7 @@ }, { "name": "Gert de Pagter", - "email": "backendtea@gmail.com" + "email": "BackEndTea@gmail.com" } ], "description": "Symfony polyfill for ctype functions", @@ -205,16 +205,16 @@ }, { "name": "vlucas/phpdotenv", - "version": "v2.6.0", + "version": "v2.6.1", "source": { "type": "git", "url": "https://github.com/vlucas/phpdotenv.git", - "reference": "f3aae2877ecf916ee802b7a5b249d36658171df6" + "reference": "2a7dcf7e3e02dc5e701004e51a6f304b713107d5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/vlucas/phpdotenv/zipball/f3aae2877ecf916ee802b7a5b249d36658171df6", - "reference": "f3aae2877ecf916ee802b7a5b249d36658171df6", + "url": "https://api.github.com/repos/vlucas/phpdotenv/zipball/2a7dcf7e3e02dc5e701004e51a6f304b713107d5", + "reference": "2a7dcf7e3e02dc5e701004e51a6f304b713107d5", "shasum": "" }, "require": { @@ -252,7 +252,7 @@ "env", "environment" ], - "time": "2019-01-28T20:57:27+00:00" + "time": "2019-01-29T11:11:52+00:00" } ], "packages-dev": [ @@ -964,16 +964,16 @@ }, { "name": "phpunit/php-timer", - "version": "2.1.1", + "version": "2.1.2", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-timer.git", - "reference": "8b389aebe1b8b0578430bda0c7c95a829608e059" + "reference": "1038454804406b0b5f5f520358e78c1c2f71501e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/8b389aebe1b8b0578430bda0c7c95a829608e059", - "reference": "8b389aebe1b8b0578430bda0c7c95a829608e059", + "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/1038454804406b0b5f5f520358e78c1c2f71501e", + "reference": "1038454804406b0b5f5f520358e78c1c2f71501e", "shasum": "" }, "require": { @@ -1009,7 +1009,7 @@ "keywords": [ "timer" ], - "time": "2019-02-20T10:12:59+00:00" + "time": "2019-06-07T04:22:29+00:00" }, { "name": "psr/container", @@ -1380,16 +1380,16 @@ }, { "name": "symfony/config", - "version": "v4.2.4", + "version": "v4.3.1", "source": { "type": "git", "url": "https://github.com/symfony/config.git", - "reference": "7f70d79c7a24a94f8e98abb988049403a53d7b31" + "reference": "6379ee07398643e09e6ed1e87d9c62dfcad7f4eb" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/config/zipball/7f70d79c7a24a94f8e98abb988049403a53d7b31", - "reference": "7f70d79c7a24a94f8e98abb988049403a53d7b31", + "url": "https://api.github.com/repos/symfony/config/zipball/6379ee07398643e09e6ed1e87d9c62dfcad7f4eb", + "reference": "6379ee07398643e09e6ed1e87d9c62dfcad7f4eb", "shasum": "" }, "require": { @@ -1404,6 +1404,7 @@ "symfony/dependency-injection": "~3.4|~4.0", "symfony/event-dispatcher": "~3.4|~4.0", "symfony/finder": "~3.4|~4.0", + "symfony/messenger": "~4.1", "symfony/yaml": "~3.4|~4.0" }, "suggest": { @@ -1412,7 +1413,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "4.2-dev" + "dev-master": "4.3-dev" } }, "autoload": { @@ -1439,20 +1440,20 @@ ], "description": "Symfony Config Component", "homepage": "https://symfony.com", - "time": "2019-02-23T15:17:42+00:00" + "time": "2019-05-30T16:10:05+00:00" }, { "name": "symfony/console", - "version": "v3.4.23", + "version": "v3.4.28", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "71ce77f37af0c5ffb9590e43cc4f70e426945c5e" + "reference": "8e1d1e406dd31727fa70cd5a99cda202e9d6a5c6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/71ce77f37af0c5ffb9590e43cc4f70e426945c5e", - "reference": "71ce77f37af0c5ffb9590e43cc4f70e426945c5e", + "url": "https://api.github.com/repos/symfony/console/zipball/8e1d1e406dd31727fa70cd5a99cda202e9d6a5c6", + "reference": "8e1d1e406dd31727fa70cd5a99cda202e9d6a5c6", "shasum": "" }, "require": { @@ -1511,88 +1512,20 @@ ], "description": "Symfony Console Component", "homepage": "https://symfony.com", - "time": "2019-02-23T15:06:07+00:00" - }, - { - "name": "symfony/contracts", - "version": "v1.0.2", - "source": { - "type": "git", - "url": "https://github.com/symfony/contracts.git", - "reference": "1aa7ab2429c3d594dd70689604b5cf7421254cdf" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/contracts/zipball/1aa7ab2429c3d594dd70689604b5cf7421254cdf", - "reference": "1aa7ab2429c3d594dd70689604b5cf7421254cdf", - "shasum": "" - }, - "require": { - "php": "^7.1.3" - }, - "require-dev": { - "psr/cache": "^1.0", - "psr/container": "^1.0" - }, - "suggest": { - "psr/cache": "When using the Cache contracts", - "psr/container": "When using the Service contracts", - "symfony/cache-contracts-implementation": "", - "symfony/service-contracts-implementation": "", - "symfony/translation-contracts-implementation": "" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0-dev" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Contracts\\": "" - }, - "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": "A set of abstractions extracted out of the Symfony components", - "homepage": "https://symfony.com", - "keywords": [ - "abstractions", - "contracts", - "decoupling", - "interfaces", - "interoperability", - "standards" - ], - "time": "2018-12-05T08:06:11+00:00" + "time": "2019-05-09T08:42:51+00:00" }, { "name": "symfony/debug", - "version": "v4.2.4", + "version": "v4.3.1", "source": { "type": "git", "url": "https://github.com/symfony/debug.git", - "reference": "de73f48977b8eaf7ce22814d66e43a1662cc864f" + "reference": "4e025104f1f9adb1f7a2d14fb102c9986d6e97c6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/debug/zipball/de73f48977b8eaf7ce22814d66e43a1662cc864f", - "reference": "de73f48977b8eaf7ce22814d66e43a1662cc864f", + "url": "https://api.github.com/repos/symfony/debug/zipball/4e025104f1f9adb1f7a2d14fb102c9986d6e97c6", + "reference": "4e025104f1f9adb1f7a2d14fb102c9986d6e97c6", "shasum": "" }, "require": { @@ -1608,7 +1541,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "4.2-dev" + "dev-master": "4.3-dev" } }, "autoload": { @@ -1635,39 +1568,39 @@ ], "description": "Symfony Debug Component", "homepage": "https://symfony.com", - "time": "2019-03-03T18:11:24+00:00" + "time": "2019-05-30T16:10:05+00:00" }, { "name": "symfony/dependency-injection", - "version": "v4.2.4", + "version": "v4.3.1", "source": { "type": "git", "url": "https://github.com/symfony/dependency-injection.git", - "reference": "cdadb3765df7c89ac93628743913b92bb91f1704" + "reference": "fea7f73e278ee0337349a5a68b867fc656bb33f3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/cdadb3765df7c89ac93628743913b92bb91f1704", - "reference": "cdadb3765df7c89ac93628743913b92bb91f1704", + "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/fea7f73e278ee0337349a5a68b867fc656bb33f3", + "reference": "fea7f73e278ee0337349a5a68b867fc656bb33f3", "shasum": "" }, "require": { "php": "^7.1.3", "psr/container": "^1.0", - "symfony/contracts": "^1.0" + "symfony/service-contracts": "^1.1.2" }, "conflict": { - "symfony/config": "<4.2", + "symfony/config": "<4.3", "symfony/finder": "<3.4", "symfony/proxy-manager-bridge": "<3.4", "symfony/yaml": "<3.4" }, "provide": { "psr/container-implementation": "1.0", - "symfony/service-contracts-implementation": "1.0" + "symfony/service-implementation": "1.0" }, "require-dev": { - "symfony/config": "~4.2", + "symfony/config": "^4.3", "symfony/expression-language": "~3.4|~4.0", "symfony/yaml": "~3.4|~4.0" }, @@ -1681,7 +1614,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "4.2-dev" + "dev-master": "4.3-dev" } }, "autoload": { @@ -1708,20 +1641,20 @@ ], "description": "Symfony DependencyInjection Component", "homepage": "https://symfony.com", - "time": "2019-02-23T15:17:42+00:00" + "time": "2019-05-30T16:10:05+00:00" }, { "name": "symfony/filesystem", - "version": "v4.2.4", + "version": "v4.3.1", "source": { "type": "git", "url": "https://github.com/symfony/filesystem.git", - "reference": "e16b9e471703b2c60b95f14d31c1239f68f11601" + "reference": "bf2af40d738dec5e433faea7b00daa4431d0a4cf" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/filesystem/zipball/e16b9e471703b2c60b95f14d31c1239f68f11601", - "reference": "e16b9e471703b2c60b95f14d31c1239f68f11601", + "url": "https://api.github.com/repos/symfony/filesystem/zipball/bf2af40d738dec5e433faea7b00daa4431d0a4cf", + "reference": "bf2af40d738dec5e433faea7b00daa4431d0a4cf", "shasum": "" }, "require": { @@ -1731,7 +1664,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "4.2-dev" + "dev-master": "4.3-dev" } }, "autoload": { @@ -1758,20 +1691,20 @@ ], "description": "Symfony Filesystem Component", "homepage": "https://symfony.com", - "time": "2019-02-07T11:40:08+00:00" + "time": "2019-06-03T20:27:40+00:00" }, { "name": "symfony/finder", - "version": "v4.2.4", + "version": "v4.3.1", "source": { "type": "git", "url": "https://github.com/symfony/finder.git", - "reference": "267b7002c1b70ea80db0833c3afe05f0fbde580a" + "reference": "b3d4f4c0e4eadfdd8b296af9ca637cfbf51d8176" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/finder/zipball/267b7002c1b70ea80db0833c3afe05f0fbde580a", - "reference": "267b7002c1b70ea80db0833c3afe05f0fbde580a", + "url": "https://api.github.com/repos/symfony/finder/zipball/b3d4f4c0e4eadfdd8b296af9ca637cfbf51d8176", + "reference": "b3d4f4c0e4eadfdd8b296af9ca637cfbf51d8176", "shasum": "" }, "require": { @@ -1780,7 +1713,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "4.2-dev" + "dev-master": "4.3-dev" } }, "autoload": { @@ -1807,7 +1740,7 @@ ], "description": "Symfony Finder Component", "homepage": "https://symfony.com", - "time": "2019-02-23T15:42:05+00:00" + "time": "2019-05-26T20:47:49+00:00" }, { "name": "symfony/polyfill-mbstring", @@ -1868,18 +1801,76 @@ ], "time": "2019-02-06T07:57:58+00:00" }, + { + "name": "symfony/service-contracts", + "version": "v1.1.2", + "source": { + "type": "git", + "url": "https://github.com/symfony/service-contracts.git", + "reference": "191afdcb5804db960d26d8566b7e9a2843cab3a0" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/service-contracts/zipball/191afdcb5804db960d26d8566b7e9a2843cab3a0", + "reference": "191afdcb5804db960d26d8566b7e9a2843cab3a0", + "shasum": "" + }, + "require": { + "php": "^7.1.3" + }, + "suggest": { + "psr/container": "", + "symfony/service-implementation": "" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.1-dev" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Contracts\\Service\\": "" + } + }, + "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": "Generic abstractions related to writing services", + "homepage": "https://symfony.com", + "keywords": [ + "abstractions", + "contracts", + "decoupling", + "interfaces", + "interoperability", + "standards" + ], + "time": "2019-05-28T07:50:59+00:00" + }, { "name": "symfony/yaml", - "version": "v4.2.4", + "version": "v4.3.1", "source": { "type": "git", "url": "https://github.com/symfony/yaml.git", - "reference": "761fa560a937fd7686e5274ff89dcfa87a5047df" + "reference": "c60ecf5ba842324433b46f58dc7afc4487dbab99" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/yaml/zipball/761fa560a937fd7686e5274ff89dcfa87a5047df", - "reference": "761fa560a937fd7686e5274ff89dcfa87a5047df", + "url": "https://api.github.com/repos/symfony/yaml/zipball/c60ecf5ba842324433b46f58dc7afc4487dbab99", + "reference": "c60ecf5ba842324433b46f58dc7afc4487dbab99", "shasum": "" }, "require": { @@ -1898,7 +1889,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "4.2-dev" + "dev-master": "4.3-dev" } }, "autoload": { @@ -1925,7 +1916,7 @@ ], "description": "Symfony Yaml Component", "homepage": "https://symfony.com", - "time": "2019-02-23T15:17:42+00:00" + "time": "2019-04-06T14:04:46+00:00" }, { "name": "theseer/fdomdocument",