Skip to content

TruffleRuby - GraalVM Community Edition 1.0 RC11

Pre-release
Pre-release
Compare
Choose a tag to compare
@ansalond ansalond released this 15 Jan 09:42
· 16893 commits to master since this release

New features:

  • macOS clocks CLOCK_MONOTONIC_RAW, _MONOTONIC_RAW_APPROX, _UPTIME_RAW,
    _UPTIME_RAW_APPROX, and _PROCESS_CPUTIME_ID have been implemented (#1480).
  • TruffleRuby now automatically detects native access and threading permissions
    from the Context API, and can run code with no permissions given (Context.create()).

Bug fixes:

  • FFI::Pointer now does the correct range checks for signed and unsigned values.
  • Allow signal 0 to be used with Process.kill (#1474).
  • IO#dup now properly sets the new IO instance to be close-on-exec.
  • IO#reopen now properly resets the receiver to be close-on-exec.
  • StringIO#set_encoding no longer raises an exception if the underlying
    String is frozen (#1473).
  • Fix handling of Symbol encodings in Marshal#dump and Marshal#load (#1530).

Compatibility:

  • Implemented Dir.each_child.
  • Adding missing support for the close_others option to exec and spawn.
  • Implemented the missing MatchData#named_captures method (#1512).

Changes:

  • Process::CLOCK_ constants have been given the same value as in standard
    Ruby.

Performance:

  • Sped up accesses to native memory through FFI::Pointer.
  • All core files now make use of frozen String literals, reducing the number
    of String allocations for core methods.
  • New -Xclone.disable option to disable all manual cloning.