Multiple versions of same JS library with Bower and django-pipeline

588 Views Asked by At

Two of the libraries I use in my single page application are moment and backgrid-moment-cell. I use bower to manage my front-end libraries and django-pipeline for asset packaging.

I'd like to use version 2.8.1 of moment, but backgrid-moment-cell requires version ~2.5.0. How can I get both version into my project?

1

There are 1 best solutions below

1
On BEST ANSWER

Front-end development should use a single dependency because you want to minimize the amount of code your users need to download. Bower helps you to manage this, which is a major benefit of using it. You have a few options:

  • Manually namespace the modules then include both (really not recommended)
  • Use resolutions in bower.json, but you may introduce bugs:
"resolutions": {
    "moment": "2.8.1"
}
  • Ask the maintainer to bump bower dependency versions (recommended)