Skip to content
This repository was archived by the owner on Nov 13, 2023. It is now read-only.

Releases: rescript-association/genType

v3.15.0

11 Mar 14:42

Choose a tag to compare

  • Add support for let%private: nothing is exported even when a @genType annotation is added.
  • [DCE] Add @dead annotations to both interface and implementation.
  • Add builtin support for Js.Date.t.

v3.14.0

04 Mar 09:45

Choose a tag to compare

Extensions of experimental dead code/type analysis.

  • Better annotations for .ml files.
  • Bug fixes.
  • Report on let _ = e when e has no side effects.

v3.13.0

27 Feb 16:56

Choose a tag to compare

  • Support new internal representation of bs.meth used in the forthcoming bucklescript 7.2.0.
  • Experimental global dead code/type analysis with CLI -dce and -dce-cmt for bucklescript and native projects respectively.
    Environment variables Whitelist=prefix and Blacklist=prefix can be used to filter which results are reported based on their paths. Use Write=1 to write @dead annotations directly in the source files.

v3.12.0

07 Feb 12:55

Choose a tag to compare

Add support for jsdoc comments in generated TypeScript output, and improve the naming of function arguments.

  • Emit Reason doc commments /** this is a doc comment */ as jsdoc in the TypeScript output.
  • Preserve the parameter names in function types emitted by the TypeScript back-end.
  • Treat a function with a single argument of unit type as if it had no arguments.

Example:

/**
  * Sign a message with a key.
  *
  * @param message - A message to be signed
  * @param key - The key with which to sign the message
  * @returns A signed message
 */
[@genType]
let signMessage = (. message, key) => message ++ string_of_int(key);

produces

/** 
  * Sign a message with a key.
  *
  * @param message - A message to be signed
  * @param key - The key with which to sign the message
  * @returns A signed message
  */
export const signMessage: (message:string, key:number) => string = DocstringsBS.signMessage;

v3.11.0

06 Feb 07:35

Choose a tag to compare

  • Fix issue where a shadowed declaration would be emitted instead of the shadowing one. See #354.
  • Emit Flow inexact types e.g. {name:string, ...}, supported from Flow version 0.84 onwards.
  • Emit eslint-disable in Untyped back-end.

v3.10.0

15 Jan 08:29

Choose a tag to compare

Changes:

  • 4daa1af 3.10.0
  • 57fb2d7 Fix issues where @genType.as on a type definition would omit type parameters.
  • 820d154 Update README.md
  • 5a33aa2 Update README.md
  • d82df74 [arnold] termination types.
  • fabfdc7 [arnold] Riddle.
  • 4cbd75d [arnold] Make Nothing command explicit to avoid no-op returning the previous command's Some/None.
  • aaf219f [arnold] example function that makes no progress yet appears to because doing nothing preserves returning Some/None.

This list of changes was auto generated.

v3.9.1

27 Dec 13:31

Choose a tag to compare

Internal.

v3.9.0

26 Dec 16:36

Choose a tag to compare

  • With TypeScript back-end, emit import of React when function components are exported.
    See #342.

v3.8.1

22 Dec 11:50

Choose a tag to compare

internal

v3.8.0

19 Dec 09:51

Choose a tag to compare