0.000079 2021-09-16
* Teach XS to translate ArrayBuffer & TypedArray to Perl.
* Fix character-encoding oddities, add documentation.
0.000078 2019-08-14
* Add possibility to retrieve Duktape version information.
0.000077 2019-06-28
* Prefer string value for dualvars.
* Fix error: "Don't know how to deal with an undetermined Perl
reference".
* Fix compilation error in 0.76 release.
* Compatibility with perl 5.14.
0.000076 2019-04-08
* Fix handling of large integers between Perl and JS.
0.000075 2019-01-31
* Fix memory leak associated to checking for cyclic data.
* Properly cleanup duktape stack in several cases.
* Add test for calling Perl callback with non-Perl args.
* Support passing Perl objects with magic into JS.
* Allow proper dying from perl module handlers.
0.000074 2018-09-11
* Treat references with more care:
+ Recursively dereference any references.
+ For \0 and \1, convert into false and true.
+ For any other references, use the underlying data.
* Allow passing blessed objects to JS and back; ignore the fact
that they are blessed and treat them as data.
* Improve tests.
0.000073 2018-09-10
* Bring back dispatch_function_in_event_loop() to have an easy
migration path from this to eval(); we will remove it soon.
0.000072 2018-08-30
* Get rid of parse_js_stacktrace -- too specific.
0.000071 2018-08-28
* Convert JS booleans into JSON::PP::Boolean objects.
This allows us to roundtrip, especially for cases such as
reading a JSON file in JS (which will likely use booleans)
and passing that to / from Perl.
* Get rid of dispatch_function_in_event_loop(). It is
actually better that calling eval() always tries to
dispatch any pending timers after running the requested code.
0.000070 2018-07-30
* Fix compilation on threaded perls.
0.000069 2018-07-27
* Add support for removing objects / slots.
0.000068 2018-07-11
* Add method reset() to reset the VM to pristine conditions.
* Add method global_objects().
* Make release script more generic -- Duktape vs V8.
* Minor test improvements.
* Update ppport.h.
0.000067 2018-06-10
* Be explicit about imports from Test::Output.
0.000066 2018-06-10
* Allow saying which files should be prioritised for a stack trace.
* Cleanup eventloop implementation, removing code that deals with
files and sockets, since we don't actually use that.
* Remove test dependencies on Ref::Util, it stopped working on my
laptop for some reason... :-(.
* Made tests easier to compare with tests for JavaScript::V8::XS.
* Add more tests.
0.000065 2018-06-08
* Fix some linux warnings.
0.000064 2018-06-08
* Avoid using stuff that will make linux compilatio fail.
0.000063 2018-06-08
* Embed all required JS code into the module.
0.000062 2018-06-07
* Add support for sandboxing: when creating the duktape object, you
can now specify limits for how much memory will be allocated, and
how long a duktape operation can run before aborting.
* Add more specific types returned by typeof.
* Support data structures with cycles, both in Perl and duktape.
* Add more error checking when gathering stats.
* Several Code refactorings.
* Fixed and improved documentation.
0.000061 2018-05-30
* Stop declaring variables inside a for loop -- doh.
0.000060 2018-05-30
* Add new methods: exists, typeof, instanceof and run_gc.
* Allow get, exists, typeof and instanceof to work on global
objects and on object properties.
* Add support for node-like modules.
* Fix hash keys with UTF8 characters.
* Add a REPL in bin/duktape-repl.
* Refactor C code and split into multiple files.
0.000052 2018-05-09
* Mark Perl strings as UTF-8 always.
0.000051 2018-04-25
* Add test-time dependencies.
0.000050 2018-04-23
* Add routines reset_stats and reset_msgs.
* Add routine to parse a JS stacktrace and get structured
information from it.
0.000049 2018-04-23
* Greatly improved docs.
0.000048 2018-04-19
* Unify error checking after calling a JS function.
0.000047 2018-04-19
* Stop forcing all console output to stderr.
0.000046 2018-04-19
* Clean up implementation of console handlers.
0.000045 2018-04-18
* Change console implementation to allow registering a handler to
log the messages.
* Add option to grab console messages and stash them.
0.000044 2018-04-17
* Add an optional parameter to eval, to specify a JS file name for
stack traces
* Print a JS stack trace to the console when running JS throws
errors.
0.000043 2018-04-16
* Bubble-up to the console any errors that happen in setTimeout.
* Fix pointers to github repo.
0.000042 2018-04-13
* Add test-time dependencies.
0.000041 2018-04-12
* Gather stats in all calls, not just eval.
0.000040 2018-04-12
* Send all console output to stderr by default.
0.000039 2018-04-12
* Add support for gathering and returning stats for JS compilation
and running (both time and memory usage).
0.000038 2018-04-10
* Add support for JS console.
0.000037 2018-04-10
* Split JS code compilation and running.
* Add some performance stats, retrievable with get_stats().
0.000036 2018-04-04
* Add a native function timestamp_ms() callable from JS.
* Add some more tests.
0.000035 2018-03-30
* Test timeouts firing in the correct order.
* Fix dependencies for testing.
0.000034 2018-03-29
* Add method dispatch_function_in_event_loop to call a function
inside an actual event loop; this makes setTimeout actually work.
0.000033 2018-03-28
* Switch to an almost pure C-based implementation of setInterval.
0.000032 2018-03-26
* Avoid floating point values in tests that would cause rounding
errors.
0.000031 2018-03-23
* Restrict to Perl 5.18 and above, to avoid CPAN testing failures.
0.000030 2018-03-22
* Initial release.