All notable changes to this project will be documented in this file. This project adheres to Semantic Versioning.
- Updated all dependencies due to security issues
- Switched to API Key authorization. Username + password usage is no longer supported as of Vertec 6.7 anyway.
- Replaced memcached with general caching api solution (e.x. @momsfriendlydevco/cache)
- Updated all dependencies
- Expired token is not handled properly (#104)
- Requests with an invalid token will be retried instead of simply returned (#103)
- Response parsing fails if Server (Vertec 6.3) simply returns "Internal Server Error" (#102)
- Changed auth method and included usage of a token according to latest changes of Vertec >=6.2 (#100)
- Added more zip transformer options, added forceArray option to be default
- Added multiple requests in parallel mode
- Added zip method to zip together properties of an object
- Added setRootKey method to enable setting a key other than "data"
- Added transformer feature before putting into cache (#95)
- Added feature to merge specific response properties into result, with optional array transformation (#97)
- Added query class for select operations
- Fixed some more bugs with parallel mode
- Fixed bugs with parallel mode and performing param injection
- Fixed bugs with parallel mode where providing only one id in an array did not result in correct parallel response return format
- Fixed bug where zip transformation needs to be placed in correct order into transformers array
- Fixed bug with running multiple transformers which all create new return values
- Fixed wrong calculation of softExpire timestamp
- Removed empty cache item check due to missing business logic per use case
- Updated simple-parameter-injector to 1.0.1 due to a nasty bug with parameters being modified
- Cache key did not consider findById params (#98)
- Removed Vertec request time from result object due to sideeffects (#96)
- addFields accepts one array argument with fields to add
- Added Vertec request time to result object (#96)
- cacheKey includes cacheTTL just in case it should be lowered without flushing the whole cache
- Logging of build xml string only when sending request
- Added documentation for v3 query feature (#91)
- Multiple create/update objects won't be saved (#90)
- this.log with parameter != string produces an uncatched error resulting in a crash (#89)
- multiFindById: Making parallel requests using findById (#88)
- Multiple response objects will now be returned as array rather then merged (#87)
- Execute multiselect requests in parallel (#85)
- Updated dep packages (#86)
- Forgot to compile and package new version
- Fixed crash on missing response object (#84)
- Implemented feature for splitting alias with multiple dots into an object (#83)
- Enabled multiple query elements in one request (#81)
- If an expression alias contains a dot it will be transformed like an object path
- findById() now behaves like select() (#78)
- Extended pending request storage to every request (#77)
- Error logging within retryStrategy results in error due to wrong 'this' reference (#75)
- Stores pending select query promise for mulitple identical requests (#74)
- Added retry functionality on basic/unknown errors (#73)
- Allow select with only a query (#72)
- Interpret HTML output as error (#70)
- Added more logging (#21)
- Fixed digester errors (#69)
- Enforcing raw output logging of response data strings (#64)
- Added indentation for xml building for better log outputs (#65)
- Extracted xml converter class into separate simple-xml-converter package and replaced class (#58)
- Extracted parameter injector class into separate simple-parameter-injector package and replaced class (#58)
- Modified ParamsInjection delimiter to some random string (#59)
- Moved sensible data out of module export scope (#62)
- Obscurified sensible data in logs (#61)
- Params replacement also available for fields (#55)
- Moved all XML related stuff to XmlConverter class (#49)
- Refactored XmlConverter class (#50)
- Cleanup after responsibility clarification (#54)
- Objects with empty arrays won't be included in XML (#57)
- Refactored XmlConverter Class (#50)
- Refactored Main Class (#51)
- Added special chars handling (#47)
- Replaced simple-xml with own object to xml converter (#43)
- Simplified object building process (#44)
- Moved babel package to dev deps (#46)
- Removed inconsistent usage of date encoding (#40)
- Optimize xml building process (#39)
- Date/Moment object conversion will be removed in 2.5
- New "findById" feature (#30)
- Request errors in doRequest() wouldn't be catched (#35)
- Replaced request-promise with request (#34)
- Added save() method for creating/updating objects (#26)
- Select query can include any possible parameters (#28)
- Created dedicated documentation (#23)
- Modified select object parameters to enable original vertec fields (#28)