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
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
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
Greg Wilkins
971ca22367
8.1.2.3
...
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-07-19 12:50:54 +02:00
Greg Wilkins
fa46013cf7
8.1.2.2
...
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-07-19 12:24:24 +02:00
Greg Wilkins
98ea112fd3
wip
...
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-07-18 12:26:55 +02:00
Greg Wilkins
42844f2c5f
WIP
...
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-07-18 11:08:05 +02:00
Greg Wilkins
0ad4b4483b
WIP
...
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-07-15 19:22:31 +02:00
Greg Wilkins
a9819ebb01
review fixes
...
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-07-12 11:50:53 +02:00
Greg Wilkins
44801d8ff3
WIP
...
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-07-08 18:08:36 +00:00
Greg Wilkins
9fd80e8524
WIP
...
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-07-08 15:17:39 +00:00
Greg Wilkins
10ec53319a
WIP
...
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-07-08 14:56:42 +00:00
Greg Wilkins
b42017b942
WIP
...
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-07-08 14:44:38 +00:00
Greg Wilkins
4d09806d4e
Issue #2571 HPACK table overflow ( #2589 )
...
When an entry that is too large for the dynamic table is added, the entire table should be evicted as per the RFC. Previously we were throwing a 431 Bad Message. This will require that the OP should retest #1134 .
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-05-30 09:22:00 +02:00
Greg Wilkins
953611fb72
reverted inadvertant commit with #2585
...
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-05-29 17:31:56 +02:00
Greg Wilkins
436c00b0af
Fixed #2585
...
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-05-29 15:48:53 +02:00
Greg Wilkins
bcb9fa3b32
Merge pull request #2257 from lachlan-roberts/jetty-9.4.x-2206-ReferenceEquality
...
Resolved errorprone ReferenceEquality warnings #2206
2018-03-07 11:11:40 +11:00
Lachlan Roberts
020ebde77c
found additional ReferenceEquality warnings which have been resolved
...
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2018-03-06 14:28:11 +11:00
Lachlan Roberts
a639ee9275
Resolved errorprone MissingOverride warnings #2206
...
`@Override` was added to methods which were missing the annotation #2206
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2018-03-01 13:59:25 +11:00
Greg Wilkins
ec51926622
reduce fragility of tests
...
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-02-19 19:22:32 +11:00
Joakim Erdfelt
fa4c7b0ca9
Issue #2108 - Updating license headers for year 2018
2018-01-09 08:39:37 -06:00
Simone Bordet
07838b057f
Happy New Year 2017.
2017-01-19 18:54:03 +01:00
Simone Bordet
347c48d657
Revert "resolve merge and update license headers"
...
This reverts commit 53b31b03dd
, reversing
changes made to 4565c186d7
.
2017-01-19 18:26:43 +01:00
Jesse McConnell
53b31b03dd
resolve merge and update license headers
2017-01-19 09:33:16 -06:00
Simone Bordet
bc3c3ff9c8
Improved logging.
2016-12-12 16:00:12 +01:00
Greg Wilkins
ec0b1ea847
Issue #1134 HPACK
...
Improved exceptions when receiving unknown index or a field that cannot be indexed.
2016-12-02 13:40:58 +11:00
Greg Wilkins
b6b33bd679
Issue #1134 HPACK
...
Added test that demonstrates large headers are incorrectly indexed
Do not index fields if too large to fit
2016-12-02 10:27:14 +11:00
Simone Bordet
33eb768d69
Fixes #1029 - Restore Request.setHttpVersion().
...
Also cleaned up the asymmetry in MetaData between the setter
(setHttpVersion()) and the getter (getVersion()).
2016-10-25 15:45:29 +02:00
Greg Wilkins
e53ea55f48
Issue #752 SETTINGS_MAX_HEADER_LIST_SIZE
...
Defined missing status codes (removed old/wrong javadoc)
Changed use of 413 to 431
Received SETTINGS_MAX_HEADER_LIST_SIZE is set on hpack encoded and warning generated only for large responses.
2016-07-23 12:17:50 +10:00
Greg Wilkins
2f4a6f29b7
Do not use ArrayQueue for HPACK #751
2016-07-21 11:07:55 +10:00
Simone Bordet
a3b5e7ebb7
Added guards against NPE in case HttpField.getValue() returns null.
2016-07-15 15:45:50 +02:00
Simone Bordet
389eb68c3c
Code cleanups.
2016-07-15 15:45:50 +02:00
Greg Wilkins
45ead1bb29
jetty http2 client parse error #726
2016-07-15 13:47:41 +10:00
Simone Bordet
6306f06e2f
Merged branch 'jetty-9.2.x' into 'jetty-9.3.x'.
2016-02-09 18:12:04 +01:00
Joakim Erdfelt
cd39fd84fe
Happy New Year 2016
2016-01-04 14:31:22 -07:00
Simone Bordet
cbb7be040f
480260 - HPack decode error for buffers with offset.
...
Fixed calculations to advance the ByteBuffer.
2015-10-20 23:19:10 +02:00
Simone Bordet
c367ea8a85
441020 - Support HEADERS followed by CONTINUATION+.
2015-07-08 18:55:47 +02:00
Joakim Erdfelt
9e6c8eade1
464727 - Update Javadoc for Java 8 DocLint
2015-04-22 12:43:22 -07:00
Greg Wilkins
1cb0449be3
Organised imports
2015-03-26 12:32:15 +11:00
Joakim Erdfelt
08b4bd439e
Fixing tests on http2-hpack
...
+ HttpField.nameHashCode() fixed to actually be US-ASCII case
insensitive per documentation
+ Since removal of MetaData equals/hashcode, the comparison
of the MetaData and MetaData.Response is now done entirely
within the HpackTest
2015-02-20 10:16:03 -07:00
Greg Wilkins
a147cee480
459731 - Update for drafts hpack-11 and http2-17
2015-02-12 14:45:12 +11:00
Greg Wilkins
e1cc5fb487
Merge remote-tracking branch 'origin/master' into jetty-9.3-ewyk
...
Conflicts:
jetty-server/src/main/java/org/eclipse/jetty/server/HttpChannel.java
jetty-server/src/main/java/org/eclipse/jetty/server/QueuedHttpInput.java
jetty-util/src/main/java/org/eclipse/jetty/util/thread/NonBlockingThread.java
2015-01-08 15:21:01 +01:00
Joakim Erdfelt
a3201a3c81
Happy New Year 2015
2015-01-07 17:06:59 -07:00
Simone Bordet
1c2c83e962
Added TODO to remove references to ByteBuffer.array() without
...
checking whether the ByteBuffer does have a backing array.
2014-12-18 17:14:34 +01:00
Greg Wilkins
c3472f01c4
updated hpack for draft 10 name changes
2014-12-04 10:27:14 +01:00
Greg Wilkins
4296d84a7b
updated hpack for draft 10 name changes
2014-12-04 10:17:06 +01:00
Greg Wilkins
31e448ffd6
Removed duplication of HttpGenerator$Info vs http.MetaData
...
Use MetaData throughout code base
2014-10-24 15:51:20 +11:00
Greg Wilkins
ec79a6f88e
Improve HTTP header pre-encoding
...
The HttpContent class has been reworked to store HttpField instances, we may be generated on
demand or instances of PreEncodedHttpField.
The encoding of HTTP2 fields has been generalized to handle both indexed and literal fields, selected
by header enum set.
Default servlet and response classes have been cleaned up in how they set response headers.
2014-10-16 12:31:37 +11:00
Greg Wilkins
8c85b2f591
improved http2 static entry generation
2014-10-15 14:04:54 +11:00
Simone Bordet
c7987b154a
Reverted logging of HTTP2 tests from DEBUG to INFO.
2014-08-15 17:29:38 +02:00
Greg Wilkins
68a3ca8e31
improved debug logging of settings
2014-08-13 12:00:32 +10:00
Greg Wilkins
64e49a1fe5
work around classloaders for field preencoders
2014-08-07 09:10:35 +10:00
Greg Wilkins
17f46665df
preencoded httpfield optimisation
2014-08-06 21:09:26 +10:00
Greg Wilkins
d7f2c42e2d
misc optimisation of http2 field creation
2014-08-05 12:55:37 +10:00
Greg Wilkins
48d68a4916
handle http/1 host header in http/2
2014-08-05 09:21:27 +10:00
Simone Bordet
a2faa030cc
Improved logging.
2014-08-04 12:09:35 +02:00
Greg Wilkins
1fb07644a1
Use HttpHeader enum for :path and similar h2 fields
2014-08-02 16:37:43 +10:00
Greg Wilkins
cd59d0085e
improve known header handling in hpack encoding
2014-08-02 15:40:15 +10:00
Greg Wilkins
1873b306b3
Improved hpack encoder handling of custom fields
2014-08-02 12:56:12 +10:00
Greg Wilkins
9c3eedfea8
Updates to hpack for hpack-09 draft
2014-07-31 13:26:23 +10:00
Greg Wilkins
a1696c0139
updates for hpack huffman and examples
2014-07-25 19:38:16 +10:00
Greg Wilkins
c13be6d932
Merge branch 'jetty-http2' into refset
...
Conflicts:
jetty-http2/http2-hpack/src/test/java/org/eclipse/jetty/http2/hpack/HpackEncoderTest.java
2014-07-25 18:33:10 +10:00
Greg Wilkins
30123607c6
Major refactor of metadata and HttpURI
...
This refactor strives to remove duplication between the Metadata class and the HttpURI class.
Both classes have been made mutable (as they partially were anyway so best not to pretend).
HttpURI now holds the decomposed strings rather than a single string with indexes. This allows it to be rebuilt after changing just parts of the URI. It is now a lot more similar to the
JVM URI class and we could consider replacing it (after checking peformance).
Next step is to refactor the Request class to prevent it duplicating these fields.
2014-07-24 15:49:52 +10:00
Greg Wilkins
d6f841bb87
fixed refactor uri issue
2014-07-23 09:03:52 +10:00
Greg Wilkins
7f62f2600b
refactored URI handling
2014-07-20 10:23:47 +10:00
Greg Wilkins
a639359a7b
do not index content-length
2014-07-18 17:23:44 +10:00
Greg Wilkins
d4e7c0a279
update encoding strategy for no ref-set
2014-07-18 15:59:41 +10:00
Greg Wilkins
89a816843f
removed refset from hpack
2014-07-18 15:59:41 +10:00
Greg Wilkins
f9ffefbe13
refactored to avoid copying MetaData.Request instances
2014-07-11 16:35:25 +10:00
Simone Bordet
4c2c7e8352
Guarded calls to LOG.debug() with if (LOG.isDebugEnabled()) to reduce allocation of varargs Object[].
2014-06-25 12:37:05 +02:00
Greg Wilkins
c0629b6e04
encoding debug
2014-06-19 15:32:27 +02:00
Greg Wilkins
9acf971cc1
cache path URI in table
2014-06-18 15:26:33 +02:00
Simone Bordet
4dca6a71d3
Update Parser constructor to take additional parameters needed by
...
HpackDecoder.
2014-06-18 11:40:11 +02:00
Greg Wilkins
30affa57c7
HpackDecoder implements 413 limit
2014-06-18 11:11:23 +02:00
Greg Wilkins
140e7ed0c5
encoder headers as lowercase
2014-06-18 10:22:23 +02:00
Greg Wilkins
e115dee62f
improved static encoding strategy
2014-06-17 19:54:21 +02:00
Greg Wilkins
7fa4f1e9f8
cleaned up authority handling
2014-06-17 19:40:09 +02:00
Greg Wilkins
4c2a3dfbe6
better hpack debug
2014-06-17 11:04:10 +02:00
Greg Wilkins
25295456ae
renamed HTTP/2.0 to HTTP/2
2014-06-17 00:12:57 +02:00
Greg Wilkins
272e1d8da5
Refactored HttpChannel to not have direct HttpParser dependency
2014-06-17 00:02:50 +02:00
Greg Wilkins
116d654426
cleaned up debug
2014-06-12 15:08:46 +02:00
Greg Wilkins
1666f54b50
revert httpfields
2014-06-11 17:41:52 +02:00
Greg Wilkins
f258ff1565
improved debug
2014-06-11 17:05:39 +02:00
Greg Wilkins
c319c19125
convert MetaData to HttpField as a list
2014-06-11 16:53:17 +02:00
Greg Wilkins
bbd61f8e19
Multiple mixed in changes and improvements
...
Simplified HttpParser as per rfc7230
implemented local/remote hpack max table sizes
2014-06-11 15:16:40 +02:00
Greg Wilkins
70223cbda9
add status 200 and method GET to ref set
2014-06-11 10:23:29 +02:00
Simone Bordet
630bee5887
Implemented HTTP2 connection preface.
2014-06-10 18:33:13 +02:00
Greg Wilkins
c8184077c7
added logging to hpack
2014-06-10 15:26:54 +02:00
Greg Wilkins
073ad924b0
improve value handling on known literal fields
2014-06-10 14:05:41 +02:00
Greg Wilkins
b55dba82a5
use scheme cache
2014-06-10 13:13:38 +02:00
Greg Wilkins
19c4939ede
flip encode buffer
2014-06-10 13:05:28 +02:00
Greg Wilkins
ab5461d73e
fixed hpack literal encoding bug
2014-06-10 12:56:20 +02:00
Greg Wilkins
3c321e9b8f
split authority field and hold results in header table
2014-06-09 15:34:09 +02:00
Simone Bordet
c1247ff677
Reorganized HTTP2 modules.
2014-06-09 14:01:16 +02:00