Closed okorshenko closed 7 years ago
@dmanners if you would like to work on this, I can assign this to you.
Updated List of the components
# | Component Name (total usages count) |
Module Name | Usages Count |
---|---|---|---|
1 | Zend_Json (total: 15) | Framework\DataObject.php | 1 |
Framework\Controller | 1 | ||
Framework\Json | 2 | ||
Framework\Module | 3 | ||
Framework\Webapi | 3 | ||
Framework\Data | 4 | ||
Magento\Widget | 1 |
Updated List of the components as of July
# | Component Name (total usages count) |
Module Name | Usages Count |
---|---|---|---|
1 | Zend_Json (total: 13) | Magento\Customer | 1 |
Framework\DataObject.php | 1 | ||
Framework\Controller | 1 | ||
Framework\Json | 2 | ||
Framework\Module | 5 | ||
Framework\Webapi | 3 |
Just noticed I forgot to include the setup module in the list of places to change that has 5 occurrences.
Current status
lib/internal/Magento/Framework/Controller/Result/Json.php: $this->json = \Zend_Json::encode($data, $cycleCheck, $options);
lib/internal/Magento/Framework/Module/Setup/Migration.php: protected function _jsonDecode($encodedValue, $objectDecodeType = \Zend_Json::TYPE_ARRAY)
lib/internal/Magento/Framework/Module/Setup/Migration.php: return \Zend_Json::decode($encodedValue, $objectDecodeType);
lib/internal/Magento/Framework/Module/PackageInfo.php: * @throws \Zend_Json_Exception
lib/internal/Magento/Framework/Module/PackageInfo.php: $packageData = \Zend_Json::decode($jsonData[$key]);
lib/internal/Magento/Framework/Module/PackageInfo.php: } catch (\Zend_Json_Exception $e) {
lib/internal/Magento/Framework/Module/PackageInfo.php: throw new \Zend_Json_Exception(
lib/internal/Magento/Framework/Json/Decoder.php: return \Zend_Json::decode($data);
lib/internal/Magento/Framework/Json/Encoder.php: return \Zend_Json::encode($data);
lib/internal/Magento/Framework/Webapi/Rest/Request/Deserializer/Json.php: } catch (\Zend_Json_Exception $e) {
lib/internal/Magento/Framework/Webapi/Test/Unit/Rest/Request/Deserializer/JsonTest.php: ->will($this->throwException(new \Zend_Json_Exception));
lib/internal/Magento/Framework/Webapi/Test/Unit/Rest/Request/Deserializer/JsonTest.php: new \Zend_Json_Exception('Decoding error:' . PHP_EOL . 'Decoding failed: Syntax error')
setup/src/Magento/Setup/Test/Unit/Controller/MarketplaceTest.php: ->will($this->returnValue(\Zend_Json::encode(['success' => true])));
setup/src/Magento/Setup/Test/Unit/Controller/MarketplaceTest.php: ->will($this->returnValue(\Zend_Json::encode(['success' => true])));
setup/src/Magento/Setup/Model/PackagesAuth.php: return \Zend_Json::encode(['success' => true]);
setup/src/Magento/Setup/Model/PackagesAuth.php: return \Zend_Json::encode(['success' => false, 'message' => 'Bad credentials']);
setup/src/Magento/Setup/Model/PackagesAuth.php: return \Zend_Json::encode(['success' => false, 'message' => $e->getMessage()]);
Updated List of the components as of 28th of July
# | Component Name (total usages count) |
Module Name | Usages Count |
---|---|---|---|
1 | Zend_Json (total: 2) | Framework\Json | 2 |
That makes me feel good!
Internal ticket to track issue progress: MAGETWO-69369
Small step backwards but no problem 💃 we go again!
# | Component Name (total usages count) |
Module Name | Usages Count |
---|---|---|---|
1 | Zend_Json (total: 3) | Framework\Json | 2 |
2 | Framework\Controller | 1 |
Hi @dmanners Thank you for continuous contribution to this component. You almost resolved all issues in that area! 👍 👍 👍 We are closing the issue, but feel free to proceed with Zend_Json refactoring
Hi @okorshenko. Thank you for your report. The issue has been fixed in magento/magento2#13137 by @dmanners in 2.3-develop branch Related commit(s):
The fix will be available with the upcoming patch release.
Hi @okorshenko. Thank you for your report. The issue has been fixed in magento/magento2#14438 by @dmanners in 2.3-develop branch Related commit(s):
The fix will be available with the upcoming 2.3.0 release.
Description Upgrade components from ZF1 to ZF2
As a long term goal, we would like to eliminate knowledge about 3rd party libraries from Magento code base. Magento code still can use 3rd party libraries, but they must be wrapped by Magento interfaces and classes (adapters) so that 3rd party libraries can be easily substituted by newest versions or alternative implementations.
Acceptance Criteria
List of the components
(total usages count)