@azure-tools/typespec-azure-core 0.37.0-dev.1 → 0.37.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.
package/README.md CHANGED
@@ -8,6 +8,61 @@ TypeSpec Azure Core library
8
8
  npm install @azure-tools/typespec-azure-core
9
9
  ```
10
10
 
11
+ ## Linter
12
+
13
+ ### Usage
14
+
15
+ Add the following in `tspconfig.yaml`:
16
+
17
+ ```yaml
18
+ linter:
19
+ extends:
20
+ - "@azure-tools/typespec-azure-core/all"
21
+ ```
22
+
23
+ ### RuleSets
24
+
25
+ Available ruleSets:
26
+
27
+ - [`@azure-tools/typespec-azure-core/all`](#@azure-tools/typespec-azure-core/all)
28
+
29
+ ### Rules
30
+
31
+ | Name | Description |
32
+ | ---------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- |
33
+ | `@azure-tools/typespec-azure-core/operation-missing-api-version` | Operations need an api version parameter. |
34
+ | `@azure-tools/typespec-azure-core/auth-required` | Enforce service authentication. |
35
+ | `@azure-tools/typespec-azure-core/no-operation-id` | Operation ID is automatically generated by the OpenAPI emitters and should not normally be specified. |
36
+ | `@azure-tools/typespec-azure-core/request-body-problem` | Request body should not be of raw array type. |
37
+ | `@azure-tools/typespec-azure-core/byos` | Use the BYOS pattern recommended for Azure Services. |
38
+ | `@azure-tools/typespec-azure-core/casing-style` | Ensure proper casing style. |
39
+ | `@azure-tools/typespec-azure-core/spread-discriminated-model` | Check a model with a discriminator has not been used in composition. |
40
+ | `@azure-tools/typespec-azure-core/composition-over-inheritance` | Check that if a model is used in an operation and has derived models that it has a discriminator or recommend to use composition via spread or `is`. |
41
+ | `@azure-tools/typespec-azure-core/prefer-csv-collection-format` | It is recommended to use "csv" for collection format of parameters. |
42
+ | `@azure-tools/typespec-azure-core/use-extensible-enum` | Enums should be extensible. |
43
+ | `@azure-tools/typespec-azure-core/known-encoding` | Check for supported encodings. |
44
+ | `@azure-tools/typespec-azure-core/use-standard-operations` | Operations should be defined using a signature from the Azure.Core namespace. |
45
+ | [`@azure-tools/typespec-azure-core/no-enum`](https://azure.github.io/typespec-azure/docs/libraries/azure-core/rules/no-enum) | Azure services should not use enums. |
46
+ | `@azure-tools/typespec-azure-core/no-error-status-codes` | Recommend using the error response defined by Azure REST API guidelines. |
47
+ | `@azure-tools/typespec-azure-core/no-fixed-enum-discriminator` | Discriminator shouldn't be a fixed enum. |
48
+ | `@azure-tools/typespec-azure-core/no-nullable` | Use `?` for optional properties. |
49
+ | `@azure-tools/typespec-azure-core/no-offsetdatetime` | Prefer using `utcDateTime` when representing a datetime unless an offset is necessary. |
50
+ | `@azure-tools/typespec-azure-core/no-rpc-path-params` | Operations defined using RpcOperation should not have path parameters. |
51
+ | `@azure-tools/typespec-azure-core/no-explicit-routes-resource-ops` | The @route decorator should not be used on standard resource operation signatures. |
52
+ | `@azure-tools/typespec-azure-core/no-response-body` | Ensure that the body is set correctly for the response type. |
53
+ | `@azure-tools/typespec-azure-core/no-format` | Azure services should not use the `@format` decorator. |
54
+ | `@azure-tools/typespec-azure-core/no-multiple-discriminator` | Classes should have at most one discriminator. |
55
+ | `@azure-tools/typespec-azure-core/no-rest-library-interfaces` | Resource interfaces from the TypeSpec.Rest.Resource library are incompatible with Azure.Core. |
56
+ | `@azure-tools/typespec-azure-core/no-unknown` | Azure services must not have properties of type `unknown`. |
57
+ | `@azure-tools/typespec-azure-core/bad-record-type` | Identify bad record definitions. |
58
+ | `@azure-tools/typespec-azure-core/response-schema-problem` | Warn about operations having multiple non-error response schemas. |
59
+ | `@azure-tools/typespec-azure-core/property-name-conflict` | Avoid naming conflicts. |
60
+ | `@azure-tools/typespec-azure-core/rpc-operation-request-body` | Warning for RPC body problems. |
61
+ | `@azure-tools/typespec-azure-core/documentation-required` | Require documentation over enums, models, and operations. |
62
+ | `@azure-tools/typespec-azure-core/key-visibility-required` | Key properties need to have an explicit visibility setting. |
63
+ | `@azure-tools/typespec-azure-core/long-running-polling-operation-required` | Long-running operations should have a linked polling operation. |
64
+ | `@azure-tools/typespec-azure-core/use-standard-names` | Use recommended names for operations. |
65
+
11
66
  ## Decorators
12
67
 
13
68
  ### Azure.Core
@@ -1 +1 @@
1
- {"version":3,"file":"lib.d.ts","sourceRoot":"","sources":["../../src/lib.ts"],"names":[],"mappings":"AAkCA,eAAO,MAAM,SAAS,eAAe,CAAC;AAEtC,eAAO,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uBAmRf,CAAC;AAEH,eAAO,MAAQ,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAAE,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sDAAE,iBAAiB,0BAAS,CAAC"}
1
+ {"version":3,"file":"lib.d.ts","sourceRoot":"","sources":["../../src/lib.ts"],"names":[],"mappings":"AAmCA,eAAO,MAAM,SAAS,eAAe,CAAC;AAEtC,eAAO,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uBAqRf,CAAC;AAEH,eAAO,MAAQ,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAAE,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sDAAE,iBAAiB,0BAAS,CAAC"}
package/dist/src/lib.js CHANGED
@@ -8,6 +8,7 @@ import { extensibleEnumRule } from "./rules/extensible-enums.js";
8
8
  import { friendlyNameRule } from "./rules/friendly-name.js";
9
9
  import { knownEncodingRule } from "./rules/known-encoding.js";
10
10
  import { longRunningOperationsRequirePollingOperation } from "./rules/lro-polling-operation.js";
11
+ import { noEnumRule } from "./rules/no-enum.js";
11
12
  import { noErrorStatusCodesRule } from "./rules/no-error-status-codes.js";
12
13
  import { noExplicitRoutesResourceOps } from "./rules/no-explicit-routes-resource-ops.js";
13
14
  import { noFixedEnumDiscriminatorRule } from "./rules/no-fixed-enum-discriminator.js";
@@ -238,6 +239,7 @@ export const $lib = createTypeSpecLibrary({
238
239
  extensibleEnumRule,
239
240
  knownEncodingRule,
240
241
  useStandardOperations,
242
+ noEnumRule,
241
243
  noErrorStatusCodesRule,
242
244
  noFixedEnumDiscriminatorRule,
243
245
  noNullableRule,
@@ -293,6 +295,7 @@ export const $lib = createTypeSpecLibrary({
293
295
  [`@azure-tools/typespec-azure-core/${longRunningOperationsRequirePollingOperation.name}`]: true,
294
296
  [`@azure-tools/typespec-azure-core/${useStandardNames.name}`]: true,
295
297
  [`@azure-tools/typespec-azure-core/${friendlyNameRule.name}`]: true,
298
+ [`@azure-tools/typespec-azure-core/${noEnumRule.name}`]: false,
296
299
  },
297
300
  extends: ["@typespec/http/all"],
298
301
  },
@@ -1 +1 @@
1
- {"version":3,"file":"lib.js","sourceRoot":"","sources":["../../src/lib.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lib.js","sourceRoot":"","sources":["../../src/lib.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ export declare const noEnumRule: import("@typespec/compiler").LinterRuleDefinition<"no-enum", {
2
+ readonly default: import("@typespec/compiler").CallableMessage<[]>;
3
+ }>;
4
+ //# sourceMappingURL=no-enum.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"no-enum.d.ts","sourceRoot":"","sources":["../../../src/rules/no-enum.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,UAAU;;EAkBrB,CAAC"}
@@ -0,0 +1,21 @@
1
+ import { createRule, paramMessage } from "@typespec/compiler";
2
+ export const noEnumRule = createRule({
3
+ name: "no-enum",
4
+ description: "Azure services should not use enums.",
5
+ severity: "warning",
6
+ url: "https://azure.github.io/typespec-azure/docs/libraries/azure-core/rules/no-enum",
7
+ messages: {
8
+ default: paramMessage `Azure services should not use the enum keyword. Extensible enums should be defined as unions with "string" as an accepted variant (ex: \`union Choice { Yes: "yes", No: "no", string };\`).`,
9
+ },
10
+ create(context) {
11
+ return {
12
+ enum: (en) => {
13
+ context.reportDiagnostic({
14
+ format: { enumName: en.name },
15
+ target: en,
16
+ });
17
+ },
18
+ };
19
+ },
20
+ });
21
+ //# sourceMappingURL=no-enum.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"no-enum.js","sourceRoot":"","sources":["../../../src/rules/no-enum.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,UAAU,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEpE,MAAM,CAAC,MAAM,UAAU,GAAG,UAAU,CAAC;IACnC,IAAI,EAAE,SAAS;IACf,WAAW,EAAE,sCAAsC;IACnD,QAAQ,EAAE,SAAS;IACnB,GAAG,EAAE,gFAAgF;IACrF,QAAQ,EAAE;QACR,OAAO,EAAE,YAAY,CAAA,6LAA6L;KACnN;IACD,MAAM,CAAC,OAAO;QACZ,OAAO;YACL,IAAI,EAAE,CAAC,EAAQ,EAAE,EAAE;gBACjB,OAAO,CAAC,gBAAgB,CAAC;oBACvB,MAAM,EAAE,EAAE,QAAQ,EAAE,EAAE,CAAC,IAAI,EAAE;oBAC7B,MAAM,EAAE,EAAE;iBACX,CAAC,CAAC;YACL,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,9 +1,10 @@
1
1
  {
2
2
  "name": "@azure-tools/typespec-azure-core",
3
- "version": "0.37.0-dev.1",
3
+ "version": "0.37.0-dev.3",
4
4
  "author": "Microsoft Corporation",
5
5
  "description": "TypeSpec Azure Core library",
6
6
  "homepage": "https://azure.github.io/typespec-azure",
7
+ "docusaurusWebsite": "https://azure.github.io/typespec-azure/docs",
7
8
  "readme": "https://github.com/Azure/typespec-azure/blob/main/packages/typespec-azure-core/README.md",
8
9
  "license": "MIT",
9
10
  "repository": {