经历了好几个月沉寂之后，今天终于看到 Magento 一个新版 18.104.22.168。虽然我没去试用新版，但还是在第一时间关心了一下 Release Notes。我第一次逐行读完了 Release Notes，以前最多 scam it，这就是亲身体验者和旁观者的区别。
* Added ability to use static URLs for media in WYSIWYG or image browser. Added ability to enable parsing store, skin and media directives on catalog frontend. (这个功能我已经实现了，就是在 description output 上再套一个cms filter，我称之为 text engine。当然 magento core 实现得肯定比我好，以后我就删了我的 text engine)
* URL rewrites history: ability to auto-generate custom rewrite with redirect from old to new URL when changing product URL-key (这个问题我也想过，我没 magento core 那么能干，能做 auto-generated redirect，不过我觉得即使有 auto-generated redirect，把 url key 改来改去也不是回事，所以我建议取名需谨慎，定下的 url key不要改)
* Added ability to exclude a category from navigation menu (这个功能我也实现了，不光能控制 exclude from top navigation，还能控制 exclude from sitemap)
* Various improvements in system configuration UI. Introduced ability to make actual configuration structure to be independent on the system.xml structure
* Added “Only X left” inventory feature
* Implemented Centinel functionality in iphone theme
* Upgraded TinyMCE to v.3.3.2 (不知是否有了 auto-save?)
* Improved PayPal integration, includes:
* Recurring payment profiles entity and purchasing of “subscription” products. In checkout they are treated as “nominal” items.
* Billing agreements
* “Pending Review” order state, “Pending Review” and “Suspected Fraud” order statuses and logic related with this. Triggers by PayPal IPR, FMF and Unilateral payments.
* Functionality of transactions listing/searching and fetching from gateway
* Fetching PayPal settlement reports via SFTP
* Various improvements of PayPal integration on the frontend and admin UI
* Added notice about creating offline creditmemo from order view page.
* Added getter for recurring payment methods in payment helper.
* Implemented abstract block ability to have arbitrary groups of child blocks and a method that returns such a group. Implemented a method that fetches data from child block by specified alias.
* Implemented ability to specify “sort_order” instead of “before” and “after” in the totals declaration. All nominal totals declaration utilize “sort_order”
* Added getter for specified object data by key in core/template block: method getObjectData()
* Defined payment methods grouping, implemented getter for payment method list (with option to group them). Added ability to render grouped options in the “select” grid filter.
* Moneybookers: utilized the payment methods grouping for all its methods; removed redundant “translate” attribute in the methods definition in config.
* Utilized payment methods grouping for PayPal peyment methods.
* Added more verbosity to PayPal NVP and IPN debugging
* Sales module database structure changed from EAV into flat tables (没觉得 eav 有多慢，不过 magento 这么改肯定有它道理)
* Product custom URL rewrites redirect to SEF URL, rather than to catalog/product/view/id/ (这也是我考虑得比较多的问题，不过如果一个 product 归属多个 category，此改进后的 SEF URL 时能否正确显示 main category breadcrumb，能否配合 rel=”canonical” 使用？)
* Reimplemented frontend top menu rendering logic (cross-browser and usability improvements)
* Reviewed logic of the sales reports: Orders, Tax, Invoiced, Shipping, Refunds, Coupons
* Reimplemented bestsellers report
* Implemented 3D Secure validation for Maestro International and JCB cards
* Changed Shopping cart methods output (top + bottom): removed
* Moved the Payflow Pro payment method to PayPal module
* Refactored sales/service_quote model: instead of submit() method the submitAll() should be used. It can submit nominal items separately from the order. The methods for submitting nominal items and order separately – are available as well.
* Refactored onepage checkout model to use the new method sales/service_quote::submitAll(), added recurring profiles and billing agreements passing through the process until the success page
* Utilized child blocks grouping to improve flexibility of rendering additional information in catalog/product/view template. The group is called “detailed_info”; any block from layout may insert itself to this group.
* Removed redundant wrappers hard-coded into some catalog templates. Template of parent block is responsible for wrapping.
* Refactored onepage checkout success block and template: simplified fetching related checkout information, added ability to render billing agreement and recurring profiles that might be created with the payment placement.
* Fixed read/write connection issue during new customer order place. See http://www.magentocommerce.com/boards/viewthread/19363/P0/
* Fixed tax rule ZIP range matching (numeric values were matched as strings)
* Various tax fixes
* Optimized search reindex process
* PayPal and Payflow pro modules are officially backwards incompatible.
* The `sales_order_aggregated_created` table was re-created with new columns, it is not backwards compatible.
* Once upgraded, go to system configuration section and re-enter all PayPal-related settings carefully. Make sure to specify the proper merchant country and email.
* To avoid fatal errors with Payflow Pro and Amazonpayments modules, before upgrading cleanup their settings from database:
DELETE FROM `core_config_data` WHERE `path` LIKE ‘payment/verisign%’;
DELETE FROM `core_config_data` WHERE `path` LIKE ‘payment/amazonpayments%’;
(之前我已经亲自动手把 Amazonpayments 删出了数据库，倒没发现 Payflow Pro 的问题)