773 Commits

Author SHA1 Message Date
翠 / green
74faafeafe
fix(napi-derive): object_from_js / object_to_js for transparent was swapped (#2382) 2024-12-02 22:37:33 +08:00
翠 / green
6a4ce688c4
fix(napi-derive): generate correct types for HashMap with RandomState argument (#2384)
* fix(napi-derive): generate correct types for HashMap with RandomState argument

* chore: update snapshot
2024-12-02 22:37:00 +08:00
LongYinan
7886d24d12
Release independent packages
- napi@3.0.0-alpha.21
- napi-derive@3.0.0-alpha.20
2024-11-30 10:52:22 +08:00
LongYinan
4c7a3d3264
chore: Rust 1.83.0 clippy fix (#2378) 2024-11-30 10:49:01 +08:00
翠 / green
e42287618b
feat(napi): implement ValidateNapiValue for HashSet with any hasher (#2377) 2024-11-30 10:28:54 +08:00
翠 / green
521aefe420
feat(napi-derive): implement #[napi(transparent)] (#2376) 2024-11-30 10:28:40 +08:00
翠 / green
f116eaf5e5
feat(napi): implement ValidateNapiValue for HashMap with any hasher (#2374) 2024-11-29 05:19:28 -08:00
frankwang
8b474f929d
feat(napi-derive): allow ts_type in napi fn attrs (#2362)
* feat: allow ts_type in fn attrs

* chore: add override fn type example
2024-11-22 15:44:16 +08:00
Stanisław Czech
272334c69f
fix(napi): update logic for handling signed integers (#2356)
* Fix from functions for BigInt

Allow proper parsing of negative integers in those functions.

Fixes the pannic when calling:
BigInt::from(i128::MIN);

* Fix get_i128 and get_i64 for BigInt

Update the getter logic to take sign into account.

for get_i128 and get_u128 make lossless value consistent with the documentation
(documentation described different behavior then the code logic)

* Extend tests for BigInt types

Add more test cases for negative i64 and i128 to test the created changes

* Simplify the to napiValue logic for 128 bit types

Update the logic to handle negative values properly

Refactor to_napi_value and create_bigint_from_*128 to use the same logic
instead of copping mostly the same code 4 times

* Fix specification for deserialize object test

For unknown reason the binary specification was holding different value than spec file
2024-11-18 23:12:11 +08:00
LongYinan
0db0e1aabb
feat(sys): add experimental apis (#2358) 2024-11-18 23:10:41 +08:00
Richer
48b3b238de
feat(napi): allow us to create nest function from closure (#2360) 2024-11-18 21:28:47 +08:00
Richer
c1b07a82c1
fix(backend): fix type when function as object field (#2359) 2024-11-18 14:39:49 +08:00
LongYinan
d1d533d00e
Release independent packages
- napi-derive@3.0.0-alpha.19
2024-11-13 10:24:10 +08:00
LongYinan
49ed2ddf71
fix(napi-derive): object lifetime compile issue (#2351) 2024-11-11 20:19:41 +08:00
LongYinan
75ff88cced
Release independent packages
- napi-derive@3.0.0-alpha.18
2024-11-07 14:05:36 +08:00
LongYinan
209386f5c1
Release independent packages
- napi@3.0.0-alpha.20
2024-11-07 14:03:46 +08:00
LongYinan
726f888241
fix(napi): memory leak in PromiseRaw callbacks (#2348) 2024-11-07 13:19:15 +08:00
LongYinan
cf2305517d
chore(napi): deprecate Env::create_reference (#2347) 2024-11-07 13:05:01 +08:00
LongYinan
ae8eab3ef8
chore(napi): remove Read from Uint8Array (#2346) 2024-11-07 13:04:47 +08:00
Max
f2377e2d70
chore(napi-derive): remove unused dependency 'regex' from backend (#2344) 2024-11-05 00:30:24 +08:00
LongYinan
59dce18ab4
Release independent packages
- napi@3.0.0-alpha.19
2024-10-31 11:06:23 +08:00
LongYinan
fd23549009
Release independent packages
- napi@3.0.0-alpha.18
- napi-derive@3.0.0-alpha.17
2024-10-31 10:50:01 +08:00
LongYinan
f705454029
feat(napi): introduce AsyncBlock to let user dispose resources after future done (#2338) 2024-10-31 09:24:30 +08:00
LongYinan
00a3c13b42
feat(napi): impl io::Read for Uint8Array (#2336) 2024-10-30 16:15:43 +08:00
LongYinan
6a690e1c53
Release independent packages
- napi@3.0.0-alpha.17
- napi@3.0.0-alpha.16
- napi-sys@3.0.0-alpha.0
2024-10-28 23:50:45 +08:00
LongYinan
c91456d84a
feat(napi): support return *const c_char to JavaScript directly (#2332) 2024-10-28 23:48:33 +08:00
LongYinan
79cbb9170e
fix!(sys): Node-API accpet NAPI_AUTO_LENGTH parameter type should be isize rather than usize (#2331) 2024-10-28 23:45:32 +08:00
LongYinan
f707f36c5a
feat(napi): implmenet Set (#2330) 2024-10-26 20:11:58 +08:00
LongYinan
3d95fcffdf
fix(napi-derive): ra warning on Rust 1.82 (#2329) 2024-10-25 11:15:13 +08:00
LongYinan
953f2e3553
Release independent packages
- napi@3.0.0-alpha.16
- napi@3.0.0-alpha.15
2024-10-21 16:46:26 +08:00
LongYinan
aff84674b2
refactor!(napi): remove &str FromNapiValue (#2323) 2024-10-21 16:43:30 +08:00
lauren n. liberda
d685dedb76
docs: update n-api version matrix docs url (#2319)
it has changed back in node.js 16.0 docs
2024-10-21 12:49:08 +08:00
LongYinan
52c424a956
fix(napi): needless cast to CString before call napi_create_string_utf8 (#2321) 2024-10-21 12:48:43 +08:00
LongYinan
161758393f
fix(napi): TypedArray is not ArrayBuffer in Deno (#2314) 2024-10-17 16:36:21 +08:00
Richer
383b5d023c
fix(napi): before using from_raw_parts should check if data is null (#2311) 2024-10-15 16:47:34 +08:00
Richer
7ed5972a78
pref(napi): display the real info for TypedArray (#2310) 2024-10-15 15:36:34 +08:00
LongYinan
17f6dd2fd9
Release independent packages
- napi@3.0.0-alpha.15
2024-10-14 11:27:41 +08:00
LongYinan
dc4bfb8ea3
refactor!(napi): pass self to Task::finally instread of &mut self (#2309) 2024-10-14 11:26:30 +08:00
LongYinan
72afae3736
refactor!(napi): Ref::unref accept &mut self instead of self (#2308) 2024-10-14 11:14:25 +08:00
LongYinan
a38a24c359
Release independent packages
- napi@3.0.0-alpha.14
- napi-derive@3.0.0-alpha.14
2024-10-14 00:27:38 +08:00
Richer
16fc9cbe31
feat(napi): support arraybuffer for de (#2296)
* feat(napi): support arraybuffer for de

* use BufferSlice

* clippy fix

---------

Co-authored-by: LongYinan <lynweklm@gmail.com>
2024-10-14 00:24:45 +08:00
LongYinan
e0811d1644
fix(napi): data maybe null in custom_gc (#2304)
* fix(napi): data maybe null in custom_gc

Sometimes thread has not been disposed but the objects on it have been
recycled, we need to check if the data has been pointed to null before
unref it.

* disable v8 compile cache on CI
2024-10-13 23:33:39 +08:00
LongYinan
afd081d003
feat(napi,napi-derive): allow lifetime in Class (#2298) 2024-10-10 05:59:14 +02:00
LongYinan
724673225a
refactor!(napi): remove clone fn on ThreadsafeFunction (#2291) 2024-10-07 19:23:11 +02:00
LongYinan
eba0b52c59
chore(napi): env doesn't need to be mut (#2292) 2024-10-07 19:20:21 +02:00
LongYinan
9a6f01a20c
Release independent packages
- napi@3.0.0-alpha.13
- napi-derive@3.0.0-alpha.13
2024-10-03 00:01:16 +02:00
LongYinan
69cd73d71c
refactor!(napi,napi-derive): add lifetime to ClassInstance (#2286) 2024-10-02 10:42:34 +02:00
Richer
d3cf9cb143
fix(napi-derive-backend): should respect origin name for class factory (#2280) 2024-09-30 17:06:58 +02:00
LongYinan
34829fb5f7
Release independent packages
- napi@3.0.0-alpha.12
- napi-derive@3.0.0-alpha.12
2024-09-23 17:01:31 +08:00
LongYinan
a4a8d31a42
chore(napi): remove once_cell (#2271) 2024-09-23 16:57:14 +08:00