Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Archaeology of Ruby: Removed Features Ruby
Search
Kazuhiro NISHIYAMA
September 19, 2014
Programming
0
420
Archaeology of Ruby: Removed Features Ruby
RubyKaigi 2014 での発表資料です。
Kazuhiro NISHIYAMA
September 19, 2014
Tweet
Share
More Decks by Kazuhiro NISHIYAMA
See All by Kazuhiro NISHIYAMA
Ruby on Rails と私
znz
0
11
riscv64.rubyci.org internal
znz
0
11
Rubyの日本語リファレンスマニュアルの現在と未来
znz
0
55
devise-two-factorを4.xから5.xに上げた話
znz
0
250
docs.ruby-lang.org/ja/ の生成方法を変えた
znz
0
74
Ubuntuのriscv64版をqemuで動かした
znz
0
92
lilo.linux.or.jpをbusterからbullseyeに上げた
znz
0
95
小規模個人アプリをRails 7.xにバージョンアップした話
znz
0
83
Ruby リファレンスマニュアル改善計画 2022 進捗報告
znz
0
140
Other Decks in Programming
See All in Programming
LT 2025-06-30: プロダクトエンジニアの役割
yamamotok
0
890
The Evolution of Enterprise Java with Jakarta EE 11 and Beyond
ivargrimstad
0
370
ご注文の差分はこちらですか? 〜 AWS CDK のいろいろな差分検出と安全なデプロイ
konokenj
4
620
High-Level Programming Languages in AI Era -Human Thought and Mind-
hayat01sh1da
PRO
0
910
AWS Summit Japan 2024と2025の比較/はじめてのKiro、今あなたは岐路に立つ
satoshi256kbyte
1
200
生成AI時代のコンポーネントライブラリの作り方
touyou
1
290
CIを整備してメンテナンスを生成AIに任せる
hazumirr
0
100
AI コーディングエージェントの時代へ:JetBrains が描く開発の未来
masaruhr
1
210
Android 16KBページサイズ対応をはじめからていねいに
mine2424
0
520
「App Intent」よくわからんけどすごい!
rinngo0302
1
120
バイブスあるコーディングで ~PHP~ 便利ツールをつくるプラクティス
uzulla
1
170
階層化自動テストで開発に機動力を
ickx
1
370
Featured
See All Featured
How to Think Like a Performance Engineer
csswizardry
25
1.8k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.7k
Producing Creativity
orderedlist
PRO
346
40k
Git: the NoSQL Database
bkeepers
PRO
431
65k
Building Adaptive Systems
keathley
43
2.7k
Why You Should Never Use an ORM
jnunemaker
PRO
58
9.5k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
22k
BBQ
matthewcrist
89
9.7k
Practical Orchestrator
shlominoach
189
11k
The Language of Interfaces
destraynor
158
25k
Agile that works and the tools we love
rasmusluckow
329
21k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Transcript
Ruby�考古学� �消された機能編 Archaeology�of�Ruby:� �Removed�Features Kazuhiro�NISHIYAMA RubyKaigi2014 2014/09/19
Self�introduction one�of�Ruby�Committers Mr.�fix�typo�(by�Chikanaga) I�use�Ruby�since�1.4
Agenda リリースに⼊った後、消された 機能� Some�features�removed�after�release 開発版のみに⼊っていた機能� Some�features�only�in�development�branch
Safe�Level ��������is�obsolete�since� 2.1.0 不完全な�Sand�Box Safe�Level�自体の削除の話も何 度かあった
Safe�level Feature�#8468�Remove� $SAFE Matz�agreed�at�GitHub�Tokyo� drinkup�(on�2013) tDiary,�which�is�the�only� application�using�$SAFE�==�4,� also�agreed ����������is�a�fail-safe�feature�to� detect�bugs�of�applications
Safe�Level ��������is�obsolete�since� 2.1.0 raise�ArgumentError ��������since�1.9.1 ��������is�deprecated�since� 2.1.0 its�behavior�is�same�as�taint
����from����������� security�reason same�as������does�not� contain����since�1.9.2 use������������������instead
������ from��������to�Encoding� (m17n) �������#=>�nil�#�warning:� variable�$KCODE�is�no� longer�effective ��������#�warning:�variable� $KCODE�is�no�longer� effective;�ignored
Regexp�options Regexp�literal�options� (remains)�:������������ ������������������������������������� ����������������������������������� ���������������������������������������� ����������������������������������
���(ignore�case) ��������� ruby�1.8.7:�warning:� modifying�$=�is�deprecated ruby�1.9.3:�warning:�variable� $=�is�no�longer�effective;� ignored
������� between�1.6.7�and�1.8.0 ���������→�������� ���������→�������� ���������→�������������� ���������→������������� ���������→��������������
�������� until�1.8 �������� �������� ��� :�をつけられる隠し機能の削除
������������ �������������(recommend) �������������(deprecated) Ruby�本体のメソッド名は出来るだ け三単現のsを付けない ��������������������� ��������������������������������������� �������������������������������
Agenda リリースに⼊った後、消された 機能� Some�features�removed�after�release 開発版のみに⼊っていた機能 Some�features�only�in�development�branch
Symbol�<�String�in� 2006�(1.9.0-dev) Symbol�が�String�を継承してい た時期があった Symbol�<�Stringも⽌める。 caseとかでのバグをたくさん⽣ んでしまう http://www.rubyist.net/~matz/20061107.html#p03
Symbol�<�String�(cont.) ����������� ���������� ������������������������������������������������� ����������������������������� ����������� ���������������� ����������������������������� 継承は⽌めても�String�に似た扱 いは⼊った。
������ between�1.8�and�1.9 ���������cannot�call�private� methods ������,�������� ������������since�1.9.1 private�メソッド呼び出し用途が多 く影響範囲が広いため元の挙動に
Real�multi-value� (to̲splat) 1.9.x ���������(!=�������)�(!=�����) svalue,�avalue,�mvalue e.g.��������������
Symbol.find�in�2.2.0-dev Symbol.find(str)� �->�symbol�or�nil Return�the�related�symbol�if�the� symbol�already�exists. Return�nil�if�not. revision�47543 Removed�because�of�Symbol�GC If�you�still�want�this,�request� again�on�Redmine.
statfs�in�2.2.0-dev ����������and������������� https://bugs.ruby-lang.org/ issues/9772 ��������������for�tests Reject�at� DevelopersMeeting20140517 Japan 「Matz:�⾊々込み⼊ってるので�core�には⼊れないで�test�配下 へ.�欲しいということがあったら�gem�にしてください.」
Conclusion Some�features�only�in� development�branch Some�features�cannot� introduce�because�of� compatibility