componentjs / component

frontend package manager and build tool for modular web applications
https://github.com/componentjs/guide
MIT License
4.55k stars 304 forks source link

cannot install dependencies in v1.0.0 #537

Closed apla closed 10 years ago

apla commented 10 years ago

created gist for you: https://gist.github.com/apla/10456105

you need to

mkdir test
cd test
touch test.js

and copy gist file contents to that dir

many issues: 1) process killed after installing some dependencies (but not all), no errors 2) strange errors like (i have an github repo, not bitbucket):

error : bitbucket returned mailformed JSON at URL: https://api.bitbucket.org/1.0/repositories/apla/node-util/raw/v0.10.3/component.json

3) ls, build and other commands fails silently

jonathanong commented 10 years ago

can you run with DEBUG=remotes and DEBUG=component*?

quick look, your .repository field in your component.jsons should be strings, not an object

netpoetica commented 10 years ago

This one is pretty strange - since that Git repo exists, it should never even get to look on Bitbucket. The error message is correct though because when it tries to get JSON from that URL it's actually getting HTML, as if you did "curl https://api.bitbucket.org/1.0/repositories/apla/node-util/raw/v0.10.3/component.json", so it is malformed JSON.

The component.json in your fork of node-util looks like it has a bunch of additional properties that are not in the component spec - what's probably happening is that your component.json is not passing validation so remotes.js is looking to Bitbucket next

netpoetica commented 10 years ago

Highly recommend giving this a shot: try to make your component.json for node-utils look like the spec - I think that component.json is intended for use with a different package manager or something.

@jonathanong Here's the output if it helps any but I'm fairly certain it's just the component.json from Github being invalid. Maybe there is a better message to use when hitting this error?

➜  test  DEBUG=component* component install
  component-resolver remote not set - defaulting to remotes's defaults +0ms
  component-resolver:locals resolving local at "/Users/krosenberg/Desktop/temp/test" +0ms
  component-resolver resolving "test" +10ms
  component-resolver remaining dependencies: 7 +7ms
  component-resolver remaining semver: 0 +0ms
  component-resolver finished resolving locals +0ms
  component-resolver finished resolving dependencies (1) +1ms
  component-resolver:semver resolving semver apla/dataflo.ws@* +0ms
  component-resolver:dependencies resolving dependency apla/dataflo.ws@master +0ms
  component-resolver:dependencies searching ["local","github","bitbucket"] for apla/dataflo.ws@master +0ms
  component-resolver:dependencies found apla/dataflo.ws@master from remote "local" +2ms
  component-resolver resolving "apla/dataflo.ws" +6ms
  component-resolver:semver resolving semver apla/node-util@* +5ms
  component-resolver remaining dependencies: 1 +1ms
  component-resolver remaining semver: 7 +0ms
  component-resolver:semver resolved semver apla/dataflo.ws@* -> apla/dataflo.ws@master +2ms
  component-resolver:semver resolving semver ftlabs/fastclick@* +0ms
  component-downloader "/Users/krosenberg/Desktop/temp/test/components/apla/dataflo.ws/master" exists, skipping downloading. +0ms
  component-resolver:dependencies resolving dependency ftlabs/fastclick@v1.0.1 +39ms
  component-resolver:dependencies searching ["local","github","bitbucket"] for ftlabs/fastclick@v1.0.1 +0ms
  component-resolver:dependencies found ftlabs/fastclick@v1.0.1 from remote "local" +1ms
  component-resolver resolving "ftlabs/fastclick" +39ms
  component-resolver remaining dependencies: 1 +0ms
  component-resolver remaining semver: 6 +1ms
  component-resolver:semver resolved semver ftlabs/fastclick@* -> ftlabs/fastclick@v1.0.1 +39ms
  component-resolver:semver resolving semver apla/eventemitter@* +0ms
  component-downloader "/Users/krosenberg/Desktop/temp/test/components/ftlabs/fastclick/v1.0.1" exists, skipping downloading. +14ms
  component-resolver:dependencies resolving dependency apla/eventemitter@v4.2.7 +2ms
  component-resolver:dependencies searching ["local","github","bitbucket"] for apla/eventemitter@v4.2.7 +0ms
  component-resolver:dependencies found apla/eventemitter@v4.2.7 from remote "local" +1ms
  component-resolver resolving "apla/eventemitter" +2ms
  component-resolver remaining dependencies: 1 +0ms
  component-resolver remaining semver: 5 +0ms
  component-resolver:semver resolved semver apla/eventemitter@* -> apla/eventemitter@v4.2.7 +2ms
  component-resolver:semver resolving semver apla/node-util@* +0ms
  component-downloader "/Users/krosenberg/Desktop/temp/test/components/apla/eventemitter/v4.2.7" exists, skipping downloading. +3ms
  component-resolver:dependencies resolving dependency apla/node-util@v0.10.3 +551ms
  component-resolver:dependencies searching ["local","github","bitbucket"] for apla/node-util@v0.10.3 +0ms
➜  test  ls
component.json components     test.js
➜  test  ls components 
apla   ftlabs
➜  test  ls components/ftlabs 
fastclick
➜  test  ls components/apla 
dataflo.ws   eventemitter
➜  test  DEBUG=remotes* component install
  remotes:local checking local components at /Users/krosenberg/Desktop/temp/test/components +0ms
  remotes:local resolving local remote +17ms
  remotes:local checking folder: /Users/krosenberg/Desktop/temp/test/components/apla/dataflo.ws +1ms
  remotes:local got folders: master +0ms
  remotes:local checking folder: /Users/krosenberg/Desktop/temp/test/components/apla/dataflo.ws +1ms
  remotes:local got folders: master +0ms
  remotes:local resolving local remote +1ms
  remotes:local checking folder: /Users/krosenberg/Desktop/temp/test/components/apla/dataflo.ws +0ms
  remotes:local got folders: master +0ms
  remotes:local resolving local remote +2ms
  remotes:local checking folder: /Users/krosenberg/Desktop/temp/test/components/apla/node-util +0ms
  remotes:local resolving local remote +2ms
  remotes:local checking folder: /Users/krosenberg/Desktop/temp/test/components/ftlabs/fastclick +1ms
  remotes:github GET "https://raw.githubusercontent.com/apla/node-util/master/component.json" +0ms
  remotes:local got folders: v1.0.1 +27ms
  remotes:local checking folder: /Users/krosenberg/Desktop/temp/test/components/ftlabs/fastclick +1ms
  remotes:local got folders: v1.0.1 +0ms
  remotes:local resolving local remote +12ms
  remotes:local checking folder: /Users/krosenberg/Desktop/temp/test/components/ftlabs/fastclick +0ms
  remotes:local got folders: v1.0.1 +1ms
  remotes:local resolving local remote +1ms
  remotes:local checking folder: /Users/krosenberg/Desktop/temp/test/components/apla/eventemitter +0ms
  remotes:local got folders: v4.2.7 +0ms
  remotes:local checking folder: /Users/krosenberg/Desktop/temp/test/components/apla/eventemitter +0ms
  remotes:local got folders: v4.2.7 +0ms
  remotes:local resolving local remote +1ms
  remotes:local checking folder: /Users/krosenberg/Desktop/temp/test/components/apla/eventemitter +0ms
  remotes:local got folders: v4.2.7 +0ms
  remotes:github GET "https://api.github.com/repos/apla/node-util/tags" +272ms
github remote: only 50 requests remaining.
github remote: see https://github.com/component/remotes.js/blob/master/docs/github.md for more information.
  remotes:local resolving local remote +384ms
  remotes:local checking folder: /Users/krosenberg/Desktop/temp/test/components/apla/node-util +0ms
  remotes:github GET "https://raw.githubusercontent.com/apla/node-util/v0.10.3/component.json" +153ms
  remotes:github GET "https://raw.github.com/apla/node-util/v0.10.3/component.json" +224ms
  remotes:github GET "https://raw.githubusercontent.com/apla/node-util/v0.10.3/component.json" +123ms
  remotes:github GET "https://raw.github.com/apla/node-util/v0.10.3/component.json" +211ms
  remotes:bitbucket GET "https://api.bitbucket.org/1.0/repositories/apla/node-util/raw/v0.10.3/component.json" +0ms
  remotes:bitbucket GET "https://bitbucket.org/api/1.0/repositories/apla/node-util/raw/v0.10.3/component.json" +180ms
  remotes:bitbucket GET "https://bitbucket.org/apla/node-util/raw/v0.10.3/component.json" +183ms
  remotes:bitbucket GET "https://api.bitbucket.org/1.0/repositories/apla/node-util/raw/v0.10.3/component.json" +193ms
  remotes:bitbucket GET "https://bitbucket.org/api/1.0/repositories/apla/node-util/raw/v0.10.3/component.json" +174ms
  remotes:bitbucket GET "https://bitbucket.org/apla/node-util/raw/v0.10.3/component.json" +168ms
apla commented 10 years ago

@netpoetica, i know, my component.json is slightly different from spec, but error is irrelevant. something must be added to the validation, because component validate gives me nothing:

DEBUG=component* component validate
  component-resolver remote not set - defaulting to remotes's defaults +0ms
  component-resolver:locals resolving local at "/Users/apla/tmp/comp-v1.0.0" +0ms
  component-resolver resolving "test" +9ms
  component-resolver remaining dependencies: 0 +1ms
  component-resolver remaining semver: 0 +0ms
  component-resolver finished resolving locals +0ms
  component-resolver finished resolving dependencies (1) +0ms
  component-resolver finished installing dependencies +0ms
jonathanong commented 10 years ago

because there's no component.json: https://github.com/apla/node-util/tree/v0.10.3

jonathanong commented 10 years ago

actually i need to handle the bitbucket error better.

jonathanong commented 10 years ago

closing because if ixed that stupid bitbucket error https://github.com/component/remotes.js/commit/ab232b578c51750706184ac5f2f7af1f8d141d38