shelf 0.6.4+1
shelf: ^0.6.4+1 copied to clipboard
Web Server Middleware for Dart
0.6.4+1 #
- When the
shelf_ioadapter detects an error, print the request context as well as the error itself.
0.6.4 #
-
Add a
Serverinterface representing an adapter that knows its own URL. -
Add a
ServerHandlerclass that exposes aServerbacked by aHandler. -
Add an
IOServerclass that implementsServerin terms ofdart:io'sHttpServer.
0.6.3+1 #
- Cleaned up handling of certain
Mapinstances and related dependencies.
0.6.3 #
- Messages returned by
Request.change()andResponse.change()are marked read whenever the original message is read, and vice-versa. This means that it's possible to read a message on whichchange()has been called and to callchange()on a message more than once, as long asread()is called on only one of those messages.
0.6.2+1 #
- Support
http_parser1.0.0.
0.6.2 #
- Added a
bodynamed argument tochangemethod onRequestandResponse.
0.6.1+3 #
-
Updated minimum SDK to
1.9.0. -
Allow an empty
urlparameter to be passed in tonew Request(). This fits the stated semantics of the class, and should not have been forbidden.
0.6.1+2 #
logRequestsoutputs a better message a request has a query string.
0.6.1+1 #
- Don't throw a bogus exception for
nullresponses.
0.6.1 #
-
shelf_ionow takes a"shelf.io.buffer_output"Response.contextparameter that controlsHttpResponse.bufferOutput. -
Fixed spelling errors in README and code comments.
0.6.0 #
Breaking change: The semantics of Request.scriptName and
Request.url have been overhauled, and the former has been renamed to
Request.handlerPath. handlerPath is now the root-relative URL
path to the current handler, while url's path is the relative path from the
current handler to the requested. The new semantics are easier to describe and
to understand.
Practically speaking, the main difference is that the / at the beginning of
url's path has been moved to the end of handlerPath. This makes url's path
easier to parse using the path package.
Request.change's handling of handlerPath and url has also
changed. Instead of taking both parameters separately and requiring that the
user manually maintain all the associated guarantees, it now takes a single
path parameter. This parameter is the relative path from the current
handlerPath to the next one, and sets both handlerPath and url on the new
Request accordingly.
0.5.7 #
- Updated
Requestto support thebodymodel fromResponse.
0.5.6 #
-
Fixed
createMiddlewareto only catch errors iferrorHandleris provided. -
Updated
handleRequestinshelf_ioto more gracefully handle errors when parsingHttpRequest.
0.5.5+1 #
- Updated
Request.changeto include the originalonHijackcallback if one exists.
0.5.5 #
-
Added default body text for
Response.forbiddenandResponse.notFoundif null is provided. -
Clarified documentation on a number of
Responseconstructors. -
Updated
READMElinks to point to latest docs onwww.dartdocs.org.
0.5.4+3 #
- Widen the version constraint on the
collectionpackage.
0.5.4+2 #
- Updated headers map to use a more efficient case-insensitive backing store.
0.5.4+1 #
- Widen the version constraint for
stack_trace.
0.5.4 #
-
The
shelf_ioadapter now sends theDateHTTP header by default. -
Fixed logic for setting Server header in
shelf_io.
0.5.3 #
- Add new named parameters to
Request.change:scriptNameandurl.
0.5.2 #
-
Add a
Cascadehelper that runs handlers in sequence until one returns a response that's neither a 404 nor a 405. -
Add a
Request.changemethod that copies a request with new header values. -
Add a
Request.hijackmethod that allows handlers to gain access to the underlying HTTP socket.
0.5.1+1 #
-
Capture all asynchronous errors thrown by handlers if they would otherwise be top-leveled.
-
Add more detail to the README about handlers, middleware, and the rules for implementing an adapter.
0.5.1 #
- Add a
contextmap toRequestandResponsefor passing data among handlers and middleware.
0.5.0+1 #
- Allow
scheduled_testdevelopment dependency up to v0.12.0
0.5.0 #
- Renamed
StacktoPipeline.
0.4.0 #
-
Access to headers for
RequestandResponseis now case-insensitive. -
The constructor for
Requesthas been simplified. -
Requestnow exposesurlwhich replacespathInfo,queryString, andpathSegments.
0.3.0+9 #
-
Removed old testing infrastructure.
-
Updated documentation address.
0.3.0+8 #
- Added a dependency on the
http_parserpackage.
0.3.0+7 #
- Removed unused dependency on the
mimepackage.
0.3.0+6 #
- Added a dependency on the
string_scannerpackage.
0.3.0+5 #
- Updated
pubspecdetails for move to Dart SDK.
0.3.0 - 2014-03-25 #
Response- NEW!
int get contentLength - NEW!
DateTime get expires - NEW!
DateTime get lastModified
- NEW!
Request- BREAKING
contentLengthis now read fromheaders. The constructor argument has been removed. - NEW! supports an optional
Stream<List<int>> bodyconstructor argument. - NEW!
Stream<List<int>> read()andFuture<String> readAsString([Encoding encoding]) - NEW!
DateTime get ifModifiedSince - NEW!
String get mimeType - NEW!
Encoding get encoding
- BREAKING
0.2.0 - 2014-03-06 #
- BREAKING Removed
Shelfprefix from all classes. - BREAKING
Responsehas drastically different constructors. - NEW!
Responsenow accepts a body of eitherStringorStream<List<int>>. - NEW!
Responsenow exposesencodingandmimeType.
0.1.0 - 2014-03-02 #
- First reviewed release