@azure-tools/typespec-azure-core 0.41.0-dev.3 → 0.41.0-dev.5

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
@@ -56,7 +56,7 @@ Available ruleSets:
56
56
  | `@azure-tools/typespec-azure-core/no-multiple-discriminator` | Classes should have at most one discriminator. |
57
57
  | `@azure-tools/typespec-azure-core/no-rest-library-interfaces` | Resource interfaces from the TypeSpec.Rest.Resource library are incompatible with Azure.Core. |
58
58
  | `@azure-tools/typespec-azure-core/no-unknown` | Azure services must not have properties of type `unknown`. |
59
- | `@azure-tools/typespec-azure-core/property-name-conflict` | Avoid naming conflicts. |
59
+ | `@azure-tools/typespec-azure-core/property-name-conflict` | Avoid naming conflicts between a property and a model of the same name. |
60
60
  | `@azure-tools/typespec-azure-core/bad-record-type` | Identify bad record definitions. |
61
61
  | `@azure-tools/typespec-azure-core/documentation-required` | Require documentation over enums, models, and operations. |
62
62
  | `@azure-tools/typespec-azure-core/key-visibility-required` | Key properties need to have an explicit visibility setting. |
@@ -34,7 +34,7 @@ function createEnumToExtensibleUnionCodeFix(en) {
34
34
  ? `${node.id.sv}: ${node.value.kind === SyntaxKind.NumericLiteral
35
35
  ? node.value.value
36
36
  : `"${node.value.value}"`}`
37
- : `"${node.id.sv}"`;
37
+ : `${node.id.sv}: "${node.id.sv}"`;
38
38
  }
39
39
  }
40
40
  return {
@@ -105,7 +105,7 @@ function getNodeAnnotations(node) {
105
105
  }
106
106
  }
107
107
  for (let i = endOfTrivia; i < node.end; i++) {
108
- if (source[i] === " ") {
108
+ if (source[i] === " " || source[i] === "\n") {
109
109
  endOfTrivia = i + 1;
110
110
  }
111
111
  else {
@@ -1 +1 @@
1
- {"version":3,"file":"no-enum.js","sourceRoot":"","sources":["../../../src/rules/no-enum.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"no-enum.js","sourceRoot":"","sources":["../../../src/rules/no-enum.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,4 @@
1
1
  export declare const propertyNameRule: import("@typespec/compiler").LinterRuleDefinition<"property-name-conflict", {
2
2
  readonly default: import("@typespec/compiler").CallableMessage<[string]>;
3
- readonly projectedName: import("@typespec/compiler").CallableMessage<[string, string]>;
4
3
  }>;
5
4
  //# sourceMappingURL=property-naming.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"property-naming.d.ts","sourceRoot":"","sources":["../../../src/rules/property-naming.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,gBAAgB;;;EAoC3B,CAAC"}
1
+ {"version":3,"file":"property-naming.d.ts","sourceRoot":"","sources":["../../../src/rules/property-naming.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,gBAAgB;;EAsB3B,CAAC"}
@@ -1,35 +1,21 @@
1
- import { createRule, getProjectedNames, paramMessage } from "@typespec/compiler";
1
+ import { createRule, paramMessage } from "@typespec/compiler";
2
2
  import { isExcludedCoreType } from "./utils.js";
3
3
  export const propertyNameRule = createRule({
4
4
  name: "property-name-conflict",
5
- description: "Avoid naming conflicts.",
5
+ description: "Avoid naming conflicts between a property and a model of the same name.",
6
6
  severity: "warning",
7
7
  messages: {
8
- default: paramMessage `Property '${"propertyName"}' having the same name as its enclosing model will cause problems with C# code generation. Consider renaming the property directly or using the @projectedName decorator to rename the property for C#.`,
9
- projectedName: paramMessage `Use of @projectedName on property '${"propertyName"}' results in '${"propertyName"}' having the same name as its enclosing type in C#. Please use a different @projectedName value.`,
8
+ default: paramMessage `Property '${"propertyName"}' having the same name as its enclosing model will cause problems with C# code generation. Consider renaming the property directly or using the @clientName("newName", "csharp") decorator to rename the property for C#.`,
10
9
  },
11
10
  create(context) {
12
11
  return {
13
12
  modelProperty: (property) => {
14
- var _a, _b, _c;
13
+ var _a;
15
14
  if (isExcludedCoreType(context.program, property))
16
15
  return;
17
- const projectedNames = getProjectedNames(context.program, property);
18
16
  const modelName = (_a = property.model) === null || _a === void 0 ? void 0 : _a.name.toLocaleLowerCase();
19
17
  const propertyName = property.name.toLocaleLowerCase();
20
- const csharpProjection = (_b = projectedNames === null || projectedNames === void 0 ? void 0 : projectedNames.get("csharp")) === null || _b === void 0 ? void 0 : _b.toLocaleLowerCase();
21
- const clientProjection = (_c = projectedNames === null || projectedNames === void 0 ? void 0 : projectedNames.get("client")) === null || _c === void 0 ? void 0 : _c.toLocaleLowerCase();
22
- if (csharpProjection === modelName || // csharp projection conflicts with model name
23
- (clientProjection === modelName && !csharpProjection) // client projection conflicts with model name and there is no csharp projection
24
- ) {
25
- context.reportDiagnostic({
26
- messageId: "projectedName",
27
- format: { propertyName: property.name },
28
- target: property,
29
- });
30
- }
31
- else if (propertyName === modelName && !(csharpProjection || clientProjection)) {
32
- // warning if the property name conflicts with the model name and there is no csharp or client projected name
18
+ if (propertyName === modelName) {
33
19
  context.reportDiagnostic({
34
20
  format: { propertyName: property.name },
35
21
  target: property,
@@ -1 +1 @@
1
- {"version":3,"file":"property-naming.js","sourceRoot":"","sources":["../../../src/rules/property-naming.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,UAAU,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAChG,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAEhD,MAAM,CAAC,MAAM,gBAAgB,GAAG,UAAU,CAAC;IACzC,IAAI,EAAE,wBAAwB;IAC9B,WAAW,EAAE,yBAAyB;IACtC,QAAQ,EAAE,SAAS;IACnB,QAAQ,EAAE;QACR,OAAO,EAAE,YAAY,CAAA,aAAa,cAAc,yMAAyM;QACzP,aAAa,EAAE,YAAY,CAAA,sCAAsC,cAAc,iBAAiB,cAAc,kGAAkG;KACjN;IACD,MAAM,CAAC,OAAO;QACZ,OAAO;YACL,aAAa,EAAE,CAAC,QAAuB,EAAE,EAAE;;gBACzC,IAAI,kBAAkB,CAAC,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC;oBAAE,OAAO;gBAC1D,MAAM,cAAc,GAAG,iBAAiB,CAAC,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;gBACpE,MAAM,SAAS,GAAG,MAAA,QAAQ,CAAC,KAAK,0CAAE,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBAC3D,MAAM,YAAY,GAAG,QAAQ,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBACvD,MAAM,gBAAgB,GAAG,MAAA,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,GAAG,CAAC,QAAQ,CAAC,0CAAE,iBAAiB,EAAE,CAAC;gBAC5E,MAAM,gBAAgB,GAAG,MAAA,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,GAAG,CAAC,QAAQ,CAAC,0CAAE,iBAAiB,EAAE,CAAC;gBAC5E,IACE,gBAAgB,KAAK,SAAS,IAAI,8CAA8C;oBAChF,CAAC,gBAAgB,KAAK,SAAS,IAAI,CAAC,gBAAgB,CAAC,CAAC,gFAAgF;kBACtI,CAAC;oBACD,OAAO,CAAC,gBAAgB,CAAC;wBACvB,SAAS,EAAE,eAAe;wBAC1B,MAAM,EAAE,EAAE,YAAY,EAAE,QAAQ,CAAC,IAAI,EAAE;wBACvC,MAAM,EAAE,QAAQ;qBACjB,CAAC,CAAC;gBACL,CAAC;qBAAM,IAAI,YAAY,KAAK,SAAS,IAAI,CAAC,CAAC,gBAAgB,IAAI,gBAAgB,CAAC,EAAE,CAAC;oBACjF,6GAA6G;oBAC7G,OAAO,CAAC,gBAAgB,CAAC;wBACvB,MAAM,EAAE,EAAE,YAAY,EAAE,QAAQ,CAAC,IAAI,EAAE;wBACvC,MAAM,EAAE,QAAQ;qBACjB,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"}
1
+ {"version":3,"file":"property-naming.js","sourceRoot":"","sources":["../../../src/rules/property-naming.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,UAAU,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAC7E,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAEhD,MAAM,CAAC,MAAM,gBAAgB,GAAG,UAAU,CAAC;IACzC,IAAI,EAAE,wBAAwB;IAC9B,WAAW,EAAE,yEAAyE;IACtF,QAAQ,EAAE,SAAS;IACnB,QAAQ,EAAE;QACR,OAAO,EAAE,YAAY,CAAA,aAAa,cAAc,2NAA2N;KAC5Q;IACD,MAAM,CAAC,OAAO;QACZ,OAAO;YACL,aAAa,EAAE,CAAC,QAAuB,EAAE,EAAE;;gBACzC,IAAI,kBAAkB,CAAC,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC;oBAAE,OAAO;gBAC1D,MAAM,SAAS,GAAG,MAAA,QAAQ,CAAC,KAAK,0CAAE,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBAC3D,MAAM,YAAY,GAAG,QAAQ,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBACvD,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;oBAC/B,OAAO,CAAC,gBAAgB,CAAC;wBACvB,MAAM,EAAE,EAAE,YAAY,EAAE,QAAQ,CAAC,IAAI,EAAE;wBACvC,MAAM,EAAE,QAAQ;qBACjB,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"}
@@ -5,7 +5,7 @@ export const requireDocumentation = createRule({
5
5
  description: "Require documentation over enums, models, and operations.",
6
6
  severity: "warning",
7
7
  messages: {
8
- default: paramMessage `The ${"kind"} named '${"name"}' should have a documentation or description, please use decorator @doc to add it.`,
8
+ default: paramMessage `The ${"kind"} named '${"name"}' should have a documentation or description, use doc comment /** */ to provide it.`,
9
9
  },
10
10
  create(context) {
11
11
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"require-docs.js","sourceRoot":"","sources":["../../../src/rules/require-docs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"require-docs.js","sourceRoot":"","sources":["../../../src/rules/require-docs.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@azure-tools/typespec-azure-core",
3
- "version": "0.41.0-dev.3",
3
+ "version": "0.41.0-dev.5",
4
4
  "author": "Microsoft Corporation",
5
5
  "description": "TypeSpec Azure Core library",
6
6
  "homepage": "https://azure.github.io/typespec-azure",