Releases: ocsigen/ts2ocaml
Releases · ocsigen/ts2ocaml
1.4.1
1.4.0
- Upgrade js_of_ocaml to 4.0 and dune to 3.0.
- Perform massive refactoring on the generated bindings (breaking changes).
- Anonymous interface modules are now generated in the module where they are actually used.
- Changed the representation of untagged union types and intersection types to make it easier to use.
('a, 'b) and_
and('a, 'b) or_
types are removed in this change.
- Union types appearing as argument of function are now emitted in a simpler form:
[`U1 of t1 | `U2 of t2 | .. ] [@js.union]
.- Now you don't have to do
Union.inject_n
on function arguments.
- Now you don't have to do
- Union of primitive types are now represented as
[...] Primitive.t
.- Use
Primitive.classify
function to convert it to a polymorphic variant, on which you canmatch
directly. 'a or_XXX
types are removed in this change.
- Use
- Ts2ocaml now emits builder function
[@js.builder]
for POJO interfaces. - Add an option
--readable-names
to try to use more readable names instead ofAnonymousInterfaceN
. - Fix a bug which prevented ts2ocaml from generating class constructors if not defined explicitly.
1.4.0-beta.6
- Upgraded js_of_ocaml to 4.0 and dune to 3.0.
1.4.0-beta.5
- Changed the representation of untagged union types and intersection types to make it easier to use.
('a, 'b) and_
and('a, 'b) or_
types are removed in this change.- This is a breaking change.
- Union types appearing as argument of function are now emitted in a simpler form:
[`U1 of t1 | `U2 of t2 | .. ] [@js.union]
.- Now you don't have to do
Union.inject_n
on function arguments. - This is a breaking change.
- Now you don't have to do
- Union of primitive types are now represented as
[...] Primitive.t
.- Use
Primitive.classify
function to convert it to a polymorphic variant, on which you canmatch
directly. 'a or_XXX
types are removed in this change.- This is a breaking change.
- Use
1.4.0-beta.4
- Ts2ocaml now emits builder function
[@js.builder]
for POJO interfaces.
1.4.0-beta.3
- Add option
--human-readable-anonymous-interface-names
(or--readable-names
) to try to use more readable names instead ofAnonymousInterfaceN
.
1.4.0-beta.2
- Fix a bug which prevented ts2ocaml from generating anonymous interfaces when used with
--simplify=named-interface-value
1.4.0-beta.1
Pre-released because more changes and improvements are planned to be included in 1.4.0.
- Fix a bug which prevented ts2ocaml from generating classes without default constructors.
1.4.0-beta.0
Pre-released because more changes and improvements are planned to be included in 1.4.0.
- Perform massive internal refactoring.
- Anonymous interface modules are now generated in the module where they are actually used.
- This is a breaking change.
- Fix a bug which prevented ts2ocaml from generating class constructors if not defined explicitly.