Skip to content

Releases: toyobayashi/emnapi

v1.11.0

08 Jun 03:13

Choose a tag to compare

What's Changed

  • feat: add napi_create_external_sharedarraybuffer (#211)
  • feat: support SharedArrayBuffer in napi_create_typedarray (#212)
  • refactor: remove use of PThread.runningWorkers (#216)

Full Changelog: v1.10.0...v1.11.0

v2.0.0-alpha.1

21 May 10:23

Choose a tag to compare

v2.0.0-alpha.1 Pre-release
Pre-release

Notable Changes

  • JavaScript packages are ESM only now
  • No longer provide prebuilt libraries for wasm32-unknown-unknown and wasm32-wasip1 target
  • Deprecated JS version implementation of async work and TSFN, switched to libuv threadpool based implementation by default
  • Minimum Nan support in early stage, no prebuilt library, not production ready feature.

Full Changelog: v1.10.0...v2.0.0-alpha.1

v1.10.0

16 Apr 04:15

Choose a tag to compare

What's Changed

  • fix: early update wasm memory for views (https://github.com/hardfist/emnapi-shared-memory-grow-repro)
  • fix!: napi_adjust_external_memory no longer grow wasm memory
  • fix: add missing from64 wrap
  • fix: coalesce tsfn (js version) send message
  • ci: restructure CI workflows
  • ci: prebuilt liraries using llvm 22

Thanks @hardfist

Full Changelog: v1.9.2...v1.10.0

v1.9.2

02 Apr 10:16

Choose a tag to compare

What's Changed

Full Changelog: v1.9.1...v1.9.2

v1.9.1

19 Mar 14:08

Choose a tag to compare

fix for emscripten 5.0.3
emscripten-core/emscripten@3051725

Full Changelog: v1.9.0...v1.9.1

v1.9.0

12 Mar 09:42

Choose a tag to compare

What's Changed

  • fix data race and use-after-free in napi_threadsafe_function by @toyobayashi in #199
    • fix tsfn not work in JS based async_work workers
    • fix pthread_create not work in JS based async_work workers
    • emnapi_basic[-mt].a includes libuv symbols now
  • refactor: dispatch async work queue in shared memory by @toyobayashi in #200
    • Avoids deadlock when main thread block on waiting queued async work starting. Completed work can not be dispatched to main thread that cause no new worker available, then queued work never start.
    • wasm32-wasip1-threads target spawn async worker in JS will use pthread_create, no longer maintain a separate worker pool.
  • rename node_api_create_object_with_properties by @toyobayashi in #193
  • fix: execute tsfn finalizer after queue drains when aborted
  • feat: add required config hint in package entry
    const { requiredConfig } = require('emnapi')
    console.log(requiredConfig.clang.wasmld)
    [
      '--import-memory',
      '--shared-memory',
      '--export-table',
      '--export=malloc',
      '--export=free',
      '--export=napi_register_wasm_v1',
      '--export-if-defined=node_api_module_get_api_version_v1',
      '--export=emnapi_thread_crashed',
      '--export-if-defined=emnapi_async_worker_create',
      '--export-if-defined=emnapi_async_worker_init'
    ]
    

Full Changelog: v1.8.1...v1.9.0

v1.8.1

04 Jan 12:55

Choose a tag to compare

What's Changed

Full Changelog: v1.8.0...v1.8.1

v1.8.0

03 Jan 13:14

Choose a tag to compare

What's Changed

Full Changelog: v1.7.1...v1.8.0

v1.7.1

14 Nov 06:58

Choose a tag to compare

What's Changed

Full Changelog: v1.7.0...v1.7.1

v1.7.0

03 Nov 09:28

Choose a tag to compare

What's Changed

Full Changelog: v1.6.0...v1.7.0