------------------------------------------------------------------------------
Release Notes - Apache Knox - Version 1.4.0
------------------------------------------------------------------------------
** New Feature
    * [KNOX-2153] - CM discovery - Monitor Cloudera Manager (#239)
    * [KNOX-2002] - Add a KnoxShellTable to Represent and Render Output in Tabular Format
    * [KNOX-2224] - KnoxLine and KnoxShell DataSource and Select Command Alignment (#255)
    * [KNOX-2341] - KnoxShell Custom Commands need Description and Usage Details (#313)
    * [KNOX-2310] - Add aggregate method to KnoxShellTable (#302)
    * [KNOX-2308] - Add sortNumeric to KnoxShellTable for Cols that are numeric but values are String (#300)
    * [KNOX-2307] - CSVKnoxShellTableBuilder must support quoted strings and embedded commas (#301)
    * [KNOX-2240] - KnoxShell Custom Command for WEBHDFS Use (#296)
    * [KNOX-2299] - Fixed Hive JDBC URL on Knox Home page (#293)
    * [KNOX-2296] - Passing down the service URL field when building up a service model (#290)
    * [KNOX-2298] - ClouderaManager cluster config monitor should stop monitoring unreferenced clusters (#291)
    * [KNOX-2295] - UI services improvement on Knox Home page (#289)
    * [KNOX-2269] - The Knox Home page is available as a regular app via the homepage topology (#281)
    * [KNOX-2066] - Composite Authz Provider
    * [KNOX-2067] - KnoxToken service support for renewal and revocation
    * [KNOX-2024] - KnoxShellTable - Case Insensitive Operations with Col Names (#160)
    * [KNOX-2018] - KnoxShellTable Filtering needs greaterThan and lessThan, equals Methods (#158)
    * [KNOX-2027] - Need a reverse order sort on a table based on a column. (#159)
    * [KNOX-2060] - Extend KnoxShellTable statistics methods to work with columns of Strings (#168)
    * [KNOX-2057] - Unique ID is set when creating a new instance of KnoxShellTable instead of setting it in the builder/filter (#165)
    * [KNOX-2063] - KnoxShellTable javadoc failures (#167)
    * [KNOX-2052] - KnoxShellTable mean, median, and mode methods (#163)
    * [KNOX-2023] - Recording KnoxShellTable builder/filter chain and providing rollback/replay capabilities using the call history as well as allowing end-users to export JSON without data (in this case only the call history will be serialized) (#162)
    * [KNOX-2022] - KnoxShellTable contains Comparables instead of Strings
    * [KNOX-2022] - Splitting up KnoxShellTable and do minor cleanup
    * [KNOX-1740] - Add Trusted Proxy Support to Knox (#106)
    * [KNOX-2056] - Adding Service Definitions management into Admin UI (#169)
    * [KNOX-2053] - New REST API to create/read/update/delete service definitions (#164)
    * [KNOX-2226] - Add home page to Knox (#263)
    * [KNOX-1742] - add knoxline to knoxshell usage rendering
    * [KNOX-1410] - Knox Shell support for remote Alias management (#210)
    * [KNOX-2210] - Gateway-level configuration for server-managed Knox token state (#259)
** Improvement
    * [KNOX-2339] - Add Github Actions for CI (#311)
    * [KNOX-2321]. /LogLevel with knox not working for Hdfs web ui endpoints. (#314)
    * [KNOX-2340] - Fix DefaultTokenStateServiceTest timeouts (#312)
    * [KNOX-2338] - Upgrade apacheds.directory.server.version to 2.0.0.AM26 (#309)
    * [KNOX-2332] - Upgrade spotbugs-maven-plugin to 4.0.0
    * [KNOX-2331] - Upgrade spotbugs to 4.0.1
    * [KNOX-2330] - Upgrade spring-core to 5.2.5.RELEASE
    * [KNOX-2333] - Upgrade rest-assured to 4.3.0
    * [KNOX-2322] - Upgrade nimbus-jose-jwt to 8.14.1
    * [KNOX-2324] - Upgrade metrics to 4.1.6
    * [KNOX-2334] - Upgrade maven-dependency-plugin to 3.1.2
    * [KNOX-2335] - Upgrade java-support to 8.0.0
    * [KNOX-2336] - Upgrade httpclient to 4.5.12
    * [KNOX-2323] - Upgrade groovy to 3.0.3
    * [KNOX-2329] - Upgrade dependency-check-maven to 5.3.2
    * [KNOX-2327] - Upgrade commons-lang3 to 3.10
    * [KNOX-2328] - Upgrade checkstyle to 8.31
    * [KNOX-2326] - Upgrade bcprov-jdk15on to 1.65
    * [KNOX-2325] - Upgrade asm to 8.0.1
    * [KNOX-2304] - CM discovery cluster config monitor needs to be aware of … (#307)
    * [KNOX-2320] - Upgrade xmlsec to 2.1.5
    * [KNOX-2319] - Upgrade commons-compress to 1.20
    * [KNOX-2315] - Fix zookeeper Kerberos Auth (#304)
    * [KNOX-2316] - Knox Token State Eviction Must Consider Maximum Token Lifetime (#306)
    * [KNOX-2317] - Open UI services from Knox Home page on new tabs (#305)
    * [KNOX-2287] - KnoxCLI convert topology to provider and descriptor (#292)
    * [KNOX-2305] - Blacklist Maven 3.6.2 and move cloudera repository to child pom (#295)
    * [KNOX-2300] - Livy and Solr handled as both API and UI services (#294)
    * [KNOX-2289] - Passing GatewayServer.getGatewayServices() to SimpleDescriptorHandler.handle() as it needs it to provision encryption query string password (#288)
    * [KNOX-2286] - Cleaner log messages about monitoring topologies/providers/descriptors (#287)
    * [KNOX-2285] - Change gateway.server.header.enabled default to false
    * [KNOX-2284] - Handling CM descriptors after Knox shared-provider/descriptor/topology monitors are started (#285)
    * [KNOX-2266] - Tokens Should Include a Unique Identifier (#284)
    * [KNOX-2267] - Ambari/CM discovery - Needs to point to configured truststore
    * [KNOX-2282] - Upgrade curator to 4.3.0
    * [KNOX-2275] - Upgrade woodstox-core to 6.1.1
    * [KNOX-2270] - Upgrade testcontainers to 1.13.0
    * [KNOX-2277] - Upgrade spring-vault to 2.2.2.RELEASE
    * [KNOX-2279] - Upgrade spring-core to 5.2.4.RELEASE
    * [KNOX-2274] - Upgrade log4j2 to 2.13.1
    * [KNOX-2276] - Upgrade metrics to 4.1.4
    * [KNOX-2271] - Upgrade nimbus-jose-jwt to 8.9
    * [KNOX-2278] - Upgrade jetty to 9.4.27.v20200227
    * [KNOX-2272] - Upgrade jackson to 2.10.3
    * [KNOX-2281] - Upgrade eclipselink to 2.7.6
    * [KNOX-2280] - Upgrade cors-filter to 2.9
    * [KNOX-2273] - Upgrade checkstyle to 8.30
    * [KNOX-2243] - Upgrade groovy to 3.0.1
    * [KNOX-2247] - Upgrade zookeeper to 3.5.7
    * [KNOX-2244] - Upgrade spotbugs to 4.0.0
    * [KNOX-2246] - Upgrade protobuf-java to 3.11.4
    * [KNOX-2241] - Upgrade nimbus-jose-jwt to 8.8
    * [KNOX-2242] - Upgrade metrics to 4.1.3
    * [KNOX-2245] - Upgrade maven-checkstyle-plugin to 3.1.1
    * [KNOX-2248] - Upgrade cryptacular to 1.2.4
    * [KNOX-2220] - Upgrade nimbus-jose-jwt to 8.5
    * [KNOX-2218] - Upgrade easymock to 4.2
    * [KNOX-2219] - Upgrade checkstyle to 8.29
    * [KNOX-2217] - Upgrade apache pom to 23
    * [KNOX-2191] - Upgrade testcontainers to 1.12.5
    * [KNOX-2194] - Upgrade spring-vault to 2.2.1.RELEASE
    * [KNOX-2199] - Upgrade spring-core to 5.2.3.RELEASE
    * [KNOX-2193] - Upgrade rest-assured to 4.2.0
    * [KNOX-2195] - Upgrade jetty to 9.4.26.v20200117
    * [KNOX-2192] - Upgrade httpclient to 4.5.11
    * [KNOX-2198] - Upgrade groovy to 2.5.9
    * [KNOX-2197] - Upgrade dependency-check-maven to 5.3.0
    * [KNOX-2196] - Upgrade caffeine to 2.8.1
    * [KNOX-2178] - Upgrade woodstox-core to 6.0.3
    * [KNOX-2181] - Upgrade testcontainers to 1.12.4
    * [KNOX-2183] - Upgrade spring-core to 5.2.2.RELEASE
    * [KNOX-2175] - Upgrade slf4j to 1.7.30
    * [KNOX-2180] - Upgrade protobuf-java to 3.11.1
    * [KNOX-2173] - Upgrade nimbus-jose-jwt to 8.4
    * [KNOX-2179] - Upgrade metrics to 4.1.2
    * [KNOX-2184] - Upgrade maven-enforcer-plugin to 3.0.0-M3
    * [KNOX-2177] - Upgrade log4j to 2.13.0
    * [KNOX-2170] - Upgrade junit to 1.14
    * [KNOX-2174] - Upgrade jetty to 9.4.25.v20191220
    * [KNOX-2169] - Upgrade jackson to 2.10.2
    * [KNOX-2165] - Upgrade httpcore to 4.4.13
    * [KNOX-2172] - Upgrade guava to 28.2-jre
    * [KNOX-2167] - Upgrade frontend-maven-plugin to 1.9.1
    * [KNOX-2185] - Upgrade dependency-check-maven to 5.2.4
    * [KNOX-2168] - Upgrade commons-codec to 1.14
    * [KNOX-2176] - Upgrade cloudera-manager-api to 7.0.3
    * [KNOX-2171] - Upgrade checkstyle to 8.28
    * [KNOX-2182] - Upgrade aspectj to 1.9.5
    * [KNOX-2164] - Upgrade asm to 7.3.1
    * [KNOX-2166] - Upgrade apache pom to 22
    * [KNOX-2143] - Upgrade shiro to 1.4.2 (#209)
    * [KNOX-2135] - Fix YARNUIV2 RM Logs sub-links (#204)
    * [KNOX-2142] - Upgrade jetty to 9.4.24.v20191120 (#208)
    * [KNOX-2140] - RequestUpdateHandler.ForwardedRequest#getRequestURL needs to return a valid URL (#206)
    * [KNOX-2074]: Tracking UI of flink session is broken in YARNUI (#174)
    * [KNOX-2004] - Adding changes for handling Ping/Pong message from backend server on websocket connection (#200)
    * [KNOX-2133] - Ensure that Knox always validates TLS (#203)
    * [KNOX-2238] - CM discovery - Add TLS support to Phoenix auto discovery (#267)
    * [KNOX-2120] - Upgrade easymock to 4.1
    * [KNOX-2119] - Upgrade jackson to 2.10.1
    * [KNOX-2118] - Upgrade checkstyle to 8.26
    * [KNOX-2117] - Upgrade testcontainers to 1.12.3
    * [KNOX-2116] - com.nimbusds:lang-tag needs a fixed version
    * [KNOX-2115] - Improve .travis.yml (#187)
    * [KNOX-2113] - Upgrade mina-core to 2.0.21 (#185)
    * [KNOX-2114] - Add OWASP suppression for cas-client-core
    * [KNOX-2098] - OWASP Add Nov 2019 suppressions for false positives (#184)
    * [KNOX-2100] - Make sure knoxshell initializes logging by using the 'launcher' framework like other products (gateway, cli, ldap) do (#181)
    * [KNOX-2112] - Upgrade dom4j to 2.1.1 (#183)
    * [KNOX-2111] - Upgrade java-support to 7.5.1
    * [KNOX-2110] - Upgrade xmlsec to 2.1.4
    * [KNOX-2109] - Upgrade nimbus-jose-jwt to 8.2.1
    * [KNOX-2108] - Upgrade pac4j to 3.8.3
    * [KNOX-2107] - Upgrade spring-vault to 2.2.0.RELEASE
    * [KNOX-2106] - Upgrade spring-core to 5.2.1.RELEASE
    * [KNOX-1842] - Upgrade httpclient to 4.5.10 (#176)
    * [KNOX-2075] - Druid coordinator ui is broken (#175)
    * [KNOX-2094] - Upgrade httpcore to 4.4.12
    * [KNOX-2081] - Upgrade zookeeper to 3.5.6
    * [KNOX-2088] - Upgrade spring-vault to 2.1.4.RELEASE
    * [KNOX-2077] - Upgrade spring-core to 5.2.0.RELEASE
    * [KNOX-2093] - Upgrade slf4j to 1.7.29
    * [KNOX-2078] - Upgrade rest-assured to 4.1.2
    * [KNOX-2084] - Upgrade nimbus-jose-jwt to 8.2
    * [KNOX-2085] - Upgrade metrics to 4.1.1
    * [KNOX-2089] - Upgrade joda-time to 2.10.5
    * [KNOX-2092] - Upgrade jna to 5.5.0
    * [KNOX-2087] - Upgrade jetty to 9.4.22.v20191022
    * [KNOX-2090] - Upgrade javax.inject to 2.4.0
    * [KNOX-2079] - Upgrade jacoco-maven-plugin to 0.8.5
    * [KNOX-2083] - Upgrade hamcrest to 2.2
    * [KNOX-2080] - Upgrade forbiddenapis to 2.7
    * [KNOX-2091] - Upgrade findsecbugs to 1.10.1
    * [KNOX-2086] - Upgrade eclipselink to 2.7.5
    * [KNOX-2082] - Upgrade dockerfile-maven-plugin to 1.4.13
    * [KNOX-2064] - KnoxSSO knoxsso.token.ttl should not default to -1
    * [KNOX-1981] - Upgrade spring-core to 5.1.9.RELEASE
    * [KNOX-1977] - Upgrade spotbugs-maven-plugin to 3.1.12.2
    * [KNOX-1974] - Upgrade protobuf-java to 3.9.1
    * [KNOX-1979] - Upgrade dockerfile-maven-plugin to 1.4.12
    * [KNOX-1983] - Upgrade commons-codec to 1.13
    * [KNOX-1982] - Upgrade testcontainers to 1.12.0
    * [KNOX-1975] - Upgrade slf4j to 1.7.27
    * [KNOX-1978] - Upgrade nimbus-jose-jwt to 7.7
    * [KNOX-1984] - Upgrade jna to 5.4.0
    * [KNOX-1985] - Upgrade javax.annotation-api to 1.3.2
    * [KNOX-1972] - Upgrade groovy to 2.5.8
    * [KNOX-1976] - Upgrade dependency-check-maven to 5.2.1
    * [KNOX-1973] - Upgrade cloudera-manager-api 6.2.0 to 6.3.0
    * [KNOX-1980] - Upgrade checkstyle to 8.23
    * [KNOX-1971] - Upgrade Hashicorp Vault test to vault:1.2.1
    * [KNOX-2065] - Upgrade nimbus-jose-jwt to 8.1
    * [KNOX-2061] - ConfigurableHADispatch needs to be wired up
    * [KNOX-2059] - Upgrade bcprov-jdk15on to 1.64
    * [KNOX-2058] - Upgrade commons-compress to 1.19
    * [KNOX-2026] - Accept Impala's authentication cookies (#161)
    * [KNOX-2051] - Upgrade asm to 7.2
    * [KNOX-2050] - Upgrade jackson to 2.10.0
    * [KNOX-2015] - Allow end-users to exclude only certain directives of the SET-COOKIE HTTP header (#154)
    * [KNOX-2024] - Fix testNameMethod test
    * [KNOX-1996] - Adding changes to remove extra / while generating backedn … (#142)
    * [KNOX-2048] - Upgrade pac4j to 3.8.2
    * [KNOX-2047] - Upgrade dependency-check-maven to 5.2.2
    * [KNOX-2046] - Upgrade hadoop to 3.2.1
    * [KNOX-2045] - Upgrade joda-time to 2.10.4
    * [KNOX-2044] - Upgrade protobuf-java to 3.10.0
    * [KNOX-2043] - Upgrade bcprov-jdk15on to 1.63
    * [KNOX-2042] - Upgrade testcontainers to 1.12.1
    * [KNOX-2041] - Upgrade rest-assured to 4.1.1
    * [KNOX-2040] - Upgrade commons-text to 1.8
    * [KNOX-2039] - Upgrade checkstyle to 8.24
    * [KNOX-2038] - Upgrade guava to 28.1-jre
    * [KNOX-2037] - Upgrade nimbus-jose-jwt to 7.8
    * [KNOX-2029] - Upgrade log4j2 to 2.12.1
    * [KNOX-2030] - Upgrade frontend-maven-plugin to 1.8.0
    * [KNOX-2031] - Upgrade slf4j to 1.7.28
    * [KNOX-2032] - Upgrade cglib to 3.3.0
    * [KNOX-2033] - Upgrade commons-beanutils to 1.9.4
    * [KNOX-2034] - Upgrade jetty to 9.4.20.v20190813
    * [KNOX-2035] - Upgrade maven-bundle-plugin to 4.2.1
    * [KNOX-2036] - Upgrade cors-filter to 2.8
    * [KNOX-2028] - Upgrade jackson to 2.9.10
    * [KNOX-1939] - Upgrade jackson-databind to 2.9.9.1
    * [KNOX-1950] - YARN v2 UI - Tools - Yarn Daemon Logs - /logs/stacks link broken
    * [KNOX-1949] - CM discovery - Improve efficiency of discovery
    * [KNOX-1938] - Upgrade nimbus-jose-jwt to 7.5.1
    * [KNOX-1945] - Upgrade spring-vault to 2.1.3.RELEASE
    * [KNOX-1944] - Upgrade protobuf-java to 3.9.0
    * [KNOX-1942] - Upgrade spotbugs-maven-plugin to 3.1.12.1
    * [KNOX-1937] - Upgrade testcontainers to 1.11.4
    * [KNOX-1936] - Upgrade log4j2 to 2.12.0
    * [KNOX-1941] - Upgrade joda-time to 2.10.3
    * [KNOX-1943] - Upgrade dependency-check-maven to 5.2.0
    * [KNOX-1940] - Upgrade commons-text to 1.7
    * [KNOX-1924] - Upgrade org.abstractj.libpam4j 1.9.1 to org.kohsuke.libpam4j 1.11 (#116)
    * [KNOX-1923] - Upgrade nodejs to latest LTS v10.16.0 (#117)
    * [KNOX-2010] - Upgrade zookeeper to 3.5.5 (#152)
    * [KNOX-2203] - Upgrade admin-ui npm dependencies (#245)
    * [KNOX-1969] - Upgrade jackson-databind to 2.9.9.3
    * [KNOX-1966] - Upgrade jackson-databind to 2.9.9.2
    * [KNOX-1885] - Upgrade jetty to 9.4.19.v20190610
    * [KNOX-2301] - Trigger discovery for descriptors at gateway start time
    * [KNOX-2302] - Skip re-deployment of generated topology if the topology has not changed (#297)
    * [KNOX-2265] - Checking CM configs by their related names and read hive.server2.use.SSL from the service configuration (#280)
    * [KNOX-2263] - Docker - make sure not to put anything except version in the tag (#279)
    * [KNOX-2258] - Add filter for Location header (#277)
    * [KNOX-2258] - Add new rewrite rule in Livy service for handling redirect requests to /ui (#276)
    * [KNOX-2212] - Token permissiveness (#274)
    * [KNOX-2249] - Add Spark 3 History Server definition (#270)
    * [KNOX-2250] - maven-antrun-plugin use target instead of tasks (#273)
    * [KNOX-2239] - Websocket use the configured truststore in gateway-site config file (#269)
    * [KNOX-2230] - Token State Service should throw UnknownTokenException instead of IllegalArgumentException (#268)
    * [KNOX-2237] - CM service discovery should default the http path of Hive URLs when the associated property is not set (#266)
    * [KNOX-2161] - CM generated descriptors are read-only on Admin UI (#265)
    * [KNOX-2233] - DefaultKeystoreService getCredentialForCluster uses cache without synchronization (#264)
    * [KNOX-2189] - KnoxShellTable.select() must handle whitespace (#256)
    * [KNOX-2214] - Periodic job to evict expired tokens (#257)
    * [KNOX-2228] - JWTFilter should handle unknown token exception from token state service (#260)
    * [KNOX-2227] - Strip Leading and Trailing Whitespace from Headers in KnoxShellTable (#258)
    * [KNOX-2222] - Fix HBase UI Proxying for HBCK Report page (#254)
    * [KNOX-2207] - TokenStateService revocation should remove persisted token state (#252)
    * [KNOX-2215] - Token service should return a 403 response when the renewer is not white-listed (#251)
    * [KNOX-2213] - Service Discovery Support for CM UI, API (#249)
    * [KNOX-2209] - Improve logging for Knox token handling (#250)
    * [KNOX-2206] - Log exclusion of a discovered service due to configuration issues (#248)
    * [KNOX-2208] - AclsAuthorizationFilter should log access at DEBUG level (#247)
    * [KNOX-2204] - KnoxLine NPE list datasources when directories don't exist (#246)
    * [KNOX-2202] - Knox should use UTF-8 as default encoding instead of ISO-8859-1 (#244)
    * [KNOX-2190] - Processing advanced service discovery configuration on topology level (#242)
    * [KNOX-2188] - Handling discovery details via advanced configuration (#240)
    * [KNOX-1742] - Simple SQL Client in KnoxShell for access to JDBC sources (#241)
    * [KNOX-2186] - Advanced service discovery configuration handling (#238)
    * [KNOX-2128] - fix javadoc warnings/errors
    * [KNOX-2128] - Custom DataSource and SQL Commands for KnoxShell and KnoxShellTable (#231)
    * [KNOX-2160] - Introducing Hadoop XML type descriptor format (#236)
    * [KNOX-2162] - Log no rewrite rule found at DEBUG level
    * [KNOX-1951] - Service Discovery Support for NiFi and NiFi Registry UI (#235)
    * [KNOX-718 ] - KnoxSSO login page doesn't display any feedback on error (#234)
    * [KNOX-2157] - Verifying the server's state in addition to PID check at gateway start and registering shutdown hook in order to stop the server gracefully. (#230)
    * [KNOX-2149] - Added JWT OIDC Verification based on JWKS Urls and extract custom claim
    * [KNOX-2101] - knoxshell doesn't handle invalid TLS well (#232)
    * [KNOX-2148] - ZEPPELINUI service definition should pass query parameters for API
    * [KNOX-2156] - CM discovery - KUDUUI discovery (#228)
    * [KNOX-2155] - KnoxSSO should handle multiple cookies with the same name
    * [KNOX-2154] - Allow KNOX service during topology generation without URLs and parameters (#226)
    * [KNOX-2147] - Mask username/password in case we display call history and keep them safely (by setting proper file permissions) in JSON file (#217)
    * [KNOX-2152] - Disable Ambari cluster configuration monitoring by default (#225)
    * [KNOX-2151] - HIVE_ON_TEZ HS2 Discovery doesn't work (#224)
    * [KNOX-1970] - CM discovery - Add Impala HS2 to auto discovery (#223)
    * [KNOX-2134] - Checking if password/alias is available via local alias service before going to fetch it from remote ZK server (#218)
    * [KNOX-1932] - CM discovery - WEBHCAT URLs not discovered (#222)
    * [KNOX-1921] - CM discovery - Hue Load balancer HTTP/HTTPS scheme (#221)
    * [KNOX-2123] - Setting requestURI using the given servletRequest in case the service is unavailable and logging it with the appropriate action outcome (#219)
    * [KNOX-1935] - CM discovery - Hue should not have both LB and non LB (#220)
    * [KNOX-2136] - Caching credentials in DefaultKeystoreService when an alias is being added or loaded from keystore and using a different cache implementation (#213)
    * [KNOX-1962] - CM discovery - Avoid reading krb5 login config multiple t… (#215)
    * [KNOX-2132] - JDBCKnoxShellTableBuilder should have optional username and password fields
    * [KNOX-2144] - Alias API KnoxShell support should provide response types better than raw JSON (#211)
    * [KNOX-2145] - WhitelistUtils should have an HTTPS_ONLY template (#212)
    * [KNOX-2131] - Fixed sonarcloud bugs (#201)
    * [KNOX-2127] - ZooKeeperAliasService mishandles mixed-case alias keys properly (#202)
    * [KNOX-2053] - Ensure secure XML processing
    * [KNOX-2122] - Use static base class constants
    * [KNOX-2130] - Handle InterruptedException better (#199)
    * [KNOX-2122] - Misc code cleanup (#198)
    * [KNOX-2129] - Improve deprecated javadoc (#197)
    * [KNOX-1997] - Fix diamond operator compiliation error
    * [KNOX-1997] - Adding changes to buffer messages from backend in onMessag… (#143)
    * [KNOX-2122] - Remove deprecated API usages (#194)
    * [KNOX-2103] - Fix javadoc errors
    * [KNOX-1718] - Hide org.apache.directory.api.ldap.model.entry.Value errors (#193)
    * [KNOX-2122] - Use ThreadLocalRandom
    * [KNOX-2103] - Make responseExcludeHeaders parameter in ConfigurableDispatch case insensitive (#192)
    * [KNOX-2122] - Code cleanup from static code analysis (#191)
    * [KNOX-2121] - Zookeeper - Reduce amount of resources required to run tests (#190)
    * [KNOX-2099] - Using the default port of the protocol when no port is declared in the URL when building truststore. (#189)
    * [KNOX-2104] - Removing redundant resource cleanup so that data table can keep track of its activePage/rowsOnTable attributes (#179)
    * [KNOX-2105] - KnoxShell support for token renewal and revocation (#180)
    * [KNOX-1878] - Enforce single version of dependencies (#102)
    * [KNOX-2071] - Configurable maximum token lifetime for TokenStateService (#178)
    * [KNOX-2025] - KnoxShellTable - Join Builder on Method should accept Col Names (#172)
    * [KNOX-2068] - Let end-users add a new service definition from scratch (#173)
    * [KNOX-2072] - Kudu web UI service definition (#171)
    * [KNOX-2070] - SSOCookieFederationFilter NPE (#170)
    * [KNOX-2066] - pom clean up
    * [KNOX-2014] - Make sure ATLASSESSIONID cookie is set (#150)
    * [KNOX-2013] - CM discovery - Add Phoenix to auto discovery (#148)
    * [KNOX-1914] - New admin API to be used by the UI to fetch available service discovery types (#147)
    * [KNOX-2017] - Making Cloudera repository available in Knox's parent POM so that Cloudera dependencies are available in every children project (#149)
    * [KNOX-2016] - KnoxShellTable SQL Builder, Col Select, Sort
    * [KNOX-1998] - WebHDFS rewrite.xml does not have rewrite rule for Location field in json (#138)
    * [KNOX-1994] - Update Ranger API service definition to allow separate URL patterns
    * [KNOX-2007] - Ensure wait for vault to start on exposed port
    * [KNOX-1788] - New XSS Provider is added to Web Application Security Provider List (#141)
    * [KNOX-2005] - Improvements to KnoxShellTable
    * [KNOX-2001] - KnoxSession should log a warning message when useSubjectCredsOnly is false
    * [KNOX-2000] - KnoxSession should not set javax.security.auth.useSubjectCredsOnly
    * [KNOX-1999] - Make WEBHDFS rule that rewrites hdfs:// local (#139)
    * [KNOX-1992] - Add a service definition for Impala's debug web pages (#137)
    * [KNOX-1994] - Update Ranger API service definition to allow separate URL patterns (#136)
    * [KNOX-1934] - Setting the default value of knoxsso.cookie.secure.only based on ssl.enabled flag in gateway-site.xml (#134)
    * [KNOX-1990] - Testing non-existing/non-parsable JAAS configuration in sequential order even if parallel test execution is enabled (#133)
    * [KNOX-1957] - Optional APP_JAVA_OPTS are handled properly (#131)
    * [KNOX-1952] - Add NiFi Registry service definition (#128)
    * [KNOX-1988] - In Spark History Server UI, make links for Executor logs point to YARN UI v2 (#132)
    * [KNOX-1986] - Do not attempt to rewrite empty payload (#129)
    * [KNOX-1967] - Add a service definition for Impala Hiveserver2 (#127)
    * [KNOX-1694] - Prevent port mapped topologies from being exposed to gateway port (#126)
    * [KNOX-1963] - Ranger API service should proxy xusers/users and and xusers/groups
    * [KNOX-1959] - HadoopAuthCookieStore should not read krb5 login config each time
    * [KNOX-1956] - Improve AdminUI development by using angular proxy conf (#122)
    * [KNOX-1948] - If no rules are defined don't rewrite (#121)
    * [KNOX-1588] - YARN v2 UI - Make sure that Spark and MR Job history links are handled
    * [KNOX-1927] - CM discovery - ZEPPELINUI / ZEPPELINWS urls are not discovered
    * [KNOX-1928] - CM discovery - Multiple of same url are added to descriptor
    * [KNOX-1593] - YARN v2 UI - Application - View logs for running application
    * [KNOX-1925] - KnoxPamRealm code cleanup
    * [KNOX-1922] - Processing a DNSName only if the hostname starts with a letter (#115)
    * [KNOX-1816] - Added shellcheck validation to our build optionally and fixed issues shellcheck already found (#114)
    * [KNOX-1919] - Taking gateway.path into consideration when processing redirectToUrl provider param with the OOTB knoxsso.xml sample (#113)
    * [KNOX-1917] - DefaultKeystoreService should use a shared read lock (#110)
    * [KNOX-1916] - Provide default configuration for Hue in topology (#109)
    * [KNOX-1911] - Support ClouderaManager Service Discovery in Admin UI
** Bug
    * [KNOX-2262] - Accessing hbase logs through knox exposes hbase endpoint url instead of routing through knox
    * [KNOX-2314] - NPE from topology Service equals implementation when no URLs (#303)
    * [KNOX-2008] - Fix Broken RM Home Link in YARN UI.
    * [KNOX-2007] - TestHashicorpVaultAliasService fails if a process is already bound to port 8200
    * [KNOX-1590] - YARN v2 UI - Application - ApplicationMaster link is broken
    * [KNOX-1915] - X509CertificateUtil SAN should contain fully qualified hostname
    * [KNOX-1918] - Atlas API - prevent global HDFS rules from triggering (#111)
    * [KNOX-1933] - Add rewrite rules to fix Yarn RM application and logs URL (#119)
    * [KNOX-1744] - Add rewrite rules to fix executor stdout/stderr links in Spark History Server UI (#120)
    * [KNOX-1929] - CM discovery - HIVE URLs not discovered when HIVE_ON_TEZ is deployed
    * [KNOX-1930] - CM discovery - JOBTRACKER URLs not discovered
    * [KNOX-1964] - YARN v1 UI - ContainerLogs link broken for Running Jobs
    * [KNOX-1955] - Admin UI should handle gateway.path change (#123)
    * [KNOX-1968] - YARN UI V2 proxied via Knox does not rewrite Spark stderr/stdout links
    * [KNOX-1995] - If a rule doesn't match, shouldn't error. Need to handle null case
    * [KNOX-2259] - KNOX-2260 KNOX-2261 - Fixed Impala/Kudu/HBase UI context path in service metadata (#282)
    * [KNOX-1958] - YARN v2 UI - internal links of History and ApplicationMaster Pages.
    * [KNOX-2021] - Fix typo in gateway-docker/README.md (#155)
    * [KNOX-2012] - Fix an issue where multiple sessions are created during Ranger login (#146)
    * [KNOX-2011] - Don't block SET-COOKIE response header for Ranger UI (#144)
    * [KNOX-1987] - knox failed to start because knoxcli failed with "java.lan…g.NoSuchFieldError: DEFAULT_XML_TYPE_ATTRIBUTE" (#130)
    * [KNOX-2231] - Fix KnoxSSO OIDC integration (#262)
    * [KNOX-2229] - Knox shouldn't exclude Kerby since it is used by Hadoop
    * [KNOX-2200] - DefaultKeystoreService can lose entries under concurrent access (#243)
    * [KNOX-2002] - Fix KnoxShellTableTest build errors
    * [KNOX-1742] - Fix javadoc warning
    * [KNOX-2350] - Handling event types w/o COMMAND and/or COMMAND_STATUS attributes when polling CM events (#318) (#319)
    * [KNOX-2353] - Disabled CM descriptor monitoring and advanced service discovery changes monitoring by default (#320)
    * [KNOX-2347] - Disable shellcheck for github actions (#317)
    * [KNOX-2345] - KnoxShellTable must handle NULL cols

------------------------------------------------------------------------------
Release Notes - Apache Knox - Version 1.3.0
------------------------------------------------------------------------------
** New Feature
    * [KNOX-1880] - Support doAs for Cloudera Manager service discovery API interactions
    * [KNOX-1862] - Add Service Definition for Hue UI (#97)
    * [KNOX-1875] - Cloudera Manager service discovery
    * [KNOX-1855] - Add Service Definition for Cloudera Manager API (#88)
    * [KNOX-1774] - Introduce environment variables in gateway/knoxcli/ldap/knoxshell scripts for customization (#65)
    * [KNOX-1687] - Hashicorp Vault RemoteAliasService provider
    * [KNOX-1418] - Add KnoxShell command to build truststore using the gateway server's public certificate (#60)
    * [KNOX-1285] - Create Apache Knox Dockerfile and image
** Improvement
    * [KNOX-1912] - X509CertificateUtil should set CN and SAN
    * [KNOX-1905] - Upgrade maven-pmd-plugin to 3.12.0
    * [KNOX-1886] - Upgrade spotbugs-maven-plugin to 3.1.12
    * [KNOX-1910] - Upgrade rest-assured to 4.0.0
    * [KNOX-1909] - Upgrade javax.annotation-api to 1.3.1
    * [KNOX-1908] - Upgrade checkstyle to 8.22
    * [KNOX-1890] - Upgrade testcontainers to 1.11.3
    * [KNOX-1907] - Upgrade pac4j to 3.7.0
    * [KNOX-1884] - Upgrade spring-core to 5.1.8.RELEASE
    * [KNOX-1899] - Upgrade shiro to 1.4.1
    * [KNOX-1882] - Upgrade protobuf-java to 3.8.0
    * [KNOX-1883] - Upgrade nimbus-jose-jwt to 7.3
    * [KNOX-1897] - Upgrade metrics to 4.1.0
    * [KNOX-1898] - Upgrade maven-compiler-plugin to 3.8.1
    * [KNOX-1891] - Upgrade maven-checkstyle-plugin to 3.1.0
    * [KNOX-1903] - Upgrade frontend-maven-plugin to 1.7.6
    * [KNOX-1895] - Upgrade joda-time to 2.10.2
    * [KNOX-1902] - Upgrade maven-bundle-plugin to 4.2.0
    * [KNOX-1885] - Upgrade jetty to 9.4.19.v20190610
    * [KNOX-1904]- Upgrade jna to 5.3.1
    * [KNOX-1887]- Upgrade dependency-check-maven to 5.0.0
    * [KNOX-1888] - Upgrade bcprov-jdk15on to 1.62
    * [KNOX-1901] - Upgrade jansi to 1.18
    * [KNOX-1893] - Upgrade jacoco-maven-plugin to 0.8.4
    * [KNOX-1892] - Upgrade jackson to 2.9.9
    * [KNOX-1906] - Upgrade guava to 28.0-jre
    * [KNOX-1894] - Upgrade groovy to 2.5.7
    * [KNOX-1900] - Upgrade commons-lang3 to 3.9
    * [KNOX-1889] - Upgrade checkstyle to 8.21
    * [KNOX-1896] - Upgrade cglib to 3.2.12
    * [KNOX-1881] - DefaultKeystoreService should use Java NIO API locking as well
    * [KNOX-1877] - Atlas service definitions should default to trusted proxy
    * [KNOX-1876] - Zeppelin should default to trusted proxy for service definition (#100)
    * [KNOX-1874] - Ignore irrelevant files in service definition directories (#99)
    * [KNOX-1872] - Update Ranger service definitions to support trusted proxy
    * [KNOX-1848] - Default to 'zookeeper' as remote alias configuration type in case it is not set in gateway-site.xml (#93)
    * [KNOX-1858] - Add service name to X-Forwarded-Context header (#90)
    * [KNOX-1859] - Improve alias lookup for HadoopAuthProvider (#89)
    * [KNOX-1861] - KnoxSession should support configurable useSubjectCredsOnly system property setting
    * [KNOX-1857] - YARNUIV2 fails with Authentication Required with kerberos authentication type (Prabhu Joseph via Kevin Risden)
    * [KNOX-1827] - Knox Fails to Rewrite WebFonts for Zeppelin (#76)
    * [KNOX-1851] - remove the unnecessary instanceof check (#87)
    * [KNOX-1841] - Upgrade zookeeper to 3.4.14
    * [KNOX-1846] - Upgrade testcontainers to 1.11.1
    * [KNOX-1845] - Upgrade spring-core to 5.1.6.RELEASE
    * [KNOX-1840] - Upgrade protobuf-java to 3.7.1
    * [KNOX-1847] - Upgrade findsecbugs to 1.9.0
    * [KNOX-1843] - Upgrade dependency-check-maven to 5.0.0-M2
    * [KNOX-1850] - KnoxSession should honor the current subject for Kerberos login
    * [KNOX-1849] - Start the Java process with 'exec' when running the app in foreground (#85)
    * [KNOX-1844] - Upgrade checkstyle to 8.19
    * [KNOX-1819] - Ensure services are started and stopped in the correct order (#82)
    * [KNOX-1837] - Remove jersey-common from top level pom
    * [KNOX-1836] - Migrate from commons-lang to commons-lang3
    * [KNOX-1837] - Remove ServiceTestResource glassfish Base64 dependency
    * [KNOX-1835] - Jupyter Enterprise Gateway - KERNEL_USERNAME should be added when not present (#79)
    * [KNOX-1832] - KnoxSession handling of JAAS config for kerberos auth is not deterministic
    * [KNOX-1828] - Fix javadoc warning for test
    * [KNOX-1804] - Moving copy-pasted bash functions to knox-function.sh (#71)
    * [KNOX-1824] - Upgrade guava to 27.1-jre
    * [KNOX-1823] - Upgrade protobuf-java to 3.7.0
    * [KNOX-1822] - Upgrade dependency-check-maven to 5.0.0-M1
    * [KNOX-1814]- Moving conf/data folder checking to Java layer from bash (#68)
    * [KNOX-1812] - The Knox Gateway truststore should be configurable (#69)
    * [KNOX-1815] - Removed Windows scripts (#67)
    * [KNOX-1111] - 2-way SSL Truststore and Keystore Improvements (#74)
    * [KNOX-1820] - Cleanup KeystoreService implementations and add unit tests (#72)
    * [KNOX-1804] - Fix variable *_FOREGROUND_* defaults
    * [KNOX-1826] - Replace zip4j with ShrinkWrap
    * [KNOX-1810] - Upgrade frontend-maven-plugin to 1.7.5
    * [KNOX-1811] - Upgrade pac4j to 3.6.1
    * [KNOX-1809] - Upgrade spotbugs to 3.1.12
    * [KNOX-1807] - Upgrade curator to 4.2.0
    * [KNOX-1808] - Upgrade asm to 7.1
    * [KNOX-1803] - Stop redirecting stderr & stdout to a file when the server runs in the foreground (#64)
    * [KNOX-1801] - Master secret is incorrectly assumed when a custom truststore is not specified when clientauth is enabled (#63)
    * [KNOX-1802] - Ranger /service/plugins and healthcheck endpoint needs to be exposed through Knox.
    * [KNOX-474] - Improve Kerberos config validation and diagnostics at startup (#62)
    * [KNOX-1789] - Refactor RemoteAliasService to use service loading (#59)
    * [KNOX-1793] - DefaultKeystoreService should not validate the signing key on initialization (#61)
    * [KNOX-1799] - Upgrade nimbus-jose-jwt to 7.0.1
    * [KNOX-1800] - Upgrade mina-core to 2.0.20
    * [KNOX-1798] - Upgrade checkstyle to 8.18
    * [KNOX-1791] - MasterService should be a field on GatewayServices - replace "Master Service" with (new) constant, reordered constants in GatewayServices (#58)
    * [KNOX-1756] - Knox Gateway TLS Keystore and Alias Should be Configurable (#56)
    * [KNOX-1787] - Use same SecureRandom that DefaultAliasService used
    * [KNOX-1787] - Create PasswordUtils class in gateway-util-common
    * [KNOX-1786] - Use mocking to simplify DefaultRemoteConfigurationMonitorTest
    * [KNOX-1162] - Logging stacktrace for FATAL messages and displaying a meaningful error message in case of missing/non-parsable JAAS configuration (#55)
    * [KNOX-1784] - Upgrade bootstrap to 3.4.1
    * [KNOX-1780] - Upgrade slf4j to 1.7.26
    * [KNOX-1781] - Upgrade commons-codec to 1.12
    * [KNOX-1782] - Upgrade jetty to 9.4.15.v20190215
    * [KNOX-1777] - Move pac4j version/dependencies to top level pom.xml
    * [KNOX-1778] - Update Copyright year to 2019
    * [KNOX-1709] - Limit parallelism for slower laptops
    * [KNOX-1760] - Created Pull Request template (#51)
    * [KNOX-1775] - Cleanup test timeout handling
    * [KNOX-1773] - Docker start gateway/ldap in the foreground
    * [KNOX-1771] - Upgrade spotbugs-maven-plugin to 3.1.11
    * [KNOX-1769] - Upgrade nimbus-jose-jwt to 7.0
    * [KNOX-1767] - Upgrade log4j2 to 2.11.2
    * [KNOX-1770] - Upgrade groovy to 2.5.6
    * [KNOX-1768] - Upgrade bcprov-jdk15on to 1.61
    * [KNOX-1772] - Upgrade angular-cli to 1.7.4
    * [KNOX-1709] - Allow tests to run in parallel
    * [KNOX-1758] - New Ant target to ease starting test servers enabling remote debugging
    * [KNOX-1757] - Increasing test timeout from 1 second to 3 seconds (Sandor Molnar via Kevin Risden)
    * [KNOX-1755] - Revert upgrade httpclient to 4.5.7 due to HTTPCLIENT-1968
    * [KNOX-1754] - Upgrade pac4j to 3.5.0
    * [KNOX-1753] - Upgrade jacoco-maven-plugin to 0.8.3
    * [KNOX-1752] - Upgrade httpclient to 4.5.7
    * [KNOX-1751] - Upgrade checkstyle to 8.17
    * [KNOX-1792] - AliasService start should only be called once in DefaultGatewayServices
    * [KNOX-1750] - Unable to view descriptor service params
    * [KNOX-1559] - Create Dispatch implementation that is configurable via service.xml file
    * [KNOX-1747] - Upgrade spotbugs to 3.1.11
    * [KNOX-1746] - Upgrade httpcore to 4.4.11
    * [KNOX-1748] - Upgrade eclipselink to 2.7.4
    * [KNOX-1745] - Upgrade hadoop to 3.2.0
    * [KNOX-1738] - Upgrade nimbus-jose-jwt to 6.7
    * [KNOX-1739] - Upgrade spring-core to 5.1.4.RELEASE
    * [KNOX-1737] - Remote configuration monitor start should not be attempted if config is not defined
    * [KNOX-1736] - Upgrade rest-assured to 3.3.0
    * [KNOX-1735] - Upgrade admin-ui bootstrap to 3.4.0
    * [KNOX-1710] - Reuse JAXBContext since they are thread safe
    * [KNOX-1731] - Gateway Admin UI should not include external js/css
    * [KNOX-1728] - Allow custom parameters to be passed to dispatches
    * [KNOX-1727] - Values should not be forced in query parameters when proxying through Knox
    * [KNOX-1721]- Upgrade dependency-check-maven to 4.0.2
    * [KNOX-1724] - Upgrade rat plugin to 0.13
    * [KNOX-1723] - Upgrade dropwizard metrics to 4.0.5
    * [KNOX-1722] - Upgrade checkstyle to 8.16
    * [KNOX-1716] - Upgrade hamcrest to 2.1
    * [KNOX-1717] - Enable PMD incremental analysis
    * [KNOX-1715] - Upgrade jna to 5.2.0
    * [KNOX-1712] - Upgrade spotbugs-maven-plugin to 3.1.10
    * [KNOX-1713] - Upgrade dropwizard metrics to 4.0.4
    * [KNOX-1714] - Upgrade groovy to 2.5.5
    * [KNOX-1711] - Provide Endpoint Public Cert for KnoxToken
    * [KNOX-1679] - Add Alias API service
    * [KNOX-1679] - Review fixes
    * [KNOX-1708] - Cleanup admin-ui lint errors
    * [KNOX-1707] - Gateway Admin UI should have the right version
    * [KNOX-1705] - Fix including gateway-admin-ui module
    * [KNOX-1679] - Add Alias API service
    * [KNOX-1705] - Integrate gateway-admin-ui into Maven build
    * [KNOX-1703] - Cleanup old System.out debugging lines
    * [KNOX-1702]- Use Boolean.parseBoolean instead of true.equals
    * [KNOX-1701] - Use hamcrest assertThat instead of junit
    * [KNOX-1700] - Tests should not extend org.junit.Assert
    * [KNOX-1696] - Upgrade nimbus-jose-jwt to 6.5.1
    * [KNOX-1697] - Upgrade curator to 4.1.0
    * [KNOX-1690] - Update pom.xml with new git url
    * [KNOX-1691] - Update doap_Knox with gitbox location
    * [KNOX-1686] - XmlFilterReader - Ensure XPath and XPathFactory thread safety
    * [KNOX-1684] - Avoid NPE for deployments in GatewayServer
    * [KNOX-1685] - MockServlet - avoid mutable instance variables
    * [KNOX-1683] - Ensure truststorePass is set in KnoxSession
    * [KNOX-1682] - Upgrade dependency-check-maven to 4.0.1
    * [KNOX-1681] - Upgrade spotbugs to 3.1.10
    * [KNOX-1663] - Checkstyle - Enable EqualsAvoidNullCheck and don't instantiate Boolean
    * [KNOX-1768] - Upgrade Jackson to 2.9.8
    * [KNOX-1677] - Use try-with-resources to ensure that resources are closed
    * [KNOX-1527] - Bump apacheds dependency version to 2.0.0-AM25
    * [KNOX-1676] - Enable PMD for tests
    * [KNOX-1638] - Migrate from apacheds-all to specific apacheds dependencies
    * [KNOX-1673] - Upgrade cglib to 3.2.10
    * [KNOX-1568] - Upgrade nimbus-jose-jwt to 6.5
    * [KNOX-1672] - Cleanup deprecated API usage
    * [KNOX-1671] - Cleanup misc logic errors identified by Sonarqube
    * [KNOX-1669] - Enable PMD code style rules
    * [KNOX-1668] - Enable PMD multithreading ruleset
    * [KNOX-1667] - Enable PMD error prone ruleset
    * [KNOX-1666] - Enable PMD best practices ruleset
    * [KNOX-503] - Tests which include expected unreachable hosts fail with wildcard DNS records (Kristopher Kane, Kevin Risden)
    * [KNOX-1615] - Enable PMD for source analysis
    * [KNOX-1664] - Miscellaneous code cleanup
    * [KNOX-1663] - Enforce more Checkstyle rules
    * [KNOX-1618] - Add dropwizard metrics-jvm support
    * [KNOX-1623] - Fix jenkins build - 2
    * [KNOX-1364] - Cookie scoping path should contain the topology name (Laszlo Nardai via Kevin Risden)
    * [KNOX-1662] - Avoid GatewayTestDriver NPE on ldap stop
    * [KNOX-1659] - Upgrade spring-core to 5.1.3.RELEASE
    * [KNOX-1656] - Upgrade checkstyle to 8.15
    * [KNOX-1658] - Upgrade spotbugs-maven-plugin to 3.1.9
    * [KNOX-1657] - Upgrade easymock to 4.0.2
    * [KNOX-1660] - OWASP Add suppressions for false positives
    * [KNOX-1623] - Fix jenkins failure and minor doc changes
    * [KNOX-1650] - HA dispatcher for Atlas with knox trusted proxy (Nixon Rodrigues via Kevin Risden)
    * [KNOX-1623] - Kerberos support for KnoxShell
** Bug
    * [KNOX-1879] - HDFSUI service definition doesn't work with DefaultHaDispatch
    * [KNOX-1870] - Zeppelin UI service definition service.xml has wrong version
    * [KNOX-1868] - HBase UI changes from KNOX-1866 aren't picked up due to service.xml version (#95)
    * [KNOX-1866] - Fix HBase UI proxying (#94)
    * [KNOX-1864] - Knox returns HTTP 405 Method Not Allowed error with HTTP PATCH method (#91)
    * [KNOX-1856] - Incorrect error message in case there is no 'gateway-identity' certificate in the configured keystore (#92)
    * [KNOX-1854] - Admin UI read-only topology message typo
    * [KNOX-1851] - Fix NPE in Zookeeper Remote Alias Service (#86)
    * [KNOX-1830] - Fix sporadic Illegal character error in TestHashicorpVaultAliasService
    * [KNOX-1828] - Fix Websocket Message Size (#75)
    * [KNOX-1789] - Fix RemoteAliasService fallback after KNOX-1756
    * [KNOX-1191] - Azure AD support for KnoxSSO
    * [KNOX-1733] - Spark History UI Version is Not Correct in the XML
    * [KNOX-1647] - Identity Assertion should not modify order of query params
    * [KNOX-1680] - KnoxTokenCredentialCollector results in IndexOutOfBounds exception
    * [KNOX-1615] - Fix mvn site

------------------------------------------------------------------------------
Release Notes - Apache Knox - Version 1.2.0
------------------------------------------------------------------------------
** New Feature
    * [KNOX-1343] - Support Ganglia for Knox (Mert Hocanin via Kevin Risden)
    * [KNOX-1421] - Enable OWASP Dependency Check
    * [KNOX-1549] - KnoxSSO should support signing keys per topology

** Improvement
    * [KNOX-16] - Implement IdentityAsserterHttpServletRequestWrapper.ServletInputStreamWrapper methods for performance
    * [KNOX-1011] - Add ldap.port system property to configure LDAP demo server port (Attila Csoma via Kevin Risden)
    * [KNOX-1112] - KnoxShell support for managing simple descriptors
    * [KNOX-1291] - ssl.include|exclude.ciphers & ssl.exclude.protocols support comma or pipe separated lists
    * [KNOX-1359] - Disable kerberos debugging by default
    * [KNOX-1401] - Add HAL+JSON To the List of JSON Content Types (William Watson via Sandeep More)
    * [KNOX-1411] - WEBHBASE service discovery references incorrect property for the port
    * [KNOX-1440] - WEBHDFS: retry should not be attempted for datanode write failures
    * [KNOX-1441] - Enable spotbugs for static build checking
    * [KNOX-1442] - Enable forbiddenapis for static build checking
    * [KNOX-1443] - Add checkstyle to enforce coding style
    * [KNOX-1444] - Upgrade to ASF POM version 21
    * [KNOX-1448] - Maven pom dependency cleanup
    * [KNOX-1460] - Zookeeper tests should call close() instead of stop()
    * [KNOX-1461] - Remove JRE/JDK 1.7 check introduced by KNOX-769
    * [KNOX-1464] - Remove explicit guava dependency from gateway-server InstrUtils
    * [KNOX-1465] - Remove explicit guava dependency from gateway-provider-ha
    * [KNOX-1466] - Remove explicit guava dependency from gateway-provider-rewrite-func-inbound-query-param
    * [KNOX-1467] - Remove explicit guava dependency from gateway-provider-security-preauth
    * [KNOX-1468] - Remove explicit guava dependency from gateway-service-nifi
    * [KNOX-1474] - Bump apacheds dependency version to 2.0.0-AM24
    * [KNOX-1475] - Bump shrinkwrap dependency versions
    * [KNOX-1477] - Bump commons-* dependency versions
    * [KNOX-1478] - Support running checkstyle from submodules
    * [KNOX-1479] - Replace Mockito usage with EasyMock
    * [KNOX-1484] - Bump version dependencies Oct 2018
    * [KNOX-1501] - Upgrade hadoop to 3.1.1
    * [KNOX-1511] - Enable forbiddenapis commons-io signatures
    * [KNOX-1512] - Replace deprecated EasyMock new Capture() calls
    * [KNOX-1516] - Upgrade Jetty to 9.4.12
    * [KNOX-1518] - Large HDFS file downloads are incomplete when content is gzipped
    * [KNOX-1521] - Implement UrlRewriteRequestStream methods for performance
    * [KNOX-1522] - Add HA support for HadoopAuthProvider
    * [KNOX-1528] - Remove hadoop-common dependency from gateway-spi module
    * [KNOX-1530] - Improve Gzip Compression Handling Performance
    * [KNOX-1537] - Cleanup gateway-group no value errors
    * [KNOX-1538] - Remove TODO Auto-generated
    * [KNOX-1540] - Use StandardCharsets where possible
    * [KNOX-1544] - KnoxTokenCredentialCollector should not call System.exit()
    * [KNOX-1545] - KnoxTokenCredentialCollector should expose the type of the collected token
    * [KNOX-1546] - Fix javadoc errors and warnings
    * [KNOX-1547] - Add Ability to set the Truststore Location and Password to KnoxShell
    * [KNOX-1553] - Update documentation to reference org.apache.knox instead of org.apache.hadoop.gateway
    * [KNOX-1554] - Allow Knox site to be built with JDK 11
    * [KNOX-1555] - Update DOAP file
    * [KNOX-1630] - Generate sha256 and sha512 checksums instead of md5 and sha1

** Bug
    * [KNOX-720] - Knox DSL - Ensure that HTTP client is closed on shutdown
    * [KNOX-1093] - KNOX Not Handling safemode state of one of the NameNode In HA state
    * [KNOX-1098] - Livy proxyUser should be added when not present
    * [KNOX-1152] - Guard Against Missing Subject in Identity Assertion (Rick Kellogg via Kevin Risden)
    * [KNOX-1165] - Another unnamed CacheManager already exists in the same VM
    * [KNOX-1207] - YARN V1 UI and MapReduce Job History UI - Rewrite rule bugs
    * [KNOX-1218] - LDAP Group Lookup appears twice in User Guide TOC
    * [KNOX-1221] - WebHDFS read/write performance limitations
    * [KNOX-1222] - Discovery API requests fail against Docker Sandbox
    * [KNOX-1247] - Knox Cloud Federation
    * [KNOX-1337] - Cleanup AbstractGatewayDispatch
    * [KNOX-1405] - Download page must link to KEYS and contain verification details
    * [KNOX-1412] - Failure while executing a `curl` command using Content-Type: text/xml" "Content-Encoding: gzip"
    * [KNOX-1415] - Upgrade Jetty to 9.2.25
    * [KNOX-1416] - Upgrade Spring Framework to 4.3.17
    * [KNOX-1417] - Upgrade Bouncy Castle Dependency from Pac4J
    * [KNOX-1420] - Add app.css path for Zeppelin's style sheet (Prabhjyot Singh via Sandeep More)
    * [KNOX-1422] - Whitelisting not working as expected for knoxauth redirects
    * [KNOX-1424] - knox renaming "app" to "/gateway/ui_ns1/zeppelin/app" (Sameer Shaikh via Sandeep More)
    * [KNOX-1429] - HadoopAuthFilter avoid logging sensitive values
    * [KNOX-1430] - Potential output stream handle leak when copyLarge files in streamResponse (Guang Yang via lmccay)
    * [KNOX-1433] - RMHaBaseDispatcher Class Cleanup - SafeModeException
    * [KNOX-1434] - Visiting Knox Admin UI forces subsequent requests to other services redirect to HTTPS (Vipin Rathor via Sandeep More)
    * [KNOX-1436] - AbstractHdfsHaDispatch failoverRequest - Improve Failover Logging
    * [KNOX-1445] - Ensure that gateway-adapter module classes have @Deprecated annotation
    * [KNOX-1459] - Remove testng assertions
    * [KNOX-1505] - Knox should close CuratorFramework clients when finished
    * [KNOX-1519] - Fix 404s in the documentation
    * [KNOX-1520] - markbook refers to wrong parent-pom version
    * [KNOX-1523] - XML parsing cleanup
    * [KNOX-1526] - Upgrade Jetty to 9.2.26
    * [KNOX-1529] - gateway-shell-release doesn't include shaded jar
    * [KNOX-1541] - Rename Hadoop class in KnoxShell to KnoxSession
    * [KNOX-1556] - [Rewrite Rule] Apache Ambari Favicon and link to NOTICE.txt does not work when using Knox Gateway
    * [KNOX-1557] - Knox service cannot be added to proxied Ambari (through Knox) because master password field is readonly
    * [KNOX-1558] - KnoxToken service returns wrong content type and content length values
    * [KNOX-1577] - Knox automatically derived dispatch whitelist doesn't seem to actually match the knox domain (Phil Zampino and Vipin Rathor via Kevin Risden)
    * [KNOX-1596] - YARNUIV2 Remove policies from service.xml (Sunil Govindan via Kevin Risden)
    * [KNOX-1602] - JsonFilterReader should handle strings, numbers, booleans, and null at root
    * [KNOX-1612] - GatewayAdminTopologyFuncTest#testPutTopology ClassNotFoundException
    * [KNOX-1616] - Fix portmapping with Jetty 9.4
    * [KNOX-1639] - java.lang.IllegalStateException: No org.apache.tomcat.InstanceManager set in ServletContext
    * [KNOX-1645] - Improve JSESSIONID handling
    * [KNOX-1651] - Cleanup IdentityAsserterMessages interfaces

** Sub-task
    * [KNOX-1449] - Ensure all pom.xml files have same header
    * [KNOX-1450] - Remove redundant configurations from pom.xml
    * [KNOX-1451] - Setup base checkstyle plugin
    * [KNOX-1452] - Enable checkstyle no tabs in source file rule
    * [KNOX-1453] - Enable checkstyle no unused imports rule
    * [KNOX-1454] - Enable checkstyle no wildcard imports rule
    * [KNOX-1455] - Enable checkstyle ASF header check rule
    * [KNOX-1456] - Move dependency versions to top level pom properties
    * [KNOX-1457] - Add mailing lists to top level pom
    * [KNOX-1463] - Use maven-dependency-plugin to ensure all dependencies are declared
    * [KNOX-1470] - Remove surefire-version and failsafe-version properties
    * [KNOX-1471] - Remove unused genson dependency
    * [KNOX-1472] - Remove explicit surefire plugin block in child poms
    * [KNOX-1473] - Remove plugin versions that are from parent ASF pom
    * [KNOX-1480] - Remove cobertura-maven-plugin
    * [KNOX-1481] - Remove javancss-maven-plugin
    * [KNOX-1482] - Migrate to maven-site-plugin reportSets
    * [KNOX-1485] - Upgrade bcprov-jdk15on to 1.60
    * [KNOX-1486] - Upgrade commons-lang3 to 3.8.1
    * [KNOX-1487] - Upgrade easymock to 3.6
    * [KNOX-1488] - Upgrade curator to 4.0.1
    * [KNOX-1489] - Upgrade jericho-html to 3.4
    * [KNOX-1490] - Upgrade buildnumber-maven-plugin to 1.4
    * [KNOX-1491] - Upgrade jline to 2.14.6
    * [KNOX-1492] - Upgrade jna to 4.5.2
    * [KNOX-1493] - Upgrade joda-time to 2.10
    * [KNOX-1494] - Upgrade groovy to 2.5.2
    * [KNOX-1495] - Upgrade httpclient to 4.5.6 and httpcore to 4.4.10
    * [KNOX-1496] - Upgrade maven-bundle-plugin to 4.0.0
    * [KNOX-1497] - Upgrade jansi to 1.17.1
    * [KNOX-1498] - Upgrade maven-enforcer-plugin to 3.0.0-M2
    * [KNOX-1499] - Upgrade cors-filter to 2.6
    * [KNOX-1500] - Upgrade rest-assured to 3.1.1
    * [KNOX-1503] - Upgrade slf4j to 1.7.25
    * [KNOX-1504] - Upgrade eclipselink to 2.7.3
    * [KNOX-1506] - Upgrade protobuf-java to 3.6.1
    * [KNOX-1507] - Upgrade okhttp to 2.7.5
    * [KNOX-1508] - Upgrade taglibs-standard-spec and taglibs-standard-impl to 1.2.5
    * [KNOX-1509] - Upgrade pac4j dependencies
    * [KNOX-1510] - Upgrade nimbus-jose-jwt to 6.0.2
    * [KNOX-1513] - Upgrade spring-core to 5.0.9.RELEASE
    * [KNOX-1514] - Upgrade jackson to 2.9.7
    * [KNOX-1515] - Upgrade shiro to 1.4.0 and ehcache to 2.6.11
    * [KNOX-1531] - Remove gzip handler added by KNOX-732
    * [KNOX-1532] - Only decompress/recompress when there are rewrite rules
    * [KNOX-1533] - Disable httpclient transparent content decompression
    * [KNOX-1534] - Avoid try/catch checking for gzip stream
    * [KNOX-1535] - Remove custom gzip helper stream - use commons-compress
    * [KNOX-1578] - JobHistory UI - Broken "ResourceManager" and "NodeManager" links
    * [KNOX-1580] - YARN v1 UI - Scheduler - "Dump scheduler logs" link broken
    * [KNOX-1581] - YARN v1 UI - Application - Node and logs links broken
    * [KNOX-1587] - YARN v1 UI - Fix Spark history links

** Test
    * [KNOX-1548] - Improve ZooKeeperConfigurationMonitorTest to not use Thread.sleep()

** Wish
    * [KNOX-1435] - how to configure rewrite.xml and service.xml?

** Task
    * [KNOX-542] - Add replayBufferSize defaults to the sandbox topology (Matthew Sharp via Kevin Risden)
    * [KNOX-543] - Add documentation and configuration examples to the user guide for replaybuffersize
    * [KNOX-1402] - Upgrade to Apache parent pom version 20
    * [KNOX-1407] - Please delete old releases from mirroring system
    * [KNOX-1408] - Remove the Roadmap confluence wiki page
    * [KNOX-1524] - Hive "select *" performance evaluation
    * [KNOX-1525] - HBase "scan" performance evaluation
    * [KNOX-1536] - Replace redundant types with the diamond operator
    * [KNOX-1539] - Put the array declaration after the type
    * [KNOX-1542] - Upgrade to EasyMock 4.0.1
    * [KNOX-1543] - Update documentation for KNOX-1531
    * [KNOX-1622] - Enable the secure processing feature on all XPathFactory instances
    * [KNOX-1637] - ant verify-stage should check knoxshell artifacts

------------------------------------------------------------------------------
Release Notes - Apache Knox - Version 1.1.0
------------------------------------------------------------------------------
** New Feature
    * [KNOX-1040] - Initial new descriptor and provider config wizard support
    * [KNOX-1040] - Accommodate omission of cluster user in descriptor discovery config
    * [KNOX-1040] - Implemented the ability to add config elements to provider configurations and descriptors.
    * [KNOX-1040] - Added modification support: delete, discard changes, save changes
    * [KNOX-1040] - Separated the provider config selection modal into its own component.
    * [KNOX-1040] - Added visual indicator that a provider config has not been removed because it is referenced, and improved editable fields
    * [KNOX-1040] - Initial changes to support simple descriptors and provider configurations in the Admin UI.

** Improvement
    * [KNOX-1395] - Change Derived Whitelist logic to not use InetAddress of Localhost for getting Hostname
    * [KNOX-1394] - OOTB gateway-site.xml to Default to Demo Whitelist Scenario
    * [KNOX-1381] - Fix logging
    * [KNOX-1378] - Declare SSO params using KnoxSSO service option  knoxsso.expected.params
    * [KNOX-1379] - Default dispatch whitelist should not include localhost when the Knox host domain can be determined
    * [KNOX-1363] - Support service role-based whitelist for dispatches and redirects
    * [KNOX-1357] - Add configurable list of AutoDeploy topologies to deploy on server start
    * [KNOX-1350] - Complete centralization of manager.xml topology config in gateway-site.xml
    * [KNOX-1339] - (KIP-11 Federation)  Add support for header preauth dispatch
    * [KNOX-1350] - Centralize Group Lookup Config in gateway-site.xml
    * [KNOX-1338] - Add Config Property for Knox Admin Groups for AclsAuthz Provider Use
    * [KNOX-1326] - merge DATANODE rewrite rules into HDFSUI
    * [KNOX-1336] - Upgrade libpam4j to abstractj/1.9.1
    * [KNOX-1315] - Spark UI urls issue: Jobs, stdout/stderr and threadDump links (Guang Yang via lmccay)
    * [KNOX-1143] - Add MR job history ws rest api rewrite rule to jobhistoryui (Guang Yang via lmccay)
    * [KNOX-1089] - Upgrade Jetty
    * [KNOX-1329] - Upgrade the transitive springframework spring core to even newer version
    * [KNOX-1290] - Create gateway definition for Log Search - version 0.5.0 (Olivér Szabó via lmccay)
    * [KNOX-1329] - Upgrade the transitive springframework spring core from pac4j
    * [KNOX-1328] - Change Default Authentication to KnoxSSO for Admin UI
    * [KNOX-1320] - Upgrade JQuery in the KnoxAuth Application
    * [KNOX-1327] - Log REST invocation error exceptions encountered during service discovery at ERROR level
    * [KNOX-1322] - Support configuration property to forcibly treat topologies as read-only
    * [KNOX-1314] - SSOCookieProvider should be able to derive a default provider URL
    * [KNOX-1319] - Better logging when discovery fails to access service configurations
    * [KNOX-1318] - Update available Admin UI services to include NiFi
    * [KNOX-1317] - Ambari service discovery config handling of nested derived properties
    * [KNOX-1193] - NiFi service discovery support
    * [KNOX-1154] - Dump Kerberos settings upon startup. (Rick Kellogg via Phil Zampino)
    * [KNOX-1310] - The X-Content-Type-Options header should be set as 'nosniff'
    * [KNOX-1309] - Admin API resource names should be validated
    * [KNOX-1308] - Implement safeguards against XML entity injection/expansion in the Admin API
    * [KNOX-1227] - Add KnoxSSO and KnoxToken services to the new descriptor service options
    * [KNOX-1266] - Employ gateway-site config for default discovery address and cluster values
    * [KNOX-1275] - Add json-smart explicitly to gateway-spi (Saravanan Krishnamoorthy via lmccay)
    * [KNOX-1306] - Remove requirement for cluster when discovery address is specified in admin UI new descriptor wizard.
    * [KNOX-1193] - LOGSEARCH discovery support
    * [KNOX-1305] - Add postfix and infix rewrite functions
    * [KNOX-1236] - Support service discovery for YARNUIV2
    * [KNOX-1202] - Validate resource names
    * [KNOX-1300] - Add default provider configuration for demo LDAP to the distribution
    * [KNOX-1193] - Add service discovery support for Spark Thrift UI
    * [KNOX-1293] - Support for Ambari discovery of SPARK2 services
    * [KNOX-1294] - Upgrade Jackson-Databind to 2.9.5
    * [KNOX-1292] - Upgrade Groovy to 2.4.8
    * [KNOX-1289] - Deletion of generated topology deletes associated descriptor file
    * [KNOX-1135] - Add configuration property for allowing remote configuration to be read by unauthenticated clients
    * [KNOX-1281] - HA provider configuration wizard should require the service name property value
    * [KNOX-1279] - HaProvider wizard should include ability to specify ZooKeeper-related properties
    * [KNOX-1257] - WebAppSec provider configuration wizard
    * [KNOX-1276] - Improve HA provider configuration wizard
    * [KNOX-1269] - Generate services declared in descriptor without URLs or params, but with valid HaProvider ZK config
    * [KNOX-1267] - Add support for Ranger-related service discovery with HTTPS configurations
    * [KNOX-1268] - Add support for HDFS-related service discovery with HTTPS configurations
    * [KNOX-1258] - Add Anonymous authentication provider to provider config wizard options.
    * [KNOX-1259] - Removed height restriction on resource type and resource list tables
    * [KNOX-1263] - Admin UI provider config details should organize providers by role rather than name
    * [KNOX-1187] - Support for Distributed Alias Service
    * [KNOX-1182] - Removed lingering configuration, which is no longer used for RM-based services
    * [KNOX-1233] - Excluded lang-tag from the pac4j-oidc dependency
    * [KNOX-1243] - Normalize the required DNs that are Configured in KnoxToken Service
    * [KNOX-1220] - HostMap provider configuration wizard option in Admin UI
    * [KNOX-1212] - Support new YARN webui2 in Knox (Sunil Govindan via Phil Zampino)
    * [KNOX-1153] - Support for determining whether HA is enabled or not from the service's configuration
    * [KNOX-1215] - Hadoop Group Lookup Provider Config Wizard
    * [KNOX-1229] - Ambari service discovery REST invocations need reasonable timeout
    * [KNOX-1228] - Atlas HA ZooKeeper Config Discovery
    * [KNOX-1224] - Knox Proxy HADispatcher to support Atlas in HA (Nixon Rodrigues via Phil Zampino)
    * [KNOX-1219] - Eliminated duplicate useTwoWaySsl dispatch filter params
    * [KNOX-1216] - Admin UI and runtime validation for new descriptor provider configuration reference
    * [KNOX-1211] - Admin UI XSS/XSRF Protection
    * [KNOX-1202] - Added UI elements to indicate invalid param values
    * [KNOX-1202] - Descriptor and Provider Configuration Wizard Input Validation
    * [KNOX-1190] - Compress cookies set by Pac4J, in some cases the cookie size exceeds 4K and cause them not to set.
    * [KNOX-1200] - Update Apache parent pom version
    * [KNOX-1193] - Discovery support for SOLR, STORM and STORM-LOGVIEWER, and config for additional support
    * [KNOX-1198] - Support Ambari service discovery mappings override/augmentation with external config
    * [KNOX-1193] - Added discovery support for LIVYSERVER, SPARKHISTORYUI, JOBHISTORYUI, YARNUI, FALCON, OOZIEUI, HBASEUI, HDFSUI, DRUID-COORDINATOR-UI and DRUID-OVERLORD-UI
    * [KNOX-1194] - Safe loading and dumping of yaml, and filter empty-value properties from JSON output.
    * [KNOX-1176] - Update provider configuration references if new reference is invalid
    * [KNOX-1186] - Descriptors and Topology Generation Support for Service Versioning
    * [KNOX-1167] - Support HDFS Federation in Knox topology generation
    * [KNOX-1188] - Maintain provider parameter order in generated topologies
    * [KNOX-1181] - Add support for RANGER and RANGERUI service endpoint discovery via Ambari
    * [KNOX-1159] - Create ".sha1" files when releasing instead of ".sha"
    * [KNOX-1040] - Added ability to edit provider params, service params, and provider URLs.
    * [KNOX-1178] - Add test to ensure regex or support in RegexIdentityAssertionFilter
    * [KNOX-1169] - Clear Cluster Configuration Monitor Cache When No Relevant Descriptors Remain
    * [KNOX-1153] - Service-level overrides for HA provider configuration in generated topologies, and alternate provide config formats.

** Bug
    * [KNOX-1399] - Duplicate configuration for gateway.dispatch.whitelist in gateway-site.xml OOTB
    * [KNOX-1398] - WebHDFS and WebHBase APIs listed incorrectly as services that need whitelist enforcement
	  * [KNOX-1397] - Admin UI Topologies List needs to Refresh on New or Deleted Topologies
	  * [KNOX-1396] - Admin UI Provider Config wizard URL validation requires a port
    * [KNOX-1360] - Fix ambari broken images (Aleksandr Kovalenko via Sandeep More)
    * [KNOX-1358] - Create new version definition for SHS (Marco Gaido via lmccay)
    * [KNOX-1345] - Fix javadoc errors
    * [KNOX-1353] - SHS always showing link to incomplete applications (Marco Gaido via lmccay)
    * [KNOX-1356] - Fix X-Forwarded-Context header (Marco Gaido via Sandeep More)
    * [KNOX-1352] - Service Discovery is not honoring the enabled attribute of HA Provider configuration
    * [KNOX-1349] - Fix Knox versioning for service defs. (UnitTest to be followed in next commit)
    * [KNOX-1348] - Provider Configuration Wizard HA Provider Validation for ZooKeeper Ensemble is Wrong
    * [KNOX-1347] - X-Forwarded-Context header is not rewritten correctly
    * [KNOX-1346] - SNI Mismatch Failures due to Wrong Host Header
    * [KNOX-1344] - Atlas HA dispatch mishandling SSO redirection
    * [KNOX-1342] - Prevent Host Header from being sent to Atlas
    * [KNOX-1341] - Constrain cookies added to the HadoopAuthCookieStore
    * [KNOX-1340] - HDFSUI proxy to a host specified in query string (Bharat Viswanadham via Sandeep More)
    * [KNOX-1335] - Spark service discovery when SSL is configured
    * [KNOX-1333] - Admin UI needs to handle SSO cookie expiration
    * [KNOX-1149] - HBase High Availability Fails with Kerberos Secured Cluster
    * [KNOX-1330] - Fix favicon for Zeppelin (Prabhjyot Singh via Sandeep More)
    * [KNOX-1331] - Unable to update referenced (XML format) provider config from Admin UI
    * [KNOX-1166] - Upgrade HTTPClient due to Hostname Verification Bug
    * [KNOX-1326] - Fix the Datanode link on the Namenode page
    * [KNOX-1314] - SSOCookieProvider derive a default provider URL with configured gateway.path and fix handling of X-FORWARDED-HOST with port in it.
    * [KNOX-1324] - Remote Configuration Monitor should not log stacktrace when client is not configured
    * [KNOX-1323] - Reconcile WebAppSecurity provider X-Frame-Options and X-Content-Type-Options param names
    * [KNOX-1157] - Scoped rewrite rules are treated as global rules in some cases (Wei Han via Phil Zampino)
    * [KNOX-1313] - Contributing provider config wizards incorrectly produce config when validation fails
    * [KNOX-1310] - Handle custom param value for X-Content-Type-Options header
    * [KNOX-1312] - Zeppelin-related discovery is incorrectly configured
    * [KNOX-1311] - Ambari logos are not showing up in Ambari Web UI (Yusaku Sako via lmccay)
    * [KNOX-1244] - YARNUIV2 fix HA support (Sunil Govind via Sandeep More)
    * [KNOX-1274] - Update location headers to make sure SSO redirects are proper (Marco Gaido via Sandeep More)
    * [KNOX-1295] - X-Forwarded-Context contains not the full base path in SHS request (Atilla Csoma and Marco Gaido via lmccay)
    * [KNOX-1297] - HDFSUI requires its own HA Dispatch Provider
    * [KNOX-1296] - Fix logging for remote alias service
    * [KNOX-1114] - In case of port conflict log error and move on
    * [KNOX-1287] - Invalid federated namenode namespace declaration should not produce invalid URLs in topologies.
    * [KNOX-1288] - NPE during service discovery
    * [KNOX-1249] - Fix rewrite issues with YarnUIV2 (Sunil Govind via Sandeep More)
    * [KNOX-1283] - DefaultURLManager markFailed method throws NPE if urls is empty
    * [KNOX-1277] - make sure HDFS UI is rendered correctly without a forward slash (Bharat Viswanadham  via Sandeep More)
    * [KNOX-1282] - Update rewrite rules to reflect changes to content type (Bharat Viswanadham via Sandeep More)
    * [KNOX-1264] - Fix job link under the jobHistoryUI (Sunil Govind via Sandeep)
    * [KNOX-1278] - HaProvider wizard uses comma instead of semi-colon as delimiter
    * [KNOX-1271] - AtlasZookeeperURLManager not handling empty namespace config values correctly
    * [KNOX-1272] - ZEPPELINWS URLs are generated incorrectly
    * [KNOX-1253] - TopologyService incorrectly reports failure to delete file that has been successfully deleted.
    * [KNOX-1261] - Fix issue where listener is not decrypting the value before updating, fix  annoying error messages
    * [KNOX-1254] - Make sure Remote Alias Registry prefers remote over local
    * [KNOX-1256] - AclsAuthz provider wizard produces incorrect param
    * [KNOX-1251] - Fix NPE in RemoteAliasService#stop()
    * [KNOX-1246] - Update service config in Knox to support latest configurations for Ranger.(Vishal Suvagia via lmccay)
    * [KNOX-1248] - AtlasZookeeperURLManager handle missing namespace property from Atlas config with appropriate default value
    * [KNOX-1182] - For YARN HA, RESOURCEMANAGER service should have both active and standby endpoint URLs
    * [KNOX-1242] - Fix rewrite rules for HDFS UI] - Datanode UI link
    * [KNOX-1239] - HBaseZookeeperURLManager ignores configured ZooKeeper namespace
    * [KNOX-1238] - Fix Custom Truststore Settings for Gateway
    * [KNOX-1233] - Pac4j dependency causing intermittent compilation errors
    * [KNOX-1230] - Many Concurrent Requests to Knox causes URL Mangling
    * [KNOX-1231] - Atlas HA URL Manager must handle ZooKeeeper namespaces that begin with leading slash
    * [KNOX-1223] - Fix redirect rules for Zeppelin /api/ticket (Prabhjyot Singh  via Sandeep More)
    * [KNOX-1091] - Knox Audit Logging] - duplicate correlation ids (Kevin Risden via Sandeep More)
    * [KNOX-1210] - Update response code from 403 to 401 for token validation failures (for XHR request)
    * [KNOX-1210] - Fix token expiration for XHR request
    * [KNOX-1217] - PAM auth provider configuration wizard should allow for specifying the login module/service
    * [KNOX-1202] - Eliminate unintended persistence of UI-only provider configuration properties
    * [KNOX-1208] - Fix WEBHBASE ZooKeeper ensemble discovery when proxying HA HBase
    * [KNOX-1203] - Shiro-based provider configurations must be produced with correct param order from Admin UI
    * [KNOX-1200] - Fixing maven assembly errors
    * [KNOX-1201] - Disable DocTypes
    * [KNOX-1195] - Some misc code cleanups
    * [KNOX-1197] - Fix a bug where Anonymous auth is not picked up with federation provider
    * [KNOX-1199] - fix missing ASL header
    * [KNOX-1199] - Ambari View API for Tez View needs Double Quotes Encoded on Dispatch
    * [KNOX-1192] - Make sure config variables such as defaultUrl get picked up
    * [KNOX-1177] - Retighten the rewrite rule on oozieui to reduce false positives. Replace http with * in rule.
    * [KNOX-1177] - Retighten the rewrite rule on oozieui to reduce false positives
    * [KNOX-1108] - NiFiHaDispatch not failing over (Jeff Storck via lmccay)
    * [KNOX-1040] - Fixed refresh after descriptor saving, and added editable discovery fields to descriptor detail view

------------------------------------------------------------------------------
Release Notes - Apache Knox - Version 1.0.0
------------------------------------------------------------------------------
** New Feature
** Improvement
    * [KNOX-998]  - Rename class packages to org.apache.knox.gateway
    * [KNOX-1161] - Update hadoop dependencies to Hadoop 3 (Colm O hEigeartaigh, reviewed by Sandeep More)
    * [KNOX-1043] - Ambari Service Discovery Support for HA-Enabled Services
    * [KNOX-1144] - Establish provider configuration reference relationships for existing descriptors at gateway startup
    * [KNOX-1137] - KnoxCLI For Listing Provider Configurations and Descriptors in a Remote Configuration Registry
    * [KNOX-1145] - Upgrade Jackson due to CVE-2017-7525
** Bug
    * [KNOX-1151] - Need Explicit curator-recipes dependency in pom
    * [KNOX-1141] - Coverity Issues Reported For AmbariConfigurationMonitor
    * [KNOX-1116] - Builds of src distributions result in unexpected result from gateway version API.

------------------------------------------------------------------------------
Release Notes - Apache Knox - Version 0.14.0
------------------------------------------------------------------------------
** New Feature
    * [KNOX-1014] - Service Discovery and Topology Generation Framework (Phil Zampino via lmccay)
    * [KNOX-1062] - Service-Level Parameter Support in Service Discovery and Topology Generation (Phil Zampino via lmccay)
    * [KNOX-1077] - Knox should notice simple descriptors on startup (Phil Zampino via lmccay)
    * [KNOX-1063] - Simple Descriptor discovery should notice YAML file with .yaml extension (Phil Zampino via lmccay)
    * [KNOX-1105] - Provide indication that topologies were generated from simple descriptors (Phil Zampino via lmccay)
    * [KNOX-1110] - Simple Descriptors Must Accommodate Application elements (Phil Zampino via lmccay)
    * [KNOX-1039] - Added admin APIs for managing shared provider configurations and descriptors (Phil Zampino via Sandeep More)
    * [KNOX-970] - Add NiFi HA dispatch to service def (Jeff Storck via lmccay)
    * [KNOX-970] - Add support for proxying NiFi (Jeff Storck via lmccay)
    * [KNOX-842] - Add support for Livy (Spark REST Service).
    * [KNOX-1017] - Add support for enabling "Strict-Transport-Security" header in Knox responses (Latha Appanna via lmccay)
    * [KNOX-1049] - Default Service or App Context for Topologies
    * [KNOX-1041] - High Availability Support For Apache SOLR, HBase & Kafka (Rick Kellogg via Sandeep More)
    * [KNOX-1046] - Add Client Cert Wanted Capability with Configurable Validation that Checks for It
    * [KNOX-1072] - Add Client Cert Required Capability to KnoxToken
    * [KNOX-1107] - Remote Configuration Registry Client Service (Phil Zampino via lmccay)
    * [KNOX-1128] - Readonly protection for generated topologies in Knox Admin UI
    * [KNOX-1013] - Monitor Ambari for Cluster Topology changes (Phil Zampino via lmccay)
    * [KNOX-1136] - Provision Consistent Credentials For Generated Topologies (phil zampino via lmccay)
    * [KNOX-1129] - Remote Configuration Monitor Should Define The Entries It Monitors If They're Not Yet Defined (Phil Zampino via lmccay)
    * [KNOX-1125] - KNOXCLI Additions to Support Management of Knox config in remote registry (Phil Zampino via Sandeep More)
** Improvement
    * [KNOX-921] - Httpclient max connections are always set to default values
    * [KNOX-1106] - Tighten the rewrite rule on oozieui to reduce false positives (Wei Han via Sandeep More)
    * [KNOX-1104] - Test to verify behavior of HaProvider service with only a single URL ( Phil Zampino via Sandeep More)
    * [KNOX-1034] - Make Default identity-assertion provider actually be the default
    * [KNOX-1078] - Add option to preserve original string when lookup fails in regex based identity assertion provider (Wei Han via Sandeep More)
    * [KNOX-1049] - add unit test to gatewayfiltertest
    * [KNOX-1076] - Update nimbus-jose-jwt to 4.41.2
    * [KNOX-1049] - check for null topology to avoid NPE in tests
    * [KNOX-1088] - Remove LDAP BaseDirectoryService*
    * [KNOX-1073] - Upgrade PAC4J to a more recent version
    * [KNOX-1001] - Knox Shell Sqoop.Request class is Package Private (Andrei Viaryshka via lmccay)
    * [KNOX-1021] - Should handle empty string for endpoint token service audience list
    * [KNOX-1082] - Add support to validate the "nbf" claim for JWTs
    * [KNOX-1067] - Support different signature algorithms for JWTs
    * [KNOX-1045] - Knox Token Service has a trailing whitespace for the token_type attribute
    * [KNOX-1081] - Remove Picketlink Provider Module
    * [KNOX-895] - Pass Headers and Cookies to websocket backend
    * [KNOX-1064] - Externalize Hadoop Service Configuration Details and Service URL Creation (Phil Zampino via Sandeep More)
    * [KNOX-1070] - Drop support for Java 7 (Rick Kellogg via Sandeep More)
    * [KNOX-1075 and KNOX-1070] - Enforce minimum maven and Java version (Rick Kellogg via Sandeep More)
    * [KNOX-1048] - Knoxshell samples missing hadoop-examples.jar
    * [KNOX-1069] - KnoxSSO token audience config should trim values
    * [KNOX-1055] - Spark page characters &amp; should be treated as a delimiter (Mars via Sandeep More)
    * [KNOX-1074] - Workflow Manager view fails to load when using ambari through KNOX (Venkatasairam Lanka via lmccay)
    * [KNOX-1071] - Replace java.util.Random with SecureRandom
    * [KNOX-1014] - remove extraneous directory
    * [KNOX-1065] - Add some unit tests for the DefaultTokenAuthorityService
    * [KNOX-1060] - JWT.getExpires() returns null
    * [KNOX-1058] - Fix JWTToken.parseToken
    * [KNOX-1036] - Fix a number of issues relating to JWTokenAuthority
    * [KNOX-1054] - Make DefaultURLManager thread-safe (Phil Zampino via Sandeep More)
    * [KNOX-1052] - Add some tests for the Knox SSO Service
    * [KNOX-1049] - Default Service or App Context for Topologies
    * [KNOX-1042] - Fix test timeout (Phil Zampino via Sandeep More)
    * [KNOX-1047] - Add some tests for the Knox Token Service
    * [KNOX-1044] - Change Rest Assured "expect" to "then"
    * [KNOX-1038] - Replace deprecated rest-assured "content" call with "body"
    * [KNOX-1037] - Upgrade rest-assured dependency
    * [KNOX-1035] - Move JWTTokenTest to gateway-spi module + add more tests
    * [KNOX-1027] - Add support to configure the issuer for the JWT filters
    * [KNOX-1028] - X-Frame-Options and other security headers are ineffective
    * [KNOX-962] - Add signature validation tests for the JWT filters
    * [KNOX-1024] - Add Kafka test to GatewayBasicFuncTest
    * [KNOX-1020] - Minor code improvements
    * [KNOX-1019] - Remove test-driver "hack" to copy services
    * [KNOX-1018] - Remove junit.framework calls
    * [KNOX-738] - Remove references to deprecated httpclient class DefaultHttpClient
    * [KNOX-963] - Use GatewayTestDriver to configure LDAP in gateway-tests
    * [KNOX-978] - Add a test for the SOLR REST API
    * [KNOX-989] - Report metrics at service level (/webhdfs/v1) instead of url with args (/webhdfs/v1/?op=LISTSTATUS) (Mohammad Kamrul Islam via Sandeep More)
    * [KNOX-993] - The samples README for knoxshell references the 0.5.0 userguide
    * [KNOX-992] - Add README for the knoxshell distribution (Colm O hEigeartaigh and lmccay via lmccay)
    * [KNOX-1119] - Pac4J OAuth/OpenID Principal Needs to be Configurable (Andreas Hildebrandt via lmccay)
    * [KNOX-1120] - Pac4J Stop Using ConfigSingleton
    * [KNOX-1128] - Readonly protection for generated topologies in Knox Admin UI
    * [KNOX-1083] - HttpClient default timeout will be 20 sec
    * [KNOX-1124] - Service Discovery Doesn't Work For Simple Descriptors With .yaml Extension (Phil Zampino  via Sandeep More)
    * [KNOX-1117] - HostMap Provider configuration comment in topologies included with Knox has typos (Phil Zampino via Sandeep More)
    * [KNOX-1119] - Add missing tests for valid and invalid id attributes
    * [KNOX-1128] - Readonly protection for generated topologies in Knox Admin UI
** Bug
    * [KNOX-1003] - Fix the rewrite rules for Zeppelin 0.7.2 UI
    * [KNOX-1004] - Failing (flaky) Knox unit tests
    * [KNOX-1005] - WebHbase get rid of extra decoding
    * [KNOX-1061] - KnoxSSO Redirects with Query Params in the OriginalUrl Broken
    * [KNOX-1068] - Add support for HTTP Head request
    * [KNOX-1079] - Regression: proxy for Atlas fails with j_spring_security_check during login (Madhan Neethiraj via lmccay)
    * [KNOX-1022] - Configuring knox token ttl to higher value generates an access token which is not valid
    * [KNOX-1118] - Remove POC Service Definition for AmbariUI
    * [KNOX-1134] - Regression due to KNOX-1119
    * [KNOX-1132] - Address Coverity Defects in gateway-service-remoteconfig (Phil Zampino via lmccay)
    * [KNOX-1139] - Fix threapool size for UnitTests (Attila Csoma via Sandeep More)

------------------------------------------------------------------------------
Release Notes - Apache Knox - Version 0.13.0
------------------------------------------------------------------------------
** New Feature
    * [KNOX-976] - Add Jupyter Kernel Gateway Service Definitions (Jesus Alvarez via lmccay)
    * [KNOX-626] - NameNode UI through Knox has various tabs not working
    * [KNOX-975] - Add NodeManager Service Definition
    * [KNOX-982] - Datanode JMX REST Knox service
    * [KNOX-974] - Update HDFS UI services
    * [KNOX-973] - Update Yarn UI services
    * [KNOX-786] - Spark Thriftserver UI support through Knox (Chandana Mirashi via lmccay)
    * [KNOX-981] - Make Topology Instance Available in WebContext for Runtime Access
    * [KNOX-788] - Apache Atlas Admin UI Support through Knox (Nixon Rodrigues via Sandeep More)
    * [KNOX-789] - Apache Atlas REST API support (Nixon Rodrigues via Sandeep More)
    * [KNOX-940] - Support REST access exposing metrics (Mohammad Kamrul Islam via Sandeep More)
    * [KNOX-932] - Option to remove the server-name from HTTP-header response (Lawrence McCay IV via lmccay)
    * [KNOX-768] - Apache Kafka REST API Support (Rick Kellogg via Sandeep More)
    * [KNOX-751] - Need rewrite function to capture href information from single page host to rewrite output of node hosts (Jeffrey E Rodriguez via lmccay)
    * [KNOX-928] - Support Default Topology Feature and some misc fixes
    * [KNOX-928] - Topology Port Mapping Feature
    * [KNOX-938] - JWTProvider to accept Query Param as well as Bearer Token
    * [KNOX-390] - extended to include proxy provided headers such as X-Forwarded-For
    * [KNOX-390] - Include client IP and HTTP verb in audit log
** Improvement
    * [KNOX-909] - Ambari rewrite update for SmartSense
    * [KNOX-910] - Move from SHA-1 to SHA-256 (Jeffrey E Rodriguez via Sandeep More)
    * [KNOX-917] - Fix Pig view in Ambari (Gaurav Nagar via Sandeep More)
    * [KNOX-920] - Make avatica service use default policies
    * [KNOX-923] - Add ClientData to KnoxToken Service to Include in JSON Response
    * [KNOX-911] - Ability to scope cookies to a given Path (Attila Kanto via lmccay)
    * [KNOX-892] - Fix FindBugs "Dodgy Code" issues (Colm O hEigeartaigh via lmccay)
    * [KNOX-816] - Make private inner classes static (Colm O hEigeartaigh via lmccay)
    * [KNOX-849] - Fix SimplePrincipalMapper and CommonIdentityAssertionFilter
    * [KNOX-930] - ScopingCookies Feature Logging too Much
    * [KNOX-939] - Missing Licenses Element in POM files
    * [KNOX-937] - Remove redundant type information from Collections (Colm O hEigeartaigh via Sandeep More)
    * [KNOX-944] - Make PBE Hashing, Iteration Count and Salt Configurable and Manageable
    * [KNOX-942] - Remove extraneous spaces around '=' (Colm O hEigeartaigh via lmccay)
    * [KNOX-948] - Refactor AbstractJWTFilter implementations (Colm O hEigeartaigh via lmccay)
    * [KNOX-928] - minor fix for templating of ConcurrentHashMap usage
    * [KNOX-952] - Add common tests for the two JWT filters (Colm O hEigeartaigh via lmccay)
    * [KNOX-946] - Spelling (Colm O hEigeartaigh via Sandeep More)
    * [KNOX-954] - Properly handle parsing errors for JWT tokens
    * [KNOX-956] - Consolidate ldif files in gateway-tests  (Colm O hEigeartaigh via Sandeep More)
    * [KNOX-957] - Remove hard-coded versions from gateway-test-release (Colm O hEigeartaigh via Sandeep More)
    * [KNOX-947] - SSOCookieProvider to be configurable for signature verification key/PEM
    * [KNOX-958] - Consolidate test config/drivers (Colm O hEigeartaigh via Sandeep More)
    * [KNOX-759] - jansi dependency causes issues starting knox shell (Colm O hEigeartaigh via lmccay)
    * [KNOX-964] - upgrade to httpclient 4.5.3 to avoid licensing issues HTTPCLIENT-1743/LEGAL-240 (Jeffrey E Rodriguez via lmccay)
    * [KNOX-965] - SecureQueryDecryptProcessor decode call could return null thus it would get a NPE (Jeffrey E Rodriguez via lmccay)
    * [KNOX-967] - Duplicate dependencies defined in root pom (Colm O hEigeartaigh via lmccay )
    * [KNOX-776] - Rewrite rule handling for Websockets (Jesus Alvarez via Sandeep More)
    * [KNOX-977] - Exclude extraneous bundle.map in admin-ui file from release
    * [KNOX-789] - Add specific policy definition to Atlas (Nixon Rodrigues via lmccay)
    * [KNOX-972] - Update Hbase UI service (Jeffrey E Rodriguez via lmccay)
    * [KNOX-986] - JMX Metric Reporter and OutOfMemory Issues (Zsombor Gegesy via Sandeep More)
** Bug
    * [KNOX-908] - Update copyright in NOTICE file
    * [KNOX-918] - Static Member for redirectToUrl in Shiro RedirectToFilter
    * [KNOX-913] - Invalid login.jsp redirect for Ranger Admin UI
    * [KNOX-936] - On websocket error properly close all the sessions and containers.
    * [KNOX-933] - PicketLink Provider must set Secure and HTTPOnly flags on Cookie (Krishna Pandey via lmccay)
    * [KNOX-950] - Fix a bug that prevents wss:// protocol from connection to websocket backend.
    * [KNOX-960] - Fix build failures
    * [KNOX-966] - NPE when Shiro is misconfigured (Rob Vesse via lmccay)
    * [KNOX-754] - Revert KNOX-754 scope change to just the Location header"
    * [KNOX-690] - Revert KNOX-690 fixing the encoding/decoding in the parser and template
    * [KNOX-949] - WeBHDFS proxy replaces %20 encoded spaces in URL with + encoding
    * [KNOX-995] - KnoxSSO Form IDP Issue with Firefox
    * [KNOX-992] - Add README for the knoxshell distribution (Colm O hEigeartaigh and lmccay via lmccay)
    * [KNOX-993] - The samples README for knoxshell references the 0.5.0 userguide
    * [KNOX-994] - Introducing a new variable that enhances the function, needed for Zeppelin / fix

------------------------------------------------------------------------------
Release Notes - Apache Knox - Version 0.12.0
------------------------------------------------------------------------------
** New Feature
    * [KNOX-841] - Proxy support for Solr UI and API
    * [KNOX-719] - YARN RM HA implementation for REST API and UI (Jeffrey E Rodriguez and Sumit Gupta)
    * [KNOX-848] - Support for Gremlin Server REST (Shi Wang via Sumit Gupta)
    * [KNOX-861] - Support for pluggable validator for Header pre authentication provider (Mohammad Kamrul Islam via Sandeep More)
    * [KNOX-850] - KnoxToken API for Acquiring a Knox Access Token
    * [KNOX-710] - Support Zeppelin UI through Knox
    * [KNOX-865] - Added a release module for KnoxShell
    * [KNOX-881] - Add KnoxSh init, list and destroy to knoxshell.sh
** Improvement
    * [KNOX-841] - Changed version number for Solr proxy support
    * [KNOX-890] - Make IdleTimeout Configurable in Knox Gateway Server (make default 5 mins)
    * [KNOX-890] - Make IdleTimeout Configurable in Knox Gateway Server
    * [KNOX-845] - refactoring for the release tests
    * [KNOX-868] - Add /ext/native to java.library.path in gateway.sh (Mohammad Kamrul Islam via Sandeep More)
    * [KNOX-869] - Support for multiple pre-auth validaors (Mohammad Kamrul Islam via Sandeep More)
    * [KNOX-839] - new ant tasks to help with admin-ui development
    * [KNOX-873] - JWTFederationFilter must Validate Expected Audiences
    * [KNOX-874] - Updated hadoop dependency in root pom
    * [KNOX-864] - Making gateway and ldap scripts upstart compatible (Attila Kanto via Sumit Gupta)
    * [KNOX-854] - Consolidate DocumentBuilderFactory calls + enable SECURE_PROCESSING (Colm O hEigeartaigh via Sumit Gupta)
    * [KNOX-828] - Adding truncate for HBase table in KnoxShell (Vincent Devillers via Sumit Gupta)
    * [KNOX-845] - Added webhdfs groovy shell tests using MiniDFSCluster
    * [KNOX-806] - Implement Closeable for deallocable resources (Vincent Devillers via Sumit Gupta)
    * [KNOX-805] - ability to define custom HttpClient (Vincent Devillers via Sumit Gupta)
    * [KNOX-809] - Enhance the 'put' in HFDS for ClientDSL (Vincent Devillers via Sumit Gupta)
    * [KNOX-810] - Add status in HDFS for ClientDSL (Vincent Devillers via Sumit Gupta)
    * [KNOX-813] - Added rename in HDFS for ClientDSL (Vincent Devillers/Khanh Maudoux via Sumit Gupta)
    * [KNOX-858] - Simplifying Hamcrest dependencies (Colm O hEigeartaigh via Sumit Gupta)
** Bug
    * [KNOX-876] - Fix FindBugs "Experimental" issues (Colm O hEigeartaigh via lmccay)
    * [KNOX-883] - Fix FindBugs "Correctness" issues (Colm O hEigeartaigh via lmccay)
    * [KNOX-730] - pac4jRequestedUrl = null after saml2 assertion is parsed
    * [KNOX-879] - Fix url encoding issue for KnoxSSO
    * [KNOX-875] - Added version element to topology schema (Jeffrey E Rodriguez via Sandeep More)
    * [KNOX-866] - Fix validate-topology cli command (Richard Ding via Sandeep More)
    * [KNOX-863] - Consolidate TransformerFactory calls + enable (Colm O hEigeartaigh via Sandeep More)
    * [KNOX-877] - Coverity Scan Cleanup
    * [KNOX-871] - Fix FindBugs -  Malicious code vulnerability (Colm O hEigeartaigh via Sandeep More)
    * [KNOX-769] - Fix SecureClusterTest for Java 1.7
    * [KNOX-867] - Fix FindBugs, bad practice issues (Colm O hEigeartaigh via Sandeep More)
    * [KNOX-838] - Admin UI title change
    * [KNOX-820] - Changed the originalUrl parsing so that multiple query params get included
    * [KNOX-859] - Added rule for app.*.js, extensions, jax, and components (Prabhjyot Singh via Sandeep More)
    * [KNOX-855] - Add application/x-javascript mime type to the list of compressed resources and make it configurable
    * [KNOX-836] - Fix for websocket termination based on message size (Sandeep More via Sumit Gupta)
    * [KNOX-903] - KnoxShell allows self signed certs to be used without any checks
    * [KNOX-900] - In the WebsocketMultipleConnectionTest before sending data check whether the socket is active
    * [KNOX-897] - X-Forwarded-Port incorrectly defaults to the one configured for Knox if standard ports (80 and 443) are used (Attila Kanto via Sandeep More)
	  * [KNOX-901] - Finding free ports for namenode
	  * [KNOX-902] - Fix the hardcoded knoxsso topology name (Attila Kanto via Sandeep More)
	  * [KNOX-904] - Reverting back httpclient to 4.5.1 due to bug in 4.5.2
    * [KNOX-905] - added httpclient properties to knoxshell log4j properties file
	  * [KNOX-906] - Log WARN of Removed Impersonation Params
    * [KNOX-907] - Ambari Hive 2.0 view fix

------------------------------------------------------------------------------
Release Notes - Apache Knox - Version 0.11.0
------------------------------------------------------------------------------
** New Feature
    * [KNOX-643] - Initial metrics api and implementation
    * [KNOX-237] - Hadoop Group Mapping as a Knox Provider (Sandeep More via lmccay)
    * [KNOX-817] - Gateway service definition for Avatica (Josh Elser via lmccay)
    * [KNOX-528] - Support for Apache SOLR REST APIs (Kevin Risden, John McParland via lmccay)
    * [KNOX-758] - Druid services (Nishant Bangarwa via Sumit Gupta)
    * [KNOX-749] - Initial admin UI source project and productized distribution
** Improvement
    * [KNOX-744] - Logout for KnoxSSO WebSSO API
    * [KNOX-795] - Make KnoxSSO Cookie Name Configurable
    * [KNOX-763] - Added rewrite filter apply capability to text values in html content
** Bug
    * [KNOX-779] - Exclude older org.codehaus.jackson dependencies from build cycle
    * [KNOX-785] - Update Apache Shiro dependency (Colm O hEigeartaigh via lmccay)
    * [KNOX-780] - Remove dependency on SNAPSHOT version of hadoop-common-test jar
    * [KNOX-790] - URL parameters with empty/null value are ignored (Nishant Bangarwa via lmccay)
    * [KNOX-713] - Knox Shell HDFS.get.Response is Package Private
    * [KNOX-792] - Fix FindBugs "performance" issues - Colm O hEigeartaigh via lmccay
    * [KNOX-812] - WebSSOResource doesn't make use of target audiences
    * [KNOX-803] - Adding rewrite rules for Map Reduce History Server UI (Shi Wang via lmccay)
    * [KNOX-820] - Knox query processing: If the originalUrl value has "ampersand"(&) in it, the value after ampersand is ignored.
    * [KNOX-826] - Need favicon icon for Admin UI
    * [KNOX-757] - shiro related log4j properties (John McParland via Sumit Gupta)
    * [KNOX-784] - Fix for httpclientconnection metric naming conflict
    * [KNOX-763] - Added import rewrite function for html content containing @import
    * [KNOX-763] - Missing function files
    * [KNOX-767] - Fix for CDATA handling (Jeffrey E Rodriguez via Sumit Gupta)
    * [KNOX-791] - XML attribute special character fix and unit test (Sandeep More via Sumit Gupta)
    * [KNOX-818] - created new jaxb beans for REST API
    * [KNOX-804] - custom cache manager class
    * [KNOX-824] - Added WebAppSec provider capability to Jersey service deployments
    * [KNOX-825] - setting to turn off directory browsing
    * [KNOX-826] - added the icon to the source project as well
    * [KNOX-827] - added manager topology
    * [KNOX-830] - Admin UI Fails to Authenticate with KnoxSSO

------------------------------------------------------------------------------
Release Notes - Apache Knox - Version 0.10.0
------------------------------------------------------------------------------
** New Feature
    * [KNOX-752] - Implementation of initial websocket support (Sandeep More via Sumit Gupta)
    * [KNOX-537] - Linux PAM Authentication Provider (jeffreyr97/hkropp via lmccay)
** Improvement
    * [KNOX-743] - Add submitSqoop via knox shell api
    * [KNOX-729] - added filter apply capability to html content
    * [KNOX-764] - initial service definition registry service
    * [KNOX-644] - Limit/page results of LDAP group membership search (Kevin Risden via lmccay)
    * [KNOX-733] - Add support for custom truststore to Knox shell client
** Bug
    * [KNOX-723] - Adding html content based filter for main page trailing slash issue
    * [KNOX-765] - Namenode UI fails to download few js and css (Mohammad Kamrul Islam via lmccay)
    * [KNOX-629] - Misleading output for system-user-auth-test when userSearchBase used
    * [KNOX-753] - Update References to Docs in README for Latest Release
    * [KNOX-762] - Remove dependency on httpcomponents httpclient 4.5.2
    * [KNOX-756] - Build failure with "ant release"
    * [KNOX-754] - encoding response headers
    * [KNOX-732] - Knox does not recompress javascript resources (Sandeep More via lmccay)
    * [KNOX-748] - Fix Resource Leak in X509CertificateUtil.writeCertificateToJKS (Sandeep More via lmccay)
    * [KNOX-750] - Change test-patch to attempt -p0 and -p1 patches before failing
    * [KNOX-740] - Address new coverity scan issues (Sandeep More via lmccay)
    * [KNOX-742] - Export Commands in KnoxCLI for the gateway-identity Public Cert
    * [KNOX-690] - quick unit test for toEncodedString method
    * [KNOX-690] - fixing the encoding/decoding in the parser and template
    * [KNOX-508] - knox to uptake Apache DS 2.0.0-M16 or later

------------------------------------------------------------------------------
Release Notes - Apache Knox - Version 0.9.1
------------------------------------------------------------------------------
** New Feature
** Improvement
    * [KNOX-711] Added the ability to scope rewrite rules
** Bug
    * [KNOX-705] - Views in Ambari UI don't render when proxied by the AMBARIUI service
    * [KNOX-705] - Improvement on 404 error messages with ambari views
    * [KNOX-705] - rules to support view changes in Ambari
    * [KNOX-712] - submitPig does not allow multiple argument via arg() (Pierre Regazzoni via lmccay)
    * [KNOX-713] - Knox Shell HDFS.get.Request is Package Private (Chris Snow via lmccay)
    * [KNOX-714] - Remove Permissive MIT License from NOTICE File
    * [KNOX-715] - submitJava should allow multiple argument via arg() (Pierre Regazzoni via lmccay)
    * [KNOX-716] - replayBufferSize is kept in bytes
    * [KNOX-717] - changed the location header in RANGERUI rewrite to be more specific
    * [KNOX-721] - added rewrite rules to take care of no slash url
    * [KNOX-721] - added rewrite rules to take care of no slash url
    * [KNOX-721] - Loosening up the match criteria as the Location header coming back from Ranger is not always correct
    * [KNOX-722] - Null Pointer Exception while Knox SSO configured for OKTA/SAML v2
    * [KNOX-722] - changed KnoxSessionStore to not base64 empty cookie value
    * [KNOX-722] - Null Pointer Exception while Knox SSO configured for OKTA/SAML v2
    * [KNOX-723] - qualifying the login page resources with the frontend path
    * [KNOX-724] - ambari view fixes
    * [KNOX-725] - defining policy chain for ambari and ranger services
    * [KNOX-726] - Clean up Skipped Unit Tests
    * [KNOX-731] - added ranger and ambari services to topology

------------------------------------------------------------------------------
Release Notes - Apache Knox - Version 0.9.0
------------------------------------------------------------------------------
** New Feature
    * [KNOX-66] - Ambari REST API support
    * [KNOX-668] - Ranger UI proxy support with related REST API support changes
    * [KNOX-669] - Adding support for anonymous authentication
    * [KNOX-670] - Knox should be able to host simple web apps
    * [KNOX-673] - Ambari UI proxy support with related REST API support changes
    * [KNOX-674] - Expose Jetty's SSL cipher suite configuration via gateway-site.xml
    * [KNOX-692] - Enable Jetty's JSP support in Knox hosted applications.
    * [KNOX-686] - Default Form based SSO IDP as an Application
    * [KNOX-697] - Identity asserter provider that supports case mapping for users and groups
    * [KNOX-700] - Add Clickjacking Protection to WebAppSec Provider

** Improvement
    * [KNOX-630] - KnoxSSO Needs to Populate Configured Audiences
    * [KNOX-631] - Config Driven Keystore for Signing and Validation Certs in KnoxSSO
    * [KNOX-662] - Change pac4j-knoxsso.xml Template to Reflect new Requirements
    * [KNOX-667] - Added maven profile and updated ant targets
    * [KNOX-667] - changed nested release profile to match 'package' profile
    * [KNOX-677] - Upgrade to latest Groovy
    * [KNOX-675] - Upgrade Knox's Jetty dependency to latest 9.x
    * [KNOX-674] - Expose Jetty's SSL cipher suite configuration via gateway-site.xml
    * [KNOX-675] - Upgrade Knox's Jetty dependency to latest 9.x
    * [KNOX-675] - Upgrade Knox's Jetty dependency to latest 9.x. Fix circular dependency.
    * [KNOX-676] - Knox build failures. Attempt 1.
    * [KNOX-676] - Knox build failures. Attempt 2.
    * [KNOX-676] - Knox build failures. Attempt 3.
    * [KNOX-677] - Upgrade to latest Groovy. (via Colm O hEigeartaigh)
    * [KNOX-678] - Malformed UTF-8 characters in JSON Response
    * [KNOX-679] - Make ResponseCookieFilter Configurable
    * [KNOX-680] - Update Knox's HttpClient dependency to latest version
    * [KNOX-680] - Revert - Update Knox's HttpClient dependency to latest version"
    * [KNOX-688] - KnoxSSO Authentication should not result in a valid JSESSIONID
    * [KNOX-692] - Enable Jetty's JSP support in Knox hosted applications.
    * [KNOX-693] - KnoxSSO Token Expiration should be Optional
    * [KNOX-693] - added test for SSOCookieProvider and no expiry time
    * [KNOX-694] - Enhance LDAP user search configurability
    * [KNOX-695] - Expose configuration of HttpClient's connection and socket timeout settings
    * [KNOX-697] - Identity asserter provider that supports case mapping for users and groups
    * [KNOX-699] - External meta-data for simple hosted web apps
    * [KNOX-701] - KnoxSSO Redirect Back to External App has CORS Problem for Form IDP
    * [KNOX-702] - Templates for AD and Application Hosting Topologies

** Bug
    * [KNOX-169] - Test issue for patch test automation via PreCommit-Knox-Build job
    * [KNOX-658] - adding additional dependency as provided
    * [KNOX-660] - Incompatible Dependencies in Pac4j Provider
    * [KNOX-660] - Revert j2e-pac4j upgrade
    * [KNOX-661] - NPE in Pac4j Provider when clientName Parameter is Missing
    * [KNOX-665] - Credential Collectors and Samples Prompting with Double Colons
    * [KNOX-681] - A PUT with Content-Type application/xml but no body causes NullPointerException
    * [KNOX-681] - Revert - A PUT with Content-Type application/xml but no body causes NullPointerException"
    * [KNOX-683] - Test failing due to port conflicts
    * [KNOX-684] - Increase test timeouts for failing tests
    * [KNOX-684] - Increase test timeouts for failing tests. Part 2.
    * [KNOX-685] - Knox tests cleanup after Jetty 9 upgrade
    * [KNOX-687] - Address new Coverity Scan issues    
    * [KNOX-689] - Applications Deployment Contributor can't find service.xml
    * [KNOX-689] - Revert - Applications Deployment Contributor can't find service.xml    
    * [KNOX-704] - Remove bogus sleep() from knoxauth redirecting.html
    * [KNOX-706] - KnoxSSO Default IDP must not require specific URL
    * [KNOX-707] - Enter Key within KnoxSSO Default IDP Form does not Submit
    * [KNOX-708] - Wrong CSS link in KnoxAuth Application's redirecting.html
    * [KNOX-709] - HBase request URLs must not be URL encoded

------------------------------------------------------------------------------
Release Notes - Apache Knox - Version 0.8.0
------------------------------------------------------------------------------
** New Feature
    * [KNOX-641] - Support CAS / OAuth / OpenID C / SAML protocols using pac4j - (Jérôme Leleu via lmccay)
** Improvement
    * [KNOX-502] - Invalid requests (404s) should be logged and audited
    * [KNOX-519] - Prompt user to provide password, rather providing as an argument to knoxcli cmd (J.Andreina via lmccay)
    * [KNOX-647] - Rename LDAP artifacts from test to demo
    * [KNOX-650] - Add posixGroups support for LDAP groups lookup
    * [KNOX-651] - getting rid of warning for missing bundle version
    * [KNOX-651] - Moving some tests to integration-test phase
    * [KNOX-651] - made the secure tests multi module
    * [KNOX-652] - Remove hsso-release module from build
    * [KNOX-651] - Attempt number 2 to fix the jenkins build
    * [KNOX-651] - Attempt to fix Jenkins build error
    * [KNOX-651] - Fixed gateway-test-release module id
    * [KNOX-651] - Initial changes to add a 'release' test project
    * [KNOX-650] - Add posixGroups support for LDAP groups lookup
    * [KNOX-655] - Pac4j Provider Client Selection from client_name Query Parameter (Jérôme Leleu via lmccay)
    * [KNOX-658] - updated hadoop dependencies for jdk8 support
    * [KNOX-658] - slight change to the way JAXB works in JDK8
    * [KNOX-659] - Default Keystore Details in Pac4j Provider SAML Config to Gateway Identity
** Bug
    * [KNOX-507] - Deletion of Non existing Alias from a cluster should not be successful (J.Andreina via lmccay)
    * [KNOX-589] - Fixing Jericho java.lang.IllegalStateException (Jeffrey E Rodriguez via Sumit Gupta)
    * [KNOX-594] - Stopping HS2 'SET-COOKIE' header to go back and managing 'hive.server2.auth' cookie
    * [KNOX-656] - Test GatewayLdapPosixGroupFuncTest failing intermittently
    * [KNOX-657] - _default Topology Must Redeploy After Restart
    * [KNOX-660] - Incompatible Dependencies in Pac4j Provider
    * [KNOX-661] - NPE in Pac4j Provider when clientName Parameter is Missing
    * [KNOX-662] - Change pac4j-knoxsso.xml Template to Reflect new Requirements
    * [KNOX-660] - Revert j2e-pac4j upgrade

------------------------------------------------------------------------------
Release Notes - Apache Knox - Version 0.7.0
------------------------------------------------------------------------------
** New Feature
    * [KNOX-476] - implementation for X-Forwarded-* headers support and population
    * [KNOX-547] - KnoxCLI adds new validate-topology and list-topologies commands.
    * [KNOX-548] - KnoxCLI adds a new system-user-auth-test command to test a topology's system username and password
    * [KNOX-549] - Test service connections through Knox with Knox CLI
    * [KNOX-549] - New Service-Test API can be added to topology. Accessible via Http call or KnoxCLI
    * [KNOX-560] - Test LDAP Authentication+Authorization from KnoxCLI
    * [KNOX-565] - Supporting All the Quick Links on Ambari Dashboard to Go Through Knox
    * [KNOX-579] - Regex based identity assertion provider with static dictionary lookup
    * [KNOX-602] - JWT/SSO Cookie Based Federation Provider
    * [KNOX-602] - protect against NPE in audience validation
    * [KNOX-604] - Expose configuration of HttpClient's max connections per route setting
    * [KNOX-611] - Expose configuration for Jetty's thread pool and connection queue
    * [KNOX-624] - Expose configuration for Jetty's request and response buffer sizes
    * [KNOX-625] - initial template file for topology using ui proxy services
    * [KNOX-634] - CORS Support as Part of WebAppSec Provider

** Improvement
    * [KNOX-394] - Request and response URLs must be parsed as literals not templates. Part 2.
    * [KNOX-394] - Request and response URLs must be parsed as literals not templates
    * [KNOX-534] - auditing shiro authentication exceptions
    * [KNOX-538] - Log some important system properties at startup
    * [KNOX-539] - add message to identity mapping audit entries
    * [KNOX-545] - Simplify Keystore Management for Cluster Scaleout
    * [KNOX-546] - Consuming intermediate response during kerberos request dispatching
    * [KNOX-566] - Make the Default Ephemeral DH Key Size 2048 for TLS
    * [KNOX-553] - Added topology validation from KnoxCLI to TopologyService deployment.
    * [KNOX-558] - HttpClient connections are not always returned to the pool for HBase on Windows
    * [KNOX-559] - renaming service definition files
    * [KNOX-561] - Allow Knox pid directory to be configured via the knox-env.sh file
    * [KNOX-573] - KNOX-574 make SecureOnly and MaxAge configurable for SSO
    * [KNOX-575] - Adds more logging for ShiroProvider LDAP Authentication.
    * [KNOX-576] - CLI user-auth-test should print a message when a user successfully authenticates.
    * [KNOX-564] - Topology deployment fails for no configured providers
    * [KNOX-570] - added zookeeper lookup capability for HS2 HA
    * [KNOX-580] - Initial refactoring out of default HA dispatch
    * [KNOX-590] - CLI sys-user-auth-test and user-auth-test have improved messages and work for more Shiro configs
    * [KNOX-590] - add more ShiroProvider configuration support to KnoxCLI sys-user-auth-test and user-auth-test
    * [KNOX-593] - removed replayBufferSize and CappedBufferHttpEntity references
    * [KNOX-593] - Moved SPNEGO code to httpclient
    * [KNOX-596] - Add diagnostics to topology deployment
    * [KNOX-597] - Improve diagnostic logging of HTTP traffic
    * [KNOX-600] - setting all service params as filter params for dispatch
    * [KNOX-607] - Fix SSOCookieProvider to Handle null Query Strings
    * [KNOX-608] - Improve Knox read and write performance by tuning buffer sizes.
    * [KNOX-609] - Add unit tests for the SSOCookieFederationProvider.
    * [KNOX-610] - DefaultTokenService issueToken should never return null
    * [KNOX-613] - Provide Credential Collector Abstraction to Client Shell
    * [KNOX-615] - Domain Cookies cannot Wildcard IP Addresses
    * [KNOX-617] - Add the use of CredentialCollectors to Samples
    * [KNOX-621] - Simplify KnoxSSO API Resource Path
    * [KNOX-622] - Misconfigured providers should cause topology deployment to fail
    * [KNOX-635] - open up default whitelist for dev - localhost
    * [KNOX-635] - Provide Whitelisting for Redirect Destinations for KnoxSSO
    * [KNOX-640] - Make Cookie Domain Configurable

** Bug
    * [KNOX-394] - Request and response URLs must be parsed as literals not templates
    * [KNOX-423] - XmlFilterReaderTest failed with IBM JVM JAVA
    * [KNOX-447] - Incorrect parsing and expansion of valueless query params
    * [KNOX-460] - UrlRewriteServletFilterTest failed with IBM JAVA
    * [KNOX-544] - Knox process does not exit if startup fails due to credential store issues
    * [KNOX-550] - reverting back to original hive kerberos dispatch behavior
    * [KNOX-554] - Fixed support for gateway.path change + added support for X-Forward-* headers in admin topology API.
    * [KNOX-555] - Prevent dispatch client from attempting retry and redirects
    * [KNOX-556] - fix extraneous imports
    * [KNOX-556] - provide better diagnostics for keystore failures
    * [KNOX-562] - Fix Null pointer exceptions in KnoxCLI LDAP commands
    * [KNOX-581] - Hive dispatch not propagating effective principal name
    * [KNOX-582] - Query Parameter rewrite does not honor empty string value (jeffreyr via lmccay)
    * [KNOX-584] - Fix for UT instability in GatewayBasicFuncTest.testCLIServiceTest
    * [KNOX-598] - Concurrent JDBC clients via KNOX to Kerberized HiveServer2 causes HTTP 401 error (due to Kerberos Replay attack error)
    * [KNOX-598] - Concurrent JDBC clients via KNOX to Kerberized HiveServer2 causes HTTP 401 error (due to Kerberos
    * [KNOX-599] - Template with {**} in queries are expanded with =null for query params without a value
    * [KNOX-601] - Knox test failures on windows
    * [KNOX-601] - Knox test failures on windows
    * [KNOX-603] - Coverity: Potential resource leak in BaseKeystoreService.createKeystore
    * [KNOX-614] - Incorrect URI template expansion with {**} query params #fragments
    * [KNOX-616] - XmlUrlRewriteStreamFilter unscapes escaped special characters
    * [KNOX-616] - XmlUrlRewriteStreamFilter unscapes escaped special characters
    * [KNOX-620] - Jenkins Knox-master-verify failing since #725 due to JDK version issues
    * [KNOX-626] - Minor fix to namespace parsing
    * [KNOX-623] - Gateway provider rewriter doesn't support boolean attributes in HTML.
    * [KNOX-632] - added back configuration for 'replayBufferSize'
    * [KNOX-632] - Oozie dispatch failing for secure clusters. Fix tests.
    * [KNOX-632] - Oozie dispatch failing for secure clusters
    * [KNOX-633] - Upgrade apache commons-collections
    * [KNOX-637] - Compilation Error in gateway-service-admin and gateway-test test projects (arshad.mohammad via lmccay)
    * [KNOX-636] - IdentityAsserterHttpServletRequestWrapper must override getUserPrincipal
    * [KNOX-638] - Hive dispatch failing for secure clusters
    * [KNOX-639] - Knoxcli.sh create-master should not allow empty strings

------------------------------------------------------------------------------
Release Notes - Apache Knox - Version 0.6.0
------------------------------------------------------------------------------
** New Feature
    * [KNOX-134] - Knox should avoid repeated LDAP authentication even if Shiro session is disabled.
    * [KNOX-177] - Simplify service deployment contributor implementation
    * [KNOX-185] - Use Shiro AuthenticationInfo caching to avoid repeated ldap bind
    * [KNOX-195] - Simple way to introduce new service without requiring code
    * [KNOX-473] - Configurable front end URL for simplified load balancer configuration
    * [KNOX-481] - Support configuration driven REST API integration (aka Stacks)
    * [KNOX-493] - Data and sub data directory should be made configurable. (Andreina J via lmccay)
    * [KNOX-500] - Support for Storm REST APIs
    * [KNOX-504] - Enable SSL Mutual Authentication
    * [KNOX-521] - Enhance Principal Mapping to Handle Dynamic Mappings
    * [KNOX-523] - Java 8 Compatibility
    * [KNOX-524] - Support LDAP authentication caching
    * [KNOX-532] - Update Knox build to use JDK 1.7

** Improvement
    * [KNOX-263] - Docs - User Guide list of Services missing straight MapReduce?
    * [KNOX-291] - Improve audit for topology deployment process
    * [KNOX-458] - Surface Config for Shiro LDAP Connection Pooling
    * [KNOX-462] - Proper error message when root tag of topology file incorrect
    * [KNOX-466] - Log exception stack traces at INFO level when they reach gateway servlet
    * [KNOX-468] - Add default config to optimize LDAP group lookup
    * [KNOX-471] - User's guide needs update after trying examples
    * [KNOX-480] - KnoxCLI needs to print usage when alias not provided
    * [KNOX-491] - Increase default replay buffer size to 8K
    * [KNOX-492] - Support service level replayBufferLimit for Ozzie, Hive and HBase

** Bug
    * [KNOX-175] - Filter order in generated gateway.xml needs to be consistent
    * [KNOX-343] - Knox PID directory does not exists on Ubuntu after reboot
    * [KNOX-378] - Knox rewrites numbers in JSON to engineering notation
    * [KNOX-464] - Location headers have wrong hostname when used behind load balancer
    * [KNOX-465] - Initial audit record can contain leftover principal name
    * [KNOX-467] - Unit tests failing on windows
    * [KNOX-479] - Remove cacheManager configuration from template files
    * [KNOX-494] - knox-env.sh script should print proper warning message , if JAVA is not set. (Andreina J via lmccay)
    * [KNOX-501] - Avoid NPE , in case of passing invalid argument to KnoxCli.
    * [KNOX-505] - Failure during removing credential from Cluster should exit with proper error message
    * [KNOX-525] - Fix ServiceRegistry Persistence to deal with Upgrade from 0.4.0
    * [KNOX-526] - Dispatch Refactoring Breaks Upgrade Compatibility
    * [KNOX-529] - Wildcard Group Principal Mapping Not Working
    * [KNOX-530] - Running Oozie jobs through Knox on a cluster with HDFS HA does not rewrite proper namenode host name.
    * [KNOX-531] - Fix extraneous audit entries for wildcard group mappings

** Sub-task
    * [KNOX-483] - Implement service configuration 
    * [KNOX-487] - Add policy information to Service Definitions
    * [KNOX-510] - KnoxSSO API
    * [KNOX-511] - Picketlink SAML Federation Provider
    * [KNOX-533] - Add Version to KnoxSSO URL Patterns

------------------------------------------------------------------------------
Release Notes - Apache Knox - Version 0.5.1
------------------------------------------------------------------------------
** Improvement
  * [KNOX-470] - add README and site docs for samples

** Bug
    * [KNOX-467] - Unit tests failing on windows. Second attempt.
    * [KNOX-467] - Unit tests failing on windows
    * [KNOX-466] - Log exception stack traces at INFO level when they reach gateway servlet
    * [KNOX-459] - added null checks to the closing of resultEnums to avoid NPEs
    * [KNOX-465] - Initial audit record can contain leftover principal name
    * [KNOX-459] - fixed LDAP connection leaks in KnoxLdapRealm
    * [KNOX-464] - Location headers have wrong hostname when used behind load balancer
    * [KNOX-468] - update group lookup topologies to configure cache manager

------------------------------------------------------------------------------
Release Notes - Apache Knox - Version 0.5.0
------------------------------------------------------------------------------
** New Feature
    * [KNOX-74] - Support YARN REST API access via the Gateway
    * [KNOX-25] - KNOX should support authentication using SPNEGO from browser

** Improvements
    * [KNOX-455] - Configuration for Excluding SSL Protocols
    * [KNOX-422] - provide support for IBM JVM - via Pascal Oliva
    * [KNOX-437] - KnoxLdapContextFactory should be configured by default in all topology files
    * [KNOX-88] - Support HDFS HA
    * [KNOX-415] - Add some static group entires, associate some users with groups in user.ldif in the bundled Apache DS
    * [KNOX-404] - GATEWAY_HOME/conf needs to be added to gateway server classpath
    * [KNOX-402] - New GatewayService - TopologyService
    * [KNOX-401] - Add service role request attribute
    * [KNOX-355] - Support KNOX authentication provider based on hadoop.security.authentication.server.AuthenticationHandler
    * [KNOX-353] - adding support for hadoop java client through redirection
    * [KNOX-375] - add functional test for KNOX-242 find client bind dn using ldapsearch

** Bug
    * [KNOX-451] - WebHDFS HA failover does not account for URL of unsuccessful request
    * [KNOX-414] - WebHDFS HA enablement in web.xml is sensitive to order of context listeners
    * [KNOX-453] - HDFS HA not working for secure clusters
    * [KNOX-450] - WebHDFS HA retry should also handle RetriableException scenarios
    * [KNOX-442] - Align DSL with WebHCat REST API changes.
    * [KNOX-448] - Remove Reference to ReflectiveOperationException
    * [KNOX-446] - Disable unstable unit tests in WebHdfsHaFuncTest
    * [KNOX-445] - Fix HaDescriptorManagerTest.testDescriptorStoring to be platform independent.
    * [KNOX-444] - KnoxCLI Usability Improvements
    * [KNOX-442] - Align Tests with Hive API Change
    * [KNOX-441] - Ensure all pom.xml files reference junit so that excludeGroups work
    * [KNOX-439] - URL pattern matching fails for default ports HTTP 80 and HTTPS 443
    * [KNOX-418] - remove the Pseudo federation provider
    * [KNOX-432] - Add Transfer_Encoding to EXCLUDE_HEADERS
    * [KNOX-431] - Update ISSUES file for 0.5.0 release
    * [KNOX-426] - change assertion provider name to Default
    * [KNOX-428] - Prepare pom.xml files for publishing via mvn deploy.
    * [KNOX-424] - Fix maven groupId
    * [KNOX-432] - Add Transfer_Encoding to EXCLUDE_HEADERS
    * [KNOX-410] - TopologyService Incorrect when _default Topology is Deployed
    * [KNOX-424] - Fix maven groupId
    * [KNOX-426] - change assertion provider name to Default
    * [KNOX-425] - rename Pseudo identity assertion provider
    * [KNOX-421] - optimize webhdfs file upload
    * [KNOX-413] - Yarn responses with TrackingUrl in the body not getting blanked out
    * [KNOX-349] - Completes JSON and XML support for PUT/GET of single topology and collection.
    * [KNOX-410] - Set topology name back to original value after deploying _default topology
    * [KNOX-349] - KNOX API for Topology Management. Support for deploy/undeploy topologies.
    * [KNOX-406] - Add provider name to test topologies to prevent intermittent test failures
    * [KNOX-403] - Optimize KnoxLdapRealm to reduce number of ldapsearches
    * [KNOX-349] - Knox API for Topology Management. Adds default admin topology to install and negative tests.
    * [KNOX-349] - Knox API for Topology Management. Initial step only supports GETs for topologies collection and single topology.
    * [KNOX-398] - Func test for Knox server info REST API.
    * [KNOX-366] - fixed stale pid detection again
    * [KNOX-398] - initial contribution for the Knox management API
    * [KNOX-396] - gateway.sh and ldap.sh status commands incorrect
    * [KNOX-395] - POC for Jersey Topology Service from Knox
    * [KNOX-350] - DOAP file for the Knox Project
    * [KNOX-391-392] - KnoxLdapRealm should use LdapName.equals for groupDn compare
    * [KNOX-389] - Knoxcli.cmd fails when space in JAVA_HOME
    * [KNOX-387] - replace JndiLdapRealm with KnoxLdapRelam in unit tests and functional tests
    * [KNOX-386] - update topology template files to use KnoxLdapRealm
    * [KNOX-385] - removed the config element for path to forward to and derive the path from the default topology name instead
    * [KNOX-383] - log computed bind dn and the mechanism to help diagnostics
    * [KNOX-382] - fixed extraneous output in shell scripts
    * [KNOX-381] - Expansion of authority only URL should not be prefixed with //
    * [KNOX-377] - detect stale pid and allow ldap server to restart in its presence
    * [KNOX-374] - KnoxLdapRealm does not default values correctly for userSearchBase and groupSearchBase
    * [KNOX-373] - add unit tests to verify default values for userSearchBase, groupSearchBase
    * [KNOX-372] - add unit tests to check default values for userSearchAttributeName, userObjectClass
    * [KNOX-371] - group membership lookup need to use userdn computed by search
    * [KNOX-369] - add support for new config param groupSearchBase
    * [KNOX-368] - add support for new config param userSearchBase
    * [KNOX-370] - add support for new config param userObjectClass
    * [KNOX-367] - add support for new config param userSearchAttributeName
    * [KNOX-366] - detect stale pid file a allow server start in its presence.
    * [KNOX-362] - logging of startup failure due to missing master secret and inability to prompt for one
    * [KNOX-361] - implicitly deploy the _default app for forwarding to the default topology
    * [KNOX-358] - refactor redirecting servlet into a forwarding servlet
    * [KNOX-310] - Parsing of JSON response for rewriting failing
    * [KNOX-356] - change redirect servlet to use 307s instead of 302s
    * [KNOX-354] - added PseudoAuthFederation Provider to accept user.name as proof of a pre-authenticated authentication event.
    * [KNOX-344] - Updated Knox Hive samples to be consistent with Hive 0.13.

------------------------------------------------------------------------------
Release Notes - Apache Knox - Version 0.4.0
------------------------------------------------------------------------------

** Improvements
    * [KNOX-193] - document configuration to use AD as authentication source
    * [KNOX-211] - Add classes KnoxLdapRealm, KnoxLdapContextFactory
    * [KNOX-212] - provide sample topology files to work with KnoxLdapRealm
    * [KNOX-214] - ShiroSubjectIdentityAdapter needs to map ldap groups looked up by shiro to java subject principals
    * [KNOX-215] - enhance AbstractIdentityAssertionFilter to make use of ldap groups looked up by shiro
    * [KNOX-216] - add functional tests to test ldap group lookup and usage
    * [KNOX-217] - enhance KnoxLdapGroupRealm to accept password alias in place of plain text password
    * [KNOX-221] - provide sample ldif file to work with KnoxLdapRealm
    * [KNOX-225] - update sample ldif file with ldapgroups to work with apache ds 2
    * [KNOX-230] - provide ldap schema file to allow creation of daynamic groups in apache ds
    * [KNOX-231] - shiro realm implementation to support ldap dynamic groups
    * [KNOX-232] - add automation test case for ldap dynamic group support
    * [KNOX-233] - add a topology template file to illustrate the use of dynamic groups
    * [KNOX-234] - add documentation for dynamic groups
    * [KNOX-268] - document work around for Knox to Hadoop SPNego authn problem
    * [KNOX-21] - Utilize knox.auth cookie to prevent re-authentication for every request from end user
    * [KNOX-105] - Command line tooling for CMF provisioning
    * [KNOX-165] - Stress testing
    * [KNOX-166] - Improve diagnosability of connectivity issues
    * [KNOX-167] - Knox passes down incorrect Host header to Hadoop service
    * [KNOX-188] - encryptQueryString Password is Recreated when Topology is Changed.
    * [KNOX-199] - ExampleHBase.groovy fails with HBase 0.96 due to empty column qualifier REST API incompatibility
    * [KNOX-203] - Gateway fails to start when {GATEWAY_HOME}/bin not writable
    * [KNOX-205] - Launcher script (gateway.sh) not working when gateway installed via RPM
    * [KNOX-206] - User should be able to run gateway.sh script under its own but not root account
    * [KNOX-209] - Fix the Location of KEYS File
    * [KNOX-213] - Reame PostAuthenticationFilter to ShiroSubjectIdentityAdapter
    * [KNOX-219] - Fix NOTICE file for Releases
    * [KNOX-220] - Fix JWT POC Code for HSSO
    * [KNOX-222] - Remove hadoop-examples.jar from source tree
    * [KNOX-223] - generated shiro.ini file does not preserve property order
    * [KNOX-226] - Need more Linux friendly installation layout
    * [KNOX-229] - some properties of KnoxLdapRealm need to be renamed
    * [KNOX-235] - Pre-authenticated SSO/Federation Provider
    * [KNOX-244] - Knox run from the directory with spaces in Windows OS
    * [KNOX-245] - Knox is missing rewrite rule for WebHCat root path.
    * [KNOX-246] - Knox is missing authorization filter for HBase root path.
    * [KNOX-247] -  Exception in Oozie workflow definition response rewrite
    * [KNOX-249] - Fix issues with shell scripts and home directory
    * [KNOX-251] - knoxcli.sh reports NullPointerException if not given arguments
    * [KNOX-253] - log error message for exception  ldapContextFactory.getSystemLdapContext()
    * [KNOX-254] - use system password set using knoxcli in KnoxLdapContextFactory
    * [KNOX-269] - Set JSSESSIONID cookie as HttpOnly and Secure.
    * [KNOX-270] - service level authorization should return 403 on deny
    * [KNOX-271] - Audit records duplication when no matching filter was found for requested resource
    * [KNOX-280] - Topology undeploy is broken
    * [KNOX-281] - Fix the typo in user's guide
    * [KNOX-282] - document configuration to look up group membership from ldap
    * [KNOX-287] - Update documentation to be consistent with Hive 0.12 configuration
    * [KNOX-289] - Remove incubating/incubator from source and build
    * [KNOX-292] - Invalid command line arguments don't print usage.
    * [KNOX-294] - Add -version support to gateway.sh
    * [KNOX-297] - Should not send Knox stack trace to client in error responses
    * [KNOX-298] - add a topology template for using Active Directroy as authentication back end
    * [KNOX-299] - Cannot update existing master via knoxcli
    * [KNOX-301] - Unit tests unstable on different platforms
    * [KNOX-306] - Change linux scripts to use /bin/bash
    * [KNOX-308] - Windows .cmd scripts not passing parameters to java correctly.
    * [KNOX-309] - Attempt to reparse topology files to recover from overlapping write
    * [KNOX-311] - Parameters not passed to java properly by knoxcli.sh on Ubuntu.
    * [KNOX-312] - PID File Created For Failed Deployments
    * [KNOX-313] - WebHdfs service broken for HDFS 2.4.0
    * [KNOX-314] - JDBC/HTTP for Hive Requires Specialized Dispatch
    * [KNOX-318] - HBase demo scripts fail against recent HBase versions
    * [KNOX-319] - Build fails on windows
    * [KNOX-322] - Incomplete Documentation for Quick Start
    * [KNOX-323] - Update Apache Knox Details Doc
    * [KNOX-324] - Obsolete Knox Directory Layout Doc
    * [KNOX-325] - Obsolete Docs for Services Supported
    * [KNOX-326] - Obsolete Docs for Sandbox Config
    * [KNOX-327] - Incomplete/Obsolete Docs for Gateway Details
    * [KNOX-328] - Obsolete Docs for Configuration
    * [KNOX-329] - Obsolete Docs for KnoxCLI
    * [KNOX-330] - Consolidate Authentication, GroupLookup and Shiro Docs
    * [KNOX-331] - Obsolete Docs for Secure Clusters
    * [KNOX-332] - Clarifications in Docs for Preauth SSO
    * [KNOX-333] - Incomplete Docs for HBase
    * [KNOX-334] - Obsolete Docs for Hive
    * [KNOX-335] - Obsolete Docs for Limitations
    * [KNOX-336] - Obsolete Disclaimer in Export Controls Page
    * [KNOX-337] - Knox not authenticating with HBase 0.98 in secure mode
    * [KNOX-342] - Document configuration for enabled HBase Access Control
    * [KNOX-344] - Update documentation/samples to be consistent with Hive 0.13.
    * [KNOX-345] - WebHDFS and Oozie not specifying dispatch provider and end up with HiveDispatchProvider
    * [KNOX-346] - The knox-env.sh script should prefer JAVA_HOME over java on path.
    * [KNOX-347] - Fix Knox DSL documentation
    * [KNOX-139] - Move hostmap provider configuration from a rewrite function provider to real provider config
    * [KNOX-140] - Support a forced redeploy of topologies
    * [KNOX-161] - Support Hive 0.11.0 via JDBC+ODBC/Thrift/HTTP
    * [KNOX-174] - support service specific cap for buffering request entities for replay against WWW-authenticate challenge
    * [KNOX-202] - Diagnosability/troubleshooting when wrong protocol (http vs https) used
    * [KNOX-240] - Update Hadoop dependencies to 2.x
    * [KNOX-257] - add a template topology file to illustrate preauth provider
    * [KNOX-261] - Better env checking and error messages in gateway.sh
    * [KNOX-262] - Improve JRE detection in scripting
    * [KNOX-263] - Docs - User Guide list of Services missing straight MapReduce?
    * [KNOX-265] - Add master secret generation to knoxcli
    * [KNOX-275] - Add topology template file to illustrate use of staticgroup and SLA
    * [KNOX-296] - Provide a command line tools to redeploy all topologies
    * [KNOX-300] - create a topology file that uses openldap as authen back end
    * [KNOX-315] - Add support for service params in topology file
    * [KNOX-316] - Create windows service template file for LDAP server.
    * [KNOX-320] - Simplify scripts for using Knox on windows
    * [KNOX-341] - Knox needs to work with secure Hive asserting authenticated user as doAs
    * [KNOX-4] - Extend Shiro Provider to Include Groups
    * [KNOX-23] - Generate audit log of all gateway activity
    * [KNOX-33] - Provide support for hosting Jersey services for the purposes of protocol mediation of non-REST services
    * [KNOX-48] - Cluster topology must not be exposed in datanode redirect query parameters
    * [KNOX-54] - Support horizontal scalability of gateway via clustering
    * [KNOX-172] - Support ~ to represent user's home directory in WebHDFS
    * [KNOX-179] - Simple way to introduce new provider/servlet filters into the chains
    * [KNOX-194] - Document Knox HA with Apache HTTP Server + mod_proxy + mod_proxy_balancer
    * [KNOX-198] - CSRF header support
    * [KNOX-228] - Knox should support dynamic LDAP Groups
    * [KNOX-243] -  bat/cmd script for the gateway 
    * [KNOX-248] - XML configuration file to describe how to launch Knox as Windows service
    * [KNOX-90] - Support HBase/Stargate for Kerberized cluster
    * [KNOX-92] - Support Hive/JDBC/HTTP for Kerberized cluster
    * [KNOX-208] - Upgrade ApacheDS for demo LDAP server to ApacheDS 2
    * [KNOX-290] - Upgrade Shiro dependency to 1.2.3
    * [KNOX-210] - Create functional test template

------------------------------------------------------------------------------
Release Notes - Apache Knox - Version 0.3.0
------------------------------------------------------------------------------

** New Feature
    * [KNOX-8] - Support HBase via HBase/Stargate
    * [KNOX-9] - Support Hive via JDBC+ODBC/Thrift/HTTP
    * [KNOX-11] - Access Token Federation Provider
    * [KNOX-27] - Access Kerberos secured Hadoop cluster via gateway using basic auth credentials
    * [KNOX-31] - Create lifecycle scripts for gateway server
    * [KNOX-50] - Ensure that all cluster topology details are rewritten for Oozie REST APIs
    * [KNOX-61] - Create RPM packaging of Knox
    * [KNOX-68] - Create start/stop scripts for gateway
    * [KNOX-70] - Add unit and functional testing for HBase
    * [KNOX-71] - Add unit and functional tests for Hive
    * [KNOX-72] - Update site docs for HBase integration
    * [KNOX-73] - Update site docs for Hive integration
    * [KNOX-82] - Support properties file format for topology files
    * [KNOX-85] - Provide Knox client DSL for HBase REST API
    * [KNOX-98] - Cover HBase in samples
    * [KNOX-99] - Cover Hive in samples
    * [KNOX-116] - Add rewrite function so that authenticated username can be used in rewrite rules
    * [KNOX-120] - Service Level Authorization Provider with ACLs
    * [KNOX-131] - Cleanup noisy test PropertyTopologyBuilderTest
    * [KNOX-169] - Test issue for patch test automation via PreCommit-Knox-Build job

** Improvement
    * [KNOX-40] - Verify LDAP over SSL
    * [KNOX-42] - Change gateway URLs to match service URLs as closely as possible
    * [KNOX-45] - Clean up usage and help output from server command line
    * [KNOX-49] - Prevent Shiro rememberMe cookie from being returned
    * [KNOX-55] - Support finer grain control over what is included in the URL rewrite
    * [KNOX-56] - Populate RC directory with CHANGES on people.a.o
    * [KNOX-75] - make Knox work with Secure Oozie
    * [KNOX-97] - Populate staging and release directories with KEYS
    * [KNOX-100] - document steps to make Knox work with secure hadoodp cluster
    * [KNOX-101] - Use session instead of hadoop in client DSL samples
    * [KNOX-117] - Provide ServletContext attribute access to RewriteFunctionProcessor via UrlRewriteEnvironment
    * [KNOX-118] - Provide rewrite functions that resolve service location information
    * [KNOX-129] - Document topology file
    * [KNOX-141] - Diagnostic debug output when generated SSL keystore info doesn't match environment
    * [KNOX-143] - Change "out of the box" setup to use sandbox instead of sample
    * [KNOX-153] - Document RPM based install process
    * [KNOX-155] - Remove obsolete module gateway-demo
    * [KNOX-164] - document hostmap provider properties
    * [KNOX-168] - Complete User's Guide for 0.3.0 release

** Bug
    * [KNOX-47] - Clean up i18n logging and any System.out or printStackTrace usages
    * [KNOX-57] - NPE when GATEWAY_HOME deleted out from underneath a running gateway instance
    * [KNOX-58] - NameNode endpoint exposed to gateway clients in runtime exception
    * [KNOX-60] - getting started - incorrect path to gateway-site.xml
    * [KNOX-69] - Branch expansion for specdir breaks on jenkins
    * [KNOX-76] - users.ldif file bundled with knox should not have hadoop service principals
    * [KNOX-77] - Need per-service outbound URL rewriting rules
    * [KNOX-78] - spnego authorization to cluster is failing
    * [KNOX-79] - post parameters are lost while request flows from knox to secure cluster
    * [KNOX-81] - Fix naming of release artifacts to include the word incubating
    * [KNOX-83] - do not use mapred as end user prinicpal in examples
    * [KNOX-84] - use EXAMPLE.COM instead of sample.com in template files for kerberos relam
    * [KNOX-89] - Knox doing SPNego with Hadoop for every client request is not scalable
    * [KNOX-102] - Update README File
    * [KNOX-106] - The Host request header should be rewritten or removed
    * [KNOX-107] - Service URLs not rewritten for WebHDFS GET redirects
    * [KNOX-108] - Authentication failure submitting job via WebHCAT on Sandbox
    * [KNOX-109] - Failed to submit workflow via Oozie against Sandbox HDP2Beta
    * [KNOX-111] - Ensure that user identity details are rewritten for Oozie REST APIs
    * [KNOX-124] - Fix the OR semantics in AclAuthz
    * [KNOX-126] - HiveDeploymentContributor uses wrong external path /hive/api/vi
    * [KNOX-127] - Sample topology file (sample.xml) uses inconsistent internal vs external addresses
    * [KNOX-128] - Switch all samples to use guest user and home directory
    * [KNOX-130] - Throw exception on credential store creation failure
    * [KNOX-132] - Cleanup noisy test GatewayBasicFuncTest.testOozieJobSubmission()
    * [KNOX-136] - Knox should support configurable session timeout
    * [KNOX-137] - Log SSL Certificate Info
    * [KNOX-142] - Remove Templeton from user facing config and samples and use WebHCat instead
    * [KNOX-144] - Ensure cluster topology details are rewritten for HBase/Stargate REST APIs
    * [KNOX-146] - Oozie rewrite rules for NN and JT need to be updated to use hostmap
    * [KNOX-147] - Halt Startup when Gateway SSL Cert is Expired
    * [KNOX-148] - Add cluster topology details rewrite for XML responses from HBase/Stargate REST APIs
    * [KNOX-149] - Changes to AclsAuthz Config and Default Mode
    * [KNOX-150] - correct comment on session timeout  in sandbox topology file
    * [KNOX-151] - add documentation for session timeout configuration
    * [KNOX-152] - Dynamic redeploy of topo causes subsequent requests to fail
    * [KNOX-154] - INSTALL file is out of date
    * [KNOX-156] - file upload through Knox broken
    * [KNOX-157] - Knox is not able to process PUT/POST requests with large payload
    * [KNOX-158] - EmptyStackException while getting webhcat job queue in secure cluster
    * [KNOX-159] - oozie job submission thorugh knox fails for secure cluster
    * [KNOX-162] - Support Providing Your own SSL Certificate
    * [KNOX-163] - job submission through knox-webchat results in NullPointerException

------------------------------------------------------------------------------
Release Notes - Apache Knox - Version 0.2.0
------------------------------------------------------------------------------
HTTPS Support (Client side)
Oozie Support
Protected DataNode URL query strings
Pluggable Identity Asserters
Principal Mapping
URL Rewriting Enhancements
KnoxShell Client DSL

