- Fix redirect error when
path
contains raw non-URL characters - Fix redirect when
path
starts with multiple forward slashes
- Add
acceptRanges
option - Add
cacheControl
option - Attempt to combine multiple ranges into single range
- Correctly inherit from
Stream
class - Fix
Content-Range
header in 416 responses when usingstart
/end
options - Fix
Content-Range
header missing from default 416 responses - Ignore non-byte
Range
headers - deps: http-errors@~1.5.0
- Add
HttpError
export, forerr instanceof createError.HttpError
- Support new code
421 Misdirected Request
- Use
setprototypeof
module to replace__proto__
setting - deps: [email protected]
- deps: statuses@'>= 1.3.0 < 2'
- perf: enable strict mode
- Add
- deps: range-parser@~1.2.0
- Fix incorrectly returning -1 when there is at least one valid range
- perf: remove internal function
- deps: statuses@~1.3.0
- Add
421 Misdirected Request
- perf: enable strict mode
- Add
- perf: remove argument reassignment
- Fix invalid
Content-Type
header whensend.mime.default_type
unset
- deps: depd@~1.1.0
- Support web browser loading
- perf: enable strict mode
- deps: destroy@~1.0.4
- perf: enable strict mode
- deps: escape-html@~1.0.3
- perf: enable strict mode
- perf: optimize string replacement
- perf: use faster string coercion
- deps: range-parser@~1.0.3
- perf: enable strict mode
- Allow Node.js HTTP server to set
Date
response header - Fix incorrectly removing
Content-Location
on 304 response - Improve the default redirect response headers
- Send appropriate headers on default error response
- Use
http-errors
for standard emitted errors - Use
statuses
instead ofhttp
module for status messages - deps: [email protected]
- deps: etag@~1.7.0
- Improve stat performance by removing hashing
- deps: [email protected]
- Add weak
ETag
matching support
- Add weak
- deps: on-finished@~2.3.0
- Add defined behavior for HTTP
CONNECT
requests - Add defined behavior for HTTP
Upgrade
requests - deps: [email protected]
- Add defined behavior for HTTP
- perf: enable strict mode
- perf: remove unnecessary array allocations
- deps: debug@~2.2.0
- deps: [email protected]
- deps: depd@~1.0.1
- deps: etag@~1.6.0
- Improve support for JXcore
- Support "fake" stats objects in environments without
fs
- deps: [email protected]
- Prevent extraordinarily long inputs
- deps: on-finished@~2.2.1
- Throw errors early for invalid
extensions
orindex
options - deps: debug@~2.1.3
- Fix high intensity foreground color for bold
- deps: [email protected]
- Fix regression sending zero-length files
- Always read the stat size from the file
- Fix mutating passed-in
options
- deps: [email protected]
- Fix
root
path disclosure
- deps: debug@~2.1.1
- deps: etag@~1.5.1
- deps: [email protected]
- deps: [email protected]
- Add
milliseconds
- Add
msecs
- Add
secs
- Add
mins
- Add
hrs
- Add
yrs
- Add
- deps: on-finished@~2.2.0
- deps: on-finished@~2.1.1
- Fix handling of pipelined requests
- deps: debug@~2.1.0
- Implement
DEBUG_FD
env variable support
- Implement
- deps: depd@~1.0.0
- deps: etag@~1.5.0
- Improve string performance
- Slightly improve speed for weak ETags over 1KB
- deps: etag@~1.4.0
- Support "fake" stats objects
- deps: [email protected]
- deps: etag@~1.3.1
- deps: range-parser@~1.0.2
- deps: [email protected]
- Add
lastModified
option - Use
etag
to generateETag
header - deps: debug@~2.0.0
- Fix malicious path detection for empty string path
- Fix a path traversal issue when using
root
- deps: [email protected]
- renamed from dethroy
- deps: [email protected]
- Work around
fd
leak in Node.js 0.10 forfs.ReadStream
- deps: [email protected]
- Fix
extensions
behavior when file already has extension
- Add
extensions
option
- Fix serving index files without root dir
- Fix incorrect 403 on Windows and Node.js 0.11
- deps: [email protected]
- Work-around v8 generating empty stack traces
- deps: [email protected]
- Fix exception when global
Error.stackTraceLimit
is too low
- Fix exception when global
- Deprecate
hidden
option; usedotfiles
option - Add
dotfiles
option - deps: [email protected]
- deps: [email protected]
- Add
TRACE_DEPRECATION
environment variable - Remove non-standard grey color from color output
- Support
--no-deprecation
argument - Support
--trace-deprecation
argument
- Add
- Deprecate
from
option; useroot
option - Deprecate
send.etag()
-- useetag
inoptions
- Deprecate
send.hidden()
-- usehidden
inoptions
- Deprecate
send.index()
-- useindex
inoptions
- Deprecate
send.maxage()
-- usemaxAge
inoptions
- Deprecate
send.root()
-- useroot
inoptions
- Cap
maxAge
value to 1 year - deps: [email protected]
- Add support for multiple wildcards in namespaces
- Accept string for
maxAge
(converted byms
) - Add
headers
event - Include link in default redirect response
- Use
EventEmitter.listenerCount
to count listeners
- Do not throw un-catchable error on file open race condition
- Use
escape-html
for HTML escaping - deps: [email protected]
- fix some debugging output colors on node.js 0.8
- deps: [email protected]
- deps: [email protected]
- fix "event emitter leak" warnings
- deps: [email protected]
- deps: [email protected]
- Send
max-age
inCache-Control
in correct format
- Calculate ETag with md5 for reduced collisions
- Fix wrong behavior when index file matches directory
- Ignore stream errors after request ends
- Goodbye
EBADF, read
- Goodbye
- Skip directories in index file search
- deps: [email protected]
- Fix sending files with dots without root set
- Coerce option types
- Accept API options in options object
- Set etags to "weak"
- Include file path in etag
- Make "Can't set headers after they are sent." catchable
- Send full entity-body for multi range requests
- Default directory access to 403 when index disabled
- Support multiple index paths
- Support "If-Range" header
- Control whether to generate etags
- deps: [email protected]
- update range-parser and fresh
- update fresh
- Revert "Fix fd leak"
- Fix fd leak
- add options parameter to send() that is passed to fs.createReadStream() [kanongil]
- allow custom "Accept-Ranges" definition
- fix normalization of the root directory. Closes #3
- add passing of req explicitly for now (YUCK)
- Initial release