{ "id": "136361", "key": "TIMOB-17669", "fields": { "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false }, "project": { "id": "10153", "key": "TIMOB", "name": "Titanium SDK/CLI", "projectCategory": { "id": "10100", "description": "Titanium and related SDKs used in application development", "name": "Client" } }, "fixVersions": [], "resolution": null, "resolutiondate": null, "created": "2014-09-10T08:24:13.000+0000", "priority": { "name": "Medium", "id": "3" }, "labels": [ "cb-tooling", "qe-3.4.0" ], "versions": [ { "id": "15972", "description": "Release 3.4.0", "name": "Release 3.4.0", "archived": false, "released": true, "releaseDate": "2014-09-28" } ], "issuelinks": [], "assignee": { "name": "cbarber", "key": "cbarber", "displayName": "Chris Barber", "active": true, "timeZone": "America/Chicago" }, "updated": "2020-01-30T08:52:57.000+0000", "status": { "description": "The issue is open and ready for the assignee to start work on it.", "name": "Open", "id": "1", "statusCategory": { "id": 2, "key": "new", "colorName": "blue-gray", "name": "To Do" } }, "components": [ { "id": "13103", "name": "CLI", "description": "Node-based command line interface" } ], "description": "Description:\r\nRunning \"ti build -p iOS -T device -deploy-type\" command throws a code error rather than giving a appropriate error message to user for given invalid option.\r\nThe\"-deploy-type\" is not a valid option.The valid form with build is \"--deploy-type\".\r\n\r\nThe error is reproducible with CLI 3.3.0 and Titanium SDK 3.3.0.GA.So its not a regression.\r\n\r\nSTEPS TO REPRODUCE\r\n1. Open a terminal window\r\n2. Create a project and you have to \"cd\" to this project to be able to run command \"build\".\r\n3. Run \"ti build -p iOS -T device -deploy-type\" command.\r\n4. Run \"ti build -p iOS -T device -build-only\" command.\r\n\r\nEXPECTED RESULT\r\n3. The CLI should give appropriate error message for invalid option use rather than showing a code error.\r\n\r\nACTUAL RESULT\r\n3.The CLI shows a code error to the user.\r\n\r\n{code}\r\n\r\nKAGRAWAL-MBP:classic_test kagrawal$ ti build -p ios -T device -deploy-type\r\n[ERROR] TypeError: Arguments to path.join must be strings\r\n at path.js:360:15\r\n at Array.filter (native)\r\n at exports.join (path.js:358:36)\r\n at conf.options.appc.util.mix.project-dir.callback (/Users/kagrawal/Library/Application Support/Titanium/mobilesdk/osx/3.4.0.v20140909222515/cli/commands/build.js:111:52)\r\n at Context. (/usr/local/lib/node_modules/titanium/lib/context.js:597:31)\r\n at Array.forEach (native)\r\n at Context.setArg (/usr/local/lib/node_modules/titanium/lib/context.js:576:35)\r\n at Context. (/usr/local/lib/node_modules/titanium/lib/context.js:675:9)\r\n at Context.parse (/usr/local/lib/node_modules/titanium/lib/context.js:758:6)\r\n at processConf (/usr/local/lib/node_modules/titanium/lib/context.js:364:21)\r\n---------------------------------------------\r\n at Object.run (/Users/kagrawal/Library/Application Support/Titanium/mobilesdk/osx/3.4.0.v20140909222515/node_modules/node-appc/lib/subprocess.js:59:8)\r\n at async.eachSeries.cache (/Users/kagrawal/Library/Application Support/Titanium/mobilesdk/osx/3.4.0.v20140909222515/node_modules/ioslib/lib/simulator.js:186:21)\r\n at iterate (/Users/kagrawal/Library/Application Support/Titanium/mobilesdk/osx/3.4.0.v20140909222515/node_modules/ioslib/node_modules/async/lib/async.js:149:13)\r\n at /Users/kagrawal/Library/Application Support/Titanium/mobilesdk/osx/3.4.0.v20140909222515/node_modules/ioslib/node_modules/async/lib/async.js:160:25\r\n at /Users/kagrawal/Library/Application Support/Titanium/mobilesdk/osx/3.4.0.v20140909222515/node_modules/ioslib/lib/simulator.js:227:7\r\n at ChildProcess. (/Users/kagrawal/Library/Application Support/Titanium/mobilesdk/osx/3.4.0.v20140909222515/node_modules/node-appc/lib/subprocess.js:60:3)\r\n at EventEmitter.emit (events.js:98:17)\r\n{code} \r\n\r\n\r\n{code}\r\nKAGRAWAL-MBP:classic_test kagrawal$ ti build -p ios -build-only\r\n[ERROR] Error: tiapp.xml file does not exist\r\n at Object.defineProperty.value (/Users/kagrawal/Library/Application Support/Titanium/mobilesdk/osx/3.4.0.v20140909222515/node_modules/titanium-sdk/lib/tiappxml.js:649:11)\r\n at new tiapp (/Users/kagrawal/Library/Application Support/Titanium/mobilesdk/osx/3.4.0.v20140909222515/node_modules/titanium-sdk/lib/tiappxml.js:723:19)\r\n at conf.options.appc.util.mix.project-dir.callback (/Users/kagrawal/Library/Application Support/Titanium/mobilesdk/osx/3.4.0.v20140909222515/cli/commands/build.js:111:34)\r\n at Context. (/usr/local/lib/node_modules/titanium/lib/context.js:597:31)\r\n at Array.forEach (native)\r\n at Context.setArg (/usr/local/lib/node_modules/titanium/lib/context.js:576:35)\r\n at Context. (/usr/local/lib/node_modules/titanium/lib/context.js:675:9)\r\n at Context.parse (/usr/local/lib/node_modules/titanium/lib/context.js:754:6)\r\n at processConf (/usr/local/lib/node_modules/titanium/lib/context.js:364:21)\r\n at Context. (/usr/local/lib/node_modules/titanium/lib/context.js:536:5)\r\n---------------------------------------------\r\n at Object.run (/Users/kagrawal/Library/Application Support/Titanium/mobilesdk/osx/3.4.0.v20140909222515/node_modules/node-appc/lib/subprocess.js:59:8)\r\n at async.eachSeries.cache (/Users/kagrawal/Library/Application Support/Titanium/mobilesdk/osx/3.4.0.v20140909222515/node_modules/ioslib/lib/simulator.js:186:21)\r\n at iterate (/Users/kagrawal/Library/Application Support/Titanium/mobilesdk/osx/3.4.0.v20140909222515/node_modules/ioslib/node_modules/async/lib/async.js:149:13)\r\n at /Users/kagrawal/Library/Application Support/Titanium/mobilesdk/osx/3.4.0.v20140909222515/node_modules/ioslib/node_modules/async/lib/async.js:160:25\r\n at /Users/kagrawal/Library/Application Support/Titanium/mobilesdk/osx/3.4.0.v20140909222515/node_modules/ioslib/lib/simulator.js:227:7\r\n at ChildProcess. (/Users/kagrawal/Library/Application Support/Titanium/mobilesdk/osx/3.4.0.v20140909222515/node_modules/node-appc/lib/subprocess.js:60:3)\r\n at EventEmitter.emit (events.js:98:17)\r\n\r\n{code}", "attachment": [], "flagged": false, "summary": "CLI: Running \"ti build -p iOS -T device -deploy-type \" with invalid iOS build option should give an error message rather than showing a code error.", "creator": { "name": "kagrawal", "key": "kagrawal", "displayName": "Khushbu Agrawal", "active": true, "timeZone": "Asia/Shanghai" }, "subtasks": [], "reporter": { "name": "kagrawal", "key": "kagrawal", "displayName": "Khushbu Agrawal", "active": true, "timeZone": "Asia/Shanghai" }, "environment": "Tested on: \r\n1. Mac OSX 10.9.4 \r\n2. Appcelerator Studio, build: 3.4.0.201409081810\r\n3. Titanium SDK, build: 3.4.0.v20140909222515\r\n4. Titanium CLI, build: 3.4.0-rc\r\n5. Alloy: 1.5.0-beta2\r\n6. Xcode 6 GM seed\r\n7. iOS SDK 8.0", "comment": { "comments": [ { "id": "322976", "author": { "name": "kagrawal", "key": "kagrawal", "displayName": "Khushbu Agrawal", "active": true, "timeZone": "Asia/Shanghai" }, "body": "This need to be fixed with other invalid options as well.\r\n\r\nti build -p iOS -developer-name => Shows the CLI version\r\n(valid option is --developer-name)\r\nti build -p iOS -device-id => Shows the CLI version\r\n(valid option is --device-id)\r\n\r\nNot sure about expected CLI behavior with iOS build invalid option with build command.", "updateAuthor": { "name": "kagrawal", "key": "kagrawal", "displayName": "Khushbu Agrawal", "active": true, "timeZone": "Asia/Shanghai" }, "created": "2014-09-11T02:54:11.000+0000", "updated": "2014-09-11T02:54:11.000+0000" } ], "maxResults": 1, "total": 1, "startAt": 0 } } }