You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This took me forever to track down, so I apologize for the long issue. In the error logs, I often see:
Build::BowerError: Package bootstrap-3 not found
from build/utils.rb:21:in `rescue in bower'
from build/utils.rb:10:in `bower'
from update_component.rb:8:in `perform'
from sidekiq/processor.rb:75:in `execute_job'
# ... lots more
This happens with a few packages other than bootstrap-*, but that's probably the most common one. The confusing part is that I had no idea what depended on bootstrap-3, and it looks like it's impossible to figure out reverse dependencies using the Bower API.
So I made a horrible hack that does this and basically uses bower-dependency-tree to write each dependency tree of every version in rails-assets to its own file. That took about two days to run doing 6 simultaneously:.
Going to the bower dependencies spec, it says that the key must be a valid name. The definition I linked to specifies that name means:
The name of the package as stored in the registry.
There is no bootstrap-3 or bootstrap-2.3.2 in the bower registry. However, this works just fine: bower install -p -F tagsinput#0.4.1 --json, which is part of what's actually executed by the rails-assets build process.
The main problem that actually causes is that after it's built, it has a dependency that will never exist:
Then when someone hits the dependency endpoint with one of these broken dependencies (averaging probably once every 5 minutes), it will try to build it again. In my opinion, bower seems to disobey the semantics it defined and should be fixed, but I would like others' opinions.
The text was updated successfully, but these errors were encountered:
This took me forever to track down, so I apologize for the long issue. In the error logs, I often see:
This happens with a few packages other than
bootstrap-*
, but that's probably the most common one. The confusing part is that I had no idea what depended onbootstrap-3
, and it looks like it's impossible to figure out reverse dependencies using the Bower API.So I made a horrible hack that does this and basically uses
bower-dependency-tree
to write each dependency tree of every version in rails-assets to its own file. That took about two days to run doing 6 simultaneously:.xargs --max-procs=6 --no-run-if-empty --delimiter='\n' \ --max-args=1 --max-lines=1 --arg-file bower-dep-cmds.txt \ bash --verbose -c
After searching for
Package bootstrap-3 not found
, I found a bunch that might cause this. One wasbootstrap-tagsinput#0.4.1
. In that package, I see: https://github.com/bootstrap-tagsinput/bootstrap-tagsinput/blob/0.4.1/bower.json#L30Going to the bower dependencies spec, it says that the key must be a valid name. The definition I linked to specifies that name means:
There is no bootstrap-3 or bootstrap-2.3.2 in the bower registry. However, this works just fine:
bower install -p -F tagsinput#0.4.1 --json
, which is part of what's actually executed by the rails-assets build process.The main problem that actually causes is that after it's built, it has a dependency that will never exist:
Then when someone hits the dependency endpoint with one of these broken dependencies (averaging probably once every 5 minutes), it will try to build it again. In my opinion, bower seems to disobey the semantics it defined and should be fixed, but I would like others' opinions.
The text was updated successfully, but these errors were encountered: