How do I find out what version of a bower package is actually installed?

Andrew Ferrier picture Andrew Ferrier · Feb 12, 2016 · Viewed 23.8k times · Source

Normally a bower.json file specifies some dependencies, but these are typically expressed so that they allow a range of versions of a bower package to be used (e.g. >=1.0, which means anything higher than version 1.0).

I have an automated process which needs to find what version of a bower package is actually installed on this system right now.

How can I find this out programmatically (just the version itself), ideally using standard Unix command line tools / the bower command?

bower info <thepackagename> does not show this - it shows information about what is currently available from the bower repository (for example, even if I do bower info apackageIdonthaveinstalled it will still show a valid JSON structure containing a version number).

cat bower_components/thepackagename/bower.json | node_modules/json/lib/json.js version works for some packages (assuming the npm package json is installed), but not all (e.g. jquery 2.2.0's bower package does not contain a bower.json).

Answer

Artem Vasiliev picture Artem Vasiliev · Oct 28, 2016

Here's a grep command to do that: grep "version\"\:" bower_components/thepackagename/.bower.json

Also, a command to see versions of all bower components for the project - this list can be a handy CI artefact: grep "version\"\:" bower_components/*/.bower.json enter image description here