Age | Commit message (Collapse) | Author |
|
It existed since f3d022543ef2afde3d53e7f6b3028eafe39d0ef4 until
96760236079b15674a6322a2ca41b1528b51afbd. No official releases included
the actual function. The declaration shall be deleted.
|
|
If the use of the ruby namespace isn't prepended by `::` to make it
explicit that the global ruby namespace is referenced here, it can
clash with other non-global namespace named ruby, e.g.
```
// declaration
namespace myproject {
namespace ruby {
// my ruby classes
}
}
// implementation
using namespace myproject;
[...]
rb_define_method(...);
[...]
```
leads to the following error:
```
../ruby/choice.cc: In function 'void {anonymous}::do_register_choice()':
../ruby/choice.cc:342:9: error: reference to 'ruby' is ambiguous
342 | rb_define_method(c_choices, "each", RUBY_FUNC_CAST(&choices_each), 0);
| ^~~~~~~~~~~~~~~~
In file included from ../ruby/choice.cc:20:
../ruby/paludis_ruby.hh:53:15: note: candidates are: 'namespace paludis::ruby { }'
53 | namespace ruby
| ^~~~
In file included from /usr/x86_64-pc-linux-gnu/include/ruby-3.0/ruby/backward/2/stdalign.h:23,
from /usr/x86_64-pc-linux-gnu/include/ruby-3.0/ruby/defines.h:77,
from /usr/x86_64-pc-linux-gnu/include/ruby-3.0/ruby/ruby.h:23,
from /usr/x86_64-pc-linux-gnu/include/ruby-3.0/ruby.h:38,
from ../ruby/paludis_ruby.hh:44,
from ../ruby/choice.cc:20:
/usr/x86_64-pc-linux-gnu/include/ruby-3.0/ruby/internal/stdalign.h:92:11: note: 'namespace ruby { }'
92 | namespace ruby {
| ^~~~
In file included from /usr/x86_64-pc-linux-gnu/include/ruby-3.0/ruby/internal/anyargs.h:83,
from /usr/x86_64-pc-linux-gnu/include/ruby-3.0/ruby/ruby.h:24,
from /usr/x86_64-pc-linux-gnu/include/ruby-3.0/ruby.h:38,
from ../ruby/paludis_ruby.hh:44,
from ../ruby/choice.cc:20:
../ruby/choice.cc:342:9: error: '::define' has not been declared
342 | rb_define_method(c_choices, "each", RUBY_FUNC_CAST(&choices_each), 0);
| ^~~~~~~~~~~~~~~~
../ruby/choice.cc:344:9: error: reference to 'ruby' is ambiguous
344 | rb_define_method(c_choices, "find_by_name_with_prefix", RUBY_FUNC_CAST(&choices_find_by_name_with_prefix), 1);
| ^~~~~~~~~~~~~~~~
```
Notes:
Merged: https://github.com/ruby/ruby/pull/4185
Merged-By: nobu <nobu@ruby-lang.org>
|
|
|
|
|
|
* Rename `rb_scheduler` to `rb_fiber_scheduler`.
* Use public interface if available.
* Use `rb_check_funcall` where possible.
* Don't use `unblock` unless the fiber was non-blocking.
Notes:
Merged-By: ioquatix <samuel@codeotaku.com>
|
|
It is questionable whether we can change a public API but this function
does not exist today. No way.
|
|
https://github.com/ruby/ruby/pull/4100#pullrequestreview-576059827
Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org>
|
|
cf: https://github.com/ruby/ruby/pull/4100#pullrequestreview-575952836
|
|
They are no longer how Object#clone/Object#dup are defined. In fact
DUPSETUP is not used from anywhere. CLONESETUP has only one usage.
Let's not expose them to extension libraries.
cf https://github.com/ruby/ruby/pull/4100#discussion_r563481718
|
|
See also https://gcc.gnu.org/gcc-6/changes.html
Clang has this feature when __has_extension(enumerator_attributes) is
set.
MSVC has #pragma deprecated instead.
Notes:
Merged: https://github.com/ruby/ruby/pull/4100
|
|
matz said in [ruby-core:94979]:
> 3.0:
> * taint/trust/untaint/untrust non-verbose warning when called
This is it, for C extensions.
Notes:
Merged: https://github.com/ruby/ruby/pull/4100
|
|
Now that RUBY_FL_TAINT is recycled to become new RUBY_FL_SHAREABLE.
Setting/clearing this flag from extension libraries break Ractor.
Especially problematic one is OBJ_INFECT, which would make non-shareable
objects travel across Ractor boundaries.
Such operations should just be prohibited.
Notes:
Merged: https://github.com/ruby/ruby/pull/4100
|
|
It seems I broke them in commit 9e6e39c3512f7a962c44dc3729c98a0f8be90341
Sorry!
Notes:
Merged: https://github.com/ruby/ruby/pull/4100
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/3885
|
|
iff means if and only if, but readers without that knowledge might
assume this to be a spelling mistake. To me, this seems like
exclusionary language that is unnecessary. Simply using "if and only if"
instead should suffice.
Notes:
Merged: https://github.com/ruby/ruby/pull/4035
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/4050
|
|
|
|
expose some C-APIs to try to make ractor utilities on external gems.
* add
* rb_ractor_local_storage_value_lookup() to check availability
* expose
* rb_ractor_make_shareable()
* rb_ractor_make_shareable_copy()
* rb_proc_isolate() (not public)
* rb_proc_isolate_bang() (not public)
* rb_proc_ractor_make_shareable() (not public)
|
|
The count of rb_alloc_tmp_buffer_with_count is the allocation size
counted in VALUE size but not in the requested element size.
Co-authored-by: Yusuke Endoh <mame@ruby-lang.org>
Co-authored-by: Koichi Sasada <ko1@atdot.net>
|
|
|
|
Get rid of duplicate attributes, which may be warned or ignored
except for the first.
|
|
* DECLARE_DEPRECATED_FEATURE with RBIMPL_ATTR_DEPRECATED_SINCE
* DECLARE_DEPRECATED_INTERNAL_FEATURE with RBIMPL_ATTR_INTERNAL
And moved function declarations outside both.
|
|
|
|
A consumer of a MemoryView no longer guards the original object.
[ci skip]
|
|
|
|
Pointed out by @shyouhei.
NOTE: Already we have dropped the support for older MSVCs,
probably prior to 1300 or 1400. Remove the conditional code,
especially in win32/Makefile.sub.
|
|
"experimental_everything" makes the assigned value, it means
the assignment change the state of assigned value.
"experimental_copy" tries to make a deep copy and make copyied object
sharable.
Notes:
Merged: https://github.com/ruby/ruby/pull/3989
|
|
Now we need atomic operations, which are lighter than mutex, more
widely for extension libraries because of Ractor.
Notes:
Merged: https://github.com/ruby/ruby/pull/3983
|
|
|
|
|
|
|
|
|
|
Deleted well over a decade ago in commit 977d66ec993b0f1892fb3e4cd8ac.
|
|
* Use the wrapper of rb_cObject instead of data access
* Replaced rest of extentions
* Updated the version guard for Data
* Added the version guard of rb_cData
Notes:
Merged: https://github.com/ruby/ruby/pull/3961
|
|
Has been deprecated since 684bdf6171b76f5bc5e4f05926a5ab01ec2b4fd5.
Matz says in [ruby-core:83954] that Data should be an alias of Object.
Because rb_cData has not been deprecated, let us deprecate the constant
to make it a C-level synonym of rb_cObject.
Notes:
Merged: https://github.com/ruby/ruby/pull/3961
|
|
It was my bad, the exception that actually raises is rb_eNoMemError.
[ci skip]
|
|
`@exception` is an alias of `@throw`. It might suite Ruby's document
because ruby uses `raise` terminology instead of `throw`. [ci skip]
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/3948
|
|
Co-Authored-By: Dāvis Mosāns <davispuh@gmail.com>
Notes:
Merged: https://github.com/ruby/ruby/pull/3948
|
|
|
|
features
This adds rb_category_compile_warn in order to emit compiler warnings
with categories. Note that Ripper currently ignores the category
for these warnings, but by default it ignores the warnings completely,
so this shouldn't matter.
Notes:
Merged: https://github.com/ruby/ruby/pull/3917
|
|
Since we decided to only allowing specific warning categories,
there is no reason to have an API that accepts a general string,
as it is more error-prone. Switch to only allowing the specific
warning categories.
As rb_category_warn{,ing} are public API, this requires making
rb_warning_category_t public API as well.
Notes:
Merged: https://github.com/ruby/ruby/pull/3917
|
|
Deleted since fc3c60f6081d85f6274986a7a08b59db1515fcb5
|
|
define HAVE_RB_EXT_RACTOR_SAFE to check rb_ext_ractor_safe() is
available or not.
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/3914
|
|
rb_w32_pipe_exec was removed in 1.9.3, at
commit:7ac32d7a16734ea66de15319bcff2fd429abae7f.
Notes:
Merged: https://github.com/ruby/ruby/pull/3914
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/3889
|
|
Now we require C99, these features available of course.
* prototypes
* stdarg prototypes
* token pasting
* stringization
* string literal concatenation
Notes:
Merged: https://github.com/ruby/ruby/pull/3889
|
|
As well as 2366c681166a1dab95de6b9ca8ffcaae18aadd39.
|
|
rb_memory_view_prepare_item_desc
|