D3 moves fast:
Whew, D3 6.0 is out! Here are the detailed release notes, hot off the press. 😅 https://t.co/XJMBHvoNG0— Mike Bostock (@mbostock) August 27, 2020
I try to keep up, but inevitably have lots of production code, tutorials, and examples still in older versions (the biggest project I maintain, hedonometer.org, is on v3...eek!). Keeping all of that running would be impossible without the documentation for that code, and thankfully we can still access everything because of how well the D3 team uses git, git tags, and the GitHub releases feature.
You can access any older, or the current version of d3 itself through npmjs, here’s the link to v4.13. The instructions there show you how to use that version through npm, through cdnjs, etc.
D3 itself, if you've made it this far you know, is a collection of submodules. The main repository on GitHub is: https://github.com/d3/d3. This bundles most, but not all, of the submodules (notes on how to add additional modules are in the npmjs instruction above and in the readme on the GitHub).
For accessing the older version of d3 on GitHub, you can click on the “tags” button, and scroll back to version
v4.13, you’ll end up on this link to the tag itself: https://github.com/d3/d3/releases/tag/v4.13.0.
If you go from there to click on the commit tag (it looks like
dd87262), you’ll be here: https://github.com/d3/d3/commit/dd87262...
and then you can click “browse files” to get back to the main repo pack at that specific release commit: https://github.com/d3/d3/tree/dd87262...
From that version of the repo, you can access the API doc by clicking on the
API.md file, so that’s the docs for
If you didn’t follow all of the clicks, here it is: https://github.com/d3/d3/blob/dd87262/API.md.
Now, some of the references in there refer you to the submodules, like clicking
d3.selection, it will send you here: https://github.com/d3/d3-selection/blob/master/README.md#selection.
Well, damn, that’s the latest release of
d3-selection, not the one bundled in d3
But not to worry,
back on the main repo pack for the v4.13 commit,
navigate to the
index.js file and you’ll see all of the pinned dependencies.
d3-selection, it’s this line:
now on the
you can follow the same steps:
- Go to tags,
- scroll to version
- click that one,
- click the commit tag,
- click browse files.
You’re back at
d3-selection with the code and documentation as it was when
v1.3.0 was released.
A bit of a saga, but in short you can find any version of d3,
and their documentation through GitHub.
It’s a good exercise in getting familiar with tagging releases with git
git tag v0.0.1; git push origin --tags;),
just how powerful that can be if done right,
and navigating around GitHub.