Hibernate Validator Changelog ============================= 5.1.0.Final (02.03.2014) -----------------------** Bug * [HV-865] - java.lang.NullPointerException at org.hibernate.validator.

inter nal.cdi.InjectingConstraintValidatorFactory.releaseInstance 5.1.0.CR1 (17.02.2014) ---------------------** Bug * [HV-834] - Support curly braces within EL expressions * [HV-858] - ValidatorFactoryBean should use default BV provider * [HV-860] - Leverage validated value unwrapper for validateProperty() and v alidateValue() ** Improvement * [HV-859] - Allow to upload to /docs_htdocs/hibernate/stable/validator for final releases ** New Feature * [HV-814] - Re-consider semantics of options of mod check constraints ** Remove Feature * [HV-799] - EANValidator removed from the latest versions ** Task * [HV-812] - Make @Mod10Check and @Mod11Check constraints usable via API * [HV-837] - Re-enable CustomValidatorFactoryInPersistenceUnitIT#testValidat orFactoryPassedToPersistenceUnit 5.1.0.Beta1 (15.01.2014) -----------------------** Bug * [HV-596] - Improve error message for unsupported validateValue() invocatio ns * [HV-808] - Brazilian CPF and ModCheck Validator are returning false positi ves * [HV-809] - Create Dedicated Mod10 and Mod11 constraints * [HV-810] - @Email constraint accepts addresses with trailing @ characters * [HV-818] - ArrayIndexOutOfBoundsException in ReflectionHelper#parametersRe solveToSameTypes() * [HV-838] - ReflectionHelper leaks deployment classes in wildfly integratio n * [HV-842] - XmlParserHelper can leak deployment classloader in wildfly inte gration * [HV-843] - Make members of non-public constraint types accessible * [HV-848] - ValidationContext$BeanAndPath shouldn't access hashCode() of va lidated beans ** Improvement * [HV-589] - Keep a constant metadata placeholder for unconstrained entities * [HV-789] - Update dependencies for CDI, Weld etc. * [HV-793] - Fail during building of validator factory in case EL dependenci

es are missing * [HV-805] alidation engine * [HV-815] * [HV-817] ype" * [HV-821] * [HV-835] * [HV-841] * [HV-845] * [HV-850] ** New Feature * [HV-565] * [HV-813] * [HV-819] val customizable * [HV-824] -

Raise descriptive exception in case parameter array passed to v has wrong length German translation of @Length message is incorrect Rethink Validator SafeHtml design to support custom "WhiteListT Improve reference documentation for EL interpolation Update to Classmate 1.0.0 Add "UnusedImports" check to checkstyle.xml ValidationMessage for Korean Add checkstyle IllegalImport configuration for junit.framework @Valid for custom composite types Make @Mod10 check constraint more generic Add an API/SPI which allows to make the process of value retrie Use WildFly for integration tests

5.1.0.Alpha1 (09.08.2013) ------------------------** Bug * [HV-691] - Failed tests: testBeanMetaDataCanBeGarbageCollected(org.hiber nate.validator.test.internal.metadata.BeanMetaDataManagerTest) * [HV-716] - Refactor programmatic API to instantiate the raw model classes directly * [HV-798] - Escaping validator messages doesn't work ** Improvement * [HV-652] * [HV-760] * [HV-769] raints * [HV-779] * [HV-796] - Update JavaDoc stylesheet when building with Java 7 - Align line endings style - Derive constraint target automatically for XML-configured const - Remove dependency to run in Android - Convert missing files with incorrect line endings

** New Feature * [HV-642] - Extend programmatic constraint API to support new constructs fr om BV 1.1 * [HV-701] - Provide API to make additional objects available for message in terpolation * [HV-714] - Provide cross-parameter validator for @ScriptAssert ** Patch * [HV-797] - Require Maven 3.0.3 to build ** Task * [HV-619] * [HV-637] * [HV-684] * [HV-802] Use WildFly for tck-runner module Investigate performance regression between HV 4.3 and 5.0 Some follow-up tasks/minor todos Investigate integration with ParaNamer

5.0.1.Final (30.04.2013) -----------------------** Bug * [HV-702] - Upgrade JPA version used in HV

* [HV-725] - Update docbook documentation to reflect the changes of Bean Val idation 1.1 * [HV-790] - Change EL impl dependency scope from runtime to provided * [HV-791] - XML configuration fails for primitive types ** Improvement * [HV-604] - Class-level constraints section of online docs refers to Passen gerCount example which is never shown 5.0.0.Final (11.04.2013) -----------------------** Bug * [HV-787] - javax.enterprise.inject.spi.Bean implementations should also im plement PassivationCapable * [HV-788] - Upgrade BV API and TCK to final versions ** Improvement * [HV-752] - Check transitive dependencies from CDI API * [HV-785] - Improve structure of JavaDoc ** Task * [HV-781] - Align with latest Weld release 5.0.0.CR5 (02.04.2013) ---------------------** Bug * [HV-778] - Provide a way to deactivate cdi extension * [HV-782] - Multiple constraint-mappings files for one constraint to not wo rk ** Improvement * [HV-648] * [HV-724] * [HV-783] * [HV-786] Script documentation and distribution upload Remove JavaDoc warnings Extract hierarchy related functionality from ReflectionHelper Update dependencies to Weld and BV TCK

5.0.0.CR4 (20.03.2013) ---------------------** Bug * [HV-678] - Constraint is validated several times if part of several groups * [HV-766] - Method return values are allowed to be marked with @Valid in pa rallel methods * [HV-767] - Group conversions not correctly applied for inherited group * [HV-771] - @ValidateOnExecution not retrieved from overridden methods for sub-classes * [HV-772] - @ValidateOnExecution not always retrieved from highest method i n inheritance hierarchy * [HV-773] - @ValidateOnExecution(type=IMPLICIT) on type-level causes getter s to be validated * [HV-774] - Consider return type when detecting getter methods * [HV-775] - Node#as() doesn't throw ClassCastException if wrong type is pas sed * [HV-776] - ValidationExtension should throw an exception in case of invali d @ValidateOnExecution configuration

** Improvement * [HV-672] - Throw meaningful exception in case object and method passed to validateParameters() don't match * [HV-768] - Eagerly throw exceptions in case of illegal method constraints * [HV-770] - Cascaded return value validation causes exception when used wit h Weld * [HV-777] - Adapt to changed option name for excluding integration tests fr om TCK run 5.0.0.CR3 (15.03.2013) ---------------------** Bug * [HV-704] - Mark dependency to UEL as provided * [HV-728] - ConstraintViolation#getLeafBean() returns null for constructor return value validation * [HV-729] - Consider "\$" as the literal "$" instead of considering it as t he beginning of a message expression * [HV-730] - Propagate "validationAppliesTo" to composing constraints * [HV-732] - Verification whether group conversions is specified on cascaded element cannot be made in raw model * [HV-734] - Align XML parsing code with the latest xsd in the BV API * [HV-735] - Xml parsing needs to track whether 'ignore-annotations' is set to true or false or not at all * [HV-737] - A getter method can only by configured via XML by either a gett er or method node, not both * [HV-743] - Messages using EL should stay unchanged also if RuntimeExceptio ns are raised * [HV-744] - Wrap exceptions from message interpolators into ValidationExcep tion * [HV-747] - Wrong validator used when constraint has generic and cross-para meter validator for the same type * [HV-748] - Throw UnexpectedTypeException if there are two validators for t he same type ** Improvement * [HV-723] - Re-enable CDI portable extension * [HV-736] - Provide patched JAR for making AS 7.1.1 usable with HV 5.x ** Task * [HV-439] * [HV-740] r binding * [HV-745] raint attributes Revisit the use of generics in ValidatorImpl Implement programmatic addition of method validation intercepto Default package is not taken into account for class-typed const configured via XML

5.0.0.CR2 (11.03.2013) ---------------------** Bug * [HV-704] - Mark dependency to UEL as provided * [HV-728] - ConstraintViolation#getLeafBean() returns null for constructor return value validation * [HV-729] - Consider "\$" as the literal "$" instead of considering it as t he beginning of a message expression * [HV-730] - Propagate "validationAppliesTo" to composing constraints * [HV-732] - Verification whether group conversions is specified on cascaded

element cannot be made in raw model * [HV-734] - Align XML parsing code with the latest xsd in the BV API * [HV-735] - Xml parsing needs to track whether 'ignore-annotations' is set to true or false or not at all * [HV-737] - A getter method can only by configured via XML by either a gett er or method node, not both * [HV-743] - Messages using EL should stay unchanged also if RuntimeExceptio ns are raised * [HV-744] - Wrap exceptions from message interpolators into ValidationExcep tion * [HV-747] - Wrong validator used when constraint has generic and cross-para meter validator for the same type * [HV-748] - Throw UnexpectedTypeException if there are two validators for t he same type ** Improvement * [HV-723] - Re-enable CDI portable extension * [HV-736] - Provide patched JAR for making AS 7.1.1 usable with HV 5.x ** Task * [HV-439] * [HV-740] r binding * [HV-745] raint attributes Revisit the use of generics in ValidatorImpl Implement programmatic addition of method validation intercepto Default package is not taken into account for class-typed const configured via XML

5.0.0.CR1 (21.02.2013) ---------------------** Bug * [HV-683] - Meta model should not be retrievable in case of illegal paramet er constraints in hierarchies * [HV-699] - Import EL packages in OSGi manifest * [HV-703] - Upgrade Jsoups dependency * [HV-707] - BootstrapConfiguration#getValidatedExecutableTypes() returns wr ong default value * [HV-708] - Adapt to API changes around Node#getKind() * [HV-710] - Implement CrossParameterNode and ExecutableDescriptor#getCrossP arameterDescriptor() * [HV-711] - Updates around ReturnValueNode and ReturnValueDescriptor * [HV-717] - Implement Beandescriptor#hasConstrainedExecutables * [HV-719] - Use List instead of arrays in ParameterNameProvider * [HV-720] - Use @SupportValidationTarget instead of @CrossParameterConstrai nt for cross paramter constraints ** Improvement * [HV-713] - Implement new methods on ConstraintViolation * [HV-722] - Temporarily disable CDI portable extension ** New Feature * [HV-373] - XML-based configuration of method-level constraints and group c onversions * [HV-698] - Don't support unwrapping to internal implementation classes * [HV-709] - Implement new methods in node builder API ** Task * [HV-690] - Update XML schema and parsing code

5.0.0.Beta1 (06.02.2013) -----------------------** Bug * [HV-618] - Unable to validate methods in complex inheritance hierarchy * [HV-646] - Shouldn't access the index for non-indexable types * [HV-656] - MethodValidationContext.isReturnValueValidation throws NPE * [HV-657] - Remove tests in BeanMetaDataImplTest * [HV-658] - Escape special characters in README.md * [HV-659] - ValidatorContextImpl ignores custom ParameterNameProvider * [HV-660] - BeanDescriptor#getConstrainedProperties() must return no elemen ts for class-level constraints * [HV-662] - ConstraintValidatorManager caching fails for XML-defined constr aints * [HV-663] - ParameterNameProviders passed via ValidatorFactory#usingContext () are ignored * [HV-664] - Path nodes representing executable return values must return nu ll as name * [HV-665] - Consider concerned constraint in identity of constraint violati ons * [HV-666] - ExecutableDescriptorImpl#areParametersConstrained() must consid er cross-parameter constraints * [HV-668] - ExecutableDescriptorImpl must honor contract for hasConstrained () etc. * [HV-675] - Method return values must not be marked with @Valid if the supe r-type/interface method is marked * [HV-676] - Implement EL expression interpolation in message interpolation * [HV-677] - ElementDescriptor is null for property nodes reached via traver sing a Map- or array-typed parameter * [HV-679] - Must pass Default group to cascaded object when validating obje ct with redefined default group sequence * [HV-680] - No cascaded validation is performed when return value constrain ts are failing * [HV-681] - Throw IllegalArgumentExceptions in ExecutableValidator methods as described in API * [HV-682] - ExecutableDescriptor#findConstraints() returns constraints with wrong scope * [HV-685] - The tck runner setup fails to run in container * [HV-692] - Implement missing functionality after latest BV 1.1 changes * [HV-695] - CDI extension throws exception due to calling BeanManager#getBe ans during AfterBeanDiscovery event processing * [HV-700] - Update dependency to TCK, include JUEL in distribution ** Improvement * [HV-256] nstraints * [HV-576] * [HV-661] * [HV-673] ed during method * [HV-687] pe Add 'exclusive' boolean attribute to @DecimalMin/@DecimalMax co Consistently apply coding guidelines throughout the code base Make sure Hibernate Validator can be used on Java 6 < 1.6.0_18 JPATraversableResolver must handle method parameters when invok validation Constraints for non overridden super-type method have wrong sco

** New Feature * [HV-697] - Create HV-specific MessageInterpolator.Context extension exposi ng the root bean type 5.0.0.Alpha2 (28.11.2012) -------------------------

** Sub-task * [HV-629] - Move methods related to method validation to delegate interface * [HV-631] - Extend the meta-data API with required convenience methods for method validation * [HV-632] - Support cross-parameter constraints ** Bug * [HV-601] - NPE w/ overloaded methods on class validated with MethodValidat ionInterceptor * [HV-602] - Docs are wrong about location of /validation.xml or the code is * [HV-603] - XML based configuration fails when context class loader is not set * [HV-612] - Documentation fails to build on locales with accented months * [HV-615] - Create a CDI extension to activate Bean Validation * [HV-622] - Assumes all getX/setX methods are bean properties and errors wi th "wrong number of arguments" * [HV-623] - Wrong constraint validator type resolution in case of constrain t placed on parameterized type in class hierachy * [HV-626] - AnnotationMetaDataProvider should use #getDeclaredAnnotations i nstead of #getAnnotations when reading metadata from class and members * [HV-638] - Support groups translation during cascaded validations * [HV-647] - Don't add JMeter API doc to distribution ** Improvement * [HV-557] - Refactor package organisation to clearly separate spi, public a nd private APIs - part 2 (public packages) * [HV-620] - Improve error message for HV000085 * [HV-621] - Avoid GroupChainGenerator to use reflection at runtime * [HV-628] - Method validation changes from BV 1.1 PR * [HV-630] - Refinements around ConfigurationSource * [HV-636] - Investigate possiblity to run tests in parallel ** Task * [HV-584] - Remove deprecated types * [HV-595] - Determine how to handle different versions of validation-config uration and validation-mapping xsd * [HV-597] - Update tck-runner module * [HV-635] - Align TCK runner with beta release of BVTCK * [HV-639] - Evaluation of composed constraints should stops on first valida tion error when @ReportAsSingleViolation is used * [HV-649] - Upgrade the tck runner module to BV TCK release 1.1.0.Beta2 4.3.1.Final (28.11.2012) -----------------------** Bug * [HV-591] - EmailValidator throws an IllegalArgumentException for long emai l addresses * [HV-601] - NPE w/ overloaded methods on class validated with MethodValidat ionInterceptor * [HV-607] - Email Validator producing error for large email addresses * [HV-609] - EmailValidator fails where email address is large * [HV-613] - email handles complete address as idn label and fails for valid longer addresses * [HV-622] - Assumes all getX/setX methods are bean properties and errors wi th "wrong number of arguments" * [HV-623] - Wrong constraint validator type resolution in case of constrain t placed on parameterized type in class hierachy

* [HV-625] - EmailValidator.isValid sometimes throws an exception instead of returning false * [HV-626] - AnnotationMetaDataProvider should use #getDeclaredAnnotations i nstead of #getAnnotations when reading metadata from class and members ** Task * [HV-639] - Evaluation of composed constraints should stops on first valida tion error when @ReportAsSingleViolation is used 5.0.0.Alpha1 (21.06.2012) ------------------------** Bug * [HV-590] - Update copyright year in reference guide * [HV-591] - EmailValidator throws an IllegalArgumentException for long emai l addresses ** Improvement * [HV-583] - Upgrade JBoss Logging dependency ** Task * [HV-541] - The hibernate-validator-tck-runner project should not be deploy ed to the maven repository * [HV-571] - Align method level validation w/ Bean Validation 1.1 4.3.0.Final (09.05.2012) -----------------------** Improvement * [HV-568] - Perform a profiling of the annotation processor code and make u se of caching where appropriate * [HV-577] - Include javadoc jar in Maven repo ** Task * [HV-578] - Remove remaining references to slf4j * [HV-580] - Remove deprecation of package org.hibernate.validator.group 4.3.0.CR1 (30.04.2012) ---------------------** Bug * [HV-572] ibution * [HV-573] thod with void * [HV-574] * [HV-575] - Ensure the docs directory gets properly included into the distr - Need graceful handling of return value constraint applied to me return type - Annotations processing fails with 4.3.0 Beta1 - NPE in annotation processor ConstraintHelper.getName()

** Improvement * [HV-538] - Perform a profiling of the HV code in order to identify perform ance bottlenecks * [HV-554] - Regular Expression for @Email ** Task * [HV-100] - Implement a performance test harness for Bean Validation * [HV-569] - Switch to Java 6

4.3.0.Beta1 (04.04.2012) -----------------------** Bug * [HV-563] - Enable Configuration#buildValidatorFactory() to be callable sev eral times * [HV-567] - @Email reported as "disallowed" for String field ** Improvement * [HV-457] - Simplify annotation processor setup in IDEs in regards to requi red dependencies * [HV-463] - Revisit the class and implementation of Group/GroupChain * [HV-479] - Implement an eviction strategy for BeanMetaDataCache * [HV-517] - Establish the notion of AnnotationIgnores for programmatic API * [HV-564] - Allow caching of ConstraintValidator instances also for custom ConstraintValidatorFactories * [HV-566] - Shorten directory names ** Task * [HV-558] - Upgrade AS 7 dependencies * [HV-561] - Determine and mark the API to be deprecated for HV5 4.3.0.Alpha1 (06.03.2012) ------------------------** Bug * [HV-443] - Scope of ConstraintDescriptors sometimes wrong in type hierarch ies * [HV-472] - E-Mail Validator does not validate IDN E-Mail-Addresses * [HV-480] - Constraints configured via XML and programmatic API aren't merg ed * [HV-506] - Message interpolation should check whether an interpolated anno tation paramter is an array * [HV-508] - DecimalMaxValidatorForNumber for a double values is not correct * [HV-509] - Property path is wrong for cascaded validation of class-level c onstraints * [HV-511] - Minor documentation error * [HV-516] - Hibernate Validator doesn't work well with hibernate persistenc e when generating DDL * [HV-519] - Typos in ValidationMessages_de.properties * [HV-524] - java.util.NoSuchElementException in type level validation using EclipseLink * [HV-525] - tests fail on openjdk * [HV-531] - hibernate-validator-annotation-processor tests fails when runni ng against JDK7 * [HV-537] - Reintroduce jdocbook.ignoreTranslations in the docbook configur ation * [HV-543] - spelling mistake in org.hibernate.valisdator.validationMessages _fr.properties * [HV-546] - LazyValidatorFactory does not allow alternative bean validation providers * [HV-550] - fail-fast doesn't work on composite constraints * [HV-551] - @Size doesn't work on List with bounded wildcard ** Improvement * [HV-473] - Add option to Canonicalize String Input * [HV-491] - Add support for MOD11 Algorithm * [HV-500] - ConfigurationImpl should support multiple programmatic constrai

nt mappings * [HV-502] - Changing Generic Type on @Size, @Pattern a.s.o. from String to CharacterSequence * [HV-515] - Performance improvement for MinValidatorForString * [HV-518] - Create copyright.txt as mentioned by the license headers * [HV-520] - Remove package cycle between "descriptor" and "aggregated" pack ages * [HV-527] - ValidationMessages in Czech language * [HV-529] - ConstraintHelper is obsolete in ValidatorImpl * [HV-539] - Modify how MANIFESTs are generated * [HV-545] - Update TCK runner to run against AS 7.1 * [HV-547] - Make Hibernate Validator build not fail ** Task * [HV-441] - Refactor BeanMetaDataImpl * [HV-465] - Remove obsolete type parameter from MetaConstraint#validateCons traint() * [HV-481] - Move to i18n logs and exception via JBoss Logging * [HV-484] - Refactor package organisation to clearly separate spi, public a nd private APIs - part 1 (internal packages) * [HV-496] - Include Hibernate Validator test classes in a different classif ier * [HV-505] - Update tck runner to run against AS 7.0.0.Final * [HV-510] - Upgrade BV TCK dependency to 1.0.6.GA * [HV-528] - Compilation fails with JDK 7 due to incompatabilites of JAXB ve rsions * [HV-530] - Explain propagation of redefined default groups across associat ed instances annotated with @Valid * [HV-534] - Consider removing the shading plug-in * [HV-536] - Upgrade JSoup dependency * [HV-540] - Remove repository settings from the master pom * [HV-544] - Create a integration test moodule 4.2.0.Final (20.06.2011) ---------------------** Improvement * [HV-315] * [HV-485] * [HV-486] * [HV-490] * [HV-493] Create package-level JavaDoc for the AP Determine an order for the constraint mapping fluent API Remove getMethod() from MethodConstraintViolation Create @SafeHtml annotation Add support for Brazilian Portuguese for ValidationMessages

** New Feature * [HV-372] - Add section to method-level validation to the HV reference guid e ** Task * [HV-489] - Upgrade dependency to BV TCK to 1.0.5.GA * [HV-494] - upgrade to hibernate-jpa-2.0-api-1.0.1.Final * [HV-497] - Create aggregated javadocs for the distribution and deployment on docs server 4.2.0.CR1 (09.06.2011) ---------------------** Bug * [HV-406] - URL Validator not effective * [HV-437] - Improve the javadocs of the URL constraints * [HV-447] - Create documentation for boolean composition of composing const

raints * [HV-452] - Incorrect Paths when using fluent API to add constraints to a c ontext * [HV-458] - Wrong behaviour determining default group constraints in conjun ction with @GroupSequence * [HV-459] - Run TCK against AS 7 * [HV-466] - Avoid repeated validation of constraints in certain type hierar chies * [HV-468] - Determine whether a property is indexed based on the runtime no t static type * [HV-470] - resolvedMessages in ResourceBundleMessageInterpolator needs to be synchronized ** Improvement * [HV-407] - Update "Presentation layer validation" section * [HV-417] - Add section on public API and it's changes to the reference gui de * [HV-434] - ValidatorImpl#shouldFailFast() and ValidationContext#shouldFail Fast() seem redundant * [HV-442] - Make clear in the documentation which types are supported for b uilt-in constraints * [HV-446] - The annotation processor should allow constraint annotations at non-getter methods * [HV-449] - Remove interface check in BeanMetaDataImpl#newGroupSequenceProv iderInstance() * [HV-453] - Add an example of default group sequence provider configuration with the programmatic API * [HV-454] - Fix a mistake in the reference guide about custom properties su pported by Hibernate Validator * [HV-461] - Refactor TestUtil class * [HV-475] - Add required and public packages to the OSGi manifest * [HV-488] - Rename MethodDescriptor#getParameterConstraints() method ** New Feature * [HV-436] - The annotation processor should check @GroupSequenceProvider ** Patch * [HV-483] - ValidationMessages translation to Spanish ** Task * [HV-400] - Align the configuration of the archetype plugin with the config uration in search * [HV-431] - Extend programmatic API to allow the definition of method level constraints * [HV-464] - Remove obsolete type parameter from ParameterMetaConstraint * [HV-471] - Group has to be an interface - Documentation or code bug * [HV-474] - Get Hibernate Validator a proper changelog file * [HV-487] - Settle on an approach for instantiating constraint definitions 4.2.0.Beta2 (09.02.2011) -----------------------** Bug * [HV-376] - validateValue() and validateProperty() are too restrictive rega rding processable property names * [HV-381] - Provide a fail fast switch to stop processing constraints on fi rst failure * [HV-414] - Assembly plugin fails with maven 3.0.1 * [HV-418] - The annotation processor shouldn't report @Past/@Future given a t Joda types as errors

* [HV-421] - Reconsider behavior of parameter validation for inheritance hie rarchies * [HV-422] - slf4j version in hibernate-validator * [HV-426] - Wrong name in version logging message * [HV-428] - Java 1.6 specific method used in programmatic validation API * [HV-429] - validateValue and validateProperty using wrong default group se quence * [HV-430] - XML configuration does not allow configuration of public fields in superclass * [HV-433] - Cascaded validation on superclass fields does not work if only @Valid is used * [HV-444] - Default group sequence defined with programmatic API is not use d if the configured class doesn't define programmatic constraints ** Improvement * [HV-415] - Rename validateParameters to validateAllParameters * [HV-419] - Update the dependency to slf4j-api to 1.6.x * [HV-424] - Validators for Joda types should be specified for ReadableInsta nt/ReadablePartial ** New Feature * [HV-94] - Support dynamic default group sequence definition * [HV-371] - Support method-level constraints in meta-data API ** Task * [HV-420] - Deprecate legacy validator * [HV-440] - Extend programmatic API to allow the definition of default grou p sequence provider 4.2.0.Beta1 (13.01.2011) -----------------------** Sub-task * [HV-367] * [HV-368] * [HV-369] * [HV-370] Evaluate Evaluate Evaluate Evaluate @Valid annotation given at parameters @Valid annotation given at return values constraint annotations given at parameters constraint annotations given at return values

** Bug * [HV-350] - Inherited Bean validates non-default constraints as default * [HV-352] - In some cexceptional cases the original stacktrace is not prese rved * [HV-355] - RangeDef's min() and max() are just wrong * [HV-362] - Including Annotation Processor in Eclipse results in java.lang. OutOfMemoryError: Java heap space * [HV-363] - HV uses Thread's context class loader to load internal implemen tation classes * [HV-374] - NoSuchMethodError on Persistence.getPersistenceUtil() on WebLog ic 10.3.3 (11g) * [HV-379] - Remove obsolete dependency exlusion from tck-runner pom * [HV-382] - "java.lang.NoSuchMethodError: java.lang.String.isEmpty" in Scri ptAssertValidator.java * [HV-384] - Performence problem when using programatic constrain declaratio n * [HV-385] - Typo in German validation messages * [HV-387] - org.hibernate.validator.cfg.defs.GenericConstraintDef should (p robably) not extend the raw type ConstraintDef * [HV-391] - Review assertions of @Past and @Future tests * [HV-395] - Align Path.Node implementation with the Bean Validation specifi cation

* [HV-396] - Build for hibernate-validator module fails using Maven 3 due to problem with the maven-shade-plugin * [HV-398] - Build of Hibernate Validator Quickstart failed with another def ault locale than en * [HV-402] - Make sure that Validator still works on JDK 5 due to ValueMessa geInterpolator * [HV-403] - Create a ValueMessageInterpolator based on java.text.Format ins tead of the scripting engine * [HV-405] - Hibernate validator doesn't work well on JDK5 * [HV-408] - Validator throws wrongly an exception for constraints placed on non-getter methods ** Improvement * [HV-346] - Improve some of the default debug/info messages * [HV-353] - Support inheritance for group validation * [HV-359] - chinese message template * [HV-365] - It is very hard to find the HV annotation processor * [HV-366] - The documentation refers to http://repository.jboss.com/maven2: this should be fixed to point to the new maven settings * [HV-410] - Clarify the license on both the website and the reference docum entation * [HV-412] - Move GenericConstraintDef into org.hibernate.validator.cfg ** New Feature * [HV-299] - Annotation processor should check constraint annotation type de clarations * [HV-307] - Support @Past/@Future annotations at types from the Joda Time A PI * [HV-347] - Create method level validation * [HV-357] - Create a chapter for the reference guide describing the meta-da ta API * [HV-358] - Create a pluggable MessageInterpolator which can interploate ${ value} * [HV-390] - Boolean composition of constraints * [HV-401] - Ensure that the default validation provider is Hibernate Valida tor in LazyValidatorFactory ** Task * [HV-327] - Update TCK runner dependecies to not depend on the JBoss deprec ated repo * [HV-348] - Add note to JPA integration section about access type when usin g lazy loaded OneToOne and ManyToOne associations * [HV-349] - Hungarian translation for ValidationMessages.properties * [HV-351] - Translate hv document into chinese * [HV-375] - Update jboss-testharness and bv tck dependecies * [HV-378] - Cleanup the pom * [HV-383] - Update VCS information in pom * [HV-386] - Move readme.txt into top level directory * [HV-392] - Update entity-manager tests dependecy to 3.6.0.Final * [HV-393] - Version class should get the version injected via the maven-inj ection-plugin * [HV-394] - Change log level from info to debug in DefaultTraversableResolv er * [HV-413] - Activate chinese transalation, update po and pot files and make sure that the translation gets included in the dist bundle 4.1.0.Final (21.06.2010) -----------------------** Bug

* [HV-335] - @Max, @Min, @DecimalMax and @DecimalMin can give wrong results * [HV-339] - ^ not allowed in Email * [HV-343] - Package type in the documentation example ** Improvement * [HV-338] - Move the discovery of constraint types into the constructor of ConstraintTree * [HV-340] - When checking for composing constraints ignore annotations like @Target, @Documented, ... * [HV-341] - Reduce the amounf of Annotation.annotationType() calls since re flection calls are expensive * [HV-342] - Reduce the amout of calls to ConstraintHelper.isMultiValueConst raint * [HV-344] - Add example for configuring hibernate validator through Spring session factory bean ** Task * [HV-334] - Stop hibernate-validator-legacy to be deployed in the maven rep o * [HV-336] - Remove deprecated constructor in ResourceBundleMessageInterpola tor * [HV-337] - Update documentation regarding the effects of @Length during DD L generation 4.1.0.CR1 (14.06.2010) ---------------------** Bug * [HV-332] - Investigate the usage of CachingResourceBundleLocator in Resour ceBundleMessageInterpolator * [HV-333] - Verify that MessageInterpolatorContext.getValidatedValue return s the right value ** Task * [HV-331] - Investigate use of field/method.setAccessible( true ) 4.1.0.Beta2 (02.06.2010) -----------------------** Bug * [HV-281] - validation of a persisted map * [HV-293] - Annotation processor fails in Eclipse when evaluating custom co nstraints not defined in the current project * [HV-305] - JPATraversableResolver tries to access properties that do not e xist * [HV-306] - Falling back to system´s default locale if chosen locale was EN * [HV-309] - POM file's content-type is text/plain * [HV-312] - Close all input streams opened by HV * [HV-319] - Example in online documention reference javax.validation.Constr aintPayload instead of javax.validation.Payload * [HV-321] - javax.persistence.PersistenceException when trying to validate an object graphs with a class-level constraint annotation. In addition to the er ror report HV-266 * [HV-323] - URL Validator needs to pass on empty Strings * [HV-324] - Default annotation not executing when group selector activated * [HV-326] - Verify that for caching user objects during the validation proc ess we use a IdentityHashMap or IdentityHashSet * [HV-328] - Configuration.addMapping( null ) should throw IllegalArgumentEx ception * [HV-329] - Update quickstart section and remove reference to archetype cat

alog ** Improvement * [HV-156] - Exploring properties and cascade is unnecessary if TraversableR esolver returns false * [HV-298] - Add a section on using the annotation processor to the HV refer ence guide * [HV-302] - JAXB shouldn't be required when not using XML configuration * [HV-310] - Define, which parts of HV constitute its public API * [HV-313] - Extract messaging related stuff from ConstraintAnnotationVisito r * [HV-314] - Add @List annotations to the HV-specific constraints * [HV-316] - Extract constraint checking from ConstraintAnnotationVisitor in to separate check classes * [HV-322] - Establish a processor option "verbose" ** New Feature * [HV-230] - Database Connective or @Unique * [HV-274] - Write a programmatic mapping API for constraint declarations * [HV-292] - Provide a constraint annotation @ScriptAssert ** Patch * [HV-151] - The mongolian validation message translation patch. ** Task * [HV-311] - Update pom to use the new distributationManagement information * [HV-317] - Rename Global- and LocalExecutionContext * [HV-325] - Align javadoc styles with the Core javadoc styles * [HV-330] - Add a new constructor to ResourceBundleMessageInterpolator whic h enable/disables internal message caching 4.1.0.Beta1 (24.03.2010) -----------------------** Bug * [HV-246] - BeanValidationEventListener has a bug (technically a problem wi th hibernate-annotations 3.5.0beta1... but I couldn't find that project) * [HV-261] - Invalid license info * [HV-266] - NullPointerException when trying to validate an object with a c lass-level constraint annotation. * [HV-272] - jaxb dependencies should be dependencies with scope 'provided' instead of profile dependencies * [HV-275] - Update french message template for @Email * [HV-279] - Validator docbook files still reference GPL * [HV-288] - The validator doesn't validate correctly groups composing a gro up sequence * [HV-290] - Check the right copyright header is used in documenation * [HV-291] - ConstraintViolation not serializable for composed constraints * [HV-294] - Annotation processor should raise an error when @Valid is given at wrong places * [HV-297] - Custom error messages built via ConstraintValidatorContext get ignored when constraint uses @ReportAsSingleViolation * [HV-300] - Relocation from com.googlecode.jtype to org.hibernate.validator .jtype didn't catch all references ** Improvement * [HV-251] - ResourceMessageInterpolater - allow create with map of user res ource bundles * [HV-267] - Enhance distribution jar to make it OSGi bundle * [HV-278] - ValidationMessages_de.properties spelling: "erwartet" instead o

f "erwarted" * [HV-287] - French translation is not complete ** New Feature * [HV-229] - @Url needs to be added * [HV-238] - Introduce a ResourceBundleLocatorStrategy interface which allow s the ResourceBundleMessageInterpolator to delegate the loading of the resource bundle * [HV-269] - Create an annotation processor validating constraint and proper ty matching * [HV-301] - Add a trim property to @NotEmpty please ** Patch * [HV-227] - hibernate validator message for turkish locale * [HV-284] - Documentation fixes for hibernate-core integration * [HV-286] - NoSuchMethodError on Persistence.getPersistenceUtil() when one follows the README file ** Task * [HV-141] XML * [HV-254] * [HV-273] * [HV-276] licitly * [HV-282] * [HV-283] * [HV-289] tor in JDK 5 and Use commons-annotations to apply the configuration specified in Add section about ConstraintValidatorContext to documentation Upgrade jtype and jpa2 dependency Make sure that all used maven plugins specify their version exp Create CreditCardValidator Remove the legacy module from the main aggregator Add requirements section to online manual about usage of Valida 6

4.0.2.GA (06.11.2009) --------------------** Bug * [HV-263] - NullPointerException when no constraint in xml * [HV-265] - Constraints not loaded consistently for inherited classes * [HV-268] - Wrong message templates for @Email and @Range 4.0.1.GA (28.10.2009) --------------------** Bug * [HV-250] - No validator could be found for type: T * [HV-252] - HV with XML config tells me "Invalid property path." even thoug h I know there is such a property. * [HV-255] - Improve error handling for validateValue and validateProperty * [HV-257] - ReflectionHelper.getValue fails to retrieve values from methods defined on a parent interface * [HV-258] - The documentation for HV contains a invalid reference in sectio n 2.1.3 class level constraints * [HV-262] - Using interface in xml configuration does not work ** Improvement * [HV-253] - Fluent API to add path nodes is not flexible enough ** Task * [HV-259] - Add a payload example to the documentation 4.0.0.GA (08.10.2009) ---------------------

** Sub-task * [HV-217] - ValidatorResolutionTest#testResolutionOfMultipleSizeValidators uses generics in the constraintValidator resolution * [HV-218] - Validator implementation resolution is based on the returned va lue (at runtime) instead of the returned type * [HV-222] - MessageInterpolationTest#testFallbackToDefaultLocale * [HV-223] - BeanDescriptorTest#testGetConstraintsForNullProperty should be mapped * [HV-224] - ConstraintValidatorContextTest#testDisableDefaultErrorWithoutAd dingCustomError should raise a ValidationException * [HV-225] - Tests in GroupSequenceIsolationTest and NestedConstraintComposi tionTest need to be mapped or moved to the HV test suite * [HV-244] - Cache the type to ConstraintValidator class computation per con straint declaration ** Bug * [HV-134] - Built-in constraint parameter validation * [HV-180] - Failure when compiling Hibernate Validator * [HV-199] - Various TCK issues * [HV-213] - Should we mark ConstraintViolation as Serializable? * [HV-231] - Add default messages for DecimalMin and DecimalMax to resource bundle * [HV-234] - make sure int[] is converted in Integer[] when needed by a cons traintValidator call * [HV-249] - findConstraints() .unorderedAndMatchingGroups in ElementDescrip tor honors default sequence overriding ** Improvement * [HV-129] - ResourceBundleMessageInterpolatorTest should not test ResourceB undleMessageInterpolato but rather the Bean Validation provider default bundle * [HV-132] - Support hasBoolean format * [HV-235] - More useful exception error messages * [HV-236] - Spring/Hibernate integration, and maven suggestions * [HV-239] - Rename ValidatorConfiguration to HibernateValidatorConfiguratio n and move from o.h.v.engine to o.h.v package * [HV-240] - Replace Red Hat Middleware LLC to Red Hat, Inc. and/or its affi liates * [HV-242] - Cache ConstraintValidator instances per ValidatorFactory and no t per ConstraintTree * [HV-245] - Make ConstraintViolation + Path implementations Serializable ** Task * [HV-220] - Complete documentation * [HV-221] - Create a JPAValidateListener equivalent in the new hibernate va lidator * [HV-232] - Modify the BeanValidationEventListener in the annotation projec t to be configurable via the hibernate config file * [HV-233] - Make sure jtype implements the following rules * [HV-237] - Add a toString implementation to ConstraintViolationImpl * [HV-241] - Add @Email and @Range constraints * [HV-247] - Implement latest changes to meta data API in ri 4.0.0.CR1 (27.08.2009) ---------------------** Sub-task * [HV-200] - ValidationProviderResolverTest#testValidationExceptionIsThrownI nCaseValidatorFactoryCreationFails => enable=false? * [HV-201] - BootstrapTest#testServiceFileExists shouldn't we test for the a

ctual provider passing the TCK ie get the right name? * [HV-202] - BootstrapTest#testCustomMessageInterpolatorViaConfiguration is not testing via configuration but via validator context (ie like testCustomMessa geInterpolatorViaValidatorContext) * [HV-203] - MappingStreamHandlingTest#testMappingStreamGetsClosed and testM appingStreamGetsClosedInExceptionalCondition are wrong and a failure for HV * [HV-206] - CustomConstraintValidatorTest#testNonInterpolatedMessageParamet erIsUsed assumes English locale, needs fix before commented line reactivation ** Bug * [HV-183] - Composite constraints have to honour the payload parameter as w ell * [HV-191] - JPA 2 Dependency * [HV-208] - Wrong Path in ConstraintViolation * [HV-209] - Correctly handle <valid> configured in xml * [HV-210] - XML constraint declaration with missing mandatory elements thro ws IllegalArgumentException insteadof ValidationException * [HV-212] - Group sequence resolution has to take sequence order of composi ng groups (via inheritance or other group sequence) into account * [HV-214] - Constraints from interfaces and superclasses are not inherited when XML descriptors are used * [HV-216] - Add the payload parameter to the xml configuration ** Improvement * [HV-185] - Change package name in codebase from org.hibernate.validation t o org.hibernate.validator * [HV-189] - ResourceBundleMessageInterpolator should cache the interpolatio n results for step 1-3 of the interpolation algorithm ** New Feature * [HV-91] - Make sure Validator<T> is thread-safe in the RI * [HV-176] - Return the list of matching ConstraintDescriptor for a given se t of groups

** Task * [HV-99] - Write unit tests for bootstrapping * [HV-140] - Review all unchecked warnings * [HV-188] - Cleanup ElementDescriptorImpl after we depend on bv api post CR 3 * [HV-211] - Class name refactoring * [HV-215] - Rename ConstraintPayload to Payload 4.0.0.Beta3 (12.08.2009) -----------------------** Bug * [HV-124] - Hundreds of raw type use across the codebase * [HV-186] - ResourceBundleMessageInterpolator has to allow all characters a s message parameter * [HV-187] - An exception occuring during a cal to the TraversableResolver h as to be wrapped in a ValidationException * [HV-190] - The Path implementation has to be matched with the specificatio n * [HV-192] - DigitsValidatorForNumber should strip trailing zeros * [HV-193] - @OverridesAttribute.index starts at 0, not 1 * [HV-194] - Loading XML resources leads to NPE if the context classloader i s not set

* [HV-196] - validateValue incorrectly reports java.lang.IllegalArgumentExce ption on non constrained properties * [HV-198] - Wrong constraint violation path when adding subnode error to su bnode ** Improvement * [HV-171] - Hibernate Validator must specify how to run in environments tha t use a SecurityManager * [HV-195] - Be permissive to heading '/' in mapping file names ** New Feature * [HV-197] - Implement a LazyValidatorFactory 4.0.0.Beta2 (20.07.2009) -----------------------** Bug * [HV-79] - The test suite assumes Hibernate Validator as the BV provider * [HV-146] - ConstraintValidator impls cannot inherit from a super class imp lementing ConstraintValidator * [HV-149] - ReflectionHelper.containsMethod ignores "is" methods * [HV-150] - TraversableResolver pathToTraversableObject incorrectly include s traversableProperty * [HV-153] - ConstraintValidators created out of CVF should be cached to min imize initialization overhead * [HV-154] - isTraversable is called with a root bean class null when valida teValue is used * [HV-157] - properties are cascaded despite TraversableResolver answering n o * [HV-158] - ClassCastException in org.hibernate.validation.constraints.Futu reValidatorForDate.initialize * [HV-159] - NullPointerException in ValidatorFactoryImpl, if XML config fil e doesn't contain at least one constraint and one cascade configuration * [HV-162] - XML based configuration should be tolerant to line breaks and w hite spaces where appropriate * [HV-164] - Add test for default group sequence isolation * [HV-165] - Hibernate Validator does not validate groups in class level ann otations. * [HV-169] - Make sure Validator is concurrent safe * [HV-170] - Refactor the group sequence expansion and take the default sequ ence expansion of the validated entity into considertation * [HV-172] - Static fields and methods annotated with constraints should be ignored * [HV-173] - @Valid on an array type does not properly validate the elements of the array * [HV-174] - When using Matcher.appendReplacement all \ and $ characters mus t be escaped * [HV-175] - @Valid should be polymorphic * [HV-181] - Refactor ConstraintDescriptorImpl * [HV-182] - Error when using composite constraints (wrong messages and stac k traces) * [HV-184] - ResourceBundlerMessageInterpolator fails to meet the spec in so me issues ** Improvement * [HV-155] - Use a TraversableResolver caching results within a call stack t o reduce overhead * [HV-166] - Move constraints validator impl into org.hibernate.validation.c

onstraints.impl * [HV-167] - Rewrite @NotEmpty as a composition of @NotNull, @Size(min=1) @R eportAsSingleViolation ** New Feature * [HV-89] - Implement XML mapping * [HV-97] - Support XML Configuration and merge of configuration metadata * [HV-131] - Support @DecimalMin / @DecimalMax * [HV-160] - Make use of the TraversableResolver contract spliting reachabil ity and cascadability * [HV-163] - Add [] to non-indexed iterable in paths ** Task * [HV-101] - Write unit tests for constraint composition * [HV-107] - Implement a Hibernate Core specifc implementation of Traversabl eResolver * [HV-109] - Implement test for bootstrapping with multiple providers * [HV-127] - Implement test for the different types of Size validators * [HV-133] - Create test baseclass to allow test to run w and w/o xml config uration * [HV-147] - Invetigate problem with maven release plugin * [HV-148] - Make sure that context as well as current class loader are used when trying to load xml configuration files * [HV-168] - Add validators for DecimalMin and DecimalMax * [HV-177] - Integrate the new Path model * [HV-178] - Add check for payload parameter 4.0.0.Beta1 (27.04.2009) -----------------------** Bug * [HV-139] - BeanMetaDataCache and ConstraintValidatorDefinitionsCache shoul d not be static ** New Feature * [HV-144] - Add support for ConstraintViolation.getRootBeanClass ** Task * [HV-110] * [HV-111] * [HV-112] * [HV-137] * [HV-142] gate the parsing Implement parser for validation.xml Bootstrap HV using validation.xml Map constraints using XML Create a Hibernate Validator maven archetype Extract the xml parsing code from ValidatorFactoryImpl and dele to a seperate class

4.0.0.Alpha3 (20.03.2009) ------------------------** Bug * [HV-78] - ValidatorImpl.expandGroupName() does not seem to expand recursiv ely, this goes against the spec * [HV-80] - Group sequence sequences can contain group sequence names * [HV-83] - Object graph traversed too many times * [HV-85] - Group sequence expansion and validation execution should be deco upled * [HV-117] - BuiltinConstraints doesn't contain @Digits * [HV-118] - BuiltinConstraints doesn't contain @Past * [HV-120] - ConstraintDescriptor.getGroups() returns Default.class if no gr

oup is declared on the constraint * [HV-123] - Wrong elementType in MetaConstraint constructor ** Improvement * [HV-103] - Default error message for Min/Max constraints doesn't reflect c onstraint specification and implementation ** New Feature * [HV-92] - Implement sequences on group interfaces and group inheritance * [HV-121] - @Pattern support * [HV-122] - Add byte support for numeric constraints (digits, max etc) ** Task * [HV-106] * [HV-108] * [HV-113] * [HV-114] text Integrate TraversableResolver into reference implementation Verify correct polymorphic behaviour for validation Redefining the Default group for a class Implement error report customization via ConstraintValidatorCon

4.0.0.Alpha2 (03.03.2009) ------------------------** Bug * [HV-78] - ValidatorImpl.expandGroupName() does not seem to expand recursiv ely, this goes against the spec * [HV-80] - Group sequence sequences can contain group sequence names * [HV-83] - Object graph traversed too many times * [HV-85] - Group sequence expansion and validation execution should be deco upled * [HV-117] - BuiltinConstraints doesn't contain @Digits * [HV-118] - BuiltinConstraints doesn't contain @Past * [HV-120] - ConstraintDescriptor.getGroups() returns Default.class if no gr oup is declared on the constraint * [HV-123] - Wrong elementType in MetaConstraint constructor ** Improvement * [HV-103] - Default error message for Min/Max constraints doesn't reflect c onstraint specification and implementation ** New Feature * [HV-92] - Implement sequences on group interfaces and group inheritance * [HV-121] - @Pattern support * [HV-122] - Add byte support for numeric constraints (digits, max etc) ** Task * [HV-106] * [HV-108] * [HV-113] * [HV-114] text Integrate TraversableResolver into reference implementation Verify correct polymorphic behaviour for validation Redefining the Default group for a class Implement error report customization via ConstraintValidatorCon