Releases: nodejs/node-addon-api
Release 5.1.0
SemVer minor release to pull changes since the last release. The main motivations for the release are:
- Fix memory leak in
Napi::AsyncProgressWorkerBase
. - Add api to get callback_info from
Napi::CallBackInfo
. - Fix erros and warning in VS 2017.
- Make
Napi::Env::CleanupHook
public. - Remove
Napi::TypedArray::unknown_array_type
. - Add tests related to
Napi::Env
. - Add tests related to
Napi::TypedArray
. - Add tests related to
Napi::AsyncWorker
. - Add tests related to
Napi::TypedThreadSafeFunction
. - Add tests related to
Napi::Value
. - Add test related to
Napi::Promise
. - Add
Napi::HandleScope
example. - Add documentation about how to run a specific unit test.
- Add Windows with VS 2022 and Node.JS 19.x to the CI matrix.
- Fix stale workflow.
- Update Node.js versions on CI component.
- Add condition for Windows to find eslint.
What's Changed
- Add condition for window to find eslint by @JckXia in #1176
- doc: fix broken
Napi::ThreadSafeFunction
link by @F3n67u in #1172 - test: Add promise unit test by @egg-bread in #1173
- Fix link to CMake.js documentation by @nullromo in #1180
- doc: fix typo in async_operations.md by @tniessen in #1189
- Update README.md by @Chinedug in #1187
- test: CallbackInfo NewTarget unit test by @petersandor in #1177
- Update Readme for filter conditions in unit tests by @deepakrkris in #1199
- Update CONTRIBUTING.md by @Chinedug in #1185
- Update CI component versions by @vmoroz in #1200
- test: Add test coverage for "TSFN::Ref()" by @JckXia in #1196
- test: remove update to process.config by @mhdawson in #1208
- doc: add HandleScope example by @KevinEady in #1210
- test: Add test case for canceling async worker tasks by @JckXia in #1202
- test: Add test cased for failed task cancellations by @JckXia in #1214
- chore: fix stale workflow by @richardlau in #1228
- test: Add test coverage to TSFN::New() overloads by @JckXia in #1201
- src: refactor call js wrapper by @JckXia in #1242
- chore: add Windows with VS 2022 and Node.JS 19.x to the CI matrix by @vmoroz in #1252
- Update contributors by @KevinEady in #1265
New Contributors
- @F3n67u made their first contribution in #1172
- @egg-bread made their first contribution in #1173
- @nullromo made their first contribution in #1180
- @Chinedug made their first contribution in #1187
- @petersandor made their first contribution in #1177
- @deepakrkris made their first contribution in #1199
- @vmoroz made their first contribution in #1200
- @richardlau made their first contribution in #1228
Full Changelog: v5.0.0...v5.1.0
Release 5.0.0
SemVer major release to pull changes since the last release. The main motivations for the release are:
- Drop the support for Node.js v12.x.
- Marked methods of wrapper classes
const
. - Enabled wrapping
Napi
namespace with custom namespace. - Added an override to
Napi::Function::Call
to call it with a c-style array
ofNapi::Value
's. - Improved the test framework. Added the possibility to run subsets of tests
more easily. - Added test for
Napi::AsyncContext
class. - Fixed ramdom failure on test for
Napi::ThreadSafeFunction
e
Napi::TypedThreadSafeFunction
class. - Fixed compilation problem on debian 8 system.
- Added test for
Napi::Object::Set()
method. - Added some clarifications for
Napi::ClassPropertyDescriptor
. - Added clarification about weak reference for
Napi::ObjectWrap
. - Some minor fixes all over the documentation.
- Fixed
eslint
configuration. - Fixed CI configuration for Windows.
- Enabled pre-commit
ClangFormat
on Windows.
What's Changed
- Testing CI run by @JckXia in #1132
- Add test case for Object Set using uint32 as key by @meixg in #1130
- src: do not use non-static class member for constant value by @addaleax in #1134
- Add Function::Call Napi::Value override by @rgerd in #1026
- src: enable wrapping Napi namespace with custom namespace by @addaleax in #1135
- doc: mention Napi::Env arg for Finalization callbacks by @extremeheat in #1139
- lint: set sourceType to 'script' by @addaleax in #1141
- build: run Windows CI only on nondeprecated build configurations by @RaisinTen in #1152
- doc: clarify ObjectWrap weak ref behavior by @mildsunrise in #1155
- doc: added some comments to ClassPropertyDescriptor. by @NickNaso in #1149
- Add test coverage for async contexts by @JckXia in #1164
New Contributors
- @meixg made their first contribution in #1130
- @rgerd made their first contribution in #1026
- @extremeheat made their first contribution in #1139
Full Changelog: v4.3.0...v5.0.0
Release 4.3.0
SemVer minor release to pull changes since the last release. The main motivations for the release are:
- Added iterator for
Napi::Object
. - Fixed usage of
napi_extended_error_info
inNapi::Error::New()
. - Added unwrapping logic to handle graceful error handling for primitives.
- Removed travis config.
- Updated compiler used for testing.
- Added BigInt value test.
- Minor fixes all overt est suite.
- Documentation of iterator for
Napi::Object
. - Minor fixes all over documentation.
What's Changed
- lint: add eslint based on config-semistandard by @rubiagatra in #1067
- test: update compiler used for testing by @mhdawson in #1079
- test: remove travis config by @mhdawson in #1082
- doc: fix typo in TypedThreadSafeFunction example by @tniessen in #1083
- doc: document object iterators by @RaisinTen in #1090
- doc: add blurb about SetInstanceData by @gabrielschulhof in #1100
- Update object_wrap.md by @alexanderfloh in #1094
- Add logic to handle graceful error handling when primitive errors are thrown by JS functions by @JckXia in #1075
New Contributors
- @rubiagatra made their first contribution in #1067
- @alexanderfloh made their first contribution in #1094
- @JckXia made their first contribution in #1075
Full Changelog: v4.2.0...v4.3.0
Release 4.2.0
SemVer minor release to pull changes since the last release. The main motivations for the release are:
- Allow creating Function with move-only functor.
- Fixed casts to not be undefined behavior.
- Fixed the way to enable C++ exceptions.
- Run tests with options to prefix build root path.
- Minor fixes all over the documentation.
Release 4.1.0
SemVer minor release to pull changes since the last release. The main motivations for the release are:
- Added the wraps for
napi_add_env_cleanup_hook
andnapi_remove_env_cleanup_hook
. - Added Napi::Maybe class to handle pending exception when cpp exception disabled.
Napi::Reference
updated the default value to reflect the most possible values when there are any errors occurred onnapi_reference_unref
.- Added the check for nullpointer on
Napi::String
initialization. - Added first set of tests for
Napi::Symbol
. - Updated test suite to avoid parallel running.
- Updated example for context sensitivity.
Release 4.0.0
SemVer major release to pull changes since the last release. The main motivations for the release are:
- Drop the support for Node.js v10.x.
- Fix a crashing issue in
Napi::Error::ThrowAsJavaScriptException
.
Release 3.2.1
SemVer patch release to fix the documentation about the oldest Node.js version supported.
Release 3.2.0
SemVer minor release to pull changes since the last release. The main motivations for the release is the addition of a new APIs and a lot of important fixes.
Release 3.1.0
SemVer minor release to pull changes since the last release. The main motivations for the release is the addition of a new APIs and a lot of important fixes.
Release 3.0.2
SemVer patch release to pull changes since the last release. The main motivations for the release are:
- Fixed the compilation breakage introduced in the previous release (v3.0.1).
- Added the new
Napi::Addon
api to o help handle the loading of a native add-on into multiple
threads and or multiple times in the same thread. - Converted tests that gc into async functions that await 10 ticks after each gc.
- Refactored test for threasfafe function using async/await.
- Some minor corrections all over the test suite and documentation.