typelevel / mouse

A small companion to cats
MIT License
371 stars 66 forks source link

Scala 3 migration #149

Open benhutchison opened 4 years ago

benhutchison commented 4 years ago

Dotty-compatibility mode provides a way to use mouse now in Scala 3 projects, eg ("org.typelevel" %% "mouse" % "0.25").withDottyCompat(dottyVersion)

However, Scala 3 migration is also a good time for any major refactors of the lib. Im thinking about a Scala 3 only version which would allow a clean break.

If you have any ideas/requests for a Scala 3 rewrite, please add them to this issue

benhutchison commented 3 years ago

https://github.com/typelevel/mouse/pull/182

Also @katlasik note that scalacheck is gone in the Scala 3 version

benhutchison commented 3 years ago

Hi @danicheg Not at all urgent, but Id like to do a zoom meeting with you sometime to talk about Scala 3 strategy for mouse. There were some non-obvious things I discovered when porting mouse to pure scala 3 that it'd be good to show-and-tell via a screenshare. Can you email me at brhutchison@gmail.com some time..

danicheg commented 3 years ago

Good idea, @benhutchison! I've left a comment about Scala 3 migration in your PR, but I will repeat my thoughts here too. I propose to have one main branch and introduce a new syntax powered with extension methods in Scala 3 source directory (as I've done in #248 for tuple syntax for Scala 2 only).

benhutchison commented 3 years ago

Scala 3 src directories could work... 🤔