Skip to content

Determine Property Types in Native Classes #3614

Determine Property Types in Native Classes

Determine Property Types in Native Classes #3614

Status Failure
Total duration 1m 7s
Artifacts

ci.yml

on: pull_request
self-lint
48s
self-lint
Matrix: build
Fit to window
Zoom out
Zoom in

Annotations

17 errors
build (ubuntu, 18.x)
Process completed with exit code 1.
tests/lib/rules/order-in-routes.js > order-in-routes > valid > export default Route.extend({ ...foo });: lib/utils/types.js#L138
TypeError: Cannot read properties of undefined (reading 'callee') Occurred while linting <input>:1 Rule: "order-in-routes" ❯ Object.isCallWithArrowFunctionExpression lib/utils/types.js:138:24 ❯ isFunctionExpression lib/utils/ember.js:693:11 ❯ Object.isRouteLifecycleHook lib/utils/ember.js:506:10 ❯ determinePropertyType lib/utils/property-order.js:105:22 ❯ reportUnorderedProperties lib/utils/property-order.js:310:18 ❯ CallExpression lib/rules/order-in-routes.js:114:9 ❯ ruleErrorHandler node_modules/.pnpm/[email protected]/node_modules/eslint/lib/linter/linter.js:1076:28 ❯ node_modules/.pnpm/[email protected]/node_modules/eslint/lib/linter/safe-emitter.js:45:58 ❯ Object.emit node_modules/.pnpm/[email protected]/node_modules/eslint/lib/linter/safe-emitter.js:45:38 ❯ NodeEventGenerator.applySelector node_modules/.pnpm/[email protected]/node_modules/eslint/lib/linter/node-event-generator.js:297:26 ❯ NodeEventGenerator.applySelectors node_modules/.pnpm/[email protected]/node_modules/eslint/lib/linter/node-event-generator.js:326:22 ❯ NodeEventGenerator.enterNode node_modules/.pnpm/[email protected]/node_modules/eslint/lib/linter/node-event-generator.js:340:14 ❯ CodePathAnalyzer.enterNode node_modules/.pnpm/[email protected]/node_modules/eslint/lib/linter/code-path-analysis/code-path-analyzer.js:803:23 ❯ node_modules/.pnpm/[email protected]/node_modules/eslint/lib/linter/linter.js:1111:32 ❯ runRules node_modules/.pnpm/[email protected]/node_modules/eslint/lib/linter/linter.js:1106:15 ❯ Linter._verifyWithoutProcessors node_modules/.pnpm/[email protected]/node_modules/eslint/lib/linter/linter.js:1355:31 ❯ Linter.verify node_modules/.pnpm/[email protected]/node_modules/eslint/lib/linter/linter.js:1453:57 ❯ runRuleForItem node_modules/.pnpm/[email protected]/node_modules/eslint/lib/rule-tester/rule-tester.js:832:35 ❯ testValidTemplate node_modules/.pnpm/[email protected]/node_modules/eslint/lib/rule-tester/rule-tester.js:896:28 ❯ node_modules/.pnpm/[email protected]/node_modules/eslint/lib/rule-tester/rule-tester.js:1181:33 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Serialized Error: { ruleId: 'order-in-routes', currentNode: { type: 'CallExpression', start: '<unserializable>: Use node.range[0] instead of node.start', end: '<unserializable>: Use node.range[1] instead of node.end', loc: { start: { line: 1, column: 15, index: 15, constructor: 'Function<Position>' }, end: { line: 1, column: 39, index: 39, constructor: 'Function<Position>' }, filename: undefined, identifierName: undefined, constructor: 'Function<SourceLocation>' }, range: [ 15, 39 ], callee: { type: 'MemberExpression', start: '<unserializable>: Use node.range[0] instead of node.start', end: '<unserializable>: Use node.range[1] instead of node.end', loc: { start: { line: 1, column: 15, index: 15, constructor: 'Function<Position>' }, end: { line: 1, column: 27, index: 27, constructor: 'Function<Position>' }, filename: undefined, identifierName: undefined, constructor: 'Function<SourceLocation>' }, range: [ 15, 27 ], object: { type: 'Identifier', start: '<unserializable>: Use node.range[0] instead of node.start', end: '<unserializable>: Use node.range[1] instead of node.end', loc: { start: { line: 1, column: 15, index: 15, constructor: 'Function<Position>' }, end: { line: 1, column: 20, index: 20, constructor: 'Function<Position>' }, filename: undefined, constructor: 'Function<SourceLocation>' }, range: [ 15, 20 ], name: 'Route', parent: [Circular], constructor: 'Function<Node>', __clone: 'Function<anonymous>' }, computed: false, property: { type: 'Identifier', start: '<unserializable>: Use node.range[0] instead of node.start', end: '<unserializable>: Use node.range[1] instead of node.end', loc: { start: { line: 1, column: 21, index: 21, constructor: 'Function<Position>' }, end: { line: 1, column: 27, index: 27, constructor: 'Function<Position>' }, filename: undefined, constructor: 'Function<SourceLocation>' }, range: [ 21, 27 ], name: 'extend', parent: [Circular], constructor: 'Function<Node>', __clone: 'Function<anonymous>' }, optional: false, parent: [Circular], constructor: 'Function<Node>', __clone: 'Function<anony
self-lint
Process completed with exit code 1.
self-lint: lib/utils/property-order.js#L177
Use `switch` instead of multiple `else-if`
self-lint: lib/utils/property-order.js#L152
Function 'determinePropertyTypeInNativeClass' has a complexity of 31. Maximum allowed is 20
build (ubuntu, 20.x)
The operation was canceled.
tests/lib/rules/order-in-routes.js > order-in-routes > valid > export default Route.extend({ ...foo });: lib/utils/types.js#L138
TypeError: Cannot read properties of undefined (reading 'callee') Occurred while linting <input>:1 Rule: "order-in-routes" ❯ Object.isCallWithArrowFunctionExpression lib/utils/types.js:138:24 ❯ isFunctionExpression lib/utils/ember.js:693:11 ❯ Object.isRouteLifecycleHook lib/utils/ember.js:506:10 ❯ determinePropertyType lib/utils/property-order.js:105:22 ❯ reportUnorderedProperties lib/utils/property-order.js:310:18 ❯ CallExpression lib/rules/order-in-routes.js:114:9 ❯ ruleErrorHandler node_modules/.pnpm/[email protected]/node_modules/eslint/lib/linter/linter.js:1076:28 ❯ node_modules/.pnpm/[email protected]/node_modules/eslint/lib/linter/safe-emitter.js:45:58 ❯ Object.emit node_modules/.pnpm/[email protected]/node_modules/eslint/lib/linter/safe-emitter.js:45:38 ❯ NodeEventGenerator.applySelector node_modules/.pnpm/[email protected]/node_modules/eslint/lib/linter/node-event-generator.js:297:26 ❯ NodeEventGenerator.applySelectors node_modules/.pnpm/[email protected]/node_modules/eslint/lib/linter/node-event-generator.js:326:22 ❯ NodeEventGenerator.enterNode node_modules/.pnpm/[email protected]/node_modules/eslint/lib/linter/node-event-generator.js:340:14 ❯ CodePathAnalyzer.enterNode node_modules/.pnpm/[email protected]/node_modules/eslint/lib/linter/code-path-analysis/code-path-analyzer.js:803:23 ❯ node_modules/.pnpm/[email protected]/node_modules/eslint/lib/linter/linter.js:1111:32 ❯ runRules node_modules/.pnpm/[email protected]/node_modules/eslint/lib/linter/linter.js:1106:15 ❯ Linter._verifyWithoutProcessors node_modules/.pnpm/[email protected]/node_modules/eslint/lib/linter/linter.js:1355:31 ❯ Linter.verify node_modules/.pnpm/[email protected]/node_modules/eslint/lib/linter/linter.js:1453:57 ❯ runRuleForItem node_modules/.pnpm/[email protected]/node_modules/eslint/lib/rule-tester/rule-tester.js:832:35 ❯ testValidTemplate node_modules/.pnpm/[email protected]/node_modules/eslint/lib/rule-tester/rule-tester.js:896:28 ❯ node_modules/.pnpm/[email protected]/node_modules/eslint/lib/rule-tester/rule-tester.js:1181:33 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Serialized Error: { ruleId: 'order-in-routes', currentNode: { type: 'CallExpression', start: '<unserializable>: Use node.range[0] instead of node.start', end: '<unserializable>: Use node.range[1] instead of node.end', loc: { start: { line: 1, column: 15, index: 15, constructor: 'Function<Position>' }, end: { line: 1, column: 39, index: 39, constructor: 'Function<Position>' }, filename: undefined, identifierName: undefined, constructor: 'Function<SourceLocation>' }, range: [ 15, 39 ], callee: { type: 'MemberExpression', start: '<unserializable>: Use node.range[0] instead of node.start', end: '<unserializable>: Use node.range[1] instead of node.end', loc: { start: { line: 1, column: 15, index: 15, constructor: 'Function<Position>' }, end: { line: 1, column: 27, index: 27, constructor: 'Function<Position>' }, filename: undefined, identifierName: undefined, constructor: 'Function<SourceLocation>' }, range: [ 15, 27 ], object: { type: 'Identifier', start: '<unserializable>: Use node.range[0] instead of node.start', end: '<unserializable>: Use node.range[1] instead of node.end', loc: { start: { line: 1, column: 15, index: 15, constructor: 'Function<Position>' }, end: { line: 1, column: 20, index: 20, constructor: 'Function<Position>' }, filename: undefined, constructor: 'Function<SourceLocation>' }, range: [ 15, 20 ], name: 'Route', parent: [Circular], constructor: 'Function<Node>', __clone: 'Function<anonymous>' }, computed: false, property: { type: 'Identifier', start: '<unserializable>: Use node.range[0] instead of node.start', end: '<unserializable>: Use node.range[1] instead of node.end', loc: { start: { line: 1, column: 21, index: 21, constructor: 'Function<Position>' }, end: { line: 1, column: 27, index: 27, constructor: 'Function<Position>' }, filename: undefined, constructor: 'Function<SourceLocation>' }, range: [ 21, 27 ], name: 'extend', parent: [Circular], constructor: 'Function<Node>', __clone: 'Function<anonymous>' }, optional: false, parent: [Circular], constructor: 'Function<Node>', __clone: 'Function<anony
build (ubuntu, 20.x)
The strategy configuration was canceled because "build.ubuntu_18_x" failed
build (windows, 18.x)
The operation was canceled.
build (windows, 18.x)
The strategy configuration was canceled because "build.ubuntu_18_x" failed
build (windows, 20.x)
The operation was canceled.
build (windows, 20.x)
The strategy configuration was canceled because "build.ubuntu_18_x" failed
build (windows, 22.x)
The operation was canceled.
build (windows, 22.x)
The strategy configuration was canceled because "build.ubuntu_18_x" failed
build (ubuntu, 22.x)
The operation was canceled.
tests/lib/rules/order-in-routes.js > order-in-routes > valid > export default Route.extend({ ...foo });: lib/utils/types.js#L138
TypeError: Cannot read properties of undefined (reading 'callee') Occurred while linting <input>:1 Rule: "order-in-routes" ❯ Object.isCallWithArrowFunctionExpression lib/utils/types.js:138:24 ❯ isFunctionExpression lib/utils/ember.js:693:11 ❯ Object.isRouteLifecycleHook lib/utils/ember.js:506:10 ❯ determinePropertyType lib/utils/property-order.js:105:22 ❯ reportUnorderedProperties lib/utils/property-order.js:310:18 ❯ CallExpression lib/rules/order-in-routes.js:114:9 ❯ ruleErrorHandler node_modules/.pnpm/[email protected]/node_modules/eslint/lib/linter/linter.js:1076:28 ❯ node_modules/.pnpm/[email protected]/node_modules/eslint/lib/linter/safe-emitter.js:45:58 ❯ Object.emit node_modules/.pnpm/[email protected]/node_modules/eslint/lib/linter/safe-emitter.js:45:38 ❯ NodeEventGenerator.applySelector node_modules/.pnpm/[email protected]/node_modules/eslint/lib/linter/node-event-generator.js:297:26 ❯ NodeEventGenerator.applySelectors node_modules/.pnpm/[email protected]/node_modules/eslint/lib/linter/node-event-generator.js:326:22 ❯ NodeEventGenerator.enterNode node_modules/.pnpm/[email protected]/node_modules/eslint/lib/linter/node-event-generator.js:340:14 ❯ CodePathAnalyzer.enterNode node_modules/.pnpm/[email protected]/node_modules/eslint/lib/linter/code-path-analysis/code-path-analyzer.js:803:23 ❯ node_modules/.pnpm/[email protected]/node_modules/eslint/lib/linter/linter.js:1111:32 ❯ runRules node_modules/.pnpm/[email protected]/node_modules/eslint/lib/linter/linter.js:1106:15 ❯ Linter._verifyWithoutProcessors node_modules/.pnpm/[email protected]/node_modules/eslint/lib/linter/linter.js:1355:31 ❯ Linter.verify node_modules/.pnpm/[email protected]/node_modules/eslint/lib/linter/linter.js:1453:57 ❯ runRuleForItem node_modules/.pnpm/[email protected]/node_modules/eslint/lib/rule-tester/rule-tester.js:832:35 ❯ testValidTemplate node_modules/.pnpm/[email protected]/node_modules/eslint/lib/rule-tester/rule-tester.js:896:28 ❯ node_modules/.pnpm/[email protected]/node_modules/eslint/lib/rule-tester/rule-tester.js:1181:33 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Serialized Error: { ruleId: 'order-in-routes', currentNode: { type: 'CallExpression', start: '<unserializable>: Use node.range[0] instead of node.start', end: '<unserializable>: Use node.range[1] instead of node.end', loc: { start: { line: 1, column: 15, index: 15, constructor: 'Function<Position>' }, end: { line: 1, column: 39, index: 39, constructor: 'Function<Position>' }, filename: undefined, identifierName: undefined, constructor: 'Function<SourceLocation>' }, range: [ 15, 39 ], callee: { type: 'MemberExpression', start: '<unserializable>: Use node.range[0] instead of node.start', end: '<unserializable>: Use node.range[1] instead of node.end', loc: { start: { line: 1, column: 15, index: 15, constructor: 'Function<Position>' }, end: { line: 1, column: 27, index: 27, constructor: 'Function<Position>' }, filename: undefined, identifierName: undefined, constructor: 'Function<SourceLocation>' }, range: [ 15, 27 ], object: { type: 'Identifier', start: '<unserializable>: Use node.range[0] instead of node.start', end: '<unserializable>: Use node.range[1] instead of node.end', loc: { start: { line: 1, column: 15, index: 15, constructor: 'Function<Position>' }, end: { line: 1, column: 20, index: 20, constructor: 'Function<Position>' }, filename: undefined, constructor: 'Function<SourceLocation>' }, range: [ 15, 20 ], name: 'Route', parent: [Circular], constructor: 'Function<Node>', __clone: 'Function<anonymous>' }, computed: false, property: { type: 'Identifier', start: '<unserializable>: Use node.range[0] instead of node.start', end: '<unserializable>: Use node.range[1] instead of node.end', loc: { start: { line: 1, column: 21, index: 21, constructor: 'Function<Position>' }, end: { line: 1, column: 27, index: 27, constructor: 'Function<Position>' }, filename: undefined, constructor: 'Function<SourceLocation>' }, range: [ 21, 27 ], name: 'extend', parent: [Circular], constructor: 'Function<Node>', __clone: 'Function<anonymous>' }, optional: false, parent: [Circular], constructor: 'Function<Node>', __clone: 'Function<anony
build (ubuntu, 22.x)
The strategy configuration was canceled because "build.ubuntu_18_x" failed