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
390
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の日本語リファレンスマニュアルの現在と未来
znz
0
33
devise-two-factorを4.xから5.xに上げた話
znz
0
130
docs.ruby-lang.org/ja/ の生成方法を変えた
znz
0
56
Ubuntuのriscv64版をqemuで動かした
znz
0
65
lilo.linux.or.jpをbusterからbullseyeに上げた
znz
0
69
小規模個人アプリをRails 7.xにバージョンアップした話
znz
0
58
Ruby リファレンスマニュアル改善計画 2022 進捗報告
znz
0
120
Rubyist Magazine Reboot
znz
0
160
History of Japanese Ruby reference manual, and future
znz
0
1.6k
Other Decks in Programming
See All in Programming
ソフトウェアエンジニアの成長
masuda220
PRO
10
1.1k
Ruby on cygwin 2025-02
fd0
0
140
Open source software: how to live long and go far
gaelvaroquaux
0
630
WebDriver BiDiとは何なのか
yotahada3
1
140
Writing documentation can be fun with plugin system
okuramasafumi
0
120
CNCF Project の作者が考えている OSS の運営
utam0k
6
710
Java Webフレームワークの現状 / java web framework at burikaigi
kishida
9
2.2k
Pulsar2 を雰囲気で使ってみよう
anoken
0
230
データベースのオペレーターであるCloudNativePGがStatefulSetを使わない理由に迫る
nnaka2992
0
130
バックエンドのためのアプリ内課金入門 (サブスク編)
qnighy
8
1.8k
密集、ドキュメントのコロケーション with AWS Lambda
satoshi256kbyte
0
190
Formの複雑さに立ち向かう
bmthd
1
830
Featured
See All Featured
A designer walks into a library…
pauljervisheath
205
24k
The Invisible Side of Design
smashingmag
299
50k
Code Review Best Practice
trishagee
67
18k
How to Think Like a Performance Engineer
csswizardry
22
1.3k
Embracing the Ebb and Flow
colly
84
4.6k
Reflections from 52 weeks, 52 projects
jeffersonlam
348
20k
Designing for Performance
lara
604
68k
Into the Great Unknown - MozCon
thekraken
35
1.6k
Git: the NoSQL Database
bkeepers
PRO
427
64k
How to Ace a Technical Interview
jacobian
276
23k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
59k
Gamification - CAS2011
davidbonilla
80
5.1k
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