Change Log

The changelog is sorted descending by release date and contains at least one chapter about:

  • New features
  • Breaking Changes
  • Deprecated Features, which will be removed in the next months
  • Removed Features
  • Fixed

jtsgen-0.6.0 (UNRELEASED)

Planned Features

  • generating classes
  • support for converting the documentation

jtsgen-0.5.0 <https://github.com/dzuvic/jtsgen/tree/jtsgen-0.5.0>`__ (2021-03-13)

New Features

  • The documentation has been expanded with a section about the contributors, building and extending tsgen
  • Tests for JDK 11 have been added
  • new options for generating enum
  • enum values are rendered each in a new line
  • documentation strings are rendered, but currently without any transformation to tsdoc
  • add export of java methods to typescript methods using @TSMethod annotation
  • add export of java constructors to typescript constructor functions using @TSConstructor annotation
  • add export of functional interfaces as function types
  • allow to rename exported methods/properties/types using the name property in annotations
  • new option to add a timestamp to the module comment
  • sort all kinds of outputs to simplify comparison of different versions
  • add support for nullable values: Property members will can be undefined, methods can return null
  • allow to add static imports in modules

Internal

  • Migrated to Gradle 6.8

Tickets

Implemented enhancements: - String enums as alternative to Numeric enums

  • Emit Java documentation #4

Fixed bugs:

  • java.lang.Boolean is not supported by default #52
  • Using JDK9 some tests fail #44

jtsgen-0.4.0 (2018-05-06)

New Features

  • Added documentation for Maven and Kotlin projects
  • Added Support for type bounds on classes and interfaces
  • Added support converting types without an annotation
  • Added support for non standard properties
  • Added support for different name mapping strategies

Breaking Changes

Type bounds of classes will be converted, but i don’t expect that this shouldn’t break any existing code.

Tickets

Implemented enhancements:

  • publish snapshot #48
  • Kotlin Boolean doesn’t show up #42
  • Bug: Generics in Ouput are missing #33

Fixed bugs:

  • Generating bogus Java types due to not aborting the converter recursion #46
  • Bug: wrong dependency in Processor #40

Closed issues:

  • Support generating Ouptput without an annotation #41
  • Add documentaion for maven #38
  • Support for converting external types #36
  • rename project packages prior deployment on maven central #12

Merged pull requests:

jtsgen-0.3.0 (2017-10-30)

New Features

  • @TSReadOnly annotated members are exported as readonly
  • support for literal mapping of types, e.g. Array<T> can be mapped to T[]
  • migrated documentation from markdown to sphinx
  • migrated from bintray to maven central

Breaking Changes

  • The default mechanism that generates readonly when only getters are visible has been removed. Use the @TSReadonly annotation to generate readonly members
  • The default conversion of collections and maps are changed to T[] and { index: K: V; }
  • the artifact are distributed on maven central. Removing the custom repository used till 0.2.x releases should be sufficient

Tickets

Implemented enhancements:

  • Bug: Java Bean Protocol not complete #32
  • Map Collection<T> to T[] instead of List<T> #28
  • Capability generate User-Defined Type Guards (enable basic TypeCheck at Runtime) #27

Fixed bugs:

  • NPE when Type Mapping is not available #34

Closed issues:

  • Make it available in maven central #37
  • iInheritance: Only add member, when not in super types #30
  • TSOption or TSReadOnly Annotation #17

Merged pull requests:

  • [add] support for boolean class attributes #33 #35 (fvonberg)

jtsgen-0.2.0 (2017-07-14)

New Features

  • Support for inheritance added
  • Selectable name space mapping strategy
  • Output file without any module or name space declaration

Breaking Change

  • The default name space mapping changes to “ALL_ROOT”
  • Defining a name space mapping doe not replace the calculated any more
  • Renamed the OutputType enum members

Tickets

Implemented enhancements:

  • change default name space mapping in order to avoid name spaces at all #26
  • Missing “NO_MODULE” OutputType #25
  • Please support inheritance #23
  • support exporting for direct usage #15
  • Support for no name space mapping #29

jtsgen-0.1.4 (2017-05-31)

Full Changelog

Implemented enhancements:

  • support exporting for direct usage #15

jtsgen-0.1.3 (2017-05-27)

Full Changelog

Implemented enhancements:

  • export java.lang.Object to Object instead of any #21

Fixed bugs:

  • enum not used, but converted, when namespac mapping removes the package #19
  • java.lang.Number -> number is not conveted #18
  • remove jtsgen directory in the output. only use the modulename as directory #14

Closed issues:

  • enable coverage using jacoco #22

jtsgen-0.1.2 (2017-05-15)

Full Changelog

Implemented enhancements:

  • support exporting only the d.ts file #16

Fixed bugs:

  • compile time dependency to guava #13

jtsgen-0.1.1 (2017-05-13)

Full Changelog

Implemented enhancements:

  • name space mapping #10

jtsgen-0.1.0 (2017-05-10)

Full Changelog

Implemented enhancements:

  • recursive type conversion of embedded types #11
  • Support for Generics and nesting Types #8
  • Support for Enums #6

Fixed bugs:

  • name space generation missing last character #9

jtsgen-0.0.2 (2017-04-26)

Implemented enhancements:

  • support for visibility of types and class attributes #5
  • Add support for ignoring part of the Java Type #3
  • User defined conversions #2

Closed issues:

  • publish jtsgen to a public repo #1

* This Change Log was automatically generated by `github_changelog_generator <https://github.com/skywinder/Github-Changelog-Generator>`__