Releases: rogchap/v8go
Releases · rogchap/v8go
v0.9.0
What's Changed
- Upgrade V8 binaries for 10.9.194.9 version working by @jacques-n in #363
- Upgrade V8 binaries for 11.1.277.13 version by @github-actions in #373
- v0.9.0 by @RGood in #376
New Contributors
- @jacques-n made their first contribution in #363
- @RGood made their first contribution in #376
Full Changelog: v0.8.0...v0.9.0
v0.8.0
Full changelog ⇒ v0.8.0
What's Changed
- Allocate profile node children array using count by @genevieve in #256
- Build v8 for linux_arm64 by @epk in #223
- CHANGELOG: Highlight the subtlety of the Function Call breaking change by @dylanahsmith in #259
- change -fpic to -fPIC in cgo.go by @iwind in #263
- Remove unnecessary nested Locker and Isolate::Scope use by @dylanahsmith in #275
- Upgrade V8 binaries for 9.7.106.18 version by @github-actions in #264
- Use length to ensure null chars do not cause early termination of C string copies/reads by @genevieve in #272
- Fix Object.Set with an empty key string by @dylanahsmith in #276
- Upgrade V8 binaries for 9.7.106.19 version by @github-actions in #278
- Fix typo in promise.go by @lukasmalkmus in #310
- Updating context documentation by @ryanmurakami in #335
- Add additional CPUProfile values by @ryanmurakami in #341
- v8.Value becomes manually releaseable by @fizx in #361
New Contributors
- @iwind made their first contribution in #263
- @lukasmalkmus made their first contribution in #310
- @ryanmurakami made their first contribution in #335
- @fizx made their first contribution in #361
Full Changelog: v0.7.0...v0.8.0
v0.7.0
Full changelog ⇒ v0.7.0
Added
- Support for calling constructors functions with NewInstance on Function
- Access "this" from function callback
- value.SameValue(otherValue) function to compare values for sameness
- Undefined, Null functions to get these constant values for the isolate
- Support for calling a method on an object.
- Support for calling
IsExecutionTerminating
on isolate to check if execution is still terminating. - Support for setting and getting internal fields for template object instances
- Support for CPU profiling
- Add V8 build for Apple Silicon
- Add support for throwing an exception directly via the isolate's ThrowException function.
- Support for compiling a context-dependent UnboundScript which can be run in any context of the isolate it was compiled in.
- Support for creating a code cache from an UnboundScript which can be used to create an UnboundScript in other isolates
to run a pre-compiled script in new contexts. - Included compile error location in
%+v
formatting of JSError - Enable i18n support
Changed
- Removed error return value from NewIsolate which never fails
- Removed error return value from NewContext which never fails
- Removed error return value from Context.Isolate() which never fails
- Removed error return value from NewObjectTemplate and NewFunctionTemplate. Panic if given a nil argument.
- Function Call accepts receiver as first argument.
- Removed Windows support until its build issues are addressed.
- Upgrade to V8 9.6.180.12
Fixed
- Add some missing error propagation
- Fix crash from template finalizer releasing V8 data, let it be disposed with the isolate
- Fix crash by keeping alive the template while its C++ pointer is still being used
- Fix crash from accessing function template callbacks outside of
RunScript
, such as inJSONStringify
v0.6.0
Full changelog ⇒ v0.6.0
Added
- Promise resolver and promise result
- Convert a Value to a Function and invoke it. Thanks to @robfig
- Windows static binary. Thanks to @cleiner
- Setting/unsetting of V8 feature flags
- Register promise callbacks in Go. Thanks to @robfig
- Get Function from a template for a given context. Thanks to @robfig
Changed
- Upgrade to V8 9.0.257.18
Fixed
- Go GC attempting to free C memory (via finalizer) of values after an Isolate is disposed causes a panic
v0.5.1
v0.5.0
Full changelog ⇒ v0.5.0
Added
- Support for the BigInt value to the big.Int Go type
- Create Object Templates with primitive values, including other Object Templates
- Configure Object Template as the global object of any new Context
- Function Templates with callbacks to Go
- Value to Object type, including Get/Set/Has/Delete methods
- Get Global Object from the Context
- Convert an Object Template to an instance of an Object
Changed
- NewContext() API has been improved to handle optional global object, as well as optional Isolate
- Package error messages are now prefixed with
v8go
rather than the struct name - Deprecated
iso.Close()
in favor ofiso.Dispose()
to keep consistancy with the C++ API - Upgraded V8 to 8.8.278.14
- Licence BSD 3-Clause (same as V8 and Go)
v0.4.0
Added
- Value methods for checking value kind (is string, number, array etc)
- C formatting via
clang-format
to aid future development - Support of vendoring with
go mod vendor
- Value methods to convert to primitive data types
Changed
- Use g++ (default for cgo) for linux builds of the static v8 lib