Commit Graph

1520 Commits

Author SHA1 Message Date
Greg Wilkins eafa7ab0d6
Fix #11756 empty byte array for no content in ChunkAccumulator (#11827)
Fix #11756 empty byte array for no content in ChunkAccumulator
2024-05-23 06:45:27 +10:00
Greg Wilkins 10d0898460
Fix #11811 insensitive header name set (#11823)
* Fix #11811 insensitive header name set

Fix #11811 insensitive header name set by:
 + Using a EnumSet and TreeSet to ensure no duplicates in the set
 + Using an ArrayList to preserve the ordering (not necessary, but useful).

* updates from review
2024-05-23 06:42:01 +10:00
Ludovic Orban 07991f41d3
Allow ContentListener and AsyncContentListener to throw Exception (#11825)
#11800 allow ContentListener and AsyncContentListener to throw Exception

Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2024-05-22 09:28:16 +02:00
Greg Wilkins 1b82757854
Fix Deprecated ClassMatcher #11767 (#11769)
Fix #11767 by making deprecated ClassMatcher class wrap the util ClassMatcher

Co-authored-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2024-05-21 10:42:33 +10:00
Greg Wilkins a1b3acb08a
Fixed header cache for unknown values (#11808)
Avoid adding the unknown marker into the CACHE index. Issue introduced in #11661 fixing #11659
2024-05-21 10:40:43 +10:00
Simone Bordet a4c297011b
Fixes #11072 - Jetty 12: CompleteCallbackHandler (#11786)
Introduced StateTrackingHandler.

StateTrackingHandler is a troubleshooting Handler that helps to identify those cases where the Handler/Request/Response APIs are used improperly.

In particular, it tracks the events described in StateTrackingHandler.Listener, such as the Handler callback not completed, or blocking demand callback, or a write callback not completed, etc.

It also provides dump() capabilities, so the current requests and their state is dumped to help troubleshooting.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2024-05-19 19:32:37 +02:00
Ludovic Orban c97c995642
Don't create circular throwables and don't throw StackOverflowError if one gets logged (#11793)
#11792 detect loops in throwables to avoid StackOverflowError

Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2024-05-17 11:39:01 +02:00
Simone Bordet a9b2da533f
Fixes #11763 - Race condition in QoSHandler. (#11772)
* Fixes #11763 - Race condition in QoSHandler.

Now using a read-write lock to atomically execute expire().
This guarantees that there are no races with resume().

The concurrency between handle() and resume(), which should be the most common case, is handled by atomic data structures.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2024-05-14 10:37:00 +02:00
Ludovic Orban 33bc4f7376 #11777 change Index to allow null string keys to avoid having to add null checks
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2024-05-14 09:37:08 +02:00
Joakim Erdfelt 9160108b6b Issue #11776 - NPE proteection in Request.getServerPort
If the HttpURI is scheme-less, the attempt to get the port can result in a NPE
2024-05-14 09:37:08 +02:00
Ludovic Orban c54141a4cb #11736 do not rethrow already thrown exception
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2024-05-13 12:05:10 +02:00
Simone Bordet ceaaa9167c HTTP/2 parser improvements.
Refactored length checks so that they are mostly performed once, rather than multiple times, during parsing.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2024-05-13 09:32:10 +02:00
Simone Bordet e8dd649520
Merged branch 'jetty-11.0.x' into 'jetty-12.0.x'.
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2024-05-13 09:28:09 +02:00
Joakim Erdfelt 3632a57f27
Merge branch 'release/12.0.9' into jetty-12.0.x 2024-05-07 14:23:44 -02:00
Greg Wilkins b78e478ec4
Experiment with fully virtual VirtualThreadPool (#11501)
Virtual threads are used for all threading.
2024-05-07 19:10:48 +10:00
Lachlan 40abe265ff
Merge pull request #11753 from jetty/jetty-12.0.x-11748-PathMappings-MiddleGlob
Issue #11748 - fix in PathMappings for websocket pathParam matching
2024-05-07 11:57:31 +10:00
Olivier Lamy 9d21483e2a
jetty 12.0.x merge 11 (#11750)
* [10.0.x] Bump the build-deps group with 10 updates

Bumps the build-deps group with 10 updates:

| Package | From | To |
| --- | --- | --- |
| [org.apache.maven.plugin-tools:maven-plugin-tools-api](https://github.com/apache/maven-plugin-tools) | `3.11.0` | `3.12.0` |
| [org.apache.maven.plugin-tools:maven-plugin-annotations](https://github.com/apache/maven-plugin-tools) | `3.11.0` | `3.12.0` |
| [org.apache.maven.plugins:maven-deploy-plugin](https://github.com/apache/maven-deploy-plugin) | `3.1.1` | `3.1.2` |
| [org.apache.maven.plugins:maven-install-plugin](https://github.com/apache/maven-install-plugin) | `3.1.1` | `3.1.2` |
| [org.apache.maven.plugins:maven-jar-plugin](https://github.com/apache/maven-jar-plugin) | `3.3.0` | `3.4.1` |
| [org.apache.maven.plugins:maven-plugin-plugin](https://github.com/apache/maven-plugin-tools) | `3.11.0` | `3.12.0` |
| [org.apache.maven.plugins:maven-shade-plugin](https://github.com/apache/maven-shade-plugin) | `3.5.2` | `3.5.3` |
| [org.apache.maven.plugins:maven-source-plugin](https://github.com/apache/maven-source-plugin) | `3.3.0` | `3.3.1` |
| [org.apache.maven.plugins:maven-gpg-plugin](https://github.com/apache/maven-gpg-plugin) | `3.2.2` | `3.2.4` |
| [com.github.spotbugs:spotbugs-maven-plugin](https://github.com/spotbugs/spotbugs-maven-plugin) | `4.8.3.1` | `4.8.4.0` |


Updates `org.apache.maven.plugin-tools:maven-plugin-tools-api` from 3.11.0 to 3.12.0
- [Release notes](https://github.com/apache/maven-plugin-tools/releases)
- [Commits](https://github.com/apache/maven-plugin-tools/compare/maven-plugin-tools-3.11.0...maven-plugin-tools-3.12.0)

Updates `org.apache.maven.plugin-tools:maven-plugin-annotations` from 3.11.0 to 3.12.0
- [Release notes](https://github.com/apache/maven-plugin-tools/releases)
- [Commits](https://github.com/apache/maven-plugin-tools/compare/maven-plugin-tools-3.11.0...maven-plugin-tools-3.12.0)

Updates `org.apache.maven.plugin-tools:maven-plugin-annotations` from 3.11.0 to 3.12.0
- [Release notes](https://github.com/apache/maven-plugin-tools/releases)
- [Commits](https://github.com/apache/maven-plugin-tools/compare/maven-plugin-tools-3.11.0...maven-plugin-tools-3.12.0)

Updates `org.apache.maven.plugins:maven-deploy-plugin` from 3.1.1 to 3.1.2
- [Release notes](https://github.com/apache/maven-deploy-plugin/releases)
- [Commits](https://github.com/apache/maven-deploy-plugin/compare/maven-deploy-plugin-3.1.1...maven-deploy-plugin-3.1.2)

Updates `org.apache.maven.plugins:maven-install-plugin` from 3.1.1 to 3.1.2
- [Release notes](https://github.com/apache/maven-install-plugin/releases)
- [Commits](https://github.com/apache/maven-install-plugin/compare/maven-install-plugin-3.1.1...maven-install-plugin-3.1.2)

Updates `org.apache.maven.plugins:maven-jar-plugin` from 3.3.0 to 3.4.1
- [Release notes](https://github.com/apache/maven-jar-plugin/releases)
- [Commits](https://github.com/apache/maven-jar-plugin/compare/maven-jar-plugin-3.3.0...maven-jar-plugin-3.4.1)

Updates `org.apache.maven.plugins:maven-plugin-plugin` from 3.11.0 to 3.12.0
- [Release notes](https://github.com/apache/maven-plugin-tools/releases)
- [Commits](https://github.com/apache/maven-plugin-tools/compare/maven-plugin-tools-3.11.0...maven-plugin-tools-3.12.0)

Updates `org.apache.maven.plugins:maven-shade-plugin` from 3.5.2 to 3.5.3
- [Release notes](https://github.com/apache/maven-shade-plugin/releases)
- [Commits](https://github.com/apache/maven-shade-plugin/compare/maven-shade-plugin-3.5.2...maven-shade-plugin-3.5.3)

Updates `org.apache.maven.plugins:maven-source-plugin` from 3.3.0 to 3.3.1
- [Commits](https://github.com/apache/maven-source-plugin/compare/maven-source-plugin-3.3.0...maven-source-plugin-3.3.1)

Updates `org.apache.maven.plugins:maven-gpg-plugin` from 3.2.2 to 3.2.4
- [Release notes](https://github.com/apache/maven-gpg-plugin/releases)
- [Commits](https://github.com/apache/maven-gpg-plugin/compare/maven-gpg-plugin-3.2.2...maven-gpg-plugin-3.2.4)

Updates `com.github.spotbugs:spotbugs-maven-plugin` from 4.8.3.1 to 4.8.4.0
- [Release notes](https://github.com/spotbugs/spotbugs-maven-plugin/releases)
- [Commits](https://github.com/spotbugs/spotbugs-maven-plugin/compare/spotbugs-maven-plugin-4.8.3.1...spotbugs-maven-plugin-4.8.4.0)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugin-tools:maven-plugin-tools-api
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: build-deps
- dependency-name: org.apache.maven.plugin-tools:maven-plugin-annotations
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: build-deps
- dependency-name: org.apache.maven.plugin-tools:maven-plugin-annotations
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: build-deps
- dependency-name: org.apache.maven.plugins:maven-deploy-plugin
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: build-deps
- dependency-name: org.apache.maven.plugins:maven-install-plugin
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: build-deps
- dependency-name: org.apache.maven.plugins:maven-jar-plugin
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: build-deps
- dependency-name: org.apache.maven.plugins:maven-plugin-plugin
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: build-deps
- dependency-name: org.apache.maven.plugins:maven-shade-plugin
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: build-deps
- dependency-name: org.apache.maven.plugins:maven-source-plugin
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: build-deps
- dependency-name: org.apache.maven.plugins:maven-gpg-plugin
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: build-deps
- dependency-name: com.github.spotbugs:spotbugs-maven-plugin
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: build-deps
...

Signed-off-by: dependabot[bot] <support@github.com>

* [11.0.x] Bump the integration-deps group with 2 updates

Bumps the integration-deps group with 2 updates: [org.wildfly.security:wildfly-elytron](https://github.com/wildfly-security/wildfly-elytron) and [com.google.cloud:google-cloud-datastore](https://github.com/googleapis/java-datastore).


Updates `org.wildfly.security:wildfly-elytron` from 2.3.1.Final to 2.4.1.Final
- [Commits](https://github.com/wildfly-security/wildfly-elytron/compare/2.3.1.Final...2.4.1.Final)

Updates `com.google.cloud:google-cloud-datastore` from 2.19.0 to 2.19.1
- [Release notes](https://github.com/googleapis/java-datastore/releases)
- [Changelog](https://github.com/googleapis/java-datastore/blob/main/CHANGELOG.md)
- [Commits](https://github.com/googleapis/java-datastore/compare/v2.19.0...v2.19.1)

---
updated-dependencies:
- dependency-name: org.wildfly.security:wildfly-elytron
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: integration-deps
- dependency-name: com.google.cloud:google-cloud-datastore
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: integration-deps
...

Signed-off-by: dependabot[bot] <support@github.com>

* [10.0.x] Bump the dev-dependencies group with 20 updates

Bumps the dev-dependencies group with 20 updates:

| Package | From | To |
| --- | --- | --- |
| [com.google.errorprone:error_prone_annotations](https://github.com/google/error-prone) | `2.26.1` | `2.27.0` |
| [com.google.errorprone:error_prone_core](https://github.com/google/error-prone) | `2.26.1` | `2.27.0` |
| [commons-codec:commons-codec](https://github.com/apache/commons-codec) | `1.16.1` | `1.17.0` |
| commons-io:commons-io | `2.16.0` | `2.16.1` |
| [io.grpc:grpc-core](https://github.com/grpc/grpc-java) | `1.62.2` | `1.63.0` |
| [org.codehaus.plexus:plexus-utils](https://github.com/codehaus-plexus/plexus-utils) | `4.0.0` | `4.0.1` |
| [org.jboss.logmanager:jboss-logmanager](https://github.com/jboss-logging/jboss-logmanager) | `3.0.4.Final` | `3.0.6.Final` |
| [com.puppycrawl.tools:checkstyle](https://github.com/checkstyle/checkstyle) | `10.15.0` | `10.16.0` |
| [com.hazelcast:hazelcast](https://github.com/hazelcast/hazelcast) | `5.3.6` | `5.4.0` |
| [org.bouncycastle:bcpkix-jdk15to18](https://github.com/bcgit/bc-java) | `1.77` | `1.78.1` |
| [org.bouncycastle:bcprov-jdk15to18](https://github.com/bcgit/bc-java) | `1.77` | `1.78.1` |
| [org.bouncycastle:bcutil-jdk15to18](https://github.com/bcgit/bc-java) | `1.77` | `1.78.1` |
| [org.apache.maven.resolver:maven-resolver-api](https://github.com/apache/maven-resolver) | `1.9.18` | `1.9.20` |
| [org.apache.maven.resolver:maven-resolver-connector-basic](https://github.com/apache/maven-resolver) | `1.9.18` | `1.9.20` |
| [org.apache.maven.resolver:maven-resolver-impl](https://github.com/apache/maven-resolver) | `1.9.18` | `1.9.20` |
| [org.apache.maven.resolver:maven-resolver-spi](https://github.com/apache/maven-resolver) | `1.9.18` | `1.9.20` |
| [org.apache.maven.resolver:maven-resolver-transport-file](https://github.com/apache/maven-resolver) | `1.9.18` | `1.9.20` |
| org.apache.maven.resolver:maven-resolver-transport-http | `1.9.18` | `1.9.20` |
| [org.apache.maven.resolver:maven-resolver-util](https://github.com/apache/maven-resolver) | `1.9.18` | `1.9.20` |
| org.apache.maven.scm:maven-scm-provider-jgit | `2.0.1` | `2.1.0` |


Updates `com.google.errorprone:error_prone_annotations` from 2.26.1 to 2.27.0
- [Release notes](https://github.com/google/error-prone/releases)
- [Commits](https://github.com/google/error-prone/compare/v2.26.1...v2.27.0)

Updates `com.google.errorprone:error_prone_core` from 2.26.1 to 2.27.0
- [Release notes](https://github.com/google/error-prone/releases)
- [Commits](https://github.com/google/error-prone/compare/v2.26.1...v2.27.0)

Updates `commons-codec:commons-codec` from 1.16.1 to 1.17.0
- [Changelog](https://github.com/apache/commons-codec/blob/master/RELEASE-NOTES.txt)
- [Commits](https://github.com/apache/commons-codec/compare/rel/commons-codec-1.16.1...rel/commons-codec-1.17.0)

Updates `commons-io:commons-io` from 2.16.0 to 2.16.1

Updates `io.grpc:grpc-core` from 1.62.2 to 1.63.0
- [Release notes](https://github.com/grpc/grpc-java/releases)
- [Commits](https://github.com/grpc/grpc-java/compare/v1.62.2...v1.63.0)

Updates `org.codehaus.plexus:plexus-utils` from 4.0.0 to 4.0.1
- [Release notes](https://github.com/codehaus-plexus/plexus-utils/releases)
- [Commits](https://github.com/codehaus-plexus/plexus-utils/compare/plexus-utils-4.0.0...plexus-utils-4.0.1)

Updates `org.jboss.logmanager:jboss-logmanager` from 3.0.4.Final to 3.0.6.Final
- [Release notes](https://github.com/jboss-logging/jboss-logmanager/releases)
- [Commits](https://github.com/jboss-logging/jboss-logmanager/compare/3.0.4.Final...3.0.6.Final)

Updates `com.puppycrawl.tools:checkstyle` from 10.15.0 to 10.16.0
- [Release notes](https://github.com/checkstyle/checkstyle/releases)
- [Commits](https://github.com/checkstyle/checkstyle/compare/checkstyle-10.15.0...checkstyle-10.16.0)

Updates `com.google.errorprone:error_prone_core` from 2.26.1 to 2.27.0
- [Release notes](https://github.com/google/error-prone/releases)
- [Commits](https://github.com/google/error-prone/compare/v2.26.1...v2.27.0)

Updates `com.hazelcast:hazelcast` from 5.3.6 to 5.4.0
- [Release notes](https://github.com/hazelcast/hazelcast/releases)
- [Commits](https://github.com/hazelcast/hazelcast/compare/v5.3.6...v5.4.0)

Updates `org.bouncycastle:bcpkix-jdk15to18` from 1.77 to 1.78.1
- [Changelog](https://github.com/bcgit/bc-java/blob/main/docs/releasenotes.html)
- [Commits](https://github.com/bcgit/bc-java/commits)

Updates `org.bouncycastle:bcprov-jdk15to18` from 1.77 to 1.78.1
- [Changelog](https://github.com/bcgit/bc-java/blob/main/docs/releasenotes.html)
- [Commits](https://github.com/bcgit/bc-java/commits)

Updates `org.bouncycastle:bcutil-jdk15to18` from 1.77 to 1.78.1
- [Changelog](https://github.com/bcgit/bc-java/blob/main/docs/releasenotes.html)
- [Commits](https://github.com/bcgit/bc-java/commits)

Updates `org.bouncycastle:bcprov-jdk15to18` from 1.77 to 1.78.1
- [Changelog](https://github.com/bcgit/bc-java/blob/main/docs/releasenotes.html)
- [Commits](https://github.com/bcgit/bc-java/commits)

Updates `org.bouncycastle:bcutil-jdk15to18` from 1.77 to 1.78.1
- [Changelog](https://github.com/bcgit/bc-java/blob/main/docs/releasenotes.html)
- [Commits](https://github.com/bcgit/bc-java/commits)

Updates `org.apache.maven.resolver:maven-resolver-api` from 1.9.18 to 1.9.20
- [Release notes](https://github.com/apache/maven-resolver/releases)
- [Commits](https://github.com/apache/maven-resolver/compare/maven-resolver-1.9.18...maven-resolver-1.9.20)

Updates `org.apache.maven.resolver:maven-resolver-connector-basic` from 1.9.18 to 1.9.20
- [Release notes](https://github.com/apache/maven-resolver/releases)
- [Commits](https://github.com/apache/maven-resolver/compare/maven-resolver-1.9.18...maven-resolver-1.9.20)

Updates `org.apache.maven.resolver:maven-resolver-impl` from 1.9.18 to 1.9.20
- [Release notes](https://github.com/apache/maven-resolver/releases)
- [Commits](https://github.com/apache/maven-resolver/compare/maven-resolver-1.9.18...maven-resolver-1.9.20)

Updates `org.apache.maven.resolver:maven-resolver-spi` from 1.9.18 to 1.9.20
- [Release notes](https://github.com/apache/maven-resolver/releases)
- [Commits](https://github.com/apache/maven-resolver/compare/maven-resolver-1.9.18...maven-resolver-1.9.20)

Updates `org.apache.maven.resolver:maven-resolver-transport-file` from 1.9.18 to 1.9.20
- [Release notes](https://github.com/apache/maven-resolver/releases)
- [Commits](https://github.com/apache/maven-resolver/compare/maven-resolver-1.9.18...maven-resolver-1.9.20)

Updates `org.apache.maven.resolver:maven-resolver-transport-http` from 1.9.18 to 1.9.20

Updates `org.apache.maven.resolver:maven-resolver-util` from 1.9.18 to 1.9.20
- [Release notes](https://github.com/apache/maven-resolver/releases)
- [Commits](https://github.com/apache/maven-resolver/compare/maven-resolver-1.9.18...maven-resolver-1.9.20)

Updates `org.apache.maven.scm:maven-scm-provider-jgit` from 2.0.1 to 2.1.0

Updates `org.apache.maven.resolver:maven-resolver-connector-basic` from 1.9.18 to 1.9.20
- [Release notes](https://github.com/apache/maven-resolver/releases)
- [Commits](https://github.com/apache/maven-resolver/compare/maven-resolver-1.9.18...maven-resolver-1.9.20)

Updates `org.apache.maven.resolver:maven-resolver-impl` from 1.9.18 to 1.9.20
- [Release notes](https://github.com/apache/maven-resolver/releases)
- [Commits](https://github.com/apache/maven-resolver/compare/maven-resolver-1.9.18...maven-resolver-1.9.20)

Updates `org.apache.maven.resolver:maven-resolver-spi` from 1.9.18 to 1.9.20
- [Release notes](https://github.com/apache/maven-resolver/releases)
- [Commits](https://github.com/apache/maven-resolver/compare/maven-resolver-1.9.18...maven-resolver-1.9.20)

Updates `org.apache.maven.resolver:maven-resolver-transport-file` from 1.9.18 to 1.9.20
- [Release notes](https://github.com/apache/maven-resolver/releases)
- [Commits](https://github.com/apache/maven-resolver/compare/maven-resolver-1.9.18...maven-resolver-1.9.20)

Updates `org.apache.maven.resolver:maven-resolver-transport-http` from 1.9.18 to 1.9.20

Updates `org.apache.maven.resolver:maven-resolver-util` from 1.9.18 to 1.9.20
- [Release notes](https://github.com/apache/maven-resolver/releases)
- [Commits](https://github.com/apache/maven-resolver/compare/maven-resolver-1.9.18...maven-resolver-1.9.20)

---
updated-dependencies:
- dependency-name: com.google.errorprone:error_prone_annotations
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: com.google.errorprone:error_prone_core
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: commons-codec:commons-codec
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: commons-io:commons-io
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: io.grpc:grpc-core
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: org.codehaus.plexus:plexus-utils
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: org.jboss.logmanager:jboss-logmanager
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: com.puppycrawl.tools:checkstyle
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: com.google.errorprone:error_prone_core
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: com.hazelcast:hazelcast
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: org.bouncycastle:bcpkix-jdk15to18
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: org.bouncycastle:bcprov-jdk15to18
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: org.bouncycastle:bcutil-jdk15to18
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: org.bouncycastle:bcprov-jdk15to18
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: org.bouncycastle:bcutil-jdk15to18
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: org.apache.maven.resolver:maven-resolver-api
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: org.apache.maven.resolver:maven-resolver-connector-basic
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: org.apache.maven.resolver:maven-resolver-impl
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: org.apache.maven.resolver:maven-resolver-spi
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: org.apache.maven.resolver:maven-resolver-transport-file
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: org.apache.maven.resolver:maven-resolver-transport-http
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: org.apache.maven.resolver:maven-resolver-util
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: org.apache.maven.scm:maven-scm-provider-jgit
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: org.apache.maven.resolver:maven-resolver-connector-basic
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: org.apache.maven.resolver:maven-resolver-impl
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: org.apache.maven.resolver:maven-resolver-spi
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: org.apache.maven.resolver:maven-resolver-transport-file
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: org.apache.maven.resolver:maven-resolver-transport-http
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: org.apache.maven.resolver:maven-resolver-util
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>

* revert git scm upgrade which break the build

Signed-off-by: Olivier Lamy <olamy@apache.org>

* hazelcast upgrade would need more work

Signed-off-by: Olivier Lamy <olamy@apache.org>

* [10.0.x] Bump the integration-deps group with 2 updates

Bumps the integration-deps group with 2 updates: [org.wildfly.security:wildfly-elytron](https://github.com/wildfly-security/wildfly-elytron) and [com.google.cloud:google-cloud-datastore](https://github.com/googleapis/java-datastore).


Updates `org.wildfly.security:wildfly-elytron` from 2.3.1.Final to 2.4.1.Final
- [Commits](https://github.com/wildfly-security/wildfly-elytron/compare/2.3.1.Final...2.4.1.Final)

Updates `com.google.cloud:google-cloud-datastore` from 2.19.0 to 2.19.1
- [Release notes](https://github.com/googleapis/java-datastore/releases)
- [Changelog](https://github.com/googleapis/java-datastore/blob/main/CHANGELOG.md)
- [Commits](https://github.com/googleapis/java-datastore/compare/v2.19.0...v2.19.1)

---
updated-dependencies:
- dependency-name: org.wildfly.security:wildfly-elytron
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: integration-deps
- dependency-name: com.google.cloud:google-cloud-datastore
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: integration-deps
...

Signed-off-by: dependabot[bot] <support@github.com>

* [11.0.x] Bump the dev-dependencies group across 1 directory with 5 updates

Bumps the dev-dependencies group with 5 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [ch.qos.logback:logback-core](https://github.com/qos-ch/logback) | `1.5.3` | `1.5.6` |
| [com.google.errorprone:error_prone_annotations](https://github.com/google/error-prone) | `2.27.0` | `2.27.1` |
| [com.google.errorprone:error_prone_core](https://github.com/google/error-prone) | `2.27.0` | `2.27.1` |
| [com.hazelcast:hazelcast](https://github.com/hazelcast/hazelcast) | `5.3.6` | `5.4.0` |
| org.apache.maven.scm:maven-scm-provider-jgit | `2.0.1` | `2.1.0` |



Updates `ch.qos.logback:logback-core` from 1.5.3 to 1.5.6
- [Commits](https://github.com/qos-ch/logback/compare/v_1.5.3...v_1.5.6)

Updates `com.google.errorprone:error_prone_annotations` from 2.27.0 to 2.27.1
- [Release notes](https://github.com/google/error-prone/releases)
- [Commits](https://github.com/google/error-prone/compare/v2.27.0...v2.27.1)

Updates `com.google.errorprone:error_prone_core` from 2.27.0 to 2.27.1
- [Release notes](https://github.com/google/error-prone/releases)
- [Commits](https://github.com/google/error-prone/compare/v2.27.0...v2.27.1)

Updates `com.google.errorprone:error_prone_core` from 2.27.0 to 2.27.1
- [Release notes](https://github.com/google/error-prone/releases)
- [Commits](https://github.com/google/error-prone/compare/v2.27.0...v2.27.1)

Updates `com.hazelcast:hazelcast` from 5.3.6 to 5.4.0
- [Release notes](https://github.com/hazelcast/hazelcast/releases)
- [Commits](https://github.com/hazelcast/hazelcast/compare/v5.3.6...v5.4.0)

Updates `org.apache.maven.scm:maven-scm-provider-jgit` from 2.0.1 to 2.1.0

---
updated-dependencies:
- dependency-name: ch.qos.logback:logback-core
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: com.google.errorprone:error_prone_annotations
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: com.google.errorprone:error_prone_core
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: com.google.errorprone:error_prone_core
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: com.hazelcast:hazelcast
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: org.apache.maven.scm:maven-scm-provider-jgit
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>

* revert maven-scm-provider-jgit upgrade

Signed-off-by: Olivier Lamy <olamy@apache.org>

* revert hazelcast upgrade

Signed-off-by: Olivier Lamy <olamy@apache.org>

* fix upperbound

Signed-off-by: Olivier Lamy <olamy@apache.org>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Olivier Lamy <olamy@apache.org>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-06 11:01:05 +02:00
Lachlan Roberts 932c03bcab Issue #11748 - fix in PathMappings for websocket pathParam matching
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2024-05-06 16:41:03 +10:00
Joakim Erdfelt 8e7e42201a
Updating to version 12.0.10-SNAPSHOT 2024-05-03 09:28:36 -04:00
Joakim Erdfelt efe8023327
Updating to version 12.0.9 2024-05-03 09:02:37 -04:00
Simone Bordet 724273be09
Fixes #11679 - Jetty 12.0.8 seems to leak connection when it encounters earlyEOF. (#11719)
* Fixes #11679 - Jetty 12.0.8 seems to leak connection when it encounters earlyEOF.
* Changed HttpConnection.RequestHandler.earlyEOF() to produce EofException instead of BadMessageException, as it is more appropriate.
* Changed handling of HttpChannelState.onFailure() to not fail the write side unless there is a pending write callback.
* Early EOF events now produce a EofException that is also an HttpException.
* Now failures only impact pending writes, so that it would be possible to write an HTTP error response.

---------

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
Co-authored-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2024-05-03 08:56:09 -04:00
Greg Wilkins 8e456c4ee5
Improve javadoc to fix #11720 (#11731)
* Improve javadoc to fix #11720

---------

Co-authored-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2024-05-03 08:51:30 -04:00
Jan Bartel b11d1cb27f
Issue #11709 fix jetty-with-custom-class.xml file and use it (#11716)
* Issue #11709 fix jetty-with-custom-class.xml file and use it
2024-05-03 04:14:46 +02:00
Simone Bordet 42ba415318
Addendum to #11566. (#11722)
* Addendum to #11566.

Restored methods that were removed in WebAppClassLoader.Context.

Fixed method signatures for deprecated method -- they must take the deprecated ClassMatcher, not the newly introduced one.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2024-05-02 17:40:49 +02:00
Ludovic Orban cfee4fe433
Fix flaky `testUploadWithPendingReadConcurrentServerCloseClosesStream()` (#11693)
* #11692 fix flaky testUploadWithPendingReadConcurrentServerCloseClosesStream()

Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2024-05-02 12:10:37 +02:00
Ludovic Orban 45e474b7d5
Improve ThreadLimitHandler (#11723)
* Improve ThreadLimitHandler

Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2024-05-02 12:09:29 +02:00
Jan Bartel d7e66dd818
Issue #11707 fix PropertyFileLoginModuleTest (#11714) 2024-05-01 03:20:37 +02:00
Jan Bartel 70599e41cf
Issue #11705 remove unused decorate.mod and etc files (#11717) 2024-05-01 03:20:19 +02:00
Jan Bartel e9c71be811
Jetty 12.0.x refactor common maven plugin classes (#11651)
* Issue #11514 - Cleanup `jetty.webapp.addServerClasses` property behavior for ee10/ee9/ee8

* Merging patterns (default -> env -> config)
* Moved ClassMatcher to util
* System Server Classes
* Renaming to Hidden/Protected
* Updated for loss of dump.war
* Update jetty-core/jetty-ee/src/main/java/org/eclipse/jetty/ee/WebappClassLoading.java
* fixed OSGi tests
* Ensure default hidden server and system classes.
* Fixed ee9 OSGi to load jetty-ee
* Adding more deprecations
* Changing XML demos/tests to use new getter names
* rollback xml changes in ee9/ee8
* Fix ee8 maven plugin
* Make jetty-maven dependency optional in ee9 to match ee10

---------

Co-authored-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
Co-authored-by: gregw <gregw@webtide.com>
2024-04-25 20:53:40 -05:00
Joakim Erdfelt 429809e549
Issue #11453 - Testcase for reported issue (#11454) 2024-04-25 09:54:20 -05:00
Lachlan 0c144845d4
update SizeLimitHandler with fixes needed for appengine tests (#11570)
* update SizeLimitHandler with fixes needed for appengine tests

---------

Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2024-04-24 16:28:28 -05:00
Simone Bordet c10ec98b5b
Fixes #11597 - Document Request Customizers.
Documented the request customizers in the programming guide.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2024-04-24 18:57:16 +02:00
Simone Bordet e491fc3d30
Document the rewrite Jetty module. (#11686)
* Document the rewrite Jetty module.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2024-04-24 18:19:34 +02:00
Ludovic Orban bb633b8a0f
Fix `HttpFields.Mutable.Wrapper.computeField()` (#11688)
* #11687 make HttpFields.Mutable.Wrapper.computeField() call onRemoveField() and remove the field when null is returned by computeFn
* #11687 replace IAE with NPE
* #11687 replace collect(Collectors.toList()) with toList()

---------

Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2024-04-23 18:13:01 -05:00
Joakim Erdfelt 4cc938429f
Issue #11648 - Introducing HttpDateTime class. (#11672)
+ Introduces HTTP (and Cookie) Date/Time parsing
  according to spec algorithms.
+ Introduces formatting according to spec
  mandated preferred RFC 1123 format.
+ Deprecate DateParser
2024-04-23 17:17:59 -05:00
Ludovic Orban a1450f5cf7
Fix for some invalid server behaviors when a client is aborting a request (#11637)
* #11631 abort instead of rethrow when the exception handler in handle() throws an exception
* fix ee10 state machine error when client aborts
* H3: wire client-sent reset packet on abort
* H3: only fail finished streams when fill interested is false

---------

Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2024-04-23 08:30:21 -05:00
Ludovic Orban 656e904d91
Fix buffer leak in `HttpClientStreamTest.testUploadWithConcurrentServerCloseClosesStream()` (#10431)
Fix buffer leak in HTTP and FCGI when the server is being shut down while there are in-flight requests

Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2024-04-22 16:15:58 +02:00
Olivier Lamy d2beb2bd3f
Issue #9487 Upgrade to Infinispan 15 (#11503)
* upgrade to final release of infinispan 15

---------

Signed-off-by: Olivier Lamy <olamy@apache.org>
2024-04-22 10:28:00 +02:00
Joakim Erdfelt 24f3a249c4
Merge remote-tracking branch 'refs/remotes/origin/jetty-11.0.x' into jetty-12.0.x
# Conflicts:
#	documentation/jetty-documentation/src/main/asciidoc/programming-guide/maven/jetty-maven-plugin.adoc
2024-04-19 15:13:52 -05:00
Joakim Erdfelt 766a058786
Introduce various aliases to start.jar options (#11639)
* Issue #5944 - introduce --files=<uri>|<location> alias
* Issue #5945 - introduce --skip-create-files=<moduleName> alias
* Issue #5946 - introduce --add-config-dir=<path> alias
* Updating documentation for new names
2024-04-19 11:10:42 -05:00
Joakim Erdfelt 8b1c6bcd06
Issue #11659 - Properly ignore OWS before field values. (#11661)
* implemented changes to CACHE and parseFields to handle OWS properly for all UNMATCHED_VALUE headers.
* added 3 new OWS test cases (that fail in 12.0.x HEAD btw) to handle this OWS case.
2024-04-18 20:33:25 -05:00
Ludovic Orban 74b76b9a2e
Merge remote-tracking branch 'origin/jetty-11.0.x' into merge/jetty-12.0.x/11660-upgrade-quiche-to-0_21_0 2024-04-18 10:41:37 +02:00
Greg Wilkins 33feac33e7
Revert "Revert NON_POOLING change" (#11649)
This reverts commit 2bf7d6cecc.
2024-04-18 15:52:03 +10:00
Ludovic Orban 940c7440b4 #11655 use awaitility to assert as the queue could be updated after the response was received by the client
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2024-04-17 10:32:06 +02:00
Ludovic Orban 8d95000e2c fix comment
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2024-04-17 10:31:30 +02:00
Ludovic Orban f281cad479 add comment
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2024-04-17 10:31:30 +02:00
Ludovic Orban d8b910c843 fix activation pattern
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2024-04-17 10:31:30 +02:00
Ludovic Orban 43e3ee7406 resync quiche structure with its JNA mapping
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2024-04-17 10:31:30 +02:00
Ludovic Orban 94a63e494e resync quiche structure with its JNA mapping
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2024-04-17 10:31:30 +02:00
Ludovic Orban 740c44ca4c remove unneeded settings
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2024-04-17 10:31:30 +02:00
Ludovic Orban 08223be155 update to use the finalized foreign api of JDK 22
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2024-04-17 10:31:30 +02:00
Lachlan ea7982732f
Merge pull request #11645 from jetty/jetty-12.0.x-11420-qpackDecoder
Issue #11420 - fix dynamic table referencing in QpackDecoder
2024-04-16 11:27:26 +10:00
Lachlan Roberts 284083e5f0 PR #11645 - add end-to-end test for dynamic table reference
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2024-04-15 13:41:54 +10:00
Lachlan Roberts 8f19a29ccb PR #11645 - changes from review
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2024-04-15 12:13:12 +10:00
Greg Wilkins 30bee710f1
Move ClassMatcher to core to have a consistent fix for addServerClasses in all environments (#11566)
* Issue #11514 - Cleanup `jetty.webapp.addServerClasses` property behavior for ee10/ee9/ee8

* Fix test

* Merging patterns (default -> env -> config)

* Moved ClassMatcher to util

* Adding more deprecations

* Changing XML demos/tests to use new getter names

* rollback xml changes in ee9/ee8

---------

Co-authored-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
Co-authored-by: Jan Bartel <janb@webtide.com>
2024-04-12 17:31:47 +10:00
Lachlan Roberts fa5c6aa320 PR #11645 - fix calculation for relative index from an Entry
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2024-04-11 14:34:21 +10:00
Lachlan Roberts 600dbfee25 Issue #11420 - fix dynamic table referencing in QpackDecoder
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2024-04-11 13:01:30 +10:00
Joakim Erdfelt 83526f77d3
Issue #11490 - fixing CustomRequestLog.setIgnorePaths (#11638) 2024-04-10 16:32:44 -05:00
Ludovic Orban 66c1c3b798 #11594 add alias check to allow all context resources to be served, as for the equivalent servlet tests
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2024-04-04 17:50:25 +02:00
Joakim Erdfelt 6320839bff
Issue #11488 - unset port is -1 to be compatible with Java classlib (#11578)
+ Changing unset port in HttpURI to -1 (from 0)
+ Changing unset port in HostPort to -1 (from 0)
2024-04-04 10:26:15 -05:00
Joakim Erdfelt b3ef872d6b
Updating to version 12.0.9-SNAPSHOT 2024-03-29 15:20:11 -05:00
Joakim Erdfelt ffffdcc3c8
Updating to version 12.0.8 2024-03-29 14:31:57 -05:00
Joakim Erdfelt 58293ad1f1
Update Dependencies [12.0.x] - March 2024 (#11591)
* Bump jetty-setuid-jna
* Updating dependencies
* Updating dependencies in jetty-ee10-annotations
* Updating dependencies in jetty-ee10-plus
* Fix jetty-ee8-osgi-boot deps
* Fix jetty-ee9-osgi-boot deps
* Address osgi duplicate resource plugin
2024-03-29 12:23:22 -05:00
Simone Bordet 1b05d49fd8
Allow configuring showCause in ErrorHandler (#11587)
Allows to suppress "caused by" in error message, not only the stacks traces.
ErrorHandler.showCause = false by default.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
Co-authored-by: Dennis Hoersch <dennis.hoersch@springernature.com>
Co-authored-by: Dennis Hoersch <dhs3000+ghtu@posteo.de>
2024-03-29 16:37:56 +01:00
Ludovic Orban 0451bd4b86
Disable Conscrypt tests on aarch64 (#11590)
Disabled client and tests on aarch64 cpu, enabled client tests on all OS.

Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2024-03-29 11:16:06 +01:00
Greg Wilkins 9b6944e04a
Remove usages of URIUtil.toURI and URIUtil.split (#11577)
* Issue #11567 - fix relative path for resourceBase set in DefaultServlet

Signed-off-by: Lachlan Roberts <lachlan@webtide.com>

* Remove the ResourceFactory adaption from between baseResource and a HttpContent.Factory

* Remove toURI usage

* ensure ee9 DefaultServlet encodes the pathInContext

* Moved toURI functionality to ResourceFactory

* use context baseResource if baseResource not set

* removed usages of URIUtil.split

* fixed javadoc

* updates from review

* updates from review

* updates from review

* updates from review

* fixed resource leak in test

* fixed resource leak in test

* updates from review

* Fixes to URIUtil for Windows (#11585)

* Fixes for Windows
* Remove test that is not needed

* inlined resolveOrNew

---------

Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
Co-authored-by: Lachlan Roberts <lachlan@webtide.com>
Co-authored-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2024-03-28 16:32:03 +01:00
Ludovic Orban 89c41b2550
Cleanup Resource IO (#11364)
Refactorings to rationalize and simplify how we do IO with resources internally by introducing the IOResources helper.

Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2024-03-28 11:08:44 +01:00
Simone Bordet e00a71a00f
Fixes #11583 - Broken HTTP/3 tests (#11584)
Initialized PEM directories for both client and server.
Added [lib] section that was missing due to #11263.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2024-03-27 22:37:33 +01:00
Olivier Lamy ee82c2b761
Issue #10387 configure doclint to not generate verbose useless warning, remove obsolete parameter (#11544)
Signed-off-by: Olivier Lamy <olamy@apache.org>
2024-03-27 22:27:21 +01:00
Joakim Erdfelt 05aa1e1b08
Issue #11495 - Add UriCompliance rules that follow the HTTP / URI / Servlet specs for illegal & suspicious characters (#11496)
* Issue #11495 - Add UriCompliance rules that follow the HTTP / URI / Servlet specs for illegal & suspicious characters
* more illegalPathCharacterData test cases
* Correcting SUSPICIOUS_PATH_CHARACTERS semantic (encoded and decoded)
* Check for illegal and suspicious characters as we are parsing the path.
* Only look for ambiguous paths if we know there are dots or encodings.

---------
Co-authored-by: gregw <gregw@webtide.com>
2024-03-27 09:28:30 -05:00
Joakim Erdfelt 121999bf7c
Issue #11539 restore old behavior of `Resource.copyTo()` with regards to existing destination files. (#11540)
* Issue #11539 restore old behavior of Resource.copyTo()
* Do not delete destination resource
  if it exists before copy to restore
  the behavior to what we had in
  Jetty 9/10/11.
* Formalizing IO.resolvePath()
2024-03-27 07:38:00 -05:00
Jan Bartel 92cb3cbe7e
Issue #11572 add check for isDeployable when hot deploy file changes (#11576)
* Issue #11572 add check for isDeployable when hot deploy file changes
2024-03-27 09:59:36 +01:00
Joakim Erdfelt 9defd5d416
Issue #11548 - Replication as jetty-ee10-webapp testcase (#11550)
* Issue #11548 - Replication as jetty-ee10-webapp testcase
* Correct order of WebAppContext.stop

---------

Co-authored-by: Jan Bartel <janb@webtide.com>
Co-authored-by: gregw <gregw@webtide.com>
2024-03-26 07:04:49 -05:00
Lachlan 028221e343
Ensure request is set for ContextScopeListener in EE10 (#11518)
* Ensure request is set for ContextScopeListener in EE10
2024-03-25 19:18:00 +01:00
Jan Bartel 2fc7ad87d8
Reintroduce Cross Context Dispatch in Jetty 12 (#11451)
Re-introduce some support for cross context dispatch
2024-03-25 18:44:44 +01:00
Ludovic Orban 13acb1779e
Fix ClosedFileSystemException on hot redeploy (#11549)
#11548 implemented workaround for JDK-8291712

Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2024-03-25 11:13:10 +01:00
Simone Bordet 258a5e04de
Fixes #10870 - How to set HttpConfiguration.securePort when the HTTPS port is dynamic? (#11547)
Introduced NetworkConnector.Listener to notify of open/close events.
Applications can register a listener on one NetworkConnector, be notified when it opens, and configure other components (for example using the NetworkConnector.localPort).

Cleaned up ManagedSelector.CloseConnections, which had code that was not used, and fixed the close of non-connection elements such as the ServerSocketChannel and DatagramChannel (when acceptors=0).

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2024-03-24 20:52:56 +01:00
Simone Bordet 4a22ab3f82
Improvements and cleanups to ErrorHandler. (#11556)
Defaulted showStacks to false, to reduce false positives reported by penetration testing tools.
Deprecated ErrorHandler.badMessageError(), as it was not invoked anymore.
Implemented HttpStreamOverHTTP[2|3].onBadMessage() that was left as TODO.
Simplified the same code for HTTP/1.
Moved invocation of ComplianceViolation.Listener.onRequestEnd() to HandlerInvoker.completeStream().

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2024-03-24 20:51:50 +01:00
Simone Bordet ae6f98ed47
Fixes #7647 - Document org.eclipse.jetty.client.Socks4Proxy "secure" parameter. (#11533)
Added javadocs and documentation.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2024-03-22 16:46:07 +01:00
Simone Bordet 0ab9f68491
Fixes #5857 - Deprecate AbstractConnectionPool "callback" methods. (#11542)
Deprecated idle(), acquired(), released() for removal.
Renamed removed(), now deprecated, to onRemoved() to match with onCreated().
Kept onCreated() and onRemoved() as they are the only methods that are not racy.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2024-03-22 16:16:50 +01:00
Greg Wilkins 51fc906d37
Optimized ReservedThreadExecutor with ThreadIdPool (#11498)
* Introduced ThreadIdPool and replaced ThreadLocal with it
 * Modified ReservedThreadExecutor to be backed by a ThreadIdPool of semaphores

Signed-off-by: Ludovic Orban <lorban@bitronix.be>
Co-authored-by: Simone Bordet <simone.bordet@gmail.com>
Co-authored-by: gregw <gregw@webtide.com>
Co-authored-by: Ludovic Orban <lorban@bitronix.be>
2024-03-21 16:53:14 +01:00
Greg Wilkins 3d49cd3b3c
Allow resolve to return non-existent resources (#11476)
Fix #11411 by allowing non-existent resources to be returned from resolve
Co-authored-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
Co-authored-by: Ludovic Orban <lorban@bitronix.be>
2024-03-21 12:49:50 +00:00
Ludovic Orban ef87cee33d fix copyTo(directory) for resources not backed by a path
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2024-03-20 18:48:02 +01:00
Ludovic Orban 5de0141423 Make sure testResourceCopyToDirectory() tests copying a file resource to a target folder
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2024-03-20 18:48:02 +01:00
Ludovic Orban 435384420f Fix Resource.copyTo() + add tests
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2024-03-20 18:48:02 +01:00
Dennis Hoersch d39dde5213
Allows to change the default ErrorHandler response type (#11522)
Allows to set the default mime type for the error response in `ErrorHandler`.
2024-03-19 19:17:12 +01:00
Simone Bordet 763999d08a
Merged branch 'jetty-11.0.x' into 'jetty-12.0.x'.
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2024-03-19 11:43:29 +01:00
Ludovic Orban 2067ec81e8 upgrade quiche to version 0.20.1
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2024-03-15 17:32:37 +01:00
Greg Wilkins c25e1aa7ff
Fix PerfRegression by preparing field cache (#11517)
Fix #11513 by preparing the field cache
2024-03-13 21:42:14 +01:00
Greg Wilkins c05ae3bb83
Implemented addBeanFromConstructor (#11319)
Added mechanism to safely add beans from a super constructor of ContainerLifeCycle


Co-authored-by: Simone Bordet <simone.bordet@gmail.com>
2024-03-13 17:52:55 +01:00
Greg Wilkins ffb5458720
Restored removed constructor (#11512)
Fix #11509 by restoring removed constructor as deprecated
2024-03-13 17:49:58 +01:00
Ludovic Orban 0a2382408f
Fix StatisticsHandler not receiving implicit status 200 (#11487)
#11482 introduce new onComplete event in EventsHandler and use it to record status in StatisticsHandler

Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2024-03-13 17:30:33 +01:00
Joakim Erdfelt 369d9f7e2f
Merge remote-tracking branch 'origin/release/12.0.7' into jetty-12.0.x 2024-03-06 11:00:50 -06:00
Greg Wilkins 80f912a121
Improve HTTP parsing long look-ahead (#11486)
Use ByteBuffer.getLong to look for entire request (GET / HTTP/1.1) or response (HTTP/1.1 200 OK) line with 2 long lookups.  Failing that, a single long lookup is sufficient to determine the common methods and/or HttpVersion.

* Cleanup generator also

* Added a fallback int lookup
2024-03-05 17:34:14 +01:00
Joakim Erdfelt 18b2a7c201
Updating to version 12.0.8-SNAPSHOT 2024-02-29 16:00:27 -06:00
Joakim Erdfelt c89aca8fd3
Updating to version 12.0.7 2024-02-29 15:18:56 -06:00
Greg Wilkins 4155e7bc25
Add suppressed failures in Callback failed (#11435)
If an exception is thrown during failure handling, then record the original failure as a suppressed Throwable on the thrown exception
2024-02-29 20:06:50 +01:00
Greg Wilkins 56e05a973f
HttpURI toURI passes all info (#11468)
* HttpURI toURI passes all info

Fix #11465 and #7750
HttpURI.toURI user and fragment are retained.
Use to URI(String) constructor, as all URI constructors will parse the URI anyway.

* HttpURI toURI passes all info

Fix #11465 and #7750
HttpURI.toURI user and fragment are retained.
Use to URI(String) constructor, as all URI constructors will parse the URI anyway.
2024-02-29 17:46:06 +01:00
Simone Bordet 561b8da4dd Changed CrossOriginHandler default to allow no origin and no credentials.
This makes the default configuration more secure and explicitly requires configuration from users.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2024-02-29 15:47:20 +01:00
gregw ee8823bd57 Merge remote-tracking branch 'origin/jetty-11.0.x' into jetty-12.0.x
# Conflicts:
#	jetty-core/jetty-http2/jetty-http2-tests/src/test/java/org/eclipse/jetty/http2/tests/DynamicTableTest.java
2024-02-28 14:41:32 +01:00