Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

type class derivation with scala 3 instead of shapeless #346

Merged
merged 4 commits into from
Sep 13, 2021
Merged

Conversation

gregor-i
Copy link
Contributor

Hi @theon,

I've continued your branch towards scala 3. Please note that the PR target is the branch scala3 instead of master.

I've removed the shapeless dependency by migrating to scala 3 type class derivation. The tests are green on my local maschine.

I had to disable scalafmt, as it could not parse the type class derivation code.

cats and scalatic both use the === operator, only the cats operator behaves correctly
so shapeless can be removed

sadly scalafmt has some problems with scala 3 syntax, so I've disabled it.
the typechecker has problems with these hugh lists of suffixes
@gregor-i gregor-i requested a review from theon as a code owner September 13, 2021 13:25
@theon theon changed the base branch from scala3 to scala3-type-class-derivation September 13, 2021 19:13
@theon theon merged commit 8eb188d into lemonlabsuk:scala3-type-class-derivation Sep 13, 2021
@theon
Copy link
Member

theon commented Sep 13, 2021

Thanks for this! I've have released this as version 4.0.0-M1 for Scala 3, but I'm holding off merging to master as ideally I'd like a solution that will cross compile for Scala 3 and 2.13.

If shapeless 2 doesn't make it to Scala 3 soon, I'll investigating duplicating PathPart.scala and QueryKeyValue.scala into scala version specific source directories; a src/main/scala-3/ with this implementation and a src/main/scala-2.13/ with the shapeless implementation

Note: 4.0.0-M1 is not yet published for Scala.js; I think this needs some more attention to get the tests passing.

Thanks again for the contribution!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants