summaryrefslogtreecommitdiff
path: root/ext
AgeCommit message (Collapse)Author
2020-11-20Ripper.{lex,tokenize} return full tokens even if syntax errorNobuhiro IMAI
yet another implements [Feature #17276]
2020-11-20Document Different Coverage ModesKevin Murphy
This commits adds in documentation to illustrate the different modes you can start coverage with. Examples are provided to show how to start each of these modes, along with an explanation of the mode and a description of the output. Notes: Merged: https://github.com/ruby/ruby/pull/3792
2020-11-17Update documentation for Ripper.{lex,tokenize,sexp,sexp_raw} [ci skip]Jeremy Evans
2020-11-17Support raise_errors keyword for Ripper.{lex,tokenize,sexp,sexp_raw}Jeremy Evans
Implements [Feature #17276] Notes: Merged: https://github.com/ruby/ruby/pull/3774 Merged-By: jeremyevans <code@jeremyevans.net>
2020-11-18Update Fiddle's dependenciesSutou Kouhei
Notes: Merged: https://github.com/ruby/ruby/pull/3780
2020-11-18[ruby/fiddle] Remove needless returnSutou Kouhei
https://github.com/ruby/fiddle/commit/50e02f9445 Notes: Merged: https://github.com/ruby/ruby/pull/3780
2020-11-18[ruby/fiddle] Bump versionSutou Kouhei
https://github.com/ruby/fiddle/commit/74b65cb858 Notes: Merged: https://github.com/ruby/ruby/pull/3780
2020-11-18[ruby/fiddle] Remove needless workaroundSutou Kouhei
It's fixed in upstream. https://github.com/MSP-Greg/ruby-loco/issues/4 https://github.com/ruby/fiddle/commit/2ae0ff4934 Notes: Merged: https://github.com/ruby/ruby/pull/3780
2020-11-18[ruby/fiddle] Add workaround for ruby head for mingwSutou Kouhei
https://github.com/ruby/fiddle/commit/bb227c206d Notes: Merged: https://github.com/ruby/ruby/pull/3780
2020-11-18[ruby/fiddle] Use msys2_mingw_dependenciesSutou Kouhei
https://github.com/ruby/fiddle/commit/fee175a8ff Notes: Merged: https://github.com/ruby/ruby/pull/3780
2020-11-18[ruby/fiddle] Use ruby_xcalloc() instead of ruby_xmalloc() and memset()Sutou Kouhei
https://github.com/ruby/fiddle/commit/6d24fb5438 Notes: Merged: https://github.com/ruby/ruby/pull/3780
2020-11-18[ruby/fiddle] Remove needless rescueSutou Kouhei
GitHub: fix GH-15 Reported by Eneroth3. Thanks!!! https://github.com/ruby/fiddle/commit/f3d70b81ec Notes: Merged: https://github.com/ruby/ruby/pull/3780
2020-11-18[ruby/fiddle] Add workaround for RubyInstaller for WindowsSutou Kouhei
See comment for details. https://github.com/ruby/fiddle/commit/0c76f03dc4 Notes: Merged: https://github.com/ruby/ruby/pull/3780
2020-11-18[ruby/fiddle] Add a "pinning" reference (#44)Aaron Patterson
* Add a "pinning" reference A `Fiddle::Pinned` objects will prevent the objects they point to from moving. This is useful in the case where you need to pass a reference to a C extension that keeps the address in a global and needs the address to be stable. For example: ```ruby class Foo A = "hi" # this is an embedded string some_c_function A # A might move! end ``` If `A` moves, then the underlying string buffer may also move. `Fiddle::Pinned` will prevent the object from moving: ```ruby class Foo A = "hi" # this is an embedded string A_pinner = Fiddle::Pinned.new(A) # :nodoc: some_c_function A # A can't move because of `Fiddle::Pinned` end ``` This is a similar strategy to what Graal uses: https://www.graalvm.org/sdk/javadoc/org/graalvm/nativeimage/PinnedObject.html#getObject-- * rename global to match exception name * Introduce generic Fiddle::Error and rearrange error classes Fiddle::Error is the generic exception base class for Fiddle exceptions. This commit introduces the class and rearranges Fiddle exceptions to inherit from it. https://github.com/ruby/fiddle/commit/ac52d00223 Notes: Merged: https://github.com/ruby/ruby/pull/3780
2020-11-18[ruby/fiddle] Add support for specifying types by name as String or SymbolSutou Kouhei
For example, :voidp equals to Fiddle::TYPE_VOID_P. https://github.com/ruby/fiddle/commit/3b4de54899 Notes: Merged: https://github.com/ruby/ruby/pull/3780
2020-11-18[ruby/fiddle] Add TYPE_CONST_STRING and SIZEOF_CONST_STRING for "const char *"Sutou Kouhei
Add rb_fiddle_ prefix to conversion functions.h to keep backward compatibility but value_to_generic() isn't safe for TYPE_CONST_STRING and not String src. Use rb_fiddle_value_to_generic() instead. https://github.com/ruby/fiddle/commit/0ffcaa39e5 Notes: Merged: https://github.com/ruby/ruby/pull/3780
2020-11-18fix public interfaceKoichi Sasada
To make some kind of Ractor related extensions, some functions should be exposed. * include/ruby/thread_native.h * rb_native_mutex_* * rb_native_cond_* * include/ruby/ractor.h * RB_OBJ_SHAREABLE_P(obj) * rb_ractor_shareable_p(obj) * rb_ractor_std*() * rb_cRactor and rm ractor_pub.h and rename srcdir/ractor.h to srcdir/ractor_core.h (to avoid conflict with include/ruby/ractor.h) Notes: Merged: https://github.com/ruby/ruby/pull/3775
2020-11-12[ruby/date] Numeric already includes ComparableAkira Matsuda
https://github.com/ruby/date/commit/f6140df0ad
2020-11-12[ruby/date] Updated timezones from timeanddate.comNobuyoshi Nakada
https://github.com/ruby/date/commit/f08175e34d
2020-11-12[ruby/date] Honor timezones from timeanddate.comNobuyoshi Nakada
https://github.com/ruby/date/commit/d20380fc55
2020-11-12[ruby/date] Fixed the script file name to update zonetab.listNobuyoshi Nakada
https://github.com/ruby/date/commit/3c002b1daa
2020-11-12[ruby/date] [DOC] declate DateTime class is deprecatedNARUSE, Yui
https://github.com/ruby/date/commit/58ca6e6a3e
2020-11-11Use Fiddle::Importer directlyHiroshi SHIBATA
Notes: Merged: https://github.com/ruby/ruby/pull/3712
2020-11-11Removed win32/resolv.rb for 32bit envHiroshi SHIBATA
Notes: Merged: https://github.com/ruby/ruby/pull/3712
2020-11-11Removed win32apiHiroshi SHIBATA
Notes: Merged: https://github.com/ruby/ruby/pull/3712
2020-11-10Use fiddle (win32/importer) instead of Win32APINAKAMURA Usaku
- ext/win32/lib/win32/sspi.rb: Use fiddle (win32/importer) instead of Win32API
2020-11-10Complex and Rational is embedded classes nowHiroshi SHIBATA
Notes: Merged: https://github.com/ruby/ruby/pull/3753
2020-11-01ext/socket/rubysocket.h: avoid the conflict of T_DATA definition in AIXRei Odaira
2020-10-30Promote win32ole to default gems.Hiroshi SHIBATA
But win32ole gem is still experimental for 3.0.0-preview2. I'm working to extract this library on https://github.com/ruby/win32ole.
2020-10-28Use public allocators for creating new T_OBJECT objectsAaron Patterson
This way the header flags and object internals are set correctly Notes: Merged: https://github.com/ruby/ruby/pull/3719
2020-10-21Use rb_intern_const instead of rb_intern in Init functionsNobuyoshi Nakada
``` find . -name \*.o -exec nm {} + |& sed '/Init_.*\.rbimpl_id/!d;s/^.* b //;s/\.[1-9][0-9]*$//;s/\.rbimpl_id$//' | uniq ``` should be empty.
2020-10-21Don't redefine #rb_intern over and over againStefan Stüben
Notes: Merged: https://github.com/ruby/ruby/pull/3589
2020-10-21Update dependencies for macOSNobuyoshi Nakada
2020-10-20Implement a freeze: parser optionJean Boussier
If set to true all parsed objects will be immediately frozen, and strings will be deduplicated if the Ruby implementation allows it.
2020-10-19Followed up with 708413807ae958afb79257b18475424e0a8a4a56Hiroshi SHIBATA
* Added sync task for digest * Update doc/* for default gems * Update the latest version of gemspec
2020-10-19Revisit to promote digest to default gems.Hiroshi SHIBATA
This reverts commit f39021be7e0eac20ef7f06592769955ea482470f.
2020-10-16keep proc on the stack so it does not moveAaron Patterson
2020-10-14Promote pathname to default gemsHiroshi SHIBATA
2020-10-11Adjusted indents [ci skip]Nobuyoshi Nakada
2020-10-11Respect the original styles [ci skip]Nobuyoshi Nakada
2020-10-11[ruby/io-console] Refined getch warningsNobuyoshi Nakada
https://github.com/ruby/io-console/commit/f84e6abcce
2020-10-11[ruby/io-console] Relaxed min: option warningNobuyoshi Nakada
When `min: 0` is given to `IO#getch` with `time:` option, it is expected to return nil if timed out, and needed for source code the compatibility with unixen platforms. https://github.com/ruby/io-console/commit/a2afbe72bd
2020-10-11[ruby/io-console] Fix timeout type error (#18)Nobuyoshi Nakada
Fixed TypeError when IO#getch timed out `rb_io_wait` returns a bit-flags Integer representing available events, or Qfalse if timed out. Also the result of `NUM2INT` is not a `VALUE`. ``` $ ./bin/ruby -v -rio/console -e "p IO.console.getch(intr: true, time: 0.1)" ruby 3.0.0dev (2020-10-09T20:27:30Z master 5ea2ea74cc) [x64-mingw32] -e:1:in `getch': no implicit conversion of false into Integer (TypeError) from -e:1:in `<main>' ``` https://github.com/ruby/io-console/commit/3bdfaf62df
2020-10-11[ruby/io-console] Fixed "Rework console to use `rb_io_wait`."Nobuyoshi Nakada
* Fixed backward compatibility. * Added missing `rb_scheduler_timeout` declaration. https://github.com/ruby/io-console/commit/813806079f
2020-10-10Fixed typo in commentIkko Ashimine
alway -> always Notes: Merged: https://github.com/ruby/ruby/pull/3646
2020-10-06Prevent objects from moving while iterating the heapAaron Patterson
This iterator uses an st_table, but if objects move the references in the st table won't be updated. This patch just changes the st table to an identity hash. Notes: Merged: https://github.com/ruby/ruby/pull/3634
2020-10-06Appended a newline to suppress newline-eof warningNobuyoshi Nakada
2020-10-06STRUCT_ALIGNOF: use RUBY_ALIGNOF卜部昌平
This was a workaround for RUBY_ALIGNOF's glitch, which has already been fixed. See also https://github.com/ruby/ruby/pull/3570 Notes: Merged: https://github.com/ruby/ruby/pull/3631
2020-10-02mark regex internal to string scannerAaron Patterson
Notes: Merged: https://github.com/ruby/ruby/pull/3623
2020-10-03Fix ObjectSpace.dump(obj, output: :stdout)Kazuhiro NISHIYAMA
RDoc says `ObjectSpace.dump(obj, output: :stdout) # => nil`, but it returns STDOUT since fbba6bd4e3dff7a61965208fecae908f10c4edbe. I think it is unintentional change. Notes: Merged: https://github.com/ruby/ruby/pull/3620