aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJason Zaugg <jzaugg@gmail.com>2013-11-07 02:15:34 -0800
committerJason Zaugg <jzaugg@gmail.com>2013-11-07 02:15:34 -0800
commitfa0af5387cefa6c82b37af0896c6ab3652acc0fb (patch)
tree5f1957849e19b275d5b695aa3e7e1a20bd219a90
parent1942128eba3e73a845cad7e2c209ce53d6386645 (diff)
parentb7ccc997f3d7bbd43418ca7104aebfd0d8add4ee (diff)
downloadscala-async-fa0af5387cefa6c82b37af0896c6ab3652acc0fb.tar.gz
scala-async-fa0af5387cefa6c82b37af0896c6ab3652acc0fb.tar.bz2
scala-async-fa0af5387cefa6c82b37af0896c6ab3652acc0fb.zip
Merge pull request #36 from retronym/release/0.9.0-M1
Release/0.9.0 m1
-rwxr-xr-xrelease.sh35
-rw-r--r--src/test/scala/scala/async/package.scala2
2 files changed, 37 insertions, 0 deletions
diff --git a/release.sh b/release.sh
new file mode 100755
index 0000000..826b62d
--- /dev/null
+++ b/release.sh
@@ -0,0 +1,35 @@
+#! /bin/bash -e
+#
+# Build, test, and release Scala Async.
+#
+# Requires credentials:
+#
+# % cat ~/.sbt/0.13/publish.sbt
+# credentials += Credentials("Sonatype Nexus Repository Manager", "oss.sonatype.org", "<user>", "<pass>")
+
+function sbt211() {
+ sbt 'set scalaVersion := "2.11.0-M6"' 'set scalaBinaryVersion := scalaVersion.value' $@
+ return $?
+}
+die () {
+ echo "$@"
+ exit 1
+}
+
+CHECK=";clean;test;publishLocal"
+RELEASE=";clean;test;publish"
+VERSION=`gsed -rn 's/version :=.*"(.+).*"/\1/p' build.sbt`
+[[ -n "$(git status --porcelain)" ]] && die "working directory is not clean!"
+
+sbt211 $CHECK
+sbt $CHECK
+sbt $RELEASE
+sbt211 $RELEASE
+
+cat <<EOM
+Released! For non-snapshot releases:
+ - tag: git tag -s -a v$VERSION -m "scala-async $VERSION"
+ - push tag: git push origin v$VERSION
+ - close the staging repository: https://oss.sonatype.org
+ - change the version number in build.sbt to a suitable -SNAPSHOT version
+EOM \ No newline at end of file
diff --git a/src/test/scala/scala/async/package.scala b/src/test/scala/scala/async/package.scala
index 7c42024..98d2256 100644
--- a/src/test/scala/scala/async/package.scala
+++ b/src/test/scala/scala/async/package.scala
@@ -43,8 +43,10 @@ package object async {
}
def scalaBinaryVersion: String = {
+ val PreReleasePattern = """.*-(M|RC).*""".r
val Pattern = """(\d+\.\d+)\..*""".r
scala.util.Properties.versionNumberString match {
+ case s @ PreReleasePattern(_) => s
case Pattern(v) => v
case _ => ""
}