Commit Graph
15 Commits
Author SHA1 Message Date
James Halsall a31f4a35c0 Remove the copyright year from file headers 2017-02-22 09:09:36 +00:00
Sergii Kovalenko eb30343a09 MAGETWO-62855: Copyright Year Update 2017 2017-01-05 13:01:45 +02:00
Joan He 2d368d0134 MAGETWO-48081: Copyright Year Update 2016-03-17 15:49:11 -05:00
Nathan McBride 148bae13d7 Issue #2361: Allow AbstractAction to handle _isAllowed() logic
Now `AbstractAction::_isAllowed()` is using a static binding, we
can simply define the `ADMIN_RESOURCE` constant in our controllers.
2016-02-16 14:42:13 +00:00
Vinai Kopp f8c8f556ba Add abstract method execute() to \Magento\Framework\App\Action\Action
Purpose
==

Make implementing Actions more developer friendly via self-documenting code.

Background
==

The existing method `\Magento\Framework\App\Action\Action::dispatch()` calls
an `execute()` method without actually implementing it.

```php
$result = $this->execute();
```

Any subclass actions simply need to implement that method and it will be
called automatically when the superclass method is `dispatch()` is called.

Without the changes in this PR, the `execute()` method in effect was part
of an implicit interface exposed by the `Action` class.

Because of this the `Action` class could never be instantiated and used (that
is, dispatched), without first subclassing it.
This in turn makes the `Action` class an implicitly abstract class.

All this PR does it that it makes the class interface explicit by adding the
execute method as an abstract method to `\Magento\Framework\App\Action\Action`.

All the other changes in this PR are just follow-up changes to accommodate
for this one update.

Follow up changes
--

Because concrete classes can't have abstract methods, the `Action` class
itself also had to be made abstract.

A number of subclasses of `Action` that did not implement `execute()`,
because they themselves also needed to be extended, had to be declared as
abstract classes now, too, because they inherit the abstract method from
the `Action` superclass.

There where some tests that instantiated these implicitly abstract classes.
This PR adds stub implementations for each of these.

* `Magento\Checkout\Test\Unit\Controller\OnepageTest`
  in app/code/Magento/Checkout/Test/Unit/Controller/
* `Magento\Contact\Test\Unit\Controller\IndexTest`
  in app/code/Magento/Contact/Test/Unit/Controller/
* `Magento\Tax\Test\Unit\App\Action\ContextPluginTest`
  in app/code/Magento/Tax/Test/Unit/App/Action/
* `Magento\Catalog\Helper\Product\ViewTest`
  in dev/tests/integration/testsuite/Magento/Catalog/Helper/Product/
* `Magento\Cms\Helper\PageTest`
  in dev/tests/integration/testsuite/Magento/Cms/Helper/Stub/
* `Magento\Sales\Controller\Adminhtml\Order\CreateTest`
  in dev/tests/integration/testsuite/Magento/Sales/Controller/Adminhtml/Order/

Finally, the `Magento\Ui\Controller\UiActionInterface` class, which was
implemented by an abstract subclass of `Action`, namely
`\Magento\Ui\Controller\Adminhtml\AbstractAction`, contained a
`public function execute();` itself.
This explicit interface contract was in conflict with the implicit interface
of the `Action` class, which did defined the same method, but implicitly.

To resolve this conflict this PR changes the method exposed by the
`UiActionInterface` to `public function executeAjaxRequest();`. This
seemed the most fitting when looking at the code implementing the interface
method. Internally it only calls the now explicit `execute()` method inherited
from the `Action` interface.

Also, it seems as if the `UiActionInterface::execute()` method was only called
by a single test. However, I realize the method might be used a lot more in the
non-public EE code, which will also need to be adjusted to be compatible with
this PR.

Reasons for this PR
==

As stated above, the purpose of this PR is to make the developer experience
better. This is done by making an implicit interface explicit. This has
a whole number of benefits, besides being good OOP practice:

* It is clear which classes should be instantiated and which should not
* It is clear which method needs to be implemented when subclassing `Action`
* The expected return type of `execute()` is documented in the phpdoc block
* When subclassing `Action` the IDE can be used to quickly a method stub

Allover the changes lead to more self-documenting code that tells developers
to they should use it.

Potential issues
==

The explicit abstract `execute()` method added in this PR is declared with
protected visibility.
This basically removes it as a valid extension point for plugins. However,
since the method was not declared as public previously (in fact, is wasn't
declared at all), it should not have been used as an extension point for
plugins anyway.

So the main reason against this PR I can think of is that the EE code will
need to be adjusted (plus, I might be missing many obvious reasons).
Of course I'd be happy to make the required updates, but I realize that is
problematic due to the commercial licenced, non-open code.
I've got a bunch of hacky shell scripts to find and update any controllers
needed to be declared abstract, but I'd rather not share them as they are just
one-time hacks.
All the other changes - updating the ui action interface and the test stubs -
where done manually and didn't take long.
2015-06-26 16:04:15 +02:00
Anup Dugar f16d24e5cf MAGETWO-32668: [GITHUB] Change resource ids from Magento_Adminhtml::* to Magento_Backend #921
- Replaced Magento_Adminhtml with Magento_Backend
2015-02-06 00:08:39 -06:00
Vlad Veselov a9e5897bf6 MAGETWO-32146: Copying and Copyright Year Update
- update all files with tool
2015-01-09 10:11:39 -05:00
mage2-team 1be6ca13bc 0.1.0-alpha108
* 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
2014-12-12 12:14:06 -08:00
mage2-team c8b7223139 2.0.0.0-dev87
* Service layer updates:
  * Created Tax Calculation service
  * Implemented search Tax Rates(search criteria) in TaxRate service
  * Refactored Tax Helper to use Tax Service
  * Validated and ensured that after helper fix, all modules with cross-dependencies use Tax Services
  * Refactored Bundle, Catalog, Checkout, Customer, Downloadable, Review, Logging Modules to use Tax Services
  * Refactored Internal Tax Module Blocks/Templates to use Tax Services
* GitHub requests:
  * [#579] (https://github.com/magento/magento2/pull/579) -- update GA code from ga.js to analytics.js
  * [#584] (https://github.com/magento/magento2/issues/584) -- Merge and minify js - Exception
  * [#585] (https://github.com/magento/magento2/pull/585) -- Add forgotten return statement
  * [#592] (https://github.com/magento/magento2/issues/592) -- Module name pattern
* Tax calculation updates:
  * Separate and display Weee line item totals from Tax
* Fixed bugs:
  * Fixed an issue when Custom attribute template was not applied to a product  during product creation
  * Fixed an issue when report grid with no results contained unnecessary empty "total" section
  * Fixed an issue where MCRYPT_RIJNDAEL_128 Cipher was set instead of 256 version
  * Fixed an issue when inline translate script was always included in the page even if it was not used
  * Fixed an issue where URL Generation was affected by previously processed URLs
  * Fixed an issue with cross-site scripting vulnerability via cookie exploitation
  * Fixed an issue with incorrect success message after system variable was deleted
  * Fixed an issue with category page not opening if it had bundle product with fixed price assigned to it
  * Fixed an issue when subtotal price in a shopping cart was not updated if the product qty is changed
  * Fixed an issue when syntax error appeared while creating new Google Content attribute mapping
  * Fixed an issue with JS error when adding associated simple product to the grouped one
  * Fixed an issue with incorrect items label for the cases when there are more than one item in the category
  * Fixed an issue when configurable product was out of stock in Google Shopping while being in stock in the Magento backend
  * Fixed an issue when swipe gesture in menu widget was not supported on mobile
  * Fixed an issue when it was impossible to enter alpha-numeric zip code on the stage of  estimating shipping and tax rates
  * Fixed an issue when it was impossible to edit gift card account
  * Fixed an issue when custom price was not applied when editing an order
  * Fixed an issue when  items were  not returned to stock after unsuccessful order was placed
  * Fixed an issue when error message appeared "Cannot save the credit memo while creating credit memo
  * Fixed an issue when Catalog price rule was not shown for the product if price was less than a discount
* Indexer implementation:
  * Implemented a new Stock indexer
  * Implemented a new EAV indexer
  * Fixed failed L1 plan on phpunit 4.1.0
  * Minor updates for integration test framework
  * Split action controllers classes into action classes
  * Added public MTF repository to the packagist.org
* Added the following functional tests:
  * Create Admin User
  * Create Category
  * Create Custom Url Rewrite
  * Create Frontend Product Review
  * Delete CMS Page
  * Delete Product
  * Delete System Variable
  * Update Admin User Role
  * Update Product Review
* Indexer-less implementation of URL Rewrites functionality in new UrlRedirect module:
  * Ported Admin UI from old UrlRewrite module
  * Implemented URL Rewrites unified storage
* Covered the following Magento application components with unit tests:
  * `Magento/Bundle/Block/Sales/Order/Items/Renderer.php`
  * `Magento/Bundle/Helper/Catalog/Product/Configuration.php`
  * `Magento/Bundle/Helper/Data.php`
  * `Magento/Bundle/Model/Option.php`
  * `Magento/Bundle/Model/Plugin/PriceBackend.php`
  * `Magento/Bundle/Model/Product/Attribute/Source/Price/View.php`
  * `Magento/Bundle/Model/Sales/Order/Pdf/Items/AbstractItems.php`
  * `Magento/Catalog/Model/Product/Attribute/Source/Msrp/Type/Enabled.php`
  * `Magento/Catalog/Model/Product/Attribute/Source/Msrp/Type/Price.php`
  * `Magento/Catalog/Model/Product/Visibility.php`
  * `Magento/Eav/Model/Entity/Attribute/AbstractAttribute.php`
  * `Magento/Eav/Model/Entity/Attribute/Source/AbstractSource.php`
  * `Magento/Eav/Model/Entity/Attribute/Source/Boolean.php`
  * `Magento/Eav/Model/Entity/Attribute/Source/Table.php`
  * `Magento/Tax/Model/TaxClass/Source/Product.php`
* Covered Magento library with unit tests :
  * `lib/internal/Magento/Framework/Simplexml/Config/Cache/AbstractCache.php`
  * `lib/internal/Magento/Framework/Simplexml/Config.php`
  * `lib/internal/Magento/Framework/Stdlib/DateTime/DateTime.php`
  * `lib/internal/Magento/Framework/Stdlib/DateTime/Timezone.php`
  * `lib/internal/Magento/Framework/Stdlib/String.php`
2014-07-18 09:05:47 -07:00
mage2-team 75b30dbc1c 2.0.0.0-dev77
* Themes update:
  * Blank theme was refactored to implement the mobile-first approach
* Fixed bugs:
  * Fixed an issue where it was impossible to place order using store credit
  * Fixed an issue where adding products with custom options from a wishlist to shopping cart caused an error
  * Fixed an issue where it was impossible to add a product to the shopping cart from the Wishlist sidebar
  * Fixed an issue where the Add to Wishlist drop-down arrow was missed on the category page on the frontend
  * Fixed an issue where it was impossible to manage multiple wishlists on the frontend if FPC was disabled
  * Fixed an issue where prices with taxes were not displayed on the category and product pages on the frontend
  * Fixed an issue where it was impossible to store cache when using either Varnish or built-in cache
  * Fixed an issue where all refactored indexers were in the REINDEX REQUIRED status after installation
  * Fixed an issue where admins with limited access could perform operations not allowed by role permissions
  * Fixed an issue where http links were generated instead of https links
  * Fixed an issue where it was impossible to use Subcategories when building a condition for a catalog price rule
  * Fixed an issue where a registered customer could not place an order using PayPal Payments Advanced
  * Fixed an issue where PayPal Settlement report was empty
  * Fixed an issue where a newly created subcategory was still active after switching to the Default category
  * Fixed an issue where it was impossible to save changes or remove a customer address on the backend
  * Fixed an issue where for an admin with restricted permissions previewing a newsletter template caused a fatal error
  * Fixed an issue where it was impossible to save a Tax Rate if specified that Zip was a range, and the Zip/Post Code field was left empty
  * Fixed an issue where Puerto Rico was listed both as a state and as a country
  * Fixed an issue where the Special Price was displayed instead of the place of Original Price in the Items Ordered column if the orders list.
  * Fixed an issue in Widget configuration where category check boxes did not stay selected when Anchor Categories were specified in the Display On drop-down list.
  * Fixed an issue where admin user password confirmation was not validated on the server side
  * Fixed an issue where adding a customer review caused an error
  * Fixed an issue where the incorrect error messages were displayed if an invalid email was entered during admin user or customer creation
  * Fixed an issue with the Debug section in developer settings, which should only be displayed for the website or store view scope level
  * Fixed an issue where the fatal error was displayed after uninstall if during installation it was specified to save session in the database
  * Fixed an issue where a wrong error message was displayed when a non-existing database was specified when installing Magento using the console install script
  * Fixed an issue where it was impossible to add products from a wishlist to a shopping cart
  * Fixed an issue where an error appeared after Magento installation
  * Improved the Blank theme UI
  * Fixed an issue with a zooming product image overlapped by category design on the frontend
  * Fixed an issue where it was impossible to select only billing or only shipping address when editing the user address on the frontend
  * Fixed an issue where it was impossible to view a Wishlist in the Wishlist Search widget
  * Fixed an issue where partial cache invalidation did not work for built-in caching
  * Fixed an issue where it was impossible to find a catalog event using the Countdown Ticker grid filter if the event had been specified to be displayed on both category and product pages
  * Fixed incorrect error messages displayed during customer registration
  * Fixed an issue where product attributes from other store views were displayed for products in a Wishlist
  * Fixed an issue where it was impossible to place an order without the CheckoutAgreements module
  * Fixed an issue where the Media Image attribute type was not available when creating the product attribute
  * Fixed an issue with incorrect label attribute for the State/Province drop-down list on the Shipping Information tab
  * Fixed an issue where using only digits in the SKU field of configurable products led to a confusing behavior
  * Fixed an issue where a catalog price rule was not shown on the catalog and product pages on the frontend
  * Fixed an issue where Recurring Profiles (payments) were available on the frontend for any registered user who had the URL
  * Fixed an issue where a credit card frame was absent on the Payment Information step of Onepage Checkout, if there was only one payment method with a credit card available
  * Fixed an issued where it was impossible to use inline translate for the My Account and Register links on the frontend
  * Fixed an issue where it was impossible to activate a customer using REST
  * Fixed an issue with the undefined version_compate method called in \lib\Magento\Connect\Validator.php
  * Fixed an issue with invalid XML formatting of Boolean in REST response
  * Fixed an issue where it was impossible to perform installation using index.php from the pub folder (problem with JS and CSS)
  * Fixed an issue where the Multiple Wishlist functionality did not work correctly with enabled Full Page Cache in the Chrome browser
  * Fixed an issue where it was impossible to change an admin frontname using console installation
  * Fixed an exception on the Transaction page when searching by payment method
  * Fixed an issue where the "Add to wishlist" link was displayed in catalog even when the Wishlist functionality was disabled
  * Fixed an issue where the system was broken if an admin user unassigned his own role
  * Fixed an issue with exceptions thrown on attempt to export products for users with store-level restrictions
  * Fixed an issue where two loaders were displayed when saving a category
  * Fixed an issue where it was impossible to search for a newsletter in the Newsletter grid
  * Fixed an issue where the displayed currency and product price were not changed after switching to a new currency
  * Fixed an issue with frontend crashing when deleting a product from a mini shopping cart
  * Fixed an issue where it was impossible to add a bundle product to a shopping cart
  * Fixed an issue where a configurable product base image disappeared when selecting product variations
* Functional tests:
  * Functional end-to-end tests publication
     * Bundle product
     * Category
     * Customer
     * Configurable product
     * Downloadable product
     * Newsletter
     * Review
     * Simple product
     * Sitemap
     * Store
     * Tax Rule
     * User
     * Virtual product
* Service layer updates:
  * Move CurrentCustomerService from Service to Helper
* GitHub requests:
  * [#544] (https://github.com/magento/magento2/issues/544) Performance tests not working
  * [#554] (https://github.com/magento/magento2/pull/554) Performance tests - Fix jmeter output format
  * [#525] (https://github.com/magento/magento2/pull/525) Fix typo in FS Generator help message
  * [#563] (https://github.com/magento/magento2/issues/563) Admin Login not working #563
2014-05-12 13:01:39 -07:00
mage2-team 9c2b633621 2.0.0.0-dev70
* 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
2014-03-21 15:46:47 -07:00
mage2-team 4ca7da2e16 2.0.0.0-dev65
* Fixed bugs:
  * Fixed inability to execute System Backup, Database Backup, and Media Backup
* Indexer implementation:
  * Implemented a new optimized Catalog Category Flat Indexer
* Cron improvements:
  * Added the ability to divide cron tasks into groups
  * Added the ability to run cron groups in separate processes
* Caching improvements:
  * Added a new mechanism to identify uniquely page content (hash-key for cache storage)
  * Added a tab for Page Cache mechanism in System Configuration
  * Implemented the ability to configure the Varnish caching server settings and download it as a .vcl file
* LESS pre-processing to CSS
  * LESS files in library, theme, module are automatically compiled to CSS during materialization
  * LESS files compilation caching mechanism added in Developer mode
* Modularity improvements:
  * Moved the Shortcut Buttons abstraction from PayPal to Catalog
  * Moved the Recurring Profile functionality to a separate module
  * Moved the Billing Agreements functionality to the PayPal module
* Improvements in code coverage calculation:
  * Added code coverage calculation in the clover xml format for unit tests
* GitHub requests:
 * [#377] (https://github.com/magento/magento2/issues/377) Remove and avoid javascript eval() calls
 * [#319] (https://github.com/magento/magento2/issues/319) No message was displayed when product added to shopping cart.
 * [#367] (https://github.com/magento/magento2/issues/367) Improve the error message from the contact form
 * [#469] (https://github.com/magento/magento2/issues/469) Can't change prices on different websites for custom options
* Updated the Customer service exception handling, and added tests
* Added usage of the Customer service to the Customer module, replacing some direct usage of the Customer model
* Updated various PHPDoc with the parameter and return types
2014-02-14 10:25:00 -08:00
mage2-team f98550dd6d 2.0.0.0-dev59
* 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
2014-01-03 09:19:39 -08:00
mage2-team b3d6949252 2.0.0.0-dev53
* Moved general action-related functionality to \Magento\App\Action\Action in the library. Removed Magento\Core\Controller\Varien\Action and related logic from the Magento_Core module
* Moved view-related methods from action interface to \Magento\App\ViewInterface with corresponding implementation
* Moved redirect creation logic from the action interface to \Magento\App\Response\RedirectInterface
* Moved Magento\Core common blocks to the library
* Added reading of etc/integration/config.xml and etc/integration/api.xml files for API Integrations
* Various improvements:
  * Email-related logic from the Core and Adminhtml modules consolidated in the new Email module
* GitHub requests:
  * [#238](https://github.com/magento/magento2/pull/238) -- Improve escaping HTML entities in URL
  * [#199](https://github.com/magento/magento2/pull/199) -- Replaced function calls to array_push with adding the elements directly
  * [#182](https://github.com/magento/magento2/pull/182) -- By default use collection _idFieldName for toOption* methods.
  * [#233](https://github.com/magento/magento2/pull/233) -- Google Rich Snippet Code
  * [#339](https://github.com/magento/magento2/pull/339) -- Correcting 'cahce' typo in documentation.
  * [#232](https://github.com/magento/magento2/pull/232) -- Update app/code/core/Mage/Checkout/controllers/CartController.php (fix issue #27632)
* Fixed bugs:
  * Fixed JavaScript error when printing orders from the frontend
  * Fixed Captcha problems on various forms when Captcha is enabled on the frontend
  * Fixed "Page not found" on category page if setting "Add Store Code to Urls" to "Yes" in the backend config
  * Fixed Fatal error when creating shipping label for returns
2013-11-22 10:29:33 -08:00
mage2-team 0849373d76 2.0.0.0-dev46
* 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
2013-10-04 13:46:03 -07:00