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
We fail to follow SemVer – and why it needn't m...
Search
Stephan Bönnemann
October 27, 2015
Programming
0
330
We fail to follow SemVer – and why it needn't matter
https://skillsmatter.com/conferences/6612-fullstack#program
Stephan Bönnemann
October 27, 2015
Tweet
Share
More Decks by Stephan Bönnemann
See All by Stephan Bönnemann
Greenkeeper – managing dependencies with confidence
boennemann
0
290
Greenkeeper – managing dependencies with confidence
boennemann
0
99
JavaScript Release Management for Open Source Projects and Companies
boennemann
0
520
Dependency Hell Just Froze Over
boennemann
1
560
npm – more than just install
boennemann
0
170
We fail to follow SemVer – and why it needn’t matter
boennemann
0
290
We fail to follow SemVer – and why it needn’t matter
boennemann
3
1.3k
We fail to follow SemVer – and why it needn’t matter
boennemann
0
230
Hoodie.js Introduction – Salzburg Web Dev Meetup
boennemann
0
690
Other Decks in Programming
See All in Programming
基礎から学ぶ大画面対応(Learning Large-Screen Support from the Ground Up)
tomoya0x00
0
1.6k
テストコードはもう書かない:JetBrains AI Assistantに委ねる非同期処理のテスト自動設計・生成
makun
0
320
testingを眺める
matumoto
1
140
はじめてのMaterial3 Expressive
ym223
2
750
複雑なフォームに立ち向かう Next.js の技術選定
macchiitaka
2
140
プロパティベーステストによるUIテスト: LLMによるプロパティ定義生成でエッジケースを捉える
tetta_pdnt
0
1.7k
The Past, Present, and Future of Enterprise Java with ASF in the Middle
ivargrimstad
0
130
Tool Catalog Agent for Bedrock AgentCore Gateway
licux
6
2.5k
rage against annotate_predecessor
junk0612
0
170
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
390
そのAPI、誰のため? Androidライブラリ設計における利用者目線の実践テクニック
mkeeda
2
310
パッケージ設計の黒魔術/Kyoto.go#63
lufia
3
440
Featured
See All Featured
4 Signs Your Business is Dying
shpigford
184
22k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Side Projects
sachag
455
43k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.4k
YesSQL, Process and Tooling at Scale
rocio
173
14k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
Java REST API Framework Comparison - PWX 2021
mraible
33
8.8k
KATA
mclloyd
32
14k
Statistics for Hackers
jakevdp
799
220k
Intergalactic Javascript Robots from Outer Space
tanoku
272
27k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
188
55k
Transcript
125,000 @boennemann packages on npm
@boennemann 200,00 packages on npm
Each package is a problem solved @boennemann
@boennemann
1. npmsearch.com @boennemann
1. npmsearch.com 2. npm install <package> @boennemann
1. npmsearch.com 2. npm install <package> 3. ? @boennemann
1. npmsearch.com 2. npm install <package> 3. ? 4. profit
@boennemann
X.Y.Z @boennemann
X.Y.Z @boennemann Major Minor Patch http://semver.org
@boennemann Major Minor Patch http://semver.org 1.0.0
@boennemann Major Minor Patch http://semver.org 1.0.1
@boennemann Major Minor Patch http://semver.org 1.1.0
@boennemann Major Minor Patch http://semver.org 2.0.0
2.0.0 @boennemann Major Minor Patch
2.0.0 @boennemann Major Minor Patch
2.0.0 @boennemann Patch Breaking Feature
2.0.0 @boennemann Breaking Feature Patch http://semver.npmjs.com/
2.0.0 @boennemann Breaking Feature Patch http://semver.npmjs.com/ ~
2.0.0 @boennemann Breaking Feature Patch http://semver.npmjs.com/ ^
not really @boennemann
We fail to follow SemVer @boennemann
@boennemann http://npmbynumbers.bocoup.com/
@boennemann http://npmbynumbers.bocoup.com/ 0.y.z >0.y.z
Anything may change at any time @boennemann
@boennemann
No changelogs @boennemann
@boennemann
@boennemann
@boennemann
Hauptversionsnummern- erhöhungsangst¹ @boennemann ¹ Fear of increasing the major version
If we strictly followed “semantic” versioning, it would probably be
Backbone.js 43.0.0 by now — which doesn't help anyone evaluate the actual progress of the project. – Jeremy Ashkenas, http://backbonejs.org/ @boennemann
evaluate the actual progress of the project @boennemann
@boennemann
Versions are not for humans @boennemann
@boennemann
@boennemann
@boennemann 1.x 2.x
@boennemann 1.x 1.x
Versions are not for humans – names are @boennemann
@boennemann – Stephan Seidt, http://fucking.engineering/
Our tools are so bad, we value human readability in
computer protocols when it really doesn’t. fucking. matter. @boennemann – Stephan Seidt, http://fucking.engineering/
We fail to follow SemVer and why it needn’t matter
@boennemann
we need better tools @boennemann
semantic-release fully automated package publishing @boennemann
@boennemann
@boennemann – http://egghead.io/
Trust us, this will change your workflow for the better
@boennemann – http://egghead.io/
⭐⭐⭐ git.io/semantic-release @boennemann
@boennemann
automated dependency updates and testing @boennemann
@boennemann
@boennemann
@boennemann
npm install -g greenkeeper http://greenkeeper.io @boennemann
@boennemann
@boennemann
Thank you @boennemann