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

Scala 3.0.0 #359

Merged
merged 1 commit into from
May 13, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 3 additions & 6 deletions build.sbt
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,8 @@ def previousVersion = "0.7.0"
def scala213 = "2.13.4"
def scala212 = "2.12.13"
def scala211 = "2.11.12"
def scala3Stable = "3.0.0-RC3"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's leave RC3 for a while if possible.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do you think it's worth it to keep supporting RCs when a stable is out? I was always under the impression that we would drop everything priori after the stable is out.

Is this for Metals support?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

One thing we could do is to drop the support, but backpublish 3.0.0 for 0.7.25. So we the next release would drop RC3, but in the meantime we can keep using 0.7.25 for both 3.0.0 and 3.0.0-RC3

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We can work around it in Metals for sure, just last time we dropped to one version there was a bit of a backlash, since people would need to update munit and Scala version at the same time.

Copy link
Member Author

@gabro gabro May 11, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Last time I think @djspiewak had some opinion about this. Maybe also @larsrh can chime in?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That sounds fine. I generally avoid backpublishing since it requires manual local steps that’s easy to mess up compared to automated CI releases. It’s a bummer because backpublishing is very user friendly.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  1. Yes, please keep two versions, it makes upgrading easier.
  2. I try to backpublish wherever I can (at least ScalaCheck and Discipline). Given the choice between "harder for me" and "harder for users", I pick "harder for me" 😉

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'll try backpublishing. I've done it quite a few times in the past week for some internal projects, so I'm more confident than I usually would be in doing so :)

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If that works, I could backpublish all the way to Cats <3

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

so, I've made a mistake backpublishing (feeling too confident, I knew it!) plus it turns out that backpublishing other typelevel libraries would be hard (due to old sbt-dotty versions), so I've restored RC3 support and I'll merge this and cut 0.7.26

def scala3Previous = List("3.0.0-RC2")
def scala3Stable = "3.0.0"
def scala3Previous = List("3.0.0-RC3")
def junitVersion = "4.13.2"
def gcp = "com.google.cloud" % "google-cloud-storage" % "1.113.16"
inThisBuild(
Expand Down Expand Up @@ -305,10 +305,7 @@ lazy val docs = project
(ThisBuild / baseDirectory).value / "website" / "target" / "docs",
mdocExtraArguments := List("--no-link-hygiene"),
mdocVariables := Map(
"VERSION" -> version.value.replaceFirst("\\+.*", ""),
"SCALA3_PREVIOUS_VERSION" -> scala3Stable,
"SCALA3_STABLE_VERSION" -> scala3Previous.head,
"SUPPORTED_SCALA_VERSIONS" -> allScalaVersions.mkString(", ")
"VERSION" -> version.value.replaceFirst("\\+.*", "")
),
fork := false
)
Expand Down
13 changes: 6 additions & 7 deletions docs/getting-started.md
Original file line number Diff line number Diff line change
Expand Up @@ -69,13 +69,12 @@ object test extends Tests {
}
```

| Scala Version | JVM | Scala.js (0.6.x) | Scala.js (1.x) | Native (0.4.x) |
| ------------------------- | :-: | :--------------: | :------------: | :------------: |
| 2.11.x || ✅ until 0.7.16 |||
| 2.12.x || ✅ until 0.7.16 |||
| 2.13.x || ✅ until 0.7.16 |||
| @SCALA3_PREVIOUS_VERSION@ || n/a || n/a |
| @SCALA3_STABLE_VERSION@ || n/a || n/a |
| Scala Version | JVM | Scala.js (0.6.x) | Scala.js (1.x) | Native (0.4.x) |
| ------------- | :-: | :--------------: | :------------: | :------------: |
| 2.11.x || ✅ until 0.7.16 |||
| 2.12.x || ✅ until 0.7.16 |||
| 2.13.x || ✅ until 0.7.16 |||
| 3.0.x || n/a || n/a |

Next, write a test suite.

Expand Down