logo
  • Home
  • Changelog
  • Documentation

2.5.0 | 2.4.7 | 2.4.6 | 2.4.5 | 2.4.3 | 2.4.2 | 2.4.1 | 2.4.0 | 2.3.3, 2.3.4 | 2.3.2 | 2.3.1 | 2.3.0 | 2.2.1 | 2.1.3 | 2.1.2 | 2.1.1 | 2.1.0 | 2.0.1 | 1.6.7 | 1.6.6 | 1.6.5 | 1.6.4 | 1.6.3 | 1.6.2 | 1.6.1 | 1.6.0 | 1.5.11 | 1.5.10 | 1.5.9 | 1.5.8 | 1.5.7 | 1.5.6 | 1.5.5 | 1.5.4 | 1.5.3 | 1.5.1 | 1.5.0 | 1.4.2 | 1.4.1 | 1.4.0 | 1.3.0 | 1.2.0 | 1.1.2 | 1.1.1 | 1.1.0 | 1.0.0

2.5.0

31.10.2021

Since version 2.5.0, release notes are added to the NuGet packages.

2.4.7

27.10.2019

Features
  • added .NET Core 3.0 support

2.4.6

18.10.2019

Bugfixes
  • help not showing

2.4.5

18.10.2019

Bugfixes
  • the .NET CLI tool would not work for .NET Core 3.0 because of the empty netcoreapp3.0 folder (artifact from an attempt to convert TypeGen to .NET Core 3.0)

2.4.3

9.10.2019

Bugfixes
  • PascalCase / camelCase converters not working properly if the name is only one character long
  • fixed removing "extensions" from folder names in barrel files (i.e. folders names being treated like file names and therefore the part after the last dot would be removed)

2.4.2

23.08.2019

Features
  • added the possibility to specify additional type unions for individual members or TypeScript types
  • added async methods to the Generator class
  • added filtering by file extension when generating barrels from generation specs (to ensure only TypeScript files are referenced in barrel files)
Bugfixes
  • fixed barrel file containing references to other barrel files when using the createIndexFile option together with generation specs

2.4.1

13.08.2019

Features
  • added the possibility to convert member names based on their MemberInfo

2.4.0

08.08.2019

Features
  • upgraded TypeGen CLI to .NET Core 2.2
  • added support for generating C# interfaces (no support for interface inheritance)
  • added the ability to use tab character instead of multiple spaces
  • added the ability to automatically build the project before generating files
  • added new barrel file generation functionality (and removed the temporary solution from version 2.3.3) - more info in the docs
  • removed the possibility of generating from a generation spec and attributes at the same time (the "useAttributesWithGenerationSpec" parameter)

2.3.3, 2.3.4

20.06.2019

Features
  • added ability to provide custom logic of generating index files (temporary solution)

2.3.2

30.05.2019

Bugfixes
  • enumStringInitializers don't take singleQuotes into consideration

2.3.1

18.05.2019

Features
  • added support for generating default values for C# properties
  • added support for generating default values for properties/fields if the declaring type is generic

2.3.0

08.05.2019

Bugfixes
  • added support for all enum underlying types (previously exceptions were thrown if the underlying type was different from System.Int32)
  • exception when a field is inside a generic type
  • improved behavior of reading OutputDir from ExportTs... attributes (eliminates weird import paths)
Features
  • added support for TypeScript default exports

2.2.1

25.04.2019

Bugfixes
  • added logging of the used NuGet paths when resolving assemblies
  • changed "(...)converter not found(...)" messages to "(...)type not found(...)"
  • fixed exception when removing the first converter in a converter collection
  • removed the default mapping from TimeSpan to Date
Features
  • added support for static TypeScript properties
  • added support for readonly TypeScript properties
  • added default translation from C# const fields (generates to TypeScript static readonly with a default value)
  • added automatic generation of assigned field's value
  • added an event in the Generator class that allows for defining custom logic for handling the generated TypeScript files' content
  • added logging of found assembly paths when resolving assemblies in verbose logging mode
  • removed IGenerator interface (programmatical API) - redundant
  • removed the add by regex feature in generation specs (the same can be achieved without this feature)
  • removed strictNullChecking option - redundant, as you can just use the csNullableTranslation parameter
  • added ability to log messages from the Generator class level (+ added a couple of new warnings happening on that level)

2.1.3

15.01.2019

Bugfixes
  • clearOutputDirectory doesn't work if directory doesn't exist (GitHub)
Features
  • now anonymous types are filtered out when generating from assembly (GitHub)
  • added option to change the default TypeScript file heading ("This is a TypeGen auto-generated file. (...)") (GitHub)

2.1.2

04.01.2019

Bugfixes
  • StackOverflowException when setting Generator.Options property (GitHub)

2.1.1

02.01.2019

Features
  • added option to clear the output directory before generating new files (GitHub)

2.1.0

27.12.2018

Features
  • added generation spec functionality (read more in documentation) (trello)
  • added option to specify generated C# types by their full name regex (GitHub)
  • added TypeScript enum string initializers support (GitHub)

1.6.7

26.09.2018

Bugfixes
  • slow resolution of missing assemblies over and over again (GitHub)

1.6.6

12.09.2018

Features
  • added cross-platform support (linux, mac os) (GitHub)
  • added logging of all generated files (GitHub)

1.6.5

16.08.2018

Bugfixes
  • TypeScript imports are incorrect if ExportTs...OutputDir doesn't end with slash (trello card)
  • private properties are generated (they should not be) (trello card)
  • IEnumerable and IDictionary (non-generic) should also map to TypeScript arrays and dictionaries (trello card)
  • base class generic custom types (in 'nested' generics) not added to import (trello card)
Other
  • added unit tests and acceptance test

1.6.4

05.07.2018

Features
  • added Options property to IGenerator interface (trello card)
  • added method to IGenerator interface to generate from multiple assemblies (GitHub pull request, trello card)
  • added option to generate global index (barrel) file (GitHub pull request, trello card)

1.6.3

27.06.2018

Bugfixes
  • missing directory separator in imports (trello card)
  • two imports added if ImportPath is specified in CustomBaseAttribute (trello card)
  • CustomBaseAttribute not working if no base class declared in C# (trello card)
Features
  • added ability to specify import path in CustomBaseAttribute (trello card)
  • changed syntax for TypeGen .NET Command Line tool (trello card)

1.6.2

19.06.2018

Bugfixes
  • changed default 'outputPath' value to "" instead of null (trello card)
  • added version checking when resolving assemblies (trello card)
  • added additional folders to search in AssemblyResolve ('global' NuGet fallback, dotnet shared) (trello card)
Features
  • added default value for ProjectFolder parameter in DotNet CLI version (trello card)

1.6.1

08.06.2018

Features
  • updated templates to fulfill jsdoc-format rules (GitHub)
  • created DotNetCli version (GitHub)

1.6.0

22.10.2017

Features
  • project and config paths in CLI can now be absolute (trello card)
  • when resolving .NET Core assemblies, NuGet folders (global + project and machine-wide fallback folders) are now searched by default (trello card)
  • improved expected speed of searching for .NET Core assemblies (trello card)
  • added TsOptional attribute for marking optional interface properties (trello card)
  • added TsCustomBase attribute for overriding default base class definition (trello card)
  • added TsIgnoreBase attribute for removing base class definition and skipping base class TS file generation (trello card)
  • added support for TypeScript2 strict null checking mode (trello card)
  • removed unnecessary edge-case for imported type name resolution (trello card)
  • code: removed duplication in extension and business classes (trello card)

1.5.11

14.10.2017

Bugfixes
  • Parsing complex custom types (in imports) (GitHub issue)
  • TsDefaultValue mucks up property names (GitHub issue)
Features
  • added explicit type for properties with default value (#74 @ tab #35 [misc improvements])
  • added cross-platform paths support (#75 @ tab #35 [misc improvements])

1.5.10

12.10.2017

Bugfixes
  • added cross-platform support for directories in CLI (GitHub pull request)

1.5.9

12.10.2017

Bugfixes
  • fixed assembly resolution issue (GitHub issue)
Features
  • added <global-packages> directory alias for the global NuGet packages directory (GitHub issue)

1.5.8

05.10.2017

Features
  • added support for all C# built-in types (GitHub issue)

1.5.7

05.10.2017

Features
  • added compatibility for .NET Standard 2.0 (GitHub issue)
  • added support for const enums (GitHub issue)

1.5.6

18.07.2017

Bugfixes
  • Self-referencing class creates duplicate identifier (GitHub issue)
  • Generic type parameters 'extends' in member type (GitHub issue)

1.5.5

23.03.2017

Features
  • added info about currently generated type (type "stack") in exception message (#65)
  • removed "invalid usage" message (showing help instead) (#66)

1.5.4

17.03.2017

Bugfixes
  • System.Guid & GENERIC ERROR: Object reference not set to an instance of an object (GitHub issue)

1.5.3

25.02.2017

Bugfixes
  • programmatical API - not generating property classes when generating for a type (#55)
  • circular reference creates Stack Overflow (continued GitHub issue)
Features
  • added more info when assembly reference cannot be resolved (suggestion to set externalAssemblyPaths parameter) (#47)
  • added TypeGen to chocolatey

1.5.1

07.02.2017

Bugfixes
  • default assembly search strategy not able to find project's assembly in .NET Core applications (GitHub issue)
  • circular reference causing Stack Overflow exception - fixed for .NET Core version (GitHub issue)
Features
  • added outputPath CLI config parameter (GitHub issue)
  • added CLI warning when using deprecated assemblyPath config parameter

1.5.0

31.01.2017

Bugfixes
  • CLI searching for the default assembly even though "assemblies" is non-empty (#22)
Features
  • added .NET Core support (GitHub issue)

1.4.2

07.02.2017

Bugfixes
  • circular reference causing Stack Overflow exception - fixed for .NET 4.0 version (GitHub issue)

1.4.1

16.01.2017

Bugfixes
  • changing GeneratorOptions property does not affect the generation (#17)

1.4.0

16.01.2017

Bugfixes
  • concrete type in generic base class definition, e.g. BaseClass<number> (#14)
  • TsDefaultTypeOutputAttribute's OutputDir property ignored in "imports" section (#15)
Features
  • added "any" to TsType enum (#2)
  • ability to configure single or double quotes for TS code (#4)
  • ability to specify multiple assemblies per tgconfig.json (#5)
  • ability to specify multiple projects per CLI execution (#7)
  • ability to add generated files to the project file (*.csproj) (#12)
  • replaced keep-ts tag with custom-body and custom-head tags (#8)
  • removed NoChangeConverter - empty chain is used for no conversion (#6)

1.3.0

18.09.2016

Bugfixes
  • TsType attribute not taken into consideration when generating the "imports" section
Features
  • added option to preserve a part of TS file (keep-ts tag)
  • added support for dictionaries
  • DateTime is now automatically converted to Date TS type
  • added support for dynamic keyword (generated as any)
  • switched .NET Framework version to 4.0 (from 3.5) - because of dynamic keyword support
  • added stack trace to CLI errors
  • added ImportPath and OriginalTypeName to TsType attribute (for custom type import path and alias)
  • added option to specify custom property/field name (TsMemberNameAttribute)

1.2.0

04.09.2016

Bugfixes
  • wrong generation of imports for TS interfaces
  • paths for imports having incorrect path prefix (problem with assessing the difference in levels between paths)
Features
  • added ability to export property's type to a specific path if no ExportTs attribute is present for this type (i.e. added TsDefaultTypeOutput attribute)
  • added support for inheritance
  • added support for user-defined generic classes

1.1.2

16.08.2016

Sorry, I can't find any track of what was changed in version 1.1.2, but it was probably some bugfix.

1.1.1

15.08.2016

Bugfixes
  • wrong translation of project file names to DLL file names for projects with dots in their names

1.1.0

14.08.2016

Bugfixes
  • inability to annotate fields with TsDefaultValue and TsIgnore attributes
Features
  • added option to specify converters as params array in converter collection's constructor (programmatical API)
  • created an interface for Generator class (programmatical API; for mocking when unit testing)
  • added ability to override TS type for a class member (TsType attribute)
  • added Get-Cwd option in CLI (shows the current working directory)

1.0.0

24.07.2016

Initial release
© 2023 Jacek Burzyński
  • Report an issue
  • License