-
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-symlinkswhen passed.
-
Fixed a few
dynamicPathmiddleware 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
dynamicPathmiddleware 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
errorHandlermiddleware 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
nodev0.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
setupMasterargs. Customserverconfig 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.jsandconfig.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/serverto consume all available config for each route in addition to therootPath. -
Added CLI executable
combohandlerto replace the oldapp.js, among many, many other things. -
Added new multi-process implementation built on top of
nodev0.8.x+ coreclustermodule. -
Added oodles and oodles of tests.
-
Added
mkdirp,nopt, andrimrafdependencies. -
Updated
requestandshoulddependency versions. -
Updated package.json config with defaults for
portandserveroptions.
-
Changed default
combinemiddleware 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-inpathmethods instead of custom algorithm, with expanded test coverage. -
Added
bodyContentsandrelativePathsarrays tores.localsobject in the defaultcombinemiddleware, allowing subsequent middleware access to those values. -
Added
cssUrlsmiddleware, an extraction of the CSSurl()rewriter, with the optional capability of rewriting@importstatements as well. -
Added
dynamicPathmiddleware, supporting route params (e.g.,:version) that point to different trees under the same filesystem root. -
Added
respondmiddleware for convenience. It simply responds 200 with the contents of theres.bodyproperty. -
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
basePathconfig 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-ControlandExpiresheaders via themaxAgeconfig 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.