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.
- The
TestContext.ResetSettings
method to also reset thedestinationRoot
of the generator - All dependencies
- All dependencies
- Error when using custom prompts in generators based on ESModules
- Errors when creating generators based on ESModules
- All dependencies
- Converted the package to an ESModule
- All dependencies
bumpVersion
scripts for updating cross-workspace dependencies properly
- Vulnerabilities in dependencies
- All dependencies
- Vulnerabilities in dependencies
- Broken vscode settings
- Broken unit tests
- All dependencies
- Workspace to work with
npm
instead oflerna
- Type declarations thoroughly
- Test timeouts
- Linting environment
- Unnecessary scripts
- An error in the
BaseGeneratorFactory
which caused caused multiple instances of the sameBaseGeneratorFactory
-class to overwrite each other
- All dependencies
- Broken
ObjectExtensionFactory
by fixing type-declarations
- Tests for the
ObjectExtensionFactory
type-declaration
- All dependencies
- Broken type-declarations
- Tests for type-declarations
- All dependencies
- Broken release-scripts
- Drone-pipeline to prevent package-creation from being skipped
- All dependencies
- Settings to disable timeouts for mocha unit-tests
- Support for passing custom arguments and options to
@manuth/extended-yo-generator-test
'sTestContext.CreateGenerator
-method - Missing dependencies
- All dependencies
- Rename the
FileMappingOptions.WriteDestination
-method toWriteOutput
- All dependencies
- The
README
-file according to the new API
- Replaced
FileMappingTester.Content
withFileMappingTester.ReadSource()
- Replaced
JSONFileMappingTester.Metadata
withJSONFileMappingTester.ParseSource()
- Renamed
FileMappingTester.WriteDestination()
withFileMappingTester.WriteOutput()
- Added method
FileMappingTester.ReadOutput()
for reading the output-file andFileMappingTester.ReadFile()
for reading any file - Added method
JSONFileMappingTester.ParseOutput()
for parsing the output-file andJSONFileMappingTester.Parse()
for parsing text
- All dependencies
- Support for replacing objects of
PropertyResolver
s
- Broken code in the
PropertyResolver
-class - Drone-pipelines by preventing files from being removed
GeneratorConstructor
to use the actually passed arguments and options
- All dependencies
ObjectExtensionFactory
for the use with generators which providecustomPriorities
- Broken unit-tests
- Missing dependency
- All dependencies
ObjectExtensionFactory
for the use with generic base-classes
- Support for parallel step-execution in drone pipelines
- All dependencies
- Renamed
CompositeGeneratorConstructor
toGeneratorExtensionConstructor
- Renamed
IBaseGenerator
(interface) toGeneratorExtension
(abstract class)
- Vulnerabilities in dependencies
- TypeScript-settings
- All dependencies
- Settings for improving the debug-experience
- Settings for opening the terminal inside the correct directory
ComponentCollection.Categories
,ComponentCategory.Components
,Component.Questions
andComponent.FileMappings
to allow users to post-edit the collections
- Support for the Test Explorer UI
- Support for the
ts-nameof
plugin - Support for adding an ID to component-categories and file-mappings
- Missing extensions
- Support for instantiating generators using the
TestContext
- Vulnerabilities in dependencies
- All dependencies
- The module by adding a missing dependency
- A missing dependency
- All dependencies
- Issue caused by
yeoman-environment
andyeoman-generator@5
For more information, see yeoman/environment#309
- All dependencies
- The
yeoman-generator
type-declarations - All dependencies
- Updated yeoman-dependencies which requires
[email protected]^
to be installed in order to run generators usingExtendedYoGenerator
- All dependencies
- Vulnerabilities in dependencies
- Broken drone-pipelines
- A workflow for merging Dependabot-PRs
- A workflow for analyzing the code
- Drone-pipelines to use small-sized images
- Dependencies of the package
- The
yeoman-test
-dependency - Update tests as preparation for a yeoman-update
- Unnecessary dependencies
- Dependabot-settings for redundant directories
- Vulnerabilities in dependencies
- All dependencies
- Refactored typescript-settings
- Reordered export-statements
- Missing exports
- Broken Dependabot-settings
- All packages
- Incorrect types for composed constructors
- All packages
- The development-environment
- Export-statements for missing components
- Support for specifying the constructor of any generator using the
GeneratorConstructor<T>
type
- Support for making
IComponent.FileMappings
resolvable
- The
README
file for better understanding
This release brings back support for resolvable properties, though all properties (except for IFileMapping.Context
) must be synchronous.
- Support for synchronous resolvable values in
IFileMapping
s
In this release, handling file-mappings has been made easier by dropping support for resolvable properties which turned out to be quite useless for common use-cases.
- Support for resolvable values in file-mappings
- Support for promise-typed file-mappings
- A bug which prevented
FileMapping.Processor
s from working correctly
- Malformed
npm
-scripts
- A bug which prevented some paths from working with
Generator.ComposeWith
This release brings a handy new feature for making extending generators easier. Additionally a few classes have been added to the extended-yo-generator-test
which allow you to test the integrity of file-mappings including file-mappings written in JSON and JavaScript.
- A
Generator.ComposeWith
-method for inheriting generators
- Classes for testing general file-mappings, file-mappings written in JavaScript and file-mappings written in JSON
- An instance of
random-js
'Random
class to theTestContext
for generating random values
- Reverted the
destinationRoot
behavior
- Nonfunctioning TypeScript intellisense
- Support for setting the
moduleRoot
ofTestGenerator
s - Default
GeneratorOptions
for initializing generators - A method for resetting generator-settings in a
TestContext
- Public members to the
Generator
for improving the support for extending existing generators
- All packages
destinationRoot
s default behavior:- Invoking
Generator.destinationRoot
doesn't cause the current working directory to change anymore but. Passfalse
as the second argument to get the original behavior.
- Invoking
yeoman-generator
s behavior which caused the current working-directory to change
- Automated updates of the
.npmignore
file
- All dependencies
- Unit-tests to look consistent
- Support for the
initializing()
-method TestGenerator
class for testing generator-components- A default
TestContext.Default
for saidTestGenerator
- Mocha-tests for the new classes
- All packages
- Mocha-test layout
- Incorrect
thisArg
when resolvingFileMapping.Promise
- Incorrect
thisArg
when resolvingResolveFunction
s
- Essential components to the module-exports:
Component
which provides the functionality to resolveIComponent
objectsComponentCategory
which provides the functionality to resolveIComponentCategory
objectsComponentCollection
which provides the functionality to resolveIComponentCollection
objectsFileMapping
which provides the functionality to resolveIFileMapping
objectsPathResolver
which is used in theFileMapping
class for resolving partial pathsIGenerator
which represents an object with the most popular public members of theGenerator
class
- A method
Generator.commonTemplatePath(...path)
for resolving paths relative to./templates
- All dependencies
- Task for bumping version-numbers
- The
homepage
links of the packages
- A module for testing
ExtendedYoGenerator
s - Tests for the
ExtendedYoGeneratorTest
package
- Constructor of the
Generator
class to allow any type for theoption
argument
- All dependencies
- The lint-scripts for improving the linting-experience
- Missing sections in the
README
file
- Incorrect member-visibility of
Generator.FileMappings
- Add a property for declaring file-mappings
- The
README
file to match the new package-name
- Test-code for more comfortable type-checking
- Directory structure of the unit-tests
- The typescript-library
- Renamed the module to
@manuth/extended-yo-generator
- Renamed the export-member
GeneratorSetting
toGeneratorSettingKey
- The
ProvidedComponents
-property has been replaced byComponents
- Continuous integration for automated publishing
- Tests for all classes
- A property called
QuestionCollection
for manipulating all questions
- The CHANGELOG-file to match with the proposed format
- All dependencies
- Object-naming for better understanding
- The generator-code to only allow methods to be executed after initialization
- Object-structure for more simple usage of lazy-loaded component-properties
- Mocha-configuration for improving the testing-experience
- Refactor classes for enhanced testing
- Type-declarations for better auto-completion
- Type-declarations for better auto-completion
- The README-file for better understanding
- All dependencies
- Update vulnerable packages
- Exports for important classes and type-declarations
- Updated vulnerable dependencies
- Predefined
tslint
presets for better linting experience
- The mocha-integration for better testing-experience
- The user-interface
- The package to exclude
.map
-files, which are meant for debugging purposes only - The description of the package
- The README-file by replacing the
data://
-picture by an actual file
- Both the README and the CHANGELOG-file
- The generator-code to process all component file-mappings sequentially
- The UI for making component-questions more distinguishable
- The type-definitions for improving user-experience
- Errors when invoking
templatePath()
before theGenerator
is initialized
- Errors when invoking
modulePath()
before theGenerator
is initialized
- First release of the module
- An object-oriented implementation of the yeoman-generator
- A method for resolving paths relative to the generator-module
- Unit-tests for ensuring the functionality