Closed rafaelsantander closed 11 years ago
Added node-stringprep to the package.json file. I'm getting new error when pushing to heroku. any idea on how to resolve this?
The logs showed an error that node-stingprep should be installed with npm. .... "dependencies": { "hubot-hipchat": ">= 1.1.3", "hubot": ">= 2.3.4", "hubot-scripts": ">= 2.1.0", "optparse": "1.0.3", "htmlparser": "1.7.6", "githubot": ">=0.1.5", "jsdom": ">=0.2.14", "underscore": "~> 1.4.2", "underscore.string": "~> 2.3.0", "soupselect": "0.2.0", "node-stringprep": ">=0.1.0", "redis": "0.7.2"
},
....
-----> Installing dependencies with npm npm WARN htmlparser@1.6.2 package.json: bugs['web'] should probably be bugs['url'] npm WARN nodeunit@0.4.0 package.json: bugs['web'] should probably be bugs['url']
> node-stringprep@0.1.5 preinstall /tmp/build_174kdmdmb3wir/node_modules/node-stringprep
> node-waf clean || true; node-waf configure build
Nothing to clean (project not configured)
Checking for program g++ or c++ : /usr/bin/g++
Checking for program cpp : /usr/bin/cpp
Checking for program ar : /usr/bin/ar
Checking for program ranlib : /usr/bin/ranlib
Checking for g++ : ok
Checking for node path : not found
Checking for node prefix : ok /tmp/node-node-tDFl
sh: icu-config: not found
Traceback (most recent call last):
File "/tmp/node-node-tDFl/bin/node-waf", line 16, in <module>
Scripting.prepare(t, os.getcwd(), VERSION, wafdir)
File "/tmp/node-node-tDFl/bin/../lib/node/wafadmin/Scripting.py", line 145, in prepare
prepare_impl(t, cwd, ver, wafdir)
File "/tmp/node-node-tDFl/bin/../lib/node/wafadmin/Scripting.py", line 135, in prepare_impl
main()
File "/tmp/node-node-tDFl/bin/../lib/node/wafadmin/Scripting.py", line 188, in main
fun(ctx)
File "/tmp/node-node-tDFl/bin/../lib/node/wafadmin/Scripting.py", line 241, in configure
conf.sub_config([''])
File "/tmp/node-node-tDFl/bin/../lib/node/wafadmin/Configure.py", line 221, in sub_config
self.recurse(k, name='configure')
File "/tmp/node-node-tDFl/bin/../lib/node/wafadmin/Utils.py", line 634, in recurse
f(self)
File "/tmp/build_174kdmdmb3wir/node_modules/node-stringprep/wscript", line 16, in configure
if backtick('icu-config --version')[0] != '4':
IndexError: string index out of range
npm ERR! error installing node-stringprep@0.1.5 Error: node-stringprep@0.1.5 preinstall: `node-waf clean || true; node-waf configure build`
npm ERR! error installing node-stringprep@0.1.5 `sh "-c" "node-waf clean || true; node-waf configure build"` failed with 1
npm ERR! error installing node-stringprep@0.1.5 at ChildProcess.<anonymous> (/tmp/node-npm-XMPD/lib/utils/exec.js:49:20)
npm ERR! error installing node-stringprep@0.1.5 at ChildProcess.emit (events.js:70:17)
npm ERR! error installing node-stringprep@0.1.5 at maybeExit (child_process.js:358:16)
npm ERR! error installing node-stringprep@0.1.5 at Process.onexit (child_process.js:394:5)
npm ERR! node-stringprep@0.1.5 preinstall: `node-waf clean || true; node-waf configure build`
npm ERR! `sh "-c" "node-waf clean || true; node-waf configure build"` failed with 1
npm ERR!
npm ERR! Failed at the node-stringprep@0.1.5 preinstall script.
npm ERR! This is most likely a problem with the node-stringprep package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! node-waf clean || true; node-waf configure build
npm ERR! You can get their info via:
npm ERR! npm owner ls node-stringprep
npm ERR! There is likely additional logging output above.
npm ERR!
npm ERR! System Linux 2.6.32-348-ec2
npm ERR! command "/tmp/node-node-tDFl/bin/node" "/tmp/node-npm-XMPD/cli.js" "install" "--production"
npm ERR! cwd /tmp/build_174kdmdmb3wir
npm ERR! node -v v0.6.20
npm ERR! npm -v 1.0.106
npm ERR! code ELIFECYCLE
> node-expat@1.6.1 preinstall /tmp/build_174kdmdmb3wir/node_modules/hubot-hipchat/node_modules/node-expat
> node-waf clean || true; node-waf configure build
Nothing to clean (project not configured)
Checking for program g++ or c++ : /usr/bin/g++
Checking for program cpp : /usr/bin/cpp
Checking for program ar : /usr/bin/ar
Checking for program ranlib : /usr/bin/ranlib
Checking for g++ : ok
Checking for node path : not found
Checking for node prefix : ok /tmp/node-node-tDFl
Checking for header expat.h : yes
'configure' finished successfully (0.346s)
Waf: Entering directory `/tmp/build_174kdmdmb3wir/node_modules/hubot-hipchat/node_modules/node-expat/build'
[1/2] cxx: node-expat.cc -> build/Release/node-expat_1.o
[2/2] cxx_link: build/Release/node-expat_1.o -> build/Release/node_expat.node
Waf: Leaving directory `/tmp/build_174kdmdmb3wir/node_modules/hubot-hipchat/node_modules/node-expat/build'
'build' finished successfully (0.735s)
> contextify@0.1.3 preinstall /tmp/build_174kdmdmb3wir/node_modules/jsdom/node_modules/contextify
> node-waf clean || true; node-waf configure build
Nothing to clean (project not configured)
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR! /tmp/build_174kdmdmb3wir/npm-debug.log
npm not ok
Setting srcdir to : /tmp/build_174kdmdmb3wir/node_modules/jsdom/node_modules/contextify
Setting blddir to : /tmp/build_174kdmdmb3wir/node_modules/jsdom/node_modules/contextify/build
Checking for program g++ or c++ : /usr/bin/g++
Checking for program cpp : /usr/bin/cpp
Checking for program ar : /usr/bin/ar
Checking for program ranlib : /usr/bin/ranlib
Checking for g++ : ok
Checking for node path : not found
Checking for node prefix : ok /tmp/node-node-tDFl
'configure' finished successfully (0.046s)
Waf: Entering directory `/tmp/build_174kdmdmb3wir/node_modules/jsdom/node_modules/contextify/build'
[1/2] cxx: src/contextify.cc -> build/Release/src/contextify_1.o
[2/2] cxx_link: build/Release/src/contextify_1.o -> build/Release/contextify.node
Waf: Leaving directory `/tmp/build_174kdmdmb3wir/node_modules/jsdom/node_modules/contextify/build'
'build' finished successfully (0.433s)
! Failed to install --production dependencies with npm ! Heroku push rejected, failed to compile Node.js app
To git@heroku.com:intuit-hubot.git ! [remote rejected] master -> master (pre-receive hook declined) error: failed to push some refs to 'git@heroku.com:intuit-hubot.git'
Why is it closed? I have exact same problem on heroku:
2013-02-01T06:29:46+00:00 app[web.1]: bin/hubot: 3: npm: not found
2013-02-01T06:29:48+00:00 app[web.1]: Cannot load StringPrep-0.1.0 bindings. You may need to `npm install node-stringprep'
But if I try to add it as dependency I get
make: Entering directory `/tmp/build_3eg8mt6lsakag/node_modules/node-stringprep/build'
CXX(target) Release/obj.target/node-stringprep/node-stringprep.o
../node-stringprep.cc:3:28: warning: unicode/unistr.h: No such file or directory
../node-stringprep.cc:4:28: warning: unicode/usprep.h: No such file or directory
../node-stringprep.cc:5:27: warning: unicode/uidna.h: No such file or directory
../node-stringprep.cc:89: error: ISO C++ forbids declaration of 'UStringPrepProfileType' with no type
../node-stringprep.cc:89: error: expected ',' or '...' before 'profileType'
../node-stringprep.cc:154: error: ISO C++ forbids declaration of 'UStringPrepProfile' with no type
../node-stringprep.cc:154: error: expected ';' before '*' token
../node-stringprep.cc:155: error: 'UErrorCode' does not name a type
../node-stringprep.cc:157: error: use of enum 'UStringPrepProfileType' without previous declaration
../node-stringprep.cc: In member function 'bool StringPrep::good() const':
../node-stringprep.cc:39: error: 'error' was not declared in this scope
../node-stringprep.cc:39: error: 'U_SUCCESS' was not declared in this scope
../node-stringprep.cc: In member function 'const char* StringPrep::errorName() const':
../node-stringprep.cc:44: error: 'error' was not declared in this scope
../node-stringprep.cc:44: error: 'u_errorName' was not declared in this scope
../node-stringprep.cc: In static member function 'static v8::Handle<v8::Value> StringPrep::New(const v8::Arguments&)':
../node-stringprep.cc:62: error: 'UStringPrepProfileType' was not declared in this scope
../node-stringprep.cc:62: error: expected ';' before 'profileType'
../node-stringprep.cc:65: error: 'profileType' was not declared in this scope
../node-stringprep.cc:72: error: 'profileType' was not declared in this scope
../node-stringprep.cc: In constructor 'StringPrep::StringPrep(int)':
../node-stringprep.cc:90: error: class 'StringPrep' does not have any field named 'error'
../node-stringprep.cc:90: error: 'U_ZERO_ERROR' was not declared in this scope
../node-stringprep.cc:92: error: 'profile' was not declared in this scope
../node-stringprep.cc:92: error: 'profileType' was not declared in this scope
../node-stringprep.cc:92: error: 'error' was not declared in this scope
../node-stringprep.cc:92: error: 'usprep_openByType' was not declared in this scope
../node-stringprep.cc: In destructor 'virtual StringPrep::~StringPrep()':
../node-stringprep.cc:99: error: 'profile' was not declared in this scope
../node-stringprep.cc:100: error: 'usprep_close' was not declared in this scope
../node-stringprep.cc: In member function 'v8::Handle<v8::Value> StringPrep::prepare(v8::String::Value&)':
../node-stringprep.cc:122: error: 'UChar' was not declared in this scope
../node-stringprep.cc:122: error: 'dest' was not declared in this scope
../node-stringprep.cc:125: error: expected type-specifier before 'UChar'
../node-stringprep.cc:125: error: expected ';' before 'UChar'
../node-stringprep.cc:126: error: 'profile' was not declared in this scope
../node-stringprep.cc:129: error: 'USPREP_DEFAULT' was not declared in this scope
../node-stringprep.cc:129: error: 'error' was not declared in this scope
../node-stringprep.cc:129: error: 'usprep_prepare' was not declared in this scope
../node-stringprep.cc:131: error: 'U_BUFFER_OVERFLOW_ERROR' was not declared in this scope
../node-stringprep.cc:135: error: type '<type error>' argument given to 'delete', expected pointer
../node-stringprep.cc:141: error: type '<type error>' argument given to 'delete', expected pointer
../node-stringprep.cc:149: error: type '<type error>' argument given to 'delete', expected pointer
../node-stringprep.cc: In static member function 'static int StringPrep::parseProfileType(v8::String::Utf8Value&)':
../node-stringprep.cc:161: error: 'USPREP_RFC3491_NAMEPREP' was not declared in this scope
../node-stringprep.cc:163: error: 'USPREP_RFC3530_NFS4_CS_PREP' was not declared in this scope
../node-stringprep.cc:165: error: 'USPREP_RFC3530_NFS4_CS_PREP_CI' was not declared in this scope
../node-stringprep.cc:167: error: 'USPREP_RFC3530_NFS4_CIS_PREP' was not declared in this scope
../node-stringprep.cc:169: error: 'USPREP_RFC3530_NFS4_MIXED_PREP_PREFIX' was not declared in this scope
../node-stringprep.cc:171: error: 'USPREP_RFC3530_NFS4_MIXED_PREP_SUFFIX' was not declared in this scope
../node-stringprep.cc:173: error: 'USPREP_RFC3722_ISCSI' was not declared in this scope
../node-stringprep.cc:175: error: 'USPREP_RFC3920_NODEPREP' was not declared in this scope
../node-stringprep.cc:177: error: 'USPREP_RFC3920_RESOURCEPREP' was not declared in this scope
../node-stringprep.cc:179: error: 'USPREP_RFC4011_MIB' was not declared in this scope
../node-stringprep.cc:181: error: 'USPREP_RFC4013_SASLPREP' was not declared in this scope
../node-stringprep.cc:183: error: 'USPREP_RFC4505_TRACE' was not declared in this scope
../node-stringprep.cc:185: error: 'USPREP_RFC4518_LDAP' was not declared in this scope
../node-stringprep.cc:187: error: 'USPREP_RFC4518_LDAP_CI' was not declared in this scope
../node-stringprep.cc: In function 'v8::Handle<v8::Value> ToUnicode(const v8::Arguments&)':
../node-stringprep.cc:205: error: 'UChar' was not declared in this scope
../node-stringprep.cc:205: error: 'dest' was not declared in this scope
../node-stringprep.cc:208: error: expected type-specifier before 'UChar'
../node-stringprep.cc:208: error: expected ';' before 'UChar'
../node-stringprep.cc:209: error: 'UErrorCode' was not declared in this scope
../node-stringprep.cc:209: error: expected ';' before 'error'
../node-stringprep.cc:212: error: 'UIDNA_DEFAULT' was not declared in this scope
../node-stringprep.cc:213: error: 'error' was not declared in this scope
../node-stringprep.cc:213: error: 'uidna_toUnicode' was not declared in this scope
../node-stringprep.cc:215: error: 'U_BUFFER_OVERFLOW_ERROR' was not declared in this scope
../node-stringprep.cc:219: error: type '<type error>' argument given to 'delete', expected pointer
../node-stringprep.cc:222: error: 'U_FAILURE' was not declared in this scope
../node-stringprep.cc:225: error: type '<type error>' argument given to 'delete', expected pointer
../node-stringprep.cc:226: error: 'u_errorName' was not declared in this scope
../node-stringprep.cc:234: error: type '<type error>' argument given to 'delete', expected pointer
cc -std=c99 -pedantic -c -O3 -fPIC -Wall -W -Wstrict-prototypes -Wwrite-strings -g -ggdb sds.c
make: *** [Release/obj.target/node-stringprep/node-stringprep.o] Error 1
make: Leaving directory `/tmp/build_3eg8mt6lsakag/node_modules/node-stringprep/build'
gyp ERR! build error
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack at ChildProcess.onExit (/tmp/node-npm-19CT/node_modules/node-gyp/lib/build.js:236:23)
gyp ERR! stack at ChildProcess.EventEmitter.emit (events.js:99:17)
gyp ERR! stack at Process._handle.onexit (child_process.js:678:10)
gyp ERR! System Linux 2.6.32-348-ec2
gyp ERR! command "node" "/tmp/node-npm-19CT/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /tmp/build_3eg8mt6lsakag/node_modules/node-stringprep
gyp ERR! node -v v0.8.14
gyp ERR! node-gyp -v v0.7.1
gyp ERR! not ok
npm ERR! node-stringprep@0.1.5 install: `node-gyp rebuild`
npm ERR! `sh "-c" "node-gyp rebuild"` failed with 1
npm ERR!
npm ERR! Failed at the node-stringprep@0.1.5 install script.
npm ERR! This is most likely a problem with the node-stringprep package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! node-gyp rebuild
npm ERR! You can get their info via:
npm ERR! npm owner ls node-stringprep
npm ERR! There is likely additional logging output above.
What version of node is in your "engines" part of package.json?
{
"name": "hosted-hubot",
"version": "2.4.6",
"author": "GitHub Inc.",
"keywords": "github hubot campfire bot",
"description": "A simple helpful Robot for your Company",
"licenses": [{
"type": "MIT",
"url": "http://github.com/github/hubot/raw/master/LICENSE"
}],
"repository" : {
"type": "git",
"url": "https://github.com/github/hubot.git"
},
"dependencies": {
"hubot-hipchat": ">= 2.4.5",
"githubot": ">= 0.3.0",
"hubot": ">=2.4.6",
"hubot-scripts": ">= 2.4.1",
"optparse": "1.0.3",
"node-github":""
},
"engines": {
"node": ">= 0.8.x",
"npm": "1.1.x"
}
}
Seems like an issue with compiling StringPrep on Heroku.
This happens on Mac OS X 10.8.2 too. And as you can see in https://github.com/astro/node-stringprep/issues pretty much everyone has problems installing it. Maybe you could remove this dependency from hubot-scripts?
This isn't a hubot-scripts dependency. One of the scripts in hubot-scripts
requires the module, you could remove the script from yoru hubot-scripts.json
Description : I'm getting the following failure in the logs when calling the list-jira plugin. The logs, config output, package.json config and script source are include below.
Should the jira url be "https://demandforce.jira.com/login?"? Am I missing some node page in my json config?
Heroku Logs
2012-12-26T14:51:44+00:00 heroku[router]: at=info method=POST path=/hubot/ping host=intuit-hubot.herokuapp.com fwd=23.22.6.43 dyno=web.1 queue=0 wait=0ms connect=1ms service=4ms status=200 bytes=14 2012-12-26T15:11:44+00:00 app[web.1]: [Wed Dec 26 2012 15:11:44 GMT+0000 (UTC)] INFO keep alive ping! 2012-12-26T15:11:44+00:00 heroku[router]: at=info method=POST path=/hubot/ping host=intuit-hubot.herokuapp.com fwd=23.22.6.43 dyno=web.1 queue=0 wait=3ms connect=7ms service=12ms status=200 bytes=14 2012-12-26T15:31:44+00:00 app[web.1]: [Wed Dec 26 2012 15:31:44 GMT+0000 (UTC)] INFO keep alive ping! 2012-12-26T15:51:44+00:00 app[web.1]: [Wed Dec 26 2012 15:51:44 GMT+0000 (UTC)] INFO keep alive ping! 2012-12-26T16:03:40+00:00 app[web.1]: at TextListener.call (/app/node_modules/hubot/src/listener.coffee:19:14) 2012-12-26T16:03:40+00:00 app[web.1]: at Client.onRawStanza (/app/node_modules/hubot-hipchat/node_modules/wobot/node_modules/node-xmpp/lib/xmpp/client.js:159:14) 2012-12-26T16:03:40+00:00 app[web.1]: at HipChat.receive (/app/node_modules/hubot/src/adapter.coffee:37:25) 2012-12-26T16:03:40+00:00 app[web.1]: TypeError: Cannot call method 'split' of undefined 2012-12-26T16:03:40+00:00 app[web.1]: at Bot. (/app/node_modules/hubot-hipchat/src/hipchat.coffee:135:21)
2012-12-26T16:03:40+00:00 app[web.1]: at Bot.emit (events.js:70:17)
2012-12-26T16:03:40+00:00 app[web.1]: at Client.emit (events.js:67:17)
2012-12-26T16:03:40+00:00 app[web.1]: at Bot. (/app/node_modules/hubot-hipchat/node_modules/wobot/lib/bot.js:122:12)
2012-12-26T16:03:40+00:00 app[web.1]: at Robot.receive (/app/node_modules/hubot/src/robot.coffee:112:33)
2012-12-26T16:03:40+00:00 app[web.1]: at TextListener.callback (/app/scripts/list-jira-bugs.coffee:19:56)
2012-12-26T16:03:40+00:00 app[web.1]: [Wed Dec 26 2012 16:03:40 GMT+0000 (UTC)] ERROR Unable to call the listener: TypeError: Cannot call method 'split' of undefined
2012-12-26T16:03:40+00:00 app[web.1]: at Client. (native)
package.json
{ "name": "hosted-hubot", "version": "2.3.2", "author": "GitHub Inc.", "keywords": "github hubot campfire bot", "description": "A simple helpful Robot for your Company", "licenses": [{ "type": "MIT", "url": "http://github.com/github/hubot/raw/master/LICENSE" }],
"repository" : { "type": "git", "url": "https://github.com/github/hubot.git" },
"dependencies": { "hubot-hipchat": ">= 1.1.3", "hubot": ">= 2.3.4", "hubot-scripts": ">= 2.1.0", "optparse": "1.0.3", "htmlparser": "1.7.6", "githubot": ">=0.1.5", "jsdom": ">=0.2.14", "underscore": "~> 1.4.2", "underscore.string": "~> 2.3.0", "soupselect": "0.2.0", "redis": "0.7.2"
},
"engines": { "node": "0.6.x", "npm": "1.0.x" } }
list-jira-bugs.coffee
Description:
Get all bugs from JIRA assigned to user
Dependencies:
None
Configuration:
HUBOT_JIRA_DOMAIN
HUBOT_JIRA_USER
HUBOT_JIRA_PASSWORD
HUBOT_JIRA_ISSUE_TYPES
HUBOT_JIRA_ISSUE_PRIORITIES
Commands:
hubot list my bugs - Retrieve the list of all a user's bugs from JIRA ('my' is optional)
hubot list my bugs about - Retrieve list of all a user's bugs from JIRA where the summary or description field contains ('my' is optional)
hubot list my priority bugs - Retrieve the list of a user's priority bugs from JIRA ('my' is optional)
hubot list my priority bugs about - Retrieve list of all a user's priority bugs from JIRA where the summary or description field contains ('my' is optional)
Author:
crcastle
e.g. "bug|task|sub task|support ticket|new feature|epic"
issueTypes = process.env.HUBOT_JIRA_ISSUE_TYPES issueTypes or= "bug|task|sub task|support ticket|new feature|epic" #some defaults
e.g. "blocker|high|medium|minor|trivial"
issuePriorities = process.env.HUBOT_JIRA_ISSUE_PRIORITIES issuePriorities or= "blocker|high|medium|minor|trivial" #some defaults
/list( my)?( (blocker|high|medium|minor|trivial)( priority)?)? (bug|task|sub task|support ticket|new feature|epic|issue)s( about (.*))?/i
regexpString = "list( my)?( (" + issuePriorities + ")( priority)?)? (" + issueTypes + "|issue)s( about (.*))?" regexp = new RegExp(regexpString, "i")
module.exports = (robot) ->
getIssues = (msg, issueType, assignee, priority, phrase, callback) -> username = process.env.HUBOT_JIRA_USER password = process.env.HUBOT_JIRA_PASSWORD domain = process.env.HUBOT_JIRA_DOMAIN
formatIssueList = (issueArray, domain) -> formattedIssueList = "" for issue in issueArray formattedIssueList += issue.summary + " -> https://" + domain + "/browse/" + issue.key + "\n" return formattedIssueList
getJSON = (msg, url, query, auth, callback) -> msg.http(url) .header('Authorization', auth) .query(jql: query) .get() (err, res, body) -> callback( err, JSON.parse(body) )
toJiraTypeList = (arr) -> newArr = [] for issueType in arr newArr.push '"' + issueType + '"' return newArr.join(',')
Heroku Vars
hubot Config Vars HEROKU_URL: xxx HUBOT_GOOGLE_SEARCH_KEY: xxx HUBOT_HIPCHAT_JID: xxx HUBOT_HIPCHAT_PASSWORD: xxx HUBOT_JIRA_MAXLIST: xxx HUBOT_JIRA_PASSWORD: xxx HUBOT_JIRA_URL: https://demandforce.jira.com HUBOT_JIRA_USER: xxx PATH: bin:node_modules/.bin:/usr/local/bin:/usr/bin:/bin REDISTOGO_URL: xxx