Commit Graph

982 Commits

Author SHA1 Message Date
Joakim Erdfelt 405a6b671d
Merge pull request #3017 from eclipse/jetty-10.x-issue-3011-move-httpcompliance-to-config
Issue #3011 - Moving HttpCompliance to HttpConfiguration
2018-10-22 16:24:28 -05:00
Joakim Erdfelt fbd9fc1da7 Issue #3011 - Removing HttpConnectionFactory.getHttpCompliance()
+ Can get HttpCompliance from HttpConfiguration now
+ Signature change to HttpConnection to avoid duplicate arguments
  on constructor.

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2018-10-22 16:12:11 -05:00
Simone Bordet 70cf2046ce Merged branch 'jetty-9.4.x' into 'jetty-10.0.x'. 2018-10-22 22:49:54 +02:00
Simone Bordet 0236f4064a Issue #2998 - Cleanup the dump implementation.
Fixed dump() in HTTP2Session.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2018-10-22 22:47:54 +02:00
Simone Bordet e93ebee6b7 Issue #2998 - Cleanup the dump implementation.
Fixed dump in HTTP2Session.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2018-10-22 17:45:59 +02:00
Greg Wilkins be120aa3b5 Merge remote-tracking branch 'origin/jetty-9.4.x' into jetty-10.0.x 2018-10-22 12:20:39 +11:00
Greg Wilkins 15e1c73f9c
Cleanup the dump implementation (#2998)
* Cleanup the dump implementation
* improved the clarity of utility methods for dump and updated most dump methods
* fixed upgrade filter dump
* Improved dump after review
* Moved dumpObjects to Dumpable
* implemented dumpBeans with dumpObjects
* less verbose dump
* Dump streams
* fixed dump test

Signed-off-by: Greg Wilkins <gregw@webtide.com>
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2018-10-22 11:53:59 +11:00
Greg Wilkins 609ca60707 Merge remote-tracking branch 'origin/jetty-9.4.x' into jetty-10.0.x 2018-10-17 09:34:26 +11:00
Greg Wilkins 5c8d3f041b Cleanup to avoid duplication method (noticed while reviewing #2977) 2018-10-16 14:30:09 +11:00
Simone Bordet 8b14cbe5f8 Issue #2948 - Require JDK 11 for Jetty 10.x.
Removed JDK 8 only module that was testing ALPN.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2018-10-12 14:01:12 +02:00
Simone Bordet 813b526cb2 Issue #2948 - Require JDK 11 for Jetty 10.x.
Removed references to ALPN API.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2018-10-12 09:45:23 +02:00
Simone Bordet 3f907c9efc
Merge pull request #2973 from eclipse/jetty-10.0.x-2948-require_jdk11
Jetty 10.0.x 2948 require jdk11
2018-10-10 23:48:15 +02:00
Simone Bordet eaddaf64a8 Merged branch 'jetty-9.4.x' into 'jetty-10.0.x'. 2018-10-10 10:27:31 +02:00
Simone Bordet 34511670d1 Improved HTTP2Stream.toString().
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2018-10-10 10:27:02 +02:00
Simone Bordet 7134b35286 Merged branch 'jetty-9.4.x' into 'jetty-10.0.x'. 2018-10-09 23:21:43 +02:00
Simone Bordet 6b6036a21c Issue #2771 - h2spec test failures.
Fixed Stream.isRemotelyClosed() to imply CLOSING as well.
Fixed logging.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2018-10-09 23:21:00 +02:00
Simone Bordet 1fe6c92ee9 Issue #2948 - Require JDK 11 for Jetty 10.x.
First pass at making Jetty 10.x require JDK 11.

* Removed JDK 8 modules (in particular ALPN and ALPN *.mod files).
* Removed profiles targeting JDK 8, 9 and 10.
* Updated dependencies to newer versions that support JDK 11.
* Temporarily commented out the Jetty Maven Plugins due to
maven-plugin-plugin not working with JDK 11.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2018-10-03 11:15:30 +02:00
olivier lamy 32912b922d Merge branch 'jetty-9.4.x' into jetty-10.0.x 2018-09-06 17:39:57 +10:00
olivier lamy 1504b7da93 Revert "Issue #2431 - Upgrade to Junit 5 (#2436)"
This reverts commit e24fc48539.
2018-09-06 09:27:11 +10:00
Joakim Erdfelt e24fc48539 Issue #2431 - Upgrade to Junit 5 (#2436)
+ Changes needed for new Junit 5
+ Migrating from Vintage junit API to Jupiter junit API
+ Relies on SNAPSHOT jetty-test-helper
  - this will be a formal release once this issue has been
    resolved satisfactory
+ Have jenkins always pull latest SNAPSHOT for each build
+ Adding jetty.snapshots repository
+ Using surefire 2.22.0 per advice from junit
+ Ensuring <reuseForks>true</reuseForks> to work around issue junit-team/junit5#801
+ Disabling <forkMode>always</forkMode> in maven-surefire-plugin
  due to bug https://github.com/junit-team/junit5/issues/801
+ OSGi tests must remain at vintage due to PaxExam
+ Moving from vintage TestingDir to jupiter WorkDir
+ Fixing imports to use jupiter, not vintage
+ Migrating vintage ExpectedException to jupiter assertThrows
+ Migrating vintage TestName to jupiter TestInfo
+ Migrating @RunWith(Parameterized.class)
  to @ParameterizedTest with Argument Sources
+ Migrating assertTrue(val.contains(needle))
  to assertThat(val, containsString(needle))
+ Aligning junit versions per recommendations from @sormuras
+ Adjusting parameter order change for assertEquals()
+ Test LifeCycle Annotation Migration

junit 4      | junit 5 / jupiter
------------ | -----------
@Before      | @BeforeEach
@After       | @AfterEach
@BeforeClass | @BeforeAll
@AfterClass  | @AfterAll

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
Signed-off-by: olivier lamy <oliver.lamy@gmail.com>
2018-09-05 21:27:18 +10:00
Joakim Erdfelt a3f1592c50 Issue #2431 - Upgrade to Junit 5 (#2436)
+ Changes needed for new Junit 5
+ Migrating from Vintage junit API to Jupiter junit API
+ Relies on SNAPSHOT jetty-test-helper
  - this will be a formal release once this issue has been
    resolved satisfactory
+ Have jenkins always pull latest SNAPSHOT for each build
+ Adding jetty.snapshots repository
+ Using surefire 2.22.0 per advice from junit
+ Ensuring <reuseForks>true</reuseForks> to work around issue junit-team/junit5#801
+ Disabling <forkMode>always</forkMode> in maven-surefire-plugin
  due to bug https://github.com/junit-team/junit5/issues/801
+ OSGi tests must remain at vintage due to PaxExam
+ Moving from vintage TestingDir to jupiter WorkDir
+ Fixing imports to use jupiter, not vintage
+ Migrating vintage ExpectedException to jupiter assertThrows
+ Migrating vintage TestName to jupiter TestInfo
+ Migrating @RunWith(Parameterized.class)
  to @ParameterizedTest with Argument Sources
+ Migrating assertTrue(val.contains(needle))
  to assertThat(val, containsString(needle))
+ Aligning junit versions per recommendations from @sormuras
+ Adjusting parameter order change for assertEquals()
+ Test LifeCycle Annotation Migration

junit 4      | junit 5 / jupiter
------------ | -----------
@Before      | @BeforeEach
@After       | @AfterEach
@BeforeClass | @BeforeAll
@AfterClass  | @AfterAll

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
Signed-off-by: olivier lamy <oliver.lamy@gmail.com>
2018-09-05 10:07:17 +10:00
Jesse McConnell 8dd05ac3f7
merge from 9.4.x 2018-09-04 13:48:43 -05:00
Jesse McConnell dcf6a8fa9f
Updating to version 9.4.13-SNAPSHOT 2018-08-30 10:48:22 -05:00
Jesse McConnell 2720868475
Updating to version 9.4.12.v20180830 2018-08-30 08:56:44 -05:00
Simone Bordet eb87415ed6 Issue #2871 - Server reads -1 after client resets HTTP/2 stream.
HttpInput.consume() now checks if the state is already failed,
and if so it does not change it when consuming the input.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2018-08-30 11:47:50 +02:00
Greg Wilkins 5afe2e215f Merge remote-tracking branch 'origin/jetty-9.4.x' into jetty-10.0.x 2018-08-23 17:17:46 +10:00
Simone Bordet 0f6ae93ff8 Issue #2828 - AbstractHTTP2ServerConnectionFactory concurrent connect low performance.
Fixed test failure.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2018-08-22 21:35:58 +02:00
Simone Bordet 6015ad5ead
Merge pull request #2831 from eclipse/jetty-9.4.x-2828-http2_connection_listener_contention
Fixes #2828 - AbstractHTTP2ServerConnectionFactory concurrent connect low performance.
2018-08-22 16:21:17 +02:00
Simone Bordet 97a2f3bdf2 Fixes #2828 - AbstractHTTP2ServerConnectionFactory concurrent connect low performance.
Improved JMX for the HTTP2SessionContainer.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2018-08-21 21:55:29 +02:00
Greg Wilkins f15bd225b4 Merge remote-tracking branch 'origin/jetty-9.4.x' into jetty-10.0.x 2018-08-21 14:47:19 +10:00
Simone Bordet d8e0f8df12 Issue #2832 - Wrong initialization of HTTP/2 UnknownBodyParser.
Fixed parser initialization.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2018-08-19 18:04:47 +02:00
Simone Bordet 467bbbe1f9 Issue #2722 - Improve configurability for SETTINGS frames.
Added one more test.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2018-08-19 16:29:30 +02:00
Simone Bordet 1f785eed28 Fixes #2832 - Wrong initialization of HTTP/2 UnknownBodyParser.
Now UnknownBodyParser is correctly initialized in Parser.init().

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2018-08-19 16:28:15 +02:00
Simone Bordet d3e75c5936 Fixes #2828 - AbstractHTTP2ServerConnectionFactory concurrent connect low performance.
Now HTTP/2 sessions are not added to the Jetty component tree,
but rather just held by HTTP2SessionContainer that is added to
the Jetty container tree at startup.

HTTP2SessionContainer uses a concurrent Set to hold HTTP/2 sessions
to have good add/remove performance.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2018-08-19 14:54:14 +02:00
Simone Bordet 03af18ca82
Merge pull request #2797 from eclipse/jetty-9.4.x-2796-max_concurrent_streams_local_timeout
Fixes #2796 - Max local stream count exceeded when request fails.
2018-08-14 16:21:03 +02:00
Simone Bordet 1e439535c1 Cosmetics.
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2018-08-14 15:18:49 +02:00
Simone Bordet 35541d0c1e Fixes #2796 - Max local stream count exceeded when request fails.
Now releasing the connection only after the stream has been reset, so
we are sure that the stream has been closed and its count decremented.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2018-08-13 11:44:57 +02:00
Kazuhiro Sera 96218e8bc4 Fix typos detected by github.com/client9/misspell
Signed-off-by: Kazuhiro Sera <seratch@gmail.com>
2018-08-10 23:52:16 +09:00
WalkerWatch b249021b6d Merge branch 'jetty-9.4.x' into jetty-10.0.x 2018-08-07 21:18:25 -04:00
Olivier Lamy c8fe66dd3a
#2778 upgrade h2spec-maven-plugin to 0.4 (#2779)
Signed-off-by: olivier lamy <oliver.lamy@gmail.com>
2018-08-07 21:17:07 +10:00
Joakim Erdfelt 9390c2df3f Merge remote-tracking branch 'origin/jetty-9.4.x' into jetty-10.0.x 2018-08-06 09:04:58 -05:00
Simone Bordet 8c296e7d52 Issue #2757 - Possible double release of HTTP/2 ByteBuffers.
Clarified the NetworkBuffer API semantic so that the code is now simpler.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2018-08-01 18:24:42 +02:00
Simone Bordet 9a22dd820a Issue #2679 - h2spec compliance.
Integrated h2spec execution in the Maven build.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2018-07-21 15:55:43 +02:00
Simone Bordet 5e9a45eca1
Merge pull request #2742 from lachlan-roberts/jetty-9.4.x-2679-h2spec_compliance
Issue #2679 - h2spec compliance Huffman encoding
2018-07-21 14:16:48 +02:00
lachan-roberts b5e607068f Issue #2679 - HTTP/2 Spec Compliance
now handling padding over 7 bits with Exception
throwing CompressionExceptions instead of StreamExceptions
fixed issue with non terminal encoded strings

Signed-off-by: lachan-roberts <lachlan@webtide.com>
2018-07-21 22:10:12 +10:00
Simone Bordet 4b0becbbe0 Issue #2679 - h2spec compliance.
Fixed content-length compliance.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2018-07-21 12:52:44 +02:00
Simone Bordet 4ace2e4d8d Issue #2679 - h2spec compliance.
Integrated HPACK modifications to comply with the specification.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2018-07-21 11:42:31 +02:00
Lachlan Roberts da213d5876 Issue #2679 - HTTP/2 Spec Compliance
Now throwing exceptions for incorrect padding and EOS in content in Huffman.decode()

Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2018-07-21 11:32:34 +10:00
Lachlan Roberts a72fe7e3c7 Issue #2679 - HTTP/2 Spec Compliance
Added tests for the problems with the Huffman encoding

Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2018-07-20 22:40:05 +10:00
Greg Wilkins 0da9225056 dynamic table resize
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-07-19 13:49:40 +02:00