[ 
https://issues.apache.org/jira/browse/CRUNCH-650?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16089291#comment-16089291
 ] 

Josh Wills commented on CRUNCH-650:
-----------------------------------

Mostly shapeless itself, but I'm not super-familiar with it's use across the 
different versions of Scala. Is there a "safe" version that we can depend on 
across versions, or for a specific version? I do not question that the current 
approach is janky af and needs to be replaced.

> Support case classes and tuples without reflection or codegen using shapeless
> -----------------------------------------------------------------------------
>
>                 Key: CRUNCH-650
>                 URL: https://issues.apache.org/jira/browse/CRUNCH-650
>             Project: Crunch
>          Issue Type: Improvement
>          Components: Scrunch
>            Reporter: David Whiting
>            Assignee: David Whiting
>         Attachments: 
> 0001-Replace-generated-tuple-code-and-reflective-case-cla.patch
>
>
> Scrunch support for case classes is pretty buggy, only supports a subset of 
> scala versions, and fails at runtime instead of compile time if something 
> goes wrong. Additionally, the support of tuple types via code generation is 
> awkward and unnecessary.
> This patch should hopefully solve both of these with a shapeless 
> (https://github.com/milessabin/shapeless) based solution which should be much 
> simpler and more reliable, by defining a mechanism for deriving PTypeH 
> instances for HLists where PTypeH instances for each type in the list is 
> known.
> We have used it in a few production cases at SC for a while, and the unit and 
> integration test suite passes, but I didn't write any new tests specifically 
> for this purpose. Hopefully they should be covered by the existing tests 
> using case classes and tuples.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to