AgeCommit message (Collapse)Author
2020-08-27git rm include/ruby/backward/rubysig.h卜部昌平
Notes: Merged:
2020-08-27git rm include/ruby/backward/{st,util}.h卜部昌平
Notes: Merged:
2020-08-27* 2020-08-27 [ci skip]git
2020-08-27rb_deprecated_classext_struct: delete卜部昌平
Used from nowhere any longer. Notes: Merged:
2020-08-27git rm include/ruby/backward/classext.h卜部昌平
Notes: Merged:
2020-08-27sed -i '\,2/extern.h,d'卜部昌平
Notes: Merged:
2020-08-27git rm include/ruby/backward/2/extern.h卜部昌平
Notes: Merged:
2020-08-26Fixed error messages at non-ascii %string terminatorNobuyoshi Nakada
2020-08-26Removed a never-true conditionNobuyoshi Nakada
2020-08-26[webrick][DOC] Describe the stance of WEBrick about its security and ↵Kenta Murata
utilization (#3457) WEBrick is not recommended for the production use. We need to explicitly describe this fact in the document to avoid troubles due to misunderstanding. Notes: Merged-By: mrkn <>
2020-08-25Comply with guide for method doc: hash.c (#3454)Burdette Lamar
Methods reviewed (a few not modified): key delete shift delete_if reject! reject slice except values_at fetch_values select select! keep_if Notes: Merged-By: BurdetteLamar <>
2020-08-25Add documentation to "dcompact" callback and "parent" memberLars Kanis
Notes: Merged:
2020-08-25Correctly account for heap_pages_final_slots so it does not underflowPeter Zhu
`rb_objspace_call_finalizer` creates zombies, but does not do the correct accounting (it should increment `heap_pages_final_slots` whenever it creates a zombie). When we do correct accounting, `heap_pages_final_slots` should never underflow (the check for underflow was introduced in 39725a4db6b121c7779b2b34f7da9d9339415a1c). The implementation moves the accounting from the functions that call `make_zombie` into `make_zombie` itself, which reduces code duplication. Notes: Merged:
2020-08-26* 2020-08-26 [ci skip]git
2020-08-25Comply with guide for method doc: hash.c (#3451)Burdette Lamar
Methods: ::new ::[] ::try_convert #rehash #[] #fetch #default #default= #default_proc #default_proc= Notes: Merged-By: BurdetteLamar <>
2020-08-25Promote nkf to default gemsHiroshi SHIBATA
2020-08-25Fix erb executableLars Kanis
Run ERb processing unconditionally since __FILE__ and $0 doesn't match in a gem context. Notes: Merged:
2020-08-25Specify the executable of erbHiroshi SHIBATA
2020-08-25* 2020-08-25 [ci skip]git
2020-08-24Update documentation to document it yields a single argument [ci skip]Jeremy Evans
For a regular block, accepting two arguments is fine as the array will be autosplatted. However, a lambda that accepts two arguments will not work. We could change the implementation to yield two arguments instead of an array with a single argument, but that would be less backwards compatible. I'm only changing the call-seq to be precise, other examples pass a literal block that accepts two arguments, and I left those alone as that will be the most common usage. Fixes [Bug #17094]
2020-08-24Added entry for changes of default gemsHiroshi SHIBATA
2020-08-24Fix links [ci skip]Kazuhiro NISHIYAMA add an example, add references, and move some itemsYusuke Endoh
2020-08-24* 2020-08-24 [ci skip]git
2020-08-23Remove checks for self returned in array.c and hash.c examples (#3446)Burdette Lamar
Further compliance with Notes: Merged-By: BurdetteLamar <>
2020-08-23Fix typosKazuhiro NISHIYAMA
2020-08-23* 2020-08-23 [ci skip]git
2020-08-23.github/workflows/compilers.yml: more compilers卜部昌平
Added some cross compilers that we can run on GitHub Workflow runner environments. Because they are cross compilers we cannot run the generated binary. The added matrix are compile-only. Notes: Merged: suppress more Sun C warnings.卜部昌平
They are rather annoying than being useful to us.
2020-08-22.travis.yml: prefer gcc卜部昌平
It seems `clang --save-temps` does not interface well with tool/update-deps. Prefer gcc for that purpose. more checks on STRIP卜部昌平
STRIP now depends on compilers, not on OS. Previous check against $target_os does no longer work.
2020-08-22Fix type of getlogin_r's 2nd argumentKazuhiro NISHIYAMA ``` process.c:5593:37: error: implicit conversion loses integer precision: 'long' to 'int' [-Werror,-Wshorten-64-to-32] while ((gle = getlogin_r(login, loginsize)) != 0) { ~~~~~~~~~~ ^~~~~~~~~ ``` type of getlogin_r's 2nd argument is - int on FreeBSD - - size_t on Linux, NetBSD - -
2020-08-21Avoid a use after free in VM assertionJeremy Evans
If the thread for the current EC has been killed, don't check the VM ptr for the EC (which gets it via the thread), as that will have already been freed. Fixes [Bug #16907] Notes: Merged:
2020-08-21Remove trivial examples from array.c (#3442)Burdette Lamar
"Trivial" typically means "returns a new empty Array." Notes: Merged-By: BurdetteLamar <>
2020-08-21Remove nil-return examples from hash.c (#3438)Burdette Lamar
* Remove nil-return examples from hash.c Notes: Merged-By: BurdetteLamar <> rule out old Sun C++卜部昌平
CI failures observed for old Sun C++. We don't want to hustle, as newer versions are okay. Just check the sanity and rule out insane compilers. Notes: Merged:
2020-08-22protect CFLAGS from being smashed by AC_PROG_CC卜部昌平
AC_PROG_CC_C99 calls AC_PROC_CC, which calls _AC_PROG_CC_G, which sets default CFLAGS, whose contents are not customisable. We don't welcome this behaviour. The exact same thing happens for CXXFLAGS in AC_PROG_CXX. Notes: Merged:
2020-08-22* 2020-08-22 [ci skip]git
2020-08-22do not test --version卜部昌平
`llvm-strip-7` is a sane valid strip command that LLVM 7 ships, albeit it does not understand `--version`. It is a bad idea to check that option. Instead just see if the command actually strips something. A copy of `/bin/sh` should suffice. That file must be ubiquitous. Notes: Merged:
2020-08-21Fixup 3292f4d965845d543733559fd1736b8c42fadab3Hiroshi SHIBATA
2020-08-21Fixed the executable path for erb commandHiroshi SHIBATA
2020-08-21Promote erb to default gemsHiroshi SHIBATA
2020-08-21Promote rinda to default gemsHiroshi SHIBATA try GCC-provided ld卜部昌平
In case of cross-compilation, GCC might provide its own linker. Its behaviour seems slightly different from that of gcc(1). This is not a big deal for normal situations, but the difference can cause libtool to go mad. We ship bundled libffi for windows users, and libffi uses libtool. If we use cross-compiler version of gcc instead of its ld conterpart, we fail to compile fiddle. That should not be what we want.
2020-08-21AC_PROG_CXXCPP: remove卜部昌平
Caused CI failures on environments without sane C++ compilers. move program_transform_name卜部昌平
Historically `$program_transform_name` has been put in front of `AC_CANONICAL_TARGET`. Previous commit changes it, which affects the name of generated ruby binary when cross-compiling. I _guess_ the historical behaviour is a bug (name of ruby binary shall honour --target configure option I think), but anyways here I preserve that questionable way. Notes: Merged: use compiler-provided toolchains卜部昌平
These days as link-time optimisations spread accross compilers, they tend to ship their own version of ld, ar, etc. Why not detect such things if any. Users can select compilers by ./configure --with-gcc= whatever, or select individual tool by e.g. ./configure NM=whatever. The added AC_ARG_VAR macros enrich ./configure --help output. Notes: Merged:
2020-08-21HAVE_STMT_AND_DECL_IN_EXPR: not for Sun C++卜部昌平
Because we check HAVE_STMT_AND_DECL_IN_EXPR in configure, it is peoven to work in C. But C++ situation can be different. Oracle Developer Studio is another example of such things. Notes: Merged:
2020-08-21ext/-test-/cxxanyargs: suppress SunPro warning卜部昌平
I found a way to suppress particular kind of warnings via pragmas. Notes: Merged:
2020-08-21RBIMPL_HAS_CPP_ATTRIBUTE: handle SunPro卜部昌平
Oracle Developer Studio's C++ preprocessor started to understand __has_cpp_attribute since version 12.5, and is broken. After looking around for a while I found Boost and ICU also had this issue before. Let me add workaround for it. Notes: Merged: