Update rust-wasm-bindgen monorepo
This MR contains the following updates:
Package | Type | Update | Change |
---|---|---|---|
js-sys (source) | dependencies | patch |
0.3.68 -> 0.3.72
|
wasm-bindgen (source) | dependencies | patch |
0.2.91 -> 0.2.95
|
web-sys (source) | dependencies | patch |
0.3.68 -> 0.3.72
|
Release Notes
rustwasm/wasm-bindgen (wasm-bindgen)
v0.2.95
Released 2024-10-10
Added
-
Added support for implicit discriminants in enums. #4152
-
Added support for
Self
in complex type expressions in methods. #4155
Changed
- String enums are no longer generate TypeScript types. #4174
Fixed
-
Fixed generated setters from WebIDL interface attributes binding to wrong JS method names. #4170
-
Fix string enums showing up in JS documentation and TypeScript bindings without corresponding types. #4175
v0.2.94
Released 2024-10-09
Added
-
Added support for the WebAssembly
Tail Call
proposal. #4111 -
Add bindings for
RTCPeerConnection.setConfiguration(RTCConfiguration)
method. #4105 -
Add bindings to
RTCRtpTransceiverDirection.stopped
. #4102 -
Added experimental support for
Symbol.dispose
viaWASM_BINDGEN_EXPERIMENTAL_SYMBOL_DISPOSE
. #4118 -
Added bindings for the draft WebRTC Encoded Transform spec. #4125
-
Added
Debug
implementation toJsError
. #4136 -
Added support for
js_name
andskip_typescript
attributes for string enums. #4147 -
Added
unsupported
crate towasm_bindgen_test(unsupported = test)
as a way of running tests on non-Wasm targets as well. #4150 -
Added additional bindings for methods taking buffer view types (e.g.
&[u8]
) with corresponding JS types (e.g.Uint8Array
). #4156 -
Added additional bindings for setters from WebIDL interface attributes with applicaple parameter types of just
JsValue
. #4156
Changed
-
Implicitly enable reference type and multivalue transformations if the module already makes use of the corresponding target features. #4133
-
Updated Gamepad API. #4134
-
Deprecated
Gamepad::display_id
andGamepadHapticActuator::type_
. #4134 -
Removed
GamepadAxisMoveEvent
,GamepadAxisMoveEventInit
,GamepadButtonEvent
,GamepadButtonEventInit
andGamepadServiceTest
, which were seemingly never implemented by any JS environment. #4134 -
Changed
TextDecoder.decode()
input
parameter type from&mut [u8]
to&[u8]
. #4141 -
Updated the WebGPU API to the current draft as of 2024-10-07. #4145
-
Deprecated generated setters from WebIDL interface attribute taking
JsValue
in favor of newer bindings with specific parameter types. #4156
Fixed
-
Fixed linked modules emitting snippet files when not using
--split-linked-modules
. #4066 -
Fixed incorrect deprecation warning when passing no parameter into
default()
(init()
) orinitSync()
. #4074 -
Fixed many proc-macro generated
impl
blocks missing#[automatically_derived]
, affecting test coverage. #4078 -
Fixed negative
BigInt
values being incorrectly formatted with two minus signs. #4082 #4088 -
Fixed emitted
package.json
structure to correctly specify its dependencies #4091 -
Fixed returning
Option<Enum>
now correctly has the| undefined
type in TS bindings. #4137 -
Fixed enum variant name collisions with object prototype fields. #4137
-
Fixed multiline doc comment alignment and remove empty ones entirely. #4135
-
Fixed
experimental-nodejs-module
target when used with#[wasm_bindgen(start)]
. #4093 -
Fixed error when importing very large JS files. #4146
-
Specify
"type": "module"
when deploying to nodejs-module #4092 -
Fixed string enums not generating TypeScript types. #4147
-
Bindings that take buffer view types (e.g.
&[u8]
) as parameters will now correctly return aResult
when they might not support a backingSharedArrayBuffer
. This only applies to new and unstable APIs, which won't cause a breaking in the API. #4156
v0.2.93
Released 2024-08-13
Added
-
Allow exporting functions named
default
. Throw error in wasm-bindgen-cli if --target web and an exported symbol is nameddefault
. #3930 -
Added support for arbitrary expressions when using
#[wasm_bindgen(typescript_custom_section)]
. #3901 -
Implement
From<NonNull<T>>
forJsValue
. #3877 -
Add method
copy_within
for TypedArray, add methodsfind_last
,find_last_index
for Array. #3888 -
Added support for returning
Vec
s from async functions. #3630 -
Added bindings for
InputDeviceInfo
andMediaTrackCapabilities
. #3935 -
Add bindings for
RTCRtpReceiver.getCapabilities(DOMString)
method. #3941 -
Add bindings for
VisualViewport
. #3931 -
Add bindings for
queueMicrotask
. #3981 -
Add experimental bindings for User Agent Client Hints API #3989
-
Add bindings for
FocusOptions
. #3996 -
Add bindings for
RTCRtpReceiver.jitterBufferTarget
. #3968 -
Generate getters for all WebIDL dictionary types. #3993
-
Support for iterable in WebIDL. Gives
entries
,keys
,values
methods for regular and asynchronous, as well asfor_each
for regular, iterables. #3962 -
Add bindings for
HTMLTableCellElement.abbr
andscope
properties. #3972 -
Add WebIDL definitions relating to
Popover API
. #3977 -
Added the
thread_stack_size
property to the object parameter ofdefault()
(init()
) andinitSync()
, making it possible to set the stack size of spawned threads.__wbindgen_thread_destroy()
now has a third optional parameter for the stack size, the default stack size is assumed when not passing it. When calling from the thread to be destroyed, by passing no parameters, the correct stack size is determined internally. #3995 -
Added bindings to the Device Memory API. #4011
-
Added support for WebIDL records. This added new methods to various APIs, notably
ClipboardItem()
,GPUDeviceDescriptor.requiredLimits
andHeader()
. #4030 -
Added an official MSRV policy. Library MSRV changes will be accompanied by a minor version bump. CLI tool MSRV can change with any version bump. #4038
-
Added bindings to
NavigatorOptions.vibrate
. #4041 -
Added an experimental Node.JS ES module target, in comparison the current
node
target uses CommonJS, with--target experimental-nodejs-module
or when testing withwasm_bindgen_test_configure!(run_in_node_experimental)
. #4027 -
Added importing strings as
JsString
through#[wasm_bindgen(thread_local, static_string)] static STRING: JsString = "a string literal";
. #4055 -
Added experimental test coverage support for
wasm-bindgen-test-runner
, see the guide for more information. #4060
Changed
-
Stabilize Web Share API. #3882
-
Generate JS bindings for WebIDL dictionary setters instead of using
Reflect
. This increases the size of the Web API bindings but should be more performant. Also, importing getters/setters from JS now supports specifying the JS attribute name as a string, e.g.#[wasm_bindgen(method, setter = "x-cdm-codecs")]
. #3898 -
Greatly improve the performance of sending WebIDL 'string enums' across the JavaScript boundary by converting the enum variant string to/from an int. #3915
-
Use
table.fill
when appropriate. #3446 -
Annotated methods in WebCodecs that throw. #3970
-
Update and stabilize the Clipboard API. #3992
-
Deprecate builder-pattern type setters for WebIDL dictionary types and introduce non-mutable setters instead. #3993
-
Allow imported async functions to return any type that can be converted from a
JsValue
. #3919 -
Update Web Authentication API to level 3. #4000
-
Deprecate
AudioBufferSourceNode.onended
andAudioBufferSourceNode.stop()
. #4020 -
Increase default stack size for spawned threads from 1 to 2 MB. #3995
-
Deprecated parameters to
default
(init
) andinitSync
in favor of an object. #3995 -
Update
AbortSignal
andAbortController
according to the WHATWG specification. #4026 -
Update the Indexed DB API. #4027
-
UnwrapThrowExt for Result
now makes use of the requiredDebug
bound to display the error as well. #4035 #4049 -
MSRV of CLI tools bumped to v1.76. This does not affect libraries like
wasm-bindgen
,js-sys
andweb-sys
! #4037 -
Filtered files in published crates, significantly reducing the package size and notably excluding any bash files. #4046
-
Deprecated
JsStatic
in favor of#[wasm_bindgen(thread_local)]
, which creates astd::thread::LocalKey
. The syntax is otherwise the same. #4057 -
Removed
impl Deref for JsStatic
when compiling withcfg(target_feature = "atomics")
, which was unsound. #4057 -
Updated the WebGPU WebIDL to the current draft as of 2024-08-05. #4062
-
Use object URLs for linked modules without
--split-linked-modules
. #4067
Fixed
-
Copy port from headless test server when using
WASM_BINDGEN_TEST_ADDRESS
. #3873 -
Fix
catch
not being thread-safe. #3879 -
Fix MSRV compilation. #3927
-
Fix
clippy::empty_docs
lint. #3946 -
Fix missing target features in module when enabling reference types or multi-value transformation. #3967
-
Fixed Rust values getting GC'd while still borrowed. #3940
-
Fixed Rust values not getting GC'd if they were created via. a constructor. #3940
-
Fix triggering
clippy::mem_forget
lint in exported structs. #3985 -
Fix MDN links to static interface methods. #4010
-
Fixed Deno support. #3990
-
Fix
__wbindgen_thread_destroy()
ignoring parameters. #3995 -
Fix
no_std
support and therefor compiling withdefault-features = false
. #4005 -
Fix byte order for big-endian platforms. #4015
-
Allow ex/importing structs, functions and parameters named with raw identifiers. #4025
-
Implement a more reliable way to detect the stack pointer. #4036
-
#[track_caller]
is now always applied onUnwrapThrowExt
methods when not targetingwasm32-unknown-unknown
. #4042 -
Fixed linked modules emitting snippet files when not using
--split-linked-modules
. #4066
v0.2.92
Released 2024-03-04
Added
-
Add bindings for
RTCPeerConnectionIceErrorEvent
. #3835 -
Add bindings for
CanvasState.reset()
, affectingCanvasRenderingContext2D
andOffscreenCanvasRenderingContext2D
. #3844 -
Add
TryFrom
implementations forNumber
, that allow losslessly converting from 64- and 128-bits numbers. #3847 -
Add support for
Option<*const T>
,Option<*mut T>
andNonNull<T>
. #3852 #3857 -
Allow overriding the URL used for headless tests by setting
WASM_BINDGEN_TEST_ADDRESS
. #3861
Fixed
-
Make .wasm output deterministic when using
--reference-types
. #3851 -
Don't allow invalid Unicode scalar values in
char
. #3866
Configuration
-
If you want to rebase/retry this MR, check this box
This MR has been generated by Renovate Bot.