Today I Learned
Need to Learn
SemVer and package.json Version Prefixes
I keep forgetting what versions like 1.0.3 mean and what ^ does in package.json, so this is now in my learning backlog.
I want to solidify how semantic versioning and dependency ranges work.
What I need to learn clearly
- What
major.minor.patchmeans in practice. - What
^,~, and exact versions do inpackage.json. - How to pin a dependency version when I need deterministic installs.
Current rough understanding
1is major,0is minor,3is patch in1.0.3.- I remember
^allows updates, but I need to define exactly which updates. - I need a reliable rule for when to use flexible vs fixed versions.
Concrete follow-up
- Build a small table with examples:
^1.0.3~1.0.31.0.3
- Validate behavior with real installs and lockfile diffs.
I will move this to Learning once I write the table and run examples.
