angularjsjsonnpmbowerbower-install

Bower is always installing latest version instead of the specified version


Regardless of the version specified in the "bower.json" file, bower (v1.8.0) ignores it and downloads the latest version of the library available.It is not asking to specify the version. Downgrading to the earlier version (v1.3.8) of bower didn't help :(. For example i have specified anuglarjs as 1.5.8 but it downloads 1.6.4.

My bower.json

    {
  "name": "XXXXXXXXXXXX",
  "homepage": "XXXXXXXXXXXX",
  "authors": [
    "XXXXXXXXXX"
  ],
  "description": "XXXXXXXXXXXX",
  "main": "",
  "overrides": {
    "bootstrap": {
      "main": [
        "./dist/css/bootstrap.min.css",
        "./fonts/glyphicons-halflings-regular.eot",
        "./fonts/glyphicons-halflings-regular.svg",
        "./fonts/glyphicons-halflings-regular.ttf",
        "./fonts/glyphicons-halflings-regular.woff",
        "./fonts/glyphicons-halflings-regular.woff2"
      ]
    },
    "pouchdb": {
      "main": [
        "./dist/pouchdb.min.js"
      ]
    },
    "cldrjs": {
      "ignore": true
    },
    "cldr-data": {
      "ignore": true
    },
    "globalize": {
      "ignore": true
    }
  },
  "license": "",
  "ignore": [
    "**/.*",
    "node_modules",
    "bower_components",
    "test",
    "tests"
  ],
  "dependencies": {
    "jquery": "^2.2.3",
    "angular": "^1.5.8",
    "bootstrap": "^3.3.7",
    "angular-route": "^1.4.9",
    "toastr": "^2.1.3",
    "angular-toastr": "^2.1.1",
    "angular-cookies": "^1.5.8",
    "angular-translate": "^2.12.0",
    "angular-i18n": "^1.5.8",
    "angular-translate-loader-static-files": "^2.12.0",
    "angular-translate-storage-local": "^2.12.0",
    "angular-sanitize": "^1.5.8",
    "devextreme": "^16.1.7",
    "ngstorage": "^0.3.11",
    "angular-base64-upload": "^0.1.19",
    "pouchdb": "^6.0.7",
    "pouchdb-find": "^0.10.3",
    "angular-disable-all": "^0.0.2",
    "angular-loading-bar": "^0.9.0"
  }
}

Solution

  • Remove the ^ symbol in front of the version number. This means "at least this version". In other words: It won't update your library if the version is equal or higher to the specified version, but if you are installing a new workspace, it will take the newest one.

    Here are some more information: What is the bower (and npm) version syntax?