Search

Changelog 2018

2018-12-21

Added

  • [cds-services@1.2.0] Set default values in case of CREATE, UPSERT and adding a child in deep documents
  • [cds-ql@1.1.0] Support for full join in SELECT
  • [cds-ql@1.1.0] Support for inline
  • [cds-sql@1.1.0] Support Deep Document CQNs
  • [cds-sql@1.1.0] Support for inline
  • [cds-sql@1.1.0] Post processing with CQN that uses select *
  • [cds-sqlite@1.1.0] Support Deep Document CQNs
  • [cds-hana@1.1.0] Support Deep Document CQNs

Changed

  • [cds-services@1.2.0] context.draftMetadata contains draft metadata
  • [cds-services@1.2.0] context.isDraftChange indicates only changes in drafts
  • [cds-services@1.2.0] Error messages to be more consistent

Fixed

  • [cds-services@1.2.0] On handler registration for custom handlers in draft
  • [cds-services@1.2.0] Draft children can be deleted without navigations
  • [cds-services@1.2.0] Reading all draft-enabled documents takes into account only own drafts
  • [cds-sql@1.1.0] Expand in combination with left outer joins

2018-12-12

Added

  • [cds-services@1.1.0] Deep Document Calls (deep insert, deep update and cascade delete)
  • [cds-services@1.1.0] context.draft contains draftUUID in case of Create, Update or Delete
  • [cds-services@1.1.0] filter and orderby with navigation
  • [cds-ql@1.0.0] tenantId can be specified at disconnect
  • [cds-ql@1.0.0] model property can specified at connect
  • [cds-ql@1.0.0] entities and model of connection can be accessed
  • [cds-sqlite@1.0.3] credentials.database can be used instead of parameters host and url

Changed

  • [cds-services@1.1.0] improved error messages
  • [cds-services@1.1.0] Activating a draft now triggers the ‘UPDATE’ or ‘CREATE’ event
  • [cds-ql@1.0.0] Connect option driver is renamed to kind
  • [cds-ql@1.0.0] Connect options regarding connecting moved to ‘credentials’ property instead of one flat object
  • [cds-sql@1.0.3] Throw root cause instead of CqnParseError
  • [cds-sql@1.0.3] Throw root cause instead of SqlError
  • [cds-sqlite@1.0.3] Throw db error instead of wrapping it in Sql Error
  • [cds-sqlite@1.0.3] Throw an error if database is not defined instead of fallback to memory
  • [cds-hana@1.0.3] Throw db error instead of wrapping it in Sql Error
  • [cds-hana@1.0.3] Use options.credentials instead of options directly

Fixed

  • [cds-services@1.1.0] Create Draft uses default values
  • [cds-services@1.1.0] draftActivate uses correct keys for update
  • [cds-services@1.1.0] $count in draft context now calculates correct result
  • [cds-services@1.1.0] db view with select
  • [cds-services@1.1.0] Support for navigation over draft with count
  • [cds-services@1.1.0] .code property of Errors in Custom handlers will not be overwritten
  • [cds-ql@1.0.0] Read drafts with $filter/$search
  • [cds-sql@1.0.3] Binary generated wrong SQL
  • [cds-sql@1.0.3] Complex CQN with draft and expand for Hana
  • [cds-sql@1.0.3] Expand modifies copy instead of original CQN
  • [cds-sql@1.0.3] Expand with missing columns
  • [cds-sql@1.0.3] Expand in combination with limit
  • [cds-sql@1.0.3] Post processing of DateTime and Boolean
  • [cds-sqlite@1.0.3] Bulk Insert with $user / $now
  • [cds-sqlite@1.0.3] Post processing of Binary, Boolean, DateTime and Integer64
  • [cds-hana@1.0.3] Post processing of Binary, Boolean and Integer64

2018-11-27

Added

  • [cds-services@1.0.0] Support for now function in $filter
  • [cds-services@1.0.0] Support for authorization annotations CREATE, UPDATE, DELETE
  • [cds-services@1.0.0] Conversion of cds.DateTime/Timestamp using UTC
  • [cds-services@1.0.0] Entity definition at service as select view
  • [cds-ql@0.12.0] .where supports object notation with arrays of and/or

Changed

  • [cds-services@1.0.0] Update entry makes insert if the entry doesn’t exist
  • [cds-services@1.0.0] Log messages are used directly instead of being wrapped
  • [cds-services@1.0.0] Bound functions now have a query value
  • [cds-services@1.0.0] Function next is implicitly executed in synchronous on-handlers
  • [cds-services@1.0.0] Improved error handling
  • [cds-services@1.0.0] Handler registration allows following variations:
    • [cds-services@1.0.0] Array of events: e.g. [‘READ’, ‘UPDATE’]
    • [cds-services@1.0.0] ‘*’ wildcard for any entity event
  • [cds-services@1.0.0] next() throws error if called twice in same handler
  • [cds-services@1.0.0] Custom implementation must be provided via .with
  • [cds-services@1.0.0] Renamed service.definition to service.model
  • [cds-services@1.0.0] Renamed service.service to service.name
  • [cds-services@1.0.0] updated odata-v4 version to 1.8.0
  • [cds-services@1.0.0] Location header for draft actions is now relative
  • [cds-ql@0.12.0] Refactoring and changes due to updated dependencies

Fixed

  • [cds-services@1.0.0] POST on existing entity throws ‘Bad Request’
  • [cds-services@1.0.0] $search and $filter in combination with some read draft cases
  • [cds-services@1.0.0] POST with navigation does not create a new key
  • [cds-services@1.0.0] Access restriction on service level
  • [cds-services@1.0.0] UPDATE sql statement generated wrong for entity with multiple keys
  • [cds-services@1.0.0] Access to user’s locale
  • [cds-services@1.0.0] draftEdit action on entities without children
  • [cds-services@1.0.0] CREATE with not nullable elements

2018-10-17

Added

  • [cds-services@0.12.0] Custom handlers can be registered and executed for bound functions and function imports
  • [cds-services@0.12.0] Added BeforeCreate and BeforeCreateDraft handlers to generate needed UUIDs
  • [cds-ql@0.11.0] Support of string values bei fluid usage in .where
  • [cds-sql@0.11.0] Expanding of drafts entries at list pages
  • [cds-sql@0.11.0] Expanding of drafts entries at object pages

Changed

  • [cds-services@0.12.0] Removed translator in the insert based on where by instanced based authorization
  • [cds-services@0.12.0] Removed internal event rejections
  • [cds-services@0.12.0] Not found error message generalized for reading through navigation
  • [cds-services@0.12.0] Refactoring and changes due to updated dependencies
  • [cds-sqlite@0.9.0] Updated version of @sap/cds-sql to 0.11.0

Fixed

  • [cds-ql@0.11.0] Promise rejection in Service.run
  • [cds-hana@0.9.0] limit and order when expanding a to many association

2018-10-04

Added

  • [cds-services@0.11.0] Generic support for Create, Update, Delete on draft-enabled entities
  • [cds-services@0.11.0] Generic support for draftEdit, draftPrepare, draftActivate actions
  • [cds-services@0.11.0] Logger is available in handlers via context.log

Changed

  • [cds-services@0.11.0] Log warning if database connection is missing

Fixed

  • [cds-services@0.11.0] Service requests now return promises instead of thenables

2018-09-18

Added

  • [cds-services@0.10.1] Generic support for Read on draft-enabled entities
  • [cds-ql@0.10.0] Auto lookup of db service if no configuration given at connect but is available at environmental VCAP_SERVICES
  • [cds-ql@0.10.0] Support of an array as argument in .where
  • [cds-sql@0.10.0] Support of now/user annotations in structured type
  • [cds-sql@0.10.0] Support of expand in combination with contains at where
  • [cds-sql@0.10.0] Support of LIMIT/OFFSET, ORDER BY and WHERE at expanded items
  • [cds-sql@0.10.0] Custom types on top of associations
  • [cds-sql@0.10.0] Support columns: [‘*’] at CQN

Changed

  • [cds-hana@0.8.0] Updated version of @sap/cds-sql to 0.10.0

Fixed

  • [cds-services@0.10.1] $user annotation works without authorization
  • [cds-sqlite@0.8.0] CQN queries with contains and expand (limitation: expanded columns cannot be part of contains)

2018-09-17

Added

  • [cds-services@0.10.0] Delete Draft
  • [cds-services@0.10.0] Audit Logging of GDPR related events
  • [cds-services@0.10.0] Auto lookup of to be used CF/XSA services from environmental VCAP_SERVICES
  • [cds-services@0.10.0] OData to context.query for nested $filter, $orderby, $op and $skip at $expand
  • [cds-services@0.10.0] Custom types on top of associations
  • [cds-sql@0.9.2] SQL generation for SELECT statements that include UNION

Changed

  • [cds-services@0.10.0] Default for maxPageSize increased to 1000 from 100
  • [cds-ql@0.9.1] Improved npm-shrinkwrap
  • [cds-sql@0.9.2] Improved npm-shrinkwrap
  • [cds-sqlite@0.7.1] Improved npm-shrinkwrap
  • [cds-hana@0.7.1] Improved npm-shrinkwrap

Fixed

  • [cds-services@0.10.0] Values for annotated columns (user/now) are included in the response
  • [cds-sql@0.9.2] Postprocessing breaks without CSN

2018-09-05

Changed

  • [cds-services@0.9.2] Improved npm-shrinkwrap

2018-09-03

Added

  • [cds-services@0.9.1] Create draft
  • [cds-ql@0.9.0] Added support for .columns() in SELECT
  • [cds-ql@0.9.0] where/or/having support fluid API based on the first argument
  • [cds-ql@0.9.0] init.js at reuse model can be used by deploy and may export an async function
  • [cds-hana@0.7.0] Fallback in case certificate is used instead of ca at connect options

Changed

  • [cds-ql@0.9.0] any object filter combination of @sap/xsenv can be used to search the db service
  • [cds-sql@0.9.0] .getColumns includes annotations
  • [cds-sql@0.9.0] .deploy of BaseClient uses CDS-Compiler to do database setup
  • [cds-sqlite@0.7.0] API documentation updated
  • [cds-hana@0.7.0] API documentation updated

Fixed

  • [cds-sql@0.9.0] SQL generation in case of CREATE statements using structured elements containing managed associations
  • [cds-sql@0.9.0] Postprocessing of expand to many in plain mode

Removed

  • [cds-services@0.9.1] implicit dependency to @sap/cds-sql

2018-08-28

Added

  • [cds-services@0.9.0] API to support the implementation of authorization restrictions
  • [cds-services@0.9.0] Local service client
  • [cds-services@0.9.0] Support for to-one-navigation in $filter
  • [cds-services@0.9.0] Support for annotation @Search.defaultSearchElement to restrict searchable columns in $search
  • [cds-services@0.9.0] Support for sap-language query parameter
  • [cds-services@0.9.0] Support authorization annotations
  • [cds-services@0.9.0] Hooks to add custom logic before and after rollback event
  • [cds-services@0.9.0] Audit Logging of security events

Changed

  • [cds-ql@0.8.1] Require submodules on demand
  • [cds-sql@0.8.1] Require submodules on demand
  • [cds-sqlite@0.6.1] Require submodules on demand
  • [cds-hana@0.6.1] Require submodules on demand

Fixed

  • [cds-services@0.9.0] Pagination in case of $expand
  • [cds-services@0.9.0] $select with managed associations as key

2018-08-09

Added

  • [cds-services@0.8.1] Authentication using passport (including user/attr proxy)
  • [cds-ql@0.8.0] Pool and Pool resources are evicted by default
  • [cds-ql@0.8.0] .from, .where and .having support partial CQN
  • [cds-ql@0.8.0] Inline support at CQN of where and columns in Select
  • [cds-ql@0.8.0] Functions .values and .entries at INSERT
  • [cds-ql@0.8.0] Support of .run().then.run() shortcut
  • [cds-ql@0.8.0] Debug is printed in case environmental variable DEBUG=true is set
  • [cds-ql@0.8.0] SELECT(, ).from(<table>)
  • [cds-ql@0.8.0] SELECT.from(<table>).where({: CQN})
  • [cds-ql@0.8.0] Support for unary and binary expressions in contains
  • [cds-ql@0.8.0] Support for expand with string/array notation in SELECT.columns (e. g. SELECT.from(‘Books’, [‘author’, [‘name’]]))
  • [cds-ql@0.8.0] Support for excluding in service projection
  • [cds-sql@0.8.0] Support for exists in combination with expand
  • [cds-sql@0.8.0] Support column annotations ‘@cds.on.insert’, ‘@cds.on.update’, ‘@odata.on.insert’ and ‘@odata.on.update’
  • [cds-sql@0.8.0] Post processing of complex and structured types
  • [cds-sql@0.8.0] Support for unary and binary expressions in contains
  • [cds-sql@0.8.0] Support for CQN partials at .where
  • [cds-sqlite@0.6.0] cds.Timestamp and cds.DateTime converted into ISO time format when reading
  • [cds-sqlite@0.6.0] Support for abstract placeholders #now and #user
  • [cds-hana@0.6.0] Full SQL including eventual parameters to stack trace error message
  • [cds-hana@0.6.0] Support for abstract placeholders #now and #user
  • [cds-hana@0.6.0] Support for unary and binary expressions in contains

Changed

  • [cds-services@0.8.1] Require submodules on demand
  • [cds-ql@0.8.0] .where and .having can be used multiple times instead of .where.and or .having.and
  • [cds-ql@0.8.0] .or can be used directly: Instead of calling where.or you can call or.or
  • [cds-sql@0.8.0] Renamed SELECT.elements to SELECT.columns
  • [cds-sql@0.8.0] SQL Error provides info about the executed query and values in logs
  • [cds-hana@0.6.0] Increased default option of max. db connection clients to 100

Fixed

  • [cds-ql@0.8.0] Issue with service renaming attributes
  • [cds-ql@0.8.0] Issue with ‘exists’ in object mode
  • [cds-sql@0.8.0] Deep expands with more than 10 levels
  • [cds-sql@0.8.0] Expand to composition and further to one association
  • [cds-sql@0.8.0] Structured types at expand could lead to ambiguity
  • [cds-sqlite@0.6.0] SQL error hides internal error messages and provides details in log
  • [cds-hana@0.6.0] SQL error hides internal error messages and provides details in log

Removed

  • [cds-ql@0.8.0] .and for .where/.having

2018-08-07

Added

  • [cds-services@0.8.0] OData Service: $search supports Unary and Binary Expressions without brackets
  • [cds-services@0.8.0] Registration of global handler using star symbol like “this.on(‘*’, () => {})”
  • [cds-services@0.8.0] Registration of express middleware using this.use()
  • [cds-services@0.8.0] Improved FeautureNotSupported error message
  • [cds-services@0.8.0] context.reject supported for before, on and after handlers <!- [cds-services@0.8.0]- Was never documented publicly: - Support of context.run().then.run() shortcut –>
  • [cds-sql@0.7.0] CREATE supports type cds.Composition
  • [cds-sql@0.7.0] Expand supports type cds.Composition
  • [cds-sql@0.7.0] Support for structured elements

Changed

  • [cds-services@0.8.0] Updated version of @sap/odata-v4 to ^1.6.0

Fixed

  • [cds-services@0.8.0] Localization in case language is changed
  • [cds-services@0.8.0] Issue with not working $count when filtering active in custom hook
  • [cds-ql@0.7.0] Race condition at running block statements in transactional mode
  • [cds-ql@0.7.0] Brackets are only added to where or having if needed

Removed

  • [cds-ql@0.7.0] Statement blocks cannot be run with “sequential” pragma anymore (use “serialized” instead)

2018-07-11

Added

  • [cds-services@0.7.0] Localization support for $metadata
  • [cds-services@0.7.0] Support for Compositions
  • [cds-ql@0.6.0] Multi tenancy support <!- [cds-sql@0.6.0]- Was never documented publicly: - Shortcut for running queries with run().then.run() –>

Fixed

  • [cds-services@0.7.0] $search also considers foreign keys of managed associations, structured elements and complex types
  • [cds-sql@0.6.0] SQL generation in case of combination of navigation and expand in SELECT statements
  • [cds-hana@0.5.1] Escaping of special characters in case of ‘contains’

2018-07-02

Added

  • [cds-services@0.6.0] Multi tenancy support
  • [cds-ql@0.5.0] support .deploy to automatically set up database artifacts
  • [cds-ql@0.5.0] support of SQL functions lower and contains in .where
  • [cds-ql@0.5.0] support for navigation over entities with multiple keys
  • [cds-ql@0.5.0] SELECT allows partial CQNs as columns
  • [cds-ql@0.5.0] .run can execute blocks of statements
  • [cds-sql@0.5.0] custom builders can now be provided via options in SQL Builder
  • [cds-sql@0.5.0] support create with views
  • [cds-sql@0.5.0] added SQL Error to hide the internal information from other errors
  • [cds-sql@0.5.0] support structured elements
  • [cds-sql@0.5.0] support for complex types in Create Builder
  • [cds-sql@0.5.0] BaseClient has method .deploy to easily create database artifacts from csn model
  • [cds-sql@0.5.0] support for SQL function contains by converting it using like
  • [cds-sql@0.5.0] support execution of blocks of statements
  • [cds-sqlite@0.5.0] support execution of blocks of statements
  • [cds-sqlite@0.5.0] support plain mode of SQL name mapping
  • [cds-hana@0.5.0] Hana specific SQL generation for DROP statements
  • [cds-hana@0.5.0] Hana specific SQL generation for SELECT statements in case of ‘contains’
  • [cds-hana@0.5.0] Added SQL Error to hide the internal information from other errors
  • [cds-hana@0.5.0] support execution of blocks of statements
  • [cds-hana@0.5.0] support plain mode of SQL name mapping

Changed

  • [cds-ql@0.5.0] support for latest CQN spec changes
  • [cds-ql@0.5.0] renamed .hasPool to .hasSession
  • [cds-sql@0.5.0] quotation in SQL generation is now configurable (default is plain)
  • [cds-sql@0.5.0] support for latest CQN spec changes
  • [cds-sqlite@0.5.0] Added SQL Error to hide the internal information from other errors

Fixed

  • [cds-services@0.6.0] Columns are only added once to CQN in case of $expand in combination with $select
  • [cds-ql@0.5.0] CQL navigation on entity
  • [cds-ql@0.5.0] CDS injection
  • [cds-ql@0.5.0] .where with nested ORs and ANDs if provided as object input parameter
  • [cds-sql@0.5.0] column generation for managed associations
  • [cds-sql@0.5.0] CREATE statement with managed association as key
  • [cds-sql@0.5.0] resolve $self for expand
  • [cds-sql@0.5.0] 1:1 associations can be null
  • [cds-sqlite@0.5.0] CDS injection
  • [cds-hana@0.5.0] CDS injection

2018-06-25

Added

  • [cds-services@0.5.0] Hooks
    • [cds-services@0.5.0] An any handler can be registered and will be executed for any but COMMIT events
    • [cds-services@0.5.0] Custom handlers can be registered for before COMMIT and after COMMIT events
    • [cds-services@0.5.0] “_” property added to cds handler argument, which can contain adapter specific data like a request object
  • [cds-services@0.5.0] OData Service
    • [cds-services@0.5.0] $filter supports (not) contains, startsWith, endsWith
    • [cds-services@0.5.0] $filter supports combinations with and/or
    • [cds-services@0.5.0] $select within $expand
    • [cds-services@0.5.0] $apply supported with limited scope
    • [cds-services@0.5.0] $search supported with limited scope

Changed

  • [cds-services@0.5.0] Hooks
    • [cds-services@0.5.0] Undocumented OData specific properties removed from “cds” handler argument
    • [cds-services@0.5.0] cds.target contains the unreflected entity instead of the reflected entity
    • [cds-services@0.5.0] cds.error will collect errors and throw at the end of each block of .before, .on or .after handlers
    • [cds-services@0.5.0] Second call to next() at a on handler will be ignored and not break the sequence

Fixed

  • [cds-services@0.5.0] Support navigation over entities with multiple keys
  • [cds-ql@0.4.1] Issue with postinstall script in package.json

Removed

  • [cds-services@0.5.0] In case of a SerializationError the details are only logged and not provided in the response anymore

2018-05-03

Added

  • [cds-ql@0.4.0] support DROP statements
  • [cds-ql@0.4.0] connection pool validates resources before provisioning
  • [cds-ql@0.4.0] support .foreach
  • [cds-ql@0.4.0] cds used via injection
  • [cds-ql@0.4.0] support fluid usage of .where and .having in DML statements
  • [cds-sql@0.4.0] BaseClient has methods .run & .foreach & .isValid

Changed

  • [cds-services@0.4.1] Updated version of @sap/cds-ql to 0.4.1
  • [cds-ql@0.4.0] connect options aligned to spec
  • [cds-ql@0.4.0] support for latest CQN spec changes
  • [cds-ql@0.4.0] refactored .connect to return undefined instead of Promise
  • [cds-ql@0.4.0] refactored .acquire to wait for .connect before providing a client
  • [cds-sql@0.4.0] support for latest CQN spec changes
  • [cds-sqlite@0.4.0] connect options aligned to spec
  • [cds-sqlite@0.4.0] support for latest CQN spec changes
  • [cds-hana@0.4.0] connect options aligned to spec
  • [cds-hana@0.4.0] support for latest CQN spec changes

2018-05-02

Added

  • [cds-services@0.4.0] service factory
  • [cds-services@0.4.0] cds used via injection
  • [cds-services@0.4.0] Hooks
    • [cds-services@0.4.0] Support annotations @insertonly and @readonly
    • [cds-services@0.4.0] Support reject registration for CSN entities
    • [cds-services@0.4.0] Support reject registration with multiple entity parameters
  • [cds-ql@0.3.0] allow CQN as parameter in SELECT.from
  • [cds-ql@0.3.0] support CREATE statements
  • [cds-sql@0.3.0] support CREATE statements
  • [cds-sqlite@0.3.0] support CREATE statements
  • [cds-hana@0.3.0] usage of npm-shrinkwrap

Changed

  • [cds-services@0.4.0] default logger uses matching methods from console object instead of console.log
  • [cds-services@0.4.0] packages are loaded on demand at Services.js and OData.js instead of required in any case
  • [cds-services@0.4.0] adapted error message in case of 501
  • [cds-hana@0.3.0] improved performance for expand in case of one-to-many relations

Fixed

  • [cds-sql@0.3.0] auto-generated columns in expand=* requests

2018-04-16

Added

  • [cds-services@0.3.0] service factory
    • [cds-services@0.3.0] service.entities is set
  • [cds-services@0.3.0] OData Service
    • [cds-services@0.3.0] Support for $expand=*
    • [cds-services@0.3.0] Support for $select=*
  • [cds-services@0.3.0] Hooks
    • [cds-services@0.3.0] CSN entities can be used instead of strings to register a handler
    • [cds-services@0.3.0] .on can be registered with CQN instead of function as handler
    • [cds-services@0.3.0] .on supports registering N handlers
    • [cds-services@0.3.0] .on handlers can use a second argument next()
    • [cds-services@0.3.0] .on can be finished by returning a value
    • [cds-services@0.3.0] .after with convenience wrappers for each row argument
    • [cds-services@0.3.0] .after can now work asynchronously
  • [cds-ql@0.2.0] support for SELECT.one
  • [cds-ql@0.2.0] usage of npm-shrinkwrap
  • [cds-sql@0.2.0] usage of npm-shrinkwrap
  • [cds-sqlite@0.2.0] usage of npm-shrinkwrap

Changed

  • [cds-services@0.3.0] server side paging is enabled by default and set to 100, to disable it set maxPageSize to false.
  • [cds-services@0.3.0] refactored service factory
    • [cds-services@0.3.0] removed option to compile CSN on the fly, only CSN accepted as input format
    • [cds-services@0.3.0] option to set the URL path is removed
    • [cds-services@0.3.0] Multi service CSN can be used
  • [cds-services@0.3.0] refactored Service class
    • [cds-services@0.3.0] OData service instantiation is now split in constructor, createODataService and getMiddleWare
  • [cds-services@0.3.0] OData Service
    • [cds-services@0.3.0] Renamed parameters in handler context object (target replaces entity and getEntity)
    • [cds-services@0.3.0] More expressive error messages
    • [cds-services@0.3.0] Crash Node.js instance on unhandled error
  • [cds-ql@0.2.0] made generateUUID synchronous
  • [cds-sql@0.2.0] improved performance for expand in case of one-to-many relations
  • [cds-sqlite@0.2.0] improved performance

Fixed

  • [cds-services@0.3.0] limit property is only added to CQN if necessary
  • [cds-services@0.3.0] .reply() is able to handle null values
  • [cds-sql@0.2.0] ambiguous column name when having multiple expands on same entity

2018-03-16

Added

  • [cds-services@0.2.0] option to enable debug mode for odata-v4
  • [cds-services@0.2.0] default logger with option to register custom logger
  • [cds-services@0.2.0] support for server side paging
  • [cds-services@0.2.0] support for cds.serve, which is a Fluent API-style method to read service definitions from the given model(s) and construct services
  • [cds-services@0.2.0] usage of npm-shrinkwrap

Changed

  • [cds-ql@1.11.0] Improved performance by reducing calls to process.nextTick()

Fixed

  • [cds-services@0.2.0] $filter in combination with to many association