@sap/cds-compiler 2.15.4 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +33 -1590
- package/bin/cdsc.js +36 -33
- package/doc/CHANGELOG_ARCHIVE.md +1592 -0
- package/doc/CHANGELOG_BETA.md +3 -4
- package/doc/CHANGELOG_DEPRECATED.md +35 -1
- package/doc/{DeprecatedOptions.md → DeprecatedOptions_v2.md} +3 -1
- package/doc/Versioning.md +20 -1
- package/lib/api/.eslintrc.json +2 -2
- package/lib/api/main.js +220 -103
- package/lib/api/options.js +15 -85
- package/lib/api/validate.js +6 -10
- package/lib/base/keywords.js +216 -109
- package/lib/base/message-registry.js +60 -20
- package/lib/base/messages.js +65 -24
- package/lib/base/model.js +44 -2
- package/lib/checks/actionsFunctions.js +7 -5
- package/lib/checks/annotationsOData.js +1 -1
- package/lib/checks/cdsPersistence.js +1 -0
- package/lib/checks/elements.js +6 -6
- package/lib/checks/invalidTarget.js +1 -1
- package/lib/checks/nonexpandableStructured.js +1 -1
- package/lib/checks/queryNoDbArtifacts.js +2 -1
- package/lib/checks/selectItems.js +5 -1
- package/lib/checks/types.js +4 -2
- package/lib/checks/utils.js +2 -2
- package/lib/checks/validator.js +2 -1
- package/lib/compiler/assert-consistency.js +15 -10
- package/lib/compiler/builtins.js +87 -9
- package/lib/compiler/define.js +2 -2
- package/lib/compiler/extend.js +59 -11
- package/lib/compiler/finalize-parse-cdl.js +20 -9
- package/lib/compiler/index.js +25 -11
- package/lib/compiler/moduleLayers.js +7 -0
- package/lib/compiler/populate.js +13 -13
- package/lib/compiler/propagator.js +3 -3
- package/lib/compiler/resolve.js +193 -218
- package/lib/compiler/shared.js +47 -76
- package/lib/compiler/tweak-assocs.js +9 -10
- package/lib/compiler/utils.js +5 -0
- package/lib/edm/csn2edm.js +18 -21
- package/lib/edm/edmPreprocessor.js +25 -30
- package/lib/edm/edmUtils.js +10 -24
- package/lib/gen/language.checksum +1 -1
- package/lib/gen/language.interp +8 -30
- package/lib/gen/language.tokens +105 -114
- package/lib/gen/languageLexer.interp +1 -34
- package/lib/gen/languageLexer.js +889 -1007
- package/lib/gen/languageLexer.tokens +95 -106
- package/lib/gen/languageParser.js +20632 -22313
- package/lib/json/from-csn.js +56 -49
- package/lib/json/to-csn.js +10 -8
- package/lib/language/antlrParser.js +2 -2
- package/lib/language/docCommentParser.js +61 -38
- package/lib/language/errorStrategy.js +52 -40
- package/lib/language/genericAntlrParser.js +303 -229
- package/lib/language/language.g4 +573 -629
- package/lib/language/multiLineStringParser.js +14 -42
- package/lib/language/textUtils.js +44 -0
- package/lib/main.d.ts +27 -42
- package/lib/main.js +104 -81
- package/lib/model/csnRefs.js +1 -1
- package/lib/model/csnUtils.js +170 -283
- package/lib/model/revealInternalProperties.js +28 -8
- package/lib/model/sortViews.js +32 -31
- package/lib/optionProcessor.js +12 -21
- package/lib/render/.eslintrc.json +1 -1
- package/lib/render/DuplicateChecker.js +4 -7
- package/lib/render/manageConstraints.js +70 -2
- package/lib/render/toCdl.js +334 -339
- package/lib/render/toHdbcds.js +19 -15
- package/lib/render/toRename.js +44 -22
- package/lib/render/toSql.js +53 -51
- package/lib/render/utils/common.js +15 -1
- package/lib/render/utils/sql.js +20 -19
- package/lib/sql-identifier.js +6 -0
- package/lib/transform/db/.eslintrc.json +3 -2
- package/lib/transform/db/cdsPersistence.js +5 -15
- package/lib/transform/db/constraints.js +1 -1
- package/lib/transform/db/expansion.js +7 -6
- package/lib/transform/db/flattening.js +18 -19
- package/lib/transform/db/views.js +3 -3
- package/lib/transform/draft/.eslintrc.json +2 -2
- package/lib/transform/draft/db.js +6 -6
- package/lib/transform/draft/odata.js +6 -7
- package/lib/transform/forHanaNew.js +19 -22
- package/lib/transform/forOdataNew.js +10 -12
- package/lib/transform/localized.js +22 -16
- package/lib/transform/odata/toFinalBaseType.js +10 -10
- package/lib/transform/odata/typesExposure.js +3 -3
- package/lib/transform/odata/utils.js +1 -38
- package/lib/transform/transformUtilsNew.js +63 -77
- package/lib/transform/translateAssocsToJoins.js +2 -2
- package/lib/transform/universalCsn/.eslintrc.json +2 -2
- package/lib/transform/universalCsn/coreComputed.js +11 -6
- package/lib/transform/universalCsn/universalCsnEnricher.js +33 -5
- package/lib/utils/file.js +3 -3
- package/lib/utils/timetrace.js +20 -21
- package/package.json +35 -4
- package/doc/ApiMigration.md +0 -237
- package/doc/CommandLineMigration.md +0 -58
- package/doc/ErrorMessages.md +0 -175
- package/doc/FioriAnnotations.md +0 -94
- package/doc/ODataTransformation.md +0 -273
- package/lib/backends.js +0 -529
- package/lib/fix_antlr4-8_warning.js +0 -56
|
@@ -43,112 +43,101 @@ CASE=42
|
|
|
43
43
|
CAST=43
|
|
44
44
|
DISTINCT=44
|
|
45
45
|
EXISTS=45
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
TO=141
|
|
142
|
-
TYPE=142
|
|
143
|
-
UNION=143
|
|
144
|
-
UNBOUNDED=144
|
|
145
|
-
UP=145
|
|
146
|
-
USING=146
|
|
147
|
-
VARIABLE=147
|
|
148
|
-
VIEW=148
|
|
149
|
-
YEAR=149
|
|
150
|
-
Identifier=150
|
|
151
|
-
IllegalToken=151
|
|
46
|
+
FROM=46
|
|
47
|
+
IN=47
|
|
48
|
+
KEY=48
|
|
49
|
+
NEW=49
|
|
50
|
+
NOT=50
|
|
51
|
+
NULL=51
|
|
52
|
+
OF=52
|
|
53
|
+
ON=53
|
|
54
|
+
SELECT=54
|
|
55
|
+
SOME=55
|
|
56
|
+
WHEN=56
|
|
57
|
+
WHERE=57
|
|
58
|
+
WITH=58
|
|
59
|
+
Number=59
|
|
60
|
+
ABSTRACT=60
|
|
61
|
+
ACTION=61
|
|
62
|
+
ACTIONS=62
|
|
63
|
+
AND=63
|
|
64
|
+
ANNOTATE=64
|
|
65
|
+
ANNOTATION=65
|
|
66
|
+
ARRAY=66
|
|
67
|
+
ASC=67
|
|
68
|
+
ASPECT=68
|
|
69
|
+
ASSOCIATION=69
|
|
70
|
+
BETWEEN=70
|
|
71
|
+
COLUMNS=71
|
|
72
|
+
COMPOSITION=72
|
|
73
|
+
CONTEXT=73
|
|
74
|
+
CROSS=74
|
|
75
|
+
CURRENT=75
|
|
76
|
+
DEFAULT=76
|
|
77
|
+
DEFINE=77
|
|
78
|
+
DEFINITIONS=78
|
|
79
|
+
DESC=79
|
|
80
|
+
ELEMENT=80
|
|
81
|
+
ELEMENTS=81
|
|
82
|
+
ELSE=82
|
|
83
|
+
END=83
|
|
84
|
+
ENTITY=84
|
|
85
|
+
ENUM=85
|
|
86
|
+
EVENT=86
|
|
87
|
+
ESCAPE=87
|
|
88
|
+
EXACT=88
|
|
89
|
+
EXCEPT=89
|
|
90
|
+
EXCLUDING=90
|
|
91
|
+
EXTEND=91
|
|
92
|
+
FIRST=92
|
|
93
|
+
FLOATING=93
|
|
94
|
+
FOLLOWING=94
|
|
95
|
+
FULL=95
|
|
96
|
+
FUNCTION=96
|
|
97
|
+
GROUP=97
|
|
98
|
+
HAVING=98
|
|
99
|
+
INNER=99
|
|
100
|
+
INTERSECT=100
|
|
101
|
+
INTO=101
|
|
102
|
+
IS=102
|
|
103
|
+
JOIN=103
|
|
104
|
+
LAST=104
|
|
105
|
+
LEFT=105
|
|
106
|
+
LIKE=106
|
|
107
|
+
LIMIT=107
|
|
108
|
+
LOCALIZED=108
|
|
109
|
+
MANY=109
|
|
110
|
+
MASKED=110
|
|
111
|
+
MINUS=111
|
|
112
|
+
MIXIN=112
|
|
113
|
+
NAMESPACE=113
|
|
114
|
+
NULLS=114
|
|
115
|
+
OFFSET=115
|
|
116
|
+
ONE=116
|
|
117
|
+
OR=117
|
|
118
|
+
ORDER=118
|
|
119
|
+
OUTER=119
|
|
120
|
+
PARAMETERS=120
|
|
121
|
+
PARTITION=121
|
|
122
|
+
PRECEDING=122
|
|
123
|
+
PROJECTION=123
|
|
124
|
+
REDIRECTED=124
|
|
125
|
+
RETURNS=125
|
|
126
|
+
RIGHT=126
|
|
127
|
+
ROW=127
|
|
128
|
+
ROWS=128
|
|
129
|
+
SERVICE=129
|
|
130
|
+
THEN=130
|
|
131
|
+
TO=131
|
|
132
|
+
TYPE=132
|
|
133
|
+
UNION=133
|
|
134
|
+
UNBOUNDED=134
|
|
135
|
+
UP=135
|
|
136
|
+
USING=136
|
|
137
|
+
VARIABLE=137
|
|
138
|
+
VIEW=138
|
|
139
|
+
Identifier=139
|
|
140
|
+
IllegalToken=140
|
|
152
141
|
';'=1
|
|
153
142
|
'{'=2
|
|
154
143
|
','=3
|