@typespec/versioning 0.55.0-dev.1 → 0.55.0-dev.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.
@@ -0,0 +1,126 @@
1
+ import type { DecoratorContext, Enum, EnumMember, Interface, Model, ModelProperty, Namespace, Operation, Scalar, Type, Union, UnionVariant } from "@typespec/compiler";
2
+ /**
3
+ * Identifies that the decorated namespace is versioned by the provided enum.
4
+ *
5
+ * @param versions The enum that describes the supported versions.
6
+ * @example
7
+ * ```tsp
8
+ * @versioned(Versions)
9
+ * namespace MyService;
10
+ * enum Versions {
11
+ * v1,
12
+ * v2,
13
+ * v3,
14
+ * }
15
+ * ```
16
+ */
17
+ export type VersionedDecorator = (context: DecoratorContext, target: Namespace, versions: Enum) => void;
18
+ /**
19
+ * Identifies that a namespace or a given versioning enum member relies upon a versioned package.
20
+ *
21
+ * @param versionRecords The dependent library version(s) for the target namespace or version.
22
+ * @example Select a single version of `MyLib` to use
23
+ *
24
+ * ```tsp
25
+ * @useDependency(MyLib.Versions.v1_1)
26
+ * namespace NonVersionedService;
27
+ * ```
28
+ * @example Select which version of the library match to which version of the service.
29
+ *
30
+ * ```tsp
31
+ * @versioned(Versions)
32
+ * namespace MyService1;
33
+ * enum Version {
34
+ * @useDependency(MyLib.Versions.v1_1) // V1 use lib v1_1
35
+ * v1,
36
+ * @useDependency(MyLib.Versions.v1_1) // V2 use lib v1_1
37
+ * v2,
38
+ * @useDependency(MyLib.Versions.v2) // V3 use lib v2
39
+ * v3,
40
+ * }
41
+ * ```
42
+ */
43
+ export type UseDependencyDecorator = (context: DecoratorContext, target: EnumMember | Namespace, ...versionRecords: EnumMember[]) => void;
44
+ /**
45
+ * Identifies when the target was added.
46
+ *
47
+ * @param version The version that the target was added in.
48
+ * @example
49
+ * ```tsp
50
+ * @added(Versions.v2)
51
+ * op addedInV2(): void;
52
+ *
53
+ * @added(Versions.v2)
54
+ * model AlsoAddedInV2 {}
55
+ *
56
+ * model Foo {
57
+ * name: string;
58
+ *
59
+ * @added(Versions.v3)
60
+ * addedInV3: string;
61
+ * }
62
+ * ```
63
+ */
64
+ export type AddedDecorator = (context: DecoratorContext, target: Model | ModelProperty | Operation | Enum | EnumMember | Union | UnionVariant | Scalar | Interface, version: EnumMember) => void;
65
+ /**
66
+ * Identifies when the target was removed.
67
+ *
68
+ * @param version The version that the target was removed in.
69
+ * @example
70
+ * ```tsp
71
+ * @removed(Versions.v2)
72
+ * op removedInV2(): void;
73
+ *
74
+ * @removed(Versions.v2)
75
+ * model AlsoRemovedInV2 {}
76
+ *
77
+ * model Foo {
78
+ * name: string;
79
+ *
80
+ * @removed(Versions.v3)
81
+ * removedInV3: string;
82
+ * }
83
+ * ```
84
+ */
85
+ export type RemovedDecorator = (context: DecoratorContext, target: Model | ModelProperty | Operation | Enum | EnumMember | Union | UnionVariant | Scalar | Interface, version: EnumMember) => void;
86
+ /**
87
+ * Identifies when the target has been renamed.
88
+ *
89
+ * @param version The version that the target was renamed in.
90
+ * @param oldName The previous name of the target.
91
+ * @example
92
+ * ```tsp
93
+ * @renamedFrom(Versions.v2, "oldName")
94
+ * op newName(): void;
95
+ * ```
96
+ */
97
+ export type RenamedFromDecorator = (context: DecoratorContext, target: Model | ModelProperty | Operation | Enum | EnumMember | Union | UnionVariant | Scalar | Interface, version: EnumMember, oldName: string) => void;
98
+ /**
99
+ * Identifies when a target was made optional.
100
+ *
101
+ * @param version The version that the target was made optional in.
102
+ * @example
103
+ * ```tsp
104
+ * model Foo {
105
+ * name: string;
106
+ * @madeOptional(Versions.v2)
107
+ * nickname: string;
108
+ * }
109
+ * ```
110
+ */
111
+ export type MadeOptionalDecorator = (context: DecoratorContext, target: ModelProperty, version: EnumMember) => void;
112
+ /**
113
+ * Identifies when the target type changed.
114
+ *
115
+ * @param version The version that the target type changed in.
116
+ * @param oldType The previous type of the target.
117
+ */
118
+ export type TypeChangedFromDecorator = (context: DecoratorContext, target: ModelProperty, version: EnumMember, oldType: Type) => void;
119
+ /**
120
+ * Identifies when the target type changed.
121
+ *
122
+ * @param version The version that the target type changed in.
123
+ * @param oldType The previous type of the target.
124
+ */
125
+ export type ReturnTypeChangedFromDecorator = (context: DecoratorContext, target: Operation, version: EnumMember, oldType: Type) => void;
126
+ //# sourceMappingURL=TypeSpec.Versioning.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TypeSpec.Versioning.d.ts","sourceRoot":"","sources":["../../generated-defs/TypeSpec.Versioning.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,IAAI,EACJ,UAAU,EACV,SAAS,EACT,KAAK,EACL,aAAa,EACb,SAAS,EACT,SAAS,EACT,MAAM,EACN,IAAI,EACJ,KAAK,EACL,YAAY,EACb,MAAM,oBAAoB,CAAC;AAE5B;;;;;;;;;;;;;;GAcG;AACH,MAAM,MAAM,kBAAkB,GAAG,CAC/B,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,SAAS,EACjB,QAAQ,EAAE,IAAI,KACX,IAAI,CAAC;AAEV;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,MAAM,sBAAsB,GAAG,CACnC,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,UAAU,GAAG,SAAS,EAC9B,GAAG,cAAc,EAAE,UAAU,EAAE,KAC5B,IAAI,CAAC;AAEV;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,MAAM,cAAc,GAAG,CAC3B,OAAO,EAAE,gBAAgB,EACzB,MAAM,EACF,KAAK,GACL,aAAa,GACb,SAAS,GACT,IAAI,GACJ,UAAU,GACV,KAAK,GACL,YAAY,GACZ,MAAM,GACN,SAAS,EACb,OAAO,EAAE,UAAU,KAChB,IAAI,CAAC;AAEV;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,MAAM,gBAAgB,GAAG,CAC7B,OAAO,EAAE,gBAAgB,EACzB,MAAM,EACF,KAAK,GACL,aAAa,GACb,SAAS,GACT,IAAI,GACJ,UAAU,GACV,KAAK,GACL,YAAY,GACZ,MAAM,GACN,SAAS,EACb,OAAO,EAAE,UAAU,KAChB,IAAI,CAAC;AAEV;;;;;;;;;;GAUG;AACH,MAAM,MAAM,oBAAoB,GAAG,CACjC,OAAO,EAAE,gBAAgB,EACzB,MAAM,EACF,KAAK,GACL,aAAa,GACb,SAAS,GACT,IAAI,GACJ,UAAU,GACV,KAAK,GACL,YAAY,GACZ,MAAM,GACN,SAAS,EACb,OAAO,EAAE,UAAU,EACnB,OAAO,EAAE,MAAM,KACZ,IAAI,CAAC;AAEV;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,qBAAqB,GAAG,CAClC,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,aAAa,EACrB,OAAO,EAAE,UAAU,KAChB,IAAI,CAAC;AAEV;;;;;GAKG;AACH,MAAM,MAAM,wBAAwB,GAAG,CACrC,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,aAAa,EACrB,OAAO,EAAE,UAAU,EACnB,OAAO,EAAE,IAAI,KACV,IAAI,CAAC;AAEV;;;;;GAKG;AACH,MAAM,MAAM,8BAA8B,GAAG,CAC3C,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,SAAS,EACjB,OAAO,EAAE,UAAU,EACnB,OAAO,EAAE,IAAI,KACV,IAAI,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=TypeSpec.Versioning.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TypeSpec.Versioning.js","sourceRoot":"","sources":["../../generated-defs/TypeSpec.Versioning.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=TypeSpec.Versioning.ts-test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TypeSpec.Versioning.ts-test.d.ts","sourceRoot":"","sources":["../../generated-defs/TypeSpec.Versioning.ts-test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,14 @@
1
+ /** An error here would mean that the decorator is not exported or doesn't have the right name. */
2
+ import { $added, $madeOptional, $removed, $renamedFrom, $returnTypeChangedFrom, $typeChangedFrom, $useDependency, $versioned, } from "@typespec/versioning";
3
+ /** An error here would mean that the exported decorator is not using the same signature. Make sure to have export const $decName: DecNameDecorator = (...) => ... */
4
+ const _ = {
5
+ $versioned,
6
+ $useDependency,
7
+ $added,
8
+ $removed,
9
+ $renamedFrom,
10
+ $madeOptional,
11
+ $typeChangedFrom,
12
+ $returnTypeChangedFrom,
13
+ };
14
+ //# sourceMappingURL=TypeSpec.Versioning.ts-test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TypeSpec.Versioning.ts-test.js","sourceRoot":"","sources":["../../generated-defs/TypeSpec.Versioning.ts-test.ts"],"names":[],"mappings":"AAAA,kGAAkG;AAClG,OAAO,EACL,MAAM,EACN,aAAa,EACb,QAAQ,EACR,YAAY,EACZ,sBAAsB,EACtB,gBAAgB,EAChB,cAAc,EACd,UAAU,GACX,MAAM,sBAAsB,CAAC;AAuB9B,qKAAqK;AACrK,MAAM,CAAC,GAAe;IACpB,UAAU;IACV,cAAc;IACd,MAAM;IACN,QAAQ;IACR,YAAY;IACZ,aAAa;IACb,gBAAgB;IAChB,sBAAsB;CACvB,CAAC"}
@@ -1,10 +1,9 @@
1
- /// <reference types="node" resolution-mode="require"/>
2
- import { DecoratorContext, Enum, EnumMember, Model, ModelProperty, Namespace, ObjectType, Operation, Program, ProjectionApplication, Scalar, Type, Union, UnionVariant } from "@typespec/compiler";
3
- import { Interface } from "readline";
1
+ import { DecoratorContext, Enum, EnumMember, Interface, Model, ModelProperty, Namespace, ObjectType, Operation, Program, ProjectionApplication, Scalar, Type, Union, UnionVariant } from "@typespec/compiler";
2
+ import { AddedDecorator, MadeOptionalDecorator, RenamedFromDecorator, ReturnTypeChangedFromDecorator, TypeChangedFromDecorator, VersionedDecorator } from "../generated-defs/TypeSpec.Versioning.js";
4
3
  import { Version, VersionResolution } from "./types.js";
5
4
  import { TimelineMoment, VersioningTimeline } from "./versioning-timeline.js";
6
5
  export declare const namespace = "TypeSpec.Versioning";
7
- export declare function $added(context: DecoratorContext, t: Model | ModelProperty | Operation | Enum | EnumMember | Union | UnionVariant | Scalar | Interface, v: EnumMember): void;
6
+ export declare const $added: AddedDecorator;
8
7
  export declare function $removed(context: DecoratorContext, t: Model | ModelProperty | Operation | Enum | EnumMember | Union | UnionVariant | Scalar | Interface, v: EnumMember): void;
9
8
  /**
10
9
  * Returns the mapping of versions to old type values, if applicable
@@ -13,7 +12,7 @@ export declare function $removed(context: DecoratorContext, t: Model | ModelProp
13
12
  * @returns Map of versions to old types, if any
14
13
  */
15
14
  export declare function getTypeChangedFrom(p: Program, t: Type): Map<Version, Type> | undefined;
16
- export declare function $typeChangedFrom(context: DecoratorContext, prop: ModelProperty, v: EnumMember, oldType: any): void;
15
+ export declare const $typeChangedFrom: TypeChangedFromDecorator;
17
16
  /**
18
17
  * Returns the mapping of versions to old return type values, if applicable
19
18
  * @param p TypeSpec program
@@ -21,13 +20,13 @@ export declare function $typeChangedFrom(context: DecoratorContext, prop: ModelP
21
20
  * @returns Map of versions to old types, if any
22
21
  */
23
22
  export declare function getReturnTypeChangedFrom(p: Program, t: Type): Map<Version, Type> | undefined;
24
- export declare function $returnTypeChangedFrom(context: DecoratorContext, op: Operation, v: EnumMember, oldReturnType: any): void;
23
+ export declare const $returnTypeChangedFrom: ReturnTypeChangedFromDecorator;
25
24
  interface RenamedFrom {
26
25
  version: Version;
27
26
  oldName: string;
28
27
  }
29
- export declare function $renamedFrom(context: DecoratorContext, t: Model | ModelProperty | Operation | Enum | EnumMember | Union | UnionVariant | Scalar | Interface, v: EnumMember, oldName: string): void;
30
- export declare function $madeOptional(context: DecoratorContext, t: ModelProperty, v: EnumMember): void;
28
+ export declare const $renamedFrom: RenamedFromDecorator;
29
+ export declare const $madeOptional: MadeOptionalDecorator;
31
30
  /**
32
31
  * @returns the array of RenamedFrom metadata if applicable.
33
32
  */
@@ -61,7 +60,7 @@ export declare class VersionMap {
61
60
  getVersions(): Version[];
62
61
  get size(): number;
63
62
  }
64
- export declare function $versioned(context: DecoratorContext, t: Namespace, versions: Enum): void;
63
+ export declare const $versioned: VersionedDecorator;
65
64
  /**
66
65
  * Get the version map of the namespace.
67
66
  */
@@ -1 +1 @@
1
- {"version":3,"file":"versioning.d.ts","sourceRoot":"","sources":["../../src/versioning.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"versioning.d.ts","sourceRoot":"","sources":["../../src/versioning.ts"],"names":[],"mappings":"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"}
@@ -23,7 +23,7 @@ function checkIsVersion(program, enumMember, diagnosticTarget) {
23
23
  }
24
24
  return version;
25
25
  }
26
- export function $added(context, t, v) {
26
+ export const $added = (context, t, v) => {
27
27
  var _a;
28
28
  const { program } = context;
29
29
  const version = checkIsVersion(context.program, v, context.getArgumentTarget(0));
@@ -36,7 +36,7 @@ export function $added(context, t, v) {
36
36
  // ensure that records are stored in ascending order
37
37
  record.sort((a, b) => a.index - b.index);
38
38
  program.stateMap(addedOnKey).set(t, record);
39
- }
39
+ };
40
40
  export function $removed(context, t, v) {
41
41
  var _a;
42
42
  const { program } = context;
@@ -60,7 +60,7 @@ export function $removed(context, t, v) {
60
60
  export function getTypeChangedFrom(p, t) {
61
61
  return p.stateMap(typeChangedFromKey).get(t);
62
62
  }
63
- export function $typeChangedFrom(context, prop, v, oldType) {
63
+ export const $typeChangedFrom = (context, prop, v, oldType) => {
64
64
  var _a;
65
65
  const { program } = context;
66
66
  const version = checkIsVersion(context.program, v, context.getArgumentTarget(0));
@@ -73,7 +73,7 @@ export function $typeChangedFrom(context, prop, v, oldType) {
73
73
  // ensure the map is sorted by version
74
74
  record = new Map([...record.entries()].sort((a, b) => a[0].index - b[0].index));
75
75
  program.stateMap(typeChangedFromKey).set(prop, record);
76
- }
76
+ };
77
77
  /**
78
78
  * Returns the mapping of versions to old return type values, if applicable
79
79
  * @param p TypeSpec program
@@ -83,7 +83,7 @@ export function $typeChangedFrom(context, prop, v, oldType) {
83
83
  export function getReturnTypeChangedFrom(p, t) {
84
84
  return p.stateMap(returnTypeChangedFromKey).get(t);
85
85
  }
86
- export function $returnTypeChangedFrom(context, op, v, oldReturnType) {
86
+ export const $returnTypeChangedFrom = (context, op, v, oldReturnType) => {
87
87
  var _a;
88
88
  const { program } = context;
89
89
  const version = checkIsVersion(context.program, v, context.getArgumentTarget(0));
@@ -96,8 +96,8 @@ export function $returnTypeChangedFrom(context, op, v, oldReturnType) {
96
96
  // ensure the map is sorted by version
97
97
  record = new Map([...record.entries()].sort((a, b) => a[0].index - b[0].index));
98
98
  program.stateMap(returnTypeChangedFromKey).set(op, record);
99
- }
100
- export function $renamedFrom(context, t, v, oldName) {
99
+ };
100
+ export const $renamedFrom = (context, t, v, oldName) => {
101
101
  var _a;
102
102
  const { program } = context;
103
103
  const version = checkIsVersion(context.program, v, context.getArgumentTarget(0));
@@ -116,15 +116,15 @@ export function $renamedFrom(context, t, v, oldName) {
116
116
  // ensure that records are stored in ascending order
117
117
  record.sort((a, b) => a.version.index - b.version.index);
118
118
  program.stateMap(renamedFromKey).set(t, record);
119
- }
120
- export function $madeOptional(context, t, v) {
119
+ };
120
+ export const $madeOptional = (context, t, v) => {
121
121
  const { program } = context;
122
122
  const version = checkIsVersion(context.program, v, context.getArgumentTarget(0));
123
123
  if (!version) {
124
124
  return;
125
125
  }
126
126
  program.stateMap(madeOptionalKey).set(t, version);
127
- }
127
+ };
128
128
  /**
129
129
  * @returns the array of RenamedFrom metadata if applicable.
130
130
  */
@@ -221,9 +221,9 @@ export class VersionMap {
221
221
  return this.map.size;
222
222
  }
223
223
  }
224
- export function $versioned(context, t, versions) {
224
+ export const $versioned = (context, t, versions) => {
225
225
  context.program.stateMap(versionsKey).set(t, new VersionMap(t, versions));
226
- }
226
+ };
227
227
  /**
228
228
  * Get the version map of the namespace.
229
229
  */
@@ -511,6 +511,7 @@ export function getVersions(p, t) {
511
511
  t.kind === "Interface" ||
512
512
  t.kind === "Model" ||
513
513
  t.kind === "Union" ||
514
+ t.kind === "Scalar" ||
514
515
  t.kind === "Enum") {
515
516
  if (t.namespace) {
516
517
  return cacheVersion(t, getVersions(p, t.namespace) || []);
@@ -1 +1 @@
1
- {"version":3,"file":"versioning.js","sourceRoot":"","sources":["../../src/versioning.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"versioning.js","sourceRoot":"","sources":["../../src/versioning.ts"],"names":[],"mappings":"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"}
@@ -237,3 +237,30 @@ projection enummember#v {
237
237
  };
238
238
  }
239
239
  }
240
+
241
+ #suppress "projections-are-experimental"
242
+ projection scalar#v {
243
+ pre to(version) {
244
+ if !existsAtVersion(self, version) {
245
+ return never;
246
+ };
247
+ }
248
+ to(version) {
249
+ if hasDifferentNameAtVersion(self, version) {
250
+ self::rename(getNameAtVersion(self, version));
251
+ };
252
+ if hasDifferentReturnTypeAtVersion(self, version) {
253
+ self::changeReturnType(getReturnTypeBeforeVersion(self, version));
254
+ };
255
+ }
256
+ pre from(version) {
257
+ if !existsAtVersion(self, version) {
258
+ return never;
259
+ };
260
+ }
261
+ from(version) {
262
+ if hasDifferentNameAtVersion(self, version) {
263
+ self::rename(self::projectionBase::name);
264
+ };
265
+ }
266
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@typespec/versioning",
3
- "version": "0.55.0-dev.1",
3
+ "version": "0.55.0-dev.3",
4
4
  "author": "Microsoft Corporation",
5
5
  "description": "TypeSpec library for declaring and emitting versioned APIs",
6
6
  "homepage": "https://typespec.io",
@@ -46,20 +46,21 @@
46
46
  "@typespec/eslint-config-typespec": "~0.54.0 || >=0.55.0-dev <0.55.0",
47
47
  "@typespec/eslint-plugin": "~0.54.0 || >=0.55.0-dev <0.55.0",
48
48
  "@typespec/library-linter": "~0.54.0 || >=0.55.0-dev <0.55.0",
49
- "@vitest/coverage-v8": "^1.2.2",
50
- "@vitest/ui": "^1.2.2",
49
+ "@vitest/coverage-v8": "^1.4.0",
50
+ "@vitest/ui": "^1.4.0",
51
51
  "c8": "^9.1.0",
52
- "eslint": "^8.56.0",
52
+ "eslint": "^8.57.0",
53
53
  "rimraf": "~5.0.5",
54
- "typescript": "~5.3.3",
55
- "vitest": "^1.2.2",
54
+ "typescript": "~5.4.2",
55
+ "vitest": "^1.4.0",
56
56
  "@typespec/tspd": "~0.46.0"
57
57
  },
58
58
  "dependencies": {},
59
59
  "scripts": {
60
60
  "clean": "rimraf ./dist ./temp",
61
- "build": "tsc -p . && npm run lint-typespec-library",
61
+ "build": "npm run gen-extern-signature && tsc -p . && npm run lint-typespec-library",
62
62
  "watch": "tsc -p . --watch",
63
+ "gen-extern-signature": "tspd --enable-experimental gen-extern-signature .",
63
64
  "lint-typespec-library": "tsp compile . --warn-as-error --import @typespec/library-linter --no-emit",
64
65
  "test": "vitest run",
65
66
  "test:ui": "vitest --ui",