Use components. Partials are an older construct. It won’t go away right away, but I’ve seen core folks discussing whether they should start throwing deprecation errors when render partial is used …
Re templates vs components, no, you don’t need the JS part of the component. Routable components should have no effect on either partials or templates
Components are more decoupled, isolated and testables. They able the maintainability over time.
All SPA framework are moving to component everything approach.
Nothing has been removed, however there are a number of tricky bugs around partials in 2.15/2.16 that we are trying to get fixed. Its possible this is one of those scenarios…