{ "id": "63945", "key": "TIMOB-3313", "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": [ { "id": "11244", "name": "Release 1.7.0", "archived": true, "released": true, "releaseDate": "2011-06-13" }, { "id": "11255", "name": "Sprint 2011-20", "archived": true, "released": true, "releaseDate": "2011-05-23" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2011-05-24T14:30:31.000+0000", "created": "2011-04-15T03:41:55.000+0000", "priority": { "name": "Medium", "id": "3" }, "labels": [ "android", "defect", "release-1.7.0", "reported-1.6.1", "tooling" ], "versions": [], "issuelinks": [], "assignee": { "name": "billdawson", "key": "billdawson", "displayName": "Bill Dawson", "active": true, "timeZone": "Europe/Berlin" }, "updated": "2011-05-24T14:30:31.000+0000", "status": { "description": "The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.", "name": "Closed", "id": "6", "statusCategory": { "id": 3, "key": "done", "colorName": "green", "name": "Done" } }, "components": [ { "id": "10202", "name": "Android", "description": "Android Platform" } ], "description": "{html}

This problem was found with a non-breaking space in a source\nfile that appeared because the encoding flag wasn't being passed to\nthe compiler. The problem doesn't exist in test or\ndevelopment mode because we handle passing the string\nto the compiler.

\n

Please put in release-1.6.1 and release-1.7.0 and open tags.

{html}", "attachment": [], "flagged": false, "summary": "Android: JS Compiler in Production Mode Should Detect Compile Failures", "creator": { "name": "dthorp", "key": "dthorp", "displayName": "Don Thorp", "active": true, "timeZone": "America/Los_Angeles" }, "subtasks": [], "reporter": { "name": "dthorp", "key": "dthorp", "displayName": "Don Thorp", "active": true, "timeZone": "America/Los_Angeles" }, "environment": null, "comment": { "comments": [ { "id": "133973", "author": { "name": "billdawson", "key": "billdawson", "displayName": "Bill Dawson", "active": true, "timeZone": "Europe/Berlin" }, "body": "Now the question is how to test this fix, since in order to test it you somehow need to force a compiler error. Since we've fixed the two known compiler errors that we've so far encountered, I'm not sure what to do. THinking about it.", "updateAuthor": { "name": "billdawson", "key": "billdawson", "displayName": "Bill Dawson", "active": true, "timeZone": "Europe/Berlin" }, "created": "2011-05-19T03:56:14.000+0000", "updated": "2011-05-19T03:56:14.000+0000" }, { "id": "134166", "author": { "name": "billdawson", "key": "billdawson", "displayName": "Bill Dawson", "active": true, "timeZone": "Europe/Berlin" }, "body": "And here we go:\n\nSo our goal here is to *cause* a compiler error, and demonstrate that the packaging-for-distribution process will now stop on that error rather than continue on its merry way as if nothing happened.\n\nIn your test app.js, just put two backslashes by themselves on a line. That should choke it.", "updateAuthor": { "name": "billdawson", "key": "billdawson", "displayName": "Bill Dawson", "active": true, "timeZone": "Europe/Berlin" }, "created": "2011-05-24T13:44:11.000+0000", "updated": "2011-05-24T13:44:11.000+0000" }, { "id": "134168", "author": { "name": "emerriman", "key": "emerriman", "displayName": "Eric Merriman ", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Verified error stops production run with Titanium Studio, build: 1.0.0.201105201912. Hat tip to Natalie and Bill for help on this one. Error:\n[ERROR] js: \"/Volumes/Data/Titanium/titanium_mobile/demos/KitchenSink/build/android/bin/assets/Resources/app.js\", line 21: illegal character\njs: \\\\var win2 = Titanium.UI.createWindow({\njs: .^\nException in thread \"main\" org.mozilla.javascript.EvaluatorException: Compilation produced 1 syntax errors. (/Volumes/Data/Titanium/titanium_mobile/demos/KitchenSink/build/android/bin/assets/Resources/app.js#1)\n at org.mozilla.javascript.tools.ToolErrorReporter.runtimeError(ToolErrorReporter.java:144)\n at org.mozilla.javascript.Parser.parse(Parser.java:597)\n at org.mozilla.javascript.Parser.parse(Parser.java:506)\n at org.mozilla.javascript.optimizer.ClassCompiler.compileToClassFiles(ClassCompiler.java:166)\n at org.mozilla.javascript.tools.jsc.Main.processSource(Main.java:276)\n at org.mozilla.javascript.tools.jsc.Main.main(Main.java:73)", "updateAuthor": { "name": "emerriman", "key": "emerriman", "displayName": "Eric Merriman ", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2011-05-24T14:30:31.000+0000", "updated": "2011-05-24T14:30:31.000+0000" } ], "maxResults": 3, "total": 3, "startAt": 0 } } }