{"action":"created","issue":{"url":"https://api.github.com/repos/swagger-api/swagger-codegen/issues/3755","repository_url":"https://api.github.com/repos/swagger-api/swagger-codegen","labels_url":"https://api.github.com/repos/swagger-api/swagger-codegen/issues/3755/labels{/name}","comments_url":"https://api.github.com/repos/swagger-api/swagger-codegen/issues/3755/comments","events_url":"https://api.github.com/repos/swagger-api/swagger-codegen/issues/3755/events","html_url":"https://github.com/swagger-api/swagger-codegen/pull/3755","id":175776309,"number":3755,"title":"Feature/#3738 extract abstract scala codegen","user":{"login":"ePaul","id":645859,"avatar_url":"https://avatars.githubusercontent.com/u/645859?v=3","gravatar_id":"","url":"https://api.github.com/users/ePaul","html_url":"https://github.com/ePaul","followers_url":"https://api.github.com/users/ePaul/followers","following_url":"https://api.github.com/users/ePaul/following{/other_user}","gists_url":"https://api.github.com/users/ePaul/gists{/gist_id}","starred_url":"https://api.github.com/users/ePaul/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ePaul/subscriptions","organizations_url":"https://api.github.com/users/ePaul/orgs","repos_url":"https://api.github.com/users/ePaul/repos","events_url":"https://api.github.com/users/ePaul/events{/privacy}","received_events_url":"https://api.github.com/users/ePaul/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/swagger-api/swagger-codegen/labels/Client:%20Scala","name":"Client: Scala","color":"fad8c7"},{"url":"https://api.github.com/repos/swagger-api/swagger-codegen/labels/Server:%20Scala","name":"Server: Scala","color":"f7c6c7"}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":{"url":"https://api.github.com/repos/swagger-api/swagger-codegen/milestones/13","html_url":"https://github.com/swagger-api/swagger-codegen/milestones/v2.2.2","labels_url":"https://api.github.com/repos/swagger-api/swagger-codegen/milestones/13/labels","id":1928763,"number":13,"title":"v2.2.2","description":"","creator":{"login":"wing328","id":934260,"avatar_url":"https://avatars.githubusercontent.com/u/934260?v=3","gravatar_id":"","url":"https://api.github.com/users/wing328","html_url":"https://github.com/wing328","followers_url":"https://api.github.com/users/wing328/followers","following_url":"https://api.github.com/users/wing328/following{/other_user}","gists_url":"https://api.github.com/users/wing328/gists{/gist_id}","starred_url":"https://api.github.com/users/wing328/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/wing328/subscriptions","organizations_url":"https://api.github.com/users/wing328/orgs","repos_url":"https://api.github.com/users/wing328/repos","events_url":"https://api.github.com/users/wing328/events{/privacy}","received_events_url":"https://api.github.com/users/wing328/received_events","type":"User","site_admin":false},"open_issues":240,"closed_issues":126,"state":"open","created_at":"2016-08-08T09:16:56Z","updated_at":"2016-09-11T06:52:46Z","due_on":null,"closed_at":null},"comments":1,"created_at":"2016-09-08T14:56:21Z","updated_at":"2016-09-11T10:00:34Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/swagger-api/swagger-codegen/pulls/3755","html_url":"https://github.com/swagger-api/swagger-codegen/pull/3755","diff_url":"https://github.com/swagger-api/swagger-codegen/pull/3755.diff","patch_url":"https://github.com/swagger-api/swagger-codegen/pull/3755.patch"},"body":"### PR checklist\r\n\r\n- [x] Read the [contribution guildelines](https://github.com/swagger-api/swagger-codegen/blob/master/CONTRIBUTING.md).\r\n- [x] Ran the shell/batch script under `./bin/` to update Petstore sample so that CIs can verify the change. (For instance, only need to run`./bin/{LANG}-petstore.sh` if updating the {LANG} (e.g. php, ruby, python, etc) code generator or {LANG} client's mustache templates) – regenerated all scala related samples: `scala`, `async-scala`, `scalatra`, `akka-scala`)\r\n- [x] Filed the PR against the correct branch: master for non-breaking changes ~~and `2.3.0` branch for breaking (non-backward compatible) changes~~.\r\n\r\n### Description of the PR\r\n\r\nThis extracts a common super class for AkkaScalaClientCodegen, AsyncScalaClientCodegen, ScalaClientCodegen, ScalatraServerCodegen, which cleans up some duplicated code. This is a prerequisite to fixing #3738 (which will be done in a second pull request – #3757 – building on this one).\r\n\r\nI tried to do it in a minimally invasive way – the results should be the same as before. In the petstore samples the only difference is that some imports for classes in the same package disappeared (only for `scalatra`).\r\n\r\nI guess there could be done more, but I'm not so familiar with the Scala generators, and don't know which of the behavior differences is intentional and which not. For example, all classes seem to have different lists of reserved words.\r\n\r\nOne potential issue:\r\n\r\n* I extracted the `languageSpecificPrimitives` initialization into the super class – but it had slightly different lists in each of the subclasses. I chose to use the union of all of them, though I'm not sure what the effect would be here. (`Any` and `Seq` are now primitives for all of them, and `scalatra` had `Integer` instead of `Int`.)"},"comment":{"url":"https://api.github.com/repos/swagger-api/swagger-codegen/issues/comments/246172037","html_url":"https://github.com/swagger-api/swagger-codegen/pull/3755#issuecomment-246172037","issue_url":"https://api.github.com/repos/swagger-api/swagger-codegen/issues/3755","id":246172037,"user":{"login":"wing328","id":934260,"avatar_url":"https://avatars.githubusercontent.com/u/934260?v=3","gravatar_id":"","url":"https://api.github.com/users/wing328","html_url":"https://github.com/wing328","followers_url":"https://api.github.com/users/wing328/followers","following_url":"https://api.github.com/users/wing328/following{/other_user}","gists_url":"https://api.github.com/users/wing328/gists{/gist_id}","starred_url":"https://api.github.com/users/wing328/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/wing328/subscriptions","organizations_url":"https://api.github.com/users/wing328/orgs","repos_url":"https://api.github.com/users/wing328/repos","events_url":"https://api.github.com/users/wing328/events{/privacy}","received_events_url":"https://api.github.com/users/wing328/received_events","type":"User","site_admin":false},"created_at":"2016-09-11T10:00:34Z","updated_at":"2016-09-11T10:00:34Z","body":"@ePaul thanks for the PR :) I'm sure your work has laid down a more solid foundation for Scala-related generators to improve.\r\n\r\nFor languageSpecificPrimitives and reserved words, I'll create separate tasks for tracking."}}
{"actor":{"display_login":"wing328"}}