Skip to content

Commit

Permalink
Release 0.8.3: publishing to maven central, updating dependencies, bu…
Browse files Browse the repository at this point in the history
…g fixes
  • Loading branch information
adamw committed Oct 24, 2014
1 parent 67d217b commit 4543c66
Show file tree
Hide file tree
Showing 4 changed files with 29 additions and 40 deletions.
42 changes: 16 additions & 26 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ tl;dr
-----

* message queue system
* runs stand-alone ([download](https://s3-eu-west-1.amazonaws.com/softwaremill-public/elasticmq-server-0.8.2.jar)) or embedded
* runs stand-alone ([download](https://s3-eu-west-1.amazonaws.com/softwaremill-public/elasticmq-server-0.8.3.jar)) or embedded
* [Amazon SQS](http://aws.amazon.com/sqs/)-compatible interface
* fully asynchronous implementation, no blocking calls

Expand Down Expand Up @@ -40,18 +40,18 @@ Installation: stand-alone
-------------------------

You can download the stand-alone distribution here:
[https://s3/.../elasticmq-server-0.8.2.jar](https://s3-eu-west-1.amazonaws.com/softwaremill-public/elasticmq-server-0.8.2.jar)
[https://s3/.../elasticmq-server-0.8.3.jar](https://s3-eu-west-1.amazonaws.com/softwaremill-public/elasticmq-server-0.8.3.jar)

Java 6 or above is required for running the server.

Simply run the jar and you should get a working server, which binds to `localhost:9324`:

java -jar elasticmq-server-0.8.2.jar
java -jar elasticmq-server-0.8.3.jar

ElasticMQ uses [Typesafe Config](https://github.com/typesafehub/config) for configuration. To specify custom
configuration values, create a file (e.g. `custom.conf`), fill it in with the desired values, and pass it to the server:

java -Dconfig.file=custom.conf -jar elasticmq-server-0.8.2.jar
java -Dconfig.file=custom.conf -jar elasticmq-server-0.8.3.jar

The config file may contain any configuration for Akka, Spray and ElasticMQ. Current ElasticMQ configuration values are:

Expand Down Expand Up @@ -82,7 +82,7 @@ property.
You can also provide an alternative [Logback](http://logback.qos.ch/) configuration file (the default is configured to
log INFO logs and above to the console):

java -Dlogback.configurationFile=my_logback.xml -jar elasticmq-server-0.8.2.jar
java -Dlogback.configurationFile=my_logback.xml -jar elasticmq-server-0.8.3.jar

Starting an embedded ElasticMQ server with an SQS interface
-----------------------------------------------------------
Expand Down Expand Up @@ -119,21 +119,15 @@ ElasticMQ dependencies in SBT
-----------------------------

// Scala 2.11
val elasticmqSqs = "org.elasticmq" %% "elasticmq-rest-sqs" % "0.8.2"
val elasticmqSqs = "org.elasticmq" %% "elasticmq-rest-sqs" % "0.8.3"

// Scala 2.10
val elasticmqSqs = "org.elasticmq" %% "elasticmq-rest-sqs" % "0.7.1"

If you don't want the SQS interface, but just use the actors directly, you can add a dependency only to the `core`
module:

val elasticmqCore = "org.elasticmq" %% "elasticmq-core" % "0.8.2"

Repository:

resolvers += "SoftwareMill Releases" at "https://nexus.softwaremill.com/content/repositories/releases"

(ElasticMQ 0.8.2 cannot be deployed to Maven Central as its dependency - Spray - isn't deployed there yet.)
val elasticmqCore = "org.elasticmq" %% "elasticmq-core" % "0.8.3"

If you want to use a snapshot version, you will need to add the [https://oss.sonatype.org/content/repositories/snapshots/](https://oss.sonatype.org/content/repositories/snapshots/) repository to your configuration.

Expand All @@ -145,16 +139,9 @@ Dependencies:
<dependency>
<groupId>org.elasticmq</groupId>
<artifactId>elasticmq-rest-sqs_2.11</artifactId>
<version>0.8.2</version>
<version>0.8.3</version>
</dependency>

Repository:

<repository>
<id>softwaremill-releases</id>
<url>https://nexus.softwaremill.com/content/repositories/releases</url>
</repository>

If you want to use a snapshot version, you will need to add the [https://oss.sonatype.org/content/repositories/snapshots/](https://oss.sonatype.org/content/repositories/snapshots/) repository to your configuration.

Replication, journaling, SQL backend
Expand All @@ -166,9 +153,9 @@ have not yet been reimplemented using the new Akka core.
Current versions
----------------

*Stable*: 0.8.2
*Stable*: 0.8.3

*Development*: 0.8.3-SNAPSHOT
*Development*: 0.8.4-SNAPSHOT

Logging
-------
Expand Down Expand Up @@ -217,6 +204,12 @@ Technology
Change log
----------

#### Version 0.8.3 (22 Oct 2014)

* bug fixes
* updating dependencies
* publishing to Maven Central

#### Version 0.8.2 (6 Jun 2014)

* increasing the bind timeout
Expand Down Expand Up @@ -292,6 +285,3 @@ batch operations (max 10 messages), maximum message size (64KB). Strict by defau
* initial release
* DB storage
* SQS interface support

[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/adamw/elasticmq/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

22 changes: 10 additions & 12 deletions project/Build.scala
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,10 @@ import sbtassembly.Plugin._
import AssemblyKeys._

object BuildSettings {
val buildSettings = Defaults.defaultSettings ++ Seq (
val buildSettings = Defaults.coreDefaultSettings ++ Seq (
organization := "org.elasticmq",
version := "0.8.3-SNAPSHOT",
scalaVersion := "2.11.1",

resolvers += "spray repo" at "http://repo.spray.io",
version := "0.8.3",
scalaVersion := "2.11.2",

addCompilerPlugin("org.scala-lang.plugins" % "scala-continuations-plugin_2.11.0" % "1.0.1"),
libraryDependencies += "org.scala-lang.plugins" %% "scala-continuations-library" % "1.0.2",
Expand All @@ -21,7 +19,7 @@ object BuildSettings {
publishTo := {
val nexus = "https://oss.sonatype.org/"
val (name, url) = if (isSnapshot.value) ("snapshots", nexus + "content/repositories/snapshots")
else ("releases", "https://nexus.softwaremill.com/content/repositories/releases")
else ("releases", nexus + "service/local/staging/deploy/maven2")
Some(name at url)
},
credentials += Credentials(Path.userHome / ".ivy2" / ".credentials"),
Expand All @@ -48,27 +46,27 @@ object BuildSettings {
}

object Dependencies {
val jodaTime = "joda-time" % "joda-time" % "2.3"
val jodaConvert = "org.joda" % "joda-convert" % "1.6"
val jodaTime = "joda-time" % "joda-time" % "2.5"
val jodaConvert = "org.joda" % "joda-convert" % "1.7"
val config = "com.typesafe" % "config" % "1.2.1"

val scalalogging = "com.typesafe.scala-logging" %% "scala-logging-slf4j" % "2.1.2"
val logback = "ch.qos.logback" % "logback-classic" % "1.1.2"
val jclOverSlf4j = "org.slf4j" % "jcl-over-slf4j" % "1.7.7" // needed form amazon java sdk

val scalatest = "org.scalatest" %% "scalatest" % "2.2.0"
val scalatest = "org.scalatest" %% "scalatest" % "2.2.2"
val mockito = "org.mockito" % "mockito-core" % "1.9.5"
val awaitility = "com.jayway.awaitility" % "awaitility-scala" % "1.6.0"

val amazonJavaSdk = "com.amazonaws" % "aws-java-sdk" % "1.8.0" exclude ("commons-logging", "commons-logging")
val amazonJavaSdk = "com.amazonaws" % "aws-java-sdk" % "1.9.1" exclude ("commons-logging", "commons-logging")

val akka2Version = "2.3.3"
val akka2Version = "2.3.6"
val akka2Actor = "com.typesafe.akka" %% "akka-actor" % akka2Version
val akka2Slf4j = "com.typesafe.akka" %% "akka-slf4j" % akka2Version
val akka2Dataflow = "com.typesafe.akka" %% "akka-dataflow" % akka2Version
val akka2Testkit = "com.typesafe.akka" %% "akka-testkit" % akka2Version % "test"

val sprayVersion = "1.3.1"
val sprayVersion = "1.3.2"
val sprayCan = "io.spray" %% "spray-can" % sprayVersion
val sprayRouting = "io.spray" %% "spray-routing" % sprayVersion
val sprayTestkit = "io.spray" %% "spray-testkit" % sprayVersion % "test"
Expand Down
2 changes: 1 addition & 1 deletion project/build.properties
Original file line number Diff line number Diff line change
@@ -1 +1 @@
sbt.version=0.13.5
sbt.version=0.13.6
Original file line number Diff line number Diff line change
Expand Up @@ -20,10 +20,11 @@ trait SendMessageDirectives { this: ElasticMQDirectives with SQSLimitsModule =>
queueActorFromRequest { queueActor =>
anyParamsMap { parameters =>
doSendMessage(queueActor, parameters).map { case (message, digest, messageAttributeDigest) =>
// TODO: Only include MD5OfMessageAttributes if message attributes
respondWith {
<SendMessageResponse>
<SendMessageResult>
<MD5OfMessageAttributes>{messageAttributeDigest}</MD5OfMessageAttributes> // TODO: Only include if message attributes
<MD5OfMessageAttributes>{messageAttributeDigest}</MD5OfMessageAttributes>
<MD5OfMessageBody>{digest}</MD5OfMessageBody>
<MessageId>{message.id.id}</MessageId>
</SendMessageResult>
Expand Down

0 comments on commit 4543c66

Please sign in to comment.