Project

General

Profile

Actions

Feature #12739

closed

deprecate_constant :Fixnum, :Bignum

Added by znz (Kazuhiro NISHIYAMA) over 7 years ago. Updated over 4 years ago.

Status:
Closed
Assignee:
-
Target version:
-
[ruby-core:77219]

Description

How about class Object; deprecate_constant :Fixnum, :Bignum; end?

I don't mind either way.
Do you have any comment about it?


Related issues 1 (0 open1 closed)

Related to Ruby master - Feature #12005: Unify Fixnum and Bignum into IntegerClosedmrkn (Kenta Murata)Actions
Actions #1

Updated by znz (Kazuhiro NISHIYAMA) over 7 years ago

  • Related to Feature #12005: Unify Fixnum and Bignum into Integer added

Updated by nobu (Nobuyoshi Nakada) over 7 years ago

I tried this, found rake defines Fixnum::MAX which seems useless, and submitted a PR to rake.
But it fails on ruby 2.2 or earlier, due to incompatibility of Bundler 1.13.0.

Actions #3

Updated by nobu (Nobuyoshi Nakada) over 7 years ago

  • Status changed from Open to Closed

Applied in changeset r56187.


deprecate Fixnum and Bignum

  • numeric.c (Init_Numeric), bignum.c (Init_Bignum): deprecate
    Fixnum and Bignum. this may be reverted after previews.
    [Feature #12739]

Updated by robertgleeson (Robert Gleeson) almost 7 years ago

znz (Kazuhiro NISHIYAMA) wrote:

How about class Object; deprecate_constant :Fixnum, :Bignum; end?

I don't mind either way.
Do you have any comment about it?

It would be nice to have constant_deprecated?.
To avoid all of these warnings while supporting <2.4 and >=2.4 i track what constants are deprecated in an array, and
then avoid using them or not by checking the array at runtime. It's bit of a pain..

Updated by robertgleeson (Robert Gleeson) almost 7 years ago

robertgleeson (Robert Gleeson) wrote:

znz (Kazuhiro NISHIYAMA) wrote:

How about class Object; deprecate_constant :Fixnum, :Bignum; end?

I don't mind either way.
Do you have any comment about it?

It would be nice to have constant_deprecated?.
To avoid all of these warnings while supporting <2.4 and >=2.4 i track what constants are deprecated in an array, and
then avoid using them or not by checking the array at runtime. It's bit of a pain..

I realise my comment isn't clear, here's very simple code to show what i mean:

deprecated_constants = [:Fixnum, :TimeoutError, :Bignum, :FALSE, :TRUE, :NIL]
Object.constants.each do |constant|
const_get(constant) unless deprecated_constants.include?(constant)
end

the real code i have is more complex, but in essence this is the problem,
and deprecated_constants has to be maintained by me manually, which
will become out of date over time.

Updated by znz (Kazuhiro NISHIYAMA) almost 7 years ago

Closed ticket should not be reused.
Please open new ticket.

Actions

Also available in: Atom PDF

Like0
Like0Like0Like0Like0Like0Like0