Skip to content

Commit

Permalink
deps: update all sorts of stuff (#47)
Browse files Browse the repository at this point in the history
* deps: update all sorts of stuff

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

* dep: bump utest to 0.8.0
  • Loading branch information
ckipp01 committed Jul 9, 2022
1 parent febfefb commit 996f24b
Show file tree
Hide file tree
Showing 5 changed files with 43 additions and 28 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"
22 changes: 14 additions & 8 deletions .github/workflows/actions.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,21 +9,27 @@ 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 @@ -41,9 +47,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 @@ -68,5 +75,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
39 changes: 20 additions & 19 deletions build.sc
Original file line number Diff line number Diff line change
@@ -1,37 +1,38 @@
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 dottyVersions = sys.props.get("dottyVersion").toList
val dottyCommunityBuildVersion = sys.props.get("dottyVersion").toList

val scala2VersionsAndDotty = "2.12.13" :: "2.13.4" :: "2.11.12" :: dottyVersions
val scala30 = "3.0.2"
val scala31 = "3.1.1"
val scalaVersions =
"2.12.16" :: "2.13.8" :: "2.11.12" :: "3.1.3" :: dottyCommunityBuildVersion

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 FansiModule extends PublishModule with Mima {
trait FansiModule extends PublishModule with MimaCheck {
def artifactName = "fansi"

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/Fansi",
url = "https://github.com/com-lihaoyi/Fansi",
licenses = Seq(License.MIT),
versionControl = VersionControl.github(owner = "com-lihaoyi", repo = "fansi"),
developers = Seq(
Expand All @@ -57,7 +58,7 @@ trait FansiMainModule extends CrossScalaModule {

trait FansiTestModule extends ScalaModule with TestModule.Utest {
def crossScalaVersion: String
def ivyDeps = Agg(ivy"com.lihaoyi::utest::0.7.11")
def ivyDeps = Agg(ivy"com.lihaoyi::utest::0.8.0")
def offset: os.RelPath = os.rel
def millSourcePath = super.millSourcePath / os.up

Expand All @@ -75,7 +76,7 @@ trait FansiTestModule extends ScalaModule with TestModule.Utest {
}

object fansi extends Module {
object jvm extends Cross[JvmFansiModule](scala30 :: scala2VersionsAndDotty:_*)
object jvm extends Cross[JvmFansiModule](scalaVersions:_*)
class JvmFansiModule(val crossScalaVersion: String)
extends FansiMainModule with ScalaModule with FansiModule {
object test extends Tests with FansiTestModule{
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-35-11bc3c
DEFAULT_MILL_VERSION=0.10.5

set -e

Expand Down

0 comments on commit 996f24b

Please sign in to comment.