-
-
Notifications
You must be signed in to change notification settings - Fork 1.2k
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
new better release settings #2732
Changes from 1 commit
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -5,6 +5,12 @@ import sbtcrossproject.CrossProject | |
import sbtcrossproject.CrossPlugin.autoImport.{crossProject, CrossType} | ||
|
||
lazy val scoverageSettings = Seq( | ||
coverageEnabled := { | ||
if (priorTo2_13(scalaVersion.value)) | ||
coverageEnabled.value | ||
else | ||
false | ||
}, | ||
coverageMinimum := 60, | ||
coverageFailOnMinimum := false, | ||
coverageHighlighting := true | ||
|
@@ -26,12 +32,6 @@ lazy val commonSettings = Seq( | |
case _ => Nil | ||
} | ||
}, | ||
coverageEnabled := { | ||
if (priorTo2_13(scalaVersion.value)) | ||
coverageEnabled.value | ||
else | ||
false | ||
}, | ||
resolvers ++= Seq(Resolver.sonatypeRepo("releases"), Resolver.sonatypeRepo("snapshots")), | ||
parallelExecution in Test := false, | ||
scalacOptions in (Compile, doc) := (scalacOptions in (Compile, doc)).value.filter(_ != "-Xfatal-warnings"), | ||
|
@@ -389,8 +389,8 @@ lazy val docs = project | |
|
||
lazy val cats = project | ||
.in(file(".")) | ||
.settings(moduleName := "root") | ||
.settings(catsSettings) | ||
.settings(moduleName := "root", crossScalaVersions := Nil) | ||
.settings(publishSettings) | ||
.settings(noPublishSettings) | ||
.aggregate(catsJVM, catsJS) | ||
.dependsOn(catsJVM, catsJS, tests.jvm % "test-internal -> test") | ||
|
@@ -806,7 +806,6 @@ def priorTo2_13(scalaVersion: String): Boolean = | |
lazy val sharedPublishSettings = Seq( | ||
releaseCrossBuild := true, | ||
releaseTagName := tagName.value, | ||
releasePublishArtifactsAction := PgpKeys.publishSigned.value, | ||
releaseVcsSign := true, | ||
useGpg := true, // bouncycastle has bugs with subkeys, so we use gpg instead | ||
publishMavenStyle := true, | ||
|
@@ -825,12 +824,11 @@ lazy val sharedReleaseProcess = Seq( | |
releaseProcess := Seq[ReleaseStep]( | ||
checkSnapshotDependencies, | ||
inquireVersions, | ||
runClean, | ||
releaseStepCommand("validate"), | ||
releaseStepCommandAndRemaining("+validate"), | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Is this a switch from running There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Not really. Before the validate is still run against all scala versions because the |
||
setReleaseVersion, | ||
commitReleaseVersion, | ||
tagRelease, | ||
publishArtifacts, | ||
releaseStepCommandAndRemaining("+publishSigned"), | ||
setNextVersion, | ||
commitNextVersion, | ||
releaseStepCommand("sonatypeReleaseAll"), | ||
|
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1 @@ | ||
sbt.version=1.2.7 | ||
sbt.version=1.2.8 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It looks a little weird to have
publishSettings
followed bynoPublishSettings
. This is intentional, right? If so, it might be helpful to have a brief comment about why this is being done.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good catch. I added some comment here. The basic thing is that
sbt release
command is run through aggregation from this root module. Thus it requires some release settings, then thenoPublishSettings
makes sure the module itself is not published.