Граф коммитов

468 Коммитов

Автор SHA1 Сообщение Дата
git b92fb78696 Update bundled gems list at 2022-07-04 2022-07-04 07:03:51 +00:00
git 3124422bc8 Update bundled gems list at e0c6e288f0 [ci skip] 2022-07-01 06:53:37 +00:00
git c0b5124043 Update default gems list at 50e13870bf [ci skip] 2022-06-25 09:11:16 +00:00
git 641a732909 Update bundled gems list at 2022-06-21 2022-06-21 07:05:34 +00:00
Nobuyoshi Nakada 1e9939dae2 [Feature #18788] Support options as `String` to `Regexp.new`
`Regexp.new` now supports passing the regexp flags not only as an
`Integer`, but also as a `String.  Unknown flags raise errors.
2022-06-20 19:35:12 +09:00
Nobuyoshi Nakada ab2a43265c Warn suspicious flag to `Regexp.new`
Now second argument should be `true`, `false`, `nil` or Integer.
This flag is confused with third argument some times.
2022-06-20 19:35:12 +09:00
git 271bcc0c1c Update bundled gems list at 150bd6e242 [ci skip] 2022-06-20 02:45:22 +00:00
git daf086c0e1 Update bundled gems list at 2022-06-15 2022-06-15 07:01:39 +00:00
Jeremy Evans 7cda7fbbdc
Add Module#undefined_instance_methods
Implements [Feature #12655]

Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org>
2022-06-06 09:57:32 -07:00
git ab7f8e32aa Update default gems list at fde4519af8 [ci skip] 2022-05-25 09:09:04 +00:00
git 6ba394ce30 Update bundled gems list at 2022-05-21 2022-05-21 07:07:14 +00:00
git e3434118c2 Update default gems list at bcdbfe4b6e [ci skip] 2022-05-20 09:02:36 +00:00
git 093c516ce5 Update default gems list at 6b6d7df39d [ci skip] 2022-05-18 01:04:36 +00:00
Samuel Williams 32de6097b2
Fix various autoload race conditions. (#5898)
* Add RUBY_VM_CRITICAL_SECTION for detecting unexpected context switch.

* Prevent race between GC mark and autoload setup.

* Protect race on autoload state.

* Avoid potential race condition when allocating `autoload_featuremap`.

* Add NEWS entry for autoload fixes.
2022-05-15 16:07:12 +12:00
git 0161dc3edc Update default gems list at ecf32dbfc0 [ci skip] 2022-05-09 09:21:02 +00:00
git 95bb7e0a25 Update default gems list at a370eb5a63 [ci skip] 2022-05-09 09:19:47 +00:00
git 99f490475f Update default gems list at 30632efeaa [ci skip] 2022-05-09 07:48:37 +00:00
git 546f6ce432 Update default gems list at fbbe7ac7e3 [ci skip] 2022-05-09 07:36:53 +00:00
git 98e3fdb444 Update bundled gems list at 25eb63fa7f [ci skip] 2022-05-08 14:05:55 +00:00
git 840dbe1cbf Update default gems list at cd2613b6a4 [ci skip] 2022-04-27 20:57:25 +00:00
Tim Smith 810b9c344a Resolve several markedown warnings
- Spaces before and after blocks.
- Single spaces after sentences everywhere

Signed-off-by: Tim Smith <tsmith@mondoo.com>
2022-04-19 08:32:37 +09:00
git 566fb7fa7d Update default gems list at 2aca566a10 [ci skip] 2022-04-15 21:35:19 +00:00
git 1f3448f524 Update bundled gems list at 8197ae35f9 [ci skip] 2022-04-06 14:57:47 +00:00
Benoit Daloze 573005983a Give some tips on how to find the missing ruby2_keywords 2022-04-05 11:54:57 +02:00
Benoit Daloze d3f659d3f9 Add NEWS entry for Bug #18625 to help adding ruby2_keywords in the missing places 2022-04-05 11:42:02 +02:00
git dcc3c2858f Update bundled gems list at e73d76027e [ci skip] 2022-04-02 10:29:56 +00:00
git 7dfea79ebf Update bundled gems list at b3a05827c7 [ci skip] 2022-04-01 05:44:35 +00:00
git f24abc0bb2 Update default gems list at 06f94d1784 [ci skip] 2022-04-01 04:57:20 +00:00
git f380a25520 Update default gems list at 8a38419b73 [ci skip] 2022-03-31 15:23:12 +00:00
Jeremy Evans 79b59fee16 Update NEWS for proc autosplat change 2022-03-30 11:39:27 -07:00
Jeremy Evans 5d43969e92 Update NEWS for TracePoint#enable target_thread default change 2022-03-29 18:33:16 -07:00
Nobuyoshi Nakada 282baa6943
[DOC] Move the entry for [Feature #18571] 2022-03-28 15:03:41 +09:00
Kazuhiro NISHIYAMA 4e580bd67a
Fix a link [ci skip] 2022-03-28 10:59:35 +09:00
Hiroshi SHIBATA c3555e3da4
Added entry of Psych changes for #18571 2022-03-28 10:43:10 +09:00
Jeremy Evans f79765abe8 Update NEWS for {Kernel,TracePoint}#binding change 2022-03-25 14:33:24 -07:00
git 04591e1be7 Update default gems list at 4c4a1e2035 [ci skip] 2022-03-24 12:39:01 +00:00
Kazuhiro NISHIYAMA bbd29fe0b6
Fix a link [ci skip] 2022-03-22 09:49:32 +09:00
Shugo Maeda 2fdfd499db
Add a NEWS entry about [Feature #18598] [ci skip] 2022-03-18 11:53:36 +09:00
Jeremy Evans b6804d62f8 Make Proc#parameters support lambda keyword for returning parameters as if lambda
This makes it easier to use Proc#parameters to build wrappers.

Implements [Feature #15357]
2022-03-17 11:52:02 -07:00
git df6f2b645f Update default gems list at fadc7a150c [ci skip] 2022-03-17 08:29:21 +00:00
Kazuhiro NISHIYAMA 9d6cc7e4c0
Fix a link [ci skip] 2022-03-14 07:52:40 +09:00
Martin Dürst 2672502457 mention Unicode Version 14.0.0 2022-03-13 09:19:52 +09:00
git 7f5440756e Update default gems list at bd18623307 [ci skip] 2022-03-10 13:59:25 +00:00
git ff7eb85125 Update default gems list at 9c531ca524 [ci skip] 2022-03-07 11:09:43 +00:00
git c1790f8c11 Update default gems list at 7f7db124ee [ci skip] 2022-03-03 08:56:31 +00:00
git bec492c77e Update default gems list at eb40ff73bf [ci skip] 2022-02-28 11:10:22 +00:00
git 43cc4f66c2 Update bundled gems list at 2022-02-23 2022-02-23 07:00:29 +00:00
Kazuhiro NISHIYAMA 1f3fe3801b
Fix links [ci skip] 2022-02-21 00:44:19 +09:00
Shugo Maeda c8817d6a3e
Add String#byteindex, String#byterindex, and MatchData#byteoffset (#5518)
* Add String#byteindex, String#byterindex, and MatchData#byteoffset [Feature #13110]

Co-authored-by: NARUSE, Yui <naruse@airemix.jp>
2022-02-19 19:10:00 +09:00
Kazuki Tsujimoto db6b23c76c
Find pattern is no longer experimental [Feature #18585] 2022-02-19 18:45:49 +09:00
Akinori MUSHA ac32b7023a Mention Set as a new builtin class to NEWS 2022-02-18 11:56:24 +09:00
git 66b9ca8426 Update default gems list at f07a2613e3 [ci skip] 2022-02-10 08:19:42 +00:00
git ea6b6f1ad3 Update bundled gems list at d4a8c04dc7 [ci skip] 2022-02-02 04:26:22 +00:00
git 804dca7b0c Update default gems list at fc4fbeef28 [ci skip] 2022-02-01 04:22:40 +00:00
Koichi ITO f924e05b68
[DOC] Fix a typo in the NEWS.md
Follow up of https://github.com/ruby/ruby/commit/fbb3cab.
2022-01-31 07:38:10 +09:00
Takashi Kokubun fbb3cab956
Add a NEWS entry about [Feature #16806] 2022-01-29 00:32:38 -08:00
Nobuyoshi Nakada e3b5cc8836
NEWS: `Fixnum` and `Bignum` are removed finally [Feature #12005] 2022-01-25 23:10:20 +09:00
git c6a19b77a2 Update default gems list at 328e6bf3b3 [ci skip] 2022-01-24 01:57:23 +00:00
Kazuhiro NISHIYAMA 54568c949b
Fix a link [ci skip] 2022-01-18 22:57:21 +09:00
Takashi Kokubun c0d18a1aa2
[ruby/erb] Revert "Remove safe_level and further positional arguments (https://github.com/ruby/erb/pull/7)"
This reverts commit 5133efa06f.

While we already handled this deprecation in many libraries, we noticed
that some (e.g. sprockets) relied on the format of `ERB.version` and
2b4182eb10 broke such handling.

Given that the `ERB.version` change was released at 3.1 and it's
obviously new, I'll skip this removal in 3.2 and postpone this to a
future version.
2022-01-17 12:39:17 -08:00
Takashi Kokubun 728304093c
Update NEWS.md about ERB.new 2022-01-15 13:53:57 -08:00
Jeremy Evans a93cc3e23b Make Hash#shift return nil for empty hash
Fixes [Bug #16908]
2022-01-14 12:17:57 -08:00
Jeremy Evans ca3d405242 Fix constant assignment evaluation order
Previously, the right hand side was always evaluated before the
left hand side for constant assignments.  For the following:

```ruby
lhs::C = rhs
```

rhs was evaluated before lhs, which is inconsistant with attribute
assignment (lhs.m = rhs), and apparently also does not conform to
JIS 3017:2013 11.4.2.2.3.

Fix this by changing evaluation order.  Previously, the above
compiled to:

```
0000 putself                                                          (   1)[Li]
0001 opt_send_without_block                 <calldata!mid:rhs, argc:0, FCALL|VCALL|ARGS_SIMPLE>
0003 dup
0004 putself
0005 opt_send_without_block                 <calldata!mid:lhs, argc:0, FCALL|VCALL|ARGS_SIMPLE>
0007 setconstant                            :C
0009 leave
```

After this change:

```
0000 putself                                                          (   1)[Li]
0001 opt_send_without_block                 <calldata!mid:lhs, argc:0, FCALL|VCALL|ARGS_SIMPLE>
0003 putself
0004 opt_send_without_block                 <calldata!mid:rhs, argc:0, FCALL|VCALL|ARGS_SIMPLE>
0006 swap
0007 topn                                   1
0009 swap
0010 setconstant                            :C
0012 leave
```

Note that if expr is not a module/class, then a TypeError is not
raised until after the evaluation of rhs.  This is because that
error is raised by setconstant.  If we wanted to raise TypeError
before evaluation of rhs, we would have to add a VM instruction
for calling vm_check_if_namespace.

Changing assignment order for single assignments caused problems
in the multiple assignment code, revealing that the issue also
affected multiple assignment.  Fix the multiple assignment code
so left-to-right evaluation also works for constant assignments.

Do some refactoring of the multiple assignment code to reduce
duplication after adding support for constants. Rename struct
masgn_attrasgn to masgn_lhs_node, since it now handles both
constants and attributes. Add add_masgn_lhs_node static function
for adding data for lhs attribute and constant setting.

Fixes [Bug #15928]
2022-01-14 11:00:26 -08:00
Jean Boussier 8d05047d72 Add a Module#const_added callback
[Feature #17881]

Works similarly to `method_added` but for constants.

```ruby
Foo::BAR = 42 # call Foo.const_added(:FOO)
class Foo::Baz; end # call Foo.const_added(:Baz)
Foo.autoload(:Something, "path") # call Foo.const_added(:Something)
```
2022-01-14 11:30:07 +01:00
Koichi Sasada 9de380860d add a NEWS entry of `Proc#dup`. 2022-01-13 17:45:25 +09:00
Kazuhiro NISHIYAMA 533bc77170
Fix typo [ci skip] 2022-01-07 09:44:33 +09:00
manga_osyo 1bfccba775 Add bugs.ruby links. 2022-01-07 01:13:04 +09:00
git 2db7952e59 Update bundled gems list at 2022-01-06 2022-01-06 07:02:37 +00:00
Nobuyoshi Nakada 3e417a554b
NEWS: "taintedness" and "trustedness" methods are removed 2022-01-06 11:32:27 +09:00
Nobuyoshi Nakada ac0d27eb58
NEWS: Separate removed constants section 2022-01-06 11:20:55 +09:00
Nobuyoshi Nakada e38d583391
NEWS: Links to the tickets to remove deprecated features 2022-01-05 18:27:16 +09:00
Nobuyoshi Nakada 1272a331b4
NEWS: Removal of `Kernel#=~` [Feature #15231] 2022-01-05 18:18:43 +09:00
Shugo Maeda 54198c7b97
Add Module#refinements and Refinement#refined_class [Feature #12737] 2022-01-05 17:47:29 +09:00
Shugo Maeda 21ee5341f8
Add Module.used_refinements 2022-01-05 16:58:23 +09:00
git 30c03f9e93 Update default gems list at 6f53425825 [ci skip] 2022-01-02 06:06:11 +00:00
Nobuyoshi Nakada 6f53425825
NEWS: Removed constants 2022-01-02 15:05:02 +09:00
git b2a88063d6 Update default gems list at 6d1b406dc8 [ci skip] 2022-01-02 02:29:48 +00:00
Nobuyoshi Nakada f59b2e440e
NEWS: Removed methods 2021-12-31 23:59:50 +09:00
Nobuyoshi Nakada 60e9aa5733
NEWS: Removed C APIs 2021-12-31 23:59:04 +09:00
Jeremy Evans f53dfab95c Add support for anonymous rest and keyword rest argument forwarding
This allows for the following syntax:

```ruby
def foo(*)
  bar(*)
end
def baz(**)
  quux(**)
end
```

This is a natural addition after the introduction of anonymous
block forwarding.  Anonymous rest and keyword rest arguments were
already supported in method parameters, this just allows them to
be used as arguments to other methods.  The same advantages of
anonymous block forwarding apply to rest and keyword rest argument
forwarding.

This has some minor changes to #parameters output.  Now, instead
of `[:rest], [:keyrest]`, you get `[:rest, :*], [:keyrest, :**]`.
These were already used for `...` forwarding, so I think it makes
it more consistent to include them in other cases.  If we want to
use `[:rest], [:keyrest]` in both cases, that is also possible.

I don't think the previous behavior of `[:rest], [:keyrest]` in
the non-... case and `[:rest, :*], [:keyrest, :**]` in the ...
case makes sense, but if we did want that behavior, we'll have to
make more substantial changes, such as using a different ID in the
... forwarding case.

Implements [Feature #18351]
2021-12-30 14:37:42 -08:00
git 6d57290210 Update bundled gems list at 2021-12-29 2021-12-29 07:02:15 +00:00
git 7fbd93e60f Update default gems list at d75f7078c8 [ci skip] 2021-12-29 01:03:36 +00:00
git f486566f13 Update default gems list at d6311cb1ca [ci skip] 2021-12-27 01:48:03 +00:00
git 18da9359de Update bundled gems list at 2322967f3e [ci skip] 2021-12-26 06:51:28 +00:00
git 2322967f3e Update default gems list at 1698010bb1 [ci skip] 2021-12-26 06:38:45 +00:00
git a91605c9da Update default gems list at 53b3c044fc [ci skip] 2021-12-25 14:12:38 +00:00
Kazuhiro NISHIYAMA 53b3c044fc
Copy NEWS.md to doc/NEWS-3.1.0.md and update for 3.2.0 2021-12-25 23:11:43 +09:00
Nobuyoshi Nakada 1ad42f8a76
Update default gems list at 8247b193c0 [ci skip] 2021-12-25 18:43:37 +09:00
Nobuyoshi Nakada 14e550052b
NEWS: mention Time.new argument error more
Show an example of Time.new with perhaps unexpected results in
earlier versions.
2021-12-25 18:24:39 +09:00
Nobuyoshi Nakada 42eb9bf37a
Fix the names of Thread::Queue and method for the cross-reference 2021-12-25 17:45:22 +09:00
Nobuyoshi Nakada 30374b4fb7
NEWS: Put spaces to make Method and UnboundMethod links 2021-12-25 17:42:27 +09:00
aycabta dba24e6a1a Add IRB Improvements section to NEWS.md 2021-12-25 17:05:39 +09:00
Nobuyoshi Nakada 0abf781ab4
NEWS: Mention about more strict conversions for [Feature #17485] 2021-12-25 13:14:54 +09:00
git 70aa7734e9 Update default gems list at 0f1fbc6421 [ci skip] 2021-12-25 04:13:21 +00:00
git 63d75d38cb Update default gems list at 40c20110d5 [ci skip] 2021-12-25 02:04:23 +00:00
git d100c91445 Update default gems list at da6a5e3ed1 [ci skip] 2021-12-24 22:45:36 +00:00
git 2b2115318b Update default gems list at efce9ecf72 [ci skip] 2021-12-24 18:38:28 +00:00
Alan Wu cab8b88a16 NEWS: Adapt YJIT support status to include OpenBSD
We don't run YJIT CI checks on OpenBSD so can't claim that we provide
first-class maintenance support. However, as of
3b2b28d035, YJIT can at least boot on OpenBSD.
2021-12-24 12:35:24 -05:00
Alan Wu b81faf4b1f Less bravado in YJIT performance claims
YJIT can't improve performance of non Ruby software of course.
2021-12-24 11:59:57 -05:00
git 628e845843 Update default gems list at 90239c4163 [ci skip] 2021-12-24 15:47:38 +00:00