***************************************************************************************************************************
* Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.  See the NOTICE file *
* distributed with this work for additional information regarding copyright ownership.  The ASF licenses this file        *
* to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance            *
* with the License.  You may obtain a copy of the License at                                                              *
*                                                                                                                         *
*  http://www.apache.org/licenses/LICENSE-2.0                                                                             *
*                                                                                                                         *
* Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an  *
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the License for the        *
* specific language governing permissions and limitations under the License.                                              *
***************************************************************************************************************************


Release Notes - Juneau - Version 9.0.1

** Improvement

    * [JUNEAU-243] Bump jetty.version from 11.0.13 to 11.0.16.
    * [JUNEAU-244] Bump springboot.version from 3.0.1 to 3.1.2 #97, #102, #104, #106.
    * [JUNEAU-245] Bump hibernate.version from 5.6.14.Final to 5.6.15.Final #95.
    * [JUNEAU-246] Bump org.eclipse.jgit from 6.4.0.202211300538-r to 6.6.1.202309021850-r #101, #105, #110.
    * [JUNEAU-250] Bump org.codehaus.groovy:groovy from 3.0.18 to 3.0.19 #145.

Release Notes - Juneau - Version 9.0.0

** Placeholder

Release Notes - Juneau - Version 8.2.0

** Bug
    * [JUNEAU-168] - Serializer/Parser handling of proxy beans.
    * [JUNEAU-184] - HtmlSerializer doesn't property serialize Collection<A> objects.
    * [JUNEAU-187] - HtmlSerializer does not honor @Bean(bpi) on collections of beans with null values in first row.
    * [JUNEAU-189] - @ReestMethod(debug="true") does not appear to cause HTTP requests to be logged.
    * [JUNEAU-195] - @Beanp("*") not working correctly?
    * [JUNEAU-196] - @Html(noTableHeaders) should work on Collections of beans.
    * [JUNEAU-197] - @BeanConfig(bpi) does not override @Bean(bpi)
    * [JUNEAU-201] - JettyMicroserviceBuilder logConfig method is a NO-OP
    * [JUNEAU-216] - BEANTRAVERSE_initialDepth not setting indentation correctly on first line.
    * [JUNEAU-232] - BEAN_isIgnoreUnknownNullBeanProperties doesn't always work correctly.
    * [JUNEAU-233] - JsonParser is not instantiating interface proxies.
    * [JUNEAU-234] - BEAN_ignoreInvocationExceptionsOnGetters is not working.

** New Feature
    * [JUNEAU-242] - Framework should recognize "withX" fluent setters.

** Improvement
    * [JUNEAU-180] - Incorrect Swagger on Spring Boot methods that return Collections of beans.
    * [JUNEAU-181] - JuneauRestInitializer needs a no-arg constructor.
    * [JUNEAU-182] - Add a RestCallHandler interface to the RestClient API
    * [JUNEAU-183] - Remote methods should support Future return types.
    * [JUNEAU-185] - ResourceDescriptions needs an append(url, label, description) method.
    * [JUNEAU-186] - REST classes should allow themselves to implement helper classes.
    * [JUNEAU-188] - @Bean annotation should override class visibility rules.
    * [JUNEAU-190] - Need ability to define actions for unauthorized requests via the @Rest(roleGuard).
    * [JUNEAU-191] - <aside> elements in HtmlDocSerializer should allow to float left/right/top/bottom instead of just right.
    * [JUNEAU-192] - HtmlElement beans should have convenience constructors or creators.
    * [JUNEAU-193] - RestClient should support all languages by default.
    * [JUNEAU-194] - Provide a simple Hyperlink bean.
    * [JUNEAU-198] - Need improved ability to turn on debug in REST via environment variables.
    * [JUNEAU-199] - New ContentDisposition header bean.
    * [JUNEAU-200] - StreamResource/ReaderResource classes should take in HttpHeader beans.
    * [JUNEAU-202] - Add option for ignoring @Transient properties during marshalling.
    * [JUNEAU-203] - Bean copy constructor can be confused with builder constructor.
    * [JUNEAU-204] - Add @RestMethod(paths) to allow matching multiple paths.
    * [JUNEAU-205] - Add @Path(required=boolean) annotation to allow path variables to be optionally matched.
    * [JUNEAU-208] - Version 7.2.2 is missing from https://juneau.apache.org/#whatsnew.html
    * [JUNEAU-227] - BEAN_methodVisibility and BEAN_constructorVisibility doesn't affect swap methods.
    * [JUNEAU-228] - Make it easier to create bean filters programmatically.
    * [JUNEAU-235] - New BeanInterceptor API for intercepting calls to getters/setters.
    * [JUNEAU-236] - BEAN_addRootType doesn't work without BEAN_addBeanTypes
    * [JUNEAU-240] - RestContext should be subclassible.
    

Release Notes - Juneau - Version 8.1.3

** Bug
    * [JUNEAU-169] - Dynamic annotations.
    * [JUNEAU-170] - @RestMethod(name="*") doesn't always work.
    * [JUNEAU-172] - @RestResource(debug=true) doesn't work if REST method not matched.
    * [JUNEAU-173] - Undeprecate HttpClientBuilder convenience methods in RestClientBuilder.
    * [JUNEAU-174] - Allow configuration properties to be set globally using system properties or env vars.
    * [JUNEAU-176] - Race condition when parsing into array types.

** New Feature
    * [JUNEAU-175] - Execution statistics for REST methods.

** Improvement
    * [JUNEAU-154] - [PetStore] Add mock testing.
    * [JUNEAU-177] - Allow REST methods at specific paths to be overridden by methods in child classes.
    

Release Notes - Juneau - Version 8.1.2

** Bug
    * [JUNEAU-156] - Test Fails on ko_KR Locale.
    * [JUNEAU-158] - The KEYS link should have KEYS as the text
    * [JUNEAU-160] - Setting bean properties of type list don't use setters.
    * [JUNEAU-161] - Exeption-Message header can contain CR/LF characters.
    * [JUNEAU-162] - RestClient class should be subclassible.
    * [JUNEAU-163] - Request Exception-Message response header should be truncated to some reasonable value.
    * [JUNEAU-164] - Stacktrace hashing should take proxies and lamba expressions into account.

** Improvement
    * [JUNEAU-155] - Split bpi/bpx into serializer and parser configuration properties.

** Task
    * [JUNEAU-159] - Package pet store application in jar format.


Release Notes - Juneau - Version 8.1.1

** Bug
    * [JUNEAU-143] - Static files mapping doesn't properly handle override scenarios.
    * [JUNEAU-147] - Error in Swagger generator when @Example used on bean class.

** Improvement
    * [JUNEAU-144] - Add support for absolute paths on @RestResource(staticFiles)
    * [JUNEAU-145] - @RestResource(staticFiles) should handle multiple mappings.
    * [JUNEAU-146] - Add ranks to @Config annotations.

** Task
    * [JUNEAU-132] - Various HTTP parameter annotations should support Optional.
    * [JUNEAU-133] - Serializers/parsers should support Optional objects and properties.
    * [JUNEAU-134] - Parsers not correctly finding generic types on complex types involving arrays.
    * [JUNEAU-135] - @RestMethod(debug=true) is not causing requests to be logged.
    * [JUNEAU-136] - Juneau cannot reflect parameterized types on Spring bean methods.
    * [JUNEAU-137] - Juneau cannot reflect parameterized types on Spring bean methods.
    * [JUNEAU-138] - Move REST response/exception beans into juneau-marshall.
    * [JUNEAU-139] - juneau-rest-client should not have dependency on juneau-rest-server.
    * [JUNEAU-140] - Provide initial contents of PetStore modules.
    * [JUNEAU-141] - Move @RemoteResource/@RemoteMethod annotations into juneau-marshall.
    * [JUNEAU-142] - BasicRest subclasses need programmatic access to RestRequest/RestResponse


Release Notes - Juneau - Version 8.1.0

** Bug
    * [JUNEAU-29] - Replace @BeanConstructor with @BeanParameter annotations.
    * [JUNEAU-94] - Fix build warnings on Java 11
    * [JUNEAU-105] - UrlPathPattern should use a state machine.
    * [JUNEAU-107] - IllegalArgumentException in DefaultHandler.handle()
    * [JUNEAU-124] - Serializers and parsers should throw specific exceptions.
    * [JUNEAU-129] - LocalizedDatesTest failures during build

** New Feature
    * [JUNEAU-96] - Add Automatic-Module-Name metadata
    * [JUNEAU-98] - Add @RestMethod(allowMethodParam/allowMethodHead) annotations
    * [JUNEAU-99] - @RestMethod(roleGuard="xxx") annotation.
    * [JUNEAU-100] - REST_allowedMethodHeaders / @RestResource(allowedMethodHeaders) / @RestMethod(allowedMethodHeaders)
    * [JUNEAU-101] - Update handling of dates to use new Java 8 libraries.
    * [JUNEAU-102] - Expanded REST annotations
    * [JUNEAU-103] - Add POJO diff tool
    * [JUNEAU-104] - Support for using named method parameters.

** Improvement
    * [JUNEAU-50] - Publish a contributors guide
    * [JUNEAU-56] - Build microservices with Maven
    * [JUNEAU-93] - Use constructor argument names as bean property names.
    * [JUNEAU-97] - Path Parameter in Parent RestResource
    * [JUNEAU-106] - Improved REST debugging.
    * [JUNEAU-108] - AccessDeniedException should cause HTTP 401 response.
    * [JUNEAU-109] - BasicRestLogger should take in servlet class so that logging can be based on that class.

** Task
    * [JUNEAU-126] - Serializers should serialize Iterators and Enumerations by default.
    * [JUNEAU-127] - Clean up usage of PojoSwaps in ClassMeta
    * [JUNEAU-128] - Code improvements around DynamicSwaps
    

Release Notes - Juneau - Version 8.0.0

** Improvement
    * [JUNEAU-91] - Update Jetty to jetty-9.4.13.v20181111


Release Notes - Juneau - Version 7.2.2

** Bug
    * [JUNEAU-88] - AddressBookResourceTest fails with org.apache.juneau.rest.client.RestCallException: Software caused connection abort: recv failed
    * [JUNEAU-89] - errors in juneau-examples-rest
    * [JUNEAU-90] - Could not instantiate class  org.apache.juneau.svl.Var
    

Release Notes - Juneau - Version 7.2.1

** Bug
    * [JUNEAU-85] - Don't break compatibility with 7.1.0
    * [JUNEAU-86] - Avoid NPE stopping RestMicroservice
    * [JUNEAU-87] - Tests should not use hard-wired line-endings.


Release Notes - Juneau - Version 7.2.0

** Bug
    * [JUNEAU-83] - Cannot subclass RestClient and RestClientBuilder
    * [JUNEAU-82] - Config and Logs resource pages should have configurable look-and-feel.

** New Feature
    * [JUNEAU-60] - @RestMethod paramater annotation to populate a pojo using RequestBean format

** Improvement
    * [JUNEAU-81] - Update Jetty to 9.4.9
    * [JUNEAU-84] - Upgrade to Jetty 9.4.12


Release Notes - Juneau - Version 7.1.0

** Bug
    * [JUNEAU-75] - Documentation not clear on how to customize htdocs folder
    * [JUNEAU-78] - Is org.apache.juneau.dto.swagger.SchemaInfo missing a $ref field?
    * [JUNEAU-79] - org.apache.juneau.microservice.RestMicroservice.stop() should not dump stack traces on the console
    * [JUNEAU-80] - RestCallHandlerDefault service method calls handleResponse which seems to close output stream right before it runs res.flushbuffer which throws an IO exception because the stream is closed.

** Improvement
    * [JUNEAU-76] - Improvements to Context/Builder APIs
    * [JUNEAU-77] - Document how to customize the favicon


Release Notes - Juneau - Version 7.0.1

** Bug
    * [JUNEAU-68] - Add BoundedReader to REST input
    * [JUNEAU-69] - XML parser should ignore comments.
    * [JUNEAU-71] - No git tag for release 7.0.0

** Improvement
    * [JUNEAU-72] - Offer an option to disable console IO from org.apache.juneau.microservice.Microservice.start()
    * [JUNEAU-73] - Update Jetty from 9.4.7.v20170914 to 9.4.8.v20171121
    * [JUNEAU-74] - Update Apache HttpClient from 4.5.3 to 4.5.4


Release Notes - Juneau - Version 7.0.0

** Improvement

** New Feature


Release Notes - Juneau - Version 6.4.0

** Improvement
    * [JUNEAU-46] - Remove references to wink
    * [JUNEAU-64] - Support advanced annotated variables on methods implementing onPreCall and onPostCall

** New Feature
    * [JUNEAU-62] - Support complete customization of jetty runtime
    * [JUNEAU-65] - utility for merging two like POJOs
    
    
Release Notes - Juneau - Version 6.3.1

** Bug
    * [JUNEAU-59] - Fix "Copyright (c) 2016, Apache Foundation" year in documentation.

** Improvement
    * [JUNEAU-58] - Embed HTML in @HtmlDoc.description


Release Notes - Juneau - Version 6.3.0

** Bug
    * [JUNEAU-38] - Testcase failure in UK
    * [JUNEAU-45] - Rebrand web pages with new incubator logo.
    * [JUNEAU-47] - Fix RAT check failure with logs generated during build
    * [JUNEAU-51] - properties added to rest client, serializer, and parser are not available during pojo swap and unswap methods

** Improvement
    * [JUNEAU-57] - seamless serialization and parsing of string fields to/from enum


Release Notes - Juneau - Version 6.2.0

** Bug
    * [JUNEAU-37] - REST Testcases can fail with ports 10000. 10001 in use.
    * [JUNEAU-39] - Add "Incubator" to NOTICE file.

** Improvement
    * [JUNEAU-32] - Improvements to BeanMeta class
    * [JUNEAU-41] - Prerequisites usage is deprecated for non maven-plugin projects
    * [JUNEAU-42] - More powerful RetryOn interface
    * [JUNEAU-43] - Removed superfluous property encoding
    * [JUNEAU-44] - Simplify the configuration for apache-rat-plugin


Release Notes - Juneau - Version 6.1.0

** Bug
    * [JUNEAU-25] - Minor release issues in 6.0.1 RC3
    * [JUNEAU-28] - Separate out RDF-code into separate juneau.core.rdf project.

** Improvement
    * [JUNEAU-26] - Add support for date localization.
    * [JUNEAU-27] - Rename projects.
    * [JUNEAU-31] - Separate out JAX-RS support from server/rest component
    * [JUNEAU-34] - Remove <string> tags from HTML serialization.
    * [JUNEAU-35] - Add StringSwap and MapSwap convenience classes.
    * [JUNEAU-36] - Examples improvements

** New Feature
    * [JUNEAU-33] - HTML5 DOM objects.
    

Release Notes - Juneau - Version 6.0.1

** Bug
    * [JUNEAU-17] - Resolve various small issues pointed out during release of 6.0.0
    * [JUNEAU-19] - Fix various JSON parser edge cases
    * [JUNEAU-21] - Scrub references to IBM from code.
    * [JUNEAU-22] - Localization bugs in CalendarSwap JUnits
    * [JUNEAU-23] - Fix various maven build warnings.
    * [JUNEAU-24] - Fix release issues discovered by Stian

** Improvement
    * [JUNEAU-18] - Add HtmlDocSerializer.DEFAULT field.

** Task
    * [JUNEAU-20] - Remove references to ibm.com from website


Release Notes - Juneau - Version 6.0.0

** Bug
    * [JUNEAU-1] - Cannot run org.apache.juneau.samples unit tests.
    * [JUNEAU-2] - org.apache.juneau.jena.CT_Rdf.testLooseCollectionsOfBeans()
    * [JUNEAU-4] - Testcase failure: CT_Visibility.testClassDefault

** Improvement
    * [JUNEAU-13] - Rename PojoTransform to PojoSwap

** Task
    * [JUNEAU-5] - Update root README.md file.
    * [JUNEAU-6] - Complete work on Juneau website (http://juneau.incubator.apache.org/)
    * [JUNEAU-7] - Complete work on setting up Confluence workspace (https://cwiki.apache.org/confluence/display/JUNEAU/Juneau+Home)
    * [JUNEAU-8] - Update contents of incubator status page (http://incubator.apache.org/projects/juneau.html)
    * [JUNEAU-9] - Set up Jenkins builds for Juneau artifacts.
    * [JUNEAU-10] - Figure out hosting options for generated Javadocs.
    * [JUNEAU-11] - Create root pom.xml
    * [JUNEAU-12] - Add Maven instructions to Dev setup guide.
    * [JUNEAU-14] - Add SerializerGroup and ParserGroup info to web site about page.
