- added release number to all existing @deprecated tag in php classes, methods and properties (app/code/Magento, lib/internal/Magento, setup/src/Magento/Setup)
- added tag @since to all existing php classes, methods and properties (app/code/Magento, lib/internal/Magento, setup/src/Magento/Setup)
- Removed TODO from Handler since we are not using the integration id here anymore
- Removed TODO from Controller\Soap since there is no requirement to generate list of available URLs
- Added caching for SOAP services config
* Service Contracts:
* Implemented Bundle Product API
* Replaced Address Converted model with Address Mapper
* Refactored Customer web service routes and API functional tests to use latest service layer
* Implemented Configurable Product Module API
* Removed obsolete namespace Magento\Catalog\Service
* Price calculation logic:
* Removed complex JS price calculation on the frontend
* Fixed bugs:
* Fixed an issue where the path parameter routes were incorrectly matched in the REST web services
* Fixed an issue where $0.00 was shown as a configurable product price if variation did not add anything to product price
* Fixed an issue where the fatal error occurred when a user with read-only permissions for cart price rules attempted to open an existing cart price rule
* Fixed an issue where the 'An order with subscription items was registered.' message was displayed in an order if it has been placed using an online payment method
* Fixed an issue where the 'Warning: Division by zero' message was displayed when an invoice was opened for an order placed using an online payment method
* Fixed an issue where creating simple product through using API service led to an exception on the frontend
* Fixed an issue where it was impossible to perform advanced search for price range of 0 to 0
* Fixed an issue with the broken Search Terms Report page
* Fixed an issue with the broken Search Terms page
* Fixed an issue with a notice appearing in the Advanced Search when searching by a custom multiselect attribute
* Fixed an issue where Search did not work if word-request contained a hyphen
* Fixed an issue where searching by a title of bundle option returned empty result
* Fixed an issue where Maximum Query Length was not applied to Quick Search
* Fixed an issue where searching by product name did not return suggested search terms
* Fixed an issue with an incorrect dependency of the MySQL search adapter on CatalogSearch
* Fixed an issue with incorrect dependency of the Search library on the MySQL adapter
* Fixed an issue where Advanced Search always returned empty result for multiselect product attributes
* Fixed an issue where an admin user was redirected to the 404 page after deleting search terms through using mass action
* Fixed an issue where a product page was frozen when a configurable attribute was added to a current product template during saving a configurable product
* Fixed an issue where it was impossible to place an order with downloadable product that contained a link
* Fixed an issue where only parent category was displayed in layered navigation on the Search results page
* Fixed an issue where the Price attribute was incorrectly displayed in layered navigation if searching by this attribute
* Fixed an issue where importing configurable products set them out of stock
* Fixed an issue where drop-down lists were closing by themselves in Internet Explorer 9
* Fixed an issue where it was impossible to place an order using PayPal Payment Pro and 3D Secure
* Fixed an issue where bundle items were always marked as 'User Defined'
* Fixed an issue where view management selectors did not work in categories on the frontend
* Fixed an issue where the 'Base' image label was not applied to a first product image uploaded
* Fixed an issue where editing a product led to data loss and broken media links
* Fixed an issue where attributes could not be deleted from the Google Content Attributes page
* Fixed an issue where a product was unassigned from a category after it was edited by an admin user with read/edit permissions for product price only
* Fixed an issue where the fatal error occurred on the RSS page for new products and special products
* Fixed an issue where the fatal error occurred when adding a new Customer Address Attribute
* Fixed an issue where it was impossible to install Magento when specific time zones were set
* Fixed an issue where compiler.php failed not handle inheritance from virtual classes
* Fixed an issue where some locales were absent in the 'Interface Locales' drop-down in the backend
* Fixed an issue where the Offloader header did not work in the backend
* Fixed an issue where autoloader failed to load custom classes
* Fixed an issue where products did not disappear from the shopping cart after checkout
* Fixed an issue where changing quantity of a product in the shopping cart removed product from cart
* Fixed an issue where the Persistent Shopping Cart functionality was not available if Luma theme was applied
* Fixed an issue where the category tree was broken if editing a category name in specific cases
* Fixed an issue where 'Price as Configured' value was not updated for a bundle product after changing the value of the 'Price View' field
* Fixed an issue where the final product price was displayed incorrectly in a category and a product page if price display setting was set to exclude FPT, FPT description, and final price
* Fixed an issue where product price range was displayed incorrectly for bundle products
* Fixed an issue where the HTTP 500 error occurred on the Share Wishlist page
* Fixed an issue with the incorrect order of dispatching event adminhtml_cms_page_edit_tab_content_prepare_form and setting form values in the backend
* Fixed an issue where breadcrumbs were not displaying the fullpath
* Fixed an issue where only two of four widgets added to a CMS page were displayed
* Fixed an issue where it was impossible to save locale for an admin account after changing it
* Fixed an issue where icons were not loaded on a non-secure pages if secure URLs were used in the frontend
* Fixed an issue where overriding layouts did not work after renaming a theme
* Fixed an issue where the Permissions tree was not displayed when activating an integration
* Fixed an issue with duplicated and corrupted page layouts
* Fixed an issue where the 'Number of Products per Page' option did not work for widgets of the 'List' type
* Fixed an issue where HTTP and HTTPS pages shared cache content
* Fixed an issue where the 'Use Billing Address' checkbox did not affect did not affect the checkout experience
* Fixed an issue where it was impossible to create shipping labels
* Fixed an issue where the 'Payment Method' section was empty in billing agreements in the frontend if a billing agreement was created during the checkout
* Fixed an issue with Catalog Rule Product indexer invalidating the price index
* Fixed an issue where one of the price range fields was corrupted in the Advanced Search page
* Fixed an issue where a base product image that was smaller than the gallery image container was scaled up to fill the container on the View Product page in the frontend
* Fixed the layout issue on the Contact Us page
* Fixed an issue where search queries were not submitted when a search suggestion was clicked
* Fixed an issue where page footer overlapped products in categories in Internet Explorer 11
* Fixed UI issues in the Luma theme
* Fixed an issue when the fatal error occurred if a category was moved to another category that already contained category with the same URL key
* Fixed an issue where incorrect products were displayed on the Reviews tab for a configurable product
* Fixed an issue where fatal errors occurred when calling id() on a null store object
* Fixed an issue where navigation through the tabs on the Dashboard did not work properly
* Fixed an issue where prices for bundle products were incorrect on the category view and search view pages
* Fixed an issue where custom Customer attributes and Customer Address attributes were not displayed on the 'Create/Edit Customer' page in thebackend
* Fixed an issue where there were no validation for whether an option of a bundle product was created through the API
* Fixed an issue where bundle products created through using the API were not appearing in the frontend
* Fixed an issue where entity ID was missing for product thumbnail labels values
* Fixed an issue with the bad return from the Indexer launch() method
* Fixed an issue where an attempt to select product SKU in a shopping cart price rule redirected to the Dashboard
* Fixed an issue where the Search Terms Reports and Search Terms list did not work
* Fixed an issue where an error occurred when configuring Google API
* Fixed an issue where it was impossible to add a configurable product variation to an order in the backend
* Fixed an issue where there were no confirmation on deleting CMS pages/Blocks
* Fixed an issue with incorrect behavior of validation in the Quick Search field in the frontend
* Fixed an issue where it was impossible to select a row in the grid of CMS pages and CMS Blocks
* Fixed an issue where validation for minimum and maximum field value length was not performed for Customer attributes and Customer Address attributes when creating or editing a customer in the backend
* Fixed an issue with broken 'validate-digits-range' validation
* Fixed an issue where it was impossible to delete product templates
* Fixed an issue where products were not shown on a second website
* Fixed an issue where customer group was empty when adding group price during creating a product
* Fixed an issue with incorrect interval in LN for small values
* Fixed an issue where product attribute of the Price type was not displayed in layered navigation
* Fixed an issue with testCreateCustomer failing in parallel run
* Fixed an issue with the value of the 'Bill to Name' field always displayed instead of the value of the 'Ship to Name' in all order-related grids
* Fixed an issue where an error occurred when submitting an order int he backend when shipping and billing addresses were different
* Fixed an issue where the navigation menu was absent on product pages with Varnish used
* Fixed an issue where the underscore character was incorrectly handled when used with digits
* Fixed an issue where it was impossible to localize comments in the 'Max Emails Allowed to be Sent' and 'Email Text Length Limit' fields in the Wishlist configuration
* Fixed an issue where there were a logical error in joining the same table two times with different aliases
* Sample data:
* Created Luma Sample Data script
* GitHub requests:
* [#775](https://github.com/magento/magento2/issues/775) -- Can't save changes in configuration in Configuration->Advanced->System
* [#716](https://github.com/magento/magento2/issues/716) -- Wrong mimetype returned by getMimeType from Magento library
* [#681](https://github.com/magento/magento2/issues/681) -- Magento\Framework\Xml\Parser class issues
* [#758](https://github.com/magento/magento2/issues/758) -- Coding standards: arrays
* [#169](https://github.com/magento/magento2/issues/169) -- DDL cache should be tagged
* [#738](https://github.com/magento/magento2/issues/738) -- pub/setup missing in 0.1.0-alpha103
* Various improvements:
* Removed obsolete code from the Tax and Weee modules
* Merged the AdminNotification, Integration, Authorization, and WebAPI SQL scripts
* Removed the Customer Converter model and Address Converter model
* Created AJAX Authentication Endpoint for the frontend
* Removed Customer\Service\V1 service implementation in favor of the Customer\Api service implementation
* Removed the Recurring Billing functionality
* Added the 'suggest' node to composer.json files to mark modules that are optional
* Consolidated SQL install and data scripts for the rest of the modules
* Added static test verifying that README.md file exist in modules
* Removed obsolete code
* Removed license notices in files
* Eliminated invalid dependencies of the CatalogRule module
* Removed @deprecated methods from the code base
* Added test enforcing @covers annotation refers to only existing classes and methods
* Added the PHP Coding Standards Fixer configuration file to the project root
* Added Git hook to automatically correct coding style before actual push
* Added the ability to enforce no error log messages during tests execution
* Removed API interfaces from the Cms module
* Updated jQuery used to version 1.11
* Added wildcard prefix for all search words in search requests for Match query
* Renamed frontend properties for some of the product attributes
* Fixed the Magento\Centinel\CreateOrderTest integration test
* Improved invoking for functional tests
* Refactored StoreManagerInterface to avoid violating the modularity principle
* Improved the logic in the isSubtotal method in Magento\Reports\Model\Resource\Report\Collection\AbstractCollection
* Framework improvements:
* Added a copy of dependencies for Magento components to the root composer.json file
* Setup Tool improvements:
* Moved dependencies from setup/composer.json to the root composer.json and removed the former one
* Removed dependencies on unnecessary ZF2 libraries
* Removed dependency on exec() calls
* Removed tool dev/shell/run_data_fixtures.php in favor of Setup Toolphp setup/index.php install-data
* Removed tool dev/shell/user_config_data.php in favor of Setup Tool php setup/index.php install-user-configuration
* Added validation of the required information on each installation step in the Setup tool:
* Web UI:
* Removed the 'Test Connection' button in web setup UI; checking connection to the database server is now performed when the 'Next' button is clicked
* Added validation of URL format
* Added automatic adding of the trailing slash to the base URL field if a user did not provide one
* Added validation of admin user password
* Added validation of HTTPS configuration
* CLI:
* Added validation of CLI to display missing/extra parameters and missing/unnecessary parameter values
* Various improvements:
* Merged SQL and Data Upgrades for the Tax, Weee, Customer, CustomerImportExport, ProductAlert, Sendfriend and Wishlist modules
* Added 'Interface' suffix to all interface names
* Stabilized functional tests for the following modules:
* CheckoutAgreements
* Customer
* GiftMessage
* Integration
* Msrp
* Reports
* Added the following functional tests:
* Create product attribute from product page
* Fixed bugs:
* Fixed an issue where bundle product price doubled during backend order creation
* Fixed an issue where an error was thrown during Tax Rate creation, deletion and update
* Fixed an issue where FPT was doubled when creating a refund if two FPTs were applied, and as a result the refund could not be created
* Fixed an issue where the subtotal including tax field was not refreshed after removing downloadable product from cart
* Fixed an issue where a downloadable link tax was not added to a product price on the product page if price was displayed including tax
* Fixed an issue with incorrect product prices for bundle products in shopping cart
* Fixed an issue where bundle product price was calculated incorrectly on the product page
* Fixed an issue where configurable product options were not updated after changing currency
* Fixed an issue where a standalone simple product and the same product as part of the grouped, were not recognized as one product in the shopping cart.
* Fixed an issue where the incorrect tier pricing information was displayed in shopping cart
* Fixed an issue where no notice was displayed in the shopping cart for products with MAP enabled
* Fixed an issue where it was impossible to place an order from customer page in Admin
* Fixed an issue where it was impossible to add address for a customer in Admin
* Fixed an issue with broken redirect URL after deleting a product from the My Wishlist widget
* Fixed an issue where it was impossible to assign an admin user to a user role
* Service Contracts:
* Implemented Service Contracts for the CatalogInventory Module
* Framework Improvements:
* Added the ability to configure the list of loaded modules before installation
* Added the ability to use the Composer autoloader instead of the Magento custom autoloaders for tests
* Introduced a repository for storing a quote entity
* Performance improvements:
* Split Magento\Customer\Helper\Data
* Processed GitHub requests:
* [#731](https://github.com/magento/magento2/issues/731) -- Filter grid is absent on CMS Pages in Backend
* Framework improvements:
* Updated the Service infrastructure to support Module Service Contract based approach
* Added new base classes in the Service infrastructure lib to support extensible Data Interfaces
* Updated the WebApi framework serialization (for SOAP and REST) to process requests based on Data Interfaces and removed dependency on Data Objects
* Added base class for Data Interface based builders and implemented a code generator for the same
* File system improvements:
* List of available application directories is complete now and defined in the \Magento\Framework\Filesystem\DirectoryList and the \Magento\Framework\App\Filesystem\DirectoryList classes. There is no ability to extend the list in configuration
* Directory paths can be changed using environment/bootstrap
* Information about necessary permissions (writable, readable) belongs to Setup Application, Magento Application does not possess this info and does not verify. Setup Application performs permissions validation
* Unnecessary writable permissions are validated by Setup Application after installation and corresponding message is displayed to the user
* Functional tests:
* Configure a product in a customer wishlist in the Admin panel
* Configure a product in a customer wishlist on the storefront
* Create terms and conditions
* Manage products stock
* Move a product from a shopping card to a wishlist
* Un-assign custom order status
* Update terms and conditions
* Update URL rewrites after moving/deleting a category
* Update URL rewrites after changing category assignment for a product
* View customer wishlist in the Admin panel
* Tax calculation test
* Cross border trade setting
* Documentation:
* Code documentation:
* Added codeblock for the Checkout module
* Added README files with module description for the following modules:
* Backend
* Backup
* Cron
* Log
* PageCache
* Store
* Checkout
* GiftMessage
* Eav
* Multishipping
* CheckoutAgreement
* AdminNotification
* Authz
* Connect
* CurrencySymbol
* Directory
* Email
* Integration
* Service
* User
* Webapi
* Sales
* Tax
* Weee
* Added README files with component description for the following framework components:
* Magento\Framework\App\Cache
* Magento\Framework\Archive
* Magento\Framework\Backup
* Magento\Framework\Convert
* Magento\Framework\Encryption
* Magento\Framework\File
* Magento\Framework\Filesystem
* Magento\Framework\Flag
* Magento\Framework\Image
* Magento\Framework\Math
* Magento\Framework\Option
* Magento\Framework\Profiler
* Magento\Framework\Shell
* Magento\Framework\Stdlib
* Magento\Framework\Validator
* Performance improvements:
* Reduced checkout response time by loading only current checkout step
* Reduced the number of AJAX calls on checkout steps
* Improved performance on the billing and shipping checkout steps
* Improved performance in certain areas by loading translation data from cache
* Removed transactions from visitors logging
* Fixed classmap generator to consider namespaces
* Eliminated a redundant query for category tree rendering
* Optimized StoreManager and Storage performance
* Optimized Object Manager
* Fixed bugs:
* Fixed an issue where partial invoices and partial credit memos contained incorrect customer's tax details
* Fixed an issue where a PHP fatal error occurred when logging in during checkout to order a product with FPT
* Fixed an issue where FPT was not calculated in reorders
* Fixed an issue where there was a duplicated Administrator role after installation
* Fixed an issue where the Try Again button was disabled after entering the incorrect data during installation
* Fixed an issue where the "Application is not installed yet" error was thrown instead of redirecting to the Installation Wizard in the developer mode
* Fixed an issue where an error was thrown during installation with db_prefix option
* Fixed an issue where the SQL query was not optimized for product search ('catalogsearch_query')
* Fixed an issue where the wrong message was displayed after changing customer password on the storefront
* Fixed an issue where Newsletter preview led to an empty page
* Fixed an issue where a new search term was not displayed in suggested results
* Fixed an issue where no results were found for the Products Viewed report
* Fixed an issue where no results were found for Coupons reports
* Fixed an issue with incremental Qty setting
* Fixed an issue with allowing importing of negative weight values
* Fixed an issue with Inventory - Only X left Treshold being not dependent on Qty for Item's Status to Become Out of Stock
* Fixed an issue where the "Catalog Search Index index was rebuilt." message was displayed when reindexing the Catalog Search index
* Search module:
* Integrated the Search library to the advanced search functionality
* Substituted the old logic of the EAV attributes search by Advanced Search
* Introduced mappers for MySQL adapter
* Restored the currency calculation functionality
* Fixed sorting by relevance in quick search and advanced search
* Integrated the Search library into the search widget functionality
* Removed the dependency on the catalogsearch_result table
* Substituted the old logic of EAV attributes by Quick search APIs
* Search modularity:
* Removed circular dependency between Catalog and Catalog Search
* Removed exceeded dependencies of the Search module
* Fixed bugs:
* Fixed an issue where an invalidly filled option did not become in focus after saving attempt on the Create New Order page in the backend
* Fixed an issue with the default configuration not being applied properly in the CAPTCHA configuration section
* Fixed an issue with optional State/Province fields on the Create New Order page being marked as required
* Fixed an issue with incorrect Customer model usage on session in community modules
* Fixed an issue where cache was not invalidated after applying catalog price rule
* Fixed an issue where an admin with custom permissions could not create Shopping Cart Price Rule/Catalog Price Rule
* Fixed an issue with REST request and response format being inconsistent
* Fixed an issue where there was an error on a bundle product page if bundle items contained an out of stock product
* Fixed a JS issue which appeared when adding associated products for a grouped product
* Fixed an issue where layered navigation was absent on the Advanced Search results page
* Fixed an issue where the leading "0" in numbers were truncated when exporting using Excel XML
* Fixed the price type attribute filter in Layered Navigation
* Fixed an issue with a fatal error in \Magento\Framework\ArchiveTest when bz2 extension was not installed
* Fixed an issue where an admin could search product by attributes set on the Store View level (except default store view)
* Fixed an issue where extra spaces in search values were not ignored during search and thus wrong search results were given
* GitHub requests:
* [#542] Fix ImportExport bug which occurs while importing multiple rows per entity
* [#544] Performance tests not working
* Framework improvements:
* Covered the following Magento application components with unit tests:
* `Customer/Model/Address.php`
* `Customer/Model/Address/AbstractAddress.php `
* `Customer/Model/Address/Converter.php`
* `Customer/Model/Customer.php`
* `Customer/Model/Customer/Attribute/Backend/Billing.php`
* `Customer/Model/Customer/Attribute/Backend/Shipping.php`
* `Customer/Model/Customer/Attribute/Backend/Store.php `
* `Customer/Model/Customer/Attribute/Backend/Website.php `
* `Customer/Model/Customer/Attribute/Backend/PasswordTest.php`
* `Customer/Helper/Address.php`
* `Customer/Helper/View.php`
* `Customer/Service/V1/CustomerAccountService.php`
* Covered Magento lib with unit tests:
* `lib/internal/Magento/Framework/Filter/*`
* `lib/internal/Magento/Framework/Model/Resource/Db/AbstractDb.php`
* `lib/internal/Magento/Framework/Model/Resource/Db/Collection/AbstractCollection.php`
* `lib/internal/Magento/Framework/File/Uploader.php`
* `lib/internal/Magento/Framework/File/Csv.php`
* `lib/internal/Magento/Framework/Less/File/Collector/Aggregated.php`
* `lib/internal/Magento/Framework/Less/File/Collector/Library.php`
* `lib/internal/Magento/Framework/Locale/Config.php`
* `lib/internal/Magento/Framework/Locale/Currency.php`
* `lib/internal/Magento/Framework/App/Config/Element.php`
* `lib/internal/Magento/Framework/App/Config/Value.php`
* `lib/internal/Magento/Framework/App/DefaultPath/DefaultPath.php`
* `lib/internal/Magento/Framework/App/EntryPoint/EntryPoint.php`
* `lib/internal/Magento/Framework/App/Helper/AbstractHelper.php`
* `lib/internal/Magento/Framework/App/Resource/ConnectionFactory.php`
* `lib/internal/Magento/Framework/App/Route/Config.php`
* Implemented the ability for a mobile client to get a partial response
* Added authentication support for mobile
* Refactored the Oauth lib exception not to reference module classes
* Moved the authorization services according to the new directory format: was \Magento\Authz\Service\AuthorizationV1Interface, became \Magento\Authz\Service\V1\AuthorizationInterface
* Moved the integration services according to the new directory format:
* Was \Magento\Integration\Service\IntegrationV1, became \Magento\Integration\Service\V1\Integration
* Was \Magento\Integration\Service\OauthV1, became \Magento\Integration\Service\V1\Oauth
* Improved security of the integration registration
* Introduced language packages with ability to inherit dictionaries
* Improved modularity of ImportExport
* Created Service API for Magento_Catalog module:
* Implemented Product Attribute Media API
* Implemented Product Group Price API
* Implemented Product Attribute Write API
* Implemented Product Attribute Options Read and Write API
* Created Service for the Magento Tax module:
* Implemented Tax Rule Service
* Implemented Tax Rate Service
* Implemented Tax Calculation Data Objects
* Implemented Tax Calculation Builders
* Implemented Tax Calculation Service
* Covered the part of the Catalog Module with unit tests
* Added PayPall Bill Me Later button
* Streamlined checkout experience
* Improved order review page for PayPal Express Checkout
* Modularity improvements:
* Introduced a new CheckoutAgreements module. Moved all "Terms and Conditions" related logic from Magento_Checkout to Magento_CheckoutAgreements
* Moved library related logic from `Magento\Core\Model\App`
* Fixed bugs:
* Fixed an issue where Currency Options were not displayed on the Currency Setup tab
* Fixed an issue where a fatal error appeared during customer registration if mail server was off
* Fixed an issue where customer with middle name did not appear in the Customers grid in the backend
* Fixed an issue where related products were not displayed on the product page in the backend
* Fixed the broken View Files Population tool
* Fixed an issue where Magento broke down if the Main Web Site was deleted
* Fixed potential security issue with orders protect_code
* Fixed an issue where an error appeared when placing an order if cache was turned on
* Fixed an issue where a warning appeared when running system_config.php tool
* Fixed an issue with incorrect reset password link for users on custom websites
* Fixed an issue with invalid error message displayed when trying to save a customer group with existing group name
* Fixed an issue with menu layout non-responsive behavior in the Blank theme
* Framework Improvements:
* Covered Magento library components with unit tests
* `Magento\Framework\Error\*`
* `Magento\Framework\Event\Observer\*`
* `Magento\Framework\Filesystem\*`
* `Magento\Framework\Filesystem\File\*`
* Updated the obsolete_classes list with changes, introduced by Offline Payment Methods Module implementation
* Moved `lib/Magento/*` to `lib/Magento/Framework/*`
* Covered Magento application components with unit tests:
* `Store\Model\*`
* `Sales/Helper/Guest.php`
* `Sales/Helper/Admin.php`
* `Sales/Model/Observer.php`
* `Sales/Model/Payment/Method/Converter.php`
* `Sales/Model/Email/Template.php`
* `Sales/Model/Observer/Backend/CustomerQuote.php`
* `Sales/Model/Status/ListStatus.php`
* Refactored the following modules to use Customer Service:
* Magento_Persistent
* Magento_GoogleShopping
* Magento_ProductAlert
* Magento_SendFriend
* Moved customer-specific logic from the Magento_ImportExport module to the Customer module
* Refactored the rest of Customer Group usages
* Refactored customerAccountService::createAccount to not expose the hashed password input from webapi
* Implemented a delimiter usage for Cache key in Customer Registry
* Customer Service usage:
* Updated exception hierarchy with a new localized exception class
* Updated CRUD APIs to support email and base URL instead of IDs
* JavaScript improvements:
* Implemented the validation widget
* Implemented the tooltip widget
* Implemented the popup/modal window widget
* Implemented the calendar widget
* Implemented the suggest widget
* Added configuration for Travis CI
* Pricing Improvements:
* Added price calculation component to library
* Eliminated price calculation from blocks and templates and implemented new calculation models for the following product types:
* Bundle
* Simple/Virtual
* Grouped
* Downloadable
* Resolved price calculation dependencies on the Tax and Weee modules
* Themes update:
* Updated the look&feel of the Admin theme
* Fixed bugs:
* Fixed an issue with the inability to save product with grouped price when Price Scope = Website
* Fixed an issue with fatal error on attempt to edit product from wishlist in stores with multiple store views
* Fixed an issue where it was impossible to add to a wishlist a product with custom quantity
* Fixed an issue where JS validation was skipped during CMS page creation
* Fixed an issue with the New Customer Address Attribute page and the New Customer Attribute page having the same title
* Fixed an issue where a form was submitted two times during CMS page creation
* Fixed an issue where a fatal error appeared when trying to edit product in a wishlist in stores with multiple store views
* Fixed an issue with inability to change page layout for categories
* Fixed an issue where the Quantity drop-down list box was disabled for bundle products
* Fixed an issue where inactive Related Products rules were applied
* Fixed a clickjacking vulnerability
* Fixed bugs and added improvements in the Blank theme
* Fixed an issue where the Flat Rate shipping method was not enabled by default
* Fixed an issue with incorrect order of products on the Add Product split button
* Fixed an issue with saving the tier price attribute value
* Fixed an issue with creating integration from config file
* Fixed an issue where the Cookie Restriction Mode = Yes configuration was not applied
* Fixed an issue where it was impossible to perform ajax actions from backend grids in Internet Explorer
* Fixed the improper usage of DIRECTORY_SEPARATOR
* Fixed an issue where it was impossible to add new address on customer's account page if default address had been already set
* Fixed an issue where setting memory_limit to -1 caused installation failure
* Fixed an issue where the configuration of Admin Session Lifetime was not applied correctly
* Fixed an issue where Scheduled Export was not performed if exporting to remote FTP server
* Fixed the wrong default value for PHP memory_limit
* Fixed an issue where frontend messages were not displayed when FPC was turned off
* Fixed the position of page action buttons on the Categories page in the backend
* Improved backend grids UI
* Framework Improvements:
* Simplified Search related Data Objects
* Moved lib/Magento/* to lib/Magento/Framework/*
* Moved lib/Magento/App to lib/Magento/Framework/App
* Refactored the following modules to use Customer service:
* PayPalRecurringPayment
* RecurringPayment
* Multishipping
* Paypal
* Customer Service usage:
* Implemented Service Context Provider
* Restructured webapi.xml
* Renamed createAccount to createCustomer in CustomerAccountService
* Implemented Caching strategy for the Customer service
* GitHub requests:
* [#488] (https://github.com/magento/magento2/issues/488) -- Converted several grids from Magento\Sales module to new layout XML config format
* Fixed bugs:
* Fixed an issue where the schedule of recurring payments was not displayed in the shopping cart
* Fixed an issue with displaying tax class names in the Customer Groups grid
* Fixed an issue with testing Solr connection
* Fixed an issue with using custom module front name
* Fixed an issue with USPS and DHL usage in the production mode
* Modularity improvements:
* Consolidated all logic related to Layered Navigation in one separate module
* Framework Improvements:
* Covered Magento library components with unit tests:
* Magento/Interception
* Magento/ObjectManager
* Magento/Message
* Magento/Module
* Magento/Mail
* Magento/Object
* Magento/Math
* Updated XML files to include a reference to the schema file in a form of a relative path
* Updated code to be PSR-2 compliant
* Modularity improvements:
* Consolidated all PayPal-related logic in a separate module
* Resolved dependencies on the Magento_GroupedProduct module
* Added the ability to enable/disable/remove the Magento_GroupedProduct module without impact on the system
* Implemented the Oyejorge Less.php adapter
* Implemented the Less files importing mechanism
* Added the ability to configure certain cache frontend, and associate it to multiple cache types, thus avoiding the duplication of cache configuration
* Implemented the more strict format of array definition in the DI configuration:
* Covered array definitions with XSD, and made the whole DI configuration validated with XSD
* Added the ability to define arrays with keys containing invalid XML characters, that was impossible when keys were represented by the node names
* Fixed bugs:
* Fixed an issue with missed image for a cron job for the abandoned cart emails
* Restored the ability to configure cache storage in `local.xml`
* Fixed an issue with the css\js merging functionality
* Fixed an issue with customer selection on the order creation page
* AppInterface renamed to LauncherInterface
* Removed the reinit logic from the Config object
* Framework part of the "URL" functionality removed from modules
* Framework part of the "Config" functionality removed from modules
* Removed the deprecated EAV structure creation method from the EAV setup model
* Updated various PHPDoc with parameter and return types
* Indexer implementation:
* Implemented a new indexer structure
* Refactored Web API Framework to support the Data Object based service interfaces
* Refactored controllers, blocks and templates of the Sales module to use Customer service
* GitHub requests:
* [#275] (https://github.com/magento/magento2/issues/275) -- XSS Vulnerability in app/code/core/Mage/CatalogSearch/Block/Result.php
* Removed the outdated Customer service
* Modularity improvements:
* Moved all Grouped Product functionality to newly created module GroupedProduct
* Moved Multishipping functionality to newly created module Multishipping
* Extracted Product duplication behavior from Product model to Product\Copier model
* Replaced event "catalog_model_product_duplicate" with composite Product\Copier model
* Replaced event "catalog_product_prepare_save" with controller product initialization helper that can be customozed via plugins
* Consolidated Authorize.Net functionality in single module Authorizenet
* Eliminated dependency of Sales module on Shipping and Usa modules
* Eliminated dependency of Shipping module on Customer module
* Improved accuracy and quality of Module Dependency Test
* Fixed bugs:
* Fixed an issue when order was sent to PayPal in USD regardless of currency used during order creation
* Fixed an issue with 404 error when clicking any button on a Recurring Billing Profile in the backend
* Fixed an issue with synchronization with Google Shopping on product update caused by missed service property
* Fixed ability to submit order in the backend when Authorize.Net Direct Post is used
* Fixed an issue with notice that _attribute_set column is missing during Import/Export
* Removed the deprecated service-calls and data source functionality
* Request\Response workflow improvements:
* Added Console\Response
* Changed behavior of AppInterface to return ResponseInterface instead of sending it
* Fixed bugs:
* Fixed invalid year in exception log errors
* Fixed the double-serialization in saving data for shipments
* Fixed an issue with adding a gift wrapping for multiple items
* Fixed shipping labels generation for DHL
* Fixed an issue with lost product price and weight during import
* Fixed a fatal error when a file reference is added to the HTML head
* Fixed an issue with printing orders containing downloadable product(s)
* Fixed an issue with the 'Same as shipping' check box not being selected on the Review Order page for PayPal Express checkout
* Fixed an issue with Email Templates preview showing a blank page
* Fixed an issue with a refund creation from the PayPal side
* Removed the occurrences of the non-existing Mage_Catalog_Model_Resource_Convert resource model
* Fixed an issue with a coupon usage after applying it with multiple addresses
* Fixed the Abandoned Cart emails sending
* Fixed an issue where users with "Reorder" permission could not perform reorder
* Fixed an issue with adding items from wishlist to the Shopping Cart with quantity increments enabled
* Fixed an issue with the catalog_url indexer incorrect rewrites history for categories
* Fixed an issue in saving an integration with a duplicate name
* Fixed an issue when a customer could see someone's else reviews on the private Account Dashboard
* Fixed an issue when a "New Theme" page was displayed as broken when trying to create a theme with incorrect "Version" value
* Fixed an issue in saving an integration with XSS injection in the required fields
* Fixed an issue with the Mini Shopping Cart when it contained virtual product
* Fixed an issue in disabling the Shopping Cart sidebar
* Fixed an issue when the "Adminhtml" cookie was not set when a user logged in to the backend
* Fixed an issue when the "Persistent_shopping_cart" cookie was not set after customer's login
* Fixed inability to publish products to Google Shopping
* Fixed inability to download or revert the backup
* Fixed inability to create a customer account when placing an order with a downloadable product
* Various improvements:
* Disabled PHP errors, notices and warnings output in the production mode, to prevent exposing sensitive information
* Fixed bugs:
* Fixed [MAP]: "Click for price" link is broken on the category page
* Fixed tax rule search on the grid
* Fixed redirect on dashboard if "Search", "Reset", "Export" buttons are clicked on several pages
* Fixed switching user to alternate store-view when clicking on the Category (with Add Store Code to Urls="Yes" in the config)
* Fixed printing Order/Shipping/Credit Memo from backend
* Fixed 404 Error on attempt to print Shipping Label
* Fixed duplication of JavaScript Resources in head on frontend
* Fixed inconsistency with disabled states on Configurable product page in the Plushe theme
* Fixed 3D Secure Information absence on Admin Order Info page
* Fixed possibility to download or revert Backup
* Fixed session fixation in user registration during checkout
* Fixed fatal error during login to backend
* Fixed inline translations in the Adminhtml area
* Fixed partial refunds/invoices in Payflow Pro
* Fixed the issue with ignoring area in design emulation
* Fixed order placing with virtual product using Express Checkout
* Fixed the error during order placement with Recurring profile payment
* Fixed wrong redirect after customer registration during multishipping checkout
* Fixed inability to crate shipping labels
* Fixed inability to switch language, if the default language is English
* Fixed an issue with incorrect XML appearing in cache after some actions on the frontend
* Fixed product export
* Fixed inability to configure memcache as session save handler
* GitHub requests:
* [#406](https://github.com/magento/magento2/pull/406) -- Remove cast to (int) for the varch increment_id
* [#425](https://github.com/magento/magento2/issues/425) -- Installation of dev53 fails
* [#324](https://github.com/magento/magento2/pull/324) -- ImportExport: Easier debugging
* Modularity improvements:
* Removed \Magento\App\Helper\HelperFactory
* Removed the "helper" method from the abstract block interface
* Layout page type config moved to library
* Design loader moved to library
* Theme label moved to library
* Remaining part from Adminhtml moved to the appropriate modules. Adminhtml module has been eliminated
* Core Session and Cookie models decomposed and moved to library
* \Magento\Stdlib\Cookie library created
* Session Manager and Session Config interfaces provided
* Session save handler interface created
* Session storage interface created, session does not extend \Magento\Object anymore
* Session validator interface created
* Session generic wrapper moved to library
* Messages functionality moved from the Session model as separate component, message manager interface created
* Sid resolver interface created to handle session sid from request
* Fixed bugs:
* Fixed placing order with PayPal Payments Advanced and Payflow Link
* Fixed losing previously assigned categories after saving the product with changed category selector field
* Fixed losing of a newly created category assignment after variations generation during Configurable product or Gift Card creation
* Fixed the error in order placement with Recurring profile payment
* GitHub requests:
* [#299](https://github.com/magento/magento2/pull/299) -- Fix for issue Refactor Mage_Rating_Model_Resource_Rating_Collection
* [#341](https://github.com/magento/magento2/pull/341) -- Replacing simple preg calls with less expensive alternates
* Modularity improvements:
* Layout page type config moved to library
* Design loader moved to library
* Theme label moved to library
* Themes update:
* Reduced amount of templates and layouts in magento_plushe theme
* Responsive design improvements
* Integrity improvements:
* Covered all Magento classes with argument sequence validator
* Added arguments type duplication validator
* Implemented API Integration UX flows:
* Ability to create and edit API Integrations
* Ability to delete API integrations that were not created using configuration files
* Removed System REST menu item and all associated UX flows:
* Users, Roles, and Webhook Subscriptions sub-menu items were removed
* Removed the Webhook module
* Application areas rework:
* Single point of access to the current area code
* Declare Application Areas
* Various improvements:
* Breakdown of the Adminhtml module:
* Moved the Customer-related logic to the Customer module
* Moved the System-related logic to the Backend module
* Moved the Checkout-related logic to the Checkout module
* Moved the Cms-related logic to the Cms module
* Moved the Promotions-related logic to the CatalogRule and SalesRule modules
* Eliminated the setNode/getNode methods from Magento\Core\Model\Config and adopted all client code
* Moved all application bootstrapping behavior to library
* Moved application-specific behavior from the entry points to the Magento\AppInterface implementations
* Removed the obsolete behavior from routing and front-controller
* Refactored the route configuration loading
* Extracted the modularity support behavior to the Magento\Module component
* Refactored the Resource configuration loading
* Removed the obsolete configuration loaders
* Removed the obsolete configuration from config.xml
* Refactored the code-generation mechanism
* Added constructor integrity verification to the Compiler tool
* Added strict naming rules for the auto-generated Factory and Proxy classes
* Global functions are now called from app\functions.php
* Removed functions.php from the Magento\Core module
* Methods related to mageCoreErrorHandler, string and date were moved from functions.php to the Library components
* Moved the following methods from Core Helpers to the appropriate libraries:
* Moved the Abstract Helper to the Magento\Escaper and Magento\Filter libraries
* Moved the String Helper to the Magento\Filter, Magento\Stdlib\String, Magento\Stdlib\ArrayUtils libraries
* Moved the Data Helper to the Magento\Math, Magento\Filter, Magento\Convert, Magento\Encryption, Magento\Filesystem libraries and to Magento\Customer\Helper\Data libraries
* Moved the Http Magento Helper to the Magento\HTTP library
* The Hint Magento Helper, Http Magento Helper helpers were removed from the Magento\Core module
* Implemented SOAP faults declaration in WSDL
* Web API config reader was refactored to use Magento\Config\Reader\Filesystem
* Created integrations module. Added 'Integrations Grid' and 'New/Edit' Integration pages in the admin
* Removed obsolete page fragment code
* Fixed bugs:
* Fixed inability to create an Invoice/Shipment/Credit Memo if the Sales Archive functionality is enabled
* Fixed the Minimum Advertised Price link on the Product view
* Fixed the View Files Population Tool
* Fixed the error on saving the Google AdWords configuration
* Fixed the error with the 'Invalid website code requested:' message appearing when enabling payment methods
* Fixed inability to insert spaces in credit card numbers
* Fixed inability to print orders from the frontend
* Fixed the fatal error on removal of reviews that have ratings
* Fixed JS error with the browser not responding when Virtual/Downloadable product are added to cart
* Fixed inability to delete a row from the 'Order By SKU' form in Internet Explorer
* Fixed inability to enable the Use Flat Catalog Product option
* Fixed inability to configure Grouped and Configurable products during order creation in the backend
* Fixed inability to insert a widget and/or a banner in CMS pages
* Fixed inability to set the Quantity value for Gift Cards
* Fixed the fatal error on the Customer Account > Gift Registry tab in the backend
* Fixed inability to import with the "Customers Main File" entity type selected
* Fixed the "Recently Viewed/Compared products" option missing on the New Frontend App Instance page
* Fixed the fatal error on managing Shopping Cart for a customer with a placed order in the backend
* Fixed the fatal error on an attempt to create an RMA request for Configurable products
* Fixed error on the backend dashboard if any value except "Last 24 Hours" is chosen in the "Select Range" dropdown
* Fixed duplicate values of options in the drop-downs on the RMA pages in the backend
* Various improvements:
* Unified Area configuration
* Moved EventManager to Magento\Event lib component
* Moved FrontController, Routers, Base Actions to Magento\App
* Created Magento\App component in library
* Declared public interfaces for View component into library
* Plushe theme is set as the default theme
* Refactor the Blacklist Pattern in the Integrity Test Suite's ClassesTest to Replace Blacklist.php Files
* Removed JavaScript unit test TreeSuggestTest.prototype.testBind as obsolete
* Introduced ability to register a template engine to process template files having certain extension
* Removed support of the Twig template engine along with the corresponding component from the library
* Removed layout flag that forced template blocks to output rendered content directly to a browser bypassing the response object
* Moved out responsibility of rendering template debugging hints from the template block to the plugin and decorator for a template engine
* Fixed bugs:
* Fixed inability to create product if multiple attributes are assigned to attribute set
* Fixed inability to create a new widget instance
* Fixed error on Customers Segments Conditions tab while the 'Number of Orders' condition is chosen
* Fixed blank page when placing order via Ogone
* Fixed various UI issues in Admin Panel with layout, aligning, buttons and fields
* Fixed static tests failing to verify themes files
* Translation mechanism improvements:
* Translate function ->__() was removed from Magento model interfaces. Global function __() was created
* Added I18n tools for translation dictionary generation and language package generation
* Configuration improvements:
* Implemented Magento Config component that allows to create new configuration types in a simple way
* Improved default/store/website configuration
* config.xml file is designed to store only default/store/website configuration data
* concrete store/website configuration is loaded on demand
* Improved Install, Category, Product, EAV, Customer, Wishlist, PDF, VDE, Currency, Email Template, Crontab, Events, Routes, Modules, Locale, Import/Export, Indexer, Resources configuration segments:
* Configuration moved to separate files. Some parts are transformed to DI configuration and moved to `di.xml` files
* New configuration files are validated with XSD
* Format of the configuration changed to make possible its validation
* Improved configuration in `widget.xml`, `fieldset.xml`, `persistent.xml` and `install.xml` files:
* `install.xml` was renamed to `install_wizard.xml`
* The configuration is validated with XSD
* Format of the configuration changed to make possible its validation
* Some parts are transformed to DI configuration and moved to `di.xml` files
* Removed `jstranslate.xml` files and moved all message definitions to `Magento_Core_Helper_Js`.
* List of non-structured nodes from config.xml were transformed into DI configuration
* JavaScript improvements:
* Prototype.js usages converted to jQuery:
* Deprecated prototype.js based method removed from app/code/Magento/Weee/view/frontend/tax-toggle.js
* Removed deprecated prototype.js based file: app/code/Magento/Checkout/view/frontend/opcheckout.js
* Updated to use jQuery redirectUrl widget vs prototype based solution:
* app/code/Magento/Oauth/view/adminhtml/authorize/form/login.phtml
* app/code/Magento/Oauth/view/frontend/authorize/form/login.phtml
* app/code/Magento/Catalog/view/frontend/product/list.phtml
* Removed file containing jQuery that did not meet the Magento 2 coding standard. Replaced with redirect-url widget
* app/code/Magento/Catalog/view/frontend/js/mage-attributes-processing.js
* Updated to meet Magento 2 coding standard: app/code/Magento/Checkout/view/frontend/cart/item/default.phtml
* Added jQuery widgets:
* mage.deletableItem - Widget to tag DOM element as deletable, by default on click
* mage.fieldsetControls & mage.fieldsetResetControl - Widget to easily reset a subset of form fields with a reset ui control
* mage.itemTable - Widget to easily add a data template block dynamically on an event, by default click.
* mage.redirectUrl - Simple widget to allow for consistent javascript based redirects that meet the Magento 2 coding standard
* Added new validation rules for validation widget: 'required-if-not-specified', 'required-if-specified', and 'validate-item-quantity'
* Various improvements:
* Changed VendorName from Mage to Magento
* Implemented PSR-0 and PSR-1 Coding Standards
* All Magento source code has been converted.
* Tests have been written to enforce PSR-0 and PSR-1 coding standards.
* Removed empty module setup models. Core resource setup model is used as a default setup model now. Custom setup model must be injected via DI configuration
* Removed some events (plugins must be used instead):
* adminhtml_widget_container_html_before
* admin_session_user_logout
* model_config_data_save_before
* admin_system_config_section_save_after
* backend_menu_load_after
* catalog_controller_category_init_before
* catalog_helper_output_construct
* catalog_controller_product_init
* catalog_category_tree_move_before
* catalog_category_tree_move_after
* catalog_product_website_update_before
* catalog_product_website_update
* catalog_product_media_save_before
* catalog_product_media_add_image
* catalog_product_type_grouped_price
* catalog_product_collection_load_before
* catalogsearch_index_process_start
* catalogsearch_index_process_complete
* cms_page_get_available_statuses
* cms_wysiwyg_config_prepare
* application_clean_cache
* theme_copy_after
* customer_registration_is_allowed
* log_log_clean_before
* log_log_clean_after
* sales_convert_quote_payment_to_order_payment
* sales_convert_quote_item_to_order_item
* sales_quote_config_get_product_attributes
* Removed the Poll module including references and dependencies to/on it.
* Redesign and reimplementation of web services framework
* Removed the Api module and all existing SOAP V1, SOAP V2, and XML-RPC web services code
* Implemented new web services framework to support both REST and SOAP based off of a common service interface
* Implemented a 2-legged OAuth 1.0a based authentication mechanism for both REST and SOAP API calls
* Layout improvements:
* Arbitrary handle name moved to handle node, id attribute
* New arguments format, which introduce argument types implemented
* Translation specified just on the level of node which is going to be translated
* XSD validation for Layouts XML added
* Referential integrity check with XSD introduced
* Added ability to update containers via references
* Type casting for all kind of types (url, option, array and simple types) added
* Covered introduced argument types with integrity test
* Types restrictions was implemented
* Removed access to direct execution of API through layout by removing <action> nodes
* Implemented ability to declare containers in layout that don't have any specific semantic value
* Removed handle declaration from layout update files. Name of the file stands for the handle ID and handle's attributes are defined in the root <layout> node
* PHP 5.4 and 5.5 support:
* Made application compatible with PHP 5.4 and 5.5
* Removed workarounds for older PHP versions
* Minimum supported PHP version is set to 5.4.0
* God Class Mage Eliminated
* Fixed bugs:
* Fixed address field "State/Province" on frontend, which contained "[object Object]" items instead of necessary values
* Fixed overriding/extending of global plugin configuration in area specific configuration