Description
The meta.creator property on compiled CSN objects has been removed in CDS compiler v7 (CDS 10). It is replaced by meta.compilerVersion, which provides the compiler version as a semantic version string (e.g. "7.0.0"). Previously, meta.creator contained a string identifying the tool that produced the CSN (e.g. "CDS Compiler v6"). Custom tooling, build scripts, or diagnostic code that reads csn.meta.creator to identify compiler provenance will receive undefined and must be updated to use meta.compilerVersion. Application service handlers and runtime code are not affected — only tooling that processes raw CSN output.
How to Check
- [ ] Search build scripts, code generators, and diagnostic tools for
meta.creatoror["creator"]property access on objects derived fromcds.compile()orcds.load(). - [ ] Check any code that serializes or logs CSN metadata for downstream consumption.
- [ ] Search for
csn.metaaccess patterns in files underscripts/,tools/,lib/, and any custom CDS plugin code.
Migration Steps
Replace
meta.creatorwithmeta.compilerVersionin all CSN processing code:diffconst csn = await cds.load('srv/'); - const tool = csn.meta.creator; - console.log('Compiled by:', tool); // e.g. "CDS Compiler v6" + const version = csn.meta.compilerVersion; + console.log('Compiler version:', version); // e.g. "7.0.0"Update any version-checking logic that parsed the old
creatorstring:diff- const match = csn.meta.creator?.match(/v(\d+)/); - const majorVersion = match ? parseInt(match[1]) : 0; + const [major] = (csn.meta.compilerVersion ?? '0.0.0').split('.').map(Number);Update any output format or documentation that referenced the
meta.creatorfield to usemeta.compilerVersioninstead.
Notes
The meta.compilerVersion value follows semantic versioning (MAJOR.MINOR.PATCH). For CDS 10, the compiler major version is 7 (e.g. "7.0.0"). This property is stable and intended as the canonical way to identify the compiler that produced a given CSN artifact.