0.8.3 release
diff --git a/bin/install-ubuntu.sh b/bin/install-ubuntu.sh
index ec2935d..e230364 100755
--- a/bin/install-ubuntu.sh
+++ b/bin/install-ubuntu.sh
@@ -12,7 +12,7 @@
 
 INSTALL_DIR=/home/$USER
 TEMP_DIR=/tmp
-PIO_VERSION=0.8.3-SNAPSHOT
+PIO_VERSION=0.8.3
 PIO_DIR=$INSTALL_DIR/PredictionIO
 PIO_FILE=PredictionIO-$PIO_VERSION.tar.gz
 VENDORS_DIR=$PIO_DIR/vendors
diff --git a/build.sbt b/build.sbt
index 19aef93..0cb6243 100644
--- a/build.sbt
+++ b/build.sbt
@@ -18,7 +18,7 @@
 
 name := "pio"
 
-version in ThisBuild := "0.8.3-SNAPSHOT"
+version in ThisBuild := "0.8.3"
 
 organization in ThisBuild := "io.prediction"
 
diff --git a/engines/src/main/scala/itemrank/examples/engine.json b/engines/src/main/scala/itemrank/examples/engine.json
index 2cfccd2..e18343b 100644
--- a/engines/src/main/scala/itemrank/examples/engine.json
+++ b/engines/src/main/scala/itemrank/examples/engine.json
@@ -1,6 +1,6 @@
 {
   "id": "io.prediction.engines.itemrank.examples",
-  "version": "0.8.3-SNAPSHOT",
+  "version": "0.8.3",
   "name": "PredictionIO ItemRank Engine Examples",
   "engineFactory": "io.prediction.engines.itemrank.ItemRankEngine"
 }
diff --git a/engines/src/main/scala/itemrec/examples/engine.json b/engines/src/main/scala/itemrec/examples/engine.json
index 22b7369..77bbb47 100644
--- a/engines/src/main/scala/itemrec/examples/engine.json
+++ b/engines/src/main/scala/itemrec/examples/engine.json
@@ -1,6 +1,6 @@
 {
   "id": "io.prediction.engines.itemrec.examples",
-  "version": "0.8.3-SNAPSHOT",
+  "version": "0.8.3",
   "name": "PredictionIO ItemRec Engine Examples",
   "engineFactory": "io.prediction.engines.itemrec.ItemRecEngine"
 }
diff --git a/engines/src/main/scala/itemsim/examples/engine.json b/engines/src/main/scala/itemsim/examples/engine.json
index 5c65cd9..83a45f6 100644
--- a/engines/src/main/scala/itemsim/examples/engine.json
+++ b/engines/src/main/scala/itemsim/examples/engine.json
@@ -1,6 +1,6 @@
 {
   "id": "io.prediction.engines.itemsim.examples",
-  "version": "0.8.3-SNAPSHOT",
+  "version": "0.8.3",
   "name": "PredictionIO ItemSim Engine Examples",
   "engineFactory": "io.prediction.engines.itemsim.ItemSimEngine"
 }
diff --git a/examples/experimental/java-local-helloworld/build.sbt b/examples/experimental/java-local-helloworld/build.sbt
index c3e0a45..7140f2a 100644
--- a/examples/experimental/java-local-helloworld/build.sbt
+++ b/examples/experimental/java-local-helloworld/build.sbt
@@ -7,5 +7,5 @@
 organization := "org.sample"
 
 libraryDependencies ++= Seq(
-  "io.prediction" %% "core" % "0.8.3-SNAPSHOT" % "provided",
+  "io.prediction" %% "core" % "0.8.3" % "provided",
   "org.apache.spark" %% "spark-core" % "1.1.0" % "provided")
diff --git a/examples/experimental/java-local-regression/build.sbt b/examples/experimental/java-local-regression/build.sbt
index 2fbb9fd..19b1d59 100644
--- a/examples/experimental/java-local-regression/build.sbt
+++ b/examples/experimental/java-local-regression/build.sbt
@@ -10,5 +10,5 @@
 version := "0.0.1-SNAPSHOT"
 
 libraryDependencies ++= Seq(
-  "io.prediction"    %% "core"          % "0.8.3-SNAPSHOT" % "provided",
+  "io.prediction"    %% "core"          % "0.8.3" % "provided",
   "org.apache.spark" %% "spark-core"    % "1.1.0" % "provided")
diff --git a/examples/experimental/java-local-tutorial/build.sbt b/examples/experimental/java-local-tutorial/build.sbt
index 5c453de..18f3cfd 100644
--- a/examples/experimental/java-local-tutorial/build.sbt
+++ b/examples/experimental/java-local-tutorial/build.sbt
@@ -7,10 +7,10 @@
 
 organization := "io.prediction"
 
-version := "0.8.3-SNAPSHOT"
+version := "0.8.3"
 
 libraryDependencies ++= Seq(
-  "io.prediction"    %% "core"          % "0.8.3-SNAPSHOT" % "provided",
-  "io.prediction"    %% "engines"       % "0.8.3-SNAPSHOT" % "provided",
+  "io.prediction"    %% "core"          % "0.8.3" % "provided",
+  "io.prediction"    %% "engines"       % "0.8.3" % "provided",
   "org.apache.mahout" % "mahout-core"   % "0.9",
   "org.apache.spark" %% "spark-core"    % "1.1.0" % "provided")
diff --git a/examples/experimental/java-local-tutorial/src/main/java/recommendations/tutorial1/engine.json b/examples/experimental/java-local-tutorial/src/main/java/recommendations/tutorial1/engine.json
index 3d90bb0..5bbe777 100644
--- a/examples/experimental/java-local-tutorial/src/main/java/recommendations/tutorial1/engine.json
+++ b/examples/experimental/java-local-tutorial/src/main/java/recommendations/tutorial1/engine.json
@@ -1,6 +1,6 @@
 {
   "id": "io.prediction.examples.java.recommendations.tutorial1.EngineFactory",
-  "version": "0.8.3-SNAPSHOT",
+  "version": "0.8.3",
   "name": "Simple Recommendations Engine",
   "engineFactory": "io.prediction.examples.java.recommendations.tutorial1.EngineFactory"
 }
diff --git a/examples/experimental/java-local-tutorial/src/main/java/recommendations/tutorial4/multiple-algo-engine.json b/examples/experimental/java-local-tutorial/src/main/java/recommendations/tutorial4/multiple-algo-engine.json
index 96c6fbd..04cf459 100644
--- a/examples/experimental/java-local-tutorial/src/main/java/recommendations/tutorial4/multiple-algo-engine.json
+++ b/examples/experimental/java-local-tutorial/src/main/java/recommendations/tutorial4/multiple-algo-engine.json
@@ -1,6 +1,6 @@
 {
   "id": "io.prediction.examples.java.recommendations.tutorial4.EngineFactory",
-  "version": "0.8.3-SNAPSHOT",
+  "version": "0.8.3",
   "name": "FeatureBased Recommendations Engine",
   "engineFactory": "io.prediction.examples.java.recommendations.tutorial4.EngineFactory"
 }
diff --git a/examples/experimental/java-local-tutorial/src/main/java/recommendations/tutorial4/single-algo-engine.json b/examples/experimental/java-local-tutorial/src/main/java/recommendations/tutorial4/single-algo-engine.json
index 562bc4c..c547ef8 100644
--- a/examples/experimental/java-local-tutorial/src/main/java/recommendations/tutorial4/single-algo-engine.json
+++ b/examples/experimental/java-local-tutorial/src/main/java/recommendations/tutorial4/single-algo-engine.json
@@ -1,6 +1,6 @@
 {
   "id": "io.prediction.examples.java.recommendations.tutorial4.SingleEngineFactory",
-  "version": "0.8.3-SNAPSHOT",
+  "version": "0.8.3",
   "name": "FeatureBased Recommendations Engine",
   "engineFactory": "io.prediction.examples.java.recommendations.tutorial4.SingleEngineFactory"
 }
diff --git a/examples/experimental/java-parallel-helloworld/build.sbt b/examples/experimental/java-parallel-helloworld/build.sbt
index 1d8e337..6f8becd 100644
--- a/examples/experimental/java-parallel-helloworld/build.sbt
+++ b/examples/experimental/java-parallel-helloworld/build.sbt
@@ -7,5 +7,5 @@
 organization := "org.sample"
 
 libraryDependencies ++= Seq(
-  "io.prediction" %% "core" % "0.8.3-SNAPSHOT" % "provided",
+  "io.prediction" %% "core" % "0.8.3" % "provided",
   "org.apache.spark" %% "spark-core" % "1.1.0" % "provided")
diff --git a/examples/experimental/scala-local-helloworld/build.sbt b/examples/experimental/scala-local-helloworld/build.sbt
index fda31d5..6dbb6c5 100644
--- a/examples/experimental/scala-local-helloworld/build.sbt
+++ b/examples/experimental/scala-local-helloworld/build.sbt
@@ -7,6 +7,6 @@
 organization := "org.sample"
 
 libraryDependencies ++= Seq(
-  "io.prediction" %% "core" % "0.8.3-SNAPSHOT" % "provided",
-  "io.prediction" %% "data" % "0.8.3-SNAPSHOT" % "provided",
+  "io.prediction" %% "core" % "0.8.3" % "provided",
+  "io.prediction" %% "data" % "0.8.3" % "provided",
   "org.apache.spark" %% "spark-core" % "1.1.0" % "provided")
diff --git a/examples/experimental/scala-local-movielens-evaluation/build.sbt b/examples/experimental/scala-local-movielens-evaluation/build.sbt
index 491bc70..ae98108 100644
--- a/examples/experimental/scala-local-movielens-evaluation/build.sbt
+++ b/examples/experimental/scala-local-movielens-evaluation/build.sbt
@@ -10,6 +10,6 @@
 version := "0.0.1-SNAPSHOT"
 
 libraryDependencies ++= Seq(
-  "io.prediction"    %% "core"          % "0.8.3-SNAPSHOT" % "provided",
-  "io.prediction"    %% "engines"          % "0.8.3-SNAPSHOT" % "provided",
+  "io.prediction"    %% "core"          % "0.8.3" % "provided",
+  "io.prediction"    %% "engines"          % "0.8.3" % "provided",
   "org.apache.spark" %% "spark-core"    % "1.1.0" % "provided")
diff --git a/examples/experimental/scala-local-movielens-filtering/build.sbt b/examples/experimental/scala-local-movielens-filtering/build.sbt
index 073b564..ee2c9c0 100644
--- a/examples/experimental/scala-local-movielens-filtering/build.sbt
+++ b/examples/experimental/scala-local-movielens-filtering/build.sbt
@@ -10,6 +10,6 @@
 version := "0.0.1-SNAPSHOT"
 
 libraryDependencies ++= Seq(
-  "io.prediction"    %% "core"          % "0.8.3-SNAPSHOT" % "provided",
-  "io.prediction"    %% "engines"       % "0.8.3-SNAPSHOT" % "provided",
+  "io.prediction"    %% "core"          % "0.8.3" % "provided",
+  "io.prediction"    %% "engines"       % "0.8.3" % "provided",
   "org.apache.spark" %% "spark-core"    % "1.1.0" % "provided")
diff --git a/examples/experimental/scala-local-regression/build.sbt b/examples/experimental/scala-local-regression/build.sbt
index eade14b..6c1246b 100644
--- a/examples/experimental/scala-local-regression/build.sbt
+++ b/examples/experimental/scala-local-regression/build.sbt
@@ -7,7 +7,7 @@
 organization := "io.prediction"
 
 libraryDependencies ++= Seq(
-  "io.prediction"    %% "core"          % "0.8.3-SNAPSHOT" % "provided",
+  "io.prediction"    %% "core"          % "0.8.3" % "provided",
   "org.apache.spark" %% "spark-core"    % "1.1.0" % "provided",
   "org.json4s"       %% "json4s-native" % "3.2.10",
   "org.scalanlp"     %% "nak"           % "1.3")
diff --git a/examples/experimental/scala-parallel-recommendation-custom-datasource/build.sbt b/examples/experimental/scala-parallel-recommendation-custom-datasource/build.sbt
index 92d8a73..b58c354 100644
--- a/examples/experimental/scala-parallel-recommendation-custom-datasource/build.sbt
+++ b/examples/experimental/scala-parallel-recommendation-custom-datasource/build.sbt
@@ -7,6 +7,6 @@
 organization := "io.prediction"
 
 libraryDependencies ++= Seq(
-  "io.prediction"    %% "core"          % "0.8.3-SNAPSHOT" % "provided",
+  "io.prediction"    %% "core"          % "0.8.3" % "provided",
   "org.apache.spark" %% "spark-core"    % "1.1.0" % "provided",
   "org.apache.spark" %% "spark-mllib"   % "1.1.0" % "provided")
diff --git a/examples/experimental/scala-parallel-recommendation-entitymap/build.sbt b/examples/experimental/scala-parallel-recommendation-entitymap/build.sbt
index 92d8a73..b58c354 100644
--- a/examples/experimental/scala-parallel-recommendation-entitymap/build.sbt
+++ b/examples/experimental/scala-parallel-recommendation-entitymap/build.sbt
@@ -7,6 +7,6 @@
 organization := "io.prediction"
 
 libraryDependencies ++= Seq(
-  "io.prediction"    %% "core"          % "0.8.3-SNAPSHOT" % "provided",
+  "io.prediction"    %% "core"          % "0.8.3" % "provided",
   "org.apache.spark" %% "spark-core"    % "1.1.0" % "provided",
   "org.apache.spark" %% "spark-mllib"   % "1.1.0" % "provided")
diff --git a/examples/experimental/scala-parallel-recommendation-mongo-datasource/build.sbt b/examples/experimental/scala-parallel-recommendation-mongo-datasource/build.sbt
index d4abd11..91db6d4 100644
--- a/examples/experimental/scala-parallel-recommendation-mongo-datasource/build.sbt
+++ b/examples/experimental/scala-parallel-recommendation-mongo-datasource/build.sbt
@@ -7,7 +7,7 @@
 organization := "io.prediction"
 
 libraryDependencies ++= Seq(
-  "io.prediction"    %% "core"          % "0.8.3-SNAPSHOT" % "provided",
+  "io.prediction"    %% "core"          % "0.8.3" % "provided",
   "org.apache.spark" %% "spark-core"    % "1.1.0" % "provided",
   "org.apache.spark" %% "spark-mllib"   % "1.1.0" % "provided")
 
diff --git a/examples/experimental/scala-parallel-regression/build.sbt b/examples/experimental/scala-parallel-regression/build.sbt
index 5de6d4c..846c5c6 100644
--- a/examples/experimental/scala-parallel-regression/build.sbt
+++ b/examples/experimental/scala-parallel-regression/build.sbt
@@ -10,7 +10,7 @@
 version := "0.0.1-SNAPSHOT"
 
 libraryDependencies ++= Seq(
-  "io.prediction"    %% "core"          % "0.8.3-SNAPSHOT" % "provided",
+  "io.prediction"    %% "core"          % "0.8.3" % "provided",
   "org.apache.spark" %% "spark-core"    % "1.1.0" % "provided",
   "org.apache.spark"  %% "spark-mllib"    % "1.1.0"
     exclude("org.apache.spark", "spark-core_2.10")
diff --git a/examples/experimental/scala-recommendations/build.sbt b/examples/experimental/scala-recommendations/build.sbt
index b173428..81d53a1 100644
--- a/examples/experimental/scala-recommendations/build.sbt
+++ b/examples/experimental/scala-recommendations/build.sbt
@@ -7,7 +7,7 @@
 organization := "io.prediction"
 
 libraryDependencies ++= Seq(
-  "io.prediction"    %% "core"          % "0.8.3-SNAPSHOT" % "provided",
+  "io.prediction"    %% "core"          % "0.8.3" % "provided",
   "commons-io"        % "commons-io"    % "2.4",
   "org.apache.spark" %% "spark-core"    % "1.1.0" % "provided",
   "org.apache.spark" %% "spark-mllib"   % "1.1.0" % "provided",
diff --git a/examples/experimental/scala-stock/build.sbt b/examples/experimental/scala-stock/build.sbt
index 8a33eaa..8334dfc 100644
--- a/examples/experimental/scala-stock/build.sbt
+++ b/examples/experimental/scala-stock/build.sbt
@@ -7,8 +7,8 @@
 organization := "io.prediction"
 
 libraryDependencies ++= Seq(
-  "io.prediction"     %% "core"           % "0.8.3-SNAPSHOT" % "provided",
-  "io.prediction"     %% "engines"        % "0.8.3-SNAPSHOT" % "provided",
+  "io.prediction"     %% "core"           % "0.8.3" % "provided",
+  "io.prediction"     %% "engines"        % "0.8.3" % "provided",
   "com.github.scopt"  %% "scopt"          % "3.2.0",
   "commons-io"         % "commons-io"     % "2.4",
   "org.apache.commons" % "commons-math3"  % "3.3",
diff --git a/examples/scala-parallel-recommendation-custom-preparator/build.sbt b/examples/scala-parallel-recommendation-custom-preparator/build.sbt
index b36c853..46c9ae4 100644
--- a/examples/scala-parallel-recommendation-custom-preparator/build.sbt
+++ b/examples/scala-parallel-recommendation-custom-preparator/build.sbt
@@ -7,6 +7,6 @@
 organization := "io.prediction"
 
 libraryDependencies ++= Seq(
-  "io.prediction"    %% "core"          % "0.8.3-SNAPSHOT" % "provided",
+  "io.prediction"    %% "core"          % "0.8.3" % "provided",
   "org.apache.spark" %% "spark-core"    % "1.1.0" % "provided",
   "org.apache.spark" %% "spark-mllib"   % "1.1.0" % "provided")
diff --git a/examples/scala-parallel-recommendation-custom-serving/build.sbt b/examples/scala-parallel-recommendation-custom-serving/build.sbt
index 92d8a73..b58c354 100644
--- a/examples/scala-parallel-recommendation-custom-serving/build.sbt
+++ b/examples/scala-parallel-recommendation-custom-serving/build.sbt
@@ -7,6 +7,6 @@
 organization := "io.prediction"
 
 libraryDependencies ++= Seq(
-  "io.prediction"    %% "core"          % "0.8.3-SNAPSHOT" % "provided",
+  "io.prediction"    %% "core"          % "0.8.3" % "provided",
   "org.apache.spark" %% "spark-core"    % "1.1.0" % "provided",
   "org.apache.spark" %% "spark-mllib"   % "1.1.0" % "provided")
diff --git a/templates/scala-parallel-classification/build.sbt b/templates/scala-parallel-classification/build.sbt
index 66702db..8c4a95b 100644
--- a/templates/scala-parallel-classification/build.sbt
+++ b/templates/scala-parallel-classification/build.sbt
@@ -7,7 +7,7 @@
 organization := "io.prediction"
 
 libraryDependencies ++= Seq(
-  "io.prediction"    %% "core"          % "0.8.3-SNAPSHOT" % "provided",
+  "io.prediction"    %% "core"          % "0.8.3" % "provided",
   "commons-io"        % "commons-io"    % "2.4",
   "org.apache.spark" %% "spark-core"    % "1.1.0" % "provided",
   "org.apache.spark" %% "spark-mllib"   % "1.1.0" % "provided",
diff --git a/templates/scala-parallel-recommendation/build.sbt b/templates/scala-parallel-recommendation/build.sbt
index 92d8a73..b58c354 100644
--- a/templates/scala-parallel-recommendation/build.sbt
+++ b/templates/scala-parallel-recommendation/build.sbt
@@ -7,6 +7,6 @@
 organization := "io.prediction"
 
 libraryDependencies ++= Seq(
-  "io.prediction"    %% "core"          % "0.8.3-SNAPSHOT" % "provided",
+  "io.prediction"    %% "core"          % "0.8.3" % "provided",
   "org.apache.spark" %% "spark-core"    % "1.1.0" % "provided",
   "org.apache.spark" %% "spark-mllib"   % "1.1.0" % "provided")