- added abstract class generation
- added
return
PHPdoc tag generation - added
throws
PHPdoc tag generation
- added documentation for packages
- fixed TwigTemplateEngine\Config\Locate
- extracted TwigTemplateEngine in its own package
- updated Template documentation for
pretty-printer
1.0.0-rc5
- updated
Build
for newPrettyPrinter
constructor
- extracted PrettyPrinter in its own package
BC breaks:
- removed
Memio\Memio\PrettyPrinter
namespace, useMemio\PrettyPrinter
instead.
- extracted Linter in its own package
BC breaks:
- removed
Memio\Validator\Constraint
namespace, useMemio\Linter
instead.
- extracted Validators to their own package
BC breaks:
- removed
Memio\Memio\Validator
namespace, useMemio\Validator
instead.
- extracted Models to their own package
BC breaks:
- removed
Memio\Memio\Model
namespace, useMemio\Model
instead.
- renamed gnugat/medio into memio/memio
- completed documentation
BC breaks:
- removed
Gnugat\Medio
namespace, useMemio\Memio
instead.
- added ObjectArgumentCanOnlyDefaultToNull constraint
- added deep validation
- added CollectionCannotHaveNameDuplicates constraint
Note: Validator now validates the structure in a file, constants/methods/properties in a structure and arguments in a method.
- added ContractMethodsCanOnlyBePublic constraint
- added ContractMethodsCannotBeFinal constraint
- added ContractMethodsCannotBeStatic constraint
- added ContractMethodsCannotHaveBody constraint
- fixed autoloading
- added MethodCannotBeAbstractAndHaveBody constraint
- added MethodCannotBeBothAbstractAndPrivate constraint
- added Validator
- added MethodCannotBeBothAbstractAndFinal constraint
- added default Path
Note: use
Gnugat\Medio\Config\Path::templates()
to get the templates default path.
- added Method PHPdoc generation
BC breaks:
- removed
Gnugat\Medio\Model\MethodPhpdoc
, useGnugat\Medio\Model\Phpdoc\MethodPhpdoc
instead.
- fixed Structure PHPdoc generation
- added Property PHPdoc generation
- added Argument default value generation
Note: Type#getName now returns the unqualified name. To get the fully qualified name, use Type#getFullyQualifiedName.
- added Structure PHPdoc generation
- added License header generation
- added final method generation
- added abstract method generation
- added tutorial documentation
BC breaks:
- moved structure from File constructor to setter
- added final class generation
- added property default value generation
- fixed FullyQualifiedName
- fixed File constructor
- added interface parents generation
- added class interfaces generation
- added class parent generation
- refactored FullyQualifiedName
- refactored PrettyPrinter
BC breaks:
- replaced Import by FullyQualifiedName
Note: PrettyPrinter now builds the TwigExtension (makes instanciation easier).
- added interface generation
- added class (standalone) generation
- refactored need_after_line
- refactored Type
BC break:
- added Structure argument to File constructor
- renamed getCollection methods into all (e.g getArgumentCollection becomes allArguments)
- renamed FullyQualifiedClassname into FullyQualifiedName
- removed Type from Argument constructor parameters (give directly the type as a string)
- refactored fully qualified classname management
- refactored collection management
BC break:
- removed Argument, Constant, Import, Method and Property collections
- added Imports (use statement) generation
- added Method's body generation
- improved documentation (introduction, installation, usage, cheat sheet and extending)
- added License header generation
- added Method and Property visibility
- added Method and Property staticness
- added Constants generation
- added Properties generation
- added Method's PHPdoc generation
- added static constructors to all Models
- added File (namespace, class, etc) generation
- added Methods generation
- moved fixtures in
examples/fixtures
- added Method generation
BC break:
- removed VariableArgumentCollectionFactory
- added
/gnugat/medio/templates
Puli's path
- added parameters argument to PrettyPrinter#generateCode
BC break:
- removed MultilineArgumentCollectionPrinter
- removed InlineArgumentCollectionPrinter
- added PrettyPrinter
- added Arguments generation
Note: Usage of single pretty printer (Model specific generation is done in Twig templates)
- added Type construction from variable
- added executable examples
- refactored Method (removed visibility, Arguments from constructor parameters)
- added Method generation
- added Method's PHPDoc generation
- added Arguments type hint generation
- added inline/multiline Arguments generation
BC Break:
- removed everything
Note: Usage of specialized pretty printers (each Model has its own generator)
- added Missing Constructor generation
- added DependencyInjectionCommand:
- Import generation
- Property with PHPdoc generation
- Constructor argument with PHPdoc generation
- Property initialization in constructor generation
Note: Usage of Redaktilo + regex to edit existing code