Releases: godotjs/GodotJS
Releases · godotjs/GodotJS
v0.9.9
v0.9.8 (1.0.0-pre)
- Fix a crash issue in
jsb::Buffer
destructor when using quickjs-ng as runtime - Support for pure JavaScript projects (still with typings)
- Refactor annotations and helper functions in
jsb.core
Breaking Changes
- All annotations are moved into
godot.annotations
module (fromjsb.core
). GLOBAL_GET
andEDITOR_GET
are moved intogodot
module (fromjsb.core
).callable()
is removed fromjsb.core
, useCallable.create
ingodot
module instead.to_array_buffer()
is removed fromjsb.core
, usePackedByteArray.to_array_buffer()
instead.$wait
is removed fromjsb.core
, useSignalN<...>.as_promise()
instead.
Note
Regenerating .d.ts
files in your project will help you a lot to fix most errors caused by the breaking changes below.
VSCode (or tsc
) will report all relevant changes as errors.
Old annotations still work temporarily in this version but will be removed in a future version. Please update your codes.
v0.9.7
- Support quickjs-ng
- Improve error handling in quickjs.impl
- minor fixes
v0.9.6
v0.9.5
FEATURES
- bridge: Support Worker (experimental)
- bridge: add rpc annotation support (not finished)
IMPROVEMENTS
- debugger: add custom natvis for
SArray<T>
andLocal<T>
- weaver: split jsb.bundle into files for editor/runtime to reduce data cost at runtime
- weaver-editor: Add a menu entry to cleanup obsolete
.js
files - weaver-editor: Retrieve input history by up/down arrow keystroke in REPL
- bridge: use get_instance_binding for better compatibilities with other modules
- bridge:
console.log
prints the script class name of a script instance instead of it's base native class - codegen: support Callable with an optional return type
- codegen: use
GError
as class name for the global enumError
BUGFIX
- quickjs.impl: possible leaks if no execution called
- quickjs.impl: incorrect stacktrace pattern for
jsb_sourcemap
- quickjs.impl: possible crash when coverting an empty string (on linux)
- bridge: possible
environment.objects_
access violation - bridge: Thread.set_name should be called in spawned threads
v0.9.4
IMPROVEMENTS:
- [quickjs.impl] add valuetype optimization
- [quickjs.impl] possible to build for Web with
use_quickjs=yes
(not tested) - Generate
.gdignore
innode_modules
anyway when starting up the editor
BUGFIX
- a crash issue caused by unbalanced reference counting in
bind_godot_object/finalizer
- a crash issue in
TimerManager::invoke_timers
- [quickjs.impl] fix crash issues on disposing quickjs.impl's Isolate
v0.9.2
v0.9.1
v0.9.0
v0.8.6
- Experimental: Automatically collect all dependent JS files when exporting (include JS source files in
node_modules
) - Experimental: Add code doc helper annotations (
@deprecated @experimental @help
) - Experimental: Add
Android
andiOS
build support (not fully tested) - Fixed: tsc doesn't emit JS with relative path of TS source (explicitly define
rootDir='./'
intsconfig.json
now)