{ "id": "145147", "key": "TIMOB-18616", "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": { "id": "5", "description": "All attempts at reproducing this issue failed, or not enough information was available to reproduce the issue. Reading the code produces no clues as to why this behavior would occur. If more information appears later, please reopen the issue.", "name": "Cannot Reproduce" }, "resolutiondate": "2015-12-03T03:34:43.000+0000", "created": "2015-02-25T20:08:39.000+0000", "priority": { "name": "High", "id": "2" }, "labels": [ "debugger", "ios", "qe-3.5.1" ], "versions": [ { "id": "16711", "description": "Release 3.5.1", "name": "Release 3.5.1", "archived": false, "released": true, "releaseDate": "2015-03-06" } ], "issuelinks": [ { "id": "50003", "type": { "id": "10003", "name": "Relates", "inward": "relates to", "outward": "relates to" }, "outwardIssue": { "id": "153522", "key": "ALOY-1337", "fields": { "summary": "Support setting breakpoints in the CommonJS modules", "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" } }, "priority": { "name": "Medium", "id": "3" }, "issuetype": { "id": "2", "description": "A new feature of the product, which has yet to be developed.", "name": "New Feature", "subtask": false } } } }, { "id": "46231", "type": { "id": "10003", "name": "Relates", "inward": "relates to", "outward": "relates to" }, "inwardIssue": { "id": "145144", "key": "TIMOB-18615", "fields": { "summary": "iOS Debugger: Breakpoints not recognized on files that are added to app.js using URL", "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" } }, "priority": { "name": "None", "id": "6" }, "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false } } } } ], "assignee": { "name": "penrique", "key": "penrique", "displayName": "Pedro Enrique", "active": false, "timeZone": "America/Los_Angeles" }, "updated": "2017-03-31T22:32:20.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": "10206", "name": "iOS", "description": "iOS Platform" } ], "description": "*Steps to reproduce issue*:\r\n1. Create a new application \r\n2. Replace the content of app.js with the following:\r\n{code}\r\nvar win = Ti.UI.createWindow({ \r\nbackgroundColor:'#fff' \r\n}); \r\n\r\nvar lib = require('lib'); \r\n\r\nvar container = Ti.UI.createScrollView({ \r\ntop:50, \r\nleft:10, \r\nright:10, \r\nheight:150, \r\nwidth:300, \r\ncontentWidth:800, \r\nscrollType:'horizontal' \r\n}); \r\n\r\ncontainer.addEventListener('scroll', lib.eventHandler); \r\n\r\ncontainer.add(Ti.UI.createLabel({width:800, height: 20, \r\ntext:'Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor'})); \r\n\r\nwin.add(container); \r\nwin.open();\r\n{code}\r\n3. Create a lib.js file in the \"Resources\" folder of the project with the following code:\r\n{code}\r\nexports.eventHandler = function() { \r\n Ti.API.info('got scroll'); \r\n}\r\n{code}\r\n4. Add a breakpoint to line 2 of lib.js \r\n5. Debug the application. \r\n6. Scroll the text box.\r\n\r\n*Expected Result*:\r\nThe breakpoint is hit on scroll.\r\n\r\n*Actual Result*:\r\nBreakpoint is not hit\r\n\r\n*Notes*:\r\nThis is not a regression as the same is seen with 3.5.0.GA.", "attachment": [], "flagged": false, "summary": "iOS Debugger: Breakpoints not recognized on files that are required()", "creator": { "name": "ewieber", "key": "ewieber", "displayName": "Eric Wieber", "active": false, "timeZone": "America/Los_Angeles" }, "subtasks": [], "reporter": { "name": "ewieber", "key": "ewieber", "displayName": "Eric Wieber", "active": false, "timeZone": "America/Los_Angeles" }, "environment": "Titanium SDK 3.5.1.v20150223154830 & 3.5.0.GA\r\nStudio 3.4.2.201502181619\r\nCLI 3.4.2-alpha\r\nXcode 6.2b5", "closedSprints": [ { "id": 529, "state": "closed", "name": "2015 Sprint 24 SDK", "startDate": "2015-11-21T01:30:12.670Z", "endDate": "2015-12-05T01:30:00.000Z", "completeDate": "2015-12-07T03:57:17.094Z", "originBoardId": 114 } ], "comment": { "comments": [ { "id": "371430", "author": { "name": "cng", "key": "cng", "displayName": "Chee Kiat Ng", "active": false, "timeZone": "America/Los_Angeles" }, "body": "Hi, I just tried to reproduce and the breakpoint is hit as expected. This is my environment:\r\nTi SDK 5.1.0.GA\r\nStudio 4.4.0\r\nIOS 9.1 / Xcode 7.1\r\nNode.js\r\n Node.js Version = 4.2.2\r\n npm Version = 2.14.7\r\n\r\nAppcelerator CLI\r\n Installer = 4.2.2\r\n Core Package = 5.1.0\r\n\r\nTitanium CLI\r\n CLI Version = 5.0.5\r\n node-appc Version = 0.2.31", "updateAuthor": { "name": "cng", "key": "cng", "displayName": "Chee Kiat Ng", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2015-11-25T06:37:53.000+0000", "updated": "2015-11-25T06:37:53.000+0000" }, { "id": "371553", "author": { "name": "ben.bahrenburg@gmail.com", "key": "ben.bahrenburg@gmail.com", "displayName": "Ben Bahrenburg", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Hi Kiat, I'm noticing this works in Classic but not in Alloy.", "updateAuthor": { "name": "ben.bahrenburg@gmail.com", "key": "ben.bahrenburg@gmail.com", "displayName": "Ben Bahrenburg", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2015-11-26T23:50:48.000+0000", "updated": "2015-11-26T23:50:48.000+0000" }, { "id": "371583", "author": { "name": "mike@warnes.com", "key": "mike@warnes.com", "displayName": "michael warnes", "active": true, "timeZone": "Europe/London" }, "body": "This is also *not* working for me. Are you sure your version of node is correct? Also are you testing on windows or mac?\r\n\r\nI have tested it in an alloy project.\r\n\r\nCould I possibly politely ask that you address this? Could I ask why you have pushed this back into a later release? This feature has been broken since 3.4.1 and is a key feature....would you agree that being able to debug is a key developer capability. My app has 20-30 required files, and I've posted several request regarding this over a number of months, I guess I must be the only one that is being affected by this?\r\n\r\nNB I can debug into the code if I set a breakpoint on the call into the required module, but breakpoints in the module are being ignored.\r\n\r\nTi SDK 5.1.0.GA\r\nStudio 4.4.0\r\nIOS 9.1 / Xcode 7.1\r\nNode.js\r\nNode.js Version = 0.12.7\r\nnpm Version = 2.11.3\r\nAppcelerator CLI\r\nInstaller = 4.1.3\r\nCore Package = 5.1.0\r\nTitanium CLI\r\nCLI Version = 5.0.5\r\nnode-appc Version = 0.2.26\r\n\r\nOperating System\r\n Name = Mac OS X\r\n Version = 10.11.1\r\n Architecture = 64bit\r\n # CPUs = 4\r\n Memory = 16.0GB\r\n\r\nNode.js\r\n Node.js Version = 0.12.7\r\n npm Version = 2.11.3\r\n\r\nTitanium CLI\r\n CLI Version = 4.1.3\r\n node-appc Version = 0.2.26", "updateAuthor": { "name": "mike@warnes.com", "key": "mike@warnes.com", "displayName": "michael warnes", "active": true, "timeZone": "Europe/London" }, "created": "2015-11-27T09:45:56.000+0000", "updated": "2015-11-27T09:45:56.000+0000" }, { "id": "371584", "author": { "name": "mike@warnes.com", "key": "mike@warnes.com", "displayName": "michael warnes", "active": true, "timeZone": "Europe/London" }, "body": "also this was working in 3.4.1GA so it should be marked as a regression", "updateAuthor": { "name": "mike@warnes.com", "key": "mike@warnes.com", "displayName": "michael warnes", "active": true, "timeZone": "Europe/London" }, "created": "2015-11-27T10:00:59.000+0000", "updated": "2015-11-27T10:00:59.000+0000" }, { "id": "371586", "author": { "name": "cng", "key": "cng", "displayName": "Chee Kiat Ng", "active": false, "timeZone": "America/Los_Angeles" }, "body": "[~mike@warnes.com] This ticket was specific to Classic projects, hence we addressed it as it is, and waited for feedback like yours before closing the ticket. And we appreciate you and Ben for informing us that this doesn't work on Alloy projects so we will continue looking into it. \r\n\r\nThe release version is not final as our planning is progressive Please don't take it as us putting less priority into it. ", "updateAuthor": { "name": "cng", "key": "cng", "displayName": "Chee Kiat Ng", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2015-11-27T10:12:45.000+0000", "updated": "2015-11-27T10:12:45.000+0000" }, { "id": "371589", "author": { "name": "mike@warnes.com", "key": "mike@warnes.com", "displayName": "michael warnes", "active": true, "timeZone": "Europe/London" }, "body": "understood, and I appreciate you taking the time to look into this. \r\n\r\nCould you advise if this should be closed and a new ticket opened specific to Alloy then. \r\n\r\nI am very keen to get this addressed if possible, and would be very glad to help. My project has a large number of javascript modules as a result of the recommended approach to adding functionality to Alloy controllers...i.e. using stateful modules.\r\n\r\nThank you for the feedback\r\n", "updateAuthor": { "name": "mike@warnes.com", "key": "mike@warnes.com", "displayName": "michael warnes", "active": true, "timeZone": "Europe/London" }, "created": "2015-11-27T10:16:49.000+0000", "updated": "2015-11-27T10:16:49.000+0000" }, { "id": "371590", "author": { "name": "cng", "key": "cng", "displayName": "Chee Kiat Ng", "active": false, "timeZone": "America/Los_Angeles" }, "body": "This will not be closed. And i'll make a reproducible alloy sample app and update this ticket accordingly.", "updateAuthor": { "name": "cng", "key": "cng", "displayName": "Chee Kiat Ng", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2015-11-27T10:20:00.000+0000", "updated": "2015-11-27T10:20:00.000+0000" }, { "id": "371591", "author": { "name": "mike@warnes.com", "key": "mike@warnes.com", "displayName": "michael warnes", "active": true, "timeZone": "Europe/London" }, "body": "Excellent, thank you very much!! honestly this has been making life so difficult!!!.\r\n\r\nAs a work around, I guess I could try to include my modular code in the controllers where debugging is essential, but it is good to know finally that it is not something that is being caused by my code. Although I'd reached that conclusion as I had tried every possible configuration of modularising the code.", "updateAuthor": { "name": "mike@warnes.com", "key": "mike@warnes.com", "displayName": "michael warnes", "active": true, "timeZone": "Europe/London" }, "created": "2015-11-27T10:20:59.000+0000", "updated": "2015-11-27T10:34:39.000+0000" }, { "id": "371594", "author": { "name": "cng", "key": "cng", "displayName": "Chee Kiat Ng", "active": false, "timeZone": "America/Los_Angeles" }, "body": "These are really good information you have provided, it will be helpful. Appreciate it!", "updateAuthor": { "name": "cng", "key": "cng", "displayName": "Chee Kiat Ng", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2015-11-27T10:48:19.000+0000", "updated": "2015-11-27T10:48:19.000+0000" }, { "id": "371750", "author": { "name": "cng", "key": "cng", "displayName": "Chee Kiat Ng", "active": false, "timeZone": "America/Los_Angeles" }, "body": "[~mike@warnes.com] [~ben.bahrenburg@gmail.com], Thanks to [~fmiao] investigation, here is what we found out:\r\n\r\nAlloy doesn't support breakpoints in commonjs modules, it's [stated here|http://docs.appcelerator.com/platform/latest/#!/guide/Alloy_Debugging_and_Troubleshooting]:\r\nbq. Breakpoints set in the CommonJS modules and Alloy Model files in the app directory are ignored during debugging. To add breakpoints for these items, you need to add the breakpoints to the generated Titanium files created by the Alloy CLI. The CommonJS modules are copied to the Resources directory and the generated Alloy Model files are located in the Resources/alloy/models directory. \r\n\r\nSo we can open an ALLOY ticket for a feature request on this, but at the moment, here is a work around.\r\n\r\n1. In Appcelerator Studio, go to Window in the menu -> Show View -> App Explorer\r\n2. In App Explorer, Choose your project. On the right top corner, click on the chevron icon, and -> customize view\r\n3. Uncheck 'Appcelerator Resources Folders'\r\n4. Build your project. Find the relevant required file in the Resources Folder (that was generated by Alloy) and add your breakpoints.\r\n\r\nIf there's no other concerns, we will resolve this ticket as fixed (for classic project) and create a new ALLOY feature ticket to enable breakpoints on required() files.\r\n\r\n", "updateAuthor": { "name": "cng", "key": "cng", "displayName": "Chee Kiat Ng", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2015-12-01T05:54:12.000+0000", "updated": "2015-12-01T05:54:12.000+0000" }, { "id": "371768", "author": { "name": "mike@warnes.com", "key": "mike@warnes.com", "displayName": "michael warnes", "active": true, "timeZone": "Europe/London" }, "body": "yes, by coincidence I saw this yesterday, and was going to update the ticket, so my apologies. I have retested this and can confirm it works correctly.\r\n\r\nHowever there are many points in my application, when using the simulator, in debug that the application simple stops completely with no warning. It is very difficult for me to diagnose exactly what it is happening, but it appears that putting breakpoints in certain areas of code cause catastrophic failure in the debugger. Are you aware of this kind behaviour with Alloy applications? At the moment I have had to add multiple alerts to my code to see what is happening...it is very laborious.\r\n\r\nI will try and create a test project to reproduce the behaviour", "updateAuthor": { "name": "mike@warnes.com", "key": "mike@warnes.com", "displayName": "michael warnes", "active": true, "timeZone": "Europe/London" }, "created": "2015-12-01T09:31:48.000+0000", "updated": "2015-12-01T09:31:48.000+0000" }, { "id": "371769", "author": { "name": "cng", "key": "cng", "displayName": "Chee Kiat Ng", "active": false, "timeZone": "America/Los_Angeles" }, "body": "There is a few issues with debugger on alloy and we have tickets for them. Our team is actually running through all of them now. But if there's any case you can reproduce we definitely welcome it. ", "updateAuthor": { "name": "cng", "key": "cng", "displayName": "Chee Kiat Ng", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2015-12-01T09:35:50.000+0000", "updated": "2015-12-01T09:35:50.000+0000" }, { "id": "371770", "author": { "name": "mike@warnes.com", "key": "mike@warnes.com", "displayName": "michael warnes", "active": true, "timeZone": "Europe/London" }, "body": "Great, very much appreciated, many thanks", "updateAuthor": { "name": "mike@warnes.com", "key": "mike@warnes.com", "displayName": "michael warnes", "active": true, "timeZone": "Europe/London" }, "created": "2015-12-01T09:36:53.000+0000", "updated": "2015-12-01T09:36:53.000+0000" }, { "id": "372008", "author": { "name": "cng", "key": "cng", "displayName": "Chee Kiat Ng", "active": false, "timeZone": "America/Los_Angeles" }, "body": "Marking as cannot reproduce since this was specific to titanium classic projects and it's not reproducible there. Later discussions are for a separate feature on Alloy.", "updateAuthor": { "name": "cng", "key": "cng", "displayName": "Chee Kiat Ng", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2015-12-03T03:34:43.000+0000", "updated": "2015-12-03T03:34:43.000+0000" }, { "id": "372319", "author": { "name": "emilyafeder@gmail.com", "key": "emilyafeder@gmail.com", "displayName": "Emily Feder", "active": true, "timeZone": "America/Chicago" }, "updateAuthor": { "name": "emilyafeder@gmail.com", "key": "emilyafeder@gmail.com", "displayName": "Emily Feder", "active": true, "timeZone": "America/Chicago" }, "created": "2015-12-07T17:49:16.000+0000", "updated": "2015-12-07T17:50:48.000+0000" }, { "id": "372373", "author": { "name": "cng", "key": "cng", "displayName": "Chee Kiat Ng", "active": false, "timeZone": "America/Los_Angeles" }, "updateAuthor": { "name": "cng", "key": "cng", "displayName": "Chee Kiat Ng", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2015-12-08T02:38:09.000+0000", "updated": "2015-12-08T02:38:09.000+0000" }, { "id": "416605", "author": { "name": "lmorris", "key": "lmorris", "displayName": "Lee Morris", "active": false, "timeZone": "America/Los_Angeles" }, "body": "Unable to reproduce this issue, tested with the following environment; \r\niPhone 7 (10.2) \r\nMacOS 10.11.6 (15G31) \r\nStudio 4.8.1.201612050850 \r\nTi SDK 6.0.3 GA \r\nAppc NPM 4.2.8 \r\nAppc CLI 6.1.0 \r\nTi CLI 5.0.11 \r\nAlloy 1.9.5 \r\nArrow 1.10.1 \r\nXcode 8.2 (8C38) \r\nNode v4.6.0 \r\nJava 1.7.0_80\r\n\r\nPlease file a new ticket if this problem still persists.", "updateAuthor": { "name": "lmorris", "key": "lmorris", "displayName": "Lee Morris", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2017-03-31T22:32:20.000+0000", "updated": "2017-03-31T22:32:20.000+0000" } ], "maxResults": 22, "total": 22, "startAt": 0 } } }