{ "id": "170659", "key": "ALOY-1597", "fields": { "issuetype": { "id": "4", "description": "An improvement or enhancement to an existing feature or task.", "name": "Improvement", "subtask": false }, "project": { "id": "11113", "key": "ALOY", "name": "Alloy", "projectCategory": { "id": "10400", "description": "Tools for developing applications", "name": "Tooling" } }, "fixVersions": [ { "id": "20055", "name": "CLI Release 7.0.2", "archived": false, "released": true } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2018-01-08T18:17:14.000+0000", "created": "2017-12-20T11:00:18.000+0000", "priority": { "name": "High", "id": "2" }, "labels": [], "versions": [], "issuelinks": [], "assignee": { "name": "eharris", "key": "eharris", "displayName": "Ewan Harris", "active": true, "timeZone": "Europe/Dublin" }, "updated": "2018-01-19T00:27:47.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": "13604", "name": "Tooling", "description": "Items related to Alloy tooling and workflow" } ], "description": "h5.Description\r\n\r\nCurrently when we are parsing files if we hit a parser error then we output an error that isn't super helpful, it contains an line/column numbers but it would be a much better dev experience if we could show the code using babel-code-frame. We could also expand this to xml/tss parsing errors if the modules we use give us the locations in an easily consumable way\r\n\r\n{code: title=current}\r\n[ERROR] Error generating AST for \"/Users/eharris/Documents/projects/repotest/apps/hyperloop-examples/app/controllers/index.js\"\r\n[ERROR] Unexpected token (1:5)\r\n[ERROR] position 5\r\n{code}\r\n\r\n{code: title=babel-code-frame}\r\n[INFO] controller: \"index.js\"\r\n> 1 | x ==== foo\r\n | ^\r\n 2 | /**\r\n 3 | * I wrap code that executes on creation in a self-executing function just to\r\n 4 | * keep it organised, not to protect global scope like it would in alloy.js\r\n[ERROR] Error generating AST for \"/Users/eharris/Documents/projects/repotest/apps/hyperloop-examples/app/controllers/index.js\"\r\n{code}", "attachment": [], "flagged": false, "summary": "Use babel-code-frame to provide context when failing to parse code", "creator": { "name": "eharris", "key": "eharris", "displayName": "Ewan Harris", "active": true, "timeZone": "Europe/Dublin" }, "subtasks": [], "reporter": { "name": "eharris", "key": "eharris", "displayName": "Ewan Harris", "active": true, "timeZone": "Europe/Dublin" }, "environment": null, "closedSprints": [ { "id": 983, "state": "closed", "name": "2017 Sprint 26 Tooling", "startDate": "2017-12-17T22:33:16.616Z", "endDate": "2017-12-31T22:33:00.000Z", "completeDate": "2018-01-02T16:57:51.963Z", "originBoardId": 219 }, { "id": 986, "state": "closed", "name": "2018 Sprint 01 Tooling", "startDate": "2017-12-31T16:58:25.103Z", "endDate": "2018-01-14T16:58:00.000Z", "completeDate": "2018-01-17T22:42:40.307Z", "originBoardId": 219 } ], "comment": { "comments": [ { "id": "432442", "author": { "name": "eharris", "key": "eharris", "displayName": "Ewan Harris", "active": true, "timeZone": "Europe/Dublin" }, "body": "Started on https://github.com/appcelerator/alloy/pull/865", "updateAuthor": { "name": "eharris", "key": "eharris", "displayName": "Ewan Harris", "active": true, "timeZone": "Europe/Dublin" }, "created": "2017-12-20T16:38:46.000+0000", "updated": "2017-12-20T16:38:46.000+0000" }, { "id": "432471", "author": { "name": "eharris", "key": "eharris", "displayName": "Ewan Harris", "active": true, "timeZone": "Europe/Dublin" }, "body": "Once finished in Alloy I'd like to implement this in Titanium too", "updateAuthor": { "name": "eharris", "key": "eharris", "displayName": "Ewan Harris", "active": true, "timeZone": "Europe/Dublin" }, "created": "2017-12-21T11:34:07.000+0000", "updated": "2017-12-21T11:34:07.000+0000" }, { "id": "433324", "author": { "name": "amukherjee", "key": "amukherjee", "displayName": "Abir Mukherjee", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Node Version: 8.9.1\r\nNPM Version: 5.5.1\r\nMac OS: 10.13.1\r\nAppc CLI: 7.0.2-master.5\r\nAppc CLI NPM: 4.2.11\r\nTitanium SDK version: 7.0.1\r\n\r\nValidated fix on 7.0.2-master.5.", "updateAuthor": { "name": "amukherjee", "key": "amukherjee", "displayName": "Abir Mukherjee", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2018-01-19T00:27:29.000+0000", "updated": "2018-01-19T00:27:29.000+0000" } ], "maxResults": 3, "total": 3, "startAt": 0 } } }