- add possibility to provide a default value to method arguments that will be used by a FlowRunner
- change serialization method params in the JSDoc, the tag
paramDef
can contain UI representation options
- add a new JSDoc tag
metaInfo
to collect additional data about an API Method
- fix parsing JSDoc for API Methods
- fix parsing JSDoc for API Methods
- fix parsing JSDoc for API Methods
- fix parsing Date/Checkbox config items
- rework URL encoding
- fix ordering for API Service configuration items
- revert changes introduced by v7.4.17 (URL encoding)
- add a new attr @systemNonBillableRequest to specify an API method that shouldn't be counted in the billing
- rework URL encoding
- add a ability to specify serviceInfo for an API Service
- add a new attr @executionTimeoutInSeconds to specify an API method execution time
- add support for the action block color properties
- keep backward compatibility for API Service arguments
- improve defining API Methods Arguments
- upgrade "backendless": "^7.3.3"
- upgrade "backendless": "^7.3.2"
- add support for setting multi cookies in response headers
- add support for the argsMappings tag
- support setting automation URL
- do not clean env for workers in PRO
- upgrade "backendless": "^7.2.4"
- change xml encoding to UTF-8
operationName
should always be present
- upgrade "backendless": "^7.2.2"
- add an ability to specify for API Methods
operationName
description
registerAsAutomationAction
- do not send logs if global logger is OFF
- upgrade "backendless": "^7.2.0"
- fix running workers in local env
- upgrade "backendless": "^7.1.0"
- install with NodeJS 18.x
- BKNDLSS-33936 Fix services broadcasting for the Status Service
- upgrade "backendless-js-services-core": "0.0.24"
- upgrade "backendless-js-services-core": "0.0.23"
- fix default logger is not applied to logging config
- add an ability to TEXT type in Service Config Items
- add workers for debugging
- add support for NodeJS v18.x
- add an ability to specify
description
for API Service Method arguments - fix the
beforeDownload
event handler for File Service
- add new
beforeDownload
event handler for File Service
- upgrade "backendless": "^7.0.3"
- upgrade "backendless": "^7.0.2"
- apply LogLevels in the JSCodeRunner from the context
- fix resolving local config in the debug mode
- fix initializing config for the StatusService
- fix reconnection to the redis
- fix Consul config
- integrate with the Status Service
- upgrade "backendless": "^6.7.0"
- upgrade "backendless-consul-config-provider": "^2.0.2"
- cleanup logs
- cleanup env variables for workers
- upgrade "backendless": "^6.6.5"
- BKNDLSS-31341 Error during logs flushing Session timeout
- BKNDLSS-31251 Dispose idle cached workers
- upgrade "backendless": "^6.5.0"
- upgrade "backendless": "^6.4.0"
- BKNDLSS-29914 fix an issue hanging receiving tasks after parsing tasks fail
- BKNDLSS-29791 kill cached workers that were finished by timeout
- fix creating a UnitOfWork instance in before/after Transaction event handlers
- add optional logs for the ManagementServer
- upgrade "backendless": "^6.3.14", fix
Error during logs flushing regeneratorRuntime is not defined
- upgrade "backendless": "^6.3.9"
- attach some HTTP Headers from received tasks to all requests from the coderunner
- improve logging by splitting
verbose
options on twodebug
andverbose
- add truncation for long log messages
- stop processing outdated tasks from the queue
- add a specific heartbeat timeout option for
ANALYSE_SERVER_CODE
tasks
- fix parsing tasks when compression is enabled
- fix ERR_INVALID_ARG_TYPE error when there is no task result and compression is enabled
- update configs locations for config/coderunner/compression
- update modules
- update configs locations for config/coderunner/rateLimit
- add an ability to limit tasks for apps
- add
compression.threshold
config
- add support for
before/after Upsert/UpsertBulk
events
- do not cache worker if it fails due to FS error
- fix generating a zip file for deploying
- upgrade NPM modules to the latest versions
"commander": "^2.12.2" => "^8.3.0"
"glob": "^6.0.4" => "^7.2.0"
"ioredis": "^4.9.0" => "^4.28.1"
"jszip": "^2.6.1" => "^3.7.1"
"winston": "^3.2.1" => "^3.3.3"
"winston-daily-rotate-file": "^3.8.0" => "^4.5.5"
"chai": "^4.2.0" => "^4.3.4"
"eslint": "^4.19.1" => "^7.32.0"
"mocha": "^8.4.0" => "^9.1.3"
"should": "^13.2.1" => "^13.2.3"
"supertest": "^3.1.0" => "^6.1.6"
- fix pre running idle workers when the caching enabled
- add pre running idle workers
- improve logging for the master process
- fix using sentinel auth
- upgrade
JS-SDK
to v6.3.2
- enable using sentinel auth
- upgrade
JS-SDK
to v6.3.1
- fix the problem with timeout when deploying a big business logic, change deployment process to asynchronous
- upgrade
JS-SDK
to v6.2.25
- upgrade
JS-SDK
to v6.2.22
- upgrade
JS-SDK
to v6.2.20 - add "before/afterGroup" and "before/afterCountInGroup" Event Handlers for the Data Service
- add support for Event Handlers of the Cache and AtomicOperation Services
- temporary rollback changes related to customDomain
- upgrade
JS-SDK
to v6.2.11
- fix using of httpProtocol for initializing the JS-SDK
- add an ability to init the JS-SDK with custom domain only
- fix killing stuck workers
- add
appId
to the process title
- improve the performance of json stringification
- upgrade
JS-SDK
to v6.2.3 - upgrade
backendless-consul-config-provider
module to v1.0.15
- remove legacy GEO API
- upgrade
JS-SDK
to v6.1.8 - upgrade
backendless-consul-config-provider
module to v1.0.14
- improve getting current statistics about workers
- resolve worker only after app logs are flushed to the server
- add an observer for workers load to detect when there are not enough workers
- add support for
before/after OAuth login/register
events
- add support for
before/after transaction
events - upgrade
JS-SDK
to v6.1.4
- fix
PersistenceItem
API for loading object by id - upgrade
JS-SDK
to v6.1.2
- fix problem with unkillable workers when worker's cache is disabled
- add graceful shutdown, the JS-CodeRunner will wait until complete all the taken tasks
- fix traffic compression between server and coderunner and config prop names
- add traffic compression between server and coderunner
- upgrade
JS-SDK
to v6.0.6
- upgrade
JS-SDK
to v6.0.0
- provide public config in Backendless.Config
- put fileDownloadUrl, publicAPIUrl and internalAPIUrl to Backendless.Config
- fix a problem when EventHandler fails with "not existing user token"
- upgrade
JS-SDK
to v5.8.12 - add "beforeLoginAsGuest" and "afterLoginAsGuest" Event Handlers
- upgrade
JS-SDK
to v5.8.6
- upgrade
JS-SDK
to v5.7.2
- fix a problem with initializing JS-SDK
- upgrade
JS-SDK
to v5.7.1
- remove setting "access-control-expose-headers" response HTTP header
- upgrade
JS-SDK
to v5.4.3 - fix a problem when specified custom headers are not accessible in Web Browser
- upgrade
JS-SDK
to v5.4.2
- add an ability to specify HTTP Response Headers
- upgrade
JS-SDK
to v5.4.0 - add EventHandlers for EmailTemplates
- add "msgBroker.ssl" config option for quick enabling SSL connection to Redis
- add Redis TSL config mapping for Consul
- upgrade
backendless-consul-config-provider
module to v1.0.13
- upgrade
backendless-consul-config-provider
module to v1.0.12
- upgrade
backendless-consul-config-provider
module to v1.0.11
- upgrade
backendless-consul-config-provider
module to v1.0.10
- add Sentinel Support
- fix issue with concurrent workers when caching is not enabled
- fix incorrect cloud workers stopping with winston logger enabled
- add an ability to put worker's logs into file
- fix composing run options from Consul
- add an ability to process tasks with low-priority
- fix reconnection to redis after redis restart
- upgrade Backendless JS-SDK to v5.2.7
- upgrade Backendless JS-SDK to v5.2.5
- upgrade Backendless JS-SDK to v5.2.3
- fix message about "Worker expiration by heartbeat timeout"
- upgrade Backendless JS-SDK to v5.2.1
- fix: no tasks execution in debug mode
- upgrade dependency Backendless JS-SDK to version
^5.2.0
- add workers caching for Backendless PRO and Manage installations, it reduces invocation time of any Business Logic to almost 4 times
- add Consul as Config Manager, for using shared configs
- add Management HTTP Server for getting current state of workers
- add various Log Providers like:
file
,logstash
,papertrail
- now
req
object inbefore|after
DeleteFileOrDirectory EventHandler containspattern
andrecursive
values
- remove config file from cache after reading
- now methods of
child_process
module are not accessible in Cloud
- add
--zip-size-confirmation
command line argument to confirm generated zip size before deploying it
- fixed
runner is already attached
error when re-run coderunner in debug mode
- add process id to every Backendless.logging message
- add app id (or its alias) to every stdout message
- update Backendless and dev dependencies
- fix: PersistenceItem.save ignores ownerId if it's the only property in the payload
- upgrade dev dependencies
- upgrade dependency Backendless JS-SDK to version
^4.4.3
- remove
tableName
argument from bulkCreate EventHandler
- add bulkCreate EventHandlers
- add bulkCreate method to PersistenceItem
- add
deletable
option toPersistenceItem.saveWithRelations
method allowing auto deletion of 1:1 or 1:N relations
- stop dead workers on timeout in
cloud
andpro
modes
- code deployment is now 5 times faster
- upgrade dependency Backendless JS-SDK to version
^4.3.4
- add Messaging Event Handlers:
- beforePush
- afterPush
- beforePushWithTemplate
- afterPushWithTemplate
- upgrade dependency Backendless JS-SDK to version
^4.3.2
- add duplicateStrategy option allowing service or models subclasses
- fix: 'Nothing to debug/deploy' error when only timers are present
- fix: PersistenceItem.saveWithRelations ignores deep stale
- update dependencies (including backendless JS SDK)
- fix: 'call stack issue' when deploy service with circular dependencies in JSDOC
- add unhandled promise rejection printing to log
- PersistenceItem constructor now can accept string with objectId now
- PersistenceItem.find method works with plain object and simple 'where' strings
- add PersistenceItem.deleteRelation method
- add PersistenceItem.ref method convenient to minimize payload for model update requests
- update dependencies
- add static methods: count, save, bulkUpdate to PersistenceItem
- add saveWithRelations method to PersistenceItem
- PersistenceItem constructor now accepts arguments
- fix: undefined service path in model build output
- fix: geo points are not mapped to Backendless.GeoPoint
- Don't send relation props to server when saving PersistenceItem
- Don't send request to server if no props to save when saving PersistenceItem
- Always print business logic error stack to console during tasks execution (unless it's timeout error)
- print task execution time
- update Backendless JS SDK dependency to latest
- Update Backendless JS SDK to version 4.0.10
- Update Backendless Request to version 0.0.8
- No sandbox for Market Place business logic
- add bulkRemove and fetch methods to PersistenceItem
- Apply current user id before service method execution
- add missed
response
argument inUsers.afterFind
handler
- add missed
response
argument inMessaging.afterDeviceRegistration
handler
- Change events handlers params
- Remove media events
- Backendless Server v4.0 support (new communication protocol, deployment models)
- Service Methods may have specific route defined in a jsdoc
@route
tag. Route may include path params like/order/{orderId}/item/{itemId}
- Service and service methods description defined in jsdoc is visible in Backendless Dev Console
- In service method there is
this.request
containing the execution context including http path, headers, path params, query params, user, user roles and so on - Service constructor now accepts service config and execution context arguments
- Add
Backendless.Request
giving a possibility to make one liner http requests from BL - userToken of a user originated the BL execution is now injected into every Backendless API call made from the BL
- fix invalid object references calculations during json parse if object contains
___dates___
meta fields - decorate dates into
___dates___
metafields in a response to the server - add
setRelation
andaddRelation
methods toPersistenceItem
class - add support for async service methods
- fix processing files whose names start with underscore
- Standalone work in
cloud
mode. CodeRunnerDriver is not required anymore. app.files
config param was replaced byapp.exclude
. Coderunner now searches for all files in the current working directory except those that matchesapp.exclude
patterns- add retry strategy for messages broker
- add
Backendless.ServerCode.Data
alias toBackendless.ServerCode.Persistence
- stop logs sending attempt for RAI tasks
- add
Backendless.ServerCode.verbose()
method, giving a possibility to enable verbose logging mode
- update Backendless SDK dependency to latest
- resolve dates meta fields in server's JSON
- when critical error, exit with zero status code to avoid too noisy NPM complains
- add
PRO
mode
- in
CLOUD
mode the CodeRunner forwards all console logging (including CodeRunner task processing info) toBackendless.Logging
which makes it possible to monitor deployed Business Logic - When run in production, the CodeRunner now prints how much times it takes, to load a context specific business logic modules and their dependencies
- fix:
false
returned from service's method results innull
result on client side
- fix
HashMap cannot be cast to InvocationResult
error when invoking service method which returns non string value
- change: same response shape for each task executors
- fix
Can not parse generic service
error when publish service with third-party dependencies
- show error line number in model summary output
- in 'verbose' mode print full stack trace of the module validation errors
- wrap a value returned from custom event handler into an object ({result: value}) except those cases where the value is already an object
- multiple services is now allowed to deploy
- default service version is
1.0.0
(was0.0.0
)
- fix
timeout error
when custom event handler returns aFunction
- fix publisher bug related to npm2 env and a module used by two other modules
- update
eslint
,backendless
to their latest versions - fix
undefined
custom event name in model summary output - remove redundant
(debug)
suffix from service name being registered fordebug
- fix
service not found
error incloud
mode - increase server code parsing time in
cloud
mode
- add temporary limitation to single service in deployment
- update
eslint
,should
,jszip
andrequest
to their latest versions - change service meta in the result of
PARSE-SERVICE
task as it is required by server - make single call to api engine to register all debug services
- optimize a list of dependencies included to the deployment in
npm3
env - fix Runner can't find the code deployed from Windows machine
- fix deployment does not include all dependencies in
npm3
env
- update
backendless.js
tov3.1.8
- fix non-obvious error message (
handler not found
) that occurs incloud
mode at the time of script loading - don't allow to deploy a server code that contains errors to production
- include all non dev dependencies into deployment zip
- print ServerCode error stack if run in verbose mode
- fix
service not found
error in cloud mode - make it possible to specify application files path pattern from command line
- in
debug
mode replace confusing service deployed message by service registered
- update
backendless.js
dependency tov3.1.7
- add support for services
- upgrade
redis
client tov2.5.3
- print more information about discovered business logic