{ "id": "174261", "key": "TIMOB-27473", "fields": { "issuetype": { "id": "4", "description": "An improvement or enhancement to an existing feature or task.", "name": "Improvement", "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": "20950", "name": "Release 9.1.0", "archived": false, "released": true, "releaseDate": "2020-08-25" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2020-04-29T01:11:27.000+0000", "created": "2019-10-16T01:23:12.000+0000", "priority": { "name": "Low", "id": "4" }, "labels": [ "android", "code", "format", "linting" ], "versions": [], "issuelinks": [ { "id": "57863", "type": { "id": "10003", "name": "Relates", "inward": "relates to", "outward": "relates to" }, "outwardIssue": { "id": "174211", "key": "TIMOB-27437", "fields": { "summary": "Android: Add @RequiresApi() annotations to core java code", "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": "Low", "id": "4" }, "issuetype": { "id": "4", "description": "An improvement or enhancement to an existing feature or task.", "name": "Improvement", "subtask": false } } } } ], "assignee": { "name": "jquick", "key": "jquick", "displayName": "Joshua Quick", "active": true, "timeZone": "America/Los_Angeles" }, "updated": "2020-04-29T01:11:56.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": "*Summary:*\r\nThe Android gradle build system includes its own \"checkstyle\" tool. This tool is used to enforce Java coding standards and to check for common Java coding errors. It can be used to trigger build errors that fails to pass the configured rules defined in a \"checkstyle.xml\" file.\r\nhttps://docs.gradle.org/current/userguide/checkstyle_plugin.html\r\nhttps://checkstyle.org/index.html\r\n\r\n*To-Do:*\r\nWe should replace our existing clang-format tool in favor of this gradle checkstyle tool. The main reason is because the dev team does not know they are violating the clang linter's rules until its been ran on Jenkins (or ran manually via node).\r\n\r\n* Jenkins is verifying the clang formatting rules by reformatting changed Java files and doing a comparison of files. This is too restrictive because the reformat of the files sometimes looks worse from a readability standpoint. (Too restrictive.)\r\n* The dev team sometimes doesn't know they are violating clang's rules until a PR has been submitted to Jenkins or we run it manually via node. (Common mistake.)\r\n", "attachment": [], "flagged": false, "summary": "Android: Replace clang Java formatter with gradle \"checkstyle\" tool", "creator": { "name": "jquick", "key": "jquick", "displayName": "Joshua Quick", "active": true, "timeZone": "America/Los_Angeles" }, "subtasks": [], "reporter": { "name": "jquick", "key": "jquick", "displayName": "Joshua Quick", "active": true, "timeZone": "America/Los_Angeles" }, "environment": null, "closedSprints": [ { "id": 1194, "state": "closed", "name": "2020 Sprint 9", "startDate": "2020-04-24T17:09:51.572Z", "endDate": "2020-05-08T17:09:00.000Z", "completeDate": "2020-05-08T15:40:07.869Z", "originBoardId": 114 } ], "comment": { "comments": [ { "id": "455293", "author": { "name": "jquick", "key": "jquick", "displayName": "Joshua Quick", "active": true, "timeZone": "America/Los_Angeles" }, "body": "PR (master): https://github.com/appcelerator/titanium_mobile/pull/11516", "updateAuthor": { "name": "jquick", "key": "jquick", "displayName": "Joshua Quick", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2020-04-29T01:11:10.000+0000", "updated": "2020-04-29T01:11:10.000+0000" } ], "maxResults": 1, "total": 1, "startAt": 0 } } }