Official TAP v1.0 Release (including ADQL v1.1 and UWS v4.0)
ALL: Move all test classes in a different source package: test
ALL: Add the ANT files to build each library (UWS, ADQL and TAP).
ADQL: Fix ArrayIndexOutOfBoundsException while initializing a DefaultUDF (User Defined Function) object with several parameters.
UWS: Remove debugging message (displayed as an exception) at each job start.
ALL: Reformat in the same way all classes (using Eclipse auto formatting and save actions).
TAP: Test better the JDBC connection URL: several syntaxes are possible. Here, the following syntax did not work before this correction: jdbc:postgresql:database (only if it is a local database). Only jdbc:postgresql://host/database and jdbc:postgresql://host:port/database worked!
TODO Parsing of JDBC connection URL should rather be checked again!
ADQL: 2 BIG BUGS fixed in TextualSearchList:
(1) Missing contains(Object) function. Without this function, any ArrayList function like retainAll(...) did not work properly: the research in the collection was made with a bad key. KeyExtractor was not used.
(2) Result of a research (function get(...)) must return a copy of the result, since the result is an ArrayList, value of the HashMap used for research. If a copy is not returned, any modification (and particularly remove(...)) can be made on the value of the index (HashMap) used for the research.
ADQL: Completely change/improve Joins management, and particularly NATURAL JOIN and USING JOIN. Now, every joined columns are represented by a DBCommonColumn instance which has a given table coverage.
Before, there was a problem while using at least 3 or 4 NATURAL JOINs. Bug raised by Menelaos Perdikeas (ESAC).
TAP: Fix incorrect XML format: the INFO for PROVIDER was not ended properly => an error was raised by TOPCAT when a Java error was occuring in TAP or in a query execution.
ADQL: Use addMatch(...) function also for the root search object in SimpleSearchHandler.
Becareful with the function addMatch(ADQLObject, ADQLIterator): the iterator may be null if the match to add is the root search object itself!
No modification needed in SimpleReplaceHandler: Null test already done :-) !
ADQL: Fix an ADQL bug (raised by Dave Morris) in the management of subqueries: before, it was impossible to use (in a clause different from the FROM) columns of a father query inside a subquery.
ADQL: Correct version number for all modified ADQL related classes since the official v1.1 release. Now, version number after any modification in ADQL is v1.2.
TAP: Missing NULL test (if no MAXREC is provided a NullPointerException would have occured)
TAP: Modify the xSV formats in order to let developer specify a MIME type and short MIME type (or alias) for any SV format, but especially for the one not already managed (CSV and TSV).
Revert "TAP: Modify the xSV formats in order to let developer specify a MIME type and short MIME type (or alias) for any SV format, but especially for the one not already managed (CSV and TSV)."

This reverts commit 2379c606527ea044312679057fc9373049a3f855.
TAP: Improve the way the output limit is checked and set:
  - no provided value => default value
  - no default value => max value
  - no max value => no limit
  - default value must be <= max value
  - user value must be <= max value
ADQL: Fix stupid error in the setReplace(...) function (error detected by Marc W. and findbugs)
ADQL: Remove incorrect end-line characters (\r) in the grammar
ADQL: Fix 2 bugs:
1/ let the function ROUND having 2 parameters
2/ wrap Operations (WrappedOperand) with brackets when there are brackets in the ADQL query