Project

General

Profile

Bug #15300

rb_frame_method_id_and_class deprecated in 2.6

Added by paddor (Patrik Wenger) about 1 year ago. Updated 7 months ago.

Status:
Closed
Priority:
Normal
Target version:
-
ruby -v:
ruby 2.6.0preview3 (2018-11-06 trunk 65578) [x86_64-linux]
[ruby-core:89782]

Description

Coming from jasonroelofs/rice#105, related to #14192.

As far as I understand, this API has been deprecated, thus Rice won't compile anymore.

detail/method_data.cpp:19:48: error: ‘int rb_frame_method_id_and_class(ID*, VALUE*)’ is deprecated [-Werror=deprecated-declarations]
   if (!rb_frame_method_id_and_class(&id, &klass))
                                                ^
In file included from /home/p/.rubies/ruby-2.6.0-preview3/include/ruby-2.6.0/ruby/ruby.h:24:0,
                 from /home/p/.rubies/ruby-2.6.0-preview3/include/ruby-2.6.0/ruby.h:33,
                 from detail/ruby.hpp:19,
                 from detail/method_data.hpp:4,
                 from detail/method_data.cpp:1:
/home/p/.rubies/ruby-2.6.0-preview3/include/ruby-2.6.0/ruby/backward.h:53:16: note: declared here
 DEPRECATED(int rb_frame_method_id_and_class(ID *idp, VALUE *klassp));

Back in December 2017, there was no replacement API fixed yet.
ko1 (Koichi Sasada), are there any updates to this?

Associated revisions

Revision a976acd6
Added by ko1 (Koichi Sasada) 11 months ago

remove "deprecated" for rb_frame_method_id_and_class [Bug #15300]

  • include/ruby/backward.h (rb_frame_method_id_and_class): we had labeled rb_frame_method_id_and_class() as deprecated because MRI internal doesn't use it, but we found there are user of this API in external C-extensions. Now we don't have proper alternative API and no time to make alternative API, so I remove "deprecated" label. [Bug #15300]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66522 b2dd03c8-39d4-4d8f-98ff-823fe69b080e

Revision 66522
Added by ko1 (Koichi Sasada) 11 months ago

remove "deprecated" for rb_frame_method_id_and_class [Bug #15300]

  • include/ruby/backward.h (rb_frame_method_id_and_class): we had labeled rb_frame_method_id_and_class() as deprecated because MRI internal doesn't use it, but we found there are user of this API in external C-extensions. Now we don't have proper alternative API and no time to make alternative API, so I remove "deprecated" label. [Bug #15300]

Revision 66522
Added by ko1 (Koichi Sasada) 11 months ago

remove "deprecated" for rb_frame_method_id_and_class [Bug #15300]

  • include/ruby/backward.h (rb_frame_method_id_and_class): we had labeled rb_frame_method_id_and_class() as deprecated because MRI internal doesn't use it, but we found there are user of this API in external C-extensions. Now we don't have proper alternative API and no time to make alternative API, so I remove "deprecated" label. [Bug #15300]

History

Updated by k0kubun (Takashi Kokubun) about 1 year ago

  • Assignee set to ko1 (Koichi Sasada)
#2

Updated by ko1 (Koichi Sasada) 11 months ago

  • Status changed from Open to Closed

Applied in changeset trunk|r66522.


remove "deprecated" for rb_frame_method_id_and_class [Bug #15300]

  • include/ruby/backward.h (rb_frame_method_id_and_class): we had labeled rb_frame_method_id_and_class() as deprecated because MRI internal doesn't use it, but we found there are user of this API in external C-extensions. Now we don't have proper alternative API and no time to make alternative API, so I remove "deprecated" label. [Bug #15300]

Updated by ko1 (Koichi Sasada) 11 months ago

sorry for long absent. I remove "deprecated" for this API. Could you check it?

Thanks,
Koichi

Updated by paddor (Patrik Wenger) 7 months ago

I just noticed that Rice works perfectly under Ruby 2.6.2! Thank you so much.

Also available in: Atom PDF