Permalink
Browse files

Merge remote-tracking branch 'origin/develop' into feature/lucence-ra…

…nge-index
  • Loading branch information...
2 parents 3bcba5b + c3a6502 commit 68d500333835e289e71f0ad08ca286a83fdc6614 @wolfgangmm wolfgangmm committed Aug 4, 2013
Showing with 10,504 additions and 9,597 deletions.
  1. +14 −1 .gitignore
  2. +6 −0 .travis.yml
  3. +172 −0 README.md
  4. +1 −1 bin/backup.bat
  5. +1 −1 bin/client.bat
  6. +1 −1 bin/run.bat
  7. +1 −1 bin/server.bat
  8. +1 −1 bin/startup.bat
  9. +1 −1 build.bat
  10. +3 −3 build.properties
  11. +1 −1 build.sh
  12. +1 −3 build.xml
  13. +12 −12 build/scripts/build-impl.xml
  14. +4 −8 build/scripts/dist.xml
  15. +21 −14 build/scripts/installer.xml
  16. +1 −0 build/scripts/junit.xml
  17. +2 −2 build/scripts/macosx.xml
  18. +0 −125 build/scripts/subversion.xml
  19. +1 −1 extensions/contentextraction/ivy.xml
  20. +4 −2 extensions/modules/src/org/exist/xquery/modules/file/Sync.java
  21. +1 −1 extensions/replication/src/org/exist/replication/jms/publish/JMSMessageSender.java
  22. +73 −22 extensions/replication/src/org/exist/replication/jms/publish/ReplicationTrigger.java
  23. +139 −79 extensions/replication/src/org/exist/replication/jms/subscribe/JMSMessageListener.java
  24. +23 −0 extensions/replication/src/org/exist/replication/shared/eXistMessage.java
  25. +1 −1 extensions/xqdoc/build.properties
  26. +1 −1 installer/apps.properties
  27. +7 −1 installer/install.xsl
  28. +1 −1 installer/userInput.xml
  29. +6 −2 installer/vm.properties
  30. +3 −1 src/org/exist/backup/xquery/RetrieveBackup.java
  31. +21 −13 src/org/exist/client/ConnectionDialog.form
  32. +14 −14 src/org/exist/client/ConnectionDialog.java
  33. +198 −160 src/org/exist/config/Configurator.java
  34. +2 −1 src/org/exist/http/servlets/AbstractExistHttpServlet.java
  35. +2 −1 src/org/exist/http/servlets/XQueryServlet.java
  36. +2 −1 src/org/exist/http/servlets/XSLTServlet.java
  37. +3 −2 src/org/exist/http/urlrewrite/XQueryURLRewrite.java
  38. +3 −3 src/org/exist/launcher/ConfigurationDialog.form
  39. +3 −7 src/org/exist/launcher/ConfigurationDialog.java
  40. +20 −12 src/org/exist/launcher/Launcher.java
  41. +5 −0 src/org/exist/launcher/UtilityPanel.java
  42. +11 −5 src/org/exist/repo/AutoDeploymentTrigger.java
  43. +2 −34 src/org/exist/security/internal/AccountImpl.java
  44. +60 −0 src/org/exist/security/internal/web/HttpAccount.java
  45. +14 −2 src/org/exist/start/Main.java
  46. +3 −4 src/org/exist/storage/BrokerPool.java
  47. +20 −0 src/org/exist/storage/txn/Txn.java
  48. +5 −0 src/org/exist/xquery/AttributeConstructor.java
  49. +17 −1 src/org/exist/xquery/BindingExpression.java
  50. +9 −5 src/org/exist/xquery/ConditionalExpression.java
  51. +31 −4 src/org/exist/xquery/DefaultExpressionVisitor.java
  52. +4 −0 src/org/exist/xquery/ElementConstructor.java
  53. +8 −2 src/org/exist/xquery/GroupSpec.java
  54. +7 −1 src/org/exist/xquery/OrderSpec.java
  55. +1 −0 src/org/exist/xquery/SwitchExpression.java
  56. +1 −0 src/org/exist/xquery/TypeswitchExpression.java
  57. +9 −0 src/org/exist/xquery/functions/map/MapExpr.java
  58. +2 −0 src/org/exist/xquery/functions/request/GetData.java
  59. +1 −0 src/org/exist/xquery/functions/system/FunctionTrace.java
  60. +30 −35 src/org/exist/xquery/lib/kwic.xql
  61. +26 −1 src/org/exist/xquery/lib/xqsuite/xqsuite.xql
  62. +2 −0 src/org/exist/xquery/parser/XQuery.g
  63. +3,560 −3,560 src/org/exist/xquery/parser/XQueryLexer.smap
  64. +193 −157 src/org/exist/xquery/parser/XQueryParser.java
  65. +5,316 −5,285 src/org/exist/xquery/parser/XQueryParser.smap
  66. +14 −0 test/src/xquery/optimizer/OptimizerTests.java
  67. +375 −0 test/src/xquery/optimizer/optimizer.xql
  68. +7 −0 test/src/xquery/optimizer/suite.xql
  69. BIN tools/jetty/lib/org.objectweb.asm-3.1.0.v200803061910.jar
View
@@ -17,11 +17,24 @@ start.jar
test/external/
test/src/org/exist/xquery/xqts/
tools/wrapper/bin/exist.sh
-tools/wrapper/conf/
+tools/wrapper/conf/log4j.xml
+tools/wrapper/conf/wrapper.conf
+tools/wrapper/conf/wrapper.conf.install
+tools/wrapper/bin/eXist-db.java.status
+tools/wrapper/bin/eXist-db.pid
+tools/wrapper/bin/eXist-db.status
uninstall/
webapp/WEB-INF/betterform-config.xml
webapp/WEB-INF/betterform-version.info
webapp/WEB-INF/dwr.xml
webapp/WEB-INF/dwr20.dtd
webapp/WEB-INF/web.xml
webapp/xqts/config.xml
+webapp/WEB-INF/logs/*.log
+webapp/WEB-INF/logs/*.log.*
+tools/jetty/logs/
+tools/jetty/tmp/
+tools/wrapper/logs/
+backup/
+test/junit/
+test/temp/
View
@@ -0,0 +1,6 @@
+language: java
+jdk:
+ - openjdk6
+ - openjdk7
+ - oraclejdk7
+script: ./build.sh clean-all all test
View
172 README.md
@@ -0,0 +1,172 @@
+eXist Native XML Database
+=========================
+[![Build Status](https://travis-ci.org/eXist-db/exist.png?branch=develop)](https://travis-ci.org/eXist-db/exist)
+[![Build Status](http://build.exist-db.se/buildStatus/icon?job=github-eXist-db-develop-rebuild-test)](http://build.exist-db.se/view/github/job/github-eXist-db-develop-rebuild-test/)
+
+This is the GitHub for the [eXist](http://www.exist-db.org "eXist") Native XML Database.
+
+If you're looking to work with the eXist source code, you've come to the right place. If not, you're probably looking for the [eXist Documentation](http://www.exist-db.org/exist/apps/doc/ "Documentation of eXist").
+
+If you're looking for help or discussion, visit the eXist community [mailing lists](http://www.exist-db.org/exist/apps/doc/getting-help.xml "eXist Mailing Lists").
+
+
+Information for Developers
+--------------------------
+If you wish to work on the eXist source code we're now using [Git](http://git-scm.org "Git SCM") (and [GitHub](http://www.github.com)) for our source code management. If you're not familiar with Git, we recommend [this excellent online interactive tutorial](http://try.github.io).
+
+
+Building eXist from Source
+--------------------------
+eXist itself is written predominantly in Java 6. The build system is [Apache Ant](http://ant.apache.org/ "The Apache Ant Project").
+
+To build eXist:
+
+- Checkout the Git Repository
+- Execute Ant to compile eXist
+
+```bash
+$ git clone git@github.com:eXist-db/exist.git
+$ cd exist
+$ git checkout master
+$ ./build.sh
+```
+
+**NOTE:**
+In the above example, we switched the current (checked-out) branch from `develop` to `master`. We use the [GitFlow for eXist](#contributing-to-exist) process:
+- `develop` is the current (and stable) work-in-progress (the next release)
+- `master` is the latest release
+The choice of which to use is up to you.
+
+**HINT:**
+In the example above, we use the SSH form of the GitHub repo URL to clone eXist. However, if you're behind a HTTP proxy and your organisation doesn't allow outgoing SSH connections, try the HTTPS URL for our GitHub repo <https://github.com/eXist-db/exist.git>.
+
+From here, you now have a compiled version of eXist that you may use just as you would an installed version of eXist, however it may be desirable to package this up for easy installation elsewhere. If you wish to create a simple ZIP distribution of eXist, run:
+
+```bash
+$ ./build.sh dist-zip
+```
+
+To build a full Installer for eXist, you'll need to have IzPack installed. Set your path to IzPack in `exist/build.properties` and run:
+
+```bash
+$ ./build.sh installer
+```
+
+Otherwise, you may wish to deploy eXist into a Web Application Server as a WAR file. We provide a build for that, too:
+
+```bash
+$ ./build.sh dist-war
+```
+
+For more build options, see the [eXist Build Documentation](http://www.exist-db.org/exist/apps/doc/building.xml "How to build eXist").
+
+
+Contributing to eXist
+---------------------
+We welcome all contributions to eXist!
+
+We strongly suggest that you join the [eXist-development mailing](https://lists.sourceforge.net/lists/listinfo/exist-development "eXist Development Mailing List") list and also subscribe to the [eXist-commits mailing list](https://lists.sourceforge.net/lists/listinfo/exist-commits "eXist SCM Commits Mailing List"), so that you can collaborate with the eXist team and be kept up to date with changes to the codebase.
+
+eXist uses the [GitFlow](http://nvie.com/git-model) branching model for development. Specifically, we're using the [AVH Edition of GitFlow tools](https://github.com/petervanderdoes/gitflow) version.
+
+If you're not familiar with GitFlow, check out some of the good tutorials linked in ["Getting Started"](https://github.com/petervanderdoes/gitflow#getting-started) of the GitFlow AVH Edition page. There's also a very good [git-flow cheatsheet](http://danielkummer.github.io/git-flow-cheatsheet/).
+
+If you wish to contribute, the general approach is:
+
+- Fork the repo on GitHub
+- `git clone` your fork
+- Make sure you've [GitFlow AVH Edition](https://github.com/petervanderdoes/gitflow) installed
+- Run `git flow init` on the cloned repo using [these settings](#our-git-flow-init-settings).
+- Use Git Flow to *start* a hotfix or feature i.e. git flow feature start *my-magic-feature*
+- Do your stuff! :-)
+- Commit to your repo. We like small, atomic commits that don't mix concerns.
+- Use Git Flow to finish the `hotfix` or `feature`. **WARNING:** If you're using a `hotfix`, please don't tag it; there's no way to send an unknown branch from your fork upstream using GitHub's Pull Requests.
+- Push your hotfix or feature branch to your GitHub using GitFlow (`git flow feature publish *my-magic-feature*`)
+- Send us a Pull Request
+
+Pull Requests are reviewed and tested before they're merged by the core development team.
+However, we have one golden rule, even within the core team: **never merge your own pull request**. This simple-but-important rule ensures that at least two people have considered the change.
+
+Although the following are taken from our [Developer Manifesto](http://www.exist-db.org/exist/apps/doc/devguide_manifesto.xml "eXist Project Developer Manifesto") and [Code Review Guide](http://www.exist-db.org/exist/apps/doc/devguide_codereview.xml "eXist Project Code Review Guide"), the main things that get a Pull Request accepted are:
+
+- **Only change what you need to.** If you must reformat code, keep it in a separate commit to any syntax or functionality changes.
+- **Test.** If you fix something prove it, write a test that illustrates the issue before you fix the issue and validate the test. If you add a new feature it needs tests, so that we can understand its intent and try to avoid regressions in future as much as possible.
+- **Make sure the appropriate licence header appears at the top of your source code file.** We use [LGPL v2.1](http://opensource.org/licenses/LGPL-2.1 "The GNU Lesser General Public License, version 2.1") for eXist and *strongly* encourage that, but ultimately any compatible [OSI approved license](http://opensource.org/licenses "Open Source Licenses") without further restrictions may be used.
+- **Run the full eXist test suite.** We don't accept code that causes regressions.
+
+
+Do I work on a bug-fix using a `feature` or a `hotfix`?
+-------------------------------------------------------
+If you want to contribute a *bug-fix*, you need to consider whether this is a `feature` or a `hotfix` in GitFlow terminology.
+
+Making the determination involves considering how the bug-fix is to be applied and how it is to be applied. First, you should carefully read the "Feature branches" and "Hotfix branches" sections from [A successful Git branching model](http://nvie.com/posts/a-successful-git-branching-model/).
+
+If you're still unsure, consider:
+
+- The bug-fix is a hotfix if it is **critical** and needs to go into a very soon to be released revision version i.e. 2.1.n to address an immediate production issue.
+- Otherwise it is a feature, i.e. its just standard development towards the next release of eXist.
+
+Even for a bug-fix you should most probably use a `feature`. If you're certain you want to create a `hotfix`, please consider discussing first via the `exist-development` mailing list.
+
+
+Help! I am a human, what does this all mean?
+--------------------------------------------
+- You work in features using GitFlow in your own fork of our repo.
+- If you want to push your feature to your fork before you have finished it locally, i.e. for the purposes of backup or collaboration, you can use *git flow feature publish my-magic-feature*.
+- You will only ever send Pull Requests between your 'develop' branch and our 'develop' branch. i.e. finished features.
+- If you follow the details above and make it easy for us to accept your Pull Requests, they will get accepted and merged quickly!
+- Your fork will eventually become out of sync with the upstream repo as others contribute to eXist. To pull upstream changes into your fork, see: [Syncing a Fork](https://help.github.com/articles/syncing-a-fork). It is usually a good idea to do this at least before you start working on a new feature, and probably before you send us a Pull Request, as it will make merging for us much simpler!
+
+
+Our `git-flow init` settings
+----------------------------
+When we started working with the eXist repo we needed to configure it for GitFlow:
+
+```bash
+$ git flow init
+
+Which branch should be used for bringing forth production releases?
+ - master
+Branch name for production releases: [master]
+Branch name for "next release" development: [develop]
+
+How to name your supporting branch prefixes?
+Feature branches? [feature/]
+Release branches? [release/]
+Hotfix branches? [hotfix/]
+Support branches? [support/]
+Version tag prefix? [] eXist-
+```
+
+A new `develop` branch is created, and checked out.
+
+Verify it like this:
+
+```bash
+$ git status
+# On branch develop
+```
+
+As we have already started with GitFlow, when you run `git flow init`, you'll get slightly different prompts--but the same answers apply!
+
+You **must** use the following settings:
+
+```bash
+$ git flow init
+
+Which branch should be used for bringing forth production releases?
+ - develop
+Branch name for production releases: [] master
+
+Which branch should be used for integration of the "next release"?
+ - develop
+Branch name for "next release" development: [develop]
+
+How to name your supporting branch prefixes?
+Feature branches? [feature/]
+Release branches? [release/]
+Hotfix branches? [hotfix/]
+Support branches? [support/]
+Version tag prefix? [] eXist-
+
+```
View
@@ -56,7 +56,7 @@ goto :eof
set MX=768
rem @WINDOWS_INSTALLER_3@
-set JAVA_ENDORSED_DIRS="%EXIST_HOME%"\lib\endorsed
+set JAVA_ENDORSED_DIRS="%EXIST_HOME%\lib\endorsed"
set JAVA_OPTS="-Xms128m -Xmx%MX%m -Dfile.encoding=UTF-8 -Djava.endorsed.dirs=%JAVA_ENDORSED_DIRS%"
%JAVA_RUN% "%JAVA_OPTS%" -Dexist.home="%EXIST_HOME%" -jar "%EXIST_HOME%\start.jar" backup %CMD_LINE_ARGS%
View
@@ -46,7 +46,7 @@ goto :eof
set MX=1024
rem @WINDOWS_INSTALLER_3@
-set JAVA_ENDORSED_DIRS="%EXIST_HOME%"\lib\endorsed
+set JAVA_ENDORSED_DIRS="%EXIST_HOME%\lib\endorsed"
set JAVA_OPTS="-Xms128m -Xmx%MX%m -Dfile.encoding=UTF-8 -Djava.endorsed.dirs=%JAVA_ENDORSED_DIRS%"
set BATCH.D="%EXIST_HOME%\bin\batch.d"
View
@@ -53,7 +53,7 @@ goto :eof
set MX=768
rem @WINDOWS_INSTALLER_3@
-set JAVA_ENDORSED_DIRS="%EXIST_HOME%"\lib\endorsed
+set JAVA_ENDORSED_DIRS="%EXIST_HOME%\lib\endorsed"
set JAVA_OPTS="-Xms128m -Xmx%MX%m -Dfile.encoding=UTF-8 -Djava.endorsed.dirs=%JAVA_ENDORSED_DIRS%"
:gotJavaOpts
View
@@ -47,7 +47,7 @@ goto :eof
set MX=1024
rem @WINDOWS_INSTALLER_3@
-set JAVA_ENDORSED_DIRS="%EXIST_HOME%"\lib\endorsed
+set JAVA_ENDORSED_DIRS="%EXIST_HOME%\lib\endorsed"
set JAVA_OPTS="-Xms128m -Xmx%MX%m -Dfile.encoding=UTF-8 -Djava.endorsed.dirs=%JAVA_ENDORSED_DIRS%"
set BATCH.D="%EXIST_HOME%\bin\batch.d"
View
@@ -48,7 +48,7 @@ goto :eof
set MX=1024
rem @WINDOWS_INSTALLER_3@
-set JAVA_ENDORSED_DIRS="%EXIST_HOME%"\lib\endorsed
+set JAVA_ENDORSED_DIRS="%EXIST_HOME%\lib\endorsed"
set JAVA_OPTS="-Xms128m -Xmx%MX%m -Dfile.encoding=UTF-8 -Djava.endorsed.dirs=%JAVA_ENDORSED_DIRS%"
set BATCH.D="%EXIST_HOME%\bin\batch.d"
View
@@ -21,7 +21,7 @@ set EXIST_HOME=%CD%
:gotExistHome
set ANT_HOME=%EXIST_HOME%\tools\ant
-set _LIBJARS=%CLASSPATH%;%ANT_HOME%\lib\ant-launcher.jar;%EXIST_HOME%\lib\user\svnkit.jar;%EXIST_HOME%\lib\user\svnkit-cli.jar
+set _LIBJARS=%CLASSPATH%;%ANT_HOME%\lib\ant-launcher.jar
set JAVA_ENDORSED_DIRS=%EXIST_HOME%\lib\endorsed
View
@@ -4,8 +4,8 @@
#
# $Id$
project.name = eXist-db
-project.version = 2.1dev
-project.version.numeric = 2.1.0
+project.version = 2.1
+project.version.numeric = 2.1
project.codename = Ruesselsheim
# build settings
@@ -68,7 +68,7 @@ antlr.traceTreeWalker = false
# You might need to change PermSpace to atleast 84 MB eg -XX:MaxPermSize=84m
# If you only want to point to your own izpack installation directory
# add this in local.build.properties instead so you don't commit it by mistake.
-izpack.dir = /Applications/IzPack-4.3.5/
+izpack.dir = /Applications/IzPack/
# Launch4J is required to create the windows installer
# If you change this property value for a reason,
View
@@ -30,7 +30,7 @@ fi
ANT_HOME="$EXIST_HOME/tools/ant"
-LOCALCLASSPATH="$ANT_HOME/lib/ant-launcher.jar:$EXIST_HOME/lib/user/svnkit.jar:$EXIST_HOME/lib/user/svnkit-cli.jar"
+LOCALCLASSPATH="$ANT_HOME/lib/ant-launcher.jar"
JAVA_ENDORSED_DIRS="$EXIST_HOME"/lib/endorsed
View
@@ -2,7 +2,7 @@
<!-- ======================================================================= -->
<!-- eXist 2.x build file -->
<!-- ======================================================================= -->
-<!-- $Id$ -->
+
<project basedir="." default="all" name="eXist-DB">
<description>eXist Open Source Native XML Database</description>
@@ -32,6 +32,4 @@
<import file="build/scripts/performance.xml"/>
<import file="build/scripts/quality.xml"/>
<import file="build/scripts/static-docs.xml"/>
- <import file="build/scripts/subversion.xml"/>
-
</project>
Oops, something went wrong.

0 comments on commit 68d5003

Please sign in to comment.