Releases: jetty/jetty.project
Releases · jetty/jetty.project
9.4.55.v20240627
12.0.11
Special Thanks to the following Eclipse Jetty community members
- @garydgregory (Gary Gregory)
- @scrat98 (Artem Golovko)
Changelog
- #11966 - Backport #11774 (env web xml) to Jetty 12.0.x
- #11951 - Remove buffer from pool on write failure
- #11949 - Content.Source from methods
- #11944 - Jetty Part#delete() implementation throws IOException
- #11938 - Updating URL refs from eclipse.org/jetty and eclipse.dev/jetty to jetty.org (including XML dtd references)
- #11932 - Review HttpSender.ContentSender (and other ICB) to remove overridden succeeded method
- #11925 - java.lang.NullPointerException: Cannot invoke "String.startsWith(String)" because "etag" is null
- #11911 - 11 -> 12 Migration guide wrongly suggests Request.getHttpURI as replacement for HttpServletRequest.getRequestURL
- #11910 - Introduce ByteChannelContentSource
- #11909 - Start throws ConcurrentModificationException if an
eeX-webapp.ini
exists instart.d
with a command line - #11907 - Fix openid.mod files for Jetty 12
- #11906 - Improve support for MultiPart in jetty-core
- #11902 - Un-deprecate WebAppClassLoading.addHiddenClasses(Attributes attributes, String... patterns) method
- #11897 - Fix missing notifyRemoteAsyncErrors http config wiring
- #11893 - Hello World Example Fails to Run
- #11892 - mtls not working with http/3
- #11888 - Correcting object identity in ee8 and ee9
- #11878 - Add response to debug log event in HttpSender#failRequest() (@garydgregory)
- #11876 - Experiment for aborting callbacks
- #11873 - Server resources are not found if the server is subclassed in a different package
- #11847 - replacement for GlobalWebappConfigBinding
- #11811 - getHeaderNames should return header name once also when request has it in different case
- #11803 - Follow Reactive Stream TCK for ContentSourcePublisher implementation (original contributions by @scrat98)
11.0.22
10.0.22
12.0.10
Changelog
- #11851 - jetty-ee8-websocket-javax-server export not honoured
- #11811 - getHeaderNames should return header name once also when request has it in different case
- #11800 - client: Allow
AsyncContentListener.onContent
to throw checked Exceptions - #11792 -
StdErrAppender
should detect exception circular references - #11776 - NPE from
org.eclipse.jetty.ee8.nested.Request.getRequestURL
- #11767 - Backward compat API
WebAppContext.getServerClassMatcher()
is not updating theWebAppClassloader
- #11766 - Ensure
ReadListener
is nulled out when AsyncContext is completed. - #11763 - Race condition in
QoSHandler
- #11760 -
request.getHttpURI().getScheme()
is null on FORWARD dispatched request, causing NPE - #11756 -
ChunkAccumulator
not working with empty chunks - #11748 - Unexpected HTTP Response Status Code: 404 Not Found
- #11745 - Issue while adding Module for Persistent HTTP Sessions: Google Cloud DataStore
- #11736 - Issue with Response
OutputStream#close()
rethrowing sameEofException
instance - #11507 -
org.eclipse.jetty.util.Attributes.getAttribute()
should specify return type if no match is found - #11501 - Introduce experiment fully virtual
VirtualThreadPool
- #11072 - Introduce
StateTrackingHandler
- #9778 - Remove
WriteFlusher.Listener
- #9177 - Add JVM info and OS info to
Dumpable.dump()
11.0.21
Special Thanks to the following Eclipse Jetty community members
- @shaoxt (Sheldon Shao)
- @MarcinKozak005 (Marcin Kozak)
Changelog
- #11782 - HttpExchange retained by HttpSenderOverHTTP which caused memory leak (@shaoxt)
- #11634 - Socks5Proxy does not support IP addresses with IP segments above 127 (@MarcinKozak005)
- #10805 - Jetty response with an invalid HTTP2 packet if the client set the hpack table size as 0
- #11527 - Reduce ByteBuffer churning in HttpOutput
- #11656 Upgrade jetty-quiche-native to version 0.21.0
10.0.21
Special Thanks to the following Eclipse Jetty community members
- @shaoxt (Sheldon Shao)
- @MarcinKozak005 (Marcin Kozak)
Changelog
- #11782 - HttpExchange retained by HttpSenderOverHTTP which caused memory leak (@shaoxt)
- #11634 - Socks5Proxy does not support IP addresses with IP segments above 127 (@MarcinKozak005)
- #10805 - Jetty response with an invalid HTTP2 packet if the client set the hpack table size as 0
- #11527 - Reduce ByteBuffer churning in HttpOutput
- #11656 Upgrade jetty-quiche-native to version 0.21.0
12.0.9
Changelog
- #11699 - new IllegalStateException when attempting to access Request/Response outside of Request Lifecycle
- #11687 -
HttpFields$Mutable$Wrapper.computeField()
incorrectly callsonAddField()
when null is returned bycomputeFn
- #11686 - Document the rewrite Jetty module.
- #11659 - HTTP Fields with OWS (Optional WhiteSpace) in value are not properly parsed in Jetty 12
- #11651 - Jetty 12.0.x refactor common maven plugin classes
- #11649 - NON_POOLING static ByteBufferPool
- #11648 - Introduce new HttpDateTime class for parsing obsolete Date formats in HTTP and Cookie
- #11642 - Restore jetty-ee8-runner
- #11639 - Introduce various aliases to start.jar options
- #11637 - Fix for some invalid server behaviors when a client is aborting a request
- #11616 - Distribution tests depends on jetty-home so ensure it is build first
- #11573 - Introduce new
disable-urlcache
module to globally disable JVM URL caching ofjar
protocol references - #11570 - update SizeLimitHandler with fixes needed for appengine tests
- #11566 - Move ClassMatcher to core to have a consistent fix for addServerClasses in all environments
- #11490 - CustomRequestLog.ignorePath doesn't work as documented
- #11488 - Inconsistent default port number in HttpURI and HostPort
- #11420 - HTTP/3 Race with Dynamic Table referencing in QPackDecoder
- #11026 - Start Stop issue with Jetty 12 - state file not deleted every time
12.0.8
Special Thanks to the following Eclipse Jetty community members
- @dhs3000 (Dennis Hoersch)
Changelog
- #11587 - Allow configuring showCause in ErrorHandler
- #11583 - Broken HTTP/3 tests
- #11577 - Remove usages of URIUtil.toURI and URIUtil.split
- #11574 - shibboleth idp webapp under jetty 12.0.7
- #11572 - Deploy behaves differently when both WAR and XML exist in ${jetty.base}/webapps/ and you update the XML vs updating the WAR.
- #11558 - New tmp directory should be created on every
WebAppContext
start, if not explicitly configured - #11556 - Improvements and cleanups to ErrorHandler.
- #11553 - Restore startWebapp() to WebAppContext
- #11548 - java.nio.file.ClosedFileSystemException on hot redeploy
- #11539 -
Resource.copyTo(Resource)
has different behavior from Jetty 9/10/11 - #11522 - Allows to change the default ErrorHandler response type (@dhs3000)
- #11518 - Ensure request is set for ContextScopeListener in EE10
- #11513 - Perf regression in the HTTP parser caused by long look-ahead
- #11510 - Occasional NPE in ClassMatcher.match() from WebAppClassLoader.loadClass() usage
- #11509 - Removing constructor in CookieCache on minor version Change of artifact
- #11498 - Optimized ReservedThreadExecutor with ThreadIdPool
- #11495 - Add UriCompliance rules that follow the HTTP / URI / Servlet specs for illegal & suspicious characters
- #11486 - Improve HTTP parsing long look-ahead
- #11482 - The StatisticsHandler doesn't count 2xx codes
- #11451 - Reintroduce Cross Context Dispatch in Jetty 12
- #11411 - Allow non existant resources to be obtained from Resource.resolve()
- #11364 - Cleanup Resource IO
- #11319 - Implemented addBeanFromConstructor
- #10870 - How to set HttpConfiguration.securePort when the HTTPS port is dynamic?
- #10387 - Fix or suppress javadoc warnings
- #7647 - Document org.eclipse.jetty.client.Socks4Proxy "secure" parameter
- #5857 - Deprecate AbstractConnectionPool "callback" methods
12.0.7
Special Thanks to the following Eclipse Jetty community members
- @hboutemy (Hervé Boutemy)
- @danishnawab (Danish Nawab)
Changelog
- #11465 - HttpURI.toURI() sets userInfo to null
- #11455 - Improve DEBUG during WebInfConfiguration.unpack
- #11448 - UriCompliance.Violation ignored despite being set
- #11443 - Fix NPE in HttpReceiverOverHTTP2.read() when the channel's stream is null
- #11435 - Add suppressed failures in Callback failed
- #11432 - Change default number of acceptor threads
- #11426 - Experiment with ArrayByteBufferPool performance
- #11424 - What is the
jetty.deploy.scanInterval
default? module, ini, code, and documentation do not agree. - #11414 - When producing URI/URL strings follow spec and produce lowercase schemes and drop default ports
- #11410 - PathMappingsHandler does not start ResourceHandler properly
- #11401 - Replace StringBuffer with StringBuilder
- #11398 - WebSocket ClosedChannelException when demanding frames in onOpen
- #11397 - Jetty 12:
ContextHandler.getTempDirectory()
does not respect theContext.getTempDirectory()
contract - #11387 - Reintroduce MultiPartCompliance.LEGACY (not as default) too allow for parsing of non-compliant
multipart/form-data
- #11386 - Making FormFields get defaults from Context, not Request
- #11383 - Added documentation about
SslHandshakeListener
. - #11377 - Jetty 12 fails to start WebApp Bundle with OSGi Boot bundle (or when packaged)
- #11371 - Review ArrayByteBufferPool eviction
- #11370 - IllegalStateException when last write fails
- #11363 - ContentSourcePublisher throws from request
- #11361 - Updates to UriCompliance.checkUriCompliance
- #11360 - drop buildnumber:create already executed by jetty-util (@hboutemy)
- #11356 - Allow ServerWebSocketContainer to be created without ContextHandler
- #11353 - The default virtual thread executor should created named threads (@danishnawab)
- #11310 - Uploading big multipart files via jetty 12.0.5 with spring boot 3.2.1 cause problems
- #11279 - fix use of AliasCheckers with CombinedResource
- #11278 - 500 response when trying to display symlinked directory
- #11270 - Windows 11 pro - problem launching Jetty with ${jetty.home}\etc\jetty-ee10-deploy.xml
- #10432 - Fix buffer leaks in FCGI and H3
HttpClientIdleTimeoutTest
- #8979 - Jetty 12 - HttpClientTransport network "modes"
- #8887 - Jetty-12 client calls onDataAvailable with producing thread