$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Semantic Versioning
Search
Pine Mizune
November 17, 2015
Programming
0
48
Semantic Versioning
社内勉強会で発表した資料
Pine Mizune
November 17, 2015
Tweet
Share
More Decks by Pine Mizune
See All by Pine Mizune
多言語対応と絵文字ジェネレーター / i18n of Emoji Generator
pine
0
840
C++ 製グラフィックライブラリ Skia の紹介 / Introduction to the graphics library Skia written by C++
pine
0
1.8k
asyncio + aiohttp で作るウェブサービス / How to develop a web service with asyncio and aiohttp
pine
0
680
Lerna による明示的疎結合アーキテクチャ
pine
1
660
CircleCI 2.0 x JavaScript
pine
3
560
Perl 卒業式
pine
0
350
Android Studio の気になる warnings を抑制する方法まとめ
pine
0
510
Emoji Generator meets Browser Extensions
pine
1
3k
近年の OSS 開発における CI 選択のベストプラクティス
pine
3
4.5k
Other Decks in Programming
See All in Programming
UIデザインに役立つ 2025年の最新CSS / The Latest CSS for UI Design 2025
clockmaker
18
7.4k
Socio-Technical Evolution: Growing an Architecture and Its Organization for Fast Flow
cer
PRO
0
340
まだ間に合う!Claude Code元年をふりかえる
nogu66
5
830
Giselleで作るAI QAアシスタント 〜 Pull Requestレビューに継続的QAを
codenote
0
190
DSPy Meetup Tokyo #1 - はじめてのDSPy
masahiro_nishimi
1
170
AIエンジニアリングのご紹介 / Introduction to AI Engineering
rkaga
7
2.6k
これだけで丸わかり!LangChain v1.0 アップデートまとめ
os1ma
6
1.8k
テストやOSS開発に役立つSetup PHP Action
matsuo_atsushi
0
150
從冷知識到漏洞,你不懂的 Web,駭客懂 - Huli @ WebConf Taiwan 2025
aszx87410
2
2.6k
AtCoder Conference 2025「LLM時代のAHC」
imjk
2
480
ID管理機能開発の裏側 高速にSaaS連携を実現したチームのAI活用編
atzzcokek
0
230
Github Copilotのチャット履歴ビューワーを作りました~WPF、dotnet10もあるよ~ #clrh111
katsuyuzu
0
110
Featured
See All Featured
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.1k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
4 Signs Your Business is Dying
shpigford
186
22k
How to Ace a Technical Interview
jacobian
280
24k
Producing Creativity
orderedlist
PRO
348
40k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.3k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Statistics for Hackers
jakevdp
799
230k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
8.3k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
1
100
How to Think Like a Performance Engineer
csswizardry
28
2.4k
How STYLIGHT went responsive
nonsquared
100
6k
Transcript
Semantic Versioning 17 Nov, 2015 / Pine Mizune
目次 • ターゲット層と目的 • Semantic Versioning とは ? • Semantic
Versioning の規格について • Semantic Versioning で良いこと • npm@v3 と Semantic Versioning • まとめ
ターゲット層と目的 ライブラリを作成・メンテナンスする人 仕事で他者の作ったライブラリを使う人 ターゲット層 ターゲット層 ライブラリの利用者を混乱させないため
安定的に動作するソフトウェアを構築するため 目的 目的
Semantic Versioning とは ? バージョン番号の付け方の規格 v1.0.0 / v0.10.38
← この付け方の規格 SemVer と略す Ruby / Node で公式に採用 Rubygems / npm のライブラリは従う必要がある Perl は非準拠
Semantic Versioning の規格 v 1 . 2 . 3 破壊的変更
機能追加 バグ修正 major を上げる minor を上げる patch を上げる major . minor . patch
Semantic Versioning の規格 (その他) major.minor.patch-pre_release … 不安定版 例:
1.0.0-beta / 1.0.0-rc.10 0.minor.patch … 開発版 例: 0.1.0 / 0.9.8 / 0.10.38 Semantic Versioning では 0.x.x は特別扱い 0.x.x 系は常に破壊的変更が許される
Semantic Versioning の良い所 バージョン番号だけで変更内容を伝えられる バージョンアップするか否かの指標になる 状況に応じてバージョンアップを選択できる
全体を通した依存関係の解決ができる 依存関係に矛盾がないか機械的に判定できる 依存関係を最適化できる -> npm@v3
Semantic Versioning と npm@v3 npm@v3 は SemVer base の flat
tree 採用 → SemVer に準拠する必要性が高まる!!
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
npm@v2 npm@v3
まとめ Semantic Versioning で、安全な開発を ライブラリを使うとき ライブラリをバージョンアップするとき ライブラリを公開するとき
fin