{"action":"closed","issue":{"url":"https://api.github.com/repos/ftctechnh/ftc_app/issues/165","repository_url":"https://api.github.com/repos/ftctechnh/ftc_app","labels_url":"https://api.github.com/repos/ftctechnh/ftc_app/issues/165/labels{/name}","comments_url":"https://api.github.com/repos/ftctechnh/ftc_app/issues/165/comments","events_url":"https://api.github.com/repos/ftctechnh/ftc_app/issues/165/events","html_url":"https://github.com/ftctechnh/ftc_app/issues/165","id":145446967,"number":165,"title":"Dependencies should be handled by Gradle/Maven","user":{"login":"nrizzio","id":13669330,"avatar_url":"https://avatars.githubusercontent.com/u/13669330?v=3","gravatar_id":"","url":"https://api.github.com/users/nrizzio","html_url":"https://github.com/nrizzio","followers_url":"https://api.github.com/users/nrizzio/followers","following_url":"https://api.github.com/users/nrizzio/following{/other_user}","gists_url":"https://api.github.com/users/nrizzio/gists{/gist_id}","starred_url":"https://api.github.com/users/nrizzio/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nrizzio/subscriptions","organizations_url":"https://api.github.com/users/nrizzio/orgs","repos_url":"https://api.github.com/users/nrizzio/repos","events_url":"https://api.github.com/users/nrizzio/events{/privacy}","received_events_url":"https://api.github.com/users/nrizzio/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":1,"created_at":"2016-04-03T02:53:49Z","updated_at":"2016-08-04T22:51:55Z","closed_at":"2016-08-04T22:51:55Z","body":"Instead of including the FTC libraries as `.aar` files into this repository, [they should be uploaded as artifacts to the Maven Central Repository.](https://maven.apache.org/guides/mini/guide-central-repository-upload.html)\r\n\r\n[`compile(name: 'RobotCore-release', ext: 'aar')`](https://github.com/ftctechnh/ftc_app/blob/83d998b9e9937e51b96acae151aa10b993ca1a83/FtcRobotController/build.gradle#L41-L46) would become\r\n`compile 'com.qualcomm.ftcrobotcontroller.robotcore-release:1.7'`. This same pattern would apply to all of the other libraries as well.\r\n\r\nThat way, whenever a new version of the libraries are released, the source `.aar`s would be uploaded to Maven, while the only change needed within this repository would be to increment the version number of the corresponding library dependency in [`build.gradle`](https://github.com/ftctechnh/ftc_app/blob/83d998b9e9937e51b96acae151aa10b993ca1a83/FtcRobotController/build.gradle#L41-L46). The [`libs`](https://github.com/ftctechnh/ftc_app/tree/83d998b9e9937e51b96acae151aa10b993ca1a83/FtcRobotController/libs) folder would no longer be polluted with raw binaries that change all of the time.\r\n\r\nWhen it reads `compile 'com.qualcomm.ftcrobotcontroller.robotcore-release:1.7'`, Gradle will automatically search for and download the appropriate libraries from Maven and allow Android Studio to build the app."}}
{"actor":{"display_login":"cmacfarl"}}