72 Commits

Author SHA1 Message Date
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
56e0069ed3 Fixes #9386 - SSL reports deprecated setting, but ssl.ini still uses it.
Removed references to deprecated properties `jetty.sslContext.[key|trust]StoreAbsolutePath`.
Updated documentation to explicitly report that the path can be absolute.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2023-07-31 19:26:20 +02:00
Simone Bordet
c967b100e7
Fixes #10105 - Document that Request objects are not reusable. (#10113)
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2023-07-17 16:44:44 +02:00
Joakim Erdfelt
a9c596e3d7
Updating various old/moved URL references found across project (jetty-10.0.x) (#10098)
* Now that the migration of `https://eclipse.org/jetty/` to `https://eclipse.dev/jetty/` has occurred, it is time to review the URI use in our project

+ Updated URLs in poms
+ Added more URIs to XmlConfiguration
+ Updated URLs in module files
+ Updated URLs in documentation
+ Updated URLs in HTML
+ Correcting bad double-scheme URLs (eg: `http://https://www.eclipse...`)
+ Updating text in *.mod files
+ Removing `/current/` from path `/jetty/documentation/current/`
+ Fixing mailing list URL

---------

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2023-07-14 12:38:45 -05:00
Simone Bordet
d4e9f6a520
Fixes #7091 - Add SOCKS5 support.
Spin-off of the work in #9653.
Simplified the implementation, fixed a few mistakes, added more tests.
Made the implementation of Socks5.Authentication more extensible (for example to implement GSSAPI authentication).
Updated documentation.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2023-05-03 19:40:55 +02: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
Lachlan
dde6e04731
Issue #7121 - Add documentation for websocket configuration. (#8931)
* Improvements to WebSocket documentation.
* Documented configuration parameters.
* Documented and added a test case for PathSpec usage.

Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
Co-authored-by: Simone Bordet <simone.bordet@gmail.com>
2023-03-28 19:42:44 +02:00
Simone Bordet
e6de81084d
Improved HttpClient TLS documentation about server host name verification. (#9494)
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2023-03-14 18:49:48 +01:00
gregw
7a7d69a69f Happy no year
Remove modification date from copyright notice and instead just have the
project inception year.

Signed-off-by: gregw <gregw@webtide.com>
2023-02-15 15:22:32 +11:00
Joakim Erdfelt
7e1de8b1e2
Issue #8973 - Rework KeyStoreScanner handling for symlink related changes (#9014)
* Issue #8973 - Rework KeyStoreScanner handling for symlink related changes

+ Removed changes from #8786 and #8787
+ More test cases
+ revert jetty.sslContext.reload.followLinks boolean
+ Scanner should follow its own linkOptions setting
+ remove bad documentation in module-ssl-reload.adoc

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
Co-authored-by: Lachlan Roberts <lachlan@webtide.com>
2022-12-07 09:24:19 -06:00
Simone Bordet
e33c9a1284
Improved documentation about virtual threads. (#8900)
Added programming guide section about Jetty threading model.
Updated operations guide with new sections about virtual threads.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2022-11-21 21:16:10 +01:00
Simone Bordet
b43e2e5600
Fixes #8913 - Review Jetty XML syntax to allow calling JDK methods (#8915)
* Fixes #8913 - Review Jetty XML syntax to allow calling JDK methods

Now `<Call>`, `<Get>` and `<Set>` elements can use the `class` attribute
to specify the exact class to perform method lookup.

Improved support for `<Property>`, `<SystemProperty>` and `<Env>` so that
attribute `name` is now optional (as specified in the DTD), and a
`deprecated` attribute may be present instead.
This is necessary to terminally deprecate properties that have
no replacement.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2022-11-18 19:36:48 +01:00
Lachlan
690220fc40
Merge pull request #8787 from eclipse/jetty-10.0.x-8786-KeyStoreScanner-Symlink
Issue #8786 - add configuration for KeyStoreScanner to not resolve aliases
2022-11-10 17:17:59 +11:00
Lachlan Roberts
0a14cca307 changes from review - rename resolveAlias to followLinks
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2022-11-03 20:37:55 +11:00
Lachlan Roberts
8607e3ef15 changes to ssl-reload module & documentation from review
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2022-11-03 18:54:53 +11:00
Gili Tzabari
e2e59478ce Update in response to PR comments. 2022-10-24 13:17:25 -04:00
Simone Bordet
77ad0189ba
Fixes #8532 - Review System.nanoTime() usages. (#8535)
* Fixes #8532 - Review System.nanoTime() usages.

Introduced o.e.j.util.NanoTime class to deal with nanoTimes.

Now NanoTime.now() should be used instead of System.nanoTime(),
and various <unit>[elapsed|since|until]() methods to calculate nanoTimes.

Furthermore, comparing 2 nanoTimes should be done via isBefore(),
rather than using the < operator, which is wrong as specified in
the System.nanoTime() javadocs.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2022-09-06 09:30:02 +02:00
Lai Jiang
0604d8db6b
Fix an error (#7924) 2022-04-27 09:18:37 -05:00
Simone Bordet
454cb19bf5
Fixes #7575 - Misleading docs for HttpClientTransportDynamic (#7800)
Improved documentation for the clear-text dynamic transport case.
Fixed HttpClientTransportDynamic javadocs.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2022-03-29 12:00:18 +02:00
Joakim Erdfelt
cb127793e5
Happy New Year 2022 (#7459)
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2022-01-27 10:42:30 -06:00
Artur
56d88ddb5e
Make example actually work 2022-01-19 14:22:24 +02:00
Artur
b262006bf0
Update parameter name to match new version
The code change was done in eclipse/jetty.project#5142
2022-01-19 13:09:36 +02:00
Simone Bordet
51123c7cd1
Fixes #7369 - Document CustomRequestLog
Added documentation to the programming guide.
Removed related old documentation.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2022-01-12 17:12:01 +01:00
Simone Bordet
251649f0a9
Generate plantuml images in the images/ directory.
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2022-01-12 15:52:00 +01:00
Simone Bordet
d055c1c524
Changed URLs from adoptopenjdk.net to adoptium.net.
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2022-01-12 15:14:31 +01:00
Simone Bordet
b51465f91a
Fixes #7369 - Document CustomRequestLog (#7370)
* Fixes #7369 - Document CustomRequestLog

Introduced `JavadocIncludeExtension` to include javadoc snippets in the documentation.
Added documentation about request logging.
Updated `CustomRequestLog` javadocs.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2022-01-12 10:27:53 +01:00
Simone Bordet
528ac643ac
Issue #7299 - Enabling the logging-logback module prevents eclipse re… (#7335)
* Issue #7299 - Enabling the logging-logback module prevents eclipse remote debugging.

Added documentation as discussed in the issue.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2022-01-03 10:47:43 +01:00
Simone Bordet
10c2ffb996 Issue #6728 - QUIC and HTTP/3
Documentation.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2021-12-20 09:33:38 +01:00
Simone Bordet
f14064039b Fixes #7113 - Improve Unix-Domain client documentation.
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2021-11-17 15:12:58 +01:00
Lachlan
dd0613193c
Merge pull request #7000 from eclipse/jetty-10.0.x-1087-WellKnown
Issue #1087 - add module for a .well-known handler
2021-11-17 09:51:26 +11:00
Lachlan Roberts
1d88a52647 Issue #1087 - changes from review
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2021-11-12 13:55:08 +11:00
Lachlan Roberts
c7f09e5a7a Issue #2690 - changes to documentation from review
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2021-11-12 13:40:13 +11:00
Lachlan Roberts
5bfe2f47f5 Issue #2690 - clarify websocket message ordering in documentation
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2021-11-11 15:07:23 +11:00
Lachlan Roberts
1c91fbe9b9 Issue #1087 - improvements to the documentation
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2021-10-25 10:54:30 +11:00
Lachlan Roberts
dcc6cc435f Issue #1087 - add documentation and distribution test
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2021-10-22 16:43:22 +11:00
Simone Bordet
4793092f9d
Fixes #5229 - WebSocket documentation. (#6623)
Added WebSocket server-side documentation.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2021-09-15 19:42:27 +02:00
Lachlan Roberts
4d579d682c Issue #6406 - backport jetty-jaspi changes to 10.0.x
Co-authored-by: Frode Carlsen <frode.odde.carlsen@nav.no>
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2021-08-27 11:30:16 +10:00
Simone Bordet
4af93b5e19
Issue #6476 - warn on exec (#6597)
Fixes #6476 - Show message if JVM args are present but new JVM is spawned

* Improved documentation by correctly redacting out `jetty-halt.xml`,
an XML file that is only necessary for rendering the documentation.
* Added WARN message when new JVM is spawned.
* Updated documentation.
* Updated --list-config to report whether a JVM is forked.
* Added test case.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2021-08-13 17:32:53 +02:00
Simone Bordet
49a08450c2
Fixes #6043 - Reimplement UnixSocket support based on Java 16. (#6522)
Fixes #6043 - Reimplement UnixSocket support based on Java 16.

* Introduced new module "jetty-server-unixdomain".
It uses reflection to access the Java 16 Unix-Domain classes to keep compatibility with the other modules and the build.
* Added Jetty module with only HTTP/1.1 support for now (requires review of the modules to reuse them with various connectors).
* Updated documentation to mention UnixDomainServerConnector.
* Updated client libraries to support Unix-Domain.
* Updated PROXY protocol implementation to support Unix-Domain.
* Replaced unix.socket.tmp with better named jetty.unixdomain.dir property.
Defaulted jetty.unixdomain.dir property to system property user.home under Windows.
Simplified code that runs Unix-Domain tests.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2021-08-05 10:04:37 +02:00
Simone Bordet
34c03ddf1d Fixed cross references from "link:#" to "xref:".
Fixed links prepending "link:".
Fixed Asciidoctor errors reported during build.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2021-07-16 17:11:13 +02:00
Simone Bordet
f240d7ac42 Updated plugin to redact the Jetty version.
This allows to generate the documentation for a version different than the POM's.

Updated Asciidoctor attributes, removing the unused ones and converting them
all to kebab-case (lower case separated by dash), as Asciidoctor requires them
to be lowercase.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2021-07-16 17:11:13 +02:00
Simone Bordet
c1eca6b7b6 Issue 5805 - Documentation images
Now the plantuml generated images will be in the `images/` directory
and any external image linked should also be saved in the `images/` directory.

Unfortunately this does not render well in the IntelliJ editor,
but it renders correctly in the HTML documentation.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2021-07-08 16:44:14 +02:00
Greg Wilkins
4673846635
Compliance modes documentation (#6312)
Added doco on compliance modes

Signed-off-by: Greg Wilkins <gregw@webtide.com>
Co-authored-by: Simone Bordet <simone.bordet@gmail.com>
2021-06-24 15:20:05 +10:00
Lachlan Roberts
7880917f64 fix some formatting and links in contribution guide
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2021-06-23 15:48:36 +10:00
Greg Wilkins
291218be3c
Fix #6442 Remove IRC documentation (#6454)
Fix #6442 Removed IRC references
2021-06-23 09:14:24 +10:00
Simone Bordet
b8d6e3f010
Fixes #6410 - Use SocketAddress instead of InetSocketAddress. (#6414)
* Fixes #6410 - Use SocketAddress instead of InetSocketAddress.

Removed usages of InetSocketAddress in method signatures where possible.
Deprecated old methods, and added new methods with SocketAddress.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2021-06-17 10:18:08 +02:00
Jan Bartel
d4a8c38b87
Issue #6347 Fix session-store-gcloud,logging-jcl-capture,logging-log4j1-capture (#6349)
* Issue #6347 Fix session-store-gcloud,logging-jcl-capture,logging-log4j1-capture

Signed-off-by: Jan Bartel <janb@webtide.com>
2021-06-03 11:26:47 +10:00
Simone Bordet
67e2b4af2f
Fixes #5306 - Default jetty.*.acceptors should be 1. (#6236)
* Fixes #5306 - Default jetty.*.acceptors should be 1.

Changed the acceptor default to 1, with -1 calculating a value based on the number of cores.
Updated documentation.
Fixed a glitch in ManagedSelector.getMaxSelectedKeys() to return long, not double.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2021-05-20 09:34:07 +02:00
Jan Bartel
f05fc25900
Issue #6153 Swap order of jetty maven plugin jvmArgs for EXTERNAL (#6155)
* Issue #6153 Swap order of jetty maven plugin jvmArgs for EXTERNAL

Signed-off-by: Jan Bartel <janb@webtide.com>
2021-04-29 11:18:38 +10:00
Simone Bordet
78dc11b648 Documented WebSocketClient.
Updates after review.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2021-04-27 11:04:42 +02:00