Yusuke Endoh
b68dab8667
ext/fiddle/extconf.rb: Fix the condition of libffi <= 3.1
...
ver is [3, 1, 0] which is not less then or equal to [3, 1]
2020-05-13 10:57:14 +09:00
Jeremy Evans
de29a022ac
Document that #hash is not called for certain core classes [ci skip]
...
Fixes [Bug #16850 ]
2020-05-12 18:01:16 -07:00
Yusuke Endoh
9cfa811b0f
Do not try ffi_closure_alloc if libffi is <= 3.1
...
Maybe due to e1855100e4
, CentOS, RHEL, and
Fedora CIs have started failing with SEGV. Try to avoid
ffi_closure_alloc on those environments.
https://rubyci.org/logs/rubyci.s3.amazonaws.com/centos8/ruby-master/log/20200512T183004Z.fail.html.gz
https://rubyci.org/logs/rubyci.s3.amazonaws.com/fedora32/ruby-master/log/20200512T183004Z.fail.html.gz
https://rubyci.org/logs/rubyci.s3.amazonaws.com/rhel8/ruby-master/log/20200512T183003Z.fail.html.gz
2020-05-13 08:42:48 +09:00
Hiroshi SHIBATA
777b5b4f39
Bump version to use RSpec 3.8+
2020-05-13 07:54:37 +09:00
Hiroshi SHIBATA
cecd343336
Skip the examples for bundle exec with gem installation
2020-05-13 07:54:37 +09:00
Hiroshi SHIBATA
f61dbb921e
Marked the some examples that are not working with the ruby repository
2020-05-13 07:54:37 +09:00
Hiroshi SHIBATA
aecbb78517
Use relative path in ruby core repository
2020-05-13 07:54:37 +09:00
Hiroshi SHIBATA
143872bf98
Unmask the some of examples with ruby_repo label
2020-05-13 07:54:37 +09:00
Hiroshi SHIBATA
ca892e6902
Skip the example to use rake command
2020-05-13 07:54:37 +09:00
Hiroshi SHIBATA
ea517cfe23
skip lockfile_spec.rb:33 because it cleanup the .bundle repo
2020-05-13 07:54:37 +09:00
Hiroshi SHIBATA
fcb5a9ee46
Resolved the file path of gemspec for ruby core repository
2020-05-13 07:54:37 +09:00
Hiroshi SHIBATA
cf9619084b
Bump version to use Rake 13 in bundler examples
2020-05-13 07:54:37 +09:00
Hiroshi SHIBATA
5b634afe4c
Added test_gems.rb for setup dependencies
2020-05-13 07:54:37 +09:00
Hiroshi SHIBATA
a7c1791cec
Partly reverted bundler.gemspec for ruby core testing
2020-05-13 07:54:37 +09:00
Hiroshi SHIBATA
0e60b59d58
Update the bundler version with master branch
2020-05-13 07:54:37 +09:00
git
68224651a4
* 2020-05-13 [ci skip]
2020-05-13 01:24:17 +09:00
Yusuke Endoh
e1855100e4
ext/fiddle/extconf.rb: check if ffi_closure_alloc is available
...
to define HAVE_FFI_CLOSURE_ALLOC.
The macro is used in closure.c, so have_func check is needed.
If pkg-config is not installed, extconf.rb fails to detect the version
of libffi, and does not add "-DUSE_FFI_CLOSURE_ALLOC=1" even when system
libffi version is >= 3.2.
If USE_FFI_CLOSURE_ALLOC is not defined, closure.c attempts to check if
HAVE_FFI_CLOSURE_ALLOC is defined or not, but have_func was removed with
528a3a1797
, so the macro is always not
defined.
This resulted in this deprecation warning:
https://rubyci.org/logs/rubyci.s3.amazonaws.com/ubuntu2004/ruby-master/log/20200512T123003Z.log.html.gz
```
compiling closure.c
closure.c: In function 'initialize':
closure.c:265:5: warning: 'ffi_prep_closure' is deprecated: use ffi_prep_closure_loc instead [-Wdeprecated-declarations]
265 | result = ffi_prep_closure(pcl, cif, callback, (void *)self);
| ^~~~~~
In file included from ./fiddle.h:42,
from closure.c:1:
/usr/include/x86_64-linux-gnu/ffi.h:334:1: note: declared here
334 | ffi_prep_closure (ffi_closure*,
| ^~~~~~~~~~~~~~~~
```
2020-05-13 01:17:30 +09:00
Nobuyoshi Nakada
1c4eb70654
Build auxiliary program files early
2020-05-12 23:19:20 +09:00
Nobuyoshi Nakada
2383cdabc1
builtin_binary.inc: should be updated even if no changes [ci skip]
...
As this rule does not use a separate timestamp file, the target
will be rebuilt every time once it is outdated.
2020-05-12 23:07:42 +09:00
Nobuyoshi Nakada
02cb643ddb
Added String#split benchmark for empty regexp
...
| |compare-ruby|built-ruby|
|:--------------|-----------:|---------:|
|re_chars-1 | 169.230k| 973.855k|
| | -| 5.75x|
|re_chars-10 | 25.536k| 107.598k|
| | -| 4.21x|
|re_chars-100 | 2.621k| 11.207k|
| | -| 4.28x|
|re_chars-1000 | 259.098| 1.133k|
| | -| 4.37x|
2020-05-12 22:59:58 +09:00
Nobuyoshi Nakada
693f7ab315
Optimize String#split
...
Optimized `String#split` with `/ /` (single space regexp) as
simple string splitting. [ruby-core:98272]
| |compare-ruby|built-ruby|
|:--------------|-----------:|---------:|
|re_space-1 | 432.786k| 1.539M|
| | -| 3.56x|
|re_space-10 | 76.231k| 191.547k|
| | -| 2.51x|
|re_space-100 | 8.152k| 19.557k|
| | -| 2.40x|
|re_space-1000 | 837.405| 2.022k|
| | -| 2.41x|
ruby-core:98272: https://bugs.ruby-lang.org/issues/15771#change-85511
2020-05-12 19:58:58 +09:00
Yusuke Endoh
2e7d886311
test/lib/jit_support.rb: Let JIT tests skip on centos8
...
It has the same issue as RHEL 8. k0kubun said he will fix later
2020-05-12 17:48:31 +09:00
卜部昌平
b16acf8baa
.github: use actions/checkout@v2 again
2020-05-12 17:15:22 +09:00
Nobuyoshi Nakada
ee518cf077
Revert "Sync did_you_mean"
...
This reverts commit 946dadd3f4
,
which broke `TestGemRequire` and others.
2020-05-12 16:27:25 +09:00
Nobuyoshi Nakada
317fdd6df2
fiddle: share the same config tools
2020-05-12 15:57:47 +09:00
Nobuyoshi Nakada
3150b97d32
extlibs.rb: links in extracted directory
...
Allow to create symbolic links (if available) to share same or
updated files.
2020-05-12 15:57:47 +09:00
Nobuyoshi Nakada
d1748484e8
extlibs.rb: added variable references
...
Reduce duplicate parts such as package name and version numbers.
2020-05-12 15:57:47 +09:00
Kazuhiro NISHIYAMA
1d2fc91237
Add missing ,
2020-05-12 13:25:22 +09:00
Stephen Touset
31af0dafba
Expose SSLContext#extra_chain_cert in Net::HTTP
...
Currently, Net::HTTP can only send a single SSL certificate when it
establishes a connection. Some use-cases involve sending an entire
certificate chain to the destination; for this, SSLContext supports
assigning to #extra_chain_cert=.
This adds support in Net::HTTP for exposing this underlying SSLContext
property to end-users. [Feature #9758 ]
2020-05-12 12:55:04 +09:00
Yuki Nishijima
946dadd3f4
Sync did_you_mean
2020-05-11 23:25:04 -04:00
Kazuhiro NISHIYAMA
7cc55f4bc4
Thread#backtrace may return nil [ci skip]
2020-05-12 11:46:41 +09:00
Nobuyoshi Nakada
237bee9d40
Removed extra stringization
...
Argument of RUBY_ASSERT_FAIL is already stringized message, so no
more extra stringization should be applied.
2020-05-12 10:23:33 +09:00
Nobuyoshi Nakada
3fcf7f0271
win32/mkexports.rb: do not export internal symbols
...
Functions using `rb_thread_t` and `rb_execution_context_t` are
internal use only.
2020-05-12 10:02:39 +09:00
aycabta
7a7854d8c1
Some I/O in test doesn't have "position"
...
Just returns column 1 for ambiguous width because this I/O is not tty and can't
seek.
2020-05-12 02:53:44 +09:00
aycabta
d39be242ba
Also use pipe for input in test
2020-05-12 02:53:44 +09:00
Yusuke Endoh
42abad2464
numeric.c: optimize float ** 2
case by fastpath
...
It would be a relatively frequent case. It is still slower than
`float * float` because `*` has a dedicated VM instruction (opt_mult),
though.
2020-05-12 02:14:27 +09:00
git
95ac235537
* 2020-05-12 [ci skip]
2020-05-12 01:15:45 +09:00
Jean Boussier
1258a0fb90
Remove the 65 size limit for name_err_mesg_to_str
...
This limit was introduced on Nov 20 1996
in 554b989ba1
Apparently to protect from a buffer overflow:
* eval.c (f_missing): オブジェクトの文字列表現が長すぎる時バッファ
を書き潰していた
However I tested that path with very large strings
and it works fine.
2020-05-11 09:15:24 -07:00
卜部昌平
15e977349e
more on NULL versus functions
...
Function pointers are not void*. See also
115fec062c
ce4ea956d2
8427fca49b
2020-05-11 16:47:25 +09:00
卜部昌平
4fbb344156
fix sunpro pragma
...
SunPro's #pragma does_not_return(...) needs an argument. That does not
fit the attribute syntax we employ.
2020-05-11 16:47:25 +09:00
卜部昌平
233c2018f1
drop varargs.h support
...
This header file is simply out of date (for decades since at least
1989). It's the 21st century. Just stop using it.
2020-05-11 14:56:51 +09:00
卜部昌平
534277fa7b
rb_str_new: hoist RB_CONSTANT_P out of function
...
https://gcc.gnu.org/onlinedocs/gcc/Other-Builtins.html says:
> GCC never returns 1 when you call the inline function with a string
> constant or ...
Because rb_str_new and familiy take string constants, it was a bad idea
for them to contain RB_CONSTANT_P. We should instead do so in
corresponding macros. [ruby-core:98212]
2020-05-11 11:07:37 +09:00
卜部昌平
9e41a75255
sed -i 's|ruby/impl|ruby/internal|'
...
To fix build failures.
2020-05-11 09:24:08 +09:00
卜部昌平
b85fd1d690
mv include/ruby/{impl,internal}
...
Devs do not love "impl".
2020-05-11 09:24:08 +09:00
卜部昌平
0d88fe3a72
spaces in comments [ci skip]
2020-05-11 09:24:08 +09:00
卜部昌平
122f96c362
sed -i s/ruby3/rbimpl/g
2020-05-11 09:24:08 +09:00
卜部昌平
97672f669a
sed -i s/RUBY3/RBIMPL/g
...
Devs do not love "3". The only exception is RUBY3_KEYWORDS in parse.y,
which seems unrelated to our interests.
2020-05-11 09:24:08 +09:00
卜部昌平
d7f4d732c1
sed -i s|ruby/3|ruby/impl|g
...
This shall fix compile errors.
2020-05-11 09:24:08 +09:00
卜部昌平
dca234a5dc
mv include/ruby/{3,impl}
...
Devs do not love "3".
2020-05-11 09:24:08 +09:00
Nobuyoshi Nakada
c89c3801b9
BASERUBY have to be 1.9 or later at least [Bug #16845 ]
...
Many tools under tool directory haven't worked with ruby 1.8.
2020-05-11 03:19:36 +09:00