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
Rubyの配布パッケージの変遷
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Kazuhiro NISHIYAMA
May 22, 2026
Programming
19
0
Share
Rubyの配布パッケージの変遷
[第91回 Ruby関西 勉強会](
https://rubykansai.doorkeeper.jp/events/196870)での発表資料です
。
Kazuhiro NISHIYAMA
May 22, 2026
More Decks by Kazuhiro NISHIYAMA
See All by Kazuhiro NISHIYAMA
Headscale + Tailscale に移行中
znz
0
60
Ruby on Rails と私
znz
0
74
riscv64.rubyci.org internal
znz
0
58
Rubyの日本語リファレンスマニュアルの現在と未来
znz
0
110
devise-two-factorを4.xから5.xに上げた話
znz
0
410
docs.ruby-lang.org/ja/ の生成方法を変えた
znz
0
110
Ubuntuのriscv64版をqemuで動かした
znz
0
140
lilo.linux.or.jpをbusterからbullseyeに上げた
znz
0
140
小規模個人アプリをRails 7.xにバージョンアップした話
znz
0
130
Other Decks in Programming
See All in Programming
AIチームを指揮するOSS「TAKT」活用術 / How to Use “TAKT,” an OSS Tool for Orchestrating AI Teams
nrslib
6
820
oxlintはeslint/typescript-eslintを置き換えられるのか
shomafujita
2
310
肥大化するレガシーコードに立ち向かうためのインターフェース分離と依存の逆転 / JJUG CCC 2026 Spring
hirokunimaeta
0
490
jQueryをバージョンアップする前に使いたいjQuery Migrate
matsuo_atsushi
0
180
関係性から理解する"同一性"の型用語たち
pvcresin
2
630
Stage 3 Decorators でできること / できないこと / TSKaigi 2026
susisu
1
1.5k
Composerを使ったサプライチェーン攻撃の様子を眺めてみる #phpstudy
o0h
PRO
2
220
TSKaigi 2026 TypeScriptバックエンドのオブザーバビリティ戦略 — Datadog × NestJSの実践
taiseiyamamotoan
2
280
AIとRubyの静的型付け
ukin0k0
0
530
TypeScript+Orvalで実現する型安全かつ堅牢でスケーラブルなマルチチャネル通知基盤 / TSKaigi Night talks ~after conference~
d0riven
0
260
Copilot CLI の継戦能力を高める コンテキスト管理
nozomutu
1
1.2k
Why Laravel apps break—Mastering the fundamentals to keep them maintainable
kentaroutakeda
1
340
Featured
See All Featured
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
2k
Agile that works and the tools we love
rasmusluckow
331
21k
Skip the Path - Find Your Career Trail
mkilby
1
140
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
150
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.3k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
A Soul's Torment
seathinner
6
2.9k
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2.1k
Documentation Writing (for coders)
carmenintech
77
5.4k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.5k
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
390
Code Reviewing Like a Champion
maltzj
528
40k
Transcript
Rubyの配布パッケージの変遷 Kazuhiro NISHIYAMA 株式会社Ruby開発 2026-05-22 Powered by Rabbit 4.0.1
self.introduction 西山 和広 github など: @znz Ruby のコミッター 1/12
Rubyの配布パッケージとは? 今回の話では https://cache.ruby-lang.org/pub/ruby/ で配布され ている tar.gz などのアーカイブファイルのこと https://www.ruby-lang.org/en/news/ でのアナウンスで正式リ リース
アナウンス前にファイルが見えても変わる可能性あり 今は3形式 tar.gz tar.xz zip 2/12
最初は tar.gz だけ matz がリリースしていた頃からの慣習で昔は tar.gz のみ 2007-03-13 1.8.6 で
tar.bz2 と zip が増えた tar.bz2 : サイズが小さいので帯域節約のため tar.gz, zip : 利便性のため 詳細は [ruby-dev:30562] あたりのスレッドを参照 https://blade.ruby-lang.org/ruby-dev/30562 3/12
tool/make-snapshot 2007-12-26 1.9.0-0 の前あたりからアーカイブ作成が tool/ make-snapshot というスクリプト化 4/12
小ネタ zip の作成に 7z があれば優先して使うようにした zip コマンドより 7z の方が圧縮率が良かったため 5/12
tar.xz 対応追加 IRC で tar.xz の方が小さいのであると良さそうという話が何度 か出ていた ここで 1.8 非対応になりつつ
xz 対応 直接のきっかけのやりとりはみつからず commit 944ff17f8a64092c80131afe2d0ce467b3cacce4 Author: Nobuyoshi Nakada <nobu@...> Date: Tue May 13 10:09:41 2014 +0000 make-snapshot: support xz * tool/make-snapshot (package): support xz. no longer runs with 1.8 or earlier. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45934 b2dd03c8-39d4-4d8f-98ff-823fe69b080e 6/12
tar.xz リリース リリースパッケージとしては以下から 2014-09-19 2.0.0-p576 (from ruby_2_0_0) 2014-09-19 2.1.3 (from
ruby_2_1) 2014-10-27 1.9.3-p550 (from ruby_1_9_3) (ruby 2.2 は最初から) (cache.ruby-lang.org は 2015-07-25 になってしまっていたので、 日付は https://gist.github.com/unak/3038095 から) 7/12
tar.bz2 削除 それぞれの形式の目的 tar.bz2, tar.xz : サイズが小さいので帯域節約のため tar.gz, zip :
利便性のため bz2 より xz の方がサイズが小さく展開も速い xz はまだ (当時) 標準でインストールされていない Linux 環境もあった 互換性しか残す理由がない 8/12
3.0 から tar.bz2 なし How about stopping new *.tar.bz2 releases?
https://bugs.ruby-lang.org/issues/16483 で提案して 2020-12-08 3.0.0-preview2 から tar.bz2 なし preview1 には間に合わなかった 9/12
bz2 削除対応 https://github.com/ruby/actions のアーカイブ作成の GitHub Action での対応 バージョンをみて tar.bz2 を除外するオプションを
tool/make-snapshot に 指定 https://github.com/rbenv/ruby-build などの外部への影響もあった 10/12
最近の追加対応 アーカイブ作成の GitHub Action が https://github.com/ruby/ruby に移植された tar.bz2 対応が残っていたが今は 3.3
以降のみサポートなので不要 対応コードを削除 11/12
まとめ Ruby のリリースアーカイブ形式 tar.gz のみ → tar.bz2, zip 追加 →
tar.xz 追加 → tar.bz2 削除 追加は簡単 削除は大変 関係者との調整 影響範囲の考慮 tar.zst (Zstandard) の追加はどうかなと思ったことがあるけど、 削除の大変さを考えると気軽に追加提案はできなくなってし まった (圧縮率も xz を置き換えるほどではない) 12/12 Powered by Rabbit 4.0.1