{"action":"created","issue":{"url":"https://api.github.com/repos/getquill/quill/issues/665","repository_url":"https://api.github.com/repos/getquill/quill","labels_url":"https://api.github.com/repos/getquill/quill/issues/665/labels{/name}","comments_url":"https://api.github.com/repos/getquill/quill/issues/665/comments","events_url":"https://api.github.com/repos/getquill/quill/issues/665/events","html_url":"https://github.com/getquill/quill/pull/665","id":195329003,"number":665,"title":"Fix encoders and decoders for java.util.UUID.","user":{"login":"mxl","id":1078685,"avatar_url":"https://avatars.githubusercontent.com/u/1078685?v=3","gravatar_id":"","url":"https://api.github.com/users/mxl","html_url":"https://github.com/mxl","followers_url":"https://api.github.com/users/mxl/followers","following_url":"https://api.github.com/users/mxl/following{/other_user}","gists_url":"https://api.github.com/users/mxl/gists{/gist_id}","starred_url":"https://api.github.com/users/mxl/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mxl/subscriptions","organizations_url":"https://api.github.com/users/mxl/orgs","repos_url":"https://api.github.com/users/mxl/repos","events_url":"https://api.github.com/users/mxl/events{/privacy}","received_events_url":"https://api.github.com/users/mxl/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":9,"created_at":"2016-12-13T18:18:42Z","updated_at":"2016-12-26T12:49:37Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/getquill/quill/pulls/665","html_url":"https://github.com/getquill/quill/pull/665","diff_url":"https://github.com/getquill/quill/pull/665.diff","patch_url":"https://github.com/getquill/quill/pull/665.patch"},"body":"Fixes #594 \r\nTemporary workaround for #535 (only for JDBC)\r\n\r\n### Problem\r\n\r\n- No UUID encoder and decoder in `SqlContext`.\r\n- MySQL does not support UUID data type. Async and jdbc MySQL drivers does not support `java.util.UUID` conversion to some other type like `String`.\r\n- It's not possible to override things in `JdbcContext` for specific `SqlIdiom`.\r\n- ~~`quill-jdbc` depends on driver libraries for all dialects which is not necessary when using one specific dialect~~.\r\n\r\n### Solution\r\n- Implement missing UUID encoders and decoders.\r\n- ~~Split `quill-jdbc` to separate projects for each dialect~~.\r\n- Make `JdbcContext` abstract and remove default `uuidEncoder` and `uuidDecoder`.\r\n- Make separate `JdbcContext` for each dialect with mixed-in trait with custom `uuidEncoder` and `uuidDecoder`.\r\n- [Catch](https://github.com/getquill/quill/pull/665/files#diff-86fe88e01533d968b403802d40a4e2acR41) NPE in JDBC Option decoder as a temporary workaround for #535.\r\n\r\n### Checklist\r\n\r\n- [x] Unit test all changes\r\n- [x] Update `README.md` if applicable\r\n- [x] Add `[WIP]` to the pull request title if it's work in progress\r\n- [x] [Squash commits](https://ariejan.net/2011/07/05/git-squash-your-latests-commits-into-one) that aren't meaningful changes\r\n- [x] Run `sbt scalariformFormat test:scalariformFormat` to make sure that the source files are formatted\r\n\r\n@getquill/maintainers"},"comment":{"url":"https://api.github.com/repos/getquill/quill/issues/comments/269208603","html_url":"https://github.com/getquill/quill/pull/665#issuecomment-269208603","issue_url":"https://api.github.com/repos/getquill/quill/issues/665","id":269208603,"user":{"login":"mxl","id":1078685,"avatar_url":"https://avatars.githubusercontent.com/u/1078685?v=3","gravatar_id":"","url":"https://api.github.com/users/mxl","html_url":"https://github.com/mxl","followers_url":"https://api.github.com/users/mxl/followers","following_url":"https://api.github.com/users/mxl/following{/other_user}","gists_url":"https://api.github.com/users/mxl/gists{/gist_id}","starred_url":"https://api.github.com/users/mxl/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mxl/subscriptions","organizations_url":"https://api.github.com/users/mxl/orgs","repos_url":"https://api.github.com/users/mxl/repos","events_url":"https://api.github.com/users/mxl/events{/privacy}","received_events_url":"https://api.github.com/users/mxl/received_events","type":"User","site_admin":false},"created_at":"2016-12-26T12:49:37Z","updated_at":"2016-12-26T12:49:37Z","body":"@fwbrasil You're right. I did not thought about that. I did rollback of those changes and left only `UUID` encoding fix. If there will be any suggestions related to module organization I can make separate PR."}}
{"actor":{"display_login":"mxl"}}