Commit Graph

2663 Commits

Author SHA1 Message Date
Olivier Lamy 193cd0e995 Updating to version 10.0.22-SNAPSHOT 2024-05-27 03:11:27 +02:00
Olivier Lamy 7cbe89a433 Updating to version 10.0.21 2024-05-27 03:11:27 +02:00
Dan Allen f3bc547622 migrate documentation to Antora 2024-05-21 00:20:07 +02:00
Joakim Erdfelt bd0f081201
Fixing deps on testcontainers 2024-03-01 15:19:51 -06:00
Joakim Erdfelt a7d14d6874
Updating to version 10.0.21-SNAPSHOT 2024-01-29 14:58:51 -06:00
Joakim Erdfelt 3a745c71c2
Updating to version 10.0.20 2024-01-29 14:46:10 -06:00
Joakim Erdfelt 6fec10e51e
Issue #11260 - Allow `QuickStartConfiguration` to be used in mixed contexts environment where some do not have a WEB-INF/quickstart-web.xml (#11261)
* QuickStartConfiguration updated

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2024-01-25 11:00:13 -06:00
Joakim Erdfelt dc96d91eef
Revert "Issue #11260 - Allow `QuickStartConfiguration` to be used in mixed contexts environment where some do not have a WEB-INF/quickstart-web.xml"
This reverts commit d6015606ea.
2024-01-11 11:17:06 -06:00
Joakim Erdfelt d6015606ea
Issue #11260 - Allow `QuickStartConfiguration` to be used in mixed contexts environment where some do not have a WEB-INF/quickstart-web.xml
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2024-01-11 11:16:30 -06:00
dependabot[bot] 49c5eb341a
Bump org.eclipse.jetty.toolchain:jetty-test-helper from 6.0 to 6.2 (#11103)
* Bump org.eclipse.jetty.toolchain:jetty-test-helper from 6.0 to 6.2

Bumps [org.eclipse.jetty.toolchain:jetty-test-helper](https://github.com/eclipse/jetty.toolchain) from 6.0 to 6.2.
- [Commits](https://github.com/eclipse/jetty.toolchain/compare/jetty-test-helper-6.0...jetty-test-helper-6.2)

---
updated-dependencies:
- dependency-name: org.eclipse.jetty.toolchain:jetty-test-helper
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2024-01-10 08:40:24 -06:00
Joakim Erdfelt 36a80b9622
Prevent rogue slf4j-impl coming from wildfly-elytron-2.2.2.Final.jar
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2024-01-03 08:06:54 -06:00
Joakim Erdfelt 97ca925620
Ensure test webapps are referenced 2024-01-03 06:39:03 -06:00
Joakim Erdfelt 204b293d62
Results of: mvn spotless:apply (for sortModules) 2024-01-03 03:16:02 -06:00
Joakim Erdfelt 9a18dc8722
Results of: mvn spotless:apply 2024-01-03 03:12:56 -06:00
Joakim Erdfelt 9423a5b79d
Fixing JSP test case (junit is more strict on parameters order now)
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2024-01-01 13:59:29 -06:00
Joakim Erdfelt c91e3fbc48
Updating to version 10.0.20-SNAPSHOT 2023-12-15 14:49:33 -06:00
Joakim Erdfelt 8492d1c78f
Updating to version 10.0.19 2023-12-15 14:38:06 -06:00
Simone Bordet efda646319
Fixes #11031 - HttpClient should expose Connection/EndPoint used by H… (#11033)
Introduced method Request.getConnection() to expose the Connection after at the request begin event.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2023-12-13 20:34:52 +01:00
Gary Gregory 0efee0bf95 Use String#isEmpty() 2023-11-28 17:46:42 -05:00
Joakim Erdfelt c50aa2f61b
Updating to version 10.0.19-SNAPSHOT 2023-10-26 21:10:08 -05:00
Joakim Erdfelt 8545fd9bf4
Updating to version 10.0.18 2023-10-26 20:59:27 -05:00
Simone Bordet fa166d09c5
Fixes #10786 - TLS handshake failures leak HttpConnection.RequestTimeouts tasks
Moved the call to destroy the CyclicTimeouts to a close() call that is always called.

Fixed NPE in ManagedSelector.getTotalKeys().

Fixed exception handling to avoid infinite recursion in SslConnection.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2023-10-26 16:49:52 +02:00
Joakim Erdfelt 31b5518fe3
Updates to jetty.sh and testing to reduce failures
Backport of #10790 to Jetty 10.

+ Making sure /etc/default/jetty is populated correctly in the user_change mode
+ Removing warnings from jetty startup about --start-log-file=... being unrecognized
+ Adding unique jetty10 identifier to docker image names (helps to keep different jetty versions apart when manually testing)

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2023-10-25 20:20:50 -05:00
Joakim Erdfelt 92f62a10f9
Improve and test `jetty.sh` behaviors (#10753)
* Issue #10696 - Addressing start-stop-daemon behaviors in jetty.sh
* disable internal pid-file management of start-stop-daemon
* IssueDo not test for file system permissions if user is root, or process will switch to JETTY_USER
* Fixing bad UID / JETTY_USER condition
* Avoid FS test with setuid use as well
* Fixing stop behavior
* Adding jetty.sh docker testing

---------

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
Signed-off-by: Olivier Lamy <olamy@apache.org>
Co-authored-by: Olivier Lamy <olamy@apache.org>
2023-10-25 09:32:15 -05:00
Joakim Erdfelt 722b97ad6a
Updating to version 10.0.18-SNAPSHOT 2023-10-09 13:32:28 -05:00
Joakim Erdfelt af15f12297
Updating to version 10.0.17 2023-10-09 13:21:53 -05:00
Joakim Erdfelt 1e1bc5adff
Issue #10606 - Bump build to JDK 21 (#10607)
* Issue #10606 - Bump build to JDK 21
* Fix tests that fail on JDK 21
* better use of `@EnabledForJreRange`
* Disable JAASLdapLoginServiceTest on JDK 20+ via maven profile

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
Signed-off-by: Olivier Lamy <olamy@apache.org>
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
Co-authored-by: Olivier Lamy <olamy@apache.org>
Co-authored-by: Simone Bordet <simone.bordet@gmail.com>
2023-09-28 16:19:36 -05:00
Joakim Erdfelt cc8f976d0c
Issue #10473 - Revert jetty.sh pgrep, and update started checks (#10501)
* Revert pgrep usage in jetty.sh
* Adding test for jetty.conf
* Correcting renamed xml file
* Improved started check
+ Improved `started` function code
  - adding comment explaining steps
  - adding named parameters
+ Improved ARGS check for "jetty.state="
  option, to know when to check the
  state file.
* Make sure state.mod is before any deploy steps to ensure jetty-state file is created early.
* Early cleanup / creation of State file
* Improved `started` function
+ Don't attempt to read from State File
  if it doesn't exist
+ Don't attempt to read from PID File
  if it doesn't exist
+ DEBUG in state file logic
+ DEBUG in pid file logic
+ proper startsWith logic for state detection
* Better state debugging and pid kill

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2023-09-26 16:48:33 -05:00
Joakim Erdfelt 896dee2466
Updating to version 10.0.17-SNAPSHOT 2023-08-25 14:27:38 -05:00
Joakim Erdfelt a2735a9ae9
Updating to version 10.0.16 2023-08-25 14:10:55 -05:00
Joakim Erdfelt 900f50f513
Issue #10271 - new jetty-home `pid` module (#10272)
* Issue #10271 - new jetty-home module `pid`

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2023-08-25 09:12:49 -05:00
Lachlan Roberts d6320c4494 fix checkstyle violation
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2023-08-25 15:37:40 +10:00
Lachlan Roberts b89398d91c Issue #10388 - add DistributionTest for InetAccessHandler
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2023-08-25 14:19:38 +10:00
Lachlan c55363d43f
cleanups of DateCache (#10176)
* improve the formatting for precise ms in DateCache
* return original format string with DateCache.getFormatString
* calculate index in tick constructor because format strings can be different size
* use two ticks so that switching between seconds is less likely going to have cache miss
* use boolean instead of index to denote if sub second is needed
* remove formatWithoutCache and replace with doFormat as it doesn't work with sub second time
* allow the option of not having sub second precision
* use two separate formatters for the prefix/suffix around the SSS format code
* use a simple class to store both ticks in DateCache
* rename DateCache.Tick.getString(long) to format()

Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2023-08-24 18:43:46 +02:00
Simone Bordet 153f5dfae8 Fixes #10350 - Support Java 21 virtual threads
* Introduced module `threadpool-virtual` for Java 21.
* Updated virtual threads documentation to refer to Java 21.
* Updated requirements that the releases should use Java 21, so that the documentation can properly render the virtual threads documentation.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2023-08-23 11:58:24 +02:00
Simone Bordet e91a68923a
Fixes #8926 - HttpClient GZIPContentDecoder should remove Content-Len… (#10326)
Now Content-Length and Content-Encoding are removed/modified by the decoder.
In this way, applications have a correct sets of headers to decide whether to decode the content themselves.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2023-08-21 08:58:22 +02:00
Simone Bordet b2477d1c38
Fixes #10160 - Verify PROXY_AUTHENTICATION is sent to forward proxies (#10162)
Now TunnelRequest.getURI() does not return null, so normalizeRequest() can properly apply the authentication headers.

Moved copy of a request to HttpRequest, so also the sub-type can be copied.
Fixed restore of destination in HttpProxy.HttpProxyClientConnectionFactory.newProxyConnection(): now doing it in the promise rather than in finally block.
Using the proxy destination (not the server's) to send subsequent CONNECT requests in case the first is not replied with 200.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2023-07-31 18:39:13 +02:00
Simone Bordet 87c24e7258
Fixes #8405 - onAllDataRead() is called twice under h2 if the stream … (#10174)
* Fixes #8405 - onAllDataRead() is called twice under h2 if the stream times out

Per Servlet semantic, HTTP/2 stream timeout should be ignored.

The code was trying to fail the read via `_contentDemander.onTimeout()`, but
then it was still calling `onContentProducible()`, which was returning `true`
because the state of the read was IDLE (all the request content was read) and
the request was suspended.

Now the code checks if the read was really failed; if it is not, then
`onContentProducible()` is not called and so the idle timeout is ignored.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2023-07-31 15:13:50 +02:00
Simone Bordet a5a0a6c887
Fixes #10145 - WritePendingException over HTTP/2 tunnel (#10146)
Method HTTP2StreamEndPoint.flush() has a "no pending operation" semantic, but the previous implementation was calling stream.data(), which may become a pending operation if the stream is congested.

Changed the implementation of flush() to return false in the IDLE and PENDING cases.
Now every flush() is converted to a write(), which has the same semantic as stream.data().

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2023-07-26 22:59:24 +02:00
Jan Bartel c8100b18b8
Update to bundle-plugin-5.1.9 (#9954) 2023-06-29 14:41:04 +02:00
Jan Bartel 7b80b0bbcb
Update plexus-utils to 4.0.0 (#9958)
* Update plexus-utils to 4.0.0

---------

Co-authored-by: Olivier Lamy <oliver.lamy@gmail.com>
2023-06-29 12:56:36 +02:00
Joakim Erdfelt 5b830a4466
Fixes #9795 - jetty-slf4j-impl is non-optional on some modules (#9800)
* jetty-slf4j-impl is non-optional on some modules
* Using appropriate slf4j impl depending on module.

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2023-06-05 06:37:05 -05:00
Ludovic Orban 871022f3b0 #9397 add trust store config to H3
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2023-05-26 23:09:24 +02:00
Ludovic Orban e30b23aca6 #9397 fix keystores with invalid Subject Alternate Names
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2023-05-26 23:09:24 +02:00
Ludovic Orban 7ac49cd43c
H3: Fix racy read from stream-less channel (#9761)
* #9655 introduce new Stream.Client.Listener.onNewStream() method to allow setting the channel's stream before sending any data to the network

Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2023-05-15 09:50:36 +02:00
Joakim Erdfelt ca3c1756ad
Updating to version 10.0.16-SNAPSHOT 2023-04-11 13:23:25 -05:00
Joakim Erdfelt 68017dbd00
Updating to version 10.0.15 2023-04-11 12:24:32 -05:00
Lachlan 24b7d06fd5
Issue #9464 - Add optional configuration to log user out after OpenID idToken expires. (Jetty-10) (#9528)
* improvements to logout from the OpenIdLoginService validate
* respect idToken expiry for lifetime of login
* fix checkstyle error
* Add respectIdTokenExpiry configuration
* changes from review
* rename respectIdTokenExpiry to logoutWhenIdTokenIsExpired
* changes from review

---------

Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2023-04-11 12:20:16 +10:00
Simone Bordet 278ec1be69
Fixes #9237 - Decouple QTP idleTimeout from pool shrink rate. (#9498)
Introduced `QueuedThreadPool.maxEvictCount` to be the number of idle threads that are evicted in one idle timeout.

When set to 1 (the default), the old behavior is reproduced: expiring 1 thread every idle timeout.
When set to larger values, allows to keep around the threads for the idle timeout (in case of further load spikes), but allows to quickly recover OS memory when they are truly idle.

For example, with 2000 threads, 30 seconds idle timeout and idleTimeoutMaxShrinkCount=1, it will take 995 minutes (about 16.5 hrs) to shrink the pool back to 10 threads.
By setting idleTimeoutMaxShrinkCount=100, the thread pool can be shrunk to 10 threads in about 10 minutes.

Note also that the new algorithm is more aggressive at shrinking the thread pool.
Previously, a small load might have been sufficient to never evict any thread, because all threads could take turns at executing jobs so that threads were mostly idle but would never really idle time out.
The new algorithm is more aggressive even in presence of a small load, so that if `minThreads` are sufficient to cope with the small load, then the other threads are evicted.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
Signed-off-by: gregw <gregw@webtide.com>
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
Co-authored-by: gregw <gregw@webtide.com>
Co-authored-by: Ludovic Orban <lorban@bitronix.be>
2023-03-31 15:36:34 +02:00
Joakim Erdfelt 4a761f4aee
Disable broken JDK19 test
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2023-03-21 07:40:02 -05:00