File name
Commit message
Commit date

0.18.0 / 2022-03-23#

0.17.2 / 2021-12-11#

0.17.1 / 2019-05-10#

  • Set stricter CSP header in redirect & error responses
  • deps: range-parser@~1.2.1

0.17.0 / 2019-05-03#

  • deps: http-errors@~1.7.2
    • Set constructor name when possible
    • Use toidentifier module to make class names
    • deps: depd@~1.1.2
    • deps: [email protected]
    • deps: statuses@'>= 1.5.0 < 2'
  • deps: [email protected]
    • Add extensions for JPEG-2000 images
    • Add new font/* types from IANA
    • Add WASM mapping
    • Update .bdoc to application/bdoc
    • Update .bmp to image/bmp
    • Update .m4a to audio/mp4
    • Update .rtf to application/rtf
    • Update .wav to audio/wav
    • Update .xml to application/xml
    • Update generic extensions to application/octet-stream:
      .deb, .dll, .dmg, .exe, .iso, .msi
    • Use mime-score module to resolve extension conflicts
  • deps: [email protected]
    • Add week/w support
    • Fix negative number handling
  • deps: statuses@~1.5.0
  • perf: remove redundant path.normalize call

0.16.2 / 2018-02-07#

  • Fix incorrect end tag in default error & redirects
  • deps: depd@~1.1.2
    • perf: remove argument reassignment
  • deps: encodeurl@~1.0.2
    • Fix encoding % as last character
  • deps: statuses@~1.4.0

0.16.1 / 2017-09-29#

  • Fix regression in edge-case behavior for empty path

0.16.0 / 2017-09-27#

  • Add immutable option
  • Fix missing </html> in default error & redirects
  • Use instance methods on steam to check for listeners
  • deps: [email protected]
    • Add 70 new types for file extensions
    • Set charset as "UTF-8" for .js and .json
  • perf: improve path validation speed

0.15.6 / 2017-09-22#

0.15.5 / 2017-09-20#

  • deps: etag@~1.8.1
    • perf: replace regular expression with substring
  • deps: [email protected]
    • Fix handling of modified headers with invalid dates
    • perf: improve ETag match loop
    • perf: improve If-None-Match token parsing

0.15.4 / 2017-08-05#

0.15.3 / 2017-05-16#

0.15.2 / 2017-04-26#

0.15.1 / 2017-03-04#

  • Fix issue when Date.parse does not return NaN on invalid date
  • Fix strict violation in broken environments

0.15.0 / 2017-02-25#

  • Support If-Match and If-Unmodified-Since headers
  • Add res and path arguments to directory event
  • Remove usage of res._headers private field
    • Improves compatibility with Node.js 8 nightly
  • Send complete HTML document in redirect & error responses
  • Set default CSP header in redirect & error responses
  • Use res.getHeaderNames() when available
  • Use res.headersSent when available
  • deps: [email protected]
    • Allow colors in workers
    • Deprecated DEBUG_FD environment variable set to 3 or higher
    • Fix error when running under React Native
    • Use same color for same namespace
    • deps: [email protected]
  • deps: etag@~1.8.0
  • deps: [email protected]
    • Fix false detection of no-cache request directive
    • Fix incorrect result when If-None-Match has both * and ETags
    • Fix weak ETag matching to match spec
    • perf: delay reading header values until needed
    • perf: enable strict mode
    • perf: hoist regular expressions
    • perf: remove duplicate conditional
    • perf: remove unnecessary boolean coercions
    • perf: skip checking modified time if ETag check failed
    • perf: skip parsing If-None-Match when no ETag header
    • perf: use Date.parse instead of new Date
  • deps: http-errors@~1.6.1

0.14.2 / 2017-01-23#

0.14.1 / 2016-06-09#

  • Fix redirect error when path contains raw non-URL characters
  • Fix redirect when path starts with multiple forward slashes

0.14.0 / 2016-06-06#

  • 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 using start/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, for err 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
  • 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
  • perf: remove argument reassignment

0.13.2 / 2016-03-05#

  • Fix invalid Content-Type header when send.mime.default_type unset

0.13.1 / 2016-01-16#

  • 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

0.13.0 / 2015-06-16#

  • 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 of http 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
  • deps: on-finished@~2.3.0
    • Add defined behavior for HTTP CONNECT requests
    • Add defined behavior for HTTP Upgrade requests
    • deps: [email protected]
  • perf: enable strict mode
  • perf: remove unnecessary array allocations

0.12.3 / 2015-05-13#

  • Improve support for JXcore
  • Support "fake" stats objects in environments without fs

0.12.2 / 2015-03-13#

  • Throw errors early for invalid extensions or index options
  • deps: debug@~2.1.3

0.12.1 / 2015-02-17#

  • Fix regression sending zero-length files

0.12.0 / 2015-02-16#

  • Always read the stat size from the file
  • Fix mutating passed-in options
  • deps: [email protected]

0.11.1 / 2015-01-20#

  • Fix root path disclosure

0.11.0 / 2015-01-05#

0.10.1 / 2014-10-22#

  • deps: on-finished@~2.1.1
    • Fix handling of pipelined requests

0.10.0 / 2014-10-15#

  • deps: debug@~2.1.0
    • Implement DEBUG_FD env variable support
  • deps: depd@~1.0.0
  • deps: etag@~1.5.0
    • Improve string performance
    • Slightly improve speed for weak ETags over 1KB

0.9.3 / 2014-09-24#

  • deps: etag@~1.4.0
    • Support "fake" stats objects

0.9.2 / 2014-09-15#

0.9.1 / 2014-09-07#

0.9.0 / 2014-09-07#

  • Add lastModified option
  • Use etag to generate ETag header
  • deps: debug@~2.0.0

0.8.5 / 2014-09-04#

  • Fix malicious path detection for empty string path

0.8.4 / 2014-09-04#

  • Fix a path traversal issue when using root

0.8.3 / 2014-08-16#

0.8.2 / 2014-08-14#

0.8.1 / 2014-08-05#

  • Fix extensions behavior when file already has extension

0.8.0 / 2014-08-05#

  • Add extensions option

0.7.4 / 2014-08-04#

  • Fix serving index files without root dir

0.7.3 / 2014-07-29#

  • Fix incorrect 403 on Windows and Node.js 0.11

0.7.2 / 2014-07-27#

0.7.1 / 2014-07-26#

0.7.0 / 2014-07-20#

  • Deprecate hidden option; use dotfiles 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

0.6.0 / 2014-07-11#

  • Deprecate from option; use root option
  • Deprecate send.etag() -- use etag in options
  • Deprecate send.hidden() -- use hidden in options
  • Deprecate send.index() -- use index in options
  • Deprecate send.maxage() -- use maxAge in options
  • Deprecate send.root() -- use root in options
  • Cap maxAge value to 1 year
  • deps: [email protected]
    • Add support for multiple wildcards in namespaces

0.5.0 / 2014-06-28#

  • Accept string for maxAge (converted by ms)
  • Add headers event
  • Include link in default redirect response
  • Use EventEmitter.listenerCount to count listeners

0.4.3 / 2014-06-11#

0.4.2 / 2014-06-09#

0.4.1 / 2014-06-02#

  • Send max-age in Cache-Control in correct format

0.4.0 / 2014-05-27#

  • Calculate ETag with md5 for reduced collisions
  • Fix wrong behavior when index file matches directory
  • Ignore stream errors after request ends
    • Goodbye EBADF, read
  • Skip directories in index file search
  • deps: [email protected]

0.3.0 / 2014-04-24#

  • 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]

0.2.0 / 2014-01-29#

  • update range-parser and fresh

0.1.4 / 2013-08-11 #

  • update fresh

0.1.3 / 2013-07-08 #

  • Revert "Fix fd leak"

0.1.2 / 2013-07-03 #

  • Fix fd leak

0.1.0 / 2012-08-25 #

  • add options parameter to send() that is passed to fs.createReadStream() [kanongil]

0.0.4 / 2012-08-16 #

  • allow custom "Accept-Ranges" definition

0.0.3 / 2012-07-16 #

  • fix normalization of the root directory. Closes #3

0.0.2 / 2012-07-09 #

  • add passing of req explicitly for now (YUCK)

0.0.1 / 2010-01-03#

  • Initial release