Developers: Packaging Extensions in Magento 1.5 Explained
Greetings Magento Community,
We've made changes on Magento 1.5 and there are some important changes for developers and merchants using Magento Connect that you should be aware of.
Packaging Extensions on 1.5
Packaging extensions using 1.5 has some minor syntactical changes from previous versions. Please see our new documentation on packaging an extension using Magento 1.5.
The significant changes are:
- When packaging extensions, the channel field now uses the single word community. Extensions packaged prior to 1.5 use the words magento-community in the channel field.
- When packaging an extension, you now have the option to package your extension for Magento shops that are 22.214.171.124 & later version (2.0) or for shops pre 126.96.36.199. (1.0)
- When you click on the Save data and Create Package button to generate the tar.gz package file, the 2.0 extension file is now created in the var/connect directory. The 1.0 extension file is generated in the var/pear directory. This means there are two individual files - one for 1.0 and one for 2.0.
IMPORTANT NOTE: For broader extension support for free (unpaid) community extensions, it is best to package using pre-188.8.131.52 option. When uploading the 1.0 version from var/pear -- Magento Connect will make the 2.0 version for you. If you wish to only support 1.5 and higher versions of Magento only then only upload the 2.0 file from the var/connect directory to Magento. If you are trying to create separate packages (such as to upload both a 1.0 and 2.0 version to your site for a PAID extension, or if you want different version numbers for different releases) then you must select both options when packaging which generates both 1.0 and 2.0 file types.
Make sure that you add this information to your extension description so that merchants are aware of the supported versions of your extensions.
Additionally, if you have previously uploaded a 1.5+ (2.0 only) extension and would like it to have support for Pre 1.5 (1.0) as well, repackage the existing extension with a new version number but be sure to upload the file from the var/pear directory when adding to Magento Connect. This will update both versions but also give you a 1.0 version for Pre 1.5.
Incomplete Extension Information
If you have previously attempted to upload an extension and that extension is listed as pending/incomplete, you can still recover this extension by properly packaging the extension using a new version number and uploading the update under the existing extension.You cannot use the same version number.
What's the difference between 1.0 and 2.0 Extensions?
You may have noticed that Magento Connect Marketplace now has both 1.0 and 2.0 extensions. If you are on a Magento shop prior to 1.5, use extensions labeled as 1.0. Systems 1.5 and later use the 2.0 extensions. It is important to be aware of the differences.
Beta vs. Stable Extensions
If you package and uploaded a Beta or Alpha extension - please add this information into the extension description. It's important for the community to be aware that they'll need to change their stability settings on the back-end of Magento Connect Manager. Magento Connect Manager's Preferred State defaults to "Stable" extensions and attempting to install a beta extension with this setting results in a "Not Detected" error message as the system is not detecting the Stable extension.
To change this setting:
- Select System->Configuration-> from your store's admin panel.
- Log into Magento Connect
- Click the Settings tab
- Use the pull-down menu to select your perferred state (stable, alpha, beta)
- Click Save
If you have any questions about Magento Connect or looking for updated information, please check into our Connect Community Forum. This forum has all the latest information on extensions, guidelines, as well as any issues that you as a developer, may need to be aware of.
As always, feel free to if you have any questions.