@typespec/compiler 1.6.0-dev.8 → 1.6.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.
Files changed (68) hide show
  1. package/dist/generated-defs/TypeSpec.d.ts +5 -5
  2. package/dist/generated-defs/TypeSpec.d.ts.map +1 -1
  3. package/dist/manifest.js +2 -2
  4. package/dist/src/core/checker.d.ts +2 -1
  5. package/dist/src/core/checker.d.ts.map +1 -1
  6. package/dist/src/core/checker.js +61 -10
  7. package/dist/src/core/checker.js.map +1 -1
  8. package/dist/src/core/compiler-code-fixes/create-add-decorator/create-add-decorator.codefix.d.ts +9 -0
  9. package/dist/src/core/compiler-code-fixes/create-add-decorator/create-add-decorator.codefix.d.ts.map +1 -0
  10. package/dist/src/core/compiler-code-fixes/create-add-decorator/create-add-decorator.codefix.js +22 -0
  11. package/dist/src/core/compiler-code-fixes/create-add-decorator/create-add-decorator.codefix.js.map +1 -0
  12. package/dist/src/core/compiler-code-fixes/create-add-decorator/create-add-decorator.codefix.test.d.ts +2 -0
  13. package/dist/src/core/compiler-code-fixes/create-add-decorator/create-add-decorator.codefix.test.d.ts.map +1 -0
  14. package/dist/src/core/compiler-code-fixes/create-add-decorator/create-add-decorator.codefix.test.js +36 -0
  15. package/dist/src/core/compiler-code-fixes/create-add-decorator/create-add-decorator.codefix.test.js.map +1 -0
  16. package/dist/src/core/compiler-code-fixes/suppress.codefix.d.ts.map +1 -1
  17. package/dist/src/core/compiler-code-fixes/suppress.codefix.js +1 -16
  18. package/dist/src/core/compiler-code-fixes/suppress.codefix.js.map +1 -1
  19. package/dist/src/core/compiler-code-fixes/utils.d.ts +6 -0
  20. package/dist/src/core/compiler-code-fixes/utils.d.ts.map +1 -0
  21. package/dist/src/core/compiler-code-fixes/utils.js +17 -0
  22. package/dist/src/core/compiler-code-fixes/utils.js.map +1 -0
  23. package/dist/src/core/intrinsic-type-state.d.ts +42 -6
  24. package/dist/src/core/intrinsic-type-state.d.ts.map +1 -1
  25. package/dist/src/core/intrinsic-type-state.js +69 -16
  26. package/dist/src/core/intrinsic-type-state.js.map +1 -1
  27. package/dist/src/core/program.d.ts.map +1 -1
  28. package/dist/src/core/program.js.map +1 -1
  29. package/dist/src/index.d.ts +2 -1
  30. package/dist/src/index.d.ts.map +1 -1
  31. package/dist/src/index.js +3 -7
  32. package/dist/src/index.js.map +1 -1
  33. package/dist/src/lib/decorators.d.ts +2 -1
  34. package/dist/src/lib/decorators.d.ts.map +1 -1
  35. package/dist/src/lib/decorators.js +65 -7
  36. package/dist/src/lib/decorators.js.map +1 -1
  37. package/dist/src/server/classify.d.ts.map +1 -1
  38. package/dist/src/server/classify.js +4 -0
  39. package/dist/src/server/classify.js.map +1 -1
  40. package/dist/src/server/client-config-provider.js +1 -1
  41. package/dist/src/server/client-config-provider.js.map +1 -1
  42. package/dist/src/server/compile-service.js +1 -1
  43. package/dist/src/server/compile-service.js.map +1 -1
  44. package/dist/src/server/completion.js +8 -0
  45. package/dist/src/server/completion.js.map +1 -1
  46. package/dist/src/server/serverlib.d.ts.map +1 -1
  47. package/dist/src/server/serverlib.js +15 -3
  48. package/dist/src/server/serverlib.js.map +1 -1
  49. package/dist/src/server/tmlanguage.d.ts.map +1 -1
  50. package/dist/src/server/tmlanguage.js +3 -2
  51. package/dist/src/server/tmlanguage.js.map +1 -1
  52. package/dist/src/server/update-manager.d.ts +23 -6
  53. package/dist/src/server/update-manager.d.ts.map +1 -1
  54. package/dist/src/server/update-manager.js +93 -21
  55. package/dist/src/server/update-manager.js.map +1 -1
  56. package/dist/src/typekit/kits/literal.d.ts +2 -1
  57. package/dist/src/typekit/kits/literal.d.ts.map +1 -1
  58. package/dist/src/typekit/kits/literal.js.map +1 -1
  59. package/dist/src/typekit/kits/value.d.ts +11 -3
  60. package/dist/src/typekit/kits/value.d.ts.map +1 -1
  61. package/dist/src/typekit/kits/value.js +3 -0
  62. package/dist/src/typekit/kits/value.js.map +1 -1
  63. package/dist/src/types/package-json.d.ts +11 -0
  64. package/dist/src/types/package-json.d.ts.map +1 -1
  65. package/dist/typespec.tmLanguage +38 -33
  66. package/lib/std/decorators.tsp +25 -4
  67. package/package.json +5 -6
  68. package/templates/scaffolding.json +3 -3
@@ -196,6 +196,15 @@ extern dec minLength(target: string | ModelProperty, value: valueof integer);
196
196
  */
197
197
  extern dec maxLength(target: string | ModelProperty, value: valueof integer);
198
198
 
199
+ /** Types that can have range limits */
200
+ alias RangeLimitableTypes =
201
+ | numeric
202
+ | utcDateTime
203
+ | offsetDateTime
204
+ | plainDate
205
+ | plainTime
206
+ | duration;
207
+
199
208
  /**
200
209
  * Specify the minimum number of items this array should have.
201
210
  * @param value Minimum number
@@ -230,7 +239,10 @@ extern dec maxItems(target: unknown[] | ModelProperty, value: valueof integer);
230
239
  * scalar Age is int32;
231
240
  * ```
232
241
  */
233
- extern dec minValue(target: numeric | ModelProperty, value: valueof numeric);
242
+ extern dec minValue(
243
+ target: RangeLimitableTypes | ModelProperty,
244
+ value: valueof RangeLimitableTypes
245
+ );
234
246
 
235
247
  /**
236
248
  * Specify the maximum value this numeric type should be.
@@ -242,7 +254,10 @@ extern dec minValue(target: numeric | ModelProperty, value: valueof numeric);
242
254
  * scalar Age is int32;
243
255
  * ```
244
256
  */
245
- extern dec maxValue(target: numeric | ModelProperty, value: valueof numeric);
257
+ extern dec maxValue(
258
+ target: RangeLimitableTypes | ModelProperty,
259
+ value: valueof RangeLimitableTypes
260
+ );
246
261
 
247
262
  /**
248
263
  * Specify the minimum value this numeric type should be, exclusive of the given
@@ -255,7 +270,10 @@ extern dec maxValue(target: numeric | ModelProperty, value: valueof numeric);
255
270
  * scalar distance is float64;
256
271
  * ```
257
272
  */
258
- extern dec minValueExclusive(target: numeric | ModelProperty, value: valueof numeric);
273
+ extern dec minValueExclusive(
274
+ target: RangeLimitableTypes | ModelProperty,
275
+ value: valueof RangeLimitableTypes
276
+ );
259
277
 
260
278
  /**
261
279
  * Specify the maximum value this numeric type should be, exclusive of the given
@@ -268,7 +286,10 @@ extern dec minValueExclusive(target: numeric | ModelProperty, value: valueof num
268
286
  * scalar distance is float64;
269
287
  * ```
270
288
  */
271
- extern dec maxValueExclusive(target: numeric | ModelProperty, value: valueof numeric);
289
+ extern dec maxValueExclusive(
290
+ target: RangeLimitableTypes | ModelProperty,
291
+ value: valueof RangeLimitableTypes
292
+ );
272
293
 
273
294
  /**
274
295
  * Mark this value as a secret value that should be treated carefully to avoid exposure
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@typespec/compiler",
3
- "version": "1.6.0-dev.8",
3
+ "version": "1.6.0",
4
4
  "description": "TypeSpec Compiler Preview",
5
5
  "author": "Microsoft Corporation",
6
6
  "license": "MIT",
@@ -94,7 +94,7 @@
94
94
  "picocolors": "~1.1.1",
95
95
  "prettier": "~3.6.2",
96
96
  "semver": "^7.7.1",
97
- "tar": "^7.4.3",
97
+ "tar": "^7.5.2",
98
98
  "temporal-polyfill": "^0.3.0",
99
99
  "vscode-languageserver": "~9.0.1",
100
100
  "vscode-languageserver-textdocument": "~1.0.12",
@@ -107,7 +107,6 @@
107
107
  "@types/node": "~24.9.1",
108
108
  "@types/semver": "^7.5.8",
109
109
  "@types/yargs": "~17.0.33",
110
- "@typespec/internal-build-utils": "^0.75.0 || >=0.76.0-dev <0.76.0",
111
110
  "@vitest/coverage-v8": "^4.0.4",
112
111
  "@vitest/ui": "^4.0.4",
113
112
  "c8": "^10.1.3",
@@ -115,13 +114,13 @@
115
114
  "pathe": "^2.0.3",
116
115
  "rimraf": "~6.0.1",
117
116
  "source-map-support": "~0.5.21",
118
- "tmlanguage-generator": "^0.6.4 || >=0.7.0-dev <0.7.0",
119
117
  "typescript": "~5.9.2",
120
118
  "vitest": "^4.0.4",
121
119
  "vscode-oniguruma": "~2.0.1",
122
- "vscode-textmate": "~9.2.0"
120
+ "vscode-textmate": "~9.2.0",
121
+ "@typespec/internal-build-utils": "^0.76.0",
122
+ "tmlanguage-generator": "^0.6.5"
123
123
  },
124
- "peerDependencies": {},
125
124
  "scripts": {
126
125
  "clean": "rimraf ./dist ./temp",
127
126
  "build:init-templates-index": "tsx ./.scripts/build-init-templates.ts",
@@ -2,7 +2,7 @@
2
2
  "rest": {
3
3
  "title": "Generic REST API",
4
4
  "description": "Create a project representing a generic REST API service.",
5
- "compilerVersion": "1.5.0",
5
+ "compilerVersion": "1.6.0",
6
6
  "libraries": [
7
7
  "@typespec/http",
8
8
  "@typespec/rest",
@@ -70,7 +70,7 @@
70
70
  "target": "library",
71
71
  "title": "TypeSpec library",
72
72
  "description": "Build your own TypeSpec library with custom types, decorators or linters.",
73
- "compilerVersion": "1.5.0",
73
+ "compilerVersion": "1.6.0",
74
74
  "libraries": [],
75
75
  "files": [
76
76
  {
@@ -147,7 +147,7 @@
147
147
  "target": "library",
148
148
  "title": "TypeSpec emitter",
149
149
  "description": "Create a new package that emits artifacts from TypeSpec.",
150
- "compilerVersion": "1.5.0",
150
+ "compilerVersion": "1.6.0",
151
151
  "libraries": [],
152
152
  "files": [
153
153
  {