Magento Open Source 2.1.0 Release Notes

We are pleased to present Magento Open Source (formerly Community Edition) 2.1.0 General Availability. This release includes numerous functional fixes and enhancements.

Backward-incompatible changes are documented in Magento 2.1 backward incompatible changes.

This version of the Magento Open Source 2.1.0 Release Notes varies from the version of the Release Notes that we published with the June 23, 2016 GA release. We've identified these changes in italics below. The code base has not changed.

Highlights

Magento Open Source 2.1.0 includes several new and exciting features:

  • PayPal enhancements include PayPal in-context checkout and saved credit cards. In-context checkout helps to increase conversion rates 69 bps by allowing shoppers to pay with PayPal without leaving the merchant’s site. PayPal saved credit cards boost repeat purchases by allowing merchants to securely store credit card information with PayPal so customers do not need to re-enter it in checkout or when reordering items from the Admin interface.

  • Braintree Hosted Fields securely collect all sensitive payment information in checkout so merchants can qualify for the simplest set of PCI compliance requirements. Merchants retain complete control over their checkout style and layout because Braintree gathers credit card data using small, transparent iframes that replace individual payment fields. Braintree settlement reports are now also conveniently available within the Magento Admin.

  • Improved management interfaces make it faster and easier to search for information in the Admin, set up global search synonyms, and create new product, category, and CMS content.

Security enhancements

This release includes enhancements to improve the security of your Magento application. While there are no confirmed attacks related to these issues to date, certain vulnerabilities can potentially be exploited to access customer information or take over administrator sessions. We recommend that you upgrade your Magento software to the latest version as soon as possible.

Contact us for more information.

Known issue

Known issue (GITHUB-5025) removed.

Fixed issues

Installation and upgrade

  • System upgrades now ignore the contents of the Magento var/session directory.
  • You don’t need to have a composer.json to run Magento CLI commands.
  • Addressed an issue that caused the following error on the Magento storefront when optional sample data is installed: “We’re sorry, an error has occurred while generating this email”.
  • Upgrading the Magento system software now correctly updates the product version.
  • Improved performance of installations and upgrades by compressing packages on repo.magento.com
  • A user with limited access to the Magento Admin cannot run the Web Setup Wizard.
  • Installing optional sample data no longer throws the following exception: efault: Notice: /Stage[magento_setup]/Magento::Setup::Magento_cli/Exec[Run Magento reindex]/returns: SQLSTATE[23000]: Integrity constraint violation: 1062.
  • You can now successfully uninstall the Magento_CustomerBalanceSampleData module.
  • The Component Manager now displays component versions that are compatible with your Magento software version.
  • You can now successfully uninstall the Magento software after an incomplete installation.
  • Fixed issues with installing optional sample data.
  • Fixed issues with running integration tests on Microsoft Windows.
  • The magento setup:di:compile command no longer throws a No tokens were provided exceptions when it encounters directories or empty files. (GITHUB-3824)
  • Manually unselecting the DownloadableStaging during installation no longer throws a fatal error.
  • You can now successfully install Magento using a setup URL that contains a port number. (GITHUB-2272)
  • The Magento CLI setup:config:set now accepts hyphens and dashes “-“. (GITHUB-2700)
  • Running setup:config:set updates the deployment configuration properly. (GITHUB-2852)
  • Magento Community Edition 2.0.4 with Sample Data.tar.bz2 (204 MB) download now works. (GITHUB-4090)
  • The MAGE_MODE environment variable is no longer a required server config variable for NGINX configuration.

Shopping

  • The shopping cart for a registered user now returns a complete list of products.
  • You can now create a fixed amount discount for an entire cart.
  • You can now generate coupon codes for Cart Price Rules.
  • Magento no longer performs redundant GET requests if the customer has items in shopping cart.
  • The Date/time fields work as expected.
  • Magento now logs exceptions in a file under var/report when in default mode.
  • Cart now updates and lists rates for custom shipping methods as expected when you change the shipping address. (GITHUB-4679)
  • You can now reorder a product with a required custom option (type = file). Previously, if you tried to reorder a product under these conditions, you would encounter an error when opening the shopping cart. (GITHUB-4058)
  • Magento no longer logs out a customer who clicks first on the Go to Checkout link, then clicks on the Shopping Cart link.
  • Discounts now behave consistently.
  • You can now successfully save conditions in Create Cart Price Rules.
  • You can now log out while persistent shopping cart functionality is enabled.
  • Shopping cart shipping estimation no longer fails randomly.

Product

  • Downloadable products are no longer shown as out of stock on the Category page.
  • You can now save a product that’s been assigned to more than one website.
  • The performance of loading directories that contain products that include Swatches has been improved.
  • You can now add a new row to a Custom Option of Input Type when editing a simple product.
  • Magento no longer duplicates URL keys during the creation of a configurable product.
  • You can now successfully rest the Product Attributes mass update Admin form.
  • You can now create a simple product with custom options.
  • You can now save a product after applying an update for it.
  • You can now successfully save products with custom options.
  • You can now configure a product whose last attribute has a price of zero, and the correct total price results. (GITHUB-3912)
  • Optional dropdown product attributes can now be left blank.
  • You can now view configurable products when using sample data.
  • Layered navigation now includes a list of all product attributes.
  • You can now filter entries in the Product Reviews report by date.
  • You can now update an existing variation of a configurable product.
  • Fixed issue with incorrect or missing scope labels on the Product Creation/Editing page.
  • Magento no longer makes unexpected calls when you view a product in the storefront.
  • Magento now displays the correct product prices on the Configurable product page when catalog prices include tax. (GITHUB-2471)
  • Products > Catalog “Change status” mass action now works properly. (GITHUB-1559)

API

  • The Oauth handshake now clearly indicates the SAAS platform with which the Magento store is doing the Oauth handshake.
  • The Credit Memo REST API now updates attributes as expected. (GITHUB-4329)
  • The ‘in’ filter now works in list APIs (checked customer, product, product attributes). (GITHUB-2892)
  • Magento now displays an error message if an error occurs when you try to set payment using the REST API. Previously, Magento creates only an internal error. (GITHUB-3600)
  • USPS API includes the January 17, 2016 USPS method name changes.
  • The title of the totals discount segment returned by the API is now correct.
  • You can now use the SOAP API to add product attribute options text swatch or visual swatch.
  • Magento no longer creates customers when validation fails. (GITHUB-2914)
  • You can now successfully update product categories through the SOAP API.
  • Magento validates all the appropriate REST calls with SearchCriteria filters if the response to the search_criteria key is NOT null.
  • REST API GET /V1/categories calls now return all the categories you expect (that is, all that are created in the product interface). (GITHUB-4525)
  • System > Integrations > Add New Integration now returns a populated resources list. (GITHUB-4537)
  • Magento now returns available services in WSDL schema. Previously, you could not process SOAP requests as expected.

JavaScript

  • Attribute values are now consistently persisted after reloading a form.
  • You can now nest categories more than four levels deep.
  • We’ve optimized registry.js performance.

PHP

  • PHP errors no longer occur when you run a cron script on installations running PHP5.5. (GITHUB-4722)
  • Remi PHP 7.0.1 now works with Sample Data.
  • Payment/Shipping config is no longer decrypted twice in a PHP7 environment.

PayPal

  • The PayPal button now displays as expected in the minicart.
  • The PayPal Express review rendering of tax block now works correctly. (GITHUB-3774)
  • PayPal now works correctly if the applied discount brings the subtotal to negative, but the grand total is positive.
  • The “Learn More” link for Payments Pro now works correctly.
  • The Get Credentials From PayPal and Sandbox credentials buttons are now rendered correctly.
  • Magento now clears the minicart as expected after you complete an order using PayPal.
  • Magento now displays the relevant error message when Express Checkout fraud filters are triggered.
  • Magento no longer disables the Continue button when you submit an order with PayPal Payments Advanced.
  • Magento now successfully generates the PayPal Settlement report.
  • Magento now updates Shipping method on the PayPal Order Review page.
  • The PayPal Settlement report now works correctly.
  • Magento now requires the Merchant Account ID field in PayPal configuration.
  • Magento still displays products in the mini shopping cart after guest checkout with PayPal Express.
  • Fixed issue with the terms and conditions agreement causes fatal error during checkout with PayPal Payments Pro method.
  • Fixed issue with incorrect transaction totals in PayPal Settlement report.
  • Fixed issue with BNCODE in PayPal solutions.
  • In the Vault Provider field, Magento no longer displays the Payflow Pro option for countries that don’t offer it.

Braintree

  • You can now change the quantity for an invoice.
  • You can now create invoice of transaction with expired authorization.
  • You can now place an order through online payments in the Admin area.
  • You can now use stored cards on the Admin side.
  • You can now apply Gift Card Account/Discount Code on the review page.
  • You can now check out virtual product using Braintree.
  • The Braintree PayPal button is no longer active until checkout.
  • The PayPal Braintree popup now appears as expected when you click the Continue to PayPal button.
  • Magento no longer displays this error when you save an order: “Order Saving error: Table ‘magento.vault_payment_token_order_payment_link’ doesn’t exist.”
  • You can now place an order from within Braintree if 3D Secure Verification is enabled.

Integration

  • You can now select API resources while creating an integration.
  • After you install and enable a module, the System > Extensions > Integrations page lists the new integration generated by the module. (GITHUB-4023)
  • We’ve edited the integration/acl.xml file.
  • Magento now creates an integration after adding the integration/config.xml file.
  • Fixed issue with PHP 7.0 Integration test.
  • Magento no longer deletes Access Token and Access Token Secret from all integrations when you delete it from only one integration. (GITHUB-3450)
  • You can now delete an Admin user that has the same ID as an integration user, without breaking the integration.

Testing

  • You can now run all integration tests in developer mode.
  • CategoryTest integration test no longer fails on Travis builds. (GITHUB-4099)
  • We’ve improved search performance.
  • Magento no longer throws a fatal error if you use fewer than the minimal required characters in your search query.
  • Search input on themes using the Blank theme now works as expected. (GITHUB-4282)
  • Performance of category pages significantly degrade when having around 3000 products or more in category.

Checkout

  • We’ve resolved several address-related issues associated with Checkout.
  • Customers with an existing saved address can now add a new address during checkout.
  • Clicking the Reorder button now loads products as expected when persistent shopping cart is enabled.
  • The Go to Checkout button now works as expected. Previously, when you clicked the Go to Checkout button, Magento would display a login pop-up window.
  • Checkout now works as expected when purchasing products during a persisted session.
  • Fixed problem with unnecessary redirects to checkout page after Sign-in.
  • Magento now provides information about the country you’ve selected in the address in the checkout flow.
  • Magento now saves custom customer attributes at checkout.
  • Fixed issue with JaveScript error during checkout when switch between addresses that either contain or don’t contain Region data.
  • Loader now disappears as expected after you click the Place Order button.
  • Fixed error on checkout page when you changed base currency at checkout.
  • Fixed problem with opening My Cart page in one-page checkout.

Bundle products

  • The Add Products to Option button now works as expected when you create a new update for a Bundle product.
  • You can now include quotation marks in Bundle product names. (GITHUB-4414)
  • Magento no longer displays an invalid date error message when you create a Bundle Product update.
  • You can now successfully move Bundle products to the Wishlist. (GITHUB-2717)
  • Bundle products created using Web API are now visible on the storefront.
  • Magento now saves the price for Bundle option items.
  • You can now save duplicate Bundle products.
  • You can now specify Bundle option title on the storeview level.
  • You can now add a Bundle product to the shopping cart.
  • Magento now displays Bundle product prices in the shopping cart product grid.
  • Magento now correctly displays sku_type, weight_type, shipment_type after you save a Bundle product.
  • The Edit Bundle product page now works as expected.
  • Magento now successfully validates the price_type field during import and export.

Import/Export

  • The Import error message you receive when an attribute exceeds maximum permitted length now inserts variable that defines the attribute name. (GITHUB-2844)
  • Magento no longer throws this error when you import or export when you have multiple websites and stores: “URL key for specified store already exists.”
  • Magento no longer lets you import two products with the same URL key.
  • Magento no longer throws a general exception when you try to import more than 100,000 products.
  • You can now export products to a CSV file, edit names, then import products successfully.
  • Magento changes the order in which products are displayed after you export or import a catalog.
  • You can now import cross-sells, up-sells and related products. (GITHUB-3286)
  • The Ajax loader now stops if you use an incorrect file type during import.
  • The console command now flushes caches without error. Cache should be flushed without errors.

Messages and documentation

  • The getList method documentation has been enhanced.
  • Error messages associated with cron processes are now more helpful. (GITHUB-3189)
  • Magento now displays an appropriate message when you add less than the required minimum items in your cart.
  • Message serialization now complies with AMQP specifications.
  • We’ve improved the error message that users typically received during upgrade. The message now clearly states when a user must login first to magento.com before continuing the upgrade process. (GITHUB-3059)
  • Error messages generated during installation are now more informative.
  • Documentation now states that the iconv extension is required in installations running PHP 7.x. (GITHUB-4002)
  • CLI documentation now includes magento dev:css command. (GITHUB-433)

Admin

  • You can now access the Web setup wizard from the Admin interface.
  • Magento now updates Attribute set after reloading a form.
  • You can now update category settings.
  • You can now open the Admin Menu when JS minification is enabled.
  • You can now assign a CMS page to multiple storeviews.
  • The Search Engine Optimization fieldset no longer displays Category url_key.
  • You can now successfully create a new update on ‘custom store view’.
  • You can now create permanent or temporary URL rewrites. (GITHUB-2929)
  • You can now save Text Swatch “Swatch” values.
  • You can now insert more than two images using the WYSIWYG editor. (GITHUB-4221)
  • Magento now displays categories that contain children categories. (GITHUB-2121)
  • Layered Navigation now contains previously missing category filters.
  • The WYSIWYG editor no longer removes HTML5 tags.
  • You can now add new Content CMS New Blocks.
  • You can now create an order from the Admin interface while using a non-default website.
  • Fatal errors no longer occur when you save configuration from the Admin panel.
  • You can now change Video Role and Image Role.
  • Magento now displays a checkbox during the create user role ACL if minification is set to ON.
  • Admin User sessions no longer expire prematurely in installations that are running Redis for session storage. Previously, you were directed back to the login page after logging in to the Admin panel, waiting a short period time (less than the Admin Session Lifetime value), and trying to navigate to the Dashboard.
  • Newly created categories now appear as expected on the Navigation menu.
  • Category pages now display swatches of configurable products based on color swatch attribute.
  • Magento now successfully saves future special dates in the Advanced Price page.
  • Changes to Customer group are now immediately applied to logged-in customers.
  • Product update operations by either customers or store administrators no longer result in locking queries on catalog category product index. (GITHUB-4342)
  • Admin order creation no longer fails when the “Include Tax In Order Total” option is set to YES. (GITHUB-2675)
  • You can now translate the phrases “records found” and “selected” that appear in the Admin panel. (GITHUB-2155)
  • Magento now displays information in the dashboard when the Use Aggregated Data setting is turned on. (GITHUB-3459)

Storefront

  • You can now add form elements via layout and use the htmlContent component.
  • Multi-site cache now shows the correct site’s content. (GITHUB-4556)
  • URL Rewrites now work correctly with multiple store views.
  • Magento now registers added themes during production mode. (GITHUB-2797)
  • Deployed static view files no longer contain references to BaseURL.
  • You can now configure multiple websites using NGINX.
  • Magento now displays the prices for Grouped Products in the storefront.
  • You can now successfully sort products by swatch attribute.
  • Magento now displays product attributes for a product on the store front as expected.

Indexing

  • Magento can now complete reindexing when the product flat indexer is turned on.
  • The performance of re-indexing operations after importing many products has been improved.

Varnish

  • Varnish cache is no longer disabled on most HTML requests.
  • We changed the HTML header used for SSL offloading from SSL-OFFLOADED{:target=”_blank”} to X-Forwarded-Proto: https{:target=”_blank”} to be compatible with Varnish and for compatibility with load balancers.

To view this setting in the Magento Admin, click Stores > Settings > Configuration > GENERAL > Web. In the right pane, expand Base URLs (Secure), value of the Offloader header field.

If you change the value of this field, you must regenerate your .vcl files.

  • Varnish now properly invalidates or refreshes the both Catalog Event change in the Product page and Advance Inventory changes.

Miscellaneous

  • Magento now successfully migrates data when Google Analytics’s Content Experiments is enabled.
  • Category creation from product page no longer fails when Google Content Experiments is enabled.
  • Page View Optimization tab is absent on edit CMS Page.
  • You no longer get a “Wrong request parameters” error when you try to assign products to a category on the store view level.
  • If you enable Google’s content experiments in the Magento Admin, you can create categories as expected.
  • Undeclared dynamic property gets leaked in public space. (GITHUB-2103)
  • We’ve corrected plugin sort order.
  • You can now create downloadable products.
  • Magento no longer exposes Marketplace credentials via URL.
  • The Download link in the order confirmation email now works correctly. (GITHUB-4762)
  • You can now place orders using the Payflow Pro payment method.
  • You can now place an order for an item for an amount that exceeds half of item’s stock.
  • CLI is affected by the permissions configuration setting in server config.
  • Single tenant compiler now works when Magento is not installed.
  • Maestro credit cards can now pass validation on the application server side.
  • We now include .gitignore as part of the project package. (GITHUB-4358)
  • The PHP code migration tool no longer fails with this error: “Call to a member function xpath() on a non-object”.
  • Magento now generates data in production mode.
  • Magento now displays an error stating that user is prohibited from disabling the only default store view when you try to disable the default storeview for a store.
  • Magento now applies the Cart price rule for payment method conditions.
  • Fatal errors no longer occur when running CLI commands after compilation in some regression environments.
  • Magento no longer references empty targets in other targets.
  • Catalog Price Rules are now applied as expected, depending upon the time frame stated in the Price Rule.
  • Phrases with escaped slash characters are now translated. Previously, if a phrase were wrapped with single quotes, Magento would not display it correctly.
  • The collectRates() method now obtains the full address details for a registered customer.
  • The Customer Address tab is populated as expected after you create a new order. Previously, Magento did not list addresses on this tab when you’d create a new order.
  • Logo folders have been added to the list of allowed resources. (GITHUB-4078)
  • The Force Sign-in button now works as expected.
  • Gift Message information is now present as expected in the extension_attributes when you request this list by Web API. Previously, if you placed an order with a Gift Message, and then performed a Web API request to get the list of orders, Gift Message information would be absent in the extension_attributes. (GITHUB-4414)
  • The getPassword() and getPasswordConfirm() methods now return the password and passwordconfirm parameters as strings. (GITHUB-4355)
  • The OAuth Token exchange expiration period is now calculated correctly. (GITHUB-3449)
  • The Order Repository GetList method no longer returns the same shipping address for all orders. (GITHUB-4019)
  • The i18n:collect-phrases -m command now works correctly. Previously, this command would not find all important Magento phrases. (GITHUB-2630)
  • Plugins/interceptors now work with early stage single instance objects in Developer mode. (GITHUB-2674)
  • The setup:di:compile script now compiles all files as expected. (GITHUB-2888)
  • Attribute ‘setup_version’ is missing for module error when defined as optional. (GITHUB-1493)
  • The CC model now assigns cc data that is passed in the additional_data field. (GITHUB-4741)
  • The locale for Chinese translation now works as expected. (GITHUB-1547)
  • Magento now converts shipping_discount_amount to different currencies as needed. (GITHUB-2708)
  • Magento now checks for all return values used by the webservicex.net currency converter. (GITHUB-3118)
  • The Credit Memo form no longer assumes that shipping amount excludes VAT when both catalog prices and shipping prices are set to ‘including tax’. (GITHUB-3406)
  • You can now resend order emails from the Admin interface when using Async mail. (GITHUB-4507)
  • system.log behavior has changed to reduce the number of distracting logged broken references. (GITHUB-3507) * UI form components now support customer custom attributes of ‘file’ type. * Magento now identifies email validation errors after you finish typing the email address. * Fixed issues with the New Accounts Report. * Magento no longer calls plugin methods multiple times when a proxy exists for subject class. * Magento now applies a discount only for the correct attribute. * Fixed issue with wrong AMQP connection alias creating message failures. * Magento no longer throws an unmasked fatal error when you supply an invalid product ID.
    * Catalog Price Rules now work when based on configurable attributes * Fixed issue with Magento populating var/cache and var/page_cache after cache configuration.
  • Form: Validation is disabled when you disable a field. * Fixed issue with performance of customer form creation for many customers. * Fixed issue with the Code Migration tool’s handling of password hashes.
    * Fixed issue with rendering of the “Remember Me” pop-up. * We edited the error message that Magento displays when you upload a custom option file to avoid displaying internal code structure.
  • “Custom option” prices are now present in Configurable product order calculations. * Unauthenticated users can no longer delete product reviews from a store. * Message structure is now enforced on encoder.
  • Magento now updates topology after module installation. * Magento now rejects messages if an exception happens on business logic. * Fixed issue with area code not being set for the consumer command. * Category fields now contain the Use Default Value option in Store and StoreView scope. * Improved performance of the checkbox and removed duplicate labels.
  • Unnecessary StoreCookie plugins are no longer executed on each request. * Unnecessary MessageBox plugin no longer duplicate message logic. * MessageBox plugin is no longer triggered by frontend requests.
  • URL Rewrites now work for products that you access through the category landing pages. * Magento now displays customer attribute options on the Attribute Edit page. * Fixed issue with JaveScript errors when loading the product grid after cleaning the cache and static files.
  • Product images now switch as expected when you click on a swatch.
  • The Create an Account form now opens as expected after checkout has been completed for a customer who is not logged in.
  • Fixed issue with resetting password after waiting an hour.
  • Magento now provides an additional field in the Admin and customer login forms that prevent web browsers from caching login credentials. * Magento now loads product image from product page when minification is enabled. * Remove usages of DummyAttributeLoader.
  • Fixed issue with changing product images. * A configurable product image’s JSON isMain attribute is no longer always set to false. * Magento no longer throws an exception when an admin user requests a password reset password while working on a site that does not support email (for example, Vagrant). * Fixed issue with Sales Order extension_attributes. (GITHUB-3967) * Fixed issue with clearing the End Date. * Fixed incorrect translation function usage in template. * Fixed issues with Category page caching for different users on one web client.
  • Magento no longer displays a 400 Bad request error when clearing Varnish cache on GoDaddy.
    * Fixed issue with displaying special prices on the catalog or product page for the configurable products. * Corrected an issue where Magento applied the wrong discount for orders when Apply to Shipping Amount is set to YES.
  • Fixed issue with incorrect default rows value for Dynamic Rows pagination.
  • Magento now displays an error message (instead of throwing an exception) on the Catalog product edit page with an invalid param ID.
  • Magento now correctly displays Catalog Events Carousel widgets.
  • Fixed issue with selecting correct number of filtered rows on Related Products.
  • Changing configurations in an update no longer changes the original configurations.
  • Magento no longer throws a fatal error when you click on the related banner grid in Cart Price Rule form while in production mode. * Customer grid indexer performance has been enhanced. * Rule-based free shipping now works as expected. * You can now assign a product to a custom website. * We’ve enhanced the performance of the Sync button. * Fixed issue with CMS Pages being corrupted during mass actions.
  • Removing all rows from a CMS grid no longer results in an error message. * Magento now fills the confirmed email column as expected for confirmed customers. * The default full page cache (FPC) implementation no longer caches content with non-HTML Content-Type headers (for example, text/css, application/JavaScript), before re-serving this content as text/HTML.
  • Fixed issue with storefront prices not accurately reflecting products’ custom options settings.
  • Magento now displays a Threshold message after a customer buys a product and its quantity does not decrease.
  • You can now change the base currency in website scope. * Fixed issue with the missing Delete button on the Edit Store and Store View pages on websites with multiple stores and storeviews.
  • Fixed issue with downloadable product Links section on global scope level after edit on the storeview level.
  • Fixed issue with cache file permissions. * The Configurable Product page now displays the Create Configurations button.
  • Fixed problem using Internet Explorer 11 to access editable fields in a configurable product’s Current Variations grid.
  • Magento now correctly displays the stock status of a product with a custom attribute set after you save the product while creating it.
  • The variations matrix is now populated as expected after you update a configurable product.
  • The default address check boxes are checked as expected on the Customer View page.
  • Magento now displays images for configurable product variations on the storefront.
  • Magento now creates a new attribute set as expected after you use the Configurable Product wizard to create a new product.
  • The checkout page now loads correctly after you add an extension attribute to CartItemInterface. (GITHUB-3640)
  • The Admin URL is no longer indexed in Google.
  • Fixed issue with fatal error while reordering.
  • Deleting a category’s image on a custom storeview no longer deletes the image on all store views.
  • We’ve enhanced the decimal precision on the Product page.
  • Fixed issue with the WYSIWYG editor not saving changes of raw content.
  • You can now remove a Gift Card Product’s fixed amount.
  • You can now create a store view after selecting Save and duplicate option while creating a simple product.
  • Fixed issue with updater/cron.php processing newlines.
  • Fixed invalid view ID and changelog name for the customer grid indexer.
  • New Accounts Report now correctly calculates accounts for multiple websites.
  • Fixed miscellaneous errors in cron log.
  • Fixed issue with AMQP consumer message processing after duplicate message.
  • Customer account lockout now works as expected if the account has been unlocked previously.
  • Fixed issue with the Add Product to Cart with Minimum Qty Allowed Set feature.
  • Magento now transfers order data to the new order when you initiate a reorder.
  • Fixed problems with the layout of the search results page for a search on related orders for billing agreement.
  • Fixed problem with exception message on admin/mui/index/render/ page.
  • Magento no longer produces an exception when you add a configurable product with out-of-stock items to your shopping cart.
  • The cron updater now displays error messages instead of exceptions for permissions issues.
  • Fixed issues with placing orders using FedEx shipping method.
  • Cache is not invalidated or refreshed when product website visibility changes.
  • Magento no longer throws an exception when you create a custom widget.
  • Fixed issue with updating Category products on the storefront.
  • You can now change the title of the Product Details tab.
  • Magento no longer redirects customers to checkout instead of My Account if guest checkout is disabled.
  • Magento no longer saves Category global attributes twice.
  • Online payment methods now display as expected when you place an order for a virtual product as a guest.
  • You can now dynamically switch product types when creating a new product.
  • You can now create a credit memo when placing an order using Eway payment method when the payment action setting is set to Authorize only.
  • Setting category permissions to DENY now hides the category as expected.
  • Fixed issue with the display of forms incorporating new UI component in Single-Store mode.
  • You can now save bookmarks you’ve created in Admin data tables.
  • Fixed issue with setting Custom attribute to Yes/No.
  • We’ve improved the performance of local caching that uses Zend_Cache_Backend_File.
  • When you enable PayPal Express Checkout but disable PayPal Credit, only one PayPal Express Checkout option is available when the customer checks out.
  • Fixed the test dev/tests/integration/testsuite/Magento/Framework/Filesystem/Driver/FileTest.php to properly set file permissions.
  • The Use default value check box on a product in a non-default store view function properly.
  • Tests in dev/tests/integration/testsuite/Magento/Catalog/Model/ProductTest.php are executed as expected.
  • Corrected issues with HTML minification.
  • The REST API call POST /V1/products/attributes/ now creates a product’s attributes properly.
  • Saving a category with an invalid URL (such as a duplicate of another category’s) fails as expected.
  • You can now place an order with PayPal Secure Checkout if your site uses secure URLs.
  • Fixed Fatal error: Maximum execution time of 60 seconds exceeded when deploying static files. (GITHUB-2461)
  • We improved the error message when you install the Magento software using composer install with the –no-dev option. (Only developers who contribute to the Magento codebase typically use composer install.) (GITHUB-2561)
  • A quick edit of a CMS page no longer switches the store view to the default store.
  • Resolved an exception during setup or upgrade that resulted from a non-existent directory.
  • You can now use an empty value for a non-required configurable swatch attribute.
  • Resolved issues with shipping providers for one-page checkout.
  • Updated packages on repo.magento.com to remove conflicts between Magento Open Source and Magento Commerce components.
  • User notifications work as expected.
  • Removed the listing of arguments from Magento\Framework\DataObject::__call() - print_r() to avoid memory leaks.
  • You can now apply a Catalog Price rule to a product created using the Web API.
  • Fixed issue with Category products not being loaded as expected to a second website.
  • Using the default values for the Enable Product and Product name fields on a non-default site during product update no longer causes the original data to be lost.
  • Fixed issues with minification in forms.
  • The Order grid filter now works as expected for Purchase Date.
  • You can now issue a partial refund.
  • You can now unassign a product from all websites.
  • We’ve improved the Catalog Events Carousel widget.
  • Fixed error that occurred during the creation of an international USPS shipment label with dimensions specified in inches.
  • You can now create a shipping label for the FedEx shipping method.
  • Magento now applies the license agreement automatically if Terms & Conditions are in automatic application mode.
  • We’ve corrected errors with currency codes in invoices. (GITHUB-4264)
  • Invoice amounts now display the currency symbol of the currency used on the store view.
  • Magento no longer displays Payment Review order status to the customer after the Authorize.net Fraud filters are triggered.
  • Invoice status now reflects the status of the captured saved invoice. (GITHUB-4385)
  • The eWay capture transaction no longer closes after creating a partial refund.
  • Magento no longer ignores tax when calculating totals for the shopping cart and checkout.
  • Fixed an issue with unexpected behavior of the Password Strength Validator on Create Customer Storefront page.
  • Cache behavior on checkout now works as expected (the only pages uncached belong to the order (products and category of the products). (GITHUB-4222)
  • Fixed issue with the sign-in modal overlay on the checkout page. (GITHUB-4083)
  • The Save button now works as expected on the Category Edit page after you’ve manipulated CatalogPermissions elements.
  • Setting Merge CSS Files = Yes no longer erodes Magento performance. (GITHUB-4710)
  • Image previewer now works with images that contain spaces in their name.
  • The setStoreId method now checks for StoreInterface and Store.
  • Dynamic Rows are now draggable.
  • Fixed issue with the Go Today button not working for the dates range component.
  • Magento no longer prompts you to select a dropdown attribute after you’ve selected one. (GITHUB-4899)
  • The Media Uploader error messages now make clear that we do not support SVG format. (GITHUB-2958)
  • The Web Setup Wizard now works when Magento is installed in /pub. (GITHUB-4159)
  • Fixed issue with template minification on the product frontend. (GITHUB-4365)
  • Added support for Chinese currency code for UPS shipping method. (GITHUB-4578)
  • Move to Shopping Cart action does not work inside creation offline order.
  • The Price vs. Destination value for the condition field in the Table Rate Shipping method now works as expected.
  • Magento now displays error messages on the page where the error occurred.
  • Magento now creates product URL rewrites as expected on mass update to a new website.
  • Switching to Varnish causes category menu to force HTTPS links. (GITHUB-4540)
  • You can now log in to the product frontend when inline translation is enabled. (GITHUB-4925)
  • Magento now uses the XML schema location in both the etc/adminhtml/system.xml and the Magento/Config/etc/system_file.xsd schema. (GITHUB-2372)
  • Categories path for product URLs now working for Sample Data. (GITHUB-2619)
  • SynchronizePersistentInfoObserver is no longer subscribed to a nonexistent event. (GITHUB-2693)
  • Fixed possible memory leak in \Magento\Framework\Image\Adapter\Gd2. (GITHUB-2696)
  • Fixed issue with selecting a product template for a configurable attribute. (GITHUB-2567)
  • The Code Migration tool now recognizes all Magento 1.x resource models and collection classes.
  • You can now print both shipment and invoice information from My Orders page. (GITHUB-2500)
  • Fixed issue in the $product->load($id) method for specific products. (GITHUB-2800)
  • You can now log in on the product frontend when inline translation is enabled. (GITHUB-4925)

System requirements

Our technology stack is built on PHP and MySQL. Magento 2.1.0 supports:

  • PHP 5.6 We do not support PHP 5.5.x
  • PHP 7.0.2, 7.0.6 up to 7.1
  • MySQL 5.6
  • Apache 2.2 or 2.4
  • nginx 1.8 (or latest mainline version)

For more information, System Requirements.

Installation and upgrade instructions

You can install Magento Open Source 2.1.0 (General Availability) release either Github or by using Composer.

Install the Magento software

You can get Magento Open Source (formerly Community Edition) 2.1 from Github, Composer, or using a compressed archive.

See one of the following sections for more information:

Get the Magento Open Source software using Composer

The Open Source software is available from repo.magento.com. Before getting the Open Source software, familiarize yourself with the Composer metapackage prerequisites, then run

composer create-project --repository-url=https://repo.magento.com/ magento/project-community-edition=<version> <installation directory name>

where <version> is 2.1.0, 2.1.1, and so on

For example, to install Magento Open Source 2.1.1 in the magento2 directory:

composer create-project --repository-url=https://repo.magento.com/ magento/project-community-edition=2.1.1 magento2

Get a compressed archive

The following table discusses where to get the Magento software. We provide the following downloads:

  • Magento Open Source software only
  • Magento Open Source software with sample data (designed to help you learn Magento faster)

These packages are easy to get and install. You don’t need to use Composer, all you need to do is to upload a package to your Magento server or hosted platform, unpack it, and run the web-based Setup Wizard.

Archives are available in the following formats: .zip, .tar.bz2, .tar.gz

To get the Magento Open Source software archive:

  1. Go to http://magento.com/download.
  2. Choose either the software or the software and sample data:

    • Magento-CE-<version>.* (without sample data)
    • Magento-CE-<version>+Samples.* (with sample data)

    <version> is the three-digit release number (for example, 2.0.7, 2.1.0, and so on).

Complete the installation

After you get the Open Source software:

  1. Set file system ownership and permissions.
  2. Install the software:

Upgrade from an earlier version

See the following sections for more information.

Upgrade an existing installation from the GitHub repository

Developers who contribute to the Open Source codebase can upgrade manually from the Magento Open Source GitHub repository.

  1. Go to the Contributing Developers page.

  2. Follow the instructions to pull the updates from the repository and update using Composer.

Other upgrades

Other types of upgrades are discussed in Upgrade to Magento version 2.1 (June 22, 2016).

Migration toolkits

The Data Migration Tool helps transfer existing Magento 1.x store data to Magento 2.x. This command-line interface includes verification, progress tracking, logging, and testing functions. For installation instructions, see Install the Data Migration Tool. Consider exploring or contributing to the Magento Data Migration repository.

The Code Migration Toolkit helps transfer existing Magento 1.x store extensions and customizations to Magento 2.0.x. The command-line interface includes scripts for converting Magento 1.x modules and layouts.