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

8452 Коммитов

Автор SHA1 Сообщение Дата
Nobuyoshi Nakada dcbb94d5b9
Move timestamps directory for bundled gems 2022-07-13 00:00:46 +09:00
Burdette Lamar 3aee94fb91 [ruby/date] [DOC] Enhanced RDoc (https://github.com/ruby/date/pull/63)
Treats:
    #next
    #<<
    #>>
    #next_month
    #prev_month
    #next_year
    #prev_year
    #step
    #upto
    #downto

https://github.com/ruby/date/commit/4246441a35
2022-07-12 22:57:25 +09:00
Burdette Lamar 702d4d773f [ruby/date] [DOC] Enhanced RDoc (https://github.com/ruby/date/pull/62)
Minor edits to 11 methods' documentation.

https://github.com/ruby/date/commit/00bb7f6648
2022-07-12 00:02:41 +09:00
Burdette Lamar 5137af633e [ruby/date] Enhanced RDoc (https://github.com/ruby/date/pull/61)
Omit private aliases from Rdoc.

https://github.com/ruby/date/commit/48f9180663
2022-07-10 23:51:41 +09:00
Burdette Lamar e9ec6893d2 [ruby/date] [DOC] Enhanced RDoc (https://github.com/ruby/date/pull/59)
Minor changes (mostly doc-guide compliance) to 18 or so of simpler methods (getters).

https://github.com/ruby/date/commit/00e37ba2b4
2022-07-09 01:06:08 +09:00
Peter Zhu 86768f1d4c [ruby/openssl] Fix formatting in docs
The + tag can only be used for single words. For multiple words the <tt>
tag has to be used.

https://github.com/ruby/openssl/commit/cf2f019c3e
2022-07-08 23:18:24 +09:00
Jarek Prokop 4d6a29320d [ruby/openssl] Let OpenSSL choose the digest if digest for Openssl::OCSP::BasicResponse#sign is nil.
https://github.com/ruby/openssl/commit/27efcd7e1c
2022-07-08 23:18:22 +09:00
Jarek Prokop 7a5a90e053 [ruby/openssl] Let OpenSSL choose the digest if digest for Openssl::OCSP::Request#sign is nil.
https://github.com/ruby/openssl/commit/a1f6cbc261
2022-07-08 23:18:20 +09:00
Jeremy Evans b5efef3794 [ruby/openssl] Fix operator precedence in OSSL_OPENSSL_PREREQ and OSSL_LIBRESSL_PREREQ
https://github.com/ruby/openssl/commit/b02815271f
2022-07-08 23:18:16 +09:00
Jeremy Evans aee36dd788 [ruby/openssl] Fix build with LibreSSL 3.5
https://github.com/ruby/openssl/commit/e25fb0d0d8
2022-07-08 23:18:14 +09:00
twkmd12 09daf78fb5 [ruby/openssl] Add 'ciphersuites=' method to allow setting of TLSv1.3 cipher suites along with some unit tests (https://github.com/ruby/openssl/pull/493)
Add OpenSSL::SSL::SSLContext#ciphersuites= method along with unit tests.

https://github.com/ruby/openssl/commit/12250c7cef
2022-07-08 23:18:11 +09:00
Stefan Kaes 0bf2dfa6ac [ruby/openssl] ignore pkgconfig when any openssl option is specified
https://github.com/ruby/openssl/commit/b23fa75aa3
2022-07-08 23:18:09 +09:00
Nobuyoshi Nakada cf991337fb
Make a local symbol static 2022-07-08 10:55:44 +09:00
Burdette Lamar 621e5c568a [ruby/date] Enhanced RDoc (https://github.com/ruby/date/pull/58)
Brings a dozen call-seq schemas into compliance with the doc guide.
    Adds links to section "Argument start" where needed.
    Revises (minorly) ::today.
    Otherwise, does not disturb existing text.

https://github.com/ruby/date/commit/9aec11df50
2022-07-08 03:48:09 +09:00
Peter Zhu c8b3bd45cc Fix extconf.rb for OpenSSL 3 without $warnflags
On Windows with OpenSSL 3, the gem fails to compile with the following
error message:

  ruby/src/ext/openssl/extconf.rb:188: undefined method \`sub!' for nil:NilClass

This is because $warnflags is nil.
2022-07-07 13:14:41 -04:00
Jean Boussier 587d2d199b thread_pthread.c: call SUSPENDED event when entering native_sleep
[Bug #18900]

Thread#join and a few other codepaths are using native sleep as
a way to suspend the current thread. So we should call the relevant
hook when this happen, otherwise some thread may transition
directly from `RESUMED` to `READY`.
2022-07-07 17:49:00 +02:00
Burdette Lamar dbb23f29cb [ruby/date] [DOC] Enhanced RDoc (https://github.com/ruby/date/pull/57)
All things commercial.

https://github.com/ruby/date/commit/9d3bc61728
2022-07-07 03:58:02 +09:00
Nobuyoshi Nakada a070d4cceb
Local functions should be `static` 2022-07-05 09:30:05 +09:00
Burdette Lamar f64bb67d75 [ruby/date] Update ext/date/date_core.c
https://github.com/ruby/date/commit/8eb1c780fb

Co-authored-by: Peter Zhu <peter@peterzhu.ca>
2022-07-05 04:12:50 +09:00
BurdetteLamar 5fe86666a5 [ruby/date] Enhanced RDoc
https://github.com/ruby/date/commit/e36690f70e
2022-07-05 04:12:49 +09:00
BurdetteLamar e323d8e6a2 [ruby/date] Enhanced RDoc
https://github.com/ruby/date/commit/dcc0742623
2022-07-05 04:12:48 +09:00
BurdetteLamar 6317cf7de8 [ruby/date] Enhanced RDoc
https://github.com/ruby/date/commit/91c632f156
2022-07-05 04:12:48 +09:00
BurdetteLamar 7212163e7c [ruby/date] Enhanced RDoc
https://github.com/ruby/date/commit/5c18ec031e
2022-07-05 04:12:47 +09:00
BurdetteLamar 4ec14b6323 [ruby/date] Enhanced RDoc
https://github.com/ruby/date/commit/fd3ae275c3
2022-07-05 04:12:46 +09:00
BurdetteLamar 24c80aea0e [ruby/date] Enhanced RDoc
https://github.com/ruby/date/commit/ac25182c66
2022-07-05 04:12:45 +09:00
BurdetteLamar c90110d146 [ruby/date] Enhanced RDoc
https://github.com/ruby/date/commit/f9ecaad2ee
2022-07-05 04:12:44 +09:00
BurdetteLamar 6324aaf3d0 [ruby/date] Enhanced RDoc
https://github.com/ruby/date/commit/e80fee4f30
2022-07-05 04:12:43 +09:00
Jean Boussier 890df5f812 ObjectSpace.dump: Include string coderange
I suspect that some shared pages are invalidated because
some static string don't have their coderange set eagerly.

So the first time they are scanned, the entire memory page is
invalidated.

Being able to see the coderange in `ObjectSpace` would help debug
this.

And in addition `dump` currently call `is_broken_string()`  and `is_ascii_string()`
which both end up scanning the string and assigning coderange. I think it's
undesirable as `dump` should be read only.
2022-07-04 20:04:59 +02:00
BurdetteLamar 06f4ca503d [ruby/bigdecimal] Correct indentation in Kernel#BigDecimal
https://github.com/ruby/bigdecimal/commit/3ede8860a6
2022-07-02 07:58:20 +09:00
Nobuyoshi Nakada 302f353fd9 [ruby/stringio] Fix the result of `StringIO#truncate` so compatible with `File`
https://github.com/ruby/stringio/commit/16847fea32
2022-07-01 00:52:29 +09:00
Nobuyoshi Nakada 50e13870bf [ruby/io-wait] Bump up
https://github.com/ruby/io-wait/commit/0fa6e3f7ba
2022-06-25 18:10:46 +09:00
Nobuyoshi Nakada 8c1d3c2dce [ruby/io-wait] Remove C99-ism for some platforms [ci skip]
Fix https://github.com/ruby/io-wait/pull/11

https://github.com/ruby/io-wait/commit/845f9a1f55
2022-06-25 18:09:11 +09:00
Samuel Williams f9c8d80883 [ruby/io-wait] Don't add `IO#wait*` methods when `RUBY_IO_WAIT_METHODS` is defined by Ruby. (https://github.com/ruby/io-wait/pull/19)
* Fix return value compatibility with Ruby 2.x.

* Don't add `IO#wait*` methods in Ruby 3.2+.

https://github.com/ruby/io-wait/commit/54c504d089
2022-06-25 16:21:54 +09:00
Nobuyoshi Nakada a0b24f5926 [ruby/io-wait] Remove redundant forward declarations
These were needed before prototype declarations were used.

https://github.com/ruby/io-wait/commit/35f016833a
2022-06-21 12:13:47 +09:00
Nobuyoshi Nakada 4aebbf44e9
Remove unnecessary `*` before the function name 2022-06-19 23:32:47 +09:00
Nobuyoshi Nakada 5f8c73405e [ruby/etc] [DOC] Markup constant path names
https://github.com/ruby/etc/commit/6c9a0b4e5d
2022-06-19 11:06:43 +09:00
Nobuyoshi Nakada ea38758322 [ruby/etc] [DOC] Markup string literals
https://github.com/ruby/etc/commit/a8801e07d1
2022-06-19 10:46:50 +09:00
Nobuyoshi Nakada cc67a11768 [ruby/etc] [DOC] Fix reference to different module
https://github.com/ruby/etc/commit/ea51739974
2022-06-19 10:46:48 +09:00
Nobuyoshi Nakada c594370c6e [ruby/etc] [DOC] Update
System-dependent feature macros are automatically detected by
extconf.rb, and are not used by users.

https://github.com/ruby/etc/commit/e7343b4e69
2022-06-19 10:46:47 +09:00
Jean Boussier b6c1e1158d GVL Instrumentation API: add STARTED and EXITED events
[Feature #18339]

After experimenting with the initial version of the API I figured there is a need
for an exit event to cleanup instrumentation data. e.g. if you record data in a
{thread_id -> data} table, you need to free associated data when a thread goes away.
2022-06-17 09:08:26 +02:00
John Hawthorn 17d260a87f Restore rb_exec_recursive_outer
This was a public method, so we should probably keep it.
2022-06-15 16:07:29 -07:00
Alan Wu 9357e310fb [ruby/psych] Fix libyaml download failure rescue under miniruby
I tried to build Ruby on a system without libyaml today and realized
that my attempt from <https://github.com/ruby/psych/pull/557> doesn't
fix the error in <https://github.com/ruby/psych/issues/552>. I still got
the same `LoadError` from `digest` which stopped the build.

Since `LoadError` is not a `StandardError`, a plain `rescue` doesn't catch
it. Catch `LoadError` explicitly instead and reduce the scope of the
`begin` block.

I tested this change in a Ruby build on macOS without libyaml installed
and confirmed that `make` continues with a warning instead of aborting:

    *** Following extensions are not compiled:
    psych:
            Could not be configured. It will not be installed.
            ...

This should address <https://bugs.ruby-lang.org/issues/18790>.

https://github.com/ruby/psych/commit/251289ba83
2022-06-15 01:05:51 +09:00
John Hawthorn 52da90acee Make method id explicit in rb_exec_recursive_outer
Previously, because opt_aref and opt_aset don't push a frame, when they
would call rb_hash to determine the hash value of the key, the initial
level of recursion would incorrectly use the method id at the top of the
stack instead of "hash".

This commit replaces rb_exec_recursive_outer with
rb_exec_recursive_outer_mid, which takes an explicit method id, so that
we can make the hash calculation behave consistently.

rb_exec_recursive_outer was documented as being internal, so I believe
this should be okay to change.
2022-06-10 14:48:21 -07:00
Jean Boussier 9125374726 [Feature #18339] GVL Instrumentation API
Ref: https://bugs.ruby-lang.org/issues/18339

Design:

- This tries to minimize the overhead when no hook is registered.
  It should only incur an extra unsynchronized boolean check.
- The hook list is protected with a read-write lock as to cause
  contention when some hooks are registered.
- The hooks MUST be thread safe, and MUST NOT call into Ruby as they
  are executed outside the GVL.
- It's simply a noop on Windows.

API:

```
rb_internal_thread_event_hook_t * rb_internal_thread_add_event_hook(rb_internal_thread_event_callback callback, rb_event_flag_t internal_event, void *user_data);
bool rb_internal_thread_remove_event_hook(rb_internal_thread_event_hook_t * hook);
```

You can subscribe to 3 events:

  - READY: called right before attempting to acquire the GVL
  - RESUMED: called right after successfully acquiring the GVL
  - SUSPENDED: called right after releasing the GVL.

The hooks MUST be threadsafe, as they are executed outside of the GVL, they also MUST NOT call any Ruby API.
2022-06-03 15:13:33 +02:00
Nobuyoshi Nakada d142eff658 [ruby/nkf] Constified invariant tables
https://github.com/ruby/nkf/commit/b386ddc11c
2022-06-03 20:25:12 +09:00
Nobuyoshi Nakada 7976142791 [ruby/stringio] Fix extracting encoding names in the fallback code
https://github.com/ruby/stringio/commit/0fe2e0c1e5
2022-05-30 14:48:45 +09:00
Nobuyoshi Nakada d3e986d9ab [ruby/stringio] Accept external and internal encodings pair
Fix https://github.com/ruby/stringio/pull/16

https://github.com/ruby/stringio/commit/c8a69e80d2
2022-05-30 14:48:44 +09:00
Jeremy Evans 609d73e892 [ruby/stringio] Fix handling of chomp with paragraph separator
Try to mirror IO behavior, where chomp takes out the entire paragraph
separators between entries, but does not chomp a single line separator
at the end of the string.

Partially Fixes [Bug #18768]

https://github.com/ruby/stringio/commit/a83ddbb7f0
2022-05-30 13:10:46 +09:00
Jeremy Evans 7e3920f0d9 [ruby/stringio] Update ext/stringio/stringio.c
https://github.com/ruby/stringio/commit/1edc88587e

Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org>
2022-05-30 13:01:18 +09:00
Jeremy Evans adaaf12857 [ruby/stringio] Ignore chomp keyword for nil separator
nil separator means no separator at all, so nothing should be
chomped.

Partial fix for Ruby [Bug #18770]

https://github.com/ruby/stringio/commit/feaa2ec631
2022-05-30 13:01:17 +09:00