From 4d6e99300d35370e24b0157a7e137f771ac9b4a8 Mon Sep 17 00:00:00 2001 From: Igor Date: Mon, 26 Oct 2020 10:12:25 -0500 Subject: [PATCH 1/4] Removed M1 references from Extension review guidelines also fixed links from 2.3 to 2.4 --- .../sellers/technical-review-guidelines.md | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/src/marketplace/sellers/technical-review-guidelines.md b/src/marketplace/sellers/technical-review-guidelines.md index 6a3d6ae5242..ee3f41d8f2c 100644 --- a/src/marketplace/sellers/technical-review-guidelines.md +++ b/src/marketplace/sellers/technical-review-guidelines.md @@ -18,19 +18,18 @@ The submitted package must be a Magento module, theme, language pack, or metapac |Language Pack|`language.xml`| |Metapackage|`composer.json`| -Developers of Magento 2.x extensions can use the validation tool to test the package before it is submitted to Magento Marketplace. To download the tool, see the Marketplace Tools GitHub repository. +Extension developers can use the validation tool to test the package before it is submitted to Magento Marketplace. To download the tool, see the Marketplace Tools GitHub repository. _See also:_ -- [PHP Developer Guide]({{ site.baseurl }}/guides/v2.3/extension-dev-guide/bk-extension-dev-guide.html) -- [How to Package Magento Extensions]({{ site.baseurl }}/guides/v2.3/extension-dev-guide/package/package_module.html) -- [Packaging Magento Version 1.x Extensions]({{ site.baseurl }}/marketplace/sellers/packaging-v1x-extensions.html) +- [PHP Developer Guide]({{ site.baseurl }}/guides/v2.4/extension-dev-guide/bk-extension-dev-guide.html) +- [How to Package Magento Extensions]({{ site.baseurl }}/guides/v2.4/extension-dev-guide/package/package_module.html) ## Coding Standards: Check code quality/syntax The Marketplace coding standard review uses a custom set of coding sniffs. If the submitted code fails to pass the review, a technical report is generated that describes each issue found, and its location in the codebase. -_See also:_ [Coding Standards]({{ site.baseurl }}/guides/v2.3/coding-standards/bk-coding-standards.html) +_See also:_ [Coding Standards]({{ site.baseurl }}/guides/v2.4/coding-standards/bk-coding-standards.html) ### Package Validation: verify that submitted code is a valid Magento extension @@ -63,7 +62,7 @@ Any code submitted for technical review at [Magento Developers Portal](https://d - `magento/product-community-edition` - `magento/magento2-ee-base` - `magento/product-enterprise-edition` -1. The package does not use `*` as a version restriction for Magento packages (packages with `magento` vendor). Version restriction should be specified according to [recommendations](https://devdocs.magento.com/guides/v2.3/extension-dev-guide/versioning/dependencies.html?itm_source=devdocs&itm_medium=quick_search&itm_campaign=federated_search&itm_term=versio#determine-module-dependency). +1. The package does not use `*` as a version restriction for Magento packages (packages with `magento` vendor). Version restriction should be specified according to [recommendations](https://devdocs.magento.com/guides/v2.4/extension-dev-guide/versioning/dependencies.html?itm_source=devdocs&itm_medium=quick_search&itm_campaign=federated_search&itm_term=versio#determine-module-dependency). 1. [Require inline aliases](https://getcomposer.org/doc/articles/aliases.md#require-inline-alias) are not used in the `composer.json` file. Additional requirements for package declarations are applied depending on the package type. @@ -78,21 +77,21 @@ Packages of type `metapackage` must declare at least one dependency in the `requ All code and marketing content that is submitted to Magento Marketplace is checked for plagiarism to ensure that it has not been copied from existing Marketplace extensions or from the Magento codebase. -If the extension contains source code from the Community Edition of Magento 1.x or 2.x, the extension must be licensed under [Open Source License v. 3.0][3] and properly credit Adobe, Inc. +If the extension contains source code from the Community Edition, the extension must be licensed under [Open Source License v. 3.0][3] and properly credit Adobe, Inc. _See also:_ [OSL 3.0: A Better License for Open Source Software][4] ### Installation (M2 only): Verify that product installs correctly -Extensions for Magento 2.x are installed with Varnish Cache enabled for each supported version of PHP, and switched from development to [production mode]({{ site.baseurl }}/guides/v2.3/config-guide/cli/config-cli-subcommands-mode.html). If you have shared packages and dependencies required for your extension, also test installs and usage with those packages. +Extensions are installed with Varnish Cache enabled for each supported version of PHP, and switched from development to [production mode]({{ site.baseurl }}/guides/v2.4/config-guide/cli/config-cli-subcommands-mode.html). If you have shared packages and dependencies required for your extension, also test installs and usage with those packages. -_See also:_ [Magento System Requirements]({{ site.baseurl }}/guides/v2.3/install-gde/system-requirements.html) +_See also:_ [Magento System Requirements]({{ site.baseurl }}/guides/v2.4/install-gde/system-requirements.html) ### Page Caching (M2 only): Verify that Varnish works correctly In addition to the Production Mode test, cacheable pages are accessed to ensure that they are served directory from Varnish Cache. You will be notified if your extension fails the test. -_See also:_ [Configure and Use Varnish]({{ site.baseurl }}/guides/v2.3/config-guide/varnish/config-varnish.html) +_See also:_ [Configure and Use Varnish]({{ site.baseurl }}/guides/v2.4/config-guide/varnish/config-varnish.html) ### Quality Assurance (M2 only): Pass manual QA From 8c3d2441d265ee689c168dbbdd32599cda0d072d Mon Sep 17 00:00:00 2001 From: Igor Date: Mon, 26 Oct 2020 10:13:00 -0500 Subject: [PATCH 2/4] Removed M1 packaging article --- .../sellers/packaging-v1x-extensions.md | 210 ------------------ 1 file changed, 210 deletions(-) delete mode 100644 src/marketplace/sellers/packaging-v1x-extensions.md diff --git a/src/marketplace/sellers/packaging-v1x-extensions.md b/src/marketplace/sellers/packaging-v1x-extensions.md deleted file mode 100644 index c8d0abd0fbe..00000000000 --- a/src/marketplace/sellers/packaging-v1x-extensions.md +++ /dev/null @@ -1,210 +0,0 @@ ---- -group: marketplace-sellers -title: Packaging Magento Version 1.x Extensions ---- - -Extensions developed for Magento version 1.x have different packaging guidelines than [Magento version 2.x]({{ site.baseurl }}/guides/v2.3/extension-dev-guide/package/package_module.html). - -1. Log in to the Magento Admin. - -1. From the Admin, go to **System** > **Magento Connect** > **Package Extensions**. - - ![]({{ site.baseurl }}/marketplace/sellers/images/create-extension-package.png){: .zoom} - _Create Extension Package_ - - This takes you to the Create Extension Package page, which consists of six sections: - - - Package info - - Release info - - Authors - - Dependencies - - Contents - - Load local package - -## Section A: Package info - -Enter the name of the extension. It is good practice to keep the name short using simple words whenever possible. - -Formatting requirements: The name of an extension can be a combination of letters (a-z or A- Z), numbers (0-9), and the underscore character (\_). Other characters are not allowed. - -{: .bs-callout .bs-callout-info} -The name used in this field will be your extension key. It is case-sensitive. - -![]({{ site.baseurl }}/marketplace/sellers/images/package-info.png){: .zoom} -_Package Info_ - -### Channel - -The Channel field is required and determined by the version of Magento you are using to package your extension. Make sure to type it exactly as it is shown below. These fields are case sensitive. - -- If you are using Magento 1.5 or later to package your extension, type `community`. -- If you are using Magento 1.4 or prior to package your extension, type `connect.magentocommerce.com/community`. - -{: .bs-callout .bs-callout-info} -If the wrong channel is used during the packaging process, you will receive an error and will have to resubmit it. - -### Supported releases - -This field is intended for backward compatibility. - -- Select the option **Pre 1.5** if this extension supports Magento versions 1.4.x and lower. For these releases, the package will be created in PEAR format and all associated files will be saved in the magento/var/pear/ directory. -- Select the option **1.5.0.0 & later** if this extension supports Magento versions 1.5.x and later. For these releases, the package will be saved in the magento/var/connect directory. -- Select both options if this extension supports both older and newer versions. - -{: .bs-callout .bs-callout-info} -If you are using EE 1.9 or earlier versions this field is absent but this won’t affect extension packaging process. You can skip this step in this situation. - -### Upload and packaging options - -If you are packaging an extension using a Magento Pre 1.5 (i.e., 1.4.x and lower) version and the extension only supports Pre 1.5 versions of Magento use the following settings: - -- Channel: **connect.magentocommerce.com/community** -- Supported Releases: **Pre 1.5** -- Package file will appear in `/var/pear/`. Package will appear in PEAR format. - -{: .bs-callout .bs-callout-info} -If there is no `/var/pear` folder, create it before packaging your extension. - -If you are packaging an extension using a Magento 1.5 and later version and the extension only supports 1.5 and later versions of Magento use the following settings: - -- Channel: **Community** -- Supported releases: **1.5 & later** -- Package file will appear in `/var/connect/`. - -If you are packaging an extension using a Magento 1.5 and later version, but the extension supports both Magento Pre 1.5 and Magento 1.5 and later versions use the following settings: - -- Channel: **connect.magentocommerce.com/community** -- Supported Releases: **Pre 1.5 and 1.5 & later (select both)** -- Package will appear in `/var/pear`. - -{: .bs-callout .bs-callout-info} -Another package will be created in `/var/connect`. You will need this file if your extension is paid and you prefer to give customers the .tgz file to upload into their Magento Connect Manager. - -If you are supporting two extensions with the same name when one of them is compatible with Magento Pre 1.5 and another with Magento 1.5+ do the following: - -- Package version of your extension for Magento Pre 1.5 in Channel 1.0 format and [submit it to Magento Marketplace]({{ site.baseurl }}/marketplace/sellers/submit-for-review.html). -- Package new version of your extension for Magento versions 1.5+ in Channel 2.0 format and [submit it to Magento Marketplace]({{ site.baseurl }}/marketplace/sellers/submit-for-review.html). -- Package will appear in `/var/pear`. - -{: .bs-callout .bs-callout-info} -Version numbers for your Pre 1.5 and 1.5+ versions should be different. You are not allowed to upload several versions with the same version number to Magento Marketplace. - -{: .bs-callout .bs-callout-tip} -It’s a good idea to also mention information about the supported releases in the extensions description, so merchants can quickly know whether or not they can use it. - -### Summary and description - -Provide a brief summary and description about the extension. This is a required field. Magento uses this information in the extension review process. The summary will be displayed in Magento Marketplace. - -### License - -The License field is required. Select the license that your extension falls under. The full list of possible licenses as stated on the Magento community website is: - -- Open Software License (OSL) -- Mozilla Public License (MPL) -- Massachusetts Institute of Technology License (MITL) -- GNU Lesser General Public License (LGPL) -- GNU General Public License (GPL) -- Berkeley Software Distribution License (BSDL) -- Apache Software License (ASL) -- Academic Free License (AFL) -- You can specify another (commercial) license if you distribute the extension package as paid. - -{: .bs-callout .bs-callout-info} -If you are using EE 1.9 or earlier versions, this field is absent but this won’t affect extension packaging process. You can skip this step in such situation. - -### License URL - -Use this field to link to the license text. It is not required, but recommended. - -For example, http://opensource.org/licenses/osl-3.0.php - -## Section B: Release info - -In order to understand this process, see [Software Versioning][1]. - -![]({{ site.baseurl }}/marketplace/sellers/images/release-info.png){: .zoom} -_Release Info_ - -### Release version - -The release version can be any arbitrary number value that you want to use as the base version. This is often set to 1.0.0 or 10.0.0. It is critical, however, to increment the release version number every time you update and repackage this extension. To protect against incorrect release version inputs, Magento Marketplace will not allow you to upload the same version twice. - -### Release stability - -The release version can be any arbitrary number value that you want to use as the base version. This is often set to 1.0.0 or 10.0.0. It is critical, however, to increment the release version number every time you update and repackage this extension. To protect against incorrect release version inputs, Magento Marketplace will not allow you to upload the same version twice. - -Release stability can be set to: - -- Alpha -- Beta -- Stable - -By default, Magento Marketplace users are only allowed to install Stable release extensions. To download development, alpha, or beta releases, the user must change this setting in the backend of Magento Marketplace. If you upload a package with release stability alpha or beta, add this information into the extension description. - -{: .bs-callout .bs-callout-info} -Do not attempt to upload an extension with release stability Development. This option is used for testing purposes only. No Development release extensions will be approved. - -### Notes - -Add any notes you may have for this release. - -## Section C: Authors - -In the Authors section, type in the real name, user name, and email address of all members who contributed to this extension. The first user must match the user name of your Magento Developer account used to display your extensions on Magento Marketplace. - -![]({{ site.baseurl }}/marketplace/sellers/images/authors.png){: .zoom} -_Authors_ - -## Section D: Dependencies - -The dependencies tab is used to specify the dependence of our code in regard to the PHP version. If it is necessary, the dependence on other extension packages can be filled out as well. During the installation of an extension, the system will check it in regard to all versions specified for it, and if dependent extensions are not installed, Magento Marketplace offers to install them. Also, you can specify the dependence on the PHP extensions, for example, if your module uses GD library functions of the latest version. In this case, if a necessary PHP extension is not installed on the server, Marketplace will show an alert the administrator. - -The following example provides an example of dependency on the `Mage\_Core\_Modules` package. This means that our extension will only work with Magento versions within the set range. The PHP [`version\_compare`][2] function is used to verify the compatibility of versions during the extension installation. - -![]({{ site.baseurl }}/marketplace/sellers/images/dependencies.png){: .zoom} -_Dependencies_ - -## Section E: Contents - -This is one of the most important sections in the extension packaging process. It is also the easiest to mess up. Be careful here. - -For proper compilation of extension package contents, use the following tips for the Target field. The following options correspond to the path on the disk: - -- Magento Local module file - `./app/code/local` -- Magento Community module file - `./app/code/community` -- Magento Core team module file - `./app/code/core` -- Magento User Interface (layouts, templates) - `./app/design` -- Magento Global Configuration - `./app/etc` -- Magento PHP Library file - `./lib` -- Magento Locale language file - `./app/locale` -- Magento Media library - `./media` -- Magento Theme Skin (Images, CSS, JS) - `./skin` -- Magento Other web accessible file - `./` -- Magento PHPUnit test - `./tests` -- Magento other - `./` - -_Where “`./`” represents the Magento root directory._ - -In the Path field, enter the path relative to the path in the Target field. In the Include and Ignore fields, enter a regular expression which will check the path with the file name only for the rows where the Type field is set to Recursive Dir. A file to be included in the extension package must match the expression specified in the Include field. If the file matches the expression in the Ignore field, it will not be included in the extension package correspondingly. - -![]({{ site.baseurl }}/marketplace/sellers/images/contents.png){: .zoom} -_Contents_ - -## Section F: Load local package - -After you fill in all of the fields, click **Save Data and Create the Package**. - -This saves it in a package data file and creates a package file. - -**Package data file** - The package data file is an XML document that stores the rules for building the package. This file is saved on the disk in the magento/var/connect/ folder if packaged with Magento 1.5 and later or in the magento/var/pear directory if packaged using Magento 1.4 or prior. A different location can be specified if you click the Save As button. - -**Extension package file** - The Extension Package file contains all source code needed. In addition, the archive includes another file that is created by a packager - `package.xml`. This file contains information about the extension, including the description of the structure of files and folders included in the package, and md5 sum for each file. - -When the extension package file is ready, it can be [submitted for review]({{ site.baseurl }}/marketplace/sellers/submit-for-review.html). - -{: .bs-callout .bs-callout-info} -First you should set write permissions to the appropriate folders. - -[1]: https://en.wikipedia.org/wiki/Software_versioning -[2]: http://php.net/version-compare From 14aacc432da796a022a25e19efa90cd39922701c Mon Sep 17 00:00:00 2001 From: Igor Date: Mon, 26 Oct 2020 10:18:19 -0500 Subject: [PATCH 3/4] Fixed links to point to 2.4 release line --- .../sellers/technical-reference.md | 40 +++++++++---------- 1 file changed, 20 insertions(+), 20 deletions(-) diff --git a/src/marketplace/sellers/technical-reference.md b/src/marketplace/sellers/technical-reference.md index ec69b3b1143..b9cfcb50807 100644 --- a/src/marketplace/sellers/technical-reference.md +++ b/src/marketplace/sellers/technical-reference.md @@ -5,27 +5,27 @@ title: Technical Reference ## Guides -- [PHP Developer Guide]({{ site.baseurl }}/guides/v2.3/extension-dev-guide/bk-extension-dev-guide.html) -- [Magento Architecture]({{ site.baseurl }}/guides/v2.3/architecture/bk-architecture.html) -- [PHP Developers]({{ site.baseurl }}/guides/v2.3/extension-dev-guide/bk-extension-dev-guide.html) (includes code and packaging components for Marketplace) -- [Composer]({{ site.baseurl }}/guides/v2.3/extension-dev-guide/intro/intro-composer.html) -- [File Structure]({{ site.baseurl }}/guides/v2.3/extension-dev-guide/prepare/prepare_file-str.html) -- [Register]({{ site.baseurl }}/guides/v2.3/extension-dev-guide/build/component-registration.html) -- [Create]({{ site.baseurl }}/guides/v2.3/extension-dev-guide/build/build.html) -- [Enable]({{ site.baseurl }}/guides/v2.3/extension-dev-guide/build/enable-module.html) -- [Test]({{ site.baseurl }}/guides/v2.3/extension-dev-guide/validate/test-module.html) -- [Package]({{ site.baseurl }}/guides/v2.3/extension-dev-guide/package/package_module.html) -- [Coding Standards]({{ site.baseurl }}/guides/v2.3/coding-standards/bk-coding-standards.html) -- [Frontend Developers]({{ site.baseurl }}/guides/v2.3/frontend-dev-guide/bk-frontend-dev-guide.html) -- [Admin Pattern Library]({{ site.baseurl }}/guides/v2.3/pattern-library/bk-pattern.html) -- [JavaScript Developers]({{ site.baseurl }}/guides/v2.3/javascript-dev-guide/bk-javascript-dev-guide.html) -- [Magento Web APIs]({{ site.baseurl }}/guides/v2.3/get-started/bk-get-started-api.html) -- [REST]({{ site.baseurl }}/guides/v2.3/get-started/rest_front.html) -- [SOAP]({{ site.baseurl }}/guides/v2.3/get-started/soap/soap-web-api-calls.html) +- [PHP Developer Guide]({{ site.baseurl }}/guides/v2.4/extension-dev-guide/bk-extension-dev-guide.html) +- [Magento Architecture]({{ site.baseurl }}/guides/v2.4/architecture/bk-architecture.html) +- [PHP Developers]({{ site.baseurl }}/guides/v2.4/extension-dev-guide/bk-extension-dev-guide.html) (includes code and packaging components for Marketplace) +- [Composer]({{ site.baseurl }}/guides/v2.4/extension-dev-guide/intro/intro-composer.html) +- [File Structure]({{ site.baseurl }}/guides/v2.4/extension-dev-guide/prepare/prepare_file-str.html) +- [Register]({{ site.baseurl }}/guides/v2.4/extension-dev-guide/build/component-registration.html) +- [Create]({{ site.baseurl }}/guides/v2.4/extension-dev-guide/build/build.html) +- [Enable]({{ site.baseurl }}/guides/v2.4/extension-dev-guide/build/enable-module.html) +- [Test]({{ site.baseurl }}/guides/v2.4/extension-dev-guide/validate/test-module.html) +- [Package]({{ site.baseurl }}/guides/v2.4/extension-dev-guide/package/package_module.html) +- [Coding Standards]({{ site.baseurl }}/guides/v2.4/coding-standards/bk-coding-standards.html) +- [Frontend Developers]({{ site.baseurl }}/guides/v2.4/frontend-dev-guide/bk-frontend-dev-guide.html) +- [Admin Pattern Library]({{ site.baseurl }}/guides/v2.4/pattern-library/bk-pattern.html) +- [JavaScript Developers]({{ site.baseurl }}/guides/v2.4/javascript-dev-guide/bk-javascript-dev-guide.html) +- [Magento Web APIs]({{ site.baseurl }}/guides/v2.4/get-started/bk-get-started-api.html) +- [REST]({{ site.baseurl }}/guides/v2.4/get-started/rest_front.html) +- [SOAP]({{ site.baseurl }}/guides/v2.4/get-started/soap/soap-web-api-calls.html) - [Marketplace EQP API]({{ site.baseurl }}/marketplace/eqp/v1/api.html) ## System -- [Installation]({{ site.baseurl }}/guides/v2.3/install-gde/bk-install-guide.html) -- [Configuration]({{ site.baseurl }}/guides/v2.3/config-guide/bk-config-guide.html) -- [Component Manager]({{ site.baseurl }}/guides/v2.3/comp-mgr/bk-compman-upgrade-guide.html) (used by merchants to manage components) +- [Installation]({{ site.baseurl }}/guides/v2.4/install-gde/bk-install-guide.html) +- [Configuration]({{ site.baseurl }}/guides/v2.4/config-guide/bk-config-guide.html) +- [Component Manager]({{ site.baseurl }}/guides/v2.4/comp-mgr/bk-compman-upgrade-guide.html) (used by merchants to manage components) From 00526333db3af11a8ea22d841185204339c16a4e Mon Sep 17 00:00:00 2001 From: Kevin Harper Date: Sat, 31 Oct 2020 15:55:24 -0500 Subject: [PATCH 4/4] Update src/marketplace/sellers/technical-review-guidelines.md Co-authored-by: Barny Shergold --- src/marketplace/sellers/technical-review-guidelines.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/marketplace/sellers/technical-review-guidelines.md b/src/marketplace/sellers/technical-review-guidelines.md index ee3f41d8f2c..0d5dced4b82 100644 --- a/src/marketplace/sellers/technical-review-guidelines.md +++ b/src/marketplace/sellers/technical-review-guidelines.md @@ -77,7 +77,7 @@ Packages of type `metapackage` must declare at least one dependency in the `requ All code and marketing content that is submitted to Magento Marketplace is checked for plagiarism to ensure that it has not been copied from existing Marketplace extensions or from the Magento codebase. -If the extension contains source code from the Community Edition, the extension must be licensed under [Open Source License v. 3.0][3] and properly credit Adobe, Inc. +If the extension contains source code from the Open Source Edition, the extension must be licensed under [Open Source License v. 3.0][3] and properly credit Adobe, Inc. _See also:_ [OSL 3.0: A Better License for Open Source Software][4]