From 57e27215a0c546d7f0d55f53c5e58862d4823e2b Mon Sep 17 00:00:00 2001 From: Tom Grigg Date: Wed, 2 Dec 2020 09:01:48 -0800 Subject: [PATCH 1/9] community build: Add discipline This is a dependency of cats --- .gitmodules | 3 +++ community-build/community-projects/discipline | 1 + .../src/scala/dotty/communitybuild/projects.scala | 10 ++++++++++ .../dotty/communitybuild/CommunityBuildTest.scala | 1 + 4 files changed, 15 insertions(+) create mode 160000 community-build/community-projects/discipline diff --git a/.gitmodules b/.gitmodules index 304a1e045965..868acf465c0c 100644 --- a/.gitmodules +++ b/.gitmodules @@ -120,3 +120,6 @@ [submodule "community-build/community-projects/verify"] path = community-build/community-projects/verify url = https://github.com/dotty-staging/nanotest-strawman.git +[submodule "community-build/community-projects/discipline"] + path = community-build/community-projects/discipline + url = https://github.com/dotty-staging/discipline.git diff --git a/community-build/community-projects/discipline b/community-build/community-projects/discipline new file mode 160000 index 000000000000..4e3f9678c847 --- /dev/null +++ b/community-build/community-projects/discipline @@ -0,0 +1 @@ +Subproject commit 4e3f9678c84702b079209ae9928d9b6c884a7514 diff --git a/community-build/src/scala/dotty/communitybuild/projects.scala b/community-build/src/scala/dotty/communitybuild/projects.scala index 1c252d5165eb..a0d9bcebb390 100644 --- a/community-build/src/scala/dotty/communitybuild/projects.scala +++ b/community-build/src/scala/dotty/communitybuild/projects.scala @@ -34,6 +34,7 @@ def exec(projectDir: Path, binary: String, arguments: String*): Int = * projects to output the version number to a file. */ object Versions: + val discipline = "1.1.3-SNAPSHOT" val scalacheck = "1.15.2-SNAPSHOT" val scalatest = "3.2.3" val munit = "0.7.19+DOTTY-SNAPSHOT" @@ -114,6 +115,8 @@ final case class SbtCommunityProject( s""""org.scalameta" %% "junit-interface" % "${Versions.munit}"""", s""""org.scodec" %% "scodec-bits" % "${Versions.scodecBits}"""", s""""org.scodec" %% "scodec-bits_sjs1" % "${Versions.scodecBits}"""", + s""""org.typelevel" %% "discipline-core" % "${Versions.discipline}"""", + s""""org.typelevel" %% "discipline-core_sjs1" % "${Versions.discipline}"""", ) private val baseCommand = @@ -455,6 +458,13 @@ object projects: sbtDocCommand = "verifyJVM/doc", ) + lazy val discipline = SbtCommunityProject( + project = "discipline", + sbtTestCommand = "coreJVM/test;coreJS/test", + sbtPublishCommand = "set every credentials := Nil;coreJVM/publishLocal;coreJS/publishLocal", + dependencies = List(scalacheck) + ) + end projects def allProjects = projects.fields.of[CommunityProject].sortBy(_.project) diff --git a/community-build/test/scala/dotty/communitybuild/CommunityBuildTest.scala b/community-build/test/scala/dotty/communitybuild/CommunityBuildTest.scala index 46c790d6db0d..cd84b8a3e5f1 100644 --- a/community-build/test/scala/dotty/communitybuild/CommunityBuildTest.scala +++ b/community-build/test/scala/dotty/communitybuild/CommunityBuildTest.scala @@ -105,6 +105,7 @@ class CommunityBuildTestB extends CommunityBuildTest: // temporarily disabled due to lampepfl/dotty#10478 //@Test def catsEffect2 = projects.catsEffect2.run() //@Test def catsEffect3 = projects.catsEffect3.run() + @Test def discipline = projects.discipline.run() // Temporarily disabled until problem discovered in comments to #9449 is fixed // @Test def dottyCpsAsync = projects.dottyCpsAsync.run() @Test def effpi = projects.effpi.run() From 90b2a836515d0fb9e26d8582702fe2ebcd87e265 Mon Sep 17 00:00:00 2001 From: Tom Grigg Date: Thu, 3 Dec 2020 12:37:26 -0800 Subject: [PATCH 2/9] community build: Add discipline-munit This is a dependency of cats and cats-effect-2 --- .gitmodules | 3 +++ community-build/community-projects/discipline-munit | 1 + .../src/scala/dotty/communitybuild/projects.scala | 10 ++++++++++ .../dotty/communitybuild/CommunityBuildTest.scala | 1 + 4 files changed, 15 insertions(+) create mode 160000 community-build/community-projects/discipline-munit diff --git a/.gitmodules b/.gitmodules index 868acf465c0c..f5fceeb3cb50 100644 --- a/.gitmodules +++ b/.gitmodules @@ -123,3 +123,6 @@ [submodule "community-build/community-projects/discipline"] path = community-build/community-projects/discipline url = https://github.com/dotty-staging/discipline.git +[submodule "community-build/community-projects/discipline-munit"] + path = community-build/community-projects/discipline-munit + url = https://github.com/dotty-staging/discipline-munit.git diff --git a/community-build/community-projects/discipline-munit b/community-build/community-projects/discipline-munit new file mode 160000 index 000000000000..e0a3aee65b85 --- /dev/null +++ b/community-build/community-projects/discipline-munit @@ -0,0 +1 @@ +Subproject commit e0a3aee65b85bf8d6bb53037e4bc33ebfdeaedff diff --git a/community-build/src/scala/dotty/communitybuild/projects.scala b/community-build/src/scala/dotty/communitybuild/projects.scala index a0d9bcebb390..8e5178138928 100644 --- a/community-build/src/scala/dotty/communitybuild/projects.scala +++ b/community-build/src/scala/dotty/communitybuild/projects.scala @@ -35,6 +35,7 @@ def exec(projectDir: Path, binary: String, arguments: String*): Int = */ object Versions: val discipline = "1.1.3-SNAPSHOT" + val disciplineMunit = "1.0.3+DOTTY-SNAPSHOT" val scalacheck = "1.15.2-SNAPSHOT" val scalatest = "3.2.3" val munit = "0.7.19+DOTTY-SNAPSHOT" @@ -117,6 +118,8 @@ final case class SbtCommunityProject( s""""org.scodec" %% "scodec-bits_sjs1" % "${Versions.scodecBits}"""", s""""org.typelevel" %% "discipline-core" % "${Versions.discipline}"""", s""""org.typelevel" %% "discipline-core_sjs1" % "${Versions.discipline}"""", + s""""org.typelevel" %% "discipline-munit" % "${Versions.disciplineMunit}"""", + s""""org.typelevel" %% "discipline-munit_sjs1" % "${Versions.disciplineMunit}"""", ) private val baseCommand = @@ -465,6 +468,13 @@ object projects: dependencies = List(scalacheck) ) + lazy val disciplineMunit = SbtCommunityProject( + project = "discipline-munit", + sbtTestCommand = "test", + sbtPublishCommand = s"""set every version := "${Versions.disciplineMunit}";coreJVM/publishLocal;coreJS/publishLocal""", + dependencies = List(discipline, munit) + ) + end projects def allProjects = projects.fields.of[CommunityProject].sortBy(_.project) diff --git a/community-build/test/scala/dotty/communitybuild/CommunityBuildTest.scala b/community-build/test/scala/dotty/communitybuild/CommunityBuildTest.scala index cd84b8a3e5f1..96d4e38f1772 100644 --- a/community-build/test/scala/dotty/communitybuild/CommunityBuildTest.scala +++ b/community-build/test/scala/dotty/communitybuild/CommunityBuildTest.scala @@ -106,6 +106,7 @@ class CommunityBuildTestB extends CommunityBuildTest: //@Test def catsEffect2 = projects.catsEffect2.run() //@Test def catsEffect3 = projects.catsEffect3.run() @Test def discipline = projects.discipline.run() + @Test def disciplineMunit = projects.disciplineMunit.run() // Temporarily disabled until problem discovered in comments to #9449 is fixed // @Test def dottyCpsAsync = projects.dottyCpsAsync.run() @Test def effpi = projects.effpi.run() From ebcb9da3dfc32c7f4cf2012cd7c17c7661c7ef3f Mon Sep 17 00:00:00 2001 From: Tom Grigg Date: Wed, 2 Dec 2020 11:12:00 -0800 Subject: [PATCH 3/9] community build: Add discipline-specs2 This is a dependency of cats-effect-3 --- .gitmodules | 3 +++ community-build/community-projects/discipline-specs2 | 1 + .../src/scala/dotty/communitybuild/projects.scala | 10 ++++++++++ .../dotty/communitybuild/CommunityBuildTest.scala | 1 + 4 files changed, 15 insertions(+) create mode 160000 community-build/community-projects/discipline-specs2 diff --git a/.gitmodules b/.gitmodules index f5fceeb3cb50..c59c8612d3c3 100644 --- a/.gitmodules +++ b/.gitmodules @@ -126,3 +126,6 @@ [submodule "community-build/community-projects/discipline-munit"] path = community-build/community-projects/discipline-munit url = https://github.com/dotty-staging/discipline-munit.git +[submodule "community-build/community-projects/discipline-specs2"] + path = community-build/community-projects/discipline-specs2 + url = https://github.com/dotty-staging/discipline-specs2.git diff --git a/community-build/community-projects/discipline-specs2 b/community-build/community-projects/discipline-specs2 new file mode 160000 index 000000000000..b2fa931a44ee --- /dev/null +++ b/community-build/community-projects/discipline-specs2 @@ -0,0 +1 @@ +Subproject commit b2fa931a44eeb6a6afa1343e57f963e73aafff59 diff --git a/community-build/src/scala/dotty/communitybuild/projects.scala b/community-build/src/scala/dotty/communitybuild/projects.scala index 8e5178138928..d82249cabfc4 100644 --- a/community-build/src/scala/dotty/communitybuild/projects.scala +++ b/community-build/src/scala/dotty/communitybuild/projects.scala @@ -36,6 +36,7 @@ def exec(projectDir: Path, binary: String, arguments: String*): Int = object Versions: val discipline = "1.1.3-SNAPSHOT" val disciplineMunit = "1.0.3+DOTTY-SNAPSHOT" + val disciplineSpecs2 = "1.1.3-SNAPSHOT" val scalacheck = "1.15.2-SNAPSHOT" val scalatest = "3.2.3" val munit = "0.7.19+DOTTY-SNAPSHOT" @@ -120,6 +121,8 @@ final case class SbtCommunityProject( s""""org.typelevel" %% "discipline-core_sjs1" % "${Versions.discipline}"""", s""""org.typelevel" %% "discipline-munit" % "${Versions.disciplineMunit}"""", s""""org.typelevel" %% "discipline-munit_sjs1" % "${Versions.disciplineMunit}"""", + s""""org.typelevel" %% "discipline-specs2" % "${Versions.disciplineSpecs2}"""", + s""""org.typelevel" %% "discipline-specs2_sjs1" % "${Versions.disciplineSpecs2}"""", ) private val baseCommand = @@ -475,6 +478,13 @@ object projects: dependencies = List(discipline, munit) ) + lazy val disciplineSpecs2 = SbtCommunityProject( + project = "discipline-specs2", + sbtTestCommand = "test", + sbtPublishCommand = "coreJVM/publishLocal;coreJS/publishLocal", + dependencies = List(discipline) + ) + end projects def allProjects = projects.fields.of[CommunityProject].sortBy(_.project) diff --git a/community-build/test/scala/dotty/communitybuild/CommunityBuildTest.scala b/community-build/test/scala/dotty/communitybuild/CommunityBuildTest.scala index 96d4e38f1772..7a225b2dd1b2 100644 --- a/community-build/test/scala/dotty/communitybuild/CommunityBuildTest.scala +++ b/community-build/test/scala/dotty/communitybuild/CommunityBuildTest.scala @@ -107,6 +107,7 @@ class CommunityBuildTestB extends CommunityBuildTest: //@Test def catsEffect3 = projects.catsEffect3.run() @Test def discipline = projects.discipline.run() @Test def disciplineMunit = projects.disciplineMunit.run() + @Test def disciplineSpecs2 = projects.disciplineSpecs2.run() // Temporarily disabled until problem discovered in comments to #9449 is fixed // @Test def dottyCpsAsync = projects.dottyCpsAsync.run() @Test def effpi = projects.effpi.run() From 8e12db9524d0f09ed13c602f2916f97d7e214007 Mon Sep 17 00:00:00 2001 From: Tom Grigg Date: Wed, 2 Dec 2020 13:08:30 -0800 Subject: [PATCH 4/9] community build: Add simulacrum-scalafix This is a dependency of cats --- .gitmodules | 3 +++ community-build/community-projects/simulacrum-scalafix | 1 + .../src/scala/dotty/communitybuild/projects.scala | 9 +++++++++ .../scala/dotty/communitybuild/CommunityBuildTest.scala | 1 + 4 files changed, 14 insertions(+) create mode 160000 community-build/community-projects/simulacrum-scalafix diff --git a/.gitmodules b/.gitmodules index c59c8612d3c3..c1fd2d5fbd19 100644 --- a/.gitmodules +++ b/.gitmodules @@ -129,3 +129,6 @@ [submodule "community-build/community-projects/discipline-specs2"] path = community-build/community-projects/discipline-specs2 url = https://github.com/dotty-staging/discipline-specs2.git +[submodule "community-build/community-projects/simulacrum-scalafix"] + path = community-build/community-projects/simulacrum-scalafix + url = https://github.com/dotty-staging/simulacrum-scalafix.git diff --git a/community-build/community-projects/simulacrum-scalafix b/community-build/community-projects/simulacrum-scalafix new file mode 160000 index 000000000000..75f7e10d30fb --- /dev/null +++ b/community-build/community-projects/simulacrum-scalafix @@ -0,0 +1 @@ +Subproject commit 75f7e10d30fb1b848b7adaf2a026320ee548b56a diff --git a/community-build/src/scala/dotty/communitybuild/projects.scala b/community-build/src/scala/dotty/communitybuild/projects.scala index d82249cabfc4..9ff625e9d3b3 100644 --- a/community-build/src/scala/dotty/communitybuild/projects.scala +++ b/community-build/src/scala/dotty/communitybuild/projects.scala @@ -41,6 +41,7 @@ object Versions: val scalatest = "3.2.3" val munit = "0.7.19+DOTTY-SNAPSHOT" val scodecBits = "1.1+DOTTY-SNAPSHOT" + val simulacrumScalafix = "0.5.1-SNAPSHOT" sealed trait CommunityProject: private var published = false @@ -123,6 +124,8 @@ final case class SbtCommunityProject( s""""org.typelevel" %% "discipline-munit_sjs1" % "${Versions.disciplineMunit}"""", s""""org.typelevel" %% "discipline-specs2" % "${Versions.disciplineSpecs2}"""", s""""org.typelevel" %% "discipline-specs2_sjs1" % "${Versions.disciplineSpecs2}"""", + s""""org.typelevel" %% "simulacrum-scalafix-annotations" % "${Versions.simulacrumScalafix}"""", + s""""org.typelevel" %% "simulacrum-scalafix-annotations_sjs1" % "${Versions.simulacrumScalafix}"""", ) private val baseCommand = @@ -485,6 +488,12 @@ object projects: dependencies = List(discipline) ) + lazy val simulacrumScalafixAnnotations = SbtCommunityProject( + project = "simulacrum-scalafix", + sbtTestCommand = "annotation/test:compile;annotationJS/test:compile", + sbtPublishCommand = "annotation/publishLocal;annotationJS/publishLocal", + ) + end projects def allProjects = projects.fields.of[CommunityProject].sortBy(_.project) diff --git a/community-build/test/scala/dotty/communitybuild/CommunityBuildTest.scala b/community-build/test/scala/dotty/communitybuild/CommunityBuildTest.scala index 7a225b2dd1b2..c64505dd6d22 100644 --- a/community-build/test/scala/dotty/communitybuild/CommunityBuildTest.scala +++ b/community-build/test/scala/dotty/communitybuild/CommunityBuildTest.scala @@ -127,6 +127,7 @@ class CommunityBuildTestB extends CommunityBuildTest: @Test def scas = projects.scas.run() @Test def sconfig = projects.sconfig.run() @Test def shapeless = projects.shapeless.run() + @Test def simulacrumScalafixAnnotations = projects.simulacrumScalafixAnnotations.run() @Test def stdLib213 = projects.stdLib213.run() @Test def verify = projects.verify.run() @Test def xmlInterpolator = projects.xmlInterpolator.run() From bcf019748353d250c0f20f3cd58eee387519d582 Mon Sep 17 00:00:00 2001 From: Tom Grigg Date: Wed, 2 Dec 2020 12:36:11 -0800 Subject: [PATCH 5/9] community build: Add cats Force fast optimization for Scala.js tests to avoid GC thrashing. --- .gitmodules | 3 +++ community-build/community-projects/cats | 1 + .../scala/dotty/communitybuild/projects.scala | 20 +++++++++++++++++++ .../communitybuild/CommunityBuildTest.scala | 1 + 4 files changed, 25 insertions(+) create mode 160000 community-build/community-projects/cats diff --git a/.gitmodules b/.gitmodules index c1fd2d5fbd19..af962482df00 100644 --- a/.gitmodules +++ b/.gitmodules @@ -132,3 +132,6 @@ [submodule "community-build/community-projects/simulacrum-scalafix"] path = community-build/community-projects/simulacrum-scalafix url = https://github.com/dotty-staging/simulacrum-scalafix.git +[submodule "community-build/community-projects/cats"] + path = community-build/community-projects/cats + url = https://github.com/dotty-staging/cats.git diff --git a/community-build/community-projects/cats b/community-build/community-projects/cats new file mode 160000 index 000000000000..2c27eb8b6fe5 --- /dev/null +++ b/community-build/community-projects/cats @@ -0,0 +1 @@ +Subproject commit 2c27eb8b6fe567d5a7adcb8433646d6f718d3e94 diff --git a/community-build/src/scala/dotty/communitybuild/projects.scala b/community-build/src/scala/dotty/communitybuild/projects.scala index 9ff625e9d3b3..b1f40fdc7b9f 100644 --- a/community-build/src/scala/dotty/communitybuild/projects.scala +++ b/community-build/src/scala/dotty/communitybuild/projects.scala @@ -34,6 +34,7 @@ def exec(projectDir: Path, binary: String, arguments: String*): Int = * projects to output the version number to a file. */ object Versions: + val cats = "2.3.1-SNAPSHOT" val discipline = "1.1.3-SNAPSHOT" val disciplineMunit = "1.0.3+DOTTY-SNAPSHOT" val disciplineSpecs2 = "1.1.3-SNAPSHOT" @@ -126,6 +127,18 @@ final case class SbtCommunityProject( s""""org.typelevel" %% "discipline-specs2_sjs1" % "${Versions.disciplineSpecs2}"""", s""""org.typelevel" %% "simulacrum-scalafix-annotations" % "${Versions.simulacrumScalafix}"""", s""""org.typelevel" %% "simulacrum-scalafix-annotations_sjs1" % "${Versions.simulacrumScalafix}"""", + s""""org.typelevel" %% "cats-core" % "${Versions.cats}"""", + s""""org.typelevel" %% "cats-core_sjs1" % "${Versions.cats}"""", + s""""org.typelevel" %% "cats-free" % "${Versions.cats}"""", + s""""org.typelevel" %% "cats-free_sjs1" % "${Versions.cats}"""", + s""""org.typelevel" %% "cats-kernel" % "${Versions.cats}"""", + s""""org.typelevel" %% "cats-kernel_sjs1" % "${Versions.cats}"""", + s""""org.typelevel" %% "cats-kernel-laws" % "${Versions.cats}"""", + s""""org.typelevel" %% "cats-kernel-laws_sjs1" % "${Versions.cats}"""", + s""""org.typelevel" %% "cats-laws" % "${Versions.cats}"""", + s""""org.typelevel" %% "cats-laws_sjs1" % "${Versions.cats}"""", + s""""org.typelevel" %% "cats-testkit" % "${Versions.cats}"""", + s""""org.typelevel" %% "cats-testkit_sjs1" % "${Versions.cats}"""", ) private val baseCommand = @@ -494,6 +507,13 @@ object projects: sbtPublishCommand = "annotation/publishLocal;annotationJS/publishLocal", ) + lazy val cats = SbtCommunityProject( + project = "cats", + sbtTestCommand = "set scalaJSStage in Global := FastOptStage;buildJVM;validateAllJS", + sbtPublishCommand = "catsJVM/publishLocal;catsJS/publishLocal", + dependencies = List(discipline, disciplineMunit, scalacheck, simulacrumScalafixAnnotations) + ) + end projects def allProjects = projects.fields.of[CommunityProject].sortBy(_.project) diff --git a/community-build/test/scala/dotty/communitybuild/CommunityBuildTest.scala b/community-build/test/scala/dotty/communitybuild/CommunityBuildTest.scala index c64505dd6d22..5211db06e36a 100644 --- a/community-build/test/scala/dotty/communitybuild/CommunityBuildTest.scala +++ b/community-build/test/scala/dotty/communitybuild/CommunityBuildTest.scala @@ -105,6 +105,7 @@ class CommunityBuildTestB extends CommunityBuildTest: // temporarily disabled due to lampepfl/dotty#10478 //@Test def catsEffect2 = projects.catsEffect2.run() //@Test def catsEffect3 = projects.catsEffect3.run() + @Test def cats = projects.cats.run() @Test def discipline = projects.discipline.run() @Test def disciplineMunit = projects.disciplineMunit.run() @Test def disciplineSpecs2 = projects.disciplineSpecs2.run() From 4c9b8e4ec6b25a7876baa6da01bf0f42fb65b23e Mon Sep 17 00:00:00 2001 From: Tom Grigg Date: Wed, 2 Dec 2020 16:01:35 -0800 Subject: [PATCH 6/9] community build: Add cats-mtl This is a transitive dependency of cats-effect-3 --- .gitmodules | 3 +++ community-build/community-projects/cats-mtl | 1 + .../src/scala/dotty/communitybuild/projects.scala | 12 ++++++++++++ .../dotty/communitybuild/CommunityBuildTest.scala | 1 + 4 files changed, 17 insertions(+) create mode 160000 community-build/community-projects/cats-mtl diff --git a/.gitmodules b/.gitmodules index af962482df00..258426d2fe92 100644 --- a/.gitmodules +++ b/.gitmodules @@ -135,3 +135,6 @@ [submodule "community-build/community-projects/cats"] path = community-build/community-projects/cats url = https://github.com/dotty-staging/cats.git +[submodule "community-build/community-projects/cats-mtl"] + path = community-build/community-projects/cats-mtl + url = https://github.com/dotty-staging/cats-mtl.git diff --git a/community-build/community-projects/cats-mtl b/community-build/community-projects/cats-mtl new file mode 160000 index 000000000000..5b5dd285d42a --- /dev/null +++ b/community-build/community-projects/cats-mtl @@ -0,0 +1 @@ +Subproject commit 5b5dd285d42a275ab4123fdac1003b10aa1b73f6 diff --git a/community-build/src/scala/dotty/communitybuild/projects.scala b/community-build/src/scala/dotty/communitybuild/projects.scala index b1f40fdc7b9f..82aa047055f9 100644 --- a/community-build/src/scala/dotty/communitybuild/projects.scala +++ b/community-build/src/scala/dotty/communitybuild/projects.scala @@ -35,6 +35,7 @@ def exec(projectDir: Path, binary: String, arguments: String*): Int = */ object Versions: val cats = "2.3.1-SNAPSHOT" + val catsMtl = "1.1+DOTTY-SNAPSHOT" val discipline = "1.1.3-SNAPSHOT" val disciplineMunit = "1.0.3+DOTTY-SNAPSHOT" val disciplineSpecs2 = "1.1.3-SNAPSHOT" @@ -139,6 +140,10 @@ final case class SbtCommunityProject( s""""org.typelevel" %% "cats-laws_sjs1" % "${Versions.cats}"""", s""""org.typelevel" %% "cats-testkit" % "${Versions.cats}"""", s""""org.typelevel" %% "cats-testkit_sjs1" % "${Versions.cats}"""", + s""""org.typelevel" %% "cats-mtl" % "${Versions.catsMtl}"""", + s""""org.typelevel" %% "cats-mtl_sjs1" % "${Versions.catsMtl}"""", + s""""org.typelevel" %% "cats-mtl-laws" % "${Versions.catsMtl}"""", + s""""org.typelevel" %% "cats-mtl-laws_sjs1" % "${Versions.catsMtl}"""", ) private val baseCommand = @@ -514,6 +519,13 @@ object projects: dependencies = List(discipline, disciplineMunit, scalacheck, simulacrumScalafixAnnotations) ) + lazy val catsMtl = SbtCommunityProject( + project = "cats-mtl", + sbtTestCommand = "testsJVM/test;testsJS/test", + sbtPublishCommand = s"""set every version := "${Versions.catsMtl}";coreJVM/publishLocal;coreJS/publishLocal;lawsJVM/publishLocal;lawsJS/publishLocal""", + dependencies = List(cats, disciplineMunit) + ) + end projects def allProjects = projects.fields.of[CommunityProject].sortBy(_.project) diff --git a/community-build/test/scala/dotty/communitybuild/CommunityBuildTest.scala b/community-build/test/scala/dotty/communitybuild/CommunityBuildTest.scala index 5211db06e36a..223ab566a7c8 100644 --- a/community-build/test/scala/dotty/communitybuild/CommunityBuildTest.scala +++ b/community-build/test/scala/dotty/communitybuild/CommunityBuildTest.scala @@ -106,6 +106,7 @@ class CommunityBuildTestB extends CommunityBuildTest: //@Test def catsEffect2 = projects.catsEffect2.run() //@Test def catsEffect3 = projects.catsEffect3.run() @Test def cats = projects.cats.run() + @Test def catsMtl = projects.catsMtl.run() @Test def discipline = projects.discipline.run() @Test def disciplineMunit = projects.disciplineMunit.run() @Test def disciplineSpecs2 = projects.disciplineSpecs2.run() From 6195e2aa07dbab170a5d4232111b8134005f0e20 Mon Sep 17 00:00:00 2001 From: Tom Grigg Date: Wed, 2 Dec 2020 17:40:37 -0800 Subject: [PATCH 7/9] community build: Add coop This is a dependency of cats-effect-3 --- .gitmodules | 3 +++ community-build/community-projects/coop | 1 + .../src/scala/dotty/communitybuild/projects.scala | 10 ++++++++++ .../dotty/communitybuild/CommunityBuildTest.scala | 1 + 4 files changed, 15 insertions(+) create mode 160000 community-build/community-projects/coop diff --git a/.gitmodules b/.gitmodules index 258426d2fe92..9f0390e42408 100644 --- a/.gitmodules +++ b/.gitmodules @@ -138,3 +138,6 @@ [submodule "community-build/community-projects/cats-mtl"] path = community-build/community-projects/cats-mtl url = https://github.com/dotty-staging/cats-mtl.git +[submodule "community-build/community-projects/coop"] + path = community-build/community-projects/coop + url = https://github.com/dotty-staging/coop.git diff --git a/community-build/community-projects/coop b/community-build/community-projects/coop new file mode 160000 index 000000000000..d3bcd3622dc3 --- /dev/null +++ b/community-build/community-projects/coop @@ -0,0 +1 @@ +Subproject commit d3bcd3622dc3a1f3257e2d861d724c04ab634b81 diff --git a/community-build/src/scala/dotty/communitybuild/projects.scala b/community-build/src/scala/dotty/communitybuild/projects.scala index 82aa047055f9..2afdba96f9dc 100644 --- a/community-build/src/scala/dotty/communitybuild/projects.scala +++ b/community-build/src/scala/dotty/communitybuild/projects.scala @@ -36,6 +36,7 @@ def exec(projectDir: Path, binary: String, arguments: String*): Int = object Versions: val cats = "2.3.1-SNAPSHOT" val catsMtl = "1.1+DOTTY-SNAPSHOT" + val coop = "1.0+DOTTY-SNAPSHOT" val discipline = "1.1.3-SNAPSHOT" val disciplineMunit = "1.0.3+DOTTY-SNAPSHOT" val disciplineSpecs2 = "1.1.3-SNAPSHOT" @@ -144,6 +145,8 @@ final case class SbtCommunityProject( s""""org.typelevel" %% "cats-mtl_sjs1" % "${Versions.catsMtl}"""", s""""org.typelevel" %% "cats-mtl-laws" % "${Versions.catsMtl}"""", s""""org.typelevel" %% "cats-mtl-laws_sjs1" % "${Versions.catsMtl}"""", + s""""org.typelevel" %% "coop" % "${Versions.coop}"""", + s""""org.typelevel" %% "coop_sjs1" % "${Versions.coop}"""", ) private val baseCommand = @@ -526,6 +529,13 @@ object projects: dependencies = List(cats, disciplineMunit) ) + lazy val coop = SbtCommunityProject( + project = "coop", + sbtTestCommand = "test", + sbtPublishCommand = s"""set every version := "${Versions.coop}";coreJVM/publishLocal;coreJS/publishLocal""", + dependencies = List(cats, catsMtl) + ) + end projects def allProjects = projects.fields.of[CommunityProject].sortBy(_.project) diff --git a/community-build/test/scala/dotty/communitybuild/CommunityBuildTest.scala b/community-build/test/scala/dotty/communitybuild/CommunityBuildTest.scala index 223ab566a7c8..ef101387c512 100644 --- a/community-build/test/scala/dotty/communitybuild/CommunityBuildTest.scala +++ b/community-build/test/scala/dotty/communitybuild/CommunityBuildTest.scala @@ -107,6 +107,7 @@ class CommunityBuildTestB extends CommunityBuildTest: //@Test def catsEffect3 = projects.catsEffect3.run() @Test def cats = projects.cats.run() @Test def catsMtl = projects.catsMtl.run() + @Test def coop = projects.coop.run() @Test def discipline = projects.discipline.run() @Test def disciplineMunit = projects.disciplineMunit.run() @Test def disciplineSpecs2 = projects.disciplineSpecs2.run() From 6f641171970f0b0f0a2ca62911b805d08dcbba82 Mon Sep 17 00:00:00 2001 From: Tom Grigg Date: Thu, 3 Dec 2020 10:58:51 -0800 Subject: [PATCH 8/9] community build: Update cats-effect to latest upstream --- community-build/community-projects/cats-effect-2 | 2 +- community-build/community-projects/cats-effect-3 | 2 +- .../src/scala/dotty/communitybuild/projects.scala | 10 +++++----- .../dotty/communitybuild/CommunityBuildTest.scala | 5 ++--- 4 files changed, 9 insertions(+), 10 deletions(-) diff --git a/community-build/community-projects/cats-effect-2 b/community-build/community-projects/cats-effect-2 index 68905c4d87de..3f36df80b7b1 160000 --- a/community-build/community-projects/cats-effect-2 +++ b/community-build/community-projects/cats-effect-2 @@ -1 +1 @@ -Subproject commit 68905c4d87de0ab020caf306ea384d972fa296df +Subproject commit 3f36df80b7b1fee77a2aa10cd2b3d34083b11278 diff --git a/community-build/community-projects/cats-effect-3 b/community-build/community-projects/cats-effect-3 index e7b50ffe9dab..04155e429e23 160000 --- a/community-build/community-projects/cats-effect-3 +++ b/community-build/community-projects/cats-effect-3 @@ -1 +1 @@ -Subproject commit e7b50ffe9dabdbe5af479f4e1c9fd447e71e07f4 +Subproject commit 04155e429e230224e61235c4e4dd125419f82f7a diff --git a/community-build/src/scala/dotty/communitybuild/projects.scala b/community-build/src/scala/dotty/communitybuild/projects.scala index 2afdba96f9dc..17389b06de7e 100644 --- a/community-build/src/scala/dotty/communitybuild/projects.scala +++ b/community-build/src/scala/dotty/communitybuild/projects.scala @@ -459,15 +459,15 @@ object projects: lazy val catsEffect2 = SbtCommunityProject( project = "cats-effect-2", sbtTestCommand = "test", - // Currently is excluded from community build - // sbtDocCommand = ";coreJVM/doc ;lawsJVM/doc", + sbtDocCommand = ";coreJVM/doc ;lawsJVM/doc", + dependencies = List(cats, disciplineMunit) ) lazy val catsEffect3 = SbtCommunityProject( project = "cats-effect-3", - sbtTestCommand = "testIfRelevant", - // The problem is that testIfRelevant does not compile and project does not compile - // sbtDocCommand = ";coreJVM/doc ;lawsJVM/doc ;kernelJVM/doc", + sbtTestCommand = "test", + sbtDocCommand = ";coreJVM/doc ;lawsJVM/doc ;kernelJVM/doc", + dependencies = List(cats, coop, disciplineSpecs2, scalacheck) ) lazy val scalaParallelCollections = SbtCommunityProject( diff --git a/community-build/test/scala/dotty/communitybuild/CommunityBuildTest.scala b/community-build/test/scala/dotty/communitybuild/CommunityBuildTest.scala index ef101387c512..d097d5290643 100644 --- a/community-build/test/scala/dotty/communitybuild/CommunityBuildTest.scala +++ b/community-build/test/scala/dotty/communitybuild/CommunityBuildTest.scala @@ -102,10 +102,9 @@ end CommunityBuildTestA class CommunityBuildTestB extends CommunityBuildTest: @Test def algebra = projects.algebra.run() @Test def betterfiles = projects.betterfiles.run() - // temporarily disabled due to lampepfl/dotty#10478 - //@Test def catsEffect2 = projects.catsEffect2.run() - //@Test def catsEffect3 = projects.catsEffect3.run() @Test def cats = projects.cats.run() + @Test def catsEffect2 = projects.catsEffect2.run() + @Test def catsEffect3 = projects.catsEffect3.run() @Test def catsMtl = projects.catsMtl.run() @Test def coop = projects.coop.run() @Test def discipline = projects.discipline.run() From 386006d289ace41d769458237f20079663c04f08 Mon Sep 17 00:00:00 2001 From: Tom Grigg Date: Sat, 5 Dec 2020 16:27:13 -0800 Subject: [PATCH 9/9] community build: rebalance parts a and b for similar running times --- .../dotty/communitybuild/CommunityBuildTest.scala | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/community-build/test/scala/dotty/communitybuild/CommunityBuildTest.scala b/community-build/test/scala/dotty/communitybuild/CommunityBuildTest.scala index d097d5290643..772e25660e2e 100644 --- a/community-build/test/scala/dotty/communitybuild/CommunityBuildTest.scala +++ b/community-build/test/scala/dotty/communitybuild/CommunityBuildTest.scala @@ -82,6 +82,7 @@ end CommunityBuildTest @Category(Array(classOf[TestCategory])) class CommunityBuildTestA extends CommunityBuildTest: + @Test def endpoints4s = projects.endpoints4s.run() @Test def fansi = projects.fansi.run() @Test def fastparse = projects.fastparse.run() @Test def geny = projects.geny.run() @@ -90,12 +91,17 @@ class CommunityBuildTestA extends CommunityBuildTest: @Test def pprint = projects.pprint.run() @Test def requests = projects.requests.run() @Test def scalacheck = projects.scalacheck.run() + @Test def scalaCollectionCompat = projects.scalaCollectionCompat.run() + @Test def scalaParallelCollections = projects.scalaParallelCollections.run() @Test def scalatest = projects.scalatest.run() @Test def scalatestplusScalacheck = projects.scalatestplusScalacheck.run() + @Test def scalaz = projects.scalaz.run() @Test def sourcecode = projects.sourcecode.run() + @Test def stdLib213 = projects.stdLib213.run() @Test def ujson = projects.ujson.run() @Test def upickle = projects.upickle.run() @Test def utest = projects.utest.run() + @Test def zio = projects.zio.run() end CommunityBuildTestA @Category(Array(classOf[TestCategory])) @@ -113,27 +119,21 @@ class CommunityBuildTestB extends CommunityBuildTest: // Temporarily disabled until problem discovered in comments to #9449 is fixed // @Test def dottyCpsAsync = projects.dottyCpsAsync.run() @Test def effpi = projects.effpi.run() - @Test def endpoints4s = projects.endpoints4s.run() @Test def intent = projects.intent.run() @Test def minitest = projects.minitest.run() @Test def munit = projects.munit.run() @Test def scodec = projects.scodec.run() @Test def scodecBits = projects.scodecBits.run() @Test def scalap = projects.scalap.run() - @Test def scalaCollectionCompat = projects.scalaCollectionCompat.run() - @Test def scalaParallelCollections = projects.scalaParallelCollections.run() @Test def scalaParserCombinators = projects.scalaParserCombinators.run() @Test def ScalaPB = projects.ScalaPB.run() @Test def scalaXml = projects.scalaXml.run() - @Test def scalaz = projects.scalaz.run() @Test def scas = projects.scas.run() @Test def sconfig = projects.sconfig.run() @Test def shapeless = projects.shapeless.run() @Test def simulacrumScalafixAnnotations = projects.simulacrumScalafixAnnotations.run() - @Test def stdLib213 = projects.stdLib213.run() @Test def verify = projects.verify.run() @Test def xmlInterpolator = projects.xmlInterpolator.run() - @Test def zio = projects.zio.run() end CommunityBuildTestB class TestCategory