title: Maintaining backward compatibility in npm packages
body: <p>I'm building an Angular npm package. I want to make sure that this package works with Angular 2, Angular 4 and Angular 5 applications. But I'm confused of how my approach of distributing this package should be. The following are my thoughts:</p>
  
  <ol>
  <li>Should I maintain backward compatibility in each and every release of my package?</li>
  <li>Or should I fix my package versions to a specific Angular version? For ex: myPackage@1.x for Angular 2, myPackage@2.x for Angular 4, myPackage@3.x for Angular 5? So that I can point the user to the right install command in the readme file of my npm package in case they need the package for older versions of Angular. Ex: If you want this package for Angular version 4 please npm install myPackage@2.0.5</li>
  </ol>
  
  <p>I may sound silly as Im new in this area. But any help/pointers are highly appreciated.</p>