@mcp-abap-adt/adt-clients 23.0.1 → 23.0.3
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/README.md +1 -1
- package/dist/core/include/AdtInclude.d.ts +9 -18
- package/dist/core/include/AdtInclude.d.ts.map +1 -1
- package/dist/core/include/AdtInclude.js +10 -21
- package/dist/core/messageClass/AdtMessageClass.d.ts.map +1 -1
- package/dist/core/messageClass/AdtMessageClass.js +5 -3
- package/dist/core/package/AdtPackage.d.ts +3 -3
- package/dist/core/package/AdtPackage.js +3 -3
- package/dist/core/package/types.d.ts +1 -1
- package/dist/core/service/AdtService.d.ts.map +1 -1
- package/dist/core/service/AdtService.js +4 -8
- package/docs/README.md +3 -5
- package/docs/usage/ANSWER_SHAPES.md +3 -4
- package/docs/usage/CLIENT_API_REFERENCE.md +15 -3
- package/docs/usage/{WORKAROUNDS.md → ERRATA.md} +528 -27
- package/docs/usage/OBJECT_LIFECYCLE.md +16 -12
- package/docs/usage/RFC_CONNECTION.md +1 -1
- package/docs/usage/STATEFUL_SESSION_GUIDE.md +15 -7
- package/package.json +2 -2
- package/docs/usage/TROUBLESHOOTING.md +0 -193
package/README.md
CHANGED
|
@@ -940,7 +940,7 @@ member uses it on your behalf; `create()` and `update()` issue one request each.
|
|
|
940
940
|
- **[Documentation index](docs/README.md)**
|
|
941
941
|
- **[Migrating to 23.0.0](docs/usage/MIGRATION-23.md)** – the replacing code for every removed behaviour
|
|
942
942
|
- **[Client API reference](docs/usage/CLIENT_API_REFERENCE.md)** – every client, member and result set
|
|
943
|
-
- **[
|
|
943
|
+
- **[SAP ADT errata](docs/usage/ERRATA.md)** – what SAP answers that it does not mean, and what to do: the object tree with each branch's cases (a `403` on a service binding's LOCK that is to be ignored, among them), then every case with its evidence. Ships in this package under `docs/usage/`, and in `@mcp-abap-adt/adt-strategies`
|
|
944
944
|
- **[Architecture](docs/architecture/ARCHITECTURE.md)** – package structure and design decisions
|
|
945
945
|
- **[Decisions](docs/architecture/DECISIONS.md)** – the choices that could have gone the other way, and why
|
|
946
946
|
- **[Operation Delays](docs/usage/OPERATION_DELAYS.md)** – configurable delays for SAP operations in tests
|
|
@@ -80,26 +80,17 @@ export declare class AdtInclude<R extends IIncludeResults = typeof includeDocume
|
|
|
80
80
|
* caller's `analyse` to say.
|
|
81
81
|
*/
|
|
82
82
|
lock<E extends IAdtError = IAdtError>(config: Partial<IIncludeConfig>, options?: IAdtAnalyseOptions<E>): Promise<IAdtResponse<string, E>>;
|
|
83
|
-
/** Unlock the include, and go back to stateless either way. */
|
|
84
83
|
/**
|
|
85
|
-
*
|
|
84
|
+
* Release the lock: one `UNLOCK`, sent stateful, and stateless again after.
|
|
86
85
|
*
|
|
87
|
-
*
|
|
88
|
-
*
|
|
89
|
-
*
|
|
90
|
-
*
|
|
91
|
-
*
|
|
92
|
-
*
|
|
93
|
-
*
|
|
94
|
-
*
|
|
95
|
-
* lives as long as the connection — hours, in a test run — where the same
|
|
96
|
-
* activation sent statelessly leaves nothing behind. Eclipse holds a stateful
|
|
97
|
-
* session for the lock alone: its `LOCK` and `UNLOCK` are on one session and
|
|
98
|
-
* every other request, the source `PUT` included, goes stateless on a session
|
|
99
|
-
* of its own.
|
|
100
|
-
*
|
|
101
|
-
* Cleared after the request, not before: the unlock itself belongs to the
|
|
102
|
-
* window it is closing.
|
|
86
|
+
* The lock lives in the stateful context the `LOCK` opened, and only a
|
|
87
|
+
* request that reaches that context releases it. The connector sends the
|
|
88
|
+
* context cookie with stateful requests only, so an `UNLOCK` sent stateless
|
|
89
|
+
* runs in a fresh context, answers 200 and releases nothing — measured on
|
|
90
|
+
* an on-premise system 2026-09-27: the activation after it answered 403 `EU/510` "currently
|
|
91
|
+
* editing", and the delete was refused the same way. Both the `LOCK` and the
|
|
92
|
+
* `UNLOCK` are stateful for their own request only; everything between them,
|
|
93
|
+
* the source `PUT` included, goes stateless, as Eclipse sends it.
|
|
103
94
|
*/
|
|
104
95
|
unlock<E extends IAdtError = IAdtError>(config: Partial<IIncludeConfig>, lockHandle: string, options?: IAdtAnalyseOptions<E>): Promise<IAdtResponse<void, E>>;
|
|
105
96
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AdtInclude.d.ts","sourceRoot":"","sources":["../../../src/core/include/AdtInclude.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"AdtInclude.d.ts","sourceRoot":"","sources":["../../../src/core/include/AdtInclude.ts"],"names":[],"mappings":"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"}
|
|
@@ -178,32 +178,21 @@ class AdtInclude {
|
|
|
178
178
|
}
|
|
179
179
|
return answer;
|
|
180
180
|
}
|
|
181
|
-
/** Unlock the include, and go back to stateless either way. */
|
|
182
181
|
/**
|
|
183
|
-
*
|
|
182
|
+
* Release the lock: one `UNLOCK`, sent stateful, and stateless again after.
|
|
184
183
|
*
|
|
185
|
-
*
|
|
186
|
-
*
|
|
187
|
-
*
|
|
188
|
-
*
|
|
189
|
-
*
|
|
190
|
-
*
|
|
191
|
-
*
|
|
192
|
-
*
|
|
193
|
-
* lives as long as the connection — hours, in a test run — where the same
|
|
194
|
-
* activation sent statelessly leaves nothing behind. Eclipse holds a stateful
|
|
195
|
-
* session for the lock alone: its `LOCK` and `UNLOCK` are on one session and
|
|
196
|
-
* every other request, the source `PUT` included, goes stateless on a session
|
|
197
|
-
* of its own.
|
|
198
|
-
*
|
|
199
|
-
* Cleared after the request, not before: the unlock itself belongs to the
|
|
200
|
-
* window it is closing.
|
|
184
|
+
* The lock lives in the stateful context the `LOCK` opened, and only a
|
|
185
|
+
* request that reaches that context releases it. The connector sends the
|
|
186
|
+
* context cookie with stateful requests only, so an `UNLOCK` sent stateless
|
|
187
|
+
* runs in a fresh context, answers 200 and releases nothing — measured on
|
|
188
|
+
* an on-premise system 2026-09-27: the activation after it answered 403 `EU/510` "currently
|
|
189
|
+
* editing", and the delete was refused the same way. Both the `LOCK` and the
|
|
190
|
+
* `UNLOCK` are stateful for their own request only; everything between them,
|
|
191
|
+
* the source `PUT` included, goes stateless, as Eclipse sends it.
|
|
201
192
|
*/
|
|
202
193
|
async unlock(config, lockHandle, options) {
|
|
203
194
|
const includeName = requireName(config);
|
|
204
|
-
|
|
205
|
-
this.connection.setSessionType?.('stateless');
|
|
206
|
-
return answer;
|
|
195
|
+
return (0, adtResponse_1.answering)(() => (0, statefulSession_1.inStatefulSession)(this.connection, () => (0, unlock_1.unlockInclude)(this.connection, includeName, lockHandle)), resultStrategy_1.nothing, options?.analyse);
|
|
207
196
|
}
|
|
208
197
|
}
|
|
209
198
|
exports.AdtInclude = AdtInclude;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AdtMessageClass.d.ts","sourceRoot":"","sources":["../../../src/core/messageClass/AdtMessageClass.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"AdtMessageClass.d.ts","sourceRoot":"","sources":["../../../src/core/messageClass/AdtMessageClass.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EACV,kBAAkB,EAClB,aAAa,EACb,iBAAiB,EACjB,aAAa,EACb,SAAS,EACT,YAAY,EACZ,oBAAoB,EACpB,qBAAqB,EACrB,oBAAoB,EACpB,YAAY,EACZ,iBAAiB,EACjB,eAAe,EAEhB,MAAM,8BAA8B,CAAC;AACtC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAC;AAC/E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gCAAgC,CAAC;AAO9D,OAAO,EAEL,KAAK,YAAY,EAElB,MAAM,wBAAwB,CAAC;AAKhC,OAAO,EACL,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EACzB,qBAAqB,EACtB,MAAM,SAAS,CAAC;AAMjB,qBAAa,eAAe,CAC1B,CAAC,SAAS,oBAAoB,GAAG,OAAO,qBAAqB,CAC7D,YACE,aAAa,CAAC,mBAAmB,EAAE,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAC5D,oBAAoB,CAAC,mBAAmB,EAAE,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EACpE,qBAAqB,CACnB,OAAO,CAAC,mBAAmB,CAAC,EAC5B,UAAU,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CACjC,EACD,aAAa,CACX,mBAAmB,EACnB,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,EACzB,UAAU,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAC/B,EACD,eAAe,CAAC,mBAAmB,EAAE,UAAU,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EACjE,YAAY,CAAC,mBAAmB,CAAC;IAcjC,OAAO,CAAC,QAAQ,CAAC,OAAO;IAZ1B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAkB;IAC7C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAU;IAClC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAoB;IAClD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAc;IAC1C,SAAgB,UAAU,EAAE,MAAM,CAAkB;gBAGlD,UAAU,EAAE,eAAe,EAC3B,MAAM,CAAC,EAAE,OAAO,EAChB,aAAa,CAAC,EAAE,iBAAiB,EACjC,YAAY,CAAC,EAAE,YAAY,EAEV,OAAO,GAAE,CAAyC;IAarE;;;;;;;OAOG;IACH,OAAO,CAAC,IAAI;IAIZ;;;;;OAKG;IACG,QAAQ,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS,EAC5C,MAAM,EAAE,OAAO,CAAC,mBAAmB,CAAC,EACpC,OAAO,CAAC,EAAE,oBAAoB,CAAC,CAAC,CAAC,GAChC,OAAO,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAsBxD,iFAAiF;IAC3E,MAAM,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS,EAC1C,MAAM,EAAE,IAAI,CAAC,mBAAmB,EAAE,QAAQ,CAAC,GAAG;QAAE,MAAM,CAAC,EAAE,KAAK,CAAA;KAAE,EAChE,OAAO,CAAC,EAAE,iBAAiB,CAAC,CAAC,CAAC,GAC7B,OAAO,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAwCrD,wEAAwE;IAClE,YAAY,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS,EAChD,MAAM,EAAE,OAAO,CAAC,mBAAmB,CAAC,EACpC,OAAO,CAAC,EAAE;QACR,eAAe,CAAC,EAAE,OAAO,CAAC;QAC1B,OAAO,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAC;KACjC,GAAG,oBAAoB,CAAC,CAAC,CAAC,GAC1B,OAAO,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAatD;;;;;;;;;;;OAWG;IACG,cAAc,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS,EAClD,MAAM,EAAE,OAAO,CAAC,mBAAmB,CAAC,EACpC,OAAO,CAAC,EAAE,oBAAoB,CAAC,CAAC,CAAC,GAChC,OAAO,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAsB7D;;;;;;;;;OASG;IACH;;;;;;OAMG;IACG,aAAa,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS,EACjD,MAAM,EAAE,OAAO,CAAC,mBAAmB,CAAC,EACpC,OAAO,CAAC,EAAE,oBAAoB,CAAC,CAAC,CAAC,GAChC,OAAO,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAerD,MAAM,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS,EAC1C,MAAM,EAAE,OAAO,CAAC,mBAAmB,CAAC,EACpC,OAAO,CAAC,EAAE,oBAAoB,CAAC,CAAC,CAAC,GAChC,OAAO,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAatD;;;;OAIG;IACG,IAAI,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS,EACxC,MAAM,EAAE,OAAO,CAAC,mBAAmB,CAAC,EACpC,OAAO,CAAC,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAC9B,OAAO,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAgBnC,gCAAgC;IAC1B,MAAM,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS,EAC1C,MAAM,EAAE,OAAO,CAAC,mBAAmB,CAAC,EACpC,UAAU,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAC9B,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;CAmBlC"}
|
|
@@ -172,12 +172,14 @@ class AdtMessageClass {
|
|
|
172
172
|
/** Unlock the message class. */
|
|
173
173
|
async unlock(config, lockHandle, options) {
|
|
174
174
|
const name = this.name(config);
|
|
175
|
-
return (0, adtResponse_1.answering)(
|
|
175
|
+
return (0, adtResponse_1.answering)(
|
|
176
|
+
// The UNLOCK reaches the context the LOCK opened only if it is sent
|
|
177
|
+
// stateful; stateless, it releases nothing and still answers 200.
|
|
178
|
+
async () => {
|
|
176
179
|
try {
|
|
177
|
-
return await (0, unlock_1.unlockMessageClass)(this.connection, name, lockHandle);
|
|
180
|
+
return await (0, statefulSession_1.inStatefulSession)(this.connection, () => (0, unlock_1.unlockMessageClass)(this.connection, name, lockHandle));
|
|
178
181
|
}
|
|
179
182
|
finally {
|
|
180
|
-
this.connection.setSessionType('stateless');
|
|
181
183
|
this.lockTracker.untrack(name);
|
|
182
184
|
}
|
|
183
185
|
}, resultStrategy_1.nothing, options?.analyse);
|
|
@@ -48,7 +48,7 @@ export declare class AdtPackage<R extends IPackageResults = typeof packageDocume
|
|
|
48
48
|
* package before it is ever locked.
|
|
49
49
|
*
|
|
50
50
|
* A package can be saved only once per ABAP session: PAK/058 — see
|
|
51
|
-
* docs/usage/
|
|
51
|
+
* docs/usage/ERRATA.md. Over RFC the create counts as that save.
|
|
52
52
|
*/
|
|
53
53
|
create<E extends IAdtError = IAdtError>(config: Omit<IPackageConfig, 'source'> & {
|
|
54
54
|
source?: never;
|
|
@@ -63,7 +63,7 @@ export declare class AdtPackage<R extends IPackageResults = typeof packageDocume
|
|
|
63
63
|
* Update the package's metadata.
|
|
64
64
|
*
|
|
65
65
|
* A package can be saved only once per ABAP session: PAK/058 — see
|
|
66
|
-
* docs/usage/
|
|
66
|
+
* docs/usage/ERRATA.md. Opening a new session is the caller's.
|
|
67
67
|
*
|
|
68
68
|
* **The whole content, every time.** This is a replace, never a merge. Read
|
|
69
69
|
* what the object holds, change what you mean to change, and pass the result:
|
|
@@ -82,7 +82,7 @@ export declare class AdtPackage<R extends IPackageResults = typeof packageDocume
|
|
|
82
82
|
* Delete the package.
|
|
83
83
|
*
|
|
84
84
|
* A package can be saved only once per ABAP session: PAK/058 — see
|
|
85
|
-
* docs/usage/
|
|
85
|
+
* docs/usage/ERRATA.md. A delete from a session that saved the package
|
|
86
86
|
* is refused; from a new session it succeeds.
|
|
87
87
|
*
|
|
88
88
|
* The answer is a 200 either way, and `isDeleted="false"` is in its body: a
|
|
@@ -86,7 +86,7 @@ class AdtPackage {
|
|
|
86
86
|
* package before it is ever locked.
|
|
87
87
|
*
|
|
88
88
|
* A package can be saved only once per ABAP session: PAK/058 — see
|
|
89
|
-
* docs/usage/
|
|
89
|
+
* docs/usage/ERRATA.md. Over RFC the create counts as that save.
|
|
90
90
|
*/
|
|
91
91
|
async create(config, options) {
|
|
92
92
|
// **No guard here, unlike every other create.**
|
|
@@ -134,7 +134,7 @@ class AdtPackage {
|
|
|
134
134
|
* Update the package's metadata.
|
|
135
135
|
*
|
|
136
136
|
* A package can be saved only once per ABAP session: PAK/058 — see
|
|
137
|
-
* docs/usage/
|
|
137
|
+
* docs/usage/ERRATA.md. Opening a new session is the caller's.
|
|
138
138
|
*
|
|
139
139
|
* **The whole content, every time.** This is a replace, never a merge. Read
|
|
140
140
|
* what the object holds, change what you mean to change, and pass the result:
|
|
@@ -189,7 +189,7 @@ class AdtPackage {
|
|
|
189
189
|
* Delete the package.
|
|
190
190
|
*
|
|
191
191
|
* A package can be saved only once per ABAP session: PAK/058 — see
|
|
192
|
-
* docs/usage/
|
|
192
|
+
* docs/usage/ERRATA.md. A delete from a session that saved the package
|
|
193
193
|
* is refused; from a new session it succeeds.
|
|
194
194
|
*
|
|
195
195
|
* The answer is a 200 either way, and `isDeleted="false"` is in its body: a
|
|
@@ -43,7 +43,7 @@ export type PackageValidationResult = string;
|
|
|
43
43
|
*
|
|
44
44
|
* A refusal arrives as **200** carrying `isDeleted="false"`, so the document,
|
|
45
45
|
* not the status, is the verdict. A package can be saved only once per ABAP
|
|
46
|
-
* session: PAK/058 — see docs/usage/
|
|
46
|
+
* session: PAK/058 — see docs/usage/ERRATA.md.
|
|
47
47
|
*/
|
|
48
48
|
export type PackageDeletionResult = string;
|
|
49
49
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AdtService.d.ts","sourceRoot":"","sources":["../../../src/core/service/AdtService.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"AdtService.d.ts","sourceRoot":"","sources":["../../../src/core/service/AdtService.ts"],"names":[],"mappings":"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"}
|
|
@@ -329,14 +329,10 @@ class AdtServiceBinding {
|
|
|
329
329
|
*/
|
|
330
330
|
async unlock(config, lockHandle, options) {
|
|
331
331
|
const name = this.name(config);
|
|
332
|
-
return (0, adtResponse_1.answering)(
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
finally {
|
|
337
|
-
this.connection.setSessionType?.('stateless');
|
|
338
|
-
}
|
|
339
|
-
}, resultStrategy_1.nothing, options?.analyse);
|
|
332
|
+
return (0, adtResponse_1.answering)(
|
|
333
|
+
// The UNLOCK reaches the context the LOCK opened only if it is sent
|
|
334
|
+
// stateful; stateless, it releases nothing and still answers 200.
|
|
335
|
+
() => (0, statefulSession_1.inStatefulSession)(this.connection, () => (0, lock_1.unlockServiceBinding)(this.connection, name, lockHandle)), resultStrategy_1.nothing, options?.analyse);
|
|
340
336
|
}
|
|
341
337
|
/**
|
|
342
338
|
* Delete the binding.
|
package/docs/README.md
CHANGED
|
@@ -25,8 +25,7 @@ Complete documentation for the `@mcp-abap-adt/adt-clients` package.
|
|
|
25
25
|
- [**STATEFUL_SESSION_GUIDE.md**](usage/STATEFUL_SESSION_GUIDE.md) - Guide for stateful session management
|
|
26
26
|
- [**CHECK_LOCAL_TEST_CLASS.md**](usage/CHECK_LOCAL_TEST_CLASS.md) - Guide for validating ABAP Unit test classes
|
|
27
27
|
- [**DEBUG.md**](usage/DEBUG.md) - Debugging and troubleshooting guide
|
|
28
|
-
- [**
|
|
29
|
-
- [TROUBLESHOOTING.md](usage/TROUBLESHOOTING.md) — what ADT answers when it refuses, and why the message is often accurate about the wrong thing
|
|
28
|
+
- [**ERRATA.md**](usage/ERRATA.md) — what SAP answers that it does not mean: the object tree with each branch's cases, then every case with symptom, cause, rule, workaround and evidence
|
|
30
29
|
- [**OPERATION_DELAYS.md**](usage/OPERATION_DELAYS.md) - Detailed guide on operation delays and timing
|
|
31
30
|
- [**OPERATION_DELAYS_SUMMARY.md**](usage/OPERATION_DELAYS_SUMMARY.md) - Quick reference for operation delays
|
|
32
31
|
|
|
@@ -55,8 +54,7 @@ docs/
|
|
|
55
54
|
│ ├── OBJECT_LIFECYCLE.md # The create → … → activate flow and its exceptions
|
|
56
55
|
│ ├── CLIENT_API_REFERENCE.md # Client API reference
|
|
57
56
|
│ ├── STATEFUL_SESSION_GUIDE.md # Session management
|
|
58
|
-
│ ├──
|
|
59
|
-
│ ├── TROUBLESHOOTING.md # Refusals that name the wrong cause
|
|
57
|
+
│ ├── ERRATA.md # SAP ADT errata: the object tree, then every case
|
|
60
58
|
│ ├── CHECK_LOCAL_TEST_CLASS.md # Local test class validation
|
|
61
59
|
│ ├── DEBUG.md # Debugging guide
|
|
62
60
|
│ ├── OPERATION_DELAYS.md # Operation delays (detailed)
|
|
@@ -118,7 +116,7 @@ See [ARCHITECTURE.md](architecture/ARCHITECTURE.md#type-system-organization) for
|
|
|
118
116
|
|
|
119
117
|
### Session Management
|
|
120
118
|
|
|
121
|
-
`
|
|
119
|
+
Only the `LOCK` and the `UNLOCK` request are stateful — `lock` and `unlock` each switch for their own request and back; everything between them goes stateless. The handle is what `lock` answers, and the sequence between them is yours.
|
|
122
120
|
|
|
123
121
|
See [STATEFUL_SESSION_GUIDE.md](usage/STATEFUL_SESSION_GUIDE.md) for implementation details.
|
|
124
122
|
|
|
@@ -126,8 +126,7 @@ caller who asks for those shapes rather than the document.
|
|
|
126
126
|
- [`MIGRATION-23.md`](MIGRATION-23.md) — the readings and verdicts that moved
|
|
127
127
|
to `@mcp-abap-adt/adt-strategies` in 23.0.0
|
|
128
128
|
- [`MIGRATION-19.md`](MIGRATION-19.md) — what moved to the consumer in 19.0.0
|
|
129
|
-
- [`
|
|
130
|
-
these answers, and what a consumer does about it
|
|
131
|
-
|
|
132
|
-
the wrong thing, including the `S_ABPLNGVS` language-version refusal
|
|
129
|
+
- [`ERRATA.md`](ERRATA.md) — the SAP-side behaviour behind several of
|
|
130
|
+
these answers, by object, and what a consumer does about it — including the
|
|
131
|
+
`S_ABPLNGVS` language-version refusal
|
|
133
132
|
- [`../../examples`](../../examples) — the sequences, written out
|
|
@@ -1067,11 +1067,19 @@ Unpublishing is the same, against `…/unpublishjobs`.
|
|
|
1067
1067
|
it for you:
|
|
1068
1068
|
|
|
1069
1069
|
```typescript
|
|
1070
|
-
import {
|
|
1070
|
+
import {
|
|
1071
|
+
analysePublication,
|
|
1072
|
+
analysePublicationLock,
|
|
1073
|
+
} from '@mcp-abap-adt/adt-strategies';
|
|
1071
1074
|
|
|
1072
1075
|
const bindings = client.getServiceBinding();
|
|
1073
1076
|
|
|
1074
|
-
|
|
1077
|
+
// analysePublicationLock: a 403 (an editor holds the binding) is no failure —
|
|
1078
|
+
// the job does not need our lock, and the handle then comes back as ''.
|
|
1079
|
+
const locked = await bindings.lock(
|
|
1080
|
+
{ bindingName: 'ZAC_SRVB01' },
|
|
1081
|
+
{ analyse: analysePublicationLock },
|
|
1082
|
+
);
|
|
1075
1083
|
if (!locked.ok) throw new Error(locked.getError().message);
|
|
1076
1084
|
const lockHandle = locked.getResult().value;
|
|
1077
1085
|
|
|
@@ -1091,10 +1099,14 @@ try {
|
|
|
1091
1099
|
);
|
|
1092
1100
|
if (!answer.ok) throw new Error(answer.getError().message);
|
|
1093
1101
|
} finally {
|
|
1094
|
-
await bindings.unlock({ bindingName: 'ZAC_SRVB01' }, lockHandle);
|
|
1102
|
+
if (lockHandle) await bindings.unlock({ bindingName: 'ZAC_SRVB01' }, lockHandle);
|
|
1095
1103
|
}
|
|
1096
1104
|
```
|
|
1097
1105
|
|
|
1106
|
+
A binding just created has no active version, and publishing it answers `200`
|
|
1107
|
+
with *"Service Binding … does not exist"*: `activate()` it first. See
|
|
1108
|
+
[ERRATA.md](ERRATA.md#a-service-binding-is-locked-to-publish-it).
|
|
1109
|
+
|
|
1098
1110
|
Why the library does not do that for you: **how long a lock is held is a
|
|
1099
1111
|
policy**, and it is not one policy. Eclipse holds a binding's lock for as long
|
|
1100
1112
|
as an editor is open — across several publishes, if that is what the person
|