-
Fixed non-whitespace captures to avoid errors when rewriting minified CSS imports. (#80)
-
Added support for Express 4.7.3+ (thanks @natecavanaugh).
-
Updated dependency versions for mkdirp, nopt, and URIjs.
- Fixed errant nopt config, acknowledging
--no-resolve-symlinks
when passed.
-
Fixed a few
dynamicPath
middleware edge cases with multiple and duplicate route parameters. -
Added --no-resolve-symlinks option that uses fs.statSync to validate rootPath instead of fs.realpathSync. Caveat emptor.
-
Updated jshint devDependency to 2.3.0.
-
Updated should devDependency to 2.0.2.
-
The
dynamicPath
middleware now understands multiple parameters in a route. -
Increased test coverage substantially.
-
All dependency versions are now explicit.
-
Updated express dependency to 3.4.0.
-
Updated should devDependency to 2.0.1.
-
Added
errorHandler
middleware to main export, encapsulating a convenient way to cache error responses for a different duration than normal responses. -
Ensured that Unicode BOM in the response is removed, if found. [elementstorm]
-
Fixed tests in
node
v0.11.x, adding jshint and sinon todevDependencies
. -
Updated express dependency to 3.3.x. [Eric Ferraiuolo]
-
Encapsulated option-based instance CLI behaviour with args.invoke().
-
Exposed CLI option config on the exported object to allow ad-hoc customization for those that
require('combohandler/lib/args')
.
- Fixed a naive regular expression that was preventing url() rewriting when background property shorthand syntax was used.
-
Added --webRoot option to support CSS url() rewriting across multiple dynamic paths. This option will supplant --basePath if both are present.
-
Changed dynamicPath resolution to use fs.stat() instead of fs.realpath(), allowing symlinks under a well-known rootPath to build an "absolutely relative" pathname instead of always resolving to the rootPath.
-
Reorganized tests to cut down on repetitive string concatenation and clarify intention. Also added a bunch of complex symlink tests.
-
Fixed cluster worker configuration via events rather than
setupMaster
args. Customserver
config now works, and receives all properties from the parsed CLI arguments. -
Changed all pidfile IO to be synchronous. It's not frequent enough to justify the indeterminate nature of asynchronicity (which wasn't even used, anyway).
-
Added more tests, increasing code coverage slightly.
-
Removed
app.js
andconfig.sample.js
. They served us well. -
Changed Travis script to also run code coverage, which is also now checked against reasonable threshholds.
-
Changed default
lib/server
to consume all available config for each route in addition to therootPath
. -
Added CLI executable
combohandler
to replace the oldapp.js
, among many, many other things. -
Added new multi-process implementation built on top of
node
v0.8.x+ corecluster
module. -
Added oodles and oodles of tests.
-
Added
mkdirp
,nopt
, andrimraf
dependencies. -
Updated
request
andshould
dependency versions. -
Updated package.json config with defaults for
port
andserver
options.
-
Changed default
combine
middleware to return an array of middleware instead of a function, allowing addition of bundled middlware depending on configured values. (Express flattens any arrays passed as route callbacks) -
Changed default error handler to pass the error to
next()
when it isn't aBadRequest
, which was itself extracted to a separate file. -
Changed CSS
url()
rewriter to use built-inpath
methods instead of custom algorithm, with expanded test coverage. -
Added
bodyContents
andrelativePaths
arrays tores.locals
object in the defaultcombine
middleware, allowing subsequent middleware access to those values. -
Added
cssUrls
middleware, an extraction of the CSSurl()
rewriter, with the optional capability of rewriting@import
statements as well. -
Added
dynamicPath
middleware, supporting route params (e.g.,:version
) that point to different trees under the same filesystem root. -
Added
respond
middleware for convenience. It simply responds 200 with the contents of theres.body
property. -
Added code coverage with
istanbul
. -
Added Travis support.
-
Added Daniel Stockman as a maintainer.
-
Updated mocha dependency to 1.9.0.
-
Updated express dependency to 3.2.x. [Eric Ferraiuolo]
- Added a
basePath
config option that can be used to specify a non-combohandled base path. Relative URLs in combohandled CSS files will be automatically rewritten to be relative to this base path rather than the combo URL. [Ryan Cannon]
-
Supports Express 3.0.
-
Removed support for Cluster, since it's dead.
-
Added support for symlinks that point to files outside the root path.
-
Added support for setting
Cache-Control
andExpires
headers via themaxAge
config property. [Daniel Stockman] -
Errors now provide more descriptive messages. [Daniel Stockman]
-
Deny requests with non-whitelisted or differing MIME types. [Daniel Stockman]
-
Return a quick error on requests that are obviously truncated or otherwise mangled. [Daniel Stockman]
- Use Cluster instead of Spark2.
- Chasing the latest Express and Connect versions again.
- Now works with latest Express (2.x) and Connect (1.x).
- Initial release.