diff --git a/.gitignore b/.gitignore index 8553effaf..b0c75b8ac 100644 --- a/.gitignore +++ b/.gitignore @@ -4,7 +4,6 @@ bin build .gradle .springBeans -pom.xml *.iml *.ipr *.iws diff --git a/.travis.yml b/.travis.yml index a516bb2f3..f32177201 100644 --- a/.travis.yml +++ b/.travis.yml @@ -2,4 +2,16 @@ language: java jdk: - oraclejdk7 - oraclejdk8 -script: make test +env: + matrix: + - PROFILE=ci + - PROFILE=spring41-next + - PROFILE=spring42 + - PROFILE=spring42-next + - PROFILE=spring43-next +cache: + directories: + - $HOME/.m2 +sudo: false +install: true +script: travis_wait make test SPRING_PROFILE=${PROFILE} diff --git a/Makefile b/Makefile index b0fc23f62..3ee1a3b34 100644 --- a/Makefile +++ b/Makefile @@ -13,6 +13,7 @@ # limitations under the License. REDIS_VERSION:=2.8.19 +SPRING_PROFILE?=ci ####### # Redis @@ -95,5 +96,5 @@ stop: redis-stop sentinel-stop test: $(MAKE) start sleep 2 - $(PWD)/gradlew clean build -DrunLongTests=true -S + mvn clean install -DrunLongTests=true -P$(SPRING_PROFILE) $(MAKE) stop diff --git a/README.md b/README.md index 44f67e370..3783da5cc 100644 --- a/README.md +++ b/README.md @@ -92,21 +92,22 @@ List peopleOnSecondFloor = listOps.range("users:floor:2", 0, -1); # Building -Spring Data Redis uses Gradle as its build system. To build the system simply run: +Spring Data Redis uses Maven as its build system. +Running the tests requires you to have a RedisServer running at its default port. Using the `-D runLongTests=true` option executes additional Pub/Sub test. - gradlew +```bash + mvn clean install +``` -from the project root folder. This will compile the sources, run the tests and create the artifacts. +You can alternatively use the provided `Makefile` which runs the build plus downloads and spins up the following environment: -To generate IDE-specific files, use +* 1 Single Node +* HA Redis (1 Master, 2 Slaves, 3 Sentinels). +* Redis Cluster (3 Masters, 1 Slave) - gradlew eclipse - -or - - gradlew idea - -depending on your editor. +```bash + make test +``` # Contributing diff --git a/docs/src/api/doc-files/th-background.png b/docs/src/api/doc-files/th-background.png deleted file mode 100644 index 72d65e771..000000000 Binary files a/docs/src/api/doc-files/th-background.png and /dev/null differ diff --git a/docs/src/api/overview.html b/docs/src/api/overview.html deleted file mode 100644 index cfff7c8f3..000000000 --- a/docs/src/api/overview.html +++ /dev/null @@ -1,24 +0,0 @@ - - -This document is the API specification for the Spring Data project. -
- -
- -

- If you are interested in commercial training, consultancy and - support for the Spring Data Framework, - Pivotal Software, Inc. provides - such commercial support. -

-
- - \ No newline at end of file diff --git a/docs/src/api/spring-javadoc.css b/docs/src/api/spring-javadoc.css deleted file mode 100644 index 1f009c4bc..000000000 --- a/docs/src/api/spring-javadoc.css +++ /dev/null @@ -1,48 +0,0 @@ -/* Spring-specific Javadoc style sheet rules */ - -#overviewBody { - -} - -.code { - border: 1px solid black; - background-color: #F4F4F4; - padding: 5px; -} - -/* Vanilla Javadoc style sheet rules */ - -body { - font-family: Helvetica, Arial, sans-serif; - background-color: white; - font-size: 10pt; -} - -td { font-size: 10pt; font-family: Helvetica, Arial, sans-serif }/* Javadoc style sheet */ - -/* Define colors, fonts and other style attributes here to override the defaults */ - -/* Page background color */ -body { background-color: #FFFFFF } - -/* Headings */ -h1 { font-size: 145% } - -/* Table colors */ -.TableHeadingColor { background: #CCCCFF } /* Dark mauve */ -.TableSubHeadingColor { background: #EEEEFF } /* Light mauve */ -.TableRowColor { background: #FFFFFF } /* White */ - -/* Font used in left-hand frame lists */ -.FrameTitleFont { font-size: 100%; font-family: Helvetica, Arial, sans-serif } -.FrameHeadingFont { font-size: 90%; font-family: Helvetica, Arial, sans-serif } -.FrameItemFont { font-size: 90%; font-family: Helvetica, Arial, sans-serif } - -/* Navigation bar fonts and colors */ -.NavBarCell1 { background-color:#EEEEFF;} /* Light mauve */ -.NavBarCell1Rev { background-color:#00008B;} /* Dark Blue */ -.NavBarFont1 { font-family: Arial, Helvetica, sans-serif; color:#000000;} -.NavBarFont1Rev { font-family: Arial, Helvetica, sans-serif; color:#FFFFFF;} - -.NavBarCell2 { font-family: Arial, Helvetica, sans-serif; background-color:#FFFFFF;} -.NavBarCell3 { font-family: Arial, Helvetica, sans-serif; background-color:#FFFFFF;} diff --git a/docs/src/reference/docbook/index.xml b/docs/src/reference/docbook/index.xml deleted file mode 100644 index 39359184d..000000000 --- a/docs/src/reference/docbook/index.xml +++ /dev/null @@ -1,79 +0,0 @@ - - - - - Spring Data Redis Reference Documentation - Spring Data Redis ${version} - ${version} - Spring Data Redis - - - - Costin - Leau - SpringSource - - - Jennifer - Hickey - SpringSource - - - Christoph - Strobl - Pivotal Software, Inc. - - - Thomas - Darimont - Pivotal Software, Inc. - - - - - - Copies of this document may be made for your own use and for distribution - to others, provided that you do not charge any fee for such copies and - further provided that each copy contains this Copyright Notice, whether - distributed in print or electronically. - - - - - 2011-2014 - The original authors. - - - - - - - - - Introduction - - - - - - - - - Reference Documentation - - - - - - - Appendixes - - - - - - - \ No newline at end of file diff --git a/pom.xml b/pom.xml new file mode 100644 index 000000000..b78b09e13 --- /dev/null +++ b/pom.xml @@ -0,0 +1,239 @@ + + + + 4.0.0 + + org.springframework.data + spring-data-redis + 1.5.3.BUILD-SNAPSHOT + + Spring Data Redis + + + org.springframework.data.build + spring-data-parent + 1.6.3.BUILD-SNAPSHOT + + + + DATAREDIS + 1.1 + 1.9.2 + 1.4.4 + 2.2 + 2.3.3 + 2.6.2 + 0.7 + 06052013 + + + + + + + org.apache.commons + commons-pool2 + ${pool} + + + + + + + + + + org.springframework + spring-tx + + + + org.springframework + spring-oxm + + + + org.springframework + spring-aop + + + + org.springframework + spring-context-support + + + + + + redis.clients + jedis + ${jedis} + true + + + + org.jredis + jredis-core-api + ${jredis} + true + + + + org.jredis + jredis-core-ri + ${jredis} + true + + + + com.github.spullara.redis + client + ${srp} + true + + + + com.lambdaworks + lettuce + ${lettuce} + true + + + + + + org.codehaus.jackson + jackson-mapper-asl + 1.8.8 + true + + + + com.fasterxml.jackson.core + jackson-core + ${jackson} + true + + + + com.fasterxml.jackson.core + jackson-databind + ${jackson} + true + + + + commons-beanutils + commons-beanutils + ${beanutils} + true + + + + + + org.apache.commons + commons-pool2 + true + + + + + + org.springframework + spring-jdbc + test + + + + javax.transaction + jta + ${jta} + test + + + + javax.annotation + jsr250-api + 1.0 + test + + + + com.thoughtworks.xstream + xstream + ${xstream} + test + + + + + + + + org.apache.maven.plugins + maven-surefire-plugin + + + **/*Tests.java + **/*Test.java + + false + + true + ${basedir}/src/test/resources/trusted.keystore + + + + + + org.apache.maven.plugins + maven-assembly-plugin + + + + org.codehaus.mojo + wagon-maven-plugin + + + + org.asciidoctor + asciidoctor-maven-plugin + + + + + + + + release + + + + + org.jfrog.buildinfo + artifactory-maven-plugin + false + + + + + + + + + + spring-libs-snapshot + https://repo.spring.io/libs-snapshot + + + + + + spring-plugins-release + https://repo.spring.io/plugins-release + + + diff --git a/src/asciidoc/appendix/appendix-command-reference.adoc b/src/main/asciidoc/appendix/appendix-command-reference.adoc similarity index 100% rename from src/asciidoc/appendix/appendix-command-reference.adoc rename to src/main/asciidoc/appendix/appendix-command-reference.adoc diff --git a/src/asciidoc/appendix/appendix-schema.adoc b/src/main/asciidoc/appendix/appendix-schema.adoc similarity index 87% rename from src/asciidoc/appendix/appendix-schema.adoc rename to src/main/asciidoc/appendix/appendix-schema.adoc index ced57d0c4..8b98c4f0a 100644 --- a/src/asciidoc/appendix/appendix-schema.adoc +++ b/src/main/asciidoc/appendix/appendix-schema.adoc @@ -1,7 +1,7 @@ [[appendix:schema]] [appendix] = Schema -:resourcesDir: ../../main/resources +:resourcesDir: ../../resources == Core schema diff --git a/src/asciidoc/appendix/introduction.adoc b/src/main/asciidoc/appendix/introduction.adoc similarity index 100% rename from src/asciidoc/appendix/introduction.adoc rename to src/main/asciidoc/appendix/introduction.adoc diff --git a/src/asciidoc/index.adoc b/src/main/asciidoc/index.adoc similarity index 93% rename from src/asciidoc/index.adoc rename to src/main/asciidoc/index.adoc index 19c978c06..cade2e5b4 100644 --- a/src/asciidoc/index.adoc +++ b/src/main/asciidoc/index.adoc @@ -1,4 +1,3 @@ -[[spring-data-keyvalue-reference]] = Spring Data Redis Costin Leau, Jennifer Hickey, Christoph Strobl, Thomas Darimont :revnumber: {version} @@ -7,14 +6,16 @@ Costin Leau, Jennifer Hickey, Christoph Strobl, Thomas Darimont :toc-placement!: :spring-data-commons-docs: https://raw.githubusercontent.com/spring-projects/spring-data-commons/master/src/main/asciidoc -(C) 2011-2014 The original authors. +(C) 2011-2016 The original authors. NOTE: Copies of this document may be made for your own use and for distribution to others, provided that you do not charge any fee for such copies and further provided that each copy contains this Copyright Notice, whether distributed in print or electronically. toc::[] include::preface.adoc[] +:leveloffset: +1 include::new-features.adoc[] +:leveloffset: -1 [[introduction]] = Introduction @@ -42,3 +43,4 @@ include::reference/redis.adoc[] include::appendix/introduction.adoc[] include::appendix/appendix-schema.adoc[] include::appendix/appendix-command-reference.adoc[] +:leveloffset: -1 \ No newline at end of file diff --git a/src/asciidoc/introduction/getting-started.adoc b/src/main/asciidoc/introduction/getting-started.adoc similarity index 100% rename from src/asciidoc/introduction/getting-started.adoc rename to src/main/asciidoc/introduction/getting-started.adoc diff --git a/src/asciidoc/introduction/introduction.adoc b/src/main/asciidoc/introduction/introduction.adoc similarity index 100% rename from src/asciidoc/introduction/introduction.adoc rename to src/main/asciidoc/introduction/introduction.adoc diff --git a/src/asciidoc/introduction/requirements.adoc b/src/main/asciidoc/introduction/requirements.adoc similarity index 100% rename from src/asciidoc/introduction/requirements.adoc rename to src/main/asciidoc/introduction/requirements.adoc diff --git a/src/asciidoc/introduction/why-sdr.adoc b/src/main/asciidoc/introduction/why-sdr.adoc similarity index 100% rename from src/asciidoc/introduction/why-sdr.adoc rename to src/main/asciidoc/introduction/why-sdr.adoc diff --git a/src/asciidoc/new-features.adoc b/src/main/asciidoc/new-features.adoc similarity index 88% rename from src/asciidoc/new-features.adoc rename to src/main/asciidoc/new-features.adoc index c478aae31..9bfc31d6e 100644 --- a/src/asciidoc/new-features.adoc +++ b/src/main/asciidoc/new-features.adoc @@ -1,6 +1,8 @@ [[new-features]] = New Features +New and noteworthy in the latest releases. + [[new-in-1-5-0]] == New in Spring Data Redis 1.5 diff --git a/src/asciidoc/preface.adoc b/src/main/asciidoc/preface.adoc similarity index 100% rename from src/asciidoc/preface.adoc rename to src/main/asciidoc/preface.adoc diff --git a/src/asciidoc/reference/introduction.adoc b/src/main/asciidoc/reference/introduction.adoc similarity index 100% rename from src/asciidoc/reference/introduction.adoc rename to src/main/asciidoc/reference/introduction.adoc diff --git a/src/asciidoc/reference/pipelining.adoc b/src/main/asciidoc/reference/pipelining.adoc similarity index 100% rename from src/asciidoc/reference/pipelining.adoc rename to src/main/asciidoc/reference/pipelining.adoc diff --git a/src/asciidoc/reference/redis-messaging.adoc b/src/main/asciidoc/reference/redis-messaging.adoc similarity index 100% rename from src/asciidoc/reference/redis-messaging.adoc rename to src/main/asciidoc/reference/redis-messaging.adoc diff --git a/src/asciidoc/reference/redis-scripting.adoc b/src/main/asciidoc/reference/redis-scripting.adoc similarity index 100% rename from src/asciidoc/reference/redis-scripting.adoc rename to src/main/asciidoc/reference/redis-scripting.adoc diff --git a/src/asciidoc/reference/redis-transactions.adoc b/src/main/asciidoc/reference/redis-transactions.adoc similarity index 100% rename from src/asciidoc/reference/redis-transactions.adoc rename to src/main/asciidoc/reference/redis-transactions.adoc diff --git a/src/asciidoc/reference/redis.adoc b/src/main/asciidoc/reference/redis.adoc similarity index 100% rename from src/asciidoc/reference/redis.adoc rename to src/main/asciidoc/reference/redis.adoc diff --git a/docs/src/info/changelog.txt b/src/main/resources/changelog.txt similarity index 100% rename from docs/src/info/changelog.txt rename to src/main/resources/changelog.txt diff --git a/docs/src/info/license.txt b/src/main/resources/license.txt similarity index 100% rename from docs/src/info/license.txt rename to src/main/resources/license.txt diff --git a/docs/src/info/notice.txt b/src/main/resources/notice.txt similarity index 100% rename from docs/src/info/notice.txt rename to src/main/resources/notice.txt diff --git a/docs/src/info/readme.txt b/src/main/resources/readme.txt similarity index 100% rename from docs/src/info/readme.txt rename to src/main/resources/readme.txt diff --git a/src/test/resources/logback.xml b/src/test/resources/logback.xml new file mode 100644 index 000000000..897f4591b --- /dev/null +++ b/src/test/resources/logback.xml @@ -0,0 +1,16 @@ + + + + + + %d %5p %40.40c:%4L - %m%n + + + + + + + + + + \ No newline at end of file diff --git a/template.mf b/template.mf index e29650657..8aa2c4f63 100644 --- a/template.mf +++ b/template.mf @@ -1,32 +1,36 @@ -Bundle-SymbolicName: org.springframework.data.redis -Bundle-Name: Spring Data Redis Support -Bundle-Vendor: Pivotal Software, Inc. Bundle-ManifestVersion: 2 +Bundle-SymbolicName: org.springframework.data.redis +Bundle-Name: ${project.name} +Bundle-Vendor: Pivotal Software, Inc. +Bundle-Version: ${project.version} +Bundle-RequiredExecutionEnvironment: J2SE-1.6 +Export-Template: + org.springframework.data.redis.*;version="${project.version}" Import-Package: sun.reflect;version="0";resolution:=optional Import-Template: - org.springframework.beans.*;version="[4.0.9, 4.1.0)", - org.springframework.cache.*;version="[4.0.9, 4.1.0)", - org.springframework.context.*;version="[4.0.9, 4.1.0)", - org.springframework.core.*;version="[4.0.9, 4.1.0)", - org.springframework.dao.*;version="[4.0.9, 4.1.0)", - org.springframework.scheduling.*;resolution:="optional";version="[4.0.9, 4.1.0)", - org.springframework.scripting.*;resolution:="optional";version="[4.0.9, 4.1.0)", - org.springframework.util.*;version="[4.0.9, 4.1.0)", - org.springframework.aop.*;version="[4.0.9, 4.1.0)", - org.springframework.cglib.*;version="[4.0.9, 4.1.0)", - org.springframework.oxm.*;resolution:="optional";version="[4.0.9, 4.1.0)", - org.springframework.transaction.support.*;version="[4.0.9, 4.1.0)", + org.springframework.beans.*;version="${spring:[=.=.=.=,+1.1.0)}", + org.springframework.cache.*;version="${spring:[=.=.=.=,+1.1.0)}", + org.springframework.context.*;version="${spring:[=.=.=.=,+1.1.0)}", + org.springframework.core.*;version="${spring:[=.=.=.=,+1.1.0)}", + org.springframework.dao.*;version="${spring:[=.=.=.=,+1.1.0)}", + org.springframework.scheduling.*;resolution:="optional";version="${spring:[=.=.=.=,+1.1.0)}", + org.springframework.scripting.*;resolution:="optional";version="${spring:[=.=.=.=,+1.1.0)}", + org.springframework.util.*;version="${spring:[=.=.=.=,+1.1.0)}", + org.springframework.aop.*;version="${spring:[=.=.=.=,+1.1.0)}", + org.springframework.cglib.*;version="${spring:[=.=.=.=,+1.1.0)}", + org.springframework.oxm.*;resolution:="optional";version="${spring:[=.=.=.=,+1.1.0)}", + org.springframework.transaction.support.*;version="${spring:[=.=.=.=,+1.1.0)}", org.aopalliance.*;version="[1.0.0, 2.0.0)";resolution:=optional, org.apache.commons.logging.*;version="[1.1.1, 2.0.0)", org.w3c.dom.*;version="0", javax.xml.transform.*;resolution:="optional";version="0", org.jredis.*;resolution:="optional";version="[1.0.0, 2.0.0)", - redis.clients.*;resolution:="optional";version="[2.6.2, 3.0.0)", - org.apache.commons.pool2.*;resolution:="optional";version="[1.0, 2.2)", + redis.clients.*;resolution:="optional";version="${jedis}", + org.apache.commons.pool2.*;resolution:="optional";version="${pool}", org.codehaus.jackson.*;resolution:="optional";version="[1.6, 2.0.0)", - com.fasterxml.jackson.*;resolution:="optional";version="[2.0.0, 3.0.0)", - org.apache.commons.beanutils.*;resolution:="optional";version=1.8.5, + com.fasterxml.jackson.*;resolution:="optional";version="${jackson}", + org.apache.commons.beanutils.*;resolution:="optional";version="${beanutils}", redis.*;resolution:="optional";version="[0.2, 1.0)", com.google.common.*;resolution:="optional";version="[11.0.0, 20.0.0)", com.lambdaworks.*;resolution:="optional";version="[2.2.0, 3.0.0)",