- Support lazy-loading
mongooseInstance
inModelFactory
- Add an option for a custom
mongooseInstance
inModelFactory
to support libraries that export models
- Add jest support
- Add cross-env support
- Include map files and src in the npm shipment for a better debugging experience
- Enable
useUnifiedTopology
by default for the mongoose connection
- Bug fix: unexpected IServerAppConfig.cacheFiles behaviors (fixed as an in-code patch to the underlying library)
- Stop manual pluralization of mongoose models in ModelFactory (it was causing edge-case problems)
- Timeout for 5 seconds before auto-creating new collections (to give mongoose time to register all models)
- Improve internal tests and sync some of it the README example
- A small type bug fix for newer TypeScript versions
- Internal workflow improvement
- Create collections for models provided in IServerAppConfig ahead-of-time (needed for first-time ACID transactions)
- Pluralize all model names
- Add
IServerAppConfig.cacheFiles
- Add
IServerAppConfig.cacheOptions
- Add
IServerAppConfig.mongooseConnectionOptions
- Removed Node and Yarn engines version requirements
- Handled mongoose.connect URL string parser deprecation
- Removed yarn.lock to avoid caching non-latest version during installations in the future
- Added 'husky' and 'npm-run-all' to meseret dependency exports (and used them internally too)
- Re-ordered middleware stream positions to fix some bugs (POSSIBLY A BREAKING CHANGE, in some very extreme cases)
- Upgraded to TypeScript 3.0
- Fix: wrong "https" console.log instead of "http" when ServerApp starts
- Updated dependencies, made changes in tsconfig.json and added declarations.d.ts
- Updated and fixed the version numbers of all dependencies to avoid future static-type issues
- Updated all dependencies and made necessary static type changes and fixes
- Rolled back to the previous project structure in an attempt to fix some bugs.
- Changed
path
tohostname
inhttpServers
andhttpsServers
IServerAppConfig
configuration.path
is now deprecated and will be removed in version 2. - Re-added the type
ModelFactory.documetify
as a deprecated method (to fix the wrong breaking change from the previous patch release). It will be removed in version 2. - Improved
tsconfig.json
, linting, installed packages and project structure.
- fixed: typo
documetify
todocumentify
inModelFactory
- fixed:
ServerApp
not properly setting the default NODE_ENV env from the environment variables
- fixed bugs in the example code of the README
- fix: removed
outDir
androotDir
options fromtsconfig.json
- FEATURE: moved some
devDependencies
todependencies
inpackage.json
(resulting in much better static-type support) - FEATURE: improved
tsconfig.json
and eliminated alldevDependencies
(makingprettier
andnodemon
commands available)
- fix: added
typeRoots
intsconfig.json
- fixed typescript configuration (no longer requires
tslib
) - updated dependencies (and, internal: switched from
tslint
toprettier
for code linting) - internal: moved built
*.js
and*.d.ts
files to their ownlib
directory - internal: removed unnecessary
tslint.json
and.editorconfig
files
- Improved and amended the README
- Improved the README
- Add support for standard
multipart/form-data
file uploads' request body parsing; remove support forbodyParserExtendTypes
(swapped koa-bodyparser for koa-body) - Fix: some session related config options always being set to true
- Support a GridFS instance through
ServerApp.grid
(using gridfs-stream) - Better examples and explanations in the README
- Fix the SocketIO namespace type bug
- Update packages
- Add options to easily configure and read the environment (default:
process['NODE_ENV'] || 'development'
) - Add a
name
shortcut toServerApp
fromServerApp.config
- Enhanced
json
configuration (new options for "pretty" responses) - Enhanced
bodyParser
configuration (new options for encoding, and extending with new types, disabling, setting size limits for form, JSON and text request body types) - Enhanced
session
configuration (new options forsessionCookieKey
,sessionHttpOnly
,sessionMaxAge
,sessionOverwrite
,sessionRenew
,sessionRolling
andsessionSigned
) - Minor code improvements
- Improved the package description
- Fixed some issues in the README
- Fixed an issue in the README
- Improved documentation (in the README) and added package keywords
- Add SPA support
- Upgrade package dependency requirements
- Change package description and keywords
- Improve README
- Fix koa-router usage bug
- README fix.
- Minor improvement in the way koa-routers are handled.
- FIX: Make
ServerAppConfig.keys
optional. - Improve README.
- Construct Koa app when
ServerApp
is constructed, before callingServerApp.start()
. - Add key and session support.
- Improved README and package.json.
- support Koa@1 legacy middleware internally, using koa-convert.
- add peer dependencies.
- fix a README doc problem.
- FIX (maybe, BREAKING): turn on
IServerAppConfig
'slog
,compress
,bodyParser
andjson
methods by default. - improve README
- improve README
- FEATURE: Add more
IServerAppConfig
options:compress
,bodyParser
,json
andlog
- Better README
- BREAKING DOC: remove the demo application out of this package.
- Bug fixes
- MAJOR FEATURE: Socket.io support
- BREAKING: rename
ModelFactory.doc
toModelFactory.documentify
- BREAKING: rename
ModelFactory.mod
toModelFactory.modelify
- BREAKING: rename
IServerAppConfig.routes
toIServerAppConfig.routers
- improved demo that now uses Angular, Socket.io and separates logic from router (NOTE: demo is still in beta)
- improve the README and package.json
- BREAKING: improve ModelFactory (remove its abstract constraint)
- add a config option for cache control type
- new and better end-to-end demo app (named "Task Organizer")
- enable 'index.html' as the default load file when hosting public directories
- Initial release with basic features (
ServerApp
,IServerAppConfig
,ModelFactory
andFunctionsType
)