Commit graph

63661 commits

Author SHA1 Message Date
Hiroshi SHIBATA
a46841612c
bump Bundler's version to 2.2.0.rc.1 2020-09-23 21:06:29 +09:00
Hiroshi SHIBATA
31a6eaabc1
Manually merged from https://github.com/rubygems/rubygems/pull/2636
Enable Style/EmptyLinesAroundClassBody rubocop cop.
2020-09-23 21:02:56 +09:00
Hiroshi SHIBATA
f56fc720ee
bundle-package.* was removed at upstream repo 2020-09-23 20:28:38 +09:00
Nobuyoshi Nakada
b57c54679b
strip trailing spaces [ci skip] 2020-09-23 17:47:30 +09:00
Hiroshi SHIBATA
5cc728816d
Update the version number of rubygems and bundler at NEWS.md 2020-09-23 17:38:52 +09:00
Kazuhiro NISHIYAMA
9a8f5f0a9a
Fix call-seq [ci skip]
`encoding` can be not only an encoding name, but also an Encoding object.

```
s = String.new('foo', encoding: Encoding::US_ASCII)
s.encoding # => #<Encoding:US-ASCII>
```
2020-09-23 11:44:06 +09:00
Hiroshi SHIBATA
ba889100d8
Bundle rbs gem as bundled gems (#3496)
* Added rbs as bundled gems
* Added the missing dependencies for rbs gem
2020-09-23 10:59:49 +09:00
Hiroshi SHIBATA
e380f78851 Removed rb_find_file_ext_safe and rb_find_file_safe 2020-09-23 09:09:36 +09:00
Jeremy Evans
ed27c2514c Update UnixSocket#recv_io tests to handle receiving a UnixSocket
Receiving UnixSocket works fine if you don't provide a mode, and
I think it is reasonable to expect that you should not provide
a mode if klass.for_fd would not accept a mode.

Fixes [Bug #11778]
2020-09-22 15:44:34 -07:00
Burdette Lamar
b904b72960
Enhanced RDoc for String (#3565)
Makes some methods doc compliant with https://github.com/ruby/ruby/blob/master/doc/method_documentation.rdoc. Also, other minor revisions to make more consistent.
Methods:

    try_convert
    +string
    -string
    concat
    <<
    prepend
    hash
2020-09-22 16:32:17 -05:00
Aaron Patterson
3d474e19fd Rudimentary support for disassembling rb_iseq_t
I need to disassemble instruction sequences while debugging, so I wrote
this.

Usage is like this:

```
(lldb) p iseq
(rb_iseq_t *) $147 = 0x0000000101068400
(lldb) rbdisasm iseq
0000 putspecialobject( 3 )
0002 putnil
0003 defineclass( ID: 0x560b, (rb_iseq_t *)0x1010681d0, 2 )
0007 pop
0008 putspecialobject( 3 )
0010 putnil
0011 defineclass( ID: 0x56eb, (rb_iseq_t *)0x101063b58, 2 )
0015 leave
```

Also thanks a ton to @kivikakk helping me figure out how to navigate LLDB's Python 😆
2020-09-22 13:40:57 -07:00
Jeremy Evans
179384a668 Revert "Prevent SystemStackError when calling super in module with activated refinement"
This reverts commit eeef16e190.

This also reverts the spec change.

Preventing the SystemStackError would be nice, but there is valid
code that the fix breaks, and it is probably more common than cases
that cause the SystemStackError.

Fixes [Bug #17182]
2020-09-22 12:04:48 -07:00
Aaron Patterson
f3dddd77a9
Add a comment about why we're checking the finalizer table 2020-09-22 09:20:04 -07:00
git
3c80889802 * 2020-09-23 [ci skip] 2020-09-23 01:01:25 +09:00
Aaron Patterson
8b41e9b6e7
Revert "Pin values in the finalizer table"
If an object has a finalizer flag set on it, prevent it from moving.

This partially reverts commit 1a9dd31910.
2020-09-22 08:57:48 -07:00
Jeremy Evans
df14c758fc Make hash returned by Hash#transform_values not have a default
This sets an explicit default of nil.  There is probably a better
approach of removing the default.

Fixes [Bug #17181]
2020-09-21 19:35:08 -07:00
git
7ee166ed4e * 2020-09-22 [ci skip] 2020-09-22 01:28:15 +09:00
Burdette Lamar
c6c5d4b3fa
Comply with guide for method doc: string.c (#3528)
Methods:

    ::new
    #length
    #bytesize
    #empty?
    #+
    #*
    #%
2020-09-21 11:27:54 -05:00
Benoit Daloze
82998918ef Make Thread#join always convert its argument, as before 70f08f1eed 2020-09-21 16:22:04 +02:00
Benoit Daloze
2b73e6ba71 Simplify the implementation of Scheduler#block
* This shows block() with a timeout is similar to #kernel_sleep and also
  does not need to change `@blocking`.
2020-09-21 16:04:20 +02:00
Benoit Daloze
0fa1c82bfc Make it clear the first field of join_arg is the waiting thread
* And not some list of sort.
2020-09-21 15:58:08 +02:00
Benoit Daloze
c19bcf38eb Fix Thread leak in Thread#join specs 2020-09-21 15:54:39 +02:00
Samuel Williams
10d795cfca Add NEWS about Fiber#backtrace and Fiber#backtrace_locations. 2020-09-21 17:04:49 +12:00
Samuel Williams
f7aa51b2b8 Update NEWS & documentation relating to scheduler. 2020-09-21 15:28:03 +12:00
Samuel Williams
70f08f1eed Make Thread#join non-blocking. 2020-09-21 11:48:44 +12:00
git
596173155a * 2020-09-21 [ci skip] 2020-09-21 06:51:54 +09:00
Samuel Williams
501fff14c7 When setting current thread scheduler to nil, invoke #close. 2020-09-21 09:51:33 +12:00
Peter Zhu
b6d599d76e Update heap_pages_himem after freeing pages 2020-09-20 23:13:47 +09:00
Quang-Minh Nguyen
be2efb118f Fulfill missing tests and stabilize tests 2020-09-20 23:10:44 +09:00
Quang-Minh Nguyen
398da71175 Validate name during initialization 2020-09-20 23:10:44 +09:00
Quang-Minh Nguyen
d5fa66156a Add status to Ractor#inspect 2020-09-20 23:10:44 +09:00
git
84c4c7bec8 * 2020-09-20 [ci skip] 2020-09-20 20:39:25 +09:00
Benoit Daloze
6987c8997e Remove from waiter in Mutex#lock with ensure when calling rb_scheduler_block()
* Previously this could lead to an invalid waiter entry and then trying
  to wake up that waiter would result in various issues in rb_mutex_unlock_th().
2020-09-20 13:35:39 +02:00
Nobuyoshi Nakada
73a626c078
[ruby/io-wait] update required_ruby_version
As d387029f39 made io/wait
unbuildable with older versions, drop older versions tentatively.
Also the change seems to instroduce behavioral incompatibilities,
may address them or bump up the version later.
2020-09-19 17:47:40 +09:00
Nobuyoshi Nakada
702cebf104
strip trailing spaces [ci skip] 2020-09-19 17:40:54 +09:00
Aaron Patterson
6cb6d5abc3
Add assertions when inline caches are copied to MJIT
This is a temporary commit to try to find a GC issue.  It seems like
mjit is pointing at a moved address in the call cache.  I want to assert
that they aren't TMOVED or garbage objects at the time they get copied
2020-09-18 17:07:08 -07:00
aycabta
e193dd1e3d [ruby/irb] Version 1.2.7
0eaa06838b
2020-09-19 05:13:08 +09:00
aycabta
555ea83344 [ruby/irb] Drop OMIT_ON_ASSIGNMENT and add :truncate option for ECHO_ON_ASSIGNMENT
4c89b0775b
2020-09-19 05:13:08 +09:00
git
7d9b4d3c61 * 2020-09-19 [ci skip] 2020-09-19 04:32:21 +09:00
Aaron Patterson
1a9dd31910 Pin values in the finalizer table
When finalizers run (in `rb_objspace_call_finalizer`) the table is
copied to a linked list that is not managed by the GC.  If compaction
runs, the references in the linked list can go bad.

Finalizer table shouldn't be used frequently, so lets pin references in
the table so that the linked list in `rb_objspace_call_finalizer` is
safe.
2020-09-18 12:31:54 -07:00
Hiroshi SHIBATA
6dd257ed1e
Added sync task for bigdecimal 2020-09-18 18:47:52 +09:00
Hiroshi SHIBATA
3d86f7a37c
The executable file of erb is under the libexec on ruby/erb repo 2020-09-18 18:44:46 +09:00
Benoit Daloze
af1926e859 Fix copy/paste error from 5bb5e706f1 2020-09-18 11:11:47 +02:00
Benoit Daloze
5bb5e706f1 Only interrupt when there is no scheduler in sync_wakeup()
* When there is a scheduler, the Fiber that would be blocked has already
  been rescheduled and there is no point to interrupt something else.
  That blocked Fiber will be rescheduled as the next call to the scheduler
  (e.g., IO, sleep, other blocking sync).
* See discussion on d01954632d
2020-09-18 10:39:27 +02:00
aycabta
305c430603 [ruby/rdoc] Add man/ri.1 for distribution files
7cb5c3611f
2020-09-18 14:57:58 +09:00
Dorian Marié
0d56aec1dd [ruby/rdoc] Fix spelling error in parser comment
f237c9e223
2020-09-18 14:57:58 +09:00
Nobuyoshi Nakada
e23f0f29da [ruby/rdoc] update all files if any file is newer
Cross references need parse all files which define the subject
names.  This commit makes `--force-update` option enforce to parse
all files if any file is newer than the previous parse, not only
updated files.

13e9a44896
2020-09-18 14:57:58 +09:00
aycabta
b5db9b8a31 [ruby/rdoc] Support full filename to make a link for a text file
41db49c485
2020-09-18 14:57:57 +09:00
Koichi Sasada
3b159374a2 sync ruby_global_symbols
ruby_global_symbols can be accessed with multiple ractors so that
the accesses should be synchronized.
2020-09-18 14:17:49 +09:00
Koichi Sasada
06e9b94d40 show object info to debug purpose. 2020-09-18 14:17:49 +09:00