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 FeatureNotSupported 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
    Show/Hide Beta Features