394 Commits

Author SHA1 Message Date
CPunisher
249c27e06d
fix(napi-derive): tuple object and enum (#2227)
* Fix tuple struct

* Add testcase
2024-08-23 14:10:39 +08:00
CPunisher
c459f0acf6
feat: support structured enum with discriminated unions (#2222)
* Structured enum

* Type indent

* Add test example

* Remove trailing commas

* discriminant

* discriminant conflict

* more test

* typo
2024-08-22 14:59:50 +08:00
renovate[bot]
650ce155e2
chore(deps): update dependency electron to v32 (#2221) 2024-08-20 19:42:26 +08:00
renovate[bot]
fa43fe13c9
chore(deps): update dependency webdriverio to v9 (#2218) 2024-08-19 09:40:15 +08:00
LongYinan
d84fc42832
fix(napi-derive): string enum validate logic (#2213) 2024-08-10 21:27:17 +08:00
CPunisher
a154612019
fix(napi-derive): add more cases for typegen of function args (#2210)
* Handle more arg pat

* Update testcase

* Revert
2024-08-08 11:07:21 +08:00
LongYinan
282ce1c00a
fix(napi): allow ThreadsafeFunction in Either (#2204) 2024-08-03 13:22:09 +08:00
LongYinan
3f6822d9cd
test: skip unstable test in WASI env (#2196) 2024-07-24 12:09:08 +08:00
LongYinan
13c18388f5
fix(cli): worker files format (#2186) 2024-07-14 22:23:34 +08:00
LongYinan
727f5a831a
test: skip memory exhausting test in wasi env (#2185) 2024-07-13 02:34:04 +08:00
renovate[bot]
4d39940fa0
chore(deps): update vitest monorepo to v2 (major) (#2177)
* chore(deps): update vitest monorepo to v2

* Fix lockfile

* Add playwright

* Update snapshots

* Fix vitest

* Fix vitest

* Fix wasi test

* Fix worker test condition

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: LongYinan <lynweklm@gmail.com>
2024-07-11 14:58:46 +08:00
LongYinan
731dced1bb
fix(cli): update wasi js binding files on any builds (#2179) 2024-07-09 14:01:23 +08:00
LongYinan
45a404c30b
ci: use shell to run tests in Docker (#2175) 2024-07-08 15:18:50 +08:00
LongYinan
349996b699
test: update snapshots 2024-07-07 22:34:36 +08:00
LongYinan
38d041569a
fix(napi-derive): PromiseRaw typegen 2024-07-07 21:03:14 +08:00
LongYinan
3a511bacee
fix(napi): Promise callbacks should require static lifetime (#2172) 2024-07-07 20:42:17 +08:00
LongYinan
27030c8dae
refactor(napi): simplify Promise implementation (#2171) 2024-07-07 14:59:03 +08:00
LongYinan
bc9e931a4e
feat(napi): provide PromiseRaw for non-await scenario (#2168) 2024-07-06 19:09:16 +08:00
LongYinan
aef57fb196
feat(napi): impl from_string for Uint8Array (#2167) 2024-07-06 14:32:09 +08:00
Jade-fu
c2bda9a900
fix(napi-derive): class constructor and factory should support custom error status (#2161) 2024-06-30 16:12:00 +08:00
LongYinan
d7a5a7e9a1
test(napi): spwan thread in thread (#2139) 2024-06-24 16:09:07 +08:00
renovate[bot]
50b9110ea1
chore(deps): update dependency electron to v31 (#2136) 2024-06-11 12:50:00 +08:00
Ranger
80d9d87ef9
chore(example): remove JsFunction from example (#2123)
* chore(example): remove jsfunction

* feat(napi): implement ToNapiValue for Ref as required by TSFN

* fix(test): tsfn test build failed

* chore: lint code

* fix(test): fix tsfn unit test
2024-05-26 21:07:01 +08:00
renovate[bot]
34723ca005
chore(deps): update dependency vite-plugin-node-polyfills to ^0.22.0 (#2119)
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [vite-plugin-node-polyfills](https://togithub.com/davidmyersdev/vite-plugin-node-polyfills) | [`^0.21.0` -> `^0.22.0`](https://renovatebot.com/diffs/npm/vite-plugin-node-polyfills/0.21.0/0.22.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/vite-plugin-node-polyfills/0.22.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/vite-plugin-node-polyfills/0.22.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/vite-plugin-node-polyfills/0.21.0/0.22.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vite-plugin-node-polyfills/0.21.0/0.22.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>davidmyersdev/vite-plugin-node-polyfills (vite-plugin-node-polyfills)</summary>

### [`v0.22.0`](https://togithub.com/davidmyersdev/vite-plugin-node-polyfills/releases/tag/v0.22.0)

[Compare Source](https://togithub.com/davidmyersdev/vite-plugin-node-polyfills/compare/v0.21.0...v0.22.0)

-   Stop defining globals when they are disabled

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/napi-rs/napi-rs).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4zNjMuNSIsInVwZGF0ZWRJblZlciI6IjM3LjM2My41IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
2024-05-20 12:22:55 +08:00
magic-akari
734d74bd02
fix(typegen): add missing declare keyword (#2117) 2024-05-19 16:53:23 +08:00
Ranger
c52d2042a2
feat(napi): Function build_thfn support calledhandled mode (#2114)
* feat(napi): Function build_thfn support calledhandled mode

* test(example): add calleehandle example
2024-05-18 20:20:12 +08:00
Louis
c223954dc6
chore(napi): allow value attribute on enum variants (#2115)
This allows us to customize the enum value for string_enum. So far, only the case attribute was allowing us to customize the value of those variants, this is a next step in allowing the value to be different from the actual name.

This has a new test, and snapshots have been updated accordingly.

@Brooooooklyn - could we include that in napi v2 and tag after it?
2024-05-17 11:22:33 +08:00
renovate[bot]
04da0d9fd1
chore(deps): update dependency sinon to v18 (#2112)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-16 14:27:55 +08:00
LongYinan
1e781a589c
chore(napi): remove depracated get_js_function (#2101) 2024-05-09 15:13:44 +08:00
Niklas Mischkulnig
f3d665d5b1
fix(napi): panic when deserializing empty buffer with Rust 1.78 (#2094)
* Add test for #2083

* Add test for serde_byte with empty buffer

* Fix using serde_bytes with empty buffers

* skip wasi test

* fix test

* clippy fix

* avoid ub

* use safer impl

---------

Co-authored-by: Simon Hausmann <simon.hausmann@slint.dev>
Co-authored-by: LongYinan <lynweklm@gmail.com>
2024-05-07 17:57:15 +08:00
LongYinan
4572ede9f5
refactor(napi): split T and CallJsBackArgs generic type (#2091) 2024-05-06 18:25:40 +08:00
naskya
68b5f2c587
feat(napi): support chrono datetime with timezones (#2074)
* feat(napi): implement From/ToNapiValue for chrono::DateTime<Local> and chrono::DateTime<FixedOffset> (#1902)

* chore(napi): update tests

Co-authored-by: sup39 <dev@sup39.dev>

---------

Co-authored-by: sup39 <dev@sup39.dev>
2024-04-30 22:51:40 +08:00
renovate[bot]
da31e367e1
chore(deps): update dependency vite-plugin-node-polyfills to ^0.21.0 (#2066)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-23 12:54:22 +08:00
LongYinan
46cbcf3ff1
feat(cli): allow sync fs operation between workers/mainThread (#2064)
* feat(cli): allow sync fs operation between workers/mainThread

* allow sync fs operation between workers/mainThread (#2065)

* Fix

* Update fixture

* flaky test

* Fix cross compile target

* Update zig

* macos-cross test was filtered

---------

Co-authored-by: Toyo Li <lifenglin314@outlook.com>
2024-04-23 12:14:06 +08:00
LongYinan
12aec3c135
fix(cli): pass fs to browser worker binding (#2062) 2024-04-22 14:44:37 +08:00
LongYinan
4ccbb61179
feat(cli): improve the browser binding (#2056) 2024-04-19 16:12:30 +08:00
LongYinan
cd3a850dcb
ci: improve test speed (#2057) 2024-04-19 16:00:20 +08:00
LongYinan
22c751ced0
fix(napi-derive): bail the unexpected factory directive (#2051)
- Close https://github.com/napi-rs/napi-rs/issues/2048
2024-04-18 00:14:00 +08:00
LongYinan
8f5d7e5274
fix(napi): handle panic in async block (#2050)
- Close https://github.com/napi-rs/napi-rs/issues/2047
2024-04-17 23:34:47 +08:00
LongYinan
7e33eb729f
feat(cli): optimize wasm output binary (#2049) 2024-04-17 20:13:02 +08:00
LongYinan
0e60651149
chore: dedupe electron 2024-04-16 18:24:25 +08:00
LongYinan
b3dd94649a
feat(cli): allow to define dtsHeader in napi config (#2045) 2024-04-16 17:40:41 +08:00
LongYinan
e3a403b441
feat(napi): allow user defined tokio runtime (#2040) 2024-04-15 23:58:28 +08:00
LongYinan
cc937e1dba
feat(cli): allow control the wasm Memory options via napi config (#2038) 2024-04-15 23:19:02 +08:00
翠 / green
923b82aee9
feat(napi): allow &External to be created from napi value (#2037) 2024-04-15 17:54:10 +08:00
LongYinan
16f0d49284
chore: increase wasi memory limits (#2035) 2024-04-13 18:35:08 +08:00
LongYinan
e274cf7ae6
feat(napi-derive): enhance the error messages in object validator (#2034) 2024-04-10 16:52:23 +08:00
LongYinan
67f03a7fd4
ci: fix flaky tests (#2033)
* ci: fix flaky tests

* chore: remove useless deps

* chore: decresse worker_threads counts
2024-04-10 15:43:05 +08:00
LongYinan
4c7d06fc72
feat(cli): support wasm32-wasipxx targets (#2030)
* chore(examples): update wasi binding template

* wasm32-wasip1
2024-04-10 09:08:57 +08:00
翠 / green
0fa755d30a
feat(target): add support for powerpc64le-unknown-linux-gnu (#2023)
* refactor: remove unused ci.ts

* feat(target): add support for powerpc64le-unknown-linux-gnu
2024-04-09 11:27:48 +08:00