@azure-tools/typespec-azure-core 0.28.1 → 0.29.0-dev.10
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 +27 -24
- package/dist/src/lib.d.ts +1 -1
- package/dist/src/lib.js +1 -1
- package/dist/src/lib.js.map +1 -1
- package/dist/src/lro-helpers.js +7 -0
- package/dist/src/lro-helpers.js.map +1 -1
- package/dist/src/traits.d.ts +2 -3
- package/dist/src/traits.d.ts.map +1 -1
- package/dist/src/traits.js +42 -46
- package/dist/src/traits.js.map +1 -1
- package/lib/models.tsp +9 -3
- package/lib/operations.tsp +1 -1
- package/lib/traits.tsp +37 -30
- package/package.json +15 -13
package/README.md
CHANGED
|
@@ -114,13 +114,13 @@ This marks the `Contoso.WidgetManager` namespace as a service namespace in this
|
|
|
114
114
|
|
|
115
115
|
### Using the versioned Azure.Core types
|
|
116
116
|
|
|
117
|
-
Before you can use the models and operations defined in the `Azure.Core` namespace, you will need to specify the API version of the `Azure.Core` library that your service uses. You can do this by adding the `@
|
|
117
|
+
Before you can use the models and operations defined in the `Azure.Core` namespace, you will need to specify the API version of the `Azure.Core` library that your service uses. You can do this by adding the `@useDependency` decorator to the `Contoso.WidgetManager` namespace as seen here:
|
|
118
118
|
|
|
119
119
|
```typespec
|
|
120
120
|
@service({
|
|
121
121
|
title: "Contoso Widget Manager",
|
|
122
122
|
})
|
|
123
|
-
@
|
|
123
|
+
@useDependency(Azure.Core.Versions.v1_0_Preview_2)
|
|
124
124
|
namespace Contoso.WidgetManager;
|
|
125
125
|
```
|
|
126
126
|
|
|
@@ -364,12 +364,10 @@ Here is an example for the `WidgetManager` service:
|
|
|
364
364
|
title: "Contoso Widget Manager",
|
|
365
365
|
})
|
|
366
366
|
@versioned(Contoso.WidgetManager.Versions)
|
|
367
|
-
@versionedDependency(
|
|
368
|
-
[[Contoso.WidgetManager.Versions.v2022_08_31, Azure.Core.Versions.v1_0_Preview_2]]
|
|
369
|
-
)
|
|
370
367
|
namespace Contoso.WidgetManager;
|
|
371
368
|
|
|
372
369
|
enum Versions {
|
|
370
|
+
@useDependency(Azure.Core.Versions.v1_0_Preview_1)
|
|
373
371
|
v2022_08_31: "2022-08-31",
|
|
374
372
|
}
|
|
375
373
|
```
|
|
@@ -378,26 +376,28 @@ There are a few things to point out here:
|
|
|
378
376
|
|
|
379
377
|
- We define an `enum` called `Versions` inside of the service namespace. For each service version, we map a version symbol like `v2022_08_31` to a version string like `2022-08-31`. This service currently only has a single version, but we can add more to this enum as things change over time.
|
|
380
378
|
- We add the `@versioned` decorator and reference the `Versions` enum we defined using the fully-qualified name `Contoso.WidgetManager.Versions`. This marks the service as being versioned and specifies the set of versions.
|
|
381
|
-
- We change the `@
|
|
379
|
+
- We change the `@useDependency` decorator we used previously to now link each service version to a specific version of `Azure.Core`. See the [Using Azure.Core Versions](#using-azurecore-versions) section for more information.
|
|
382
380
|
|
|
383
381
|
Imagine that it's 3 months later and you want to release a new version of your service with some slight changes. Add a new version to the `Versions` enum:
|
|
384
382
|
|
|
385
383
|
```typespec
|
|
386
384
|
enum Versions {
|
|
385
|
+
@useDependency(Azure.Core.Versions.v1_0_Preview_1)
|
|
387
386
|
v2022_08_31: "2022-08-31",
|
|
388
387
|
v2022_11_30: "2022-11-30",
|
|
389
388
|
}
|
|
390
389
|
```
|
|
391
390
|
|
|
392
|
-
You will also need to
|
|
391
|
+
You will also need to add the `@useDependency` decorator:
|
|
393
392
|
|
|
394
393
|
```typespec
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
394
|
+
enum Versions {
|
|
395
|
+
@useDependency(Azure.Core.Versions.v1_0_Preview_1)
|
|
396
|
+
v2022_08_31: "2022-08-31",
|
|
397
|
+
|
|
398
|
+
@useDependency(Azure.Core.Versions.v1_0_Preview_2)
|
|
399
|
+
v2022_11_30: "2022-11-30",
|
|
400
|
+
}
|
|
401
401
|
```
|
|
402
402
|
|
|
403
403
|
Finally, you can express changes to your service using the `@added` and `@removed` decorators. Here's an example of adding a new property to `Widget` and removing an old one:
|
|
@@ -425,15 +425,15 @@ You can do a lot more with versioning decorators, so consult the `typespec-versi
|
|
|
425
425
|
|
|
426
426
|
### Using Azure.Core versions
|
|
427
427
|
|
|
428
|
-
`typespec-azure-core` is a versioned TypeSpec library. This means that even as the TypeSpec portions of the typespec-azure-core library are updated, you can anchor each version of your spec to a [specific `Azure.Core` version](#library-versions). This is done by decorating your service namespace with the `@
|
|
428
|
+
`typespec-azure-core` is a versioned TypeSpec library. This means that even as the TypeSpec portions of the typespec-azure-core library are updated, you can anchor each version of your spec to a [specific `Azure.Core` version](#library-versions). This is done by decorating your service namespace with the `@useDependency` decorator from the `typespec-versioning` library.
|
|
429
429
|
|
|
430
|
-
Simple TypeSpec specs need only pass the desired `Azure.Core` version into the `@
|
|
430
|
+
Simple TypeSpec specs need only pass the desired `Azure.Core` version into the `@useDependency` decorator:
|
|
431
431
|
|
|
432
432
|
```typespec
|
|
433
433
|
@service({
|
|
434
434
|
title: "Contoso Widget Manager",
|
|
435
435
|
})
|
|
436
|
-
@
|
|
436
|
+
@useDependency(Azure.Core.Versions.v1_0_Preview_2)
|
|
437
437
|
namespace Contoso.WidgetManager;
|
|
438
438
|
```
|
|
439
439
|
|
|
@@ -444,13 +444,15 @@ If your spec has [multiple versions](#versioning-your-service), you will need to
|
|
|
444
444
|
title: "Contoso Widget Manager",
|
|
445
445
|
})
|
|
446
446
|
@versioned(Contoso.WidgetManager.Versions)
|
|
447
|
-
@versionedDependency(
|
|
448
|
-
[
|
|
449
|
-
[Contoso.WidgetManager.Versions.v2022_08_31, Azure.Core.Versions.v1_0_Preview_2],
|
|
450
|
-
[Contoso.WidgetManager.Versions.v2022_11_30, Azure.Core.Versions.v1_0_Preview_2]
|
|
451
|
-
]
|
|
452
|
-
)
|
|
453
447
|
namespace Contoso.WidgetManager;
|
|
448
|
+
|
|
449
|
+
enum Versions {
|
|
450
|
+
@useDependency(Azure.Core.Versions.v1_0_Preview_1)
|
|
451
|
+
v2022_08_31: "v20220831",
|
|
452
|
+
|
|
453
|
+
@useDependency(Azure.Core.Versions.v1_0_Preview_2)
|
|
454
|
+
v2022_11_30: "v20221130",
|
|
455
|
+
}
|
|
454
456
|
```
|
|
455
457
|
|
|
456
458
|
## Advanced Topics
|
|
@@ -493,13 +495,14 @@ The operations defined against this singleton resource will also exclude the key
|
|
|
493
495
|
|
|
494
496
|
## Library Versions
|
|
495
497
|
|
|
496
|
-
This is a versioned TypeSpec library which means that you must add the `@
|
|
498
|
+
This is a versioned TypeSpec library which means that you must add the `@useDependency` decorator to your service namespace when you use its contents.
|
|
497
499
|
|
|
498
500
|
Here are the current versions:
|
|
499
501
|
|
|
502
|
+
- `Azure.Core.Versions.v1_0_Preview_1`
|
|
500
503
|
- `Azure.Core.Versions.v1_0_Preview_2`
|
|
501
504
|
|
|
502
|
-
See the [Using Azure.Core Versions](#using-azurecore-versions) section for more details on how to use the `@
|
|
505
|
+
See the [Using Azure.Core Versions](#using-azurecore-versions) section for more details on how to use the `@useDependency` decorator.
|
|
503
506
|
|
|
504
507
|
## Library Tour
|
|
505
508
|
|
package/dist/src/lib.d.ts
CHANGED
package/dist/src/lib.js
CHANGED
package/dist/src/lib.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lib.js","sourceRoot":"","sources":["../../src/lib.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEzE,MAAM,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC;AAEtC,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,IAAI,EAAE,kCAAkC;IACxC,WAAW,EAAE;QACX,cAAc,EAAE;YACd,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,gBAAgB,MAAM,mBAAmB,QAAQ,EAAE;aACzE;SACF;QACD,6BAA6B,EAAE;YAC7B,QAAQ,EAAE,OAAO;YACjB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,wCAAwC,MAAM,GAAG;aACvE;SACF;QACD,kCAAkC,EAAE;YAClC,QAAQ,EAAE,OAAO;YACjB,QAAQ,EAAE;gBACR,OAAO,EAAE,sDAAsD;aAChE;SACF;QACD,oBAAoB,EAAE;YACpB,QAAQ,EAAE,OAAO;YACjB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,uDAAuD,QAAQ,GAAG;aACxF;SACF;QACD,iBAAiB,EAAE;YACjB,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,aAAa,EAAE,YAAY,CAAA,GAAG,MAAM,oBAAoB,SAAS,WAAW,UAAU,YAAY,SAAS,2BAA2B;gBACtI,oBAAoB,EAAE,YAAY,CAAA,GAAG,MAAM,eAAe,SAAS,WAAW,UAAU,gCAAgC;aACzH;SACF;QACD,2BAA2B,EAAE;YAC3B,QAAQ,EAAE,OAAO;YACjB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,sBAAsB,MAAM,oCAAoC;aACtF;SACF;QACD,2BAA2B,EAAE;YAC3B,QAAQ,EAAE,OAAO;YACjB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,sBAAsB,MAAM,wCAAwC;aAC1F;SACF;QACD,2BAA2B,EAAE;YAC3B,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,wBAAwB,MAAM,8DAA8D,QAAQ,GAAG;aAC7H;SACF;QACD,kCAAkC,EAAE;YAClC,QAAQ,EAAE,OAAO;YACjB,QAAQ,EAAE;gBACR,OAAO,EAAE,iFAAiF;aAC3F;SACF;QACD,wCAAwC,EAAE;YACxC,QAAQ,EAAE,OAAO;YACjB,QAAQ,EAAE;gBACR,OAAO,EAAE,0DAA0D;aACpE;SACF;QACD,uBAAuB,EAAE;YACvB,QAAQ,EAAE,OAAO;YACjB,QAAQ,EAAE;gBACR,UAAU,EAAE,YAAY,CAAA,eAAe,MAAM,oFAAoF;gBACjI,cAAc,EAAE,YAAY,CAAA,eAAe,MAAM,uFAAuF;aACzI;SACF;QACD,qBAAqB,EAAE;YACrB,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,OAAO,EAAE,yDAAyD;aACnE;SACF;QACD,yBAAyB,EAAE;YACzB,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,cAAc,MAAM,sEAAsE;aAChH;SACF;QACD,WAAW,EAAE;YACX,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,OAAO,EAAE,wDAAwD;aAClE;SACF;QACD,4BAA4B,EAAE;YAC5B,QAAQ,EAAE,OAAO;YACjB,QAAQ,EAAE;gBACR,OAAO,EAAE,+FAA+F;aACzG;SACF;QACD,YAAY,EAAE;YACZ,QAAQ,EAAE,
|
|
1
|
+
{"version":3,"file":"lib.js","sourceRoot":"","sources":["../../src/lib.ts"],"names":[],"mappings":"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"}
|
package/dist/src/lro-helpers.js
CHANGED
|
@@ -157,6 +157,13 @@ function getFinalStateVia(program, operation, context) {
|
|
|
157
157
|
}
|
|
158
158
|
return [finalState, model];
|
|
159
159
|
}
|
|
160
|
+
if (resOp !== undefined &&
|
|
161
|
+
resOp.operation === "createOrReplace" &&
|
|
162
|
+
resOp.resourceType !== undefined) {
|
|
163
|
+
model = resOp.resourceType;
|
|
164
|
+
if (context.statusMonitorStep !== undefined)
|
|
165
|
+
finalState = getStatusFromLinkOrReference(program, operation, context.statusMonitorStep.target);
|
|
166
|
+
}
|
|
160
167
|
// handle actions and delete operations
|
|
161
168
|
if ((operationAction !== undefined &&
|
|
162
169
|
operationAction !== null &&
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lro-helpers.js","sourceRoot":"","sources":["../../src/lro-helpers.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"lro-helpers.js","sourceRoot":"","sources":["../../src/lro-helpers.ts"],"names":[],"mappings":"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"}
|
package/dist/src/traits.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { DecoratorContext, EnumMember, Interface, Model, ModelProperty, Operation, Program, Tuple, Union, UnknownType } from "@typespec/compiler";
|
|
1
|
+
import { DecoratorContext, EnumMember, Interface, Model, ModelProperty, NullType, Operation, Program, Tuple, Union, UnknownType } from "@typespec/compiler";
|
|
2
2
|
export declare function $traitSource(context: DecoratorContext, target: ModelProperty, traitName: string): void;
|
|
3
3
|
/**
|
|
4
4
|
* Retrieves the `traitName` stored for the given `property`, if any.
|
|
@@ -13,8 +13,7 @@ export declare function $traitContext(context: DecoratorContext, target: ModelPr
|
|
|
13
13
|
export declare function getTraitContexts(program: Program, property: ModelProperty): EnumMember[];
|
|
14
14
|
export declare function $traitLocation(context: DecoratorContext, target: ModelProperty, traitLocation: EnumMember): void;
|
|
15
15
|
export declare function getTraitLocation(program: Program, property: ModelProperty): EnumMember | undefined;
|
|
16
|
-
export declare function $traitAdded(context: DecoratorContext, target: Model, addedVersion: EnumMember): void;
|
|
17
|
-
export declare function $traitRemoved(context: DecoratorContext, target: Model, removedVersion: EnumMember): void;
|
|
16
|
+
export declare function $traitAdded(context: DecoratorContext, target: Model | ModelProperty, addedVersion: EnumMember | NullType): void;
|
|
18
17
|
export declare function $addTraitProperties(context: DecoratorContext, target: Model, traitModel: Model, traitLocation: EnumMember, traitContexts: EnumMember | Union | UnknownType): void;
|
|
19
18
|
export declare function $applyTraitOverride(context: DecoratorContext, target: Model, traitModel: Model): void;
|
|
20
19
|
export declare function $ensureTraitsPresent(context: DecoratorContext, target: Interface | Operation, traitModel: Model, expectedTraits: Tuple): void;
|
package/dist/src/traits.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"traits.d.ts","sourceRoot":"","sources":["../../src/traits.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,UAAU,EAEV,SAAS,
|
|
1
|
+
{"version":3,"file":"traits.d.ts","sourceRoot":"","sources":["../../src/traits.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,UAAU,EAEV,SAAS,EAET,KAAK,EACL,aAAa,EAEb,QAAQ,EACR,SAAS,EACT,OAAO,EAEP,KAAK,EACL,KAAK,EACL,WAAW,EAEZ,MAAM,oBAAoB,CAAC;AAM5B,wBAAgB,YAAY,CAAC,OAAO,EAAE,gBAAgB,EAAE,MAAM,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,QAG/F;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,aAAa,GAAG,MAAM,GAAG,SAAS,CAEhG;AAKD,wBAAgB,MAAM,CAAC,OAAO,EAAE,gBAAgB,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,CAAC,EAAE,MAAM,QA4DlF;AASD,wBAAgB,YAAY,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,GAAG,OAAO,CAEpE;AAOD,wBAAgB,YAAY,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,GAAG,MAAM,GAAG,SAAS,CAE/E;AAGD,wBAAgB,aAAa,CAC3B,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,aAAa,EACrB,YAAY,EAAE,UAAU,GAAG,KAAK,GAAG,WAAW,QAK/C;AA6CD,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,aAAa,GAAG,UAAU,EAAE,CAExF;AAGD,wBAAgB,cAAc,CAC5B,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,aAAa,EACrB,aAAa,EAAE,UAAU,QAG1B;AASD,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,aAAa,GACtB,UAAU,GAAG,SAAS,CAExB;AAID,wBAAgB,WAAW,CACzB,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,KAAK,GAAG,aAAa,EAC7B,YAAY,EAAE,UAAU,GAAG,QAAQ,QA4BpC;AAWD,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,KAAK,EACb,UAAU,EAAE,KAAK,EACjB,aAAa,EAAE,UAAU,EACzB,aAAa,EAAE,UAAU,GAAG,KAAK,GAAG,WAAW,QA4EhD;AA+BD,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,gBAAgB,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,QA6B9F;AAID,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,SAAS,GAAG,SAAS,EAC7B,UAAU,EAAE,KAAK,EACjB,cAAc,EAAE,KAAK,QAqCtB;AAID,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,gBAAgB,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,QAahG;AAID,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,KAAK,EACb,UAAU,EAAE,KAAK,QAclB"}
|
package/dist/src/traits.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { getTypeName, setTypeSpecNamespace, validateDecoratorParamType, } from "@typespec/compiler";
|
|
1
|
+
import { getTypeName, isNeverType, setTypeSpecNamespace, validateDecoratorParamType, } from "@typespec/compiler";
|
|
2
2
|
import { isHeader, isQueryParam } from "@typespec/http";
|
|
3
|
-
import { $added
|
|
3
|
+
import { $added } from "@typespec/versioning";
|
|
4
4
|
import { createStateSymbol, reportDiagnostic } from "./lib.js";
|
|
5
5
|
const traitSourceKey = createStateSymbol("traitSource");
|
|
6
6
|
export function $traitSource(context, target, traitName) {
|
|
@@ -147,56 +147,35 @@ setTypeSpecNamespace("Traits", $traitLocation);
|
|
|
147
147
|
export function getTraitLocation(program, property) {
|
|
148
148
|
return program.stateMap(traitLocationKey).get(property);
|
|
149
149
|
}
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
if (envelopeProperty.type.kind !== "Model") {
|
|
155
|
-
// The @trait decorator has already raised a diagnostic so skip it.
|
|
150
|
+
const traitAddedKey = Symbol("traitLocation");
|
|
151
|
+
export function $traitAdded(context, target, addedVersion) {
|
|
152
|
+
if (addedVersion.kind !== "EnumMember") {
|
|
153
|
+
// The type is probably "null" so don't do anything
|
|
156
154
|
return;
|
|
157
155
|
}
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
// This is needed because the trait model envelope and its inner properties
|
|
163
|
-
// never get inserted verbatim in the output document so the versioning
|
|
164
|
-
// projection never sees them.
|
|
165
|
-
//
|
|
166
|
-
// Instead, need to make sure all versioning properties are added to the
|
|
167
|
-
// properties that ultimately get spread in to the TraitProperties model so
|
|
168
|
-
// that the versioning projection will find them.
|
|
169
|
-
for (const [_, traitProperty] of envelopeProperty.type.properties) {
|
|
170
|
-
if (traitProperty.type.kind === "Model") {
|
|
171
|
-
for (const [_, property] of traitProperty.type.properties) {
|
|
172
|
-
// Apply the `added` decorator to the property
|
|
173
|
-
context.call(decorator, property, version);
|
|
174
|
-
// Manually push the decorator onto the property so that it's copyable when
|
|
175
|
-
// using model intersections and spreads
|
|
176
|
-
property.decorators.push({
|
|
177
|
-
decorator: decorator,
|
|
178
|
-
args: [{ value: version }],
|
|
179
|
-
});
|
|
180
|
-
}
|
|
156
|
+
if (target.kind === "Model") {
|
|
157
|
+
if (target.properties.size !== 1) {
|
|
158
|
+
// The @trait decorator has already raised a diagnostic so skip it.
|
|
159
|
+
return;
|
|
181
160
|
}
|
|
161
|
+
// Invoke the decorator on the sole envelope property
|
|
162
|
+
const envelopeProperty = target.properties.values().next().value;
|
|
163
|
+
context.call($traitAdded, envelopeProperty, addedVersion);
|
|
164
|
+
// Manually push the decorator onto the property so that it's copyable when
|
|
165
|
+
// using model intersections and spreads
|
|
166
|
+
envelopeProperty.decorators.push({
|
|
167
|
+
decorator: $traitAdded,
|
|
168
|
+
args: [{ value: addedVersion }],
|
|
169
|
+
});
|
|
182
170
|
}
|
|
171
|
+
// Save the version on the envelope property so that it can be used later when
|
|
172
|
+
// we copy out trait properties
|
|
173
|
+
context.program.stateMap(traitAddedKey).set(target, addedVersion);
|
|
183
174
|
}
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
// The @trait decorator has already raised a diagnostic so skip it.
|
|
187
|
-
return;
|
|
188
|
-
}
|
|
189
|
-
applyVersioningDecorator(context, target, $added, addedVersion);
|
|
190
|
-
}
|
|
191
|
-
setTypeSpecNamespace("Traits.Private", $traitAdded);
|
|
192
|
-
export function $traitRemoved(context, target, removedVersion) {
|
|
193
|
-
if (target.properties.size !== 1) {
|
|
194
|
-
// The @trait decorator has already raised a diagnostic so skip it.
|
|
195
|
-
return;
|
|
196
|
-
}
|
|
197
|
-
applyVersioningDecorator(context, target, $removed, removedVersion);
|
|
175
|
+
function getTraitAddedVersion(program, envelopeProperty) {
|
|
176
|
+
return program.stateMap(traitAddedKey).get(envelopeProperty);
|
|
198
177
|
}
|
|
199
|
-
setTypeSpecNamespace("Traits
|
|
178
|
+
setTypeSpecNamespace("Traits", $traitAdded);
|
|
200
179
|
export function $addTraitProperties(context, target, traitModel, traitLocation, traitContexts) {
|
|
201
180
|
// TODO: Remove this when https://github.com/microsoft/typespec/issues/1525 is resolved
|
|
202
181
|
validateDecoratorParamType(context.program, target, traitLocation, "EnumMember");
|
|
@@ -206,6 +185,8 @@ export function $addTraitProperties(context, target, traitModel, traitLocation,
|
|
|
206
185
|
// criteria for this trait location and context list
|
|
207
186
|
const { program } = context;
|
|
208
187
|
for (const [_, traitEnvelope] of traitModel.properties) {
|
|
188
|
+
// Check whether the envelope property is marked with a traitAdded version
|
|
189
|
+
const addedVersion = getTraitAddedVersion(context.program, traitEnvelope);
|
|
209
190
|
// Make sure we're looking at a trait that we haven't already processed
|
|
210
191
|
const traitName = getSourceTraitName(program, traitEnvelope);
|
|
211
192
|
if (traitName && !appliedTraits.has(traitName)) {
|
|
@@ -234,6 +215,17 @@ export function $addTraitProperties(context, target, traitModel, traitLocation,
|
|
|
234
215
|
target.properties.set(name, context.program.checker.cloneType(property, {
|
|
235
216
|
sourceProperty: property,
|
|
236
217
|
model: target,
|
|
218
|
+
decorators: [
|
|
219
|
+
...property.decorators,
|
|
220
|
+
...(addedVersion
|
|
221
|
+
? [
|
|
222
|
+
{
|
|
223
|
+
decorator: $added,
|
|
224
|
+
args: [{ value: addedVersion }],
|
|
225
|
+
},
|
|
226
|
+
]
|
|
227
|
+
: []),
|
|
228
|
+
],
|
|
237
229
|
}));
|
|
238
230
|
appliedTraits.add(traitName);
|
|
239
231
|
}
|
|
@@ -260,6 +252,10 @@ setTypeSpecNamespace("Traits.Private", $addTraitProperties);
|
|
|
260
252
|
// unique envelope property name.
|
|
261
253
|
let traitOverrideCounter = 1;
|
|
262
254
|
export function $applyTraitOverride(context, target, traitModel) {
|
|
255
|
+
// Until versioning fix never types with pre projection https://github.com/microsoft/typespec/issues/1500
|
|
256
|
+
if (isNeverType(traitModel)) {
|
|
257
|
+
return;
|
|
258
|
+
}
|
|
263
259
|
if (traitModel.properties.size !== 1) {
|
|
264
260
|
// The @trait decorator has already raised a diagnostic so skip it.
|
|
265
261
|
return;
|
package/dist/src/traits.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"traits.js","sourceRoot":"","sources":["../../src/traits.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"traits.js","sourceRoot":"","sources":["../../src/traits.ts"],"names":[],"mappings":"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"}
|
package/lib/models.tsp
CHANGED
|
@@ -64,7 +64,9 @@ model MaxPageSizeQueryParameter {
|
|
|
64
64
|
|
|
65
65
|
@doc("Provides the standard 'orderby' query parameter for list operations.")
|
|
66
66
|
model OrderByQueryParameter {
|
|
67
|
-
@query
|
|
67
|
+
@query({
|
|
68
|
+
format: "multi",
|
|
69
|
+
})
|
|
68
70
|
@doc("Expressions that specify the order of returned results.")
|
|
69
71
|
orderby?: string[];
|
|
70
72
|
}
|
|
@@ -78,14 +80,18 @@ model FilterQueryParameter {
|
|
|
78
80
|
|
|
79
81
|
@doc("Provides the standard 'select' query parameter for list operations.")
|
|
80
82
|
model SelectQueryParameter {
|
|
81
|
-
@query
|
|
83
|
+
@query({
|
|
84
|
+
format: "multi",
|
|
85
|
+
})
|
|
82
86
|
@doc("Select the specified fields to be included in the response.")
|
|
83
87
|
select?: string[];
|
|
84
88
|
}
|
|
85
89
|
|
|
86
90
|
@doc("Provides the standard 'expand' query parameter for list operations.")
|
|
87
91
|
model ExpandQueryParameter {
|
|
88
|
-
@query
|
|
92
|
+
@query({
|
|
93
|
+
format: "multi",
|
|
94
|
+
})
|
|
89
95
|
@doc("Expand the indicated resources into the response.")
|
|
90
96
|
expand?: string[];
|
|
91
97
|
}
|
package/lib/operations.tsp
CHANGED
package/lib/traits.tsp
CHANGED
|
@@ -40,21 +40,6 @@ enum TraitContext {
|
|
|
40
40
|
Action,
|
|
41
41
|
}
|
|
42
42
|
|
|
43
|
-
// NOTE: These are currently commented out while we rethink how trait versioning should
|
|
44
|
-
// work in a later release. See issue: https://github.com/Azure/typespec-azure/issues/2422
|
|
45
|
-
|
|
46
|
-
// @added(Azure.Core.Versions.v1_0_Preview_2)
|
|
47
|
-
// @Private.traitAdded(Version)
|
|
48
|
-
// model TraitAdded<Trait, Version> {
|
|
49
|
-
// ...Trait;
|
|
50
|
-
// }
|
|
51
|
-
|
|
52
|
-
// @added(Azure.Core.Versions.v1_0_Preview_2)
|
|
53
|
-
// @Private.traitRemoved(Version)
|
|
54
|
-
// model TraitRemoved<Trait, Version> {
|
|
55
|
-
// ...Trait;
|
|
56
|
-
// }
|
|
57
|
-
|
|
58
43
|
@added(Azure.Core.Versions.v1_0_Preview_2)
|
|
59
44
|
@Private.applyTraitOverride(Trait)
|
|
60
45
|
model TraitOverride<Trait> {}
|
|
@@ -105,8 +90,14 @@ model VersionParameterTrait<TVersionParameter> {
|
|
|
105
90
|
};
|
|
106
91
|
}
|
|
107
92
|
|
|
93
|
+
/**
|
|
94
|
+
* Provides clientRequestId headers for requests and responses.
|
|
95
|
+
* @template TVersionAdded The version when the trait was added to the specification.
|
|
96
|
+
* Leave this empty if the trait is always supported.
|
|
97
|
+
*/
|
|
108
98
|
@trait("ClientRequestId")
|
|
109
|
-
|
|
99
|
+
@traitAdded(TVersionAdded)
|
|
100
|
+
model SupportsClientRequestId<TVersionAdded extends EnumMember | null = null> {
|
|
110
101
|
#suppress "@azure-tools/typespec-providerhub/no-inline-model" "This inline model is never used directly in operations."
|
|
111
102
|
clientRequestId: {
|
|
112
103
|
@traitLocation(TraitLocation.Parameters)
|
|
@@ -117,13 +108,22 @@ model SupportsClientRequestId {
|
|
|
117
108
|
};
|
|
118
109
|
}
|
|
119
110
|
|
|
111
|
+
/**
|
|
112
|
+
* Indicates that the service or operation does not support clientRequestId headers.
|
|
113
|
+
*/
|
|
120
114
|
@trait("ClientRequestId")
|
|
121
115
|
model NoClientRequestId {
|
|
122
116
|
clientRequestId: {};
|
|
123
117
|
}
|
|
124
118
|
|
|
119
|
+
/**
|
|
120
|
+
* Provides conditional request headers for requests and ETag headers for responses.
|
|
121
|
+
* @template TVersionAdded The version when the trait was added to the specification.
|
|
122
|
+
* Leave this empty if the trait is always supported.
|
|
123
|
+
*/
|
|
125
124
|
@trait("ConditionalRequests")
|
|
126
|
-
|
|
125
|
+
@traitAdded(TVersionAdded)
|
|
126
|
+
model SupportsConditionalRequests<TVersionAdded extends EnumMember | null = null> {
|
|
127
127
|
#suppress "@azure-tools/typespec-providerhub/no-inline-model" "This inline model is never used directly in operations."
|
|
128
128
|
@traitContext(TraitContext.Read)
|
|
129
129
|
conditionalRequests: {
|
|
@@ -135,13 +135,22 @@ model SupportsConditionalRequests {
|
|
|
135
135
|
};
|
|
136
136
|
}
|
|
137
137
|
|
|
138
|
+
/**
|
|
139
|
+
* Indicates that the service or operation does not support conditional requests.
|
|
140
|
+
*/
|
|
138
141
|
@trait("ConditionalRequests")
|
|
139
142
|
model NoConditionalRequests {
|
|
140
143
|
conditionalRequests: {};
|
|
141
144
|
}
|
|
142
145
|
|
|
146
|
+
/**
|
|
147
|
+
* Provides repeatable request headers for requests and responses.
|
|
148
|
+
* @template TVersionAdded The version when the trait was added to the specification.
|
|
149
|
+
* Leave this empty if the trait is always supported.
|
|
150
|
+
*/
|
|
143
151
|
@trait("RepeatableRequests")
|
|
144
|
-
|
|
152
|
+
@traitAdded(TVersionAdded)
|
|
153
|
+
model SupportsRepeatableRequests<TVersionAdded extends EnumMember | null = null> {
|
|
145
154
|
#suppress "@azure-tools/typespec-providerhub/no-inline-model" "This inline model is never used directly in operations."
|
|
146
155
|
@traitContext(
|
|
147
156
|
TraitContext.Create | TraitContext.Update | TraitContext.Delete | TraitContext.Action
|
|
@@ -155,6 +164,9 @@ model SupportsRepeatableRequests {
|
|
|
155
164
|
};
|
|
156
165
|
}
|
|
157
166
|
|
|
167
|
+
/**
|
|
168
|
+
* Indicates that the service or operation does not support repeatable requests.
|
|
169
|
+
*/
|
|
158
170
|
@trait("RepeatableRequests")
|
|
159
171
|
model NoRepeatableRequests {
|
|
160
172
|
repeatableRequests: {};
|
|
@@ -187,6 +199,13 @@ extern dec traitContext(target: ModelProperty, contexts: EnumMember | Union | un
|
|
|
187
199
|
*/
|
|
188
200
|
extern dec traitLocation(target: ModelProperty, contexts: EnumMember);
|
|
189
201
|
|
|
202
|
+
/**
|
|
203
|
+
* Sets the version for when the trait was added to the specification. Can be applied
|
|
204
|
+
* to either a trait model type or its envelope property.
|
|
205
|
+
* @param addedVersion The enum member representing the service version.
|
|
206
|
+
*/
|
|
207
|
+
extern dec traitAdded(target: object | ModelProperty, addedVersion: EnumMember | null);
|
|
208
|
+
|
|
190
209
|
namespace Azure.Core.Traits.Private {
|
|
191
210
|
@added(Azure.Core.Versions.v1_0_Preview_2)
|
|
192
211
|
@Private.addTraitProperties(Traits, Location, Contexts)
|
|
@@ -215,12 +234,6 @@ namespace Azure {
|
|
|
215
234
|
*/
|
|
216
235
|
extern dec traitSource(target: ModelProperty, traitName: string);
|
|
217
236
|
|
|
218
|
-
/**
|
|
219
|
-
* Sets the version for when the trait was added to the specification.
|
|
220
|
-
* @param addedVersion The enum member representing the servie version.
|
|
221
|
-
*/
|
|
222
|
-
extern dec traitAdded(target: object, addedVersion: EnumMember);
|
|
223
|
-
|
|
224
237
|
/**
|
|
225
238
|
* Copies trait properties from `traitModel` into `target` which conform to the
|
|
226
239
|
* specified location and contexts.
|
|
@@ -235,12 +248,6 @@ namespace Azure {
|
|
|
235
248
|
traitContexts: EnumMember | Union | unknown
|
|
236
249
|
);
|
|
237
250
|
|
|
238
|
-
/**
|
|
239
|
-
* Sets the version for when the trait was removed from the specification.
|
|
240
|
-
* @param removedVersion The enum member representing the servie version.
|
|
241
|
-
*/
|
|
242
|
-
extern dec traitRemoved(target: object, removedVersion: EnumMember);
|
|
243
|
-
|
|
244
251
|
/**
|
|
245
252
|
* `@applyTraitOverride` copies the `traitModel` into `target` and renames its envelope
|
|
246
253
|
* property to enable the trait to override another trait sharing the same name.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@azure-tools/typespec-azure-core",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.29.0-dev.10",
|
|
4
4
|
"author": "Microsoft Corporation",
|
|
5
5
|
"description": "TypeSpec Azure Core library",
|
|
6
6
|
"homepage": "https://azure.github.io/typespec-azure",
|
|
@@ -42,25 +42,27 @@
|
|
|
42
42
|
"!dist/test/**"
|
|
43
43
|
],
|
|
44
44
|
"peerDependencies": {
|
|
45
|
-
"@typespec/compiler": "
|
|
46
|
-
"@typespec/http": "
|
|
47
|
-
"@typespec/rest": "
|
|
45
|
+
"@typespec/compiler": ">=0.42.0",
|
|
46
|
+
"@typespec/http": ">=0.42.0",
|
|
47
|
+
"@typespec/rest": ">=0.42.0"
|
|
48
48
|
},
|
|
49
49
|
"dependencies": {
|
|
50
|
-
"@typespec/lint": "
|
|
50
|
+
"@typespec/lint": ">=0.42.0"
|
|
51
51
|
},
|
|
52
52
|
"devDependencies": {
|
|
53
|
-
"@typespec/compiler": "
|
|
54
|
-
"@typespec/http": "
|
|
55
|
-
"@typespec/rest": "
|
|
56
|
-
"@typespec/eslint-config-typespec": "
|
|
57
|
-
"@typespec/library-linter": "
|
|
58
|
-
"@typespec/eslint-plugin": "
|
|
59
|
-
"@typespec/versioning": "
|
|
53
|
+
"@typespec/compiler": ">=0.42.0",
|
|
54
|
+
"@typespec/http": ">=0.42.0",
|
|
55
|
+
"@typespec/rest": ">=0.42.0",
|
|
56
|
+
"@typespec/eslint-config-typespec": ">=0.6.0",
|
|
57
|
+
"@typespec/library-linter": ">=0.42.0",
|
|
58
|
+
"@typespec/eslint-plugin": ">=0.42.0",
|
|
59
|
+
"@typespec/versioning": ">=0.42.0",
|
|
60
60
|
"@types/mocha": "~10.0.0",
|
|
61
61
|
"@types/node": "~18.11.9",
|
|
62
62
|
"eslint": "^8.12.0",
|
|
63
63
|
"mocha": "~10.1.0",
|
|
64
|
+
"mocha-junit-reporter": "~2.2.0",
|
|
65
|
+
"mocha-multi-reporters": "~1.5.1",
|
|
64
66
|
"c8": "~7.12.0",
|
|
65
67
|
"rimraf": "~3.0.2",
|
|
66
68
|
"typescript": "~4.9.3"
|
|
@@ -71,7 +73,7 @@
|
|
|
71
73
|
"watch": "tsc -p . --watch",
|
|
72
74
|
"lint-typespec-library": "tsp compile . --warn-as-error --import @typespec/library-linter --no-emit",
|
|
73
75
|
"test": "mocha",
|
|
74
|
-
"test-official": "c8 mocha --forbid-only",
|
|
76
|
+
"test-official": "c8 mocha --forbid-only --reporter mocha-multi-reporters",
|
|
75
77
|
"lint": "eslint . --ext .ts --max-warnings=0",
|
|
76
78
|
"lint:fix": "eslint . --fix --ext .ts"
|
|
77
79
|
}
|