Skip to content

Commit

Permalink
deps: update all sorts of stuff
Browse files Browse the repository at this point in the history
This pr goes through and makes the various updates:
  - Bumps mill to the latest 0.10.5
  - Bumps to the latest Scala versions for 2 and latest 3.1.x version
  - Drops 0.x support for ScalaJS
  - Move Scala native to 0.4.x
  - Adds in dependabot
  - Starts to cross test on 8 and 17
  - Updates checkout and java actions
  • Loading branch information
ckipp01 committed Jul 4, 2022
1 parent 2fc21c2 commit fe8f535
Show file tree
Hide file tree
Showing 5 changed files with 45 additions and 29 deletions.
7 changes: 7 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
version: 2
updates:

- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "monthly"
23 changes: 15 additions & 8 deletions .github/workflows/actions.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,22 +13,29 @@ on:
jobs:
test:
runs-on: ubuntu-latest
strategy:
matrix:
java: ['8', '17']
steps:
- uses: actions/checkout@v2
- uses: actions/setup-java@v1
- uses: actions/checkout@v3
- uses: actions/setup-java@v3
with:
java-version: 8
distribution: 'temurin'
java-version: ${{ matrix.java }}
- name: Run tests
run: ./mill -i all __.publishArtifacts __.test

check-binary-compatibility:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
with:
fetch-depth: 0
- uses: actions/setup-java@v1
- uses: actions/setup-java@v3
with:
distribution: 'temurin'
java-version: 8

- name: Check Binary Compatibility
run: ./mill -i __.mimaReportBinaryIssues

Expand All @@ -45,9 +52,10 @@ jobs:
LC_MESSAGES: "en_US.UTF-8"
LC_ALL: "en_US.UTF-8"
steps:
- uses: actions/checkout@v2
- uses: actions/setup-java@v1
- uses: actions/checkout@v3
- uses: actions/setup-java@v3
with:
distribution: 'temurin'
java-version: 8
- name: Publish to Maven Central
run: |
Expand All @@ -72,5 +80,4 @@ jobs:
with:
tag_name: ${{ github.ref }}
release_name: ${{ github.ref }}
body:
draft: false
1 change: 1 addition & 0 deletions .mill-version
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
0.10.5
41 changes: 21 additions & 20 deletions build.sc
Original file line number Diff line number Diff line change
@@ -1,41 +1,42 @@
import mill._, scalalib._, scalajslib._, scalanativelib._, publish._
import $ivy.`de.tototec::de.tobiasroeser.mill.vcs.version::0.1.4`
import de.tobiasroeser.mill.vcs.version.VcsVersion
import $ivy.`com.github.lolgab::mill-mima::0.0.9`
import $ivy.`com.github.lolgab::mill-mima::0.0.10`
import com.github.lolgab.mill.mima._
import mill.scalalib.api.Util.isScala3

val dottyCustomVersion = sys.props.get("dottyVersion")
val communityBuildDottyVersion = sys.props.get("dottyVersion").toList

val scala211 = "2.11.12"
val scala212 = "2.12.13"
val scala213 = "2.13.4"
val scala30 = "3.0.0"
val scala31 = "3.1.1"
val scala212 = "2.12.16"
val scala213 = "2.13.8"
val scala3 = "3.1.3"

val scala2VersionsAndDotty = scala213 :: scala212 :: scala211 :: dottyCustomVersion.toList
val scalaVersions = scala3 :: scala213 :: scala212 :: scala211 :: communityBuildDottyVersion

val scalaJSVersions = for {
scalaV <- scala30 :: scala2VersionsAndDotty
scalaJSV <- Seq("0.6.33", "1.5.1")
if scalaV.startsWith("2.") || scalaJSV.startsWith("1.")
} yield (scalaV, scalaJSV)
val scalaJSVersions = scalaVersions.map((_, "1.10.1"))
val scalaNativeVersions = scalaVersions.map((_, "0.4.5"))

val scalaNativeVersions = for {
scalaV <- scala31 :: scala2VersionsAndDotty
scalaNativeV <- Seq("0.4.3")
} yield (scalaV, scalaNativeV)
trait MimaCheck extends Mima {
def mimaPreviousVersions = VcsVersion.vcsState().lastTag.toSeq
}

trait GenyPublishModule extends PublishModule with Mima {
trait GenyPublishModule extends PublishModule with MimaCheck {
def artifactName = "geny"

def publishVersion = VcsVersion.vcsState().format()

def mimaPreviousVersions = VcsVersion.vcsState().lastTag.toSeq
def crossScalaVersion: String

// Temporary until the next version of Mima gets released with
// https://github.com/lightbend/mima/issues/693 included in the release.
def mimaPreviousArtifacts =
if(isScala3(crossScalaVersion)) Agg.empty[Dep] else super.mimaPreviousArtifacts()

def pomSettings = PomSettings(
description = artifactName(),
organization = "com.lihaoyi",
url = "https://github.com/lihaoyi/geny",
url = "https://github.com/com-lihaoyi/geny",
licenses = Seq(License.MIT),
versionControl = VersionControl.github(owner = "com-lihaoyi", repo = "geny"),
developers = Seq(
Expand All @@ -54,7 +55,7 @@ trait CommonTestModule extends ScalaModule with TestModule.Utest {
}

object geny extends Module {
object jvm extends Cross[JvmGenyModule](scala30 :: scala2VersionsAndDotty: _*)
object jvm extends Cross[JvmGenyModule](scalaVersions: _*)
class JvmGenyModule(val crossScalaVersion: String)
extends Common with ScalaModule with GenyPublishModule
{
Expand Down
2 changes: 1 addition & 1 deletion mill
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
# This is a wrapper script, that automatically download mill from GitHub release pages
# You can give the required mill version with MILL_VERSION env variable
# If no version is given, it falls back to the value of DEFAULT_MILL_VERSION
DEFAULT_MILL_VERSION=0.10.0
DEFAULT_MILL_VERSION=0.10.5

set -e

Expand Down

0 comments on commit fe8f535

Please sign in to comment.