- BREAKING! Now using Express 5.x.x, migration guide: https://expressjs.com/en/guide/migrating-5.html
- Removed http2-express-bridge.
- Update SetMeUp and other dependencies.
- Compatible with the APP_ENV environment variable (in addition to NODE_ENV).
- Possibility to set a path and handler on prepend / appended middlewares.
- Updated dependencies.
- Updated dependencies.
- Handle URI errors if the errorHandler setting is enabled.
- Updated dependencies.
- Do not warn about the missing express-body-parser-error-handler package.
- Convert statuses to numbers before sending helper responses.
- NEW! Support for HTTP2, can be enabled by setting app.http2 to true.
- Support for the express-body-parser-error-handler module.
- Code refactoring.
- Updated dependencies.
- Updated dependencies.
- New "errorHandler" setting to log all failed requests.
- Fixed regression bug on 4.6.0 (removed from NPM).
- Updated dependencies.
- Updated dependencies.
- Updated dependencies.
- Removed unnecessary logger cleanup methods.
- Updated dependencies.
- Updated dependencies.
- New app.head() shortcut.
- Updated dependencies.
- Updated dependencies.
- Option to disable the raw body-parser by setting rawTypes to null.
- Updated dependencies.
- Disable the X-Powered-By header by default.
- Updated dependencies.
- Removed the "moment" dependency.
- Updated dependencies.
- Updated dependencies.
- Updated dependencies.
- NEW! Added raw and text body parsers.
- DEPRECATED! The legacy plugin for v3 is now officially deprecated.
- Some refactoring here and there.
- Updated dependencies.
- Updated dependencies.
- Force status codes as number on app.renderError().
- Updated dependencies.
- Updated dependencies.
- New app.set() shortcut.
- Updated dependencies.
- TypeScript types are now exported with the library.
- Updated dependencies.
- Defining settings.general.debug = true should also add "debug" to the Anyhow logger levels.
- Updated dependencies.
- NEW! Routes module to load and manage routes, supports Swagger specs.
- NEW! All app render methods now accept a status code as last parameter.
- Shortcut: "app.ssl=false" == "app.ssl.enabled=false"
- General refactoring.
- Updated dependencies.
- Fixed app.renderError(), should always return a JSON now.
- Updated dependencies.
- Index is now a dedicated Expresser class.
- Updated dependencies.
- Improved error responses using app.renderError().
- Fixed mutation issues when logging certain types of errors.
- The Logger preprocessor now clones objects beforing logging.
- Fixed the timeout behaviour on the app server.
- A NEW EXPRESSER, BUILT FROM SCRATCH WITH TYPESCRIPT!
- Migration docs: https://github.com/igoramadas/expresser/wiki/Migration-from-v3-to-v4
- FEATURE-FREEZE ON V3!!! Next Expresser v4 will be written from scratch.
- Updated dependencies.
- Updated dependencies.
- NEW! Added option to include / exclude labels from system.getInfo() output.
- Updated dependencies.
- BREAKING! SystemUtils getInfo() renamed process attributes: memoryUsage to memoryUsed, memoryHeapUsage to memoryHeapUsed.
- Settings (de)encryption now using up-to-date methods - note that your current key might need to be updated.
- Improved app.renderError().
- Updated dependencies.
- System getInfo() util has new property names on "process" information.
- Now including a package-lock.json file.
- Maintenance release with updated dependencies.
- Improved Logger, it now better handles moments, dates etc.
- Logger console now respects settings.logger.sendTimestamp option.
- Updated dependencies.
- NEW! App.renderText() to send data as plain text to the client.
- NEW! The app server timeout can be set on settings.app.timeout.
- Updated dependencies.
- NEW! App trustProxy option, default is 1.
- NEW! Session proxy and resave settings.
- Renamed App "compressionEnabled" setting renamed to "compression".
- Removed unecessary files from published package.
- NEW! Session saveUninitialized setting, default is false.
- BREAKING! Session and cookie "secret" setting meged onto settings.app.secret.
- BREAKING! Session cookies now secure be default (settings.app.session.secure = true).
- Fixed issues with Session / Memory Store expiration.
- Updated dependencies.
- Maintenance release with updated dependencies.
- Session now gets instantiated with a proper "checkPeriod".
- Removed deprecated code.
- NEW! Possible to disable Logger console styles by using settings.logger.styles = false.
- Updated dependencies.
- NEW / BREAKING! Now using express-session with memory store instead of cookie based.
- NEW! Logger now emit important logging events: Logger.on.warn, Logger.on.error, Logger.on.critical
- BREAKING! Default views path moved from /views to /assets/views.
- Fixed chalk styles for deprecated Logger messages.
- Updated utils.browser.getClientIP() to better support Socket.IO.
- App.renderError will NOT log an error automatically now.
- Improved exception logging when using the Logger.
- Updated dependencies.
- Fixed "argsCleaner" on Logger when not passing an array.
- Added console style for deprecated messages on Logger.
- Updated dependencies.
- NEW! Using a faster event emitter.
- Updated dependencies.
- NEW! Events emitter is now exposed to external code.
- NEW! NetworkUtils now can return IPv4 and IPv6 addresses.
- BREAKING! Settings.unwatch() now replaces Settings.watch(false).
- BREAKING! BrowserUtils.getDeviceString upgraded to getDeviceDetails.
- BREAKING! SystemUtils.getIP deprecated in favour of the new getIP/getSingleIPv4 helpers on NetworkUtils.
- BREAKING! Calling module methods via events is not possible anymore (not worth the performance penalty).
- BREAKING! Plugins do not emit a "before.init" event any longer.
- RENAMED! App.server is now App.expressApp.
- RENAMED! App.getRoutes is now App.listRoutes.
- Massive code refactoring!
- NEW! Logger has a new "compact" option to compact log output to single line, enabled by default.
- NEW! Logger "onLog" callback (so you can add custom post-log routines).
- NEW! App has now a "version" attribute taken directly from package.json.
- NEW! Accept invalid certificates by using "settings.app.sll.rejectUnauthorized = false".
- RENAMED! Logger "maxDeepLevel" setting renamed to "maxDepth".
- Code cleanup and some bits of refactoring.
- Updated dependencies.
- Updated dependencies.
- Bits of code refactoring.
- Updated dependencies.
- NEW! Helper function "sleep" on IO utils to delay async code execution.
- Updated dependencies.
- Updated dependencies.
- Fixed bugs when bundling and compressing assets (mincer).
- Support for sourceMaps on bundled JS temporarily disabled.
- NEW! Now using async / await whenever applicable. Callbacks are being phased out!
- NEW! App has now a getRoutes helper to list all registered routes.
- NEW! Logger has now a
maskFields
option in addition to theobfuscateFields
. - NEW! Now using CoffeeScript v2.
- DEPRECATED! Database plugins are now standalone and the old
database.coffee
wrapper is not deprecated. - Lots of unecessary modules and code removed, plus the usual bug fixing :-)
- Fixed default views path (/views).
- Updated styles for the Logger console.
- General fixes.
- Fixed major bug initializing plugins introduced with 2.3.4 (unpublished).
- BREAKING! Old settings.path.viewDir|publicDir moved to settings.app.viewPath|publicPath.
- Improved handling of errors rendering views and data on App.
- Bits of code refactoring.
- Improved utils.data to better handle empty and invalid strings.
- Updated dependencies.
- Updated dependencies.
- Bug fix on utils.io.getFilePath.
- BREAKING! Utils split into smaller classes (utils.browser, utils.data, utils.io, utiils.network, utils.system).
- BREAKING! Session and Cookie options namespaced on settings (settings.app.session., settings.app.cookie.)
- Logger module is now more resilient (logging data from closed streams won't throw an exception for example).
- Default name engine renamed from jade to pug.
- Updated dependencies to their latest versions.
- New util: maskString, to mask phone numbers and other values.
- Updated dependencies to their latest versions.
- New app.sessionMaxAge setting to expire sessions.
- The settings.general.ioCacheTimeout is now 30 sec (was 60 sec).
- Updated dependencies to their latest versions.
- Minor refactoring.
- Unpublished due to typo on Pug version.
- History starts here :-)
- First public release.