Skip to content

Releases: ocsigen/js_of_ocaml

3.8.0

21 Oct 14:24
Compare
Choose a tag to compare

CHANGES:

Features/Changes

  • compiler, ppx_js, ppx_deriving_json: port PPX's to ppxlib (#1041)

3.7.1

29 Sep 13:13
Compare
Choose a tag to compare

CHANGES:

Features/Changes

  • lib: Add Navigator.{vendor,maxTouchPoints} (#1062)
  • lib: adds the intersection observer API (#1063)

Bug fixes

  • compiler: revert of "Eliminate allocation of dummy function #1013"
  • compiler: fix for #1051 (#1052), Ensure the overflow warning is always displayed
  • runtime: add missing primitives for 4.11
  • lib: Fix resize-observer (#1058)

3.7.0

05 Aug 17:39
Compare
Choose a tag to compare

CHANGES:

Features/Changes

  • Runtime: allow one to override xmlHttpRequest.create (#1002)
  • Runtime: Change the semantic of MlBytes.toString, introduce MlBytes.toUtf16
  • Compiler: initial support for OCaml 4.11
  • Compiler: initial support for OCaml 4.12
  • Compiler: improve the javascript parser by relying on menhir
    incremental api.
  • Compiler: Eliminate allocation of dummy function #1013

Bug fixes

  • Compiler: fix code generation for recursive function under for-loops (#1009)
  • Compiler: the jsoo compiler compiled to javascript was not behaving correctly
    when parsing constant in the from the bytecode
  • Compiler: make sure inline doesn't loop indefinitly (#1043)
  • Compiler: fix bug generating invalid javascript for if-then construct (#1046)
  • Compiler: do not use polymorphic comparison when joining float values (#1048)
  • Lib: Rename msg to message in Worker (#1037)
  • Lib: fix graphics_js when build with separate compilation (#1029)

3.6.0

26 Apr 14:16
Compare
Choose a tag to compare

Features/Changes

  • Compiler: change compilation scheme for branches (#948)
  • Compiler: Introduce sub-command: link, build-runtime, build-fs (#987)
  • Compiler: embed javascript runtime in the compiler (#978)
  • Compiler: refactor javascript lexer/parser, add tests (#986)
  • Runtime: clean runtime for string vs bytes
  • Runtime: remove many old polyfill
  • Runtime: add unix_isatty
  • Runtime: optimize caml_call_gen (#996)
  • Runtime: change representation of int64 (#905)
  • Runtime: improve node.js backend for Sys.command (#979)
  • Runtime: add javascript runtime for Str (#998)
  • Lib: add closest method to element (#930)
  • Lib: add several methods and functions to Typed_array (#970)
  • Ppx: ppx_js behave better with merlin (#933)
  • Misc: Cleanup Meta files (e.g. js_of_ocaml.tyxml is no longer valid library name)
  • Misc: switch to ocamlformat.0.14

Bug fixes

  • Compiler: fix vardecl optim (#946)
  • Compiler: restore optimization when generating if statements
  • Compiler: fix javascript parser in the presence of line directives (#980)
  • Runtime: Catch nodejs errors and re-raise them as Sys_error
  • Runtime: fix caml_parse_sign_and_base and unsigned syntax
  • Runtime: fix caml_js_wrap_meth_callback_strict (#996)
  • Runtime: fix over-application of javascript callback (#996)
  • Runtime: fix partial-application of javascript callback (#996)
  • Runtime: fic caml_js_wrap_meth_callback_unsafe (#996)
  • Lib: Fix the type of blur and focus event to be focusEvent (#929)

3.5.2

14 Dec 06:22
Compare
Choose a tag to compare

CHANGES:

Features/Changes

  • Misc: support for ocaml 4.10
  • Misc: ppx_deriving_json uses ppxlib >= 0.9

Bug fixes

  • Runtime: fix pseudo fs initialization (#931)

3.5.1

17 Nov 01:12
Compare
Choose a tag to compare

CHANGES:

Features/Changes

Bug fixes

  • Runtime: fix poly compare with null and undefined (#920)
  • Lib: Deriving Json does not export an [import] unit
  • Dynlink/toplevel: export all units when no export file is specified (#921)
  • Ppx: ppx_deriving_json should allow [%to_json: t] syntax

3.5.0

10 Nov 13:45
Compare
Choose a tag to compare

CHANGES:

Features/Changes

  • Compiler: Improve testing of the compiler (Ty Overby)
  • Compiler: Add several macros for making the runtime easier to maintain (#771) (Ty Overby)
  • Compiler: Allow to emit one javascript per compilation unit (#783)
  • Compiler: refactoring (#781, #782, #787, #795, #802)
  • Compiler: more source map location for the javascript runtime (#795)
  • Compiler: tune variable naming (#838)
  • Compiler: Work around num lib incompatibility
  • Compiler: escape '</' in strings (#899)
  • Compiler: speedup toplevel creation
  • Runtime: support sharing when marshaling (#814)
  • Runtime: add caml_obj_with_tag
  • Runtime: support marshaling custom block
  • Runtime: complete rewrite of bigarray
  • Runtime: complete num implementation
  • Runtime: add caml_ba_hash
  • Runtime: rewrite polymorphic compare
  • Ppx: switch ppx rewriter to the OCaml 4.08 ast
  • Misc: Improve CI speed
  • Misc: remove ppx_deriving dependency
  • Misc: remove cppo dependency
  • Misc: remove ppx_tools_versioned dependency in ppx_deriving_json
  • Misc: support for ocaml 4.09
  • Misc: switch to ocamlformat.0.12
  • Misc: many more tests
  • Misc: new jsoo_fs tool to embed files in a jsoo pseudo fs.
  • Lib: Use expect tests
  • Lib: Add support for 'addEventListener' with options (#807)
  • Lib: Change api of [Lwt_js_events.async] (#862)
  • Lib: Change api of responseText in xmlhttprequest (#863)
  • Lib: add resizeObserver bindings
  • Lib: Added support for custom events (#877)
  • Lib: Added support for focus events (#885)
  • Lib: Added passive option support for Lwt_js_events module
  • Lib: Added bindings for pointer events (#894)

Bug fixes

  • Compiler: don't generate source if no-source-map passed (#780)
  • Compiler: Fix compilation of [Array.set] to return [unit]/0 (#792)
  • Compiler: Fix assertion failure (#828)
  • Compiler: Fix compilation of exception handlers (#830)
  • Compiler: Fix static evaluation of caml_equal (#906)
  • Misc: Fix install on windows (#794)
  • Lib: Fix Dom_svg.createForeignObject (#756)
  • Runtime: Fix caml_obj_tag, causing miscompilation with lazy value (#772)
  • Runtime: Fix caml_ml_seek_out, caml_ml_pos_out (#779) (Shachar Itzhaky)
  • Runtime: caml_parse_sign_and_base to support unsigned syntax (#792) (Shachar Itzhaky)
  • Runtime: fix encoding when printing to stdout (#800)
  • Runtime: Handle browserfs in fs_node detection logic (#831)
  • Runtime: fix Obj.tag (#832)
  • Runtime: fix marshalling of custom blocks (#861)
  • Runtime: fix frexp
  • Runtime: fix float printing with "%f" and large floats

Version 3.4.0

25 Oct 08:50
Compare
Choose a tag to compare

Features/Changes

  • Compiler: Support reproducible builds by using BUILD_PATH_PREFIX_MAP
  • Compiler: Remove support for ocaml < 4.02.3
  • Compiler: use paths from debug info when looking to looking cmis to embed
  • Compiler: refactoring, renaming
  • Compiler: make float literals look like float (#767)
  • Misc: use ocamlformat
  • Misc: dunify the build of the toplevel
  • Misc: support for OCaml 4.08
  • Lib: wrap js_of_ocaml-lwt, js_of_ocaml-tyxml, js_of_ocaml-toplevel, js_of_ocaml-compiler
  • Runtime: don't use deprecated [new Buffer] on nodejs (#726)

Bug fixes

  • Compiler: fix compilation of empty cma
  • Compiler: fix js parser with keyword as ident
  • Compiler, Runtime: make --setenv work with Sys.getenv_opt
  • Compiler: fix miscompilation of Obj.is_int with a match expression
  • Compiler: fix quadratic behaviour in findlib.ml
  • Compiler: prevent addition with a positively-signed number from being coalesced… (#764)
  • Compiler: Fix: static eval of String.get (#770)
  • Runtime: make obj_dup work on string/bytes
  • Runtime: fix bad hash function on int64
  • Runtime: avoid redundant conversion to string in fs_fake.js

Version 3.3.0

25 Oct 08:48
Compare
Choose a tag to compare

Features/Changes

  • Toplevel: [--toplevel] is now taken account when compilig cmo and cma.
  • Lib: make [Js.Unsafe.any] be [Js.Unsafe.top Js.t]
  • Lib: Improve generation of dummy stubs (#700)
  • Lib: Deprecate non namespaced module access
  • Lib: Upgrade to Tyxml 4.3.0
  • Misc: switch to dune
  • Misc: remove camlp4 support

Bug fixes

  • Toplevel: Fix dynlink of precompiled javascript files.
  • Lib: Fix encoding in Sys.set_channel_flusher (fix #686)
  • Runtime: fix the type of dataTransfer##.types
  • Runtime: add dummy implementation for caml_restore_raw_backtrace

Version 3.2.1

25 Oct 08:48
Compare
Choose a tag to compare

Bug fixes

  • Misc: Fix the dependencies of the Lwt logger
  • Runtime: fix semantic of bigstring_destroy_stub