Node.js framework v2.9.0 Release Notes
Release Date: 2017-11-16 // over 6 years ago-
News :
- ➕ added:
WebSocketClient
- ➕ added:
$ASYNC(schema, callback, [index], [controlller])
alias toSchemaBuilderEntity.$async()
- ➕ added:
ArrayBuffer.prototype.toBuffer()
- ➕ added:
AUTH(fn)
is an alias toF.onAuthorize = fn
- ➕ added:
controller.success()
alias tocontroller.json(SUCCESS(value))
- ➕ added:
CORS()
alias toF.cors()
- ➕ added:
DatabaseBuilder.paginate(page, limit)
- ➕ added:
F.config['allow-compile']
can disable the whole compilation of static files - ➕ added:
F.config['default-dependency-timeout']
it's a timeout for module dependencies - ➕ added:
F.path.rmdir(directory/directories, callback)
- ➕ added:
F.path.unlink(file/files, callback)
- ➕ added:
LOCALIZE()
a new global alias toF.localize()
- ➕ added:
MAP()
a new global alias toF.map()
- ➕ added:
MERGE()
a new global alias toF.merge()
- ➕ added:
MIDDLEWARE()
a new global alias toF.middleware()
- ➕ added:
NOSQL('users').backups([filter(doc)], callback(err, response))
returns all backups - ➕ added:
SchemaOptions.invalid(name, [value], [path], [index])
alias to$.errors.push() + callback()
- ➕ added:
SchemaOptions.success()
alias tocallback(SUCCESS(value))
- ➕ added:
controller.sitemapid
contains a sitemap identificator - ➕ added:
controller.sitemap_add(parent, name, url)
appends a new item into the sitemap per request - ➕ added:
@{sitemap_add(parent, name, url)}
appends a new item into the sitemap per request - ➕ added:
SchemaEntity.required('fieldname', boolean/function(model))
which can disable/enable validation for this field
⚡️ Updates :
- ⚡️ updated:
sitemap
routing can contain an additional path, e.g.#sitemapid/path/
- ⚡️ updated:
F.localize()
supports sitemap routing - ⚡️ updated:
F.merge()
supports sitemap routing - ⚡️ updated:
F.map()
supports sitemap routing - ⚡️ updated:
F.http(mode, [options], [middleware(listen)])
added a new argumentmiddleware
- ⚡️ updated:
debug.js
now reads directories according to the config (author: @luoage) - ⚡️ updated: config parser supports
config
sub-type - ⚡️ updated:
controller.$exec()
-->callback
is by defaultcontroller.callback()
- ⚡️ updated:
F.localize()
has enabledcompression
by default - ⚡️ updated: HTTP server is listening after the framework is completely loaded
- ⚡️ updated: (IMPORTANT) HTTP cache in dynamic content and static files
- ⚡️ updated:
F.prototypes()
by addingOperationOptions
- ⚡️ updated: ErrorHandling in schemas (supports inline validation and advanced conditions)
- ⚡️ updated:
F.noCache()
is obsolete - 📇 renamed:
allow-handle-static-files
toallow-static-files
🛠 Fixes :
- 🛠 fixed: (IMPORTANT)
DatabaseBuilder.in()
- 🛠 fixed: (IMPORTANT)
U.ls2()
- 🛠 fixed: (IMPORTANT)
WebSocket
implementation (author: @JozefGula) - 🛠 fixed:
ArrayBuffer
in webosocket - 🛠 fixed:
F.path.mkdir()
on Windows (author: @molda) - 🛠 fixed:
F.restore()
on Windows (author: @molda) - 🛠 fixed:
F.rmdir
removes all files and directories - 🛠 fixed:
JSON
type in Total.js schemas - 🛠 fixed:
MODEL()
,MODULE()
,INCLUDE()
now are direct aliases - 🛠 fixed: a check for maximum length of request data
- 🛠 fixed: Date formatting with
a
value - 🛠 fixed: empty localization in view engine e.g.
@()
- 🛠 fixed: external static routing in view engine on Windows
- 🛠 fixed: NoSQL filtering with
or
- 🛠 fixed: NoSQL multiple updates
- 🛠 fixed: NoSQL sorting of boolean values in larger dataset
- 🛠 fixed: responding on
range
header - 🛠 fixed: unit testing (author: @ckpiggy)
- 🛠 fixed:
schema.setPrefix()
in nested schemas - 🛠 fixed: sitemap localization
- 🛠 fixed: CORS custom headers
- 🛠 fixed: NoSQL date filtering
👌 Improvements :
- 👌 improved: performance and security
- ➕ added: