With node I have always had to install a newer version than that installed by the OS.
ROS seems to take this even further. There is a ros-kinetic-, ros-melodic- series of packages each for a specific Ubuntu release.
There is also perl's CPAN.
OCaml had not one but 2 package managers I think and the only package set that seems to work is that is the default OS install. The others apparently stay up to speed with ocaml updates.
What are possible solutions/workarounds, if at all this is seen as a problem?