Commit Graph

1262 Commits

Author SHA1 Message Date
Pranav K acf97b6102 Unpin CoreFxLab package versions 2017-03-05 08:54:51 -08:00
David Fowler da763b4873 Use ascii decoding routine that disallows null chars (#1445)
* Use ascii decoding routine that disallows null chars
- GetAsciiString() in newer corefxlab builds allows 0 (which is a valid
ascii char). To avoid future regressions, GetAsciiStringNonNullCharacters()
was added and used in place of GetAsciiString() when interpreting the
request line and headers
- Make GetAsciiStringNonNullCharacters return empty instead of null
2017-03-04 11:26:32 -08:00
David Fowler 20f75605ca Workaround rogue System.IO.Pipelines on nuget.org 2017-03-03 22:35:41 -08:00
Cesar Blum Silveira 83edc38e72 Use TechEmpower request as baseline for request parsing benchmarks. 2017-03-03 15:55:07 -08:00
Cesar Blum Silveira de2c3d3608 Merge branch 'KrzysztofCwalina/NewBenchmark' into dev 2017-03-03 15:28:34 -08:00
Stephen Halter ac60f13312 Modify RequestProcessingAsync to call single parse method (#1427)
* Modify RequestProcessingAsync to call single parse method
* Fix bad request logging
2017-03-03 14:43:32 -08:00
Krzysztof Cwalina 7cc5c537a4 Added a new benchmark 2017-03-03 13:13:11 -08:00
David Fowler 1d685e195e Parser cleanup and remove line continuation header error (#1431)
- Cleaned up some parsing logic (removed locals etc)
- Removing line continuation errors cleaned up code duplication
a little bit
2017-03-03 10:04:44 -08:00
David Fowler 4533383612 React to hosting change
- Kestrel binds to ipv4 by default

Fixes #1432
2017-03-02 23:09:13 -08:00
David Fowler 4d7c6ff69f use rtm appveyor 2017-03-02 21:44:36 -08:00
Stephen Halter 1e0f2b3951 Fix systemd activation tests (#1429) 2017-03-02 17:26:41 -08:00
David Fowler 8929b40527 Single span optimizations (#1421)
- Added a fast path for single span in the start line parsing
- Added a fast path for single span header parsing
- Changed the out header loop to be pointer based (instead of slicing)
2017-03-02 12:17:39 -08:00
Nate McMaster aaea173cba Update AppVeyor and Travis settings 2017-03-02 09:44:00 -08:00
Ben Adams 40ee51846c Add allocations column (#1422) 2017-03-02 06:56:05 -08:00
David Fowler ca31627a5e Parser clean up (#1419)
- Remove stackalloc
- Remove extra Move in ParseRequestLine
2017-03-01 22:33:37 -08:00
Pavel Krymets f2a00da811 Loop over bytes inside states of parser state machine (#1417) 2017-03-01 18:18:34 -08:00
Nate McMaster d3924b0149 Change korebuild branch and fix argument forwarding in bootstrapper 2017-03-01 18:14:13 -08:00
David Fowler cb6059c143 Make the IHttpParser per frame and add a reset (#1415)
* Make the IHttpParser per frame and add a reset
- Made the IHttpParser a per frame object so state can be stored
across method calls and parses.
- Added HttpParserFactory to ServiceContext
2017-03-01 13:12:03 -08:00
Pavel Krymets d3694f085a Add IHttpParser interface (#1414) 2017-03-01 11:55:36 -08:00
Krzysztof Cwalina c56de066d3 Optimized parsing GET verb and version (#1399)
* Optimized parsing GET verb
* optimized http version parsing
* Added microbenchmarks for GetKnownMethod and GetKnownVersion
2017-02-28 17:02:52 -08:00
Stephen Halter 64b6563249 Run Travis and AppVeyor builds on feature/dev-si 2017-02-28 15:28:31 -08:00
John Luo 6ad9f3e8b0 Reacting to HeaderUtitilities renames 2017-02-28 14:50:02 -08:00
Cesar Blum Silveira 568aaff9c4 Improve HTTP parsing tests (#1393).
- Add several more test cases
- Share data between functional and unit tests
2017-02-28 14:23:27 -08:00
Cesar Blum Silveira f5ac8c4ebd Don't require framework when running CodeGenerator. 2017-02-28 13:50:16 -08:00
Stephen Halter fde0f6b2fc Add an option to Kestrel to disable threadpool dispatching 2017-02-28 10:14:58 -08:00
Cesar Blum Silveira a95743c5f6 Add functional test to verify generated code is up to date (#1369). 2017-02-27 14:19:56 -08:00
David Fowler c6705d8693 Convert TakeStartLine and TakeMessageHeaders to be state machines (#1401)
- Less passes over the buffer
- Single pass to find all start line delimiters instead
of calling IndexOf multiple times.
- Made TakeStartLine and TakeMessageHeaders a state machine
- Only check length against remaining bytes once
- Change variable names to match TakeStartLine
- Use ReadableBuffer.First.Span instead of ToSpan()
- Added test for missing path with a querystring
2017-02-27 11:55:30 -08:00
David Fowler 5692f51bf7 Revert "Revert "Use Spans to parse the start line and headers (#1394)""
This reverts commit 19c3107deb.
2017-02-24 10:22:05 -08:00
David Fowler 19c3107deb Revert "Use Spans to parse the start line and headers (#1394)"
This reverts commit 8140b8cdfe.
2017-02-24 10:03:32 -08:00
David Fowler 4544f881a2 Revert "Skipping failing tests to unblock CI"
This reverts commit 0860981ada.
2017-02-24 09:48:44 -08:00
David Fowler 0860981ada Skipping failing tests to unblock CI 2017-02-24 09:31:43 -08:00
David Fowler 8140b8cdfe Use Spans to parse the start line and headers (#1394)
* Use Spans to parse the start line and headers
- Use `Span<byte>` to parse the start line and headers
2017-02-23 23:02:29 -08:00
Stephen Halter 39b536b402 Don't treat canceled reads as end of input 2017-02-23 10:05:53 -08:00
Pavel Krymets 990e2a8dc4 Use pass through connection adapter instead of ssl for max buffer size tests (#1391) 2017-02-23 08:04:43 -08:00
Stephen Halter 7d3bcd2bf8 Avoid unobserved exceptions
- Don't throw from AdaptedPipeline.ReadInputAsync
- Watch for unobserved exceptions in SampleApp
2017-02-22 16:12:20 -08:00
David Fowler ba549502e1 Use the IThreadPool as the ReaderScheduler (#1372)
- This is what socket input did, also using
ThreadPool.QueueUserWorkItem is better than Task.Run for this
scenario and avoids a bunch of overhead.
2017-02-21 21:09:23 -08:00
Pavel Krymets 80b9673693 Temporary add delay to connection test to make it pass (#1384) 2017-02-21 16:04:32 -08:00
Cesar Blum Silveira 0dca3a266f Remove custom BenchmarkDotNet toolchain. 2017-02-21 12:05:16 -08:00
Cesar Blum Silveira 4fd71e3a6b Fix 'No data found for...' errors in CI test runs. 2017-02-21 11:50:20 -08:00
Pranav K d3a6915732 Remove dotnet-core and dotnet-corefxlab feeds
Let VS do it's thing with test projects
2017-02-20 10:24:41 -08:00
The Gitter Badger ef60779d31 Add Gitter badge (#1371) 2017-02-18 14:16:02 -08:00
Pavel Krymets 824ef2c937 Input Pipeline migration (#1277) 2017-02-17 15:38:13 -08:00
Cesar Blum Silveira bfe1f06938 Fix AddressRegistrationTests.RegisterAddresses_IPv6ScopeId_Success (#1363). 2017-02-17 10:35:00 -08:00
Nate McMaster 68cc4fdb24
Remove RuntimeFrameworkVersion from sample 2017-02-16 18:35:03 -08:00
Nate McMaster 932b6ed53a
Cleanup MSBuild conversion
Remove runtimeconfig.template.json
Remove ToolsVersion attribute
Use repo.targets instead of makefile.shade
Rename code gen app to shorter name
Use GetOSPlatform task
Upgrade tests to .NET Framework 4.5.2
Cleanup solution configurations. Set the class libraries to AnyCPU even when on the x86 or x64 solution config.
2017-02-16 09:44:58 -08:00
Nate McMaster 708630fd23 Downgrade to stable packages 2017-02-15 14:22:38 -08:00
Doug Bunting be9f83b308 Bump test projects up to .NET 4.5.2
- aspnet/Testing#248
- xUnit no longer supports .NET 4.5.1
- build tests for desktop .NET only on Windows
2017-02-14 09:21:44 -08:00
Cesar Blum Silveira 796a408be7 Merge branch 'rel/1.0.3' into dev 2017-02-09 11:02:00 -08:00
Cesar Blum Silveira 21be33023c Implement APM methods in streams (#1335). 2017-02-09 10:52:21 -08:00
Stephen Halter e9e0cf7325 Prevent ODE when ReadStart/Stop() is queued after disposal 2017-02-07 00:26:05 -08:00