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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Kazuhiro NISHIYAMA
September 19, 2014
Programming
480
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Archaeology of Ruby: Removed Features Ruby
RubyKaigi 2014 での発表資料です。
Kazuhiro NISHIYAMA
September 19, 2014
More Decks by Kazuhiro NISHIYAMA
See All by Kazuhiro NISHIYAMA
Rubyの配布パッケージの変遷
znz
0
32
Headscale + Tailscale に移行中
znz
0
75
Ruby on Rails と私
znz
0
80
riscv64.rubyci.org internal
znz
0
60
Rubyの日本語リファレンスマニュアルの現在と未来
znz
0
120
devise-two-factorを4.xから5.xに上げた話
znz
0
430
docs.ruby-lang.org/ja/ の生成方法を変えた
znz
0
120
Ubuntuのriscv64版をqemuで動かした
znz
0
150
lilo.linux.or.jpをbusterからbullseyeに上げた
znz
0
150
Other Decks in Programming
See All in Programming
ルールを書いて終わらせないハーネスエンジニアリング
yug1224
4
1.7k
Welcome to the "Parametricity" 🏙️ − Generic だけど Specific な世界 −
guvalif
PRO
1
180
PostgreSQL 18で考えるUUID主キー
kazuhiro1982
0
200
AWS CDK を「作」ってみた 〜フルスクラッチで見えた CDK の裏側〜 / aws-cdk-from-scratch
gotok365
3
500
生成AI導入の「期待外れ」を乗り越える ー 開発フロー改革が目指す、真の組織変革
starfish719
0
1.9k
AIキャラアプリkaiwaの低遅延音声通話基盤をどう作ったか - AWS Gravitonで支える低遅延・低コストAI Agent基盤
mogamit
0
180
GitHubCopilotCLIのスラッシュコマンドを自作してみる
htkym
0
100
ビデオ通話が繋がる0.2秒で何が起きているのか
supurazako
2
150
GDG Korea Android: 2026 I/O Extended ~ What's new in Android development tools
pluu
0
110
Laravelで学ぶ Webアプリケーションチューニング入門/web_application_tuning_101
hanhan1978
4
1.3k
act1-costs.pdf
sumedhbala
0
250
1年で人数1.5倍、PR数5.5倍増。 品質とアウトカムはどうなったか、 何が効いたか
ike002jp
0
150
Featured
See All Featured
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
590
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.9k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
4.2k
Art, The Web, and Tiny UX
lynnandtonic
304
22k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
220
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
56k
My Coaching Mixtape
mlcsv
0
170
Site-Speed That Sticks
csswizardry
13
1.3k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
23k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6k
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