- 16-08-2022

- 0.6.3

  - Truffle ruby support! Thanks to Brandon Fish and the truffle team
  - Hide libv8 symbols on ELF targets
  - Slightly shrunk binary size
  - Simplified timeout implementation
  - Some stability fixes

- 17-01-2022

- 0.6.2

  - Fix support for compilation on 2.6, llvm compiles
  - Stability patches to handle rare memory leaks
  - Corrected re-raising of exceptions to support strings
  - During early termination of context under certain conditions MiniRacer could crash


- 31-12-2021

- 0.6.1

  - Added support for single threaded platform: `MiniRacer::Platform.set_flags! :single_threaded`
  must be called prior to booting ANY MiniRacer::Context

- 0.6.0

   - Ruby 3.1 support
   - Fixes memory leak in heap snapshotting
   - Improved compilation ergonomics in clang
   - Migrated internal storage in c extension to TypedData

- 11-04-2021

- 0.5.0
  - Fixes issues on aarch (Apple M1)
  - Update to use libv8-node 16.x (#210) [Loic Nageleisen]
  - FEATURE: Configurable max marshal stack depth (#202) [seanmakesgames]
  - Ruby 2.3 and 2.4 are EOL, we no longer support them

- 0.4.0

  - FEATURE: upgrade to libv8 node 15.14.0 (v8 8.6.395.17)
  - Promote 0.4.0.beta1 to release, using libv8-node release path

- 08-04-2021

- 0.4.0.beta1

  - FIX: on downgrade mkmf was picking the wrong version of libv8, this fix will correct future issues
  - FEATURE: upgraded libv8 to use node libv8 build which supports M1 and various ARM builds v8 moved to (8.6.395.17)

- 23-07-2020

- 0.3.1

  - FIX: specify that libv8 must be larger than 8.4.255 but smaller than 8.5, this avoids issues going forward

- 22-07-2020

- 0.3.0

  - FEATURE: upgraded to libv8 version 8.4.255.0

- 29-06-2020

- 0.2.15

  - FEATURE: basic wasm support via pump_message_loop

- 15-05-2020

- 0.2.14

  - FIX: ensure_gc_after_idle should take in milliseconds like the rest of the APIs not seconds
  - FEATURE: strict params on MiniRacer::Context.new

- 15-05-2020

- 0.2.13

   - FIX: edge case around ensure_gc_after_idle possibly firing when context is not idle

- 15-05-2020

- 0.2.12

  - FEATURE: isolate.low_memory_notification which can force a full GC
  - FEATURE: MiniRacer::Context.new(ensure_gc_after_idle: 2) - to force full GC 2 seconds after context is idle, this allows you to conserve memory on isolates

- 14-05-2020

- 0.2.11

  - FIX: dumping heap snapshots was not flushing the file leading to corrupt snapshots
  - FIX: a use-after-free shutdown crash

- 0.2.10

- 22-04-2020

  - FEATURE: memory softlimit support for nogvl_context_call

- 0.2.9

- 09-01-2020

  - FIX: correct segfault when JS returns a Symbol and properly cast to ruby symbol

- 0.2.8

- 11-11-2019

  - FIX: ensure thread live cycle is properly accounter for following file descriptor fix

- 0.2.7

- 11-11-2019

  - FIX: release the file descriptor for timeout pipe earlier (this avoids holding too many files open in Ruby 2.7)

- 14-05-2019

- 0.2.6

  - FEATURE: add support for write_heap_snapshot which helps you analyze memory

- 25-04-2019

- 0.2.5

  - FIX: Compatiblity fixes for V8 7 and above @ignisf
  - FIX: Memory leak in gc_callback @messense
  - IMPROVEMENT: Added example of sourcemap support @ianks
  - URGENT: you will need this release for latest version of libv8 to work

- 02-11-2018

- 0.2.4

  - FIX: deadlock releasing context when shared isolates are used
  - FEATURE: include js backtrace when snapshots do not compile

- 28-09-2018

- 0.2.3

  - Drop all conditional logic from Mini Racer compilation for clang, always
	  rely on MacOS being High Sierra or up

- 26-09-2018

- 0.2.2

  - WORKAROUND: RUBY_PLATFORM is hardcoded on Ruby compile and can not be
	trusted for feature detection, use a different technique when checking for
	macOS Mojave

- 25-09-2018

- 0.2.1

  - FEATURE: Mojave macOS support

- 06-07-2018

- 0.2.0
  - FEATURE: context#call to allow for cheaper invocation of functions
  - FIX: rare memory leak when terminating a long running attached function
  - FIX: rare segfault when terminating a long running attached function
  - FIX: Reimplement Isolate#idle_notification using idle_notification_deadline, API remains the same @ignisf
  - Account for changes in the upstream V8 API @ignisf
  - Support for libv8 6.7

23-08-2017

- 0.1.15

  - bump dependency of libv8 to 6.3

23-08-2017

- 0.1.14

  - libv8 erronuously bumped to beta, reverted change

23-08-2017

- 0.1.13

  - Fix: amend array buffer allocator to use v8 6.0 compatible allocator @ignisf

18-07-2017

- 0.1.12

  - Feature: upgrade libv8 to 5.9
  - Fix: warning when runnin with ruby warnings enabled (missed @disposed initialize)

18-07-2017

- 0.1.11

  - Feature: upgrade libv8 to 5.7

13-07-2017

- 0.1.10

 - Fix leak: memory leak when disposing a context (20 bytes per context)
 - Feature: added #heap_stats so you can get visibility from context to actual memory usage of isolate
 - Feature: added #dispose so you reclaim all v8 memory right away as opposed to waiting for GC
 - Feature: you can now specify filename in an eval eg: eval('a = 1', filename: 'my_awesome.js')

09-03-2017

- 0.1.9

 - Perf: speed up ruby/node boundary performance when moving large objects

06-02-2017

- 0.1.8

  - Fix: Include math.h to fix use of undeclared identifier floor with rbx. See #51

02-11-2016

- 0.1.7

  - Fix: if for some reason an isolate was forked don't free it and raise a warning instead to avoid hanging process

25-10-2016

- 0.1.6

  - Fix: timeout behavior was incorrect, in some cases stop could be called on already stopped contexts

10-10-2016

- 0.1.5

  - Support for snapshots, shared isolates, runtime flags thanks to @wk8
  - Fix timeout behavior when it occurs in an attached Ruby method

19-05-2016

- 0.1.4

  - Set upper bound for libv8 inclusion @ignisf
  - Support conversion of Date, Time and DateTime from Ruby to JS @seanmakesgames
  - Support conversion of large numbers back from Ruby to JS @seanmakesgames

- 0.1.3

  - Support more conversions from Ruby back to JS (Hash, Symbol, Array)
  - Support attaching nested objects


17-05-2016

- 0.1.2

  - Gemspec specifies minimal version of Ruby (2.0)
  - Implement #load on Context to load files

17-05-2016

- 0.1.1

  - Added unblock function so SIGINT does not lead to a crash

14-05-2016

- 0.1.1.beta.1

   - First release
