This is an automated email from the ASF dual-hosted git repository.
slawrence pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/daffodil.git
The following commit(s) were added to refs/heads/master by this push:
new 2d701f8 Update sbt to 1.5.0
2d701f8 is described below
commit 2d701f8d11fe548fbb4ca7421379cb9b4346a1cc
Author: Scala Steward <[email protected]>
AuthorDate: Tue Apr 6 22:07:34 2021 +0200
Update sbt to 1.5.0
- Update sbt configurations, CI configurations, and release candidate
scripts to use new sbt syntax. The old syntax is deprecated in 1.5.0
and will be removed in a future release.
---
.github/workflows/main.yml | 8 +-
.github/workflows/sonarcloud.yml | 2 +-
README.md | 4 +-
build.sbt | 56 +++++++-------
.../release-candidate/daffodil-release-candidate | 14 ++--
containers/release-candidate/setup-container.sh | 2 +-
daffodil-cli/build.sbt | 86 +++++++++++-----------
daffodil-japi/build.sbt | 2 +-
.../daffodil/functionality/TestFunctionality.scala | 2 +-
project/build.properties | 2 +-
10 files changed, 89 insertions(+), 89 deletions(-)
diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml
index 12ae8c8..a398844 100644
--- a/.github/workflows/main.yml
+++ b/.github/workflows/main.yml
@@ -54,16 +54,16 @@ jobs:
############################################################
- name: Compile
- run: $SBT compile test:compile it:compile
+ run: $SBT compile Test/compile IntegrationTest/compile
- name: Build Documentation
run: $SBTNOCOV unidoc
- name: Package Zip & Tar
- run: $SBTNOCOV daffodil-cli/universal:packageBin
daffodil-cli/universal:packageZipTarball
+ run: $SBTNOCOV daffodil-cli/Universal/packageBin
daffodil-cli/Universal/packageZipTarball
- name: Package RPM
- run: $SBTNOCOV daffodil-cli/rpm:packageBin
+ run: $SBTNOCOV daffodil-cli/Rpm/packageBin
if: runner.os == 'Linux'
############################################################
@@ -77,7 +77,7 @@ jobs:
run: $SBT test
- name: Run Integration Tests
- run: $SBT it:test
+ run: $SBT IntegrationTest/test
- name: Generate Coverage Report
run: $SBT coverageAggregate
diff --git a/.github/workflows/sonarcloud.yml b/.github/workflows/sonarcloud.yml
index 218e2a9..0c5e651 100644
--- a/.github/workflows/sonarcloud.yml
+++ b/.github/workflows/sonarcloud.yml
@@ -38,7 +38,7 @@ jobs:
############################################################
- name: Compile
- run: $SBT compile test:compile it:compile
+ run: $SBT compile Test/compile IntegrationTest/compile
shell: bash
env:
SBT: sbt -J-Xms1024m -J-Xmx5120m -J-XX:ReservedCodeCacheSize=512m
-J-XX:MaxMetaspaceSize=1024m ++${{ matrix.scala_version }} coverage
diff --git a/README.md b/README.md
index 991d688..d090999 100644
--- a/README.md
+++ b/README.md
@@ -60,7 +60,7 @@ $ sbt test
Run all command line interface tests:
```text
-$ sbt it:test
+$ sbt IntegrationTest/test
```
### Command Line Interface
@@ -87,7 +87,7 @@ Generate an [sbt-scoverage] test coverage report located in
``target/scala-ver/scoverage-report/``:
```text
-$ sbt clean coverage test it:test
+$ sbt clean coverage test IntegrationTest/test
$ sbt coverageAggregate
```
diff --git a/build.sbt b/build.sbt
index 486fccc..78e89e2 100644
--- a/build.sbt
+++ b/build.sbt
@@ -136,7 +136,7 @@ lazy val commonSettings = Seq(
scalacOptions ++= scalacCrossOptions(scalaVersion.value),
// Workaround issue that some options are valid for javac, not javadoc.
// These javacOptions are for code compilation only. (Issue sbt/sbt#355)
- javacOptions in Compile in compile ++= Seq(
+ Compile / compile / javacOptions ++= Seq(
"-Werror",
"-Xlint:deprecation"
),
@@ -145,10 +145,10 @@ lazy val commonSettings = Seq(
retrieveManaged := true,
useCoursier := false, // disabled because it breaks retrieveManaged (sbt
issue #5078)
exportJars := true,
- exportJars in Test := false,
+ Test / exportJars := false,
publishMavenStyle := true,
- publishArtifact in Test := false,
- pomIncludeRepository in ThisBuild := { _ => false },
+ Test / publishArtifact := false,
+ ThisBuild / pomIncludeRepository := { _ => false },
scmInfo := Some(
ScmInfo(
browseUrl = url("https://github.com/apache/daffodil"),
@@ -161,7 +161,7 @@ lazy val commonSettings = Seq(
sourceManaged := baseDirectory.value / "src_managed",
resourceManaged := baseDirectory.value / "resource_managed",
libraryDependencies ++= Dependencies.common,
- parallelExecution in IntegrationTest := false,
+ IntegrationTest / parallelExecution := false,
testOptions += Tests.Argument(TestFrameworks.JUnit, "-q", "-v"),
) ++ Defaults.itSettings
@@ -177,7 +177,7 @@ lazy val nopublish = Seq(
publish := {},
publishLocal := {},
publishM2 := {},
- skip in publish := true
+ publish / skip := true
)
// "usesMacros" is a list of settings that should be applied only to
@@ -201,8 +201,8 @@ lazy val usesMacros = Seq(
// Note that for packageBin, we only copy directories and class files--this
// ignores files such a META-INFA/LICENSE and NOTICE that are duplicated and
// would otherwise cause a conflict.
- mappings in (Compile, packageBin) ++= mappings.in(macroLib, Compile,
packageBin).value.filter { case (f, _) => f.isDirectory ||
f.getPath.endsWith(".class") },
- mappings in (Compile, packageSrc) ++= mappings.in(macroLib, Compile,
packageSrc).value,
+ Compile / packageBin / mappings ++= (macroLib / Compile / packageBin /
mappings).value.filter { case (f, _) => f.isDirectory ||
f.getPath.endsWith(".class") },
+ Compile / packageSrc / mappings ++= (macroLib / Compile / packageSrc /
mappings).value,
// The .classpath files that the sbt eclipse plugin creates need minor
// modifications. Fortunately, the plugin allows us to provide "transformers"
@@ -224,16 +224,16 @@ lazy val usesMacros = Seq(
lazy val libManagedSettings = Seq(
genManaged := {
- (genProps in Compile).value
- (genSchemas in Compile).value
+ (Compile / genProps).value
+ (Compile / genSchemas).value
()
},
- genProps in Compile := {
- val cp = (dependencyClasspath in Runtime in propgen).value
- val inSrc = (sources in Compile in propgen).value
- val inRSrc = (resources in Compile in propgen).value
- val stream = (streams in propgen).value
- val outdir = (sourceManaged in Compile).value
+ Compile / genProps := {
+ val cp = (propgen / Runtime / dependencyClasspath).value
+ val inSrc = (propgen / Runtime/ sources).value
+ val inRSrc = (propgen / Compile / resources).value
+ val stream = (propgen / streams).value
+ val outdir = (Compile / sourceManaged).value
val filesToWatch = (inSrc ++ inRSrc).toSet
val cachedFun = FileFunction.cached(stream.cacheDirectory / "propgen") {
(in: Set[File]) =>
val mainClass = "org.apache.daffodil.propGen.PropertyGenerator"
@@ -257,10 +257,10 @@ lazy val libManagedSettings = Seq(
}
cachedFun(filesToWatch).toSeq
},
- genSchemas in Compile := {
- val inRSrc = (resources in Compile in propgen).value
- val stream = (streams in propgen).value
- val outdir = (resourceManaged in Compile).value
+ Compile / genSchemas := {
+ val inRSrc = (propgen / Compile / resources).value
+ val stream = (propgen / streams).value
+ val outdir = (Compile / resourceManaged).value
val filesToWatch = inRSrc.filter{_.isFile}.toSet
val cachedFun = FileFunction.cached(stream.cacheDirectory / "schemasgen")
{ (schemas: Set[File]) =>
schemas.map { schema =>
@@ -272,8 +272,8 @@ lazy val libManagedSettings = Seq(
}
cachedFun(filesToWatch).toSeq
},
- sourceGenerators in Compile += (genProps in Compile).taskValue,
- resourceGenerators in Compile += (genSchemas in Compile).taskValue
+ Compile / sourceGenerators += (Compile / genProps).taskValue,
+ Compile / resourceGenerators += (Compile / genSchemas).taskValue
)
lazy val ratSettings = Seq(
@@ -288,20 +288,20 @@ lazy val ratSettings = Seq(
)
lazy val unidocSettings = Seq(
- unidocProjectFilter in (ScalaUnidoc, unidoc) := inProjects(sapi, udf),
- scalacOptions in (ScalaUnidoc, unidoc) := Seq(
+ ScalaUnidoc / unidoc / unidocProjectFilter := inProjects(sapi, udf),
+ ScalaUnidoc / unidoc / scalacOptions := Seq(
"-doc-title", "Apache Daffodil " + version.value + " Scala API",
- "-doc-root-content", (baseDirectory in sapi).value + "/root-doc.txt"
+ "-doc-root-content", (sapi / baseDirectory).value + "/root-doc.txt"
),
- unidocProjectFilter in (JavaUnidoc, unidoc) := inProjects(japi, udf),
- javacOptions in (JavaUnidoc, unidoc) := Seq(
+ JavaUnidoc / unidoc / unidocProjectFilter := inProjects(japi, udf),
+ JavaUnidoc / unidoc / javacOptions:= Seq(
"-windowtitle", "Apache Daffodil " + version.value + " Java API",
"-doctitle", "<h1>Apache Daffodil " + version.value + " Java API</h1>",
"-notimestamp",
"-quiet",
),
- unidocAllSources in (JavaUnidoc, unidoc) := (unidocAllSources in
(JavaUnidoc, unidoc)).value.map { sources =>
+ JavaUnidoc / unidoc / unidocAllSources := (JavaUnidoc / unidoc /
unidocAllSources).value.map { sources =>
sources.filterNot { source =>
source.toString.contains("$") ||
source.toString.contains("packageprivate")
}
diff --git a/containers/release-candidate/daffodil-release-candidate
b/containers/release-candidate/daffodil-release-candidate
index 15296cc..c211faa 100755
--- a/containers/release-candidate/daffodil-release-candidate
+++ b/containers/release-candidate/daffodil-release-candidate
@@ -170,16 +170,16 @@ fi
echo "Building Convenience Binaries and Publishing to Apache Repository..."
sbt \
- "set updateOptions in ThisBuild := updateOptions.value.withGigahorse(false)"
\
- "set credentials in ThisBuild += Credentials(\"Sonatype Nexus Repository
Manager\", \"repository.apache.org\", \"$APACHE_USERNAME\",
\"$APACHE_PASSWD\")" \
- "set publishTo in ThisBuild := Some(\"Apache Staging Distribution
Repository\" at
\"https://repository.apache.org/service/local/staging/deploy/maven2\")" \
+ "set ThisBuild/updateOptions := updateOptions.value.withGigahorse(false)" \
+ "set ThisBuild/credentials += Credentials(\"Sonatype Nexus Repository
Manager\", \"repository.apache.org\", \"$APACHE_USERNAME\",
\"$APACHE_PASSWD\")" \
+ "set ThisBuild/publishTo := Some(\"Apache Staging Distribution Repository\"
at \"https://repository.apache.org/service/local/staging/deploy/maven2\")" \
"set pgpSigningKey := Some(\"$PGP_SIGNING_KEY_ID\")" \
"+compile" \
"+$SBT_PUBLISH" \
- "daffodil-cli/rpm:packageBin" \
- "daffodil-cli/windows:packageBin" \
- "daffodil-cli/universal:packageBin" \
- "daffodil-cli/universal:packageZipTarball" \
+ "daffodil-cli/Rpm/packageBin" \
+ "daffodil-cli/Windows/packageBin" \
+ "daffodil-cli/Universal/packageBin" \
+ "daffodil-cli/Universal/packageZipTarball" \
"unidoc" \
echo "Removing old release candidates..."
diff --git a/containers/release-candidate/setup-container.sh
b/containers/release-candidate/setup-container.sh
index 1649e69..60eb99e 100755
--- a/containers/release-candidate/setup-container.sh
+++ b/containers/release-candidate/setup-container.sh
@@ -39,6 +39,6 @@ sh -c "echo 'addSbtPlugin(\"com.jsuereth\" % \"sbt-pgp\" %
\"2.0.1\")' >> /root/
TMP_SBT_PROJECT=/tmp/sbt-project/
mkdir -p $TMP_SBT_PROJECT
pushd $TMP_SBT_PROJECT &> /dev/null
-sbt --sbt-version 1.4.9 exit
+sbt --sbt-version 1.5.0 exit
popd &> /dev/null
rm -rf $TMP_SBT_PROJECT
diff --git a/daffodil-cli/build.sbt b/daffodil-cli/build.sbt
index 28f8436..1939f15 100644
--- a/daffodil-cli/build.sbt
+++ b/daffodil-cli/build.sbt
@@ -18,24 +18,24 @@
import scala.xml.Attribute
import scala.xml.transform.RewriteRule
import scala.xml.transform.RuleTransformer
-
+
enablePlugins(JavaAppPackaging)
enablePlugins(RpmPlugin)
enablePlugins(WindowsPlugin)
// need 'sbt stage' to build the CLI for cli integration tests
-(test in IntegrationTest) := (test in IntegrationTest).dependsOn(stage in
Compile).value
-(testOnly in IntegrationTest) := (testOnly in IntegrationTest).dependsOn(stage
in Compile).evaluated
-(testQuick in IntegrationTest) := (testQuick in
IntegrationTest).dependsOn(stage in Compile).evaluated
+(IntegrationTest / test) := (IntegrationTest / test).dependsOn(Compile /
stage).value
+(IntegrationTest / testOnly) := (IntegrationTest / testOnly).dependsOn(Compile
/ stage).evaluated
+(IntegrationTest / testQuick) := (IntegrationTest /
testQuick).dependsOn(Compile / stage).evaluated
executableScriptName := "daffodil"
-packageName in Universal := "apache-daffodil-" + version.value + "-bin"
//tarball name
-packageName in Linux := executableScriptName.value
-packageName in Rpm := "apache-" + executableScriptName.value
-packageName in Windows := executableScriptName.value
+Universal / packageName := "apache-daffodil-" + version.value + "-bin"
//tarball name
+Linux / packageName := executableScriptName.value
+Rpm / packageName := "apache-" + executableScriptName.value
+Windows / packageName := executableScriptName.value
-mappings in Universal ++= Seq(
+Universal / mappings ++= Seq(
baseDirectory.value / "bin.LICENSE" -> "LICENSE",
baseDirectory.value / "bin.NOTICE" -> "NOTICE",
baseDirectory.value / "README.md" -> "README.md",
@@ -48,11 +48,11 @@ maintainer := "Apache Daffodil <[email protected]>"
//
rpmVendor := "Apache Daffodil"
-packageArchitecture in Rpm := "noarch"
+Rpm / packageArchitecture := "noarch"
-packageSummary in Rpm := "Open-source implementation of the Data Format
Description Language (DFDL)"
+Rpm / packageSummary := "Open-source implementation of the Data Format
Description Language (DFDL)"
-packageDescription in Rpm := """
+Rpm / packageDescription := """
Apache Daffodil is an open-source implementation of the DFDL specification
that uses DFDL data descriptions to parse fixed format data into an infoset.
This infoset is commonly converted into XML or JSON to enable the use of
@@ -72,12 +72,12 @@ carried by data processing frameworks so as to bypass any
XML/JSON overheads.
// In this case, we want to disable zstd compression which isn't supported by
// older versions of RPM. So we add the following special rpm %define's to use
// gzip compression instead, which is supported by all versions of RPM.
-packageDescription in Rpm := (packageDescription in Rpm).value + """
+Rpm / packageDescription := (Rpm / packageDescription).value + """
%define _source_payload w9.gzdio
%define _binary_payload w9.gzdio
"""
-version in Rpm := {
+Rpm / version := {
val parts = version.value.split("-", 2)
val ver = parts(0) // removes snapshot if it exists
ver
@@ -108,21 +108,21 @@ rpmPrefix := Some(defaultLinuxInstallLocation.value)
// The SBT WiX plug-in incorrectly assumes that the directory of
// invocation is the same name as the direcotry you eventually
// want to install into.
-name in Windows := "Daffodil"
+Windows / name := "Daffodil"
// The Windows packager SBT plug-in maps the packageSummary variable
-// into the WiX productName field. Another strange choice.
-packageSummary in Windows := "Daffodil"
+// into the WiX productName field. Another strange choice.
+Windows / packageSummary := "Daffodil"
// The Windows packager SBT plug-in limits the length of the packageDescription
// field to a single line. Use the short packageSummary from the RPM config.
-packageDescription in Windows := (packageSummary in Rpm).value
+Windows / packageDescription := (Rpm / packageSummary).value
// Use the same version number as in the rpm, which has SNAPSHOT removed if it
// exists. Windows version numbers has no concept of a "snapshot build", only
// major, minor, patch, and build. So Windows MSI versions do not differentiate
// between snapshots and non-snapshots.
-version in Windows := (version in Rpm).value
+Windows / version := (Rpm / version).value
// Required and critical GUIDs. Ironically the ProductId is unique
// to a given release, but UpgradeId must NEVER change! This may
@@ -138,22 +138,22 @@ wixProductUpgradeId :=
"4C966AFF-585E-4E17-8CC2-059FD70FEC77"
// specific XML to enable this, the WiX compiler and linker
// complain about it unless you specifically suppress the warning.
lightOptions := Seq(
- "-sval", // validation does not currently work under Wine, this
disables that
- "-sice:ICE61",
- "-ext", "WixUIExtension",
- "-cultures:en-us",
- "-loc", ((sourceDirectory in Windows).value /
"Product_en-us.wxl").toString
- )
+ "-sval", // validation does not currently work under Wine, this disables that
+ "-sice:ICE61",
+ "-ext", "WixUIExtension",
+ "-cultures:en-us",
+ "-loc", ((Windows / sourceDirectory).value / "Product_en-us.wxl").toString
+)
// Build an RTF version of the license file for display in the license
// acceptance dialog box. This file will also be sent to the
// printer when and if the user asks for hard copy via the 'print' button.
wixProductLicense := {
// Make sure the target direcotry exists.
- (target in Windows).value.mkdirs()
-
+ (Windows / target).value.mkdirs()
+
// This target file doesn't exist until placed there by the build.
- val targetLicense = (target in Windows).value / "LICENSE.rtf"
+ val targetLicense = (Windows / target).value / "LICENSE.rtf"
val sourceLicense = baseDirectory.value / "bin.LICENSE"
// somehow convert sourceLicense into RTF and store at targetLicense
val rtfHeader = """{\rtf {\fonttbl {\f0 Arial;}} \f0\fs18"""
@@ -174,8 +174,8 @@ wixProductLicense := {
// Use the wixFiles variable to add in the Daffodil-specific dialog
// boxes and sequence.
wixFiles ++= Seq(
- (sourceDirectory in Windows).value / "WixUI_Daffodil.wxs",
-)
+ (Windows / sourceDirectory).value / "WixUI_Daffodil.wxs",
+)
// The SBT Native Packager plug-in assumes that we want to give the user
// a Feature Tree to select from. One of the 'features' that the plug-in
@@ -191,32 +191,32 @@ wixFeatures := {
// Make sure that we don't use an MSI installer that is older than
// version 2.0. It also fixes the comment attribute that hangs
-// out on the Package keyword.
+// out on the Package keyword.
wixPackageInfo := wixPackageInfo.value.copy(installerVersion = "200", comments
= "!(loc.Comments)")
// Fix the XML that is associated with the installable files and directories.
wixProductConfig := {
// Pick up the generated code.
val pc = wixProductConfig.value
-
+
// Replace the default headline banner and Welcome/Exit screen
- // bitmaps with the custom ones we developed for Daffodil.
- val banner = <WixVariable Id="WixUIBannerBmp" Value={ ((sourceDirectory in
Windows).value / "banner.bmp").toString } />
- val dialog = <WixVariable Id="WixUIDialogBmp" Value={ ((sourceDirectory in
Windows).value / "dialog.bmp").toString } />
-
+ // bitmaps with the custom ones we developed for Daffodil.
+ val banner = <WixVariable Id="WixUIBannerBmp" Value={ ((Windows /
sourceDirectory).value / "banner.bmp").toString } />
+ val dialog = <WixVariable Id="WixUIDialogBmp" Value={ ((Windows /
sourceDirectory).value / "dialog.bmp").toString } />
+
// Reference the Daffodil-specific User Interface (dialog box) sequence.
val ui = <UI><UIRef Id="WixUI_Daffodil" /></UI>
-
+
// Make sure we abort if we are not installing on Windows 95 or later.
val osCondition = <Condition Message="!(loc.OS2Old)"><![CDATA[Installed OR
(VersionNT >= 400)]]></Condition>
// Define icons (ID should not be longer than 18 chars and must end with
".exe")
val icon = Seq(
- <Icon Id="Daffodil.ico" SourceFile={ ((sourceDirectory in Windows).value /
"apache-daffodil.ico").toString } />,
+ <Icon Id="Daffodil.ico" SourceFile={ ((Windows / sourceDirectory).value /
"apache-daffodil.ico").toString } />,
<Property Id="ARPPRODUCTICON" Value="Daffodil.ico" />
)
-
- // String together the additional XML around the generated directory and
file lists.
+
+ // String together the additional XML around the generated directory and
file lists.
val pcGroup = pc.asInstanceOf[scala.xml.Group]
val newNodes = osCondition ++ icon ++ pcGroup.nodes ++ dialog ++ banner ++ ui
val pcWithNewNodes = pcGroup.copy(nodes = newNodes)
@@ -224,7 +224,7 @@ wixProductConfig := {
// Change (edit) some items inside the directory/files list.
val pcRewriteRule = new RewriteRule {
override def transform(n: scala.xml.Node): Seq[scala.xml.Node] = n match {
-
+
// We want to comply with the Windows standard pattern of
// installing at /Program Files/ManufacturerName/Application
// This case effectively inserts the manufacturer name into
@@ -234,7 +234,7 @@ wixProductConfig := {
val apacheDirWithChild = apacheDir.copy(child = e.child)
e.copy(child = apacheDirWithChild)
}
-
+
// We *ARE* going to allow the user to repair and reinstall
// the same exact version, so we need to add an attribute
// to the MajorUpgrade keyword. This will trigger an 'ICE61'
@@ -248,7 +248,7 @@ wixProductConfig := {
val attribs = e.attributes.remove("Key")
e % scala.xml.Attribute("", "Key", """Software\Apache\Installed
Products\Daffodil""", attribs)
}
-
+
// The WixUI_FeatureTree reference has to be removed so that
// our custom Daffodil UI can operate properly.
case e: scala.xml.Elem if e.label == "UIRef" && (e \ "@Id").text ==
"WixUI_FeatureTree" => {
diff --git a/daffodil-japi/build.sbt b/daffodil-japi/build.sbt
index 365242b..686d7a6 100644
--- a/daffodil-japi/build.sbt
+++ b/daffodil-japi/build.sbt
@@ -20,6 +20,6 @@ enablePlugins(PublishJavadocPlugin)
unidocGenjavadocVersion := "0.17"
-sources in Genjavadoc := (sources in Genjavadoc).value.filterNot { source =>
+Genjavadoc / sources := (Genjavadoc / sources).value.filterNot { source =>
source.toString.contains("$") || source.toString.contains("packageprivate")
}
diff --git
a/daffodil-test/src/test/scala/org/apache/daffodil/functionality/TestFunctionality.scala
b/daffodil-test/src/test/scala/org/apache/daffodil/functionality/TestFunctionality.scala
index d03ef0e..14b7ab6 100644
---
a/daffodil-test/src/test/scala/org/apache/daffodil/functionality/TestFunctionality.scala
+++
b/daffodil-test/src/test/scala/org/apache/daffodil/functionality/TestFunctionality.scala
@@ -60,7 +60,7 @@ class TestFunctionality {
val calendar = Calendar.getInstance(locale)
calendar.clear()
val formatter = new SimpleDateFormat(pattern, locale)
- // Make sure you've done 'sbt update-classifiers' to pull in all the
source.
+ // Make sure you've done 'sbt updateClassifiers' to pull in all the source.
// Step through the format here and into SimpleDateFormat -> case: 29 aka
V -> TimeZoneFormat.format
// It would appear as though the SimpleTimeZone GMT-0800 is not recognized
in the ICU library
// and so returns this 'unk' value rather than 'uslax'. Even though -0800
GMT IS uslax!!! :(
diff --git a/project/build.properties b/project/build.properties
index 0e52c79..ddbf482 100644
--- a/project/build.properties
+++ b/project/build.properties
@@ -15,4 +15,4 @@
* limitations under the License.
*/
-sbt.version=1.4.9
+sbt.version=1.5.0