Reputation: 9250
So I have a pretty bogstandard bower.json file in a github repo:
{
"name": "backbone-iobind",
"description": "Bind socket.io events to backbone models & collections. Also includes a drop-in replacement for Backbone.sync using socket.io.",
"homepage": "https://github.com/soniflow/backbone.iobind",
"keywords": [
"model",
"view",
"controller",
"router",
"server",
"client",
"browser",
"socketio",
"socket",
"iobind"
],
"author": "Noveo Group - Forked by Matt Fletcher",
"repository": {
"type": "git",
"url": "git://https://github.com/soniflow/backbone.iobind.git"
},
"dependencies": {
"backbone": "~1.1.2"
},
"version": "0.4.8",
"main": [
"dist/backbone.iobind.js",
"dist/backbone.iosync.js"
],
"authors": [
"Matt Fletcher <matt@soniflow.com>"
],
"license": "MIT",
"ignore": [
"**/.*",
"node_modules",
"bower_components",
"test",
"tests"
]
}
... and my dependencies are straight-forwards:
"dependencies": {
"marionette": "~2.0.2",
"backbone-io": "git://github.com/Soniflow/backbone.iobind.git"
}
However, when I do bower install
, it copies all the files down as it should, but for some reason ignores my bower.json file and instead creates a .bower.json like so:
{
"name": "backbone-io",
"homepage": "https://github.com/Soniflow/backbone.iobind",
"version": "0.4.8",
"_release": "0.4.8",
"_resolution": {
"type": "version",
"tag": "0.4.8",
"commit": "5e06d99d3e79b02bd8a892e3c6ba969e47f49736"
},
"_source": "git://github.com/Soniflow/backbone.iobind.git",
"_target": "*",
"_originalSource": "git://github.com/Soniflow/backbone.iobind.git"
}
... which doesn't contain any of my metadata, and most importantly, the "main" directive.
Any idea why? I've used the same approach as backbone itself but that seems to work fine :/
Thanks
Upvotes: 0
Views: 276
Reputation: 20386
Bower gets the list of a package versions from Git tags (they also need to be valid semver).
In the case of backbone.iobind the latest version is 0.4.8.
You can see that when resolving backbone.iobind Bower will checkout the 0.4.8 tag:
bower resolved git://github.com/Soniflow/backbone.iobind.git#0.4.8
However this tag does not contain any bower.json file (unlike the master branch).
The .bower.json file is an internal file used by Bower and should not be confused with bower.json.
Upvotes: 1