I'm new to D3js
and before getting started I want to understand how versions for the core and plugins are managed so I don't find myself stuck with an old unsupported versions or using something that's too experimental.
If I look at the release history I see that v4
was introduced back in Jun 2016
(https://github.com/d3/d3/releases?after=v4.1.0) and v5
in Jan 2018
(https://github.com/d3/d3/releases?after=v5.0.1).
Yet, when I look at D3js
code on the gallery (https://github.com/d3/d3/wiki/Gallery), I see that most of it is based on v3
which is 2
major releases behind.
For instance if I take a Sankey example updated in May 2018 it's still based on v3
, and if I try to replace it with v5
it breaks.
Another example: someone had an issue with v4
back in Feb 2017, and the answer at the time and in April 2017 it was still not working (despite it was already v4.8
at the time, nearly 1 year after the release of v4
) :
So it seems that v4/v5
are completely different branches from v3
and are not even backwards compatible.
Hence my questions:
v5
backward compatible with v3
?v3
still be supported?Consolidating comments as 1 comprehensive answer:
General philosophy
It seems, and it's understandable given the fact that D3 creator is creating/maintaining the library mostly by himself, that there isn't enough resources to design with backwards-compatibility nor maintain old code.
Which version to choose
Given the above, when starting fresh, it seems picking the latest version is the most sensible choice.
Backward compatibility
There have been backward incompatible changes going from v3
to to v5
(v5 removed d3-queue
, d3-request
, schemeCategory20
...). So it wouldn't be a shocker if in the future other backward incompatible changes are introduced.
Legacy support
It seems the moment a new version is released, support for the older version is abandoned and all efforts are focused on the new version:
https://twitter.com/mbostock/status/764274097995907072
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With