{"action":"created","issue":{"url":"https://api.github.com/repos/apache/incubator-openwhisk/issues/3283","repository_url":"https://api.github.com/repos/apache/incubator-openwhisk","labels_url":"https://api.github.com/repos/apache/incubator-openwhisk/issues/3283/labels{/name}","comments_url":"https://api.github.com/repos/apache/incubator-openwhisk/issues/3283/comments","events_url":"https://api.github.com/repos/apache/incubator-openwhisk/issues/3283/events","html_url":"https://github.com/apache/incubator-openwhisk/pull/3283","id":296985168,"number":3283,"title":"Add implicit ClassTag for entity type","user":{"login":"chetanmeh","id":664531,"avatar_url":"https://avatars1.githubusercontent.com/u/664531?v=4","gravatar_id":"","url":"https://api.github.com/users/chetanmeh","html_url":"https://github.com/chetanmeh","followers_url":"https://api.github.com/users/chetanmeh/followers","following_url":"https://api.github.com/users/chetanmeh/following{/other_user}","gists_url":"https://api.github.com/users/chetanmeh/gists{/gist_id}","starred_url":"https://api.github.com/users/chetanmeh/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/chetanmeh/subscriptions","organizations_url":"https://api.github.com/users/chetanmeh/orgs","repos_url":"https://api.github.com/users/chetanmeh/repos","events_url":"https://api.github.com/users/chetanmeh/events{/privacy}","received_events_url":"https://api.github.com/users/chetanmeh/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2018-02-14T06:01:20Z","updated_at":"2018-02-14T06:15:49Z","closed_at":null,"author_association":"MEMBER","pull_request":{"url":"https://api.github.com/repos/apache/incubator-openwhisk/pulls/3283","html_url":"https://github.com/apache/incubator-openwhisk/pull/3283","diff_url":"https://github.com/apache/incubator-openwhisk/pull/3283.diff","patch_url":"https://github.com/apache/incubator-openwhisk/pull/3283.patch"},"body":"For implementing custom `ArtifactStore` and computing views on client side for databases other than CouchDB the `ArtifactStore` would need access to the entity type. \r\n\r\nThe logic in custom ArtifactStoreProvider would be similar to one present [here][1] just that this PR uses `ClassTag` instead of `Manifest` as [Manifest are now deprecated post Scala 2.10][2]\r\n\r\nTo enable that `ArtifactStoreProvider` should have an implicit parameter for `ClassTag`\r\n\r\n[1]: https://github.com/apache/incubator-openwhisk/commit/9be13e2c6d581f42b60351f05a11e4aa71ca31d9#diff-9399daa47aa3257bb6bcb49425f4389dR110\r\n[2]: https://docs.scala-lang.org/overviews/reflection/typetags-manifests.html#typetags-and-manifests"},"comment":{"url":"https://api.github.com/repos/apache/incubator-openwhisk/issues/comments/365507299","html_url":"https://github.com/apache/incubator-openwhisk/pull/3283#issuecomment-365507299","issue_url":"https://api.github.com/repos/apache/incubator-openwhisk/issues/3283","id":365507299,"user":{"login":"markusthoemmes","id":1289147,"avatar_url":"https://avatars3.githubusercontent.com/u/1289147?v=4","gravatar_id":"","url":"https://api.github.com/users/markusthoemmes","html_url":"https://github.com/markusthoemmes","followers_url":"https://api.github.com/users/markusthoemmes/followers","following_url":"https://api.github.com/users/markusthoemmes/following{/other_user}","gists_url":"https://api.github.com/users/markusthoemmes/gists{/gist_id}","starred_url":"https://api.github.com/users/markusthoemmes/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/markusthoemmes/subscriptions","organizations_url":"https://api.github.com/users/markusthoemmes/orgs","repos_url":"https://api.github.com/users/markusthoemmes/repos","events_url":"https://api.github.com/users/markusthoemmes/events{/privacy}","received_events_url":"https://api.github.com/users/markusthoemmes/received_events","type":"User","site_admin":false},"created_at":"2018-02-14T06:15:49Z","updated_at":"2018-02-14T06:15:49Z","author_association":"CONTRIBUTOR","body":"> In Scala 2.10, scala.reflect.ClassManifest are deprecated, and it is planned to deprecate scala.reflect.Manifest in favor of TypeTags and ClassTags in an upcoming point release. Thus, it is advisable to migrate any Manifest-based APIs to use Tags.\r\n\r\nManifest is not deprecated but planned to be deprecated at some point. Can you provide an implementation example of where a `ClassTag` would be needed?"}}
{"actor":{"display_login":"markusthoemmes"}}