All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Possibility to collect property values from YAML file instead of console prompts
- Exemplary YAML files for the following templates:
block
categoryAttributes
configField
emailTemplate
viewModel
- Demo GIFs in readme file
.gitattributes
file
- Readme file updated with description of all options of
template:generate
command
- Inline edit error thrown on save for grid generated using
crud
template
--dry-run
option intemplate:generate
command
- Template:
categoryAttributes
- Possibility to add validators for string properties
php_class_name
string property validator- New default properties:
copyrightComments
headerPHP
headerXML
headerHTML
headerJS
headerLESS
- Header of each template file is now generated automatically basing on new default properties
- All templates with properties expecting PHP class name were updated to use new
php_class_name
string property validator
required
validation fails if the answer to the question is "0"
- Template:
customerAttributes
- Possibility to generate multiple versions of same file - one for each item of array property
--force-merge
option intemplate:generate
command- Information about MIT license
model
template: Collection Processor is now used forgetList
method of entity repositoryaddProductAttributes
template:- Renaming to
productAttributes
- Refactoring of data patch file - now one file will be generated for each attribute specified in input
- Added ability to generate custom source model with values and labels specified in input
- Revert patch added
- Renaming to
template:generate
command questions corrupted for nested arrays
- PHPCS setup for CI
- PHPMD setup for CI
- All templates refactored to use PHP 7.4 with strict typing and Magento coding standards
- The whole codebase refactored to use PHP 7.4 with strict typing, PSR12 and the following PHPMD rule sets: cleancode, codesize, controversial, design, unusedcode
- PHPUnit updated to version 9
- Update of readme and dev docs
- Update of all dependencies to current compatible versions
widget
template generating invalid XML if no properties were defined
- Missing event prefix in model classes ZZ01-125
module
template: composer.json PHP version property ZZ01-122
- Use raw value of
commentsCompanyName
in comments in all templates ZZ01-121
- Compatibility with Magento 2.4.x ZZ01-115
modelRelation1To1
andmodelRelation1ToN
templates marked as experimental
addProductAttributes
template: invalid XML declaration in extension_attributes.xml file ZZ01-116addProductAttributes
template: patch dependencies are not generated ZZ01-119configField
template: syntax error in generated code for global scope ZZ01-120eventObserver
template: events.xml merged incorrectly ZZ01-117jsModule
template: incorrect escaping of JSON config ZZ01-118quoteFields
template: invalid interfaces used in generated code ZZ01-112
- Template type definition ZZ01-72
- Template type:
basic
ZZ01-72 - Template type:
root
ZZ01-72 - Template type:
module
ZZ01-72 - Template:
cache
ZZ01-71 - Template:
import
ZZ01-104 - Template:
jsMixin
ZZ01-69 - Template:
modelRelation1To1
ZZ01-90 - Template:
modelRelation1ToN
ZZ01-89 - Template:
searchCriteriaUsage
ZZ01-66 - Template:
theme
ZZ01-99 - File merger:
app/etc/config.php
ZZ01-98 - File merger:
cache.xml
ZZ01-71 - File merger:
import.xml
ZZ01-104 - File merger:
module.xml
ZZ01-101 - Twig filter:
pluralize
ZZ01-88 - Possibility to use
depend
property param on an array item ZZ01-84
- Refactoring of template generation: template object is now represented by a model ZZ01-72
- Refactoring of template generation: template properties have now cleaner structure, property builders were introduced and used in property factories ZZ01-86
- Options for JSON merger can be now injected in constructor ZZ01-101
- Template:
consoleCommand
(changed convention of naming command/filepath) ZZ01-107
declare (strict_types=1)
is not merged correctly by PHP merger ZZ01-108
- Dev documentation about
depend
andrequired
property params ZZ01-83
- Behavior of
camel
,pascal
,snake
andkebab
filters for strings with multiple capital letters ZZ01-100
- Error thrown when trying to generate code from external template ZZ01-102
- "The attribute 'length' is not allowed" error thrown when generating 'model' or 'quoteFields' template ZZ01-96
- Issue of
frontPageController
andfrontPostController
templates generating invalid code for controller action namedaction
ZZ01-95
- Issue of
addProductAttributes
template parampatchDependencies
being required ZZ01-87
- Template:
addProductAttributes
ZZ01-46 - Template:
apiEndpoint
ZZ01-61 - Template:
cron
ZZ01-70 - Template:
emailTemplate
ZZ01-65 - Template:
jsModule
ZZ01-63 - Template:
quoteFields
ZZ01-59 - File merger:
cron_groups.xml
ZZ01-70 - File merger:
crontab.xml
ZZ01-70 - File merger:
email_templates.xml
ZZ01-65 - File merger:
extension_attributes.xml
ZZ01-59 - File merger:
fieldset.xml
ZZ01-59 - File merger: JSON ZZ01-74
- File merger:
requirejs-config.js
ZZ01-63 - File merger: UI listing component ZZ01-45
- File merger: UI form component ZZ01-45
- File merger:
webapi.xml
ZZ01-61 - Template config parameter:
isAbstract
ZZ01-50 - Property attribute:
required
(for top-level properties) ZZ01-85 - Property attribute:
required
(for array property children) ZZ01-61 - Property attribute:
depend
(for top-level properties) ZZ01-70 - Unit tests for PHP file merger ZZ01-73
- Generated files with empty content are now not saved ZZ01-70
- Possibility to use codegen.yml config file from Magento root ZZ01-77
- Possibility to define additional folders with templates ZZ01-78
- Basic Bitbucket pipeline ZZ01-82
- Changelog file ZZ01-85
- All templates from 1.0.0 updated to use
required
property attribute ZZ01-85
- Unnecessary Magento Composer repository definition in
composer.json