Breaking Changes
summary
Semantic versioning (SemVer) helps but doesn’t solve ambiguity: changing a returned 404 from number to string breaks code that uses strict equality, not loose, and changing an array shape can silently concatenate instead of add. Real incidents include a buffer constructor ambiguity that exposed memory and sdlib updates that cause Node 4.8.2/6.10.2 to break WebSocket servers; maintenance choices favor stability when modules see 8 million downloads a week and dependencies must be explicit about types and side effects.
AI-written summary · about
chapters (6)
- 0:00Start
- 4:51Changing interfaces
- 15:40Side effects
- 22:27Communicate
- 23:44Avoid brittle constructions
- 27:21Automated testing
related talks
39mWe fail to follow SemVer and why it needn't matter
32mES Modules in Node JS
32mNode.js Q&A session
40mNode.js: Where are we now, where are we going?
24mWriting Secure JavaScript
39mNode.js - What's Next - Catalyzing Change in the Node.js Ecosystem
33mNode.js Versions - How Do They Work?
29mAPI Modernization: Building Bridges As You Cross Them
