You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Jan 20, 2022. It is now read-only.
Simulacrum Scalafix tool is an experimental reworking of Simulacrum as a set of Scalafix rules. A couple of months ago I opened a proposal advocating for this approach in Cats, and we've discussed the idea in other channels (e.g. this Gitter conversation). The primary goal of the project is to unblock Dotty cross-building for libraries that use Simulacrum 1 (since Dotty does not and probably will never support macro annotations).
Initial 0.1.0 releases of the rules and the annotations for Simulacrum 1 compatibility are currently available on Maven Central, but under my personal dev.travisbrown group ID. Versioning follows the same restricted semantic versioning scheme as e.g. Cats and Circe (no binary incompatibilty within 0.x or x > 0 release series, no source incompatibility within 1.x series). In-line documentation is minimal but the README includes a fairly detailed guide to usage.
The library adopts the Scala Code of Conduct and is currently licensed under the Apache License, Version 2, but I'm open to relicensing under a BSD license (to match Simulacrum 1) or MIT (to match Cats). I am currently the only contributor, and the implementation shares no code with Simulacrum 1 (although it's clearly completely inspired by it and produces the same encoding of syntax classes and methods, etc.).
I'm not aware of any projects that have replaced Simulacrum 1 with Simulacrum Scalafix "in production", but I've been using it in Dotty cross-building branches in Cats and other libraries, where it is consistently working as a drop-in replacement for Simulacrum 1 (all tests and binary-compatibility checks pass without manual intervention).
Concretely Typelevel membership would mean moving the repository from travisbrown/simulacrum-scalafix to typelevel/simulacrum-scalafix and publishing to Maven Central under the org.typelevel group ID. I'd be happy to have merge rights given to any current Cats maintainers who are interested in helping with review.
I'm proposing incubator status, with a plan to promote the tool to full membership if we decide to go this route in Cats, but I don't think there's any particular reason it couldn't be included with full membership now.
The text was updated successfully, but these errors were encountered:
Thanks for submitting. Looks like there are no objections or questions. I've opened a PR to add it to the website.
Regarding incubator vs. full membership, it's a distinction we'd like to do away with. We have another in-flight PR to reform the way projects are listed.
If you'd like to get more eyes on this and are so inclined, we'd love to have a blog post about it.
Simulacrum Scalafix tool is an experimental reworking of Simulacrum as a set of Scalafix rules. A couple of months ago I opened a proposal advocating for this approach in Cats, and we've discussed the idea in other channels (e.g. this Gitter conversation). The primary goal of the project is to unblock Dotty cross-building for libraries that use Simulacrum 1 (since Dotty does not and probably will never support macro annotations).
Initial 0.1.0 releases of the rules and the annotations for Simulacrum 1 compatibility are currently available on Maven Central, but under my personal
dev.travisbrown
group ID. Versioning follows the same restricted semantic versioning scheme as e.g. Cats and Circe (no binary incompatibilty within 0.x or x > 0 release series, no source incompatibility within 1.x series). In-line documentation is minimal but the README includes a fairly detailed guide to usage.The library adopts the Scala Code of Conduct and is currently licensed under the Apache License, Version 2, but I'm open to relicensing under a BSD license (to match Simulacrum 1) or MIT (to match Cats). I am currently the only contributor, and the implementation shares no code with Simulacrum 1 (although it's clearly completely inspired by it and produces the same encoding of syntax classes and methods, etc.).
I'm not aware of any projects that have replaced Simulacrum 1 with Simulacrum Scalafix "in production", but I've been using it in Dotty cross-building branches in Cats and other libraries, where it is consistently working as a drop-in replacement for Simulacrum 1 (all tests and binary-compatibility checks pass without manual intervention).
Concretely Typelevel membership would mean moving the repository from
travisbrown/simulacrum-scalafix
totypelevel/simulacrum-scalafix
and publishing to Maven Central under theorg.typelevel
group ID. I'd be happy to have merge rights given to any current Cats maintainers who are interested in helping with review.I'm proposing incubator status, with a plan to promote the tool to full membership if we decide to go this route in Cats, but I don't think there's any particular reason it couldn't be included with full membership now.
The text was updated successfully, but these errors were encountered: