Releases: jetty/jetty.project
Releases · jetty/jetty.project
12.0.3
Changelog
- #10794 - 301 Moved Permanently produces query with
;
instead of?
- #10779 - Upgrade to xhtml-schemas 1.3 which add one more entity systemid
- #10771 - EE10
ServletRequest.isSecure()
not set byForwardedRequestCustomizer
- #10762 - Better handling of Objects in JMX MetaData
- #10760 - Fix Overlay of Combined Resources
- #10759 - Fix HTTP/3 Client handling of MAX_FIELD_SECTION_SIZE setting
- #10747 - Add ability to compress and skip unserializable session attributes
- #10734 - jakarta.websocket.Session.getRequestParameterMap() contains the value as key
- #10731 - org.eclipse.jetty.server.Request uses wrong context attribute name javax.servlet instead of jakarta.servlet
- #10727 - Fix EE10 removeAttributes
- #10726 - NPE in ResponseListeners content notification
- #10716 - Incorrect setting of content type with charset encoding before and after PrintWriter obtained
- #10703 - Fix race condition in
ArrayByteBufferPool.clear()
- #10699 - Jetty HTTP SPI redirects SOAP POST requests to GET requests if URL does not end with /
- #10688 - Introduce Jetty 12 ee8 osgi layer
- #10685 - fix infinite recursion in server dump with Path
- #10661 - Ensure jetty api servlets/filters take precedence over
webdefault.xml
declarations. - #10656 - EE10
ServletRequest.getProtocolRequestId()
impl not spec compliant when protocol is H1 - #10651 - MutableHttpFields.asImmutable avoids copy
- #10612 - Fix surefire display name in surefire report and restore TestTrackerExtension in output"
- #10582 - NPE when including a directory that should be resolved with servlet-mapped welcome file
- #10578 - Jetty 12.0.x use automatic formatter for poms to have same style for every poms
- #10555 - Re-introduce a more complete set of stats in
StatisticsHandler
- #10477 - Jetty 12: Review MBeans for Handlers
11.0.18
Special Thanks to the following Eclipse Jetty community members
- @OlexYarm (OlexYarm)
Changelog
- #10786 - TLS handshake failures leak HttpConnection.RequestTimeouts tasks
- #10755 - deprecate PushCacheFilter
- #10753 - Improve and test
jetty.sh
behaviors - #10731 - org.eclipse.jetty.server.Request uses wrong context attribute name javax.servlet instead of jakarta.servlet
- #10675 - Fixed issue 10305 Embedded Jetty server fails to start when requests path contains not existed directory (@OlexYarm)
- #10667 - Add configuration to allow deferring the initial Deployment until after Server is started
- #10390 - Jetty HTTP/3 Client fails when connecting to
nghttpx
server - #1256 - DoSFilter leaks USER_AUTH entries
10.0.18
Special Thanks to the following Eclipse Jetty community members
- @OlexYarm (OlexYarm)
Changelog
- #10786 - TLS handshake failures leak HttpConnection.RequestTimeouts tasks
- #10755 - deprecate PushCacheFilter
- #10753 - Improve and test
jetty.sh
behaviors - #10675 - Fixed issue 10305 Embedded Jetty server fails to start when requests path contains not existed directory (@OlexYarm)
- #10667 - Add configuration to allow deferring the initial Deployment until after Server is started
- #10390 - Jetty HTTP/3 Client fails when connecting to
nghttpx
server - #1256 - DoSFilter leaks USER_AUTH entries
12.0.2
Security Updates
This release addresses:
- CVE-2023-44487 - (in case github/advisory-database#2869 isn't fixed, use top level link https://nvd.nist.gov/vuln/detail/CVE-2023-44487)
Changelog
- #10679 - Review HTTP/2 rate control
- #10672 - Changed default implementation of Session.Listener.onNewStream() and …
- #10618 - Reduced mildly expensive HttpMethod.is calls by reordering boolean logic
- #10613 - Fix incorrect call to super in BufferedResponseHandler
- #10563 - An omnibus PR for changes needed to support webfunctions
- #10558 - NPE when forwarding a request to default servlet which should redirect to a subdirectory with trailing slash
- #10553 - Reintroduce an Exception type for invalid UTF-8
- #10547 - Cannot customize Executor on WebSocketClient
- #10542 - Added WebSocket migration documentation, pointing to existing WebSock…
- #10526 - do not run this in parallel as some conflicted jdni entries with ServerWithJNDITest
- #10513 - Lockup processing POST request body with Jetty 12.0.1 using http/2
- #10508 - Jetty 12 IllegalArgumentExeption when setting a HTTP header to null
- #10502 - Introduced CompletableResponseListener
- #10500 - Jetty 12 HTTP SPI does not preserve double-quotes on valid request headers
- #10498 - NullPointerException from call to UpgradeRequest#getUserPrincipal with Jetty 12
- #10483 - Improve BufferedResponseHandler
- #10482 - RewriteHandler with multiple HeaderPatternRules
- #10479 - Fix parsing of JSESSIONID only
- #10474 - Jetty 12 default error handler throws IllegalStateException for application/json
- #10473 - Startup Script reports
ok
too fast, and doesn't wait for actual start of Jetty - #10466 - Review HTTP session documentation
- #10463 - Jetty 12 throws Exception handling static files when using response wrapper
- #10442 - Reduce verbosity when JMX finds overloaded setter
- #10441 - Jetty 12 ee8 jaspi is missing
- #10440 - ClassCastException with
<jettyEnvXml>
use injetty-ee10-maven-plugin
- #10361 - Introduce QoSHandler
- #10328 - Review
ResourceFactory.newSystemResource(String)
behavior & javadoc - #10324 - Improve migration from Servlets to Handler
- #10219 - Review HTTP Cookie parsing
- #9665 -
HttpCookieStore
incorrectly rejects cookies for domains that are an IPv6 address
9.4.53.v20231009
Security Updates
This release addresses:
- CVE-2023-44487 - (in case github/advisory-database#2869 isn't fixed, use top level link https://nvd.nist.gov/vuln/detail/CVE-2023-44487)
- CVE-2023-36478
Sponsored Release
This is a release of the End of Community Support Jetty 9.x series that was sponsored by a support contract from Webtide.com
Changelog
11.0.17
Security Updates
This release addresses:
- CVE-2023-44487 - (in case github/advisory-database#2869 isn't fixed, use top level link https://nvd.nist.gov/vuln/detail/CVE-2023-44487)
Changelog
- #10679 - Review HTTP/2 rate control
- #10547 - Cannot customize Executor on WebSocketClient
- #10545 - Fixed deadlock in class initialization seen on JDK21.
- #10511 - Allow session idle timeout to be configured on authentication.
- #10473 - Startup Script reports
ok
too fast, and doesn't wait for actual start of Jetty - #10365 - Cleanup of start properties usages
10.0.17
Security Updates
This release addresses:
- CVE-2023-44487 - (in case github/advisory-database#2869 isn't fixed, use top level link https://nvd.nist.gov/vuln/detail/CVE-2023-44487)
Changelog
- #10679 - Review HTTP/2 rate control
- #10547 - Cannot customize Executor on WebSocketClient
- #10545 - Fixed deadlock in class initialization seen on JDK21.
- #10511 - Allow session idle timeout to be configured on authentication.
- #10473 - Startup Script reports
ok
too fast, and doesn't wait for actual start of Jetty - #10365 - Cleanup of start properties usages in
jetty-10.0.x
12.0.1
Important Notes
- New Environment System (ee10 / ee9 / ee8)
- Supports ee10 / ee9 / ee8 at the same time (in different deployed webapps)
- See Jetty 11 to 12 Migration Docs for help finding the new maven coordinates for EE specific artifacts.
- Jetty Core no longer has dependencies on any Jakarta EE Spec
Special Thanks to the following Eclipse Jetty community members
- @zugazagoitia (Alberto Zugazagoitia)
Changelog
- #10420 - do not recycle ServletChannel if aborted
- #10416 - EE9 Copies HttpFields in response
- #10411 - Review deployment of Jetty Context XML files
- #10406 - Bump jetty-setuid to 2.0.1
- #10388 - Jetty10 inetaccess mod started error
- #10356 - Deploying WAR with
ee10-cdi-spi
fails with Weld 5/CDI 4 - #10349 - Character encoding is reset when setting Content-Type
- #10340 - Implement containsLast in HttpFields
- #10339 - Freeze HttpFields
- #10337 - SizeLimitHandler does not enforce 0 responseLimit
- #10330 - Jetty 12: ResourceService throws NPE when resource has no filesystem path
- #10329 - Jetty accepts "+" prefixed value in Content-Length (CVE-2023-40167)
- #10323 - Jetty 12.0.0 return wrong value for HttpServletRequest.isRequestedSessionIdValid
- #10315 - ServletInputStream::isReady results in IllegalArgumentException
- #10309 - Jetty 12: X-Powered-By header is added 2 times (if enabled)
- #10306 - Jetty 12 generates wrong Host header
- #10295 - FormAuthenticator does not dispatch to an error page but redirect
- #10294 - Request.getContext().getContextPath()
- #10293 - Improve documentation on how to write a response body in Jetty 12
- #10284 - Document all HttpFields methods
- #10275 - Fix wrong websocket artifact Jetty 12.x docs (@zugazagoitia)
- #10274 - java.nio.file.FileSystemNotFoundException when creating a resource from a JAR URL
- #10222 - Experiment/12/improve default servlet
- #10217 - Review ProxyConnectionFactory buffer management
- #10213 - UnknownFormatConversionException in
start.jar --debug
if path has%
sign - #10207 - Update failed JSP deployment message
- #10163 - Allow better configuration of WebAppContext classloader
- #10064 - Various Cleanup in ServletChannel
- #9900 - Improve
Request.getBeginNanoTime()
accuracy - #9169 - Idle timeout is ignored if callback is not completed
11.0.16
Security Updates
This release addresses:
- GHSA-58qw-p7qm-5rvh - provides a workaround for direct users of XmlParser
- CVE-2023-40167
- CVE-2023-36478
- CVE-2023-36479
- CVE-2023-41900
Special Thanks to the following Eclipse Jetty community members
- @strogiyotec (Almas Abdrazak)
- @huisongma (huisongma)
- @garydgregory (Gary Gregory)
Changelog
- #10397 - Iso88591StringBuilder.append seems to have a logic error
- #10388 - Jetty10 inetaccess mod started error
- #10352 - Jetty accepts "+" prefixed value in Content-Length (CVE-2023-40167)
- #10329 - Various cleanups in HttpParser
- #10271 - jetty.sh does not stop jetty anymore
- #10211 - NPE in ArrayByteBufferPool.findOldestEntry()
- #10176 - cleanups of DateCache
- #10160 - Verify PROXY_AUTHENTICATION is sent to forward proxies
- #10145 - WritePendingException over HTTP/2 tunnel
- #10143 - Startup fails due to IllegalArgumentException: Comparison method violates its general contract
- #10135 - Websocket: Using PerMessageDeflateExtension and flush in batchMode send FLUSH_FRAME to client.
- #10105 - Document that Request objects are not reusable
- #10086 - Revisiting ProxyConfiguration.getProxies()
- #10066 - Allow
SAXParserFactory
orSAXParser
to be configured in Jetty'sXmlParser
class - Allows for GHSA-58qw-p7qm-5rvh workaround - #9997 - No progress during Gzip Request Inflation results in bogus error
- #9947 - Cannot invoke "org.eclipse.jetty.io.ManagedSelector.getTotalKeys()" because "selector" is null (@strogiyotec)
- #9938 - Bulletproof AbstractProxyServlet#destory() to make it easier to write (@garydgregory)
- #9895 - A MessageTooLargeException doesn't close a WebSocket connection
- #9887 - Deprecate CGI Servlet (CVE-2023-36479)
- #9798 - review and cleanup of HTTP/3 QPACK Integer and String encoding
- #9777 - CrossOriginFilter does not return Vary header on no-cors mode
- #9761 - H3: Fix racy read from stream-less channel
- #9749 - HTTP/2 improvements.
- #9741 - Review of websocket parser, improve testing & comments.
- #9728 - Fixes to QPACK configuration from SETTINGS frames.
- #9715 - deprecate PushSessionCacheFilter
- #9685 - Jetty doesn't set the date header on error responses
- #9682 - RetainableByteBuffer buffer release bug in WebSocket
- #9554 - Move (qpack/hpack) HuffmanDecoder / HuffmanEncoder / NBitInteger* to common location
- #9476 - onCompleteFailure called multiple times
- #8926 - HttpClient GZIPContentDecoder should remove Content-Length and Content-Encoding: gzip
- #8556 - ServletContext.getSessionTimeout() incorrectly throws IllegalStateException
- #8405 - Servlet 3.1 ReadListener.onAllDataRead() is called twice under h2 or h2c if the server doesn't respond within 30s
- #7091 - Add SOCKS5 support (@huisongma)
10.0.16
Security Updates
This release addresses:
- GHSA-58qw-p7qm-5rvh - provides a workaround for direct users of XmlParser
- CVE-2023-40167
- CVE-2023-36478
- CVE-2023-36479
- CVE-2023-41900
Special Thanks to the following Eclipse Jetty community members
- @strogiyotec (Almas Abdrazak)
- @huisongma (huisongma)
- @garydgregory (Gary Gregory)
Changelog
- #10397 - Iso88591StringBuilder.append seems to have a logic error
- #10388 - Jetty10 inetaccess mod started error
- #10352 - Jetty accepts "+" prefixed value in Content-Length (CVE-2023-40167)
- #10329 - Various cleanups in HttpParser
- #10271 - jetty.sh does not stop jetty anymore
- #10211 - NPE in ArrayByteBufferPool.findOldestEntry()
- #10176 - cleanups of DateCache
- #10160 - Verify PROXY_AUTHENTICATION is sent to forward proxies
- #10145 - WritePendingException over HTTP/2 tunnel
- #10143 - Startup fails due to IllegalArgumentException: Comparison method violates its general contract
- #10135 - Websocket: Using PerMessageDeflateExtension and flush in batchMode send FLUSH_FRAME to client.
- #10105 - Document that Request objects are not reusable
- #10086 - Revisiting ProxyConfiguration.getProxies()
- #10066 - Allow
SAXParserFactory
orSAXParser
to be configured in Jetty'sXmlParser
class - Allows for GHSA-58qw-p7qm-5rvh workaround - #9997 - No progress during Gzip Request Inflation results in bogus error
- #9947 - Cannot invoke "org.eclipse.jetty.io.ManagedSelector.getTotalKeys()" because "selector" is null (@strogiyotec)
- #9938 - Bulletproof AbstractProxyServlet#destory() to make it easier to write (@garydgregory)
- #9895 - A MessageTooLargeException doesn't close a WebSocket connection
- #9887 - Deprecate CGI Servlet (CVE-2023-36479)
- #9798 - review and cleanup of HTTP/3 QPACK Integer and String encoding
- #9777 - CrossOriginFilter does not return Vary header on no-cors mode
- #9761 - H3: Fix racy read from stream-less channel
- #9749 - HTTP/2 improvements.
- #9741 - Review of websocket parser, improve testing & comments.
- #9728 - Fixes to QPACK configuration from SETTINGS frames.
- #9715 - deprecate PushSessionCacheFilter
- #9685 - Jetty doesn't set the date header on error responses
- #9682 - RetainableByteBuffer buffer release bug in WebSocket
- #9554 - Move (qpack/hpack) HuffmanDecoder / HuffmanEncoder / NBitInteger* to common location
- #9476 - onCompleteFailure called multiple times
- #8926 - HttpClient GZIPContentDecoder should remove Content-Length and Content-Encoding: gzip
- #8556 - ServletContext.getSessionTimeout() incorrectly throws IllegalStateException
- #8405 - Servlet 3.1 ReadListener.onAllDataRead() is called twice under h2 or h2c if the server doesn't respond within 30s
- #7091 - Add SOCKS5 support (@huisongma)