@grain/binaryen.ml 0.12.0 → 0.14.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (143) hide show
  1. {binaryen-archive-v0.12.0 → binaryen-archive}/.gitattributes +0 -0
  2. {binaryen-archive-v0.12.0 → binaryen-archive}/.gitignore +0 -0
  3. {binaryen-archive-v0.12.0 → binaryen-archive}/.gitmodules +0 -0
  4. {binaryen-archive-v0.12.0 → binaryen-archive}/CHANGELOG.md +42 -0
  5. {binaryen-archive-v0.12.0 → binaryen-archive}/LICENSE +0 -0
  6. {binaryen-archive-v0.12.0 → binaryen-archive}/README.md +24 -0
  7. {binaryen-archive-v0.12.0 → binaryen-archive}/binaryen.opam +7 -7
  8. {binaryen-archive-v0.12.0 → binaryen-archive}/dune +0 -0
  9. {binaryen-archive-v0.12.0 → binaryen-archive}/dune-project +0 -0
  10. {binaryen-archive-v0.12.0 → binaryen-archive}/dune-workspace +0 -0
  11. {binaryen-archive-v0.12.0 → binaryen-archive}/esy.lock/.gitattributes +0 -0
  12. {binaryen-archive-v0.12.0 → binaryen-archive}/esy.lock/.gitignore +0 -0
  13. {binaryen-archive-v0.12.0 → binaryen-archive}/esy.lock/index.json +355 -338
  14. {binaryen-archive-v0.12.0 → binaryen-archive}/esy.lock/opam/astring.0.8.5/opam +0 -0
  15. binaryen-archive/esy.lock/opam/base-bytes.base/opam +9 -0
  16. {binaryen-archive-v0.12.0 → binaryen-archive}/esy.lock/opam/base-threads.base/opam +0 -0
  17. {binaryen-archive-v0.12.0 → binaryen-archive}/esy.lock/opam/base-unix.base/opam +0 -0
  18. {binaryen-archive-v0.12.0/esy.lock/opam/base.v0.14.2 → binaryen-archive/esy.lock/opam/base.v0.14.3}/opam +2 -2
  19. {binaryen-archive-v0.12.0 → binaryen-archive}/esy.lock/opam/biniou.1.2.1/opam +0 -0
  20. {binaryen-archive-v0.12.0/esy.lock/opam/cmdliner.1.0.4 → binaryen-archive/esy.lock/opam/cmdliner.1.1.0}/opam +17 -20
  21. {binaryen-archive-v0.12.0 → binaryen-archive}/esy.lock/opam/cppo.1.6.8/opam +0 -0
  22. {binaryen-archive-v0.12.0 → binaryen-archive}/esy.lock/opam/csexp.1.5.1/opam +0 -0
  23. {binaryen-archive-v0.12.0/esy.lock/opam/dune-build-info.2.9.1 → binaryen-archive/esy.lock/opam/dune-build-info.2.9.3}/opam +5 -4
  24. {binaryen-archive-v0.12.0/esy.lock/opam/dune-configurator.2.9.1 → binaryen-archive/esy.lock/opam/dune-configurator.2.9.3}/opam +5 -4
  25. {binaryen-archive-v0.12.0/esy.lock/opam/dune.2.9.2 → binaryen-archive/esy.lock/opam/dune.2.9.3}/opam +4 -4
  26. {binaryen-archive-v0.12.0 → binaryen-archive}/esy.lock/opam/easy-format.1.3.2/opam +0 -0
  27. binaryen-archive/esy.lock/opam/either.1.0.0/opam +40 -0
  28. {binaryen-archive-v0.12.0 → binaryen-archive}/esy.lock/opam/fix.20220121/opam +0 -0
  29. {binaryen-archive-v0.12.0 → binaryen-archive}/esy.lock/opam/fpath.0.7.3/opam +0 -0
  30. {binaryen-archive-v0.12.0 → binaryen-archive}/esy.lock/opam/js_of_ocaml-compiler.3.11.0/opam +0 -0
  31. {binaryen-archive-v0.12.0 → binaryen-archive}/esy.lock/opam/js_of_ocaml-ppx.3.11.0/opam +0 -0
  32. {binaryen-archive-v0.12.0 → binaryen-archive}/esy.lock/opam/js_of_ocaml.3.11.0/opam +0 -0
  33. {binaryen-archive-v0.12.0 → binaryen-archive}/esy.lock/opam/menhir.20211128/opam +0 -0
  34. {binaryen-archive-v0.12.0 → binaryen-archive}/esy.lock/opam/menhirLib.20211128/opam +0 -0
  35. {binaryen-archive-v0.12.0 → binaryen-archive}/esy.lock/opam/menhirSdk.20211128/opam +0 -0
  36. {binaryen-archive-v0.12.0 → binaryen-archive}/esy.lock/opam/ocaml-compiler-libs.v0.12.4/opam +0 -0
  37. {binaryen-archive-v0.12.0/esy.lock/opam/ocaml-lsp-server.1.9.0 → binaryen-archive/esy.lock/opam/ocaml-lsp-server.1.10.3}/opam +5 -5
  38. {binaryen-archive-v0.12.0 → binaryen-archive}/esy.lock/opam/ocaml-version.3.4.0/opam +0 -0
  39. {binaryen-archive-v0.12.0/esy.lock/opam/ocamlbuild.0.14.0 → binaryen-archive/esy.lock/opam/ocamlbuild.0.14.1}/opam +18 -15
  40. {binaryen-archive-v0.12.0/esy.lock/opam/ocamlfind.1.9.2 → binaryen-archive/esy.lock/opam/ocamlfind.1.9.3}/opam +3 -3
  41. {binaryen-archive-v0.12.0 → binaryen-archive}/esy.lock/opam/ocamlformat-rpc-lib.0.19.0/opam +0 -0
  42. {binaryen-archive-v0.12.0/esy.lock/opam/ocamlformat.0.18.0 → binaryen-archive/esy.lock/opam/ocamlformat.0.20.1}/opam +16 -15
  43. binaryen-archive/esy.lock/opam/ocp-indent.1.7.0/opam +57 -0
  44. binaryen-archive/esy.lock/opam/odoc-parser.1.0.0/opam +46 -0
  45. {binaryen-archive-v0.12.0 → binaryen-archive}/esy.lock/opam/pp.1.1.2/opam +0 -0
  46. {binaryen-archive-v0.12.0 → binaryen-archive}/esy.lock/opam/ppx_derivers.1.2.1/opam +0 -0
  47. {binaryen-archive-v0.12.0 → binaryen-archive}/esy.lock/opam/ppx_yojson_conv_lib.v0.14.0/opam +0 -0
  48. {binaryen-archive-v0.12.0/esy.lock/opam/ppxlib.0.22.2 → binaryen-archive/esy.lock/opam/ppxlib.0.25.0}/opam +9 -6
  49. {binaryen-archive-v0.12.0 → binaryen-archive}/esy.lock/opam/re.1.10.3/opam +0 -0
  50. {binaryen-archive-v0.12.0 → binaryen-archive}/esy.lock/opam/result.1.5/opam +0 -0
  51. {binaryen-archive-v0.12.0 → binaryen-archive}/esy.lock/opam/seq.base/files/META.seq +0 -0
  52. {binaryen-archive-v0.12.0 → binaryen-archive}/esy.lock/opam/seq.base/files/seq.install +0 -0
  53. {binaryen-archive-v0.12.0 → binaryen-archive}/esy.lock/opam/seq.base/opam +0 -0
  54. {binaryen-archive-v0.12.0 → binaryen-archive}/esy.lock/opam/sexplib0.v0.14.0/opam +0 -0
  55. {binaryen-archive-v0.12.0 → binaryen-archive}/esy.lock/opam/spawn.v0.15.0/opam +0 -0
  56. {binaryen-archive-v0.12.0 → binaryen-archive}/esy.lock/opam/stdio.v0.14.0/opam +0 -0
  57. {binaryen-archive-v0.12.0 → binaryen-archive}/esy.lock/opam/stdlib-shims.0.3.0/opam +1 -1
  58. {binaryen-archive-v0.12.0/esy.lock/opam/topkg.1.0.4 → binaryen-archive/esy.lock/opam/topkg.1.0.5}/opam +3 -3
  59. {binaryen-archive-v0.12.0 → binaryen-archive}/esy.lock/opam/uchar.0.0.2/opam +1 -1
  60. {binaryen-archive-v0.12.0 → binaryen-archive}/esy.lock/opam/uucp.14.0.0/opam +0 -0
  61. {binaryen-archive-v0.12.0 → binaryen-archive}/esy.lock/opam/uuseg.14.0.0/opam +0 -0
  62. binaryen-archive/esy.lock/opam/uutf.1.0.3/opam +36 -0
  63. {binaryen-archive-v0.12.0 → binaryen-archive}/esy.lock/opam/yojson.1.7.0/opam +0 -0
  64. binaryen-archive/esy.lock/overrides/opam__s__ocamlbuild_opam__c__0.14.1_opam_override/files/winpatch.patch +11 -0
  65. {binaryen-archive-v0.12.0/esy.lock/overrides/opam__s__ocamlbuild_opam__c__0.14.0_opam_override → binaryen-archive/esy.lock/overrides/opam__s__ocamlbuild_opam__c__0.14.1_opam_override}/package.json +5 -3
  66. binaryen-archive-v0.12.0/esy.lock/overrides/opam__s__ocamlfind_opam__c__1.9.2_opam_override/files/findlib-1.9.2.patch → binaryen-archive/esy.lock/overrides/opam__s__ocamlfind_opam__c__1.9.3_opam_override/files/findlib.patch +14 -0
  67. {binaryen-archive-v0.12.0/esy.lock/overrides/opam__s__ocamlfind_opam__c__1.9.2_opam_override → binaryen-archive/esy.lock/overrides/opam__s__ocamlfind_opam__c__1.9.3_opam_override}/package.json +1 -1
  68. binaryen-archive/esy.lock/overrides/opam__s__uchar_opam__c__0.0.2_opam_override/files/winpatch.patch +11 -0
  69. binaryen-archive/esy.lock/overrides/opam__s__uchar_opam__c__0.0.2_opam_override/package.json +11 -0
  70. binaryen-archive/js/binaryen.es5.js +363 -0
  71. {binaryen-archive-v0.12.0 → binaryen-archive}/js/dune +1 -1
  72. {binaryen-archive-v0.12.0 → binaryen-archive}/js/element_segment.ml +0 -0
  73. {binaryen-archive-v0.12.0 → binaryen-archive}/js/export.ml +0 -3
  74. {binaryen-archive-v0.12.0 → binaryen-archive}/js/expression.ml +161 -0
  75. {binaryen-archive-v0.12.0 → binaryen-archive}/js/function.ml +0 -0
  76. {binaryen-archive-v0.12.0 → binaryen-archive}/js/global.ml +0 -0
  77. {binaryen-archive-v0.12.0 → binaryen-archive}/js/import.ml +0 -0
  78. {binaryen-archive-v0.12.0 → binaryen-archive}/js/literal.ml +0 -1
  79. {binaryen-archive-v0.12.0 → binaryen-archive}/js/memory.ml +0 -0
  80. {binaryen-archive-v0.12.0 → binaryen-archive}/js/module.ml +6 -9
  81. {binaryen-archive-v0.12.0 → binaryen-archive}/js/op.ml +0 -223
  82. binaryen-archive/js/prelude.js +2 -0
  83. {binaryen-archive-v0.12.0 → binaryen-archive}/js/settings.ml +0 -0
  84. {binaryen-archive-v0.12.0 → binaryen-archive}/js/stubs.c +0 -0
  85. {binaryen-archive-v0.12.0 → binaryen-archive}/js/table.ml +0 -0
  86. {binaryen-archive-v0.12.0 → binaryen-archive}/js/type.ml +0 -9
  87. {binaryen-archive-v0.12.0 → binaryen-archive}/package.json +13 -10
  88. {binaryen-archive-v0.12.0 → binaryen-archive}/src/binaryen_stubs_exports.c +0 -0
  89. {binaryen-archive-v0.12.0 → binaryen-archive}/src/binaryen_stubs_expressions.c +250 -0
  90. {binaryen-archive-v0.12.0 → binaryen-archive}/src/binaryen_stubs_features.c +24 -0
  91. {binaryen-archive-v0.12.0 → binaryen-archive}/src/binaryen_stubs_functions.c +0 -0
  92. {binaryen-archive-v0.12.0 → binaryen-archive}/src/binaryen_stubs_globals.c +0 -0
  93. {binaryen-archive-v0.12.0 → binaryen-archive}/src/binaryen_stubs_imports.c +0 -0
  94. {binaryen-archive-v0.12.0 → binaryen-archive}/src/binaryen_stubs_literals.c +0 -0
  95. {binaryen-archive-v0.12.0 → binaryen-archive}/src/binaryen_stubs_memory.c +0 -0
  96. {binaryen-archive-v0.12.0 → binaryen-archive}/src/binaryen_stubs_modules.c +0 -0
  97. {binaryen-archive-v0.12.0 → binaryen-archive}/src/binaryen_stubs_ops.c +0 -0
  98. {binaryen-archive-v0.12.0 → binaryen-archive}/src/binaryen_stubs_settings.c +0 -0
  99. {binaryen-archive-v0.12.0 → binaryen-archive}/src/binaryen_stubs_tables.c +0 -0
  100. {binaryen-archive-v0.12.0 → binaryen-archive}/src/binaryen_stubs_types.c +0 -0
  101. {binaryen-archive-v0.12.0 → binaryen-archive}/src/dune +0 -0
  102. {binaryen-archive-v0.12.0 → binaryen-archive}/src/element_segment.ml +0 -1
  103. {binaryen-archive-v0.12.0 → binaryen-archive}/src/export.ml +0 -2
  104. {binaryen-archive-v0.12.0 → binaryen-archive}/src/expression.ml +94 -63
  105. {binaryen-archive-v0.12.0 → binaryen-archive}/src/function.ml +0 -6
  106. {binaryen-archive-v0.12.0 → binaryen-archive}/src/global.ml +0 -2
  107. {binaryen-archive-v0.12.0 → binaryen-archive}/src/import.ml +0 -0
  108. {binaryen-archive-v0.12.0 → binaryen-archive}/src/literal.ml +0 -3
  109. {binaryen-archive-v0.12.0 → binaryen-archive}/src/memory.ml +0 -0
  110. {binaryen-archive-v0.12.0 → binaryen-archive}/src/module.ml +17 -9
  111. {binaryen-archive-v0.12.0 → binaryen-archive}/src/ocaml_helpers.c +0 -0
  112. {binaryen-archive-v0.12.0 → binaryen-archive}/src/ocaml_helpers.h +0 -0
  113. {binaryen-archive-v0.12.0 → binaryen-archive}/src/op.ml +0 -0
  114. {binaryen-archive-v0.12.0 → binaryen-archive}/src/settings.ml +0 -6
  115. {binaryen-archive-v0.12.0 → binaryen-archive}/src/table.ml +0 -0
  116. {binaryen-archive-v0.12.0 → binaryen-archive}/src/type.ml +0 -1
  117. {binaryen-archive-v0.12.0 → binaryen-archive}/test/config/dune +0 -0
  118. {binaryen-archive-v0.12.0 → binaryen-archive}/test/config/ocamlopt_flags.ml +8 -1
  119. {binaryen-archive-v0.12.0 → binaryen-archive}/test/dune +0 -0
  120. {binaryen-archive-v0.12.0 → binaryen-archive}/test/test.expected +8 -0
  121. {binaryen-archive-v0.12.0 → binaryen-archive}/test/test.ml +44 -22
  122. {binaryen-archive-v0.12.0 → binaryen-archive}/virtual/dune +0 -0
  123. {binaryen-archive-v0.12.0 → binaryen-archive}/virtual/element_segment.mli +0 -4
  124. {binaryen-archive-v0.12.0 → binaryen-archive}/virtual/export.mli +0 -15
  125. {binaryen-archive-v0.12.0 → binaryen-archive}/virtual/expression.mli +93 -115
  126. {binaryen-archive-v0.12.0 → binaryen-archive}/virtual/function.mli +0 -12
  127. {binaryen-archive-v0.12.0 → binaryen-archive}/virtual/global.mli +0 -8
  128. {binaryen-archive-v0.12.0 → binaryen-archive}/virtual/import.mli +0 -4
  129. {binaryen-archive-v0.12.0 → binaryen-archive}/virtual/literal.mli +0 -5
  130. {binaryen-archive-v0.12.0 → binaryen-archive}/virtual/memory.mli +0 -0
  131. {binaryen-archive-v0.12.0 → binaryen-archive}/virtual/module.mli +4 -29
  132. {binaryen-archive-v0.12.0 → binaryen-archive}/virtual/op.mli +0 -315
  133. {binaryen-archive-v0.12.0 → binaryen-archive}/virtual/settings.mli +0 -17
  134. {binaryen-archive-v0.12.0 → binaryen-archive}/virtual/table.mli +0 -3
  135. {binaryen-archive-v0.12.0 → binaryen-archive}/virtual/type.mli +0 -11
  136. binaryen-archive-v0.12.0/esy.lock/opam/ocaml-migrate-parsetree.2.3.0/opam +0 -39
  137. binaryen-archive-v0.12.0/esy.lock/opam/odoc.1.5.3/opam +0 -53
  138. binaryen-archive-v0.12.0/esy.lock/opam/tyxml.4.5.0/opam +0 -42
  139. binaryen-archive-v0.12.0/esy.lock/opam/uutf.1.0.2/opam +0 -40
  140. binaryen-archive-v0.12.0/esy.lock/overrides/opam__s__ocamlbuild_opam__c__0.14.0_opam_override/files/ocamlbuild-0.14.0.patch +0 -463
  141. binaryen-archive-v0.12.0/js/binaryen.es5.js +0 -5
  142. binaryen-archive-v0.12.0/js/postlude.js +0 -2
  143. binaryen-archive-v0.12.0/js/prelude.js +0 -11
@@ -1,5 +1,47 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.14.0](https://github.com/grain-lang/binaryen.ml/compare/v0.13.0...v0.14.0) (2022-03-04)
4
+
5
+
6
+ ### ⚠ BREAKING CHANGES
7
+
8
+ * Update libbinaryen to v104 (#138)
9
+
10
+ ### Features
11
+
12
+ * Update libbinaryen to v104 ([#138](https://github.com/grain-lang/binaryen.ml/issues/138)) ([81addf7](https://github.com/grain-lang/binaryen.ml/commit/81addf76dcc21dc1681b5a29b80ba31522911047))
13
+
14
+ ## [0.13.0](https://github.com/grain-lang/binaryen.ml/compare/v0.12.1...v0.13.0) (2022-02-07)
15
+
16
+
17
+ ### Features
18
+
19
+ * Add all `Module.Features` that were missing ([09c5d30](https://github.com/grain-lang/binaryen.ml/commit/09c5d3064e9fd80ea6adac8b2f40cf2b708ebb8c))
20
+ * Add functions for ref & table expressions ([09c5d30](https://github.com/grain-lang/binaryen.ml/commit/09c5d3064e9fd80ea6adac8b2f40cf2b708ebb8c))
21
+ * Upgrade to libbinaryen v103 ([#134](https://github.com/grain-lang/binaryen.ml/issues/134)) ([09c5d30](https://github.com/grain-lang/binaryen.ml/commit/09c5d3064e9fd80ea6adac8b2f40cf2b708ebb8c))
22
+
23
+
24
+ ### Miscellaneous Chores
25
+
26
+ * Use a upload-release-action that works ([97dbcdc](https://github.com/grain-lang/binaryen.ml/commit/97dbcdc53e69ccdb6e88ef03ce0766443a024cf1))
27
+
28
+ ### [0.12.1](https://github.com/grain-lang/binaryen.ml/compare/v0.12.0...v0.12.1) (2022-02-03)
29
+
30
+
31
+ ### Features
32
+
33
+ * **ci:** Upgrade release-please ([#131](https://github.com/grain-lang/binaryen.ml/issues/131)) ([ca3bdb7](https://github.com/grain-lang/binaryen.ml/commit/ca3bdb7aa324a013205a80759bcc733fea64ae4a))
34
+
35
+
36
+ ### Bug Fixes
37
+
38
+ * Restrict js_of_ocaml to version 3 ([fa39480](https://github.com/grain-lang/binaryen.ml/commit/fa39480fc74b19cf7052ec5c0764ee58b5783549))
39
+
40
+
41
+ ### Miscellaneous Chores
42
+
43
+ * Fix release version ([5d1bd42](https://github.com/grain-lang/binaryen.ml/commit/5d1bd42a7132298a902060c46dae72507e702eb0))
44
+
3
45
  ## [0.12.0](https://www.github.com/grain-lang/binaryen.ml/compare/v0.11.2...v0.12.0) (2022-01-26)
4
46
 
5
47
 
File without changes
@@ -66,6 +66,30 @@ Your stanza could look something like this:
66
66
 
67
67
  These flags likely won't work on other operating systems, so you'll probably need to use `dune-configurator` to vary the flags per platform. You can see an example of this in our [tests/](./tests/dune).
68
68
 
69
+ ## MacOS DWARF & Compact unwind
70
+
71
+ When including this library in your `dune` MacOS executables, you might want to specify `-cclib -Wl,-keep_dwarf_unwind -cclib -Wl,-no_compact_unwind` in your `(ocamlopt_flags)` stanza. If you don't include them, you'll probably see warnings like:
72
+
73
+ ```log
74
+ ld: warning: could not create compact unwind for _caml_start_program: dwarf uses DW_CFA_same_value
75
+ ld: warning: could not create compact unwind for _caml_raise_exn: stack subq instruction is too different from dwarf stack size
76
+ ld: warning: could not create compact unwind for _caml_raise_exception: stack subq instruction is too different from dwarf stack size
77
+ ```
78
+
79
+ Your stanza could look something like this:
80
+
81
+ ```diff
82
+ (executable
83
+ (name example)
84
+ (public_name example)
85
+ (package example)
86
+ + (ocamlopt_flags -cclib -Wl,-keep_dwarf_unwind -cclib -Wl,-no_compact_unwind)
87
+ (modules example)
88
+ (libraries binaryen))
89
+ ```
90
+
91
+ These flags likely won't work on other operating systems, so you'll probably need to use `dune-configurator` to vary the flags per platform. You can see an example of this in our [tests/](./tests/dune).
92
+
69
93
  ## Static Linking
70
94
 
71
95
  If you are planning to create portable binaries for Windows, it will try to find Cygwin/MinGW locations in your `PATH`. To avoid this, you probably want to add this to your `(executable)` stanzas:
@@ -1,5 +1,5 @@
1
1
  opam-version: "2.0"
2
- version: "0.12.0"
2
+ version: "0.14.0"
3
3
  synopsis: "OCaml bindings for Binaryen"
4
4
  maintainer: "oscar@grain-lang.org"
5
5
  author: "Oscar Spencer"
@@ -13,10 +13,10 @@ build: [
13
13
  ]
14
14
  depends: [
15
15
  "ocaml" {>= "4.12"}
16
- "dune" {>= "2.9.1"}
17
- "dune-configurator" {>= "2.9.1"}
18
- "js_of_ocaml" {>= "3.10.0"}
19
- "js_of_ocaml-ppx" {>= "3.10.0"}
20
- "js_of_ocaml-compiler" {>= "3.10.0"}
21
- "libbinaryen" {>= "102.0.4" < "103.0.0"}
16
+ "dune" {>= "2.9.1" < "3.0.0"}
17
+ "dune-configurator" {>= "2.9.1" < "3.0.0"}
18
+ "js_of_ocaml" {>= "3.10.0" < "4.0.0"}
19
+ "js_of_ocaml-ppx" {>= "3.10.0" < "4.0.0"}
20
+ "js_of_ocaml-compiler" {>= "3.10.0" < "4.0.0"}
21
+ "libbinaryen" {>= "104.0.0" < "105.0.0"}
22
22
  ]
File without changes