Commit graph

871 commits

Author SHA1 Message Date
Patrik Nordwall
e8ce261faf Merge branch 'master' into wip-sync-2.4.10-patriknw 2016-09-09 14:12:16 +02:00
Bernard Leach
1c8c2595d2 =htc #19643, #20570, #21235 Refactor PoolSlot to GraphStage to address race conditions
This fixes various bugs that arose because of manual implementation of ActorPublisher and ActorSubscriber.

Fixes #19643, #20570, and #21235.
2016-09-06 11:54:43 +02:00
Hawstein
b9a05aff96 add java api for websocket testkit #21184
And additionally adds unit test for WebSocketDirectives #20466
2016-09-02 13:28:49 +02:00
Konrad Malawski
b1d07498e2 =htp fix for infinite timeout disabling timeout infrastructure (#20817) (#21295)
* fix for infinite timeout disabling timeout infrastructure (#20817)

* filtering out timeout-access header in tests where necessary (#20817)

* filtering out timeout-access header in additional tests (#20817)

* added DummyCancellable object to avoid allocation (#20817)

* added test showing that timeout is correctly reset for both infinite as well as finite initial request-timeout (#20817)
2016-08-31 09:49:41 +01:00
Patrik Nordwall
90cce8579a Merge branch 'master' into wip-sync-artery-dev-patriknw 2016-08-31 08:59:49 +02:00
Johan Andrén
e20d6f5f36 More generous timeout directive spec timeout #20278 2016-08-30 15:04:21 +02:00
Johan Andrén
fbfc8b4c58 Http internal One2OneBidi pulling closed port #20944 2016-08-30 12:50:12 +02:00
Konrad Malawski
8c98d6cd74 * -htc remove proxy settings because not implemented (#21288) 2016-08-30 10:37:17 +01:00
Johan Andrén
faf717591b =htc Response rendering spec hardening #21088 (#21245)
A bit more time between the always-close and the guess-that-the-blueprint-closed timeouts
2016-08-30 09:38:17 +01:00
gosubpl
0e09253adf added DummyCancellable object to avoid allocation (#20817) 2016-08-29 21:48:32 +02:00
gosubpl
ce4e208d85 filtering out timeout-access header in additional tests (#20817) 2016-08-28 00:23:40 +02:00
gosubpl
7690d1dbbd filtering out timeout-access header in tests where necessary (#20817) 2016-08-27 07:09:40 +02:00
gosubpl
fcc1d12879 fix for infinite timeout disabling timeout infrastructure (#20817) 2016-08-25 23:32:14 +02:00
kenji yoshida
9630feb6cc =htc remove unnecessary asInstanceOf (#21275) 2016-08-24 13:55:03 +02:00
Paweł Motyl
57fdc758ce +htp Add javadsl Query.create(Iterable) overload #21232 (#21265)
* Added the Query.create(Iterable) overload using StreamSupport;
* Added a test for the new overload.
2016-08-24 11:13:05 +02:00
Patrik Nordwall
8ab02738b7 Merge branch 'master' into wip-sync-artery-dev-2.4.9-patriknw 2016-08-23 20:14:15 +02:00
Johan Andrén
cee77aab38 =htp A bit more generous timeouts in HttpServerSpec #20350 (#21255) 2016-08-23 11:29:10 +02:00
Johan Andrén
09c656c21d =htc Bugfix #21243 absolute request target parsing broken (#21244) 2016-08-23 01:58:10 +02:00
Endre Sándor Varga
5e830323f6 Updating to ScalaTest 3.0.0 and ScalaCheck 1.13.2 2016-08-22 11:13:49 +02:00
2beaucoup
0ed4a2aae9 =htp clean up json stream unmarshalling (#21233) 2016-08-19 16:21:33 +02:00
Lukasz Kusek
b873536e68 =doc fix akka-http timeouts documentation #21214
change akka.http.http-connection-pool -> akka.http.host-connection-pool
2016-08-17 21:05:53 +01:00
Johan Andrén
f1c589639c Bugfix #21130 remote-address support broken in server optimizations 2016-08-09 14:00:52 +02:00
Schmitt Christian
b54616aa87 HttpMessage#header[Content-Type] should work #21127 2016-08-08 15:37:20 +02:00
Konrad Malawski
db880a3db0 +htp #18837 implemented JavaDSL for Source streaming 2016-08-02 15:27:21 +02:00
Konrad Malawski
bb701d1725 HTTP: Optimise response rendering and response parsing (#21046)
* +htp,ben HttpBlueprint benchmark

* +act bring OptionVal from artery-dev
+htc raw benchmarks

* =htc request parsing benchmark

* +htc,ben add benchmark for longer (raw) json response

* =htc optimise renderHeaders, less Option allocs

* -htc remove FastClock, not quite worth it
2016-07-28 22:32:40 +02:00
Johan Andrén
9372087464 =htc #21051 WebsocketResponse future now fails if the connection failed (#21054)
* WebsocketResponse future now fails if the connection failed #21051
2016-07-28 17:48:06 +02:00
Ian Clegg
f33f2197b6 =htc #20786 Fix for RFC 7235 so HttpChallenge only renders the realm when it has a value (#21043) 2016-07-28 13:32:50 +02:00
Johan Andrén
c0861cb7d5 =htc #21008, controller stage misbehaving on early response (#21033)
* Bugfix #21008, controller stage misbehaving on early response

* Test coverage and only fix the actual bug
2016-07-27 17:48:48 +02:00
Konrad Malawski
5479276b64 =htc migrate Masker to graph stage (#21048) 2016-07-27 12:38:51 +02:00
Konrad Malawski
5d8dcc8ebc =htc #20921 mima filters and scaladoc for discardBytes (#21042) 2016-07-26 13:44:05 +02:00
Nafer Sanabria
da79af329f =htc #20921 add discardBytes method to HttpEntity (#20925)
add DiscardedEntity interface inside HttpEntity
2016-07-26 13:42:56 +02:00
Richard S. Imaoka
15c77e3392 Document HTTP custom method (#20508) 2016-07-26 12:33:45 +02:00
Johan Andrén
150511a44b =htc Byte string parser input for request target parsing (#21018)
* Avoid byte array allocation in request target parsing

* Request parsing benchmark added

* Missing copyright added
2016-07-26 12:00:24 +02:00
Hawstein
cf46ab887f +htc #20771 provide different options to deal with the illegal response header value (#20976) 2016-07-24 17:56:39 +02:00
Johan Andrén
6efec50c94 Limitable in HTTP Core rewritten as GraphStage #21019 2016-07-22 16:02:44 +02:00
Johan Andrén
9dc474a10a Pre-fuse http server layer (#20990)
* Ported the first pre-fuse part endre did in pr #1972

* Allow the same HttpServerBluePrint to materialize multiple times

HttpRequestParser now behave like a proper GraphStage (with regards to materialization)
HttpResponseParser is kept "weird" to limit scope of commit.

* TestClient method to dump with http client and curl in parallel for comparison

* Cleanup

* tightening down what can be overriden
* tightening down access modifiers
* updates according to review

* Better defaults for the test server

* Ups. Don't listen to public interfaces in test server by default.
2016-07-22 14:07:41 +02:00
Konrad Malawski
fde9d86879 ByteString optimisations of methods in HTTP parsing hot-path (#20994)
* =act #20992 prepare benchmarks for ByteString optimisations

* =act #20992 optimise common ByteString operations: drop,take,slice...

* =act,htc #15965 add ByteString.decodeString(java.nio.charsets.Charset)
2016-07-20 14:01:51 +02:00
Lev Khomich
8f19dfcece =htc do not mention source in HttpEntity.toString (#20739) (#20971) 2016-07-18 11:14:06 +02:00
Nafer Sanabria
8047f3359f =htc #20920 create ContentLength HTTP header in JavaDSL (#20926)
remove constructor
2016-07-18 10:55:09 +02:00
Nikolay Donets
b7567a5c55 Nikdon 20535 check same origin (#20962)
* =htp checkSameOrigin shows allowed origins

add HttpOriginRangeDefault into the javadsl and refactor

resolving binary compatibility + add copyright

return back public static final in the HttpOriginRange

* =htp #20535 address bin compat issues in checkSameOrigin PR
2016-07-15 13:39:40 +02:00
Konrad Malawski
f0a1ba8467 =htc replace getSimpleName with Logging.simpleName (#20951)
As getSimpleName sometimes has issues on some scala classes (blows up).
2016-07-15 10:52:40 +02:00
Konrad Malawski
65fae200b7 =htp #20884 fix header name rendering issue when $minus present (#20940) 2016-07-13 14:53:56 +02:00
Patrik Nordwall
ccb5d1ba04 Merge branch 'master' into wip-sync-2.4.8-artery-patriknw 2016-07-08 15:38:33 +02:00
Konrad Malawski
60fb163331 +doc #20192 explain need of draining entities in server/client HTTP (#20852)
* +doc #20192 explain need of draining entities in server/client HTTP

* missing javadsl for Connection header

* Update HttpClientExampleDocTest.java
2016-07-08 14:47:29 +02:00
Daniel Moran
6d2d4d5d25 =htc Convert HandlerStage to GraphStage, #19361. (#20855) 2016-07-08 13:44:54 +02:00
Konrad Malawski
54ecf32d2b =htp #20915 fix too small timing issue in DirectivesSpec (#20916)
* =htp #20915 fix too small timing issue in DirectivesSpec

* applying scalariform reformatting that keeps popping up
2016-07-08 10:33:32 +02:00
poojadshende
2769b5e1cb =htc Convert ChunkTransformer to GraphStage (#20493)
* Convert ChunkTransformer to GraphStage

* Updated onUpstreamFinish of ChunkTransformer class

* Convert chunkTransformer to graph stage

* Convert ChunkTransformer to GraphStage

* Convert ChunkTranformer to GraphStage
2016-07-07 23:26:52 +02:00
Ben Barnard
de18e3fe09 +htc Parse URIs with many query string segments (#20770)
This commit keeps the stack-heavy, reversal approach as long as there is
enough space on the parser's value stack, switching to a constant-stack
approach that requires a reversal for the rest of the query string when
the value stack starts getting full. This removes the hidden restriction
on query string complexity (which is now only subject to the URL length
restriction) without unduly penalising URLs with simpler query strings.

The new constructor method, rather than simply a new constructor
parameter with a default value, is to maintain binary compatibility.
Given that UrlParser is private[http], I'm not sure if this is really
necessary.
2016-07-07 23:24:30 +02:00
Konrad Malawski
64d74254c8 Explain SettingsCompanion being internal (#20893) 2016-07-06 11:49:29 +02:00
Felix Satyaputra
334959edd1 Modify SettingsCompanion to support create using ActorSystem (#20845)
- Remove final modifier from create(system: ActorSystem) within SettingsCompanion
- Implement create(system: ActorSystem) within each of the SettingsCompanion subclass
- Add tests to ensure compilation
2016-07-06 00:52:46 +02:00