Skip to content

Commit

Permalink
fix(es/module): Make jsc.paths work for a nest.js app (#7852)
Browse files Browse the repository at this point in the history
  • Loading branch information
kdy1 committed Aug 25, 2023
1 parent f79ca54 commit d33a973
Show file tree
Hide file tree
Showing 65 changed files with 1,071 additions and 103 deletions.
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
import styles from "./foo.ts/index";
import styles from "./foo.ts/index.js";
console.log(styles);
Original file line number Diff line number Diff line change
Expand Up @@ -2,5 +2,5 @@
Object.defineProperty(exports, "__esModule", {
value: true
});
const _a = require("../packages/a/src/index");
const _a = require("../packages/a/src");
console.log(`${(0, _a.displayA)()}`);
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,6 @@ Object.defineProperty(exports, "__esModule", {
});
const _interop_require_wildcard = require("@swc/helpers/_/_interop_require_wildcard");
(async function() {
const { displayA } = await Promise.resolve().then(()=>/*#__PURE__*/ _interop_require_wildcard._(require("../packages/a/src/index")));
const { displayA } = await Promise.resolve().then(()=>/*#__PURE__*/ _interop_require_wildcard._(require("../packages/a/src")));
console.log(displayA());
})();
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
export function test() {}
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
import { test } from "core/utils/utilFile";
test();
export function utilFn() {}
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "test", {
enumerable: true,
get: function() {
return test;
}
});
function test() {}
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "utilFn", {
enumerable: true,
get: function() {
return utilFn;
}
});
const _utilFile = require("./utilFile");
(0, _utilFile.test)();
function utilFn() {}
10 changes: 7 additions & 3 deletions crates/swc/tests/fixture/deno/paths/issue-3447/input/.swcrc
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,12 @@
}
},
"paths": {
"@moduleA/*": ["modules/01-moduleA/*"],
"@moduleB/*": ["modules/03-moduleB/*"]
"@moduleA/*": [
"modules/01-moduleA/*"
],
"@moduleB/*": [
"modules/02-moduleB/*"
]
}
},
"module": {
Expand All @@ -28,4 +32,4 @@
"noInterop": false,
"ignoreDynamic": true
}
}
}
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
import { sum } from "./modules/01-moduleA/utils";
export { multiply } from "./modules/03-moduleB/utils";
export { multiply } from "./modules/02-moduleB/utils";
console.log(sum(1, 2));
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
export default 4;
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
import { NekoRoute } from "./src/lib/structures/route";
import { NekoRoute } from "./src/lib/structures/route/index.js";
console.log(NekoRoute);
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
export default 4;
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
import styles from "./src/foo.bar.baz.js";
import styles from "./src/foo.bar.baz";
console.log(styles);
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ Object.defineProperty(exports, "default", {
}
});
const _interop_require_default = require("@swc/helpers/_/_interop_require_default");
const _ = /*#__PURE__*/ _interop_require_default._(require("./index"));
const _ = /*#__PURE__*/ _interop_require_default._(require("."));
function bar() {
console.log(_.default);
}
17 changes: 17 additions & 0 deletions crates/swc/tests/fixture/jsc-paths/7603/1/input/.swcrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
{
"$schema": "https://json.schemastore.org/swcrc",
"jsc": {
"parser": {
"syntax": "typescript",
"decorators": true,
"dynamicImport": true
},
"baseUrl": "./src",
"paths": {
"*": [
"*"
]
}
},
"minify": false
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
import { Module } from '@nestjs/common';
import { UsersModule } from 'users/users.module';

@Module({
imports: [UsersModule],
controllers: [],
providers: [],
})
export class AppModule {}
8 changes: 8 additions & 0 deletions crates/swc/tests/fixture/jsc-paths/7603/1/input/src/main.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
import { NestFactory } from '@nestjs/core';
import { AppModule } from 'app.module';

async function bootstrap() {
const app = await NestFactory.create(AppModule);
await app.listen(5002);
}
bootstrap();
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
export class CreateUserDto {}
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
import { PartialType } from '@nestjs/mapped-types';
import { CreateUserDto } from 'users/dto/create-user.dto';

export class UpdateUserDto extends PartialType(CreateUserDto) {}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
export class User {}
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
import { Test, TestingModule } from '@nestjs/testing';
import { UsersController } from 'users/users.controller';
import { UsersService } from 'users/users.service';

describe('UsersController', () => {
let controller: UsersController;

beforeEach(async () => {
const module: TestingModule = await Test.createTestingModule({
controllers: [UsersController],
providers: [UsersService],
}).compile();

controller = module.get<UsersController>(UsersController);
});

it('should be defined', () => {
expect(controller).toBeDefined();
});
});
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
import { Controller, Get, Post, Body, Patch, Param, Delete } from '@nestjs/common';
import { UsersService } from 'users/users.service';
import { CreateUserDto } from 'users/dto/create-user.dto';
import { UpdateUserDto } from 'users/dto/update-user.dto';

@Controller('users')
export class UsersController {
constructor(private readonly usersService: UsersService) {}

@Post()
create(@Body() createUserDto: CreateUserDto) {
return this.usersService.create(createUserDto);
}

@Get()
findAll() {
return this.usersService.findAll();
}

@Get(':id')
findOne(@Param('id') id: string) {
return this.usersService.findOne(+id);
}

@Patch(':id')
update(@Param('id') id: string, @Body() updateUserDto: UpdateUserDto) {
return this.usersService.update(+id, updateUserDto);
}

@Delete(':id')
remove(@Param('id') id: string) {
return this.usersService.remove(+id);
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
import { Module } from '@nestjs/common';
import { UsersService } from 'users/users.service';
import { UsersController } from 'users/users.controller';

@Module({
controllers: [UsersController],
providers: [UsersService],
})
export class UsersModule { }
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
import { Test, TestingModule } from '@nestjs/testing';
import { UsersService } from 'users/users.service';

describe('UsersService', () => {
let service: UsersService;

beforeEach(async () => {
const module: TestingModule = await Test.createTestingModule({
providers: [UsersService],
}).compile();

service = module.get<UsersService>(UsersService);
});

it('should be defined', () => {
expect(service).toBeDefined();
});
});
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
import { Injectable } from '@nestjs/common';
import { CreateUserDto } from 'users/dto/create-user.dto';
import { UpdateUserDto } from 'users/dto/update-user.dto';

@Injectable()
export class UsersService {
create(createUserDto: CreateUserDto) {
return 'This action adds a new user';
}

findAll() {
return `This action returns all users`;
}

findOne(id: number) {
return `This action returns a #${id} user`;
}

update(id: number, updateUserDto: UpdateUserDto) {
return `This action updates a #${id} user`;
}

remove(id: number) {
return `This action removes a #${id} user`;
}
}
17 changes: 17 additions & 0 deletions crates/swc/tests/fixture/jsc-paths/7603/1/output/src/app.module.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
import { _ as _class_call_check } from "@swc/helpers/_/_class_call_check";
import { _ as _ts_decorate } from "@swc/helpers/_/_ts_decorate";
import { Module } from "@nestjs/common";
import { UsersModule } from "./users/users.module";
export var AppModule = function AppModule() {
"use strict";
_class_call_check(this, AppModule);
};
AppModule = _ts_decorate([
Module({
imports: [
UsersModule
],
controllers: [],
providers: []
})
], AppModule);
34 changes: 34 additions & 0 deletions crates/swc/tests/fixture/jsc-paths/7603/1/output/src/main.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
import { _ as _async_to_generator } from "@swc/helpers/_/_async_to_generator";
import { _ as _ts_generator } from "@swc/helpers/_/_ts_generator";
import { NestFactory } from "@nestjs/core";
import { AppModule } from "./app.module";
function bootstrap() {
return _bootstrap.apply(this, arguments);
}
function _bootstrap() {
_bootstrap = _async_to_generator(function() {
var app;
return _ts_generator(this, function(_state) {
switch(_state.label){
case 0:
return [
4,
NestFactory.create(AppModule)
];
case 1:
app = _state.sent();
return [
4,
app.listen(5002)
];
case 2:
_state.sent();
return [
2
];
}
});
});
return _bootstrap.apply(this, arguments);
}
bootstrap();
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
import { _ as _class_call_check } from "@swc/helpers/_/_class_call_check";
export var CreateUserDto = function CreateUserDto() {
"use strict";
_class_call_check(this, CreateUserDto);
};
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
import { _ as _class_call_check } from "@swc/helpers/_/_class_call_check";
import { _ as _inherits } from "@swc/helpers/_/_inherits";
import { _ as _create_super } from "@swc/helpers/_/_create_super";
import { PartialType } from "@nestjs/mapped-types";
import { CreateUserDto } from "./create-user.dto";
export var UpdateUserDto = /*#__PURE__*/ function(_PartialType) {
"use strict";
_inherits(UpdateUserDto, _PartialType);
var _super = _create_super(UpdateUserDto);
function UpdateUserDto() {
_class_call_check(this, UpdateUserDto);
return _super.apply(this, arguments);
}
return UpdateUserDto;
}(PartialType(CreateUserDto));
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
import { _ as _class_call_check } from "@swc/helpers/_/_class_call_check";
export var User = function User() {
"use strict";
_class_call_check(this, User);
};
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
import { _ as _async_to_generator } from "@swc/helpers/_/_async_to_generator";
import { _ as _ts_generator } from "@swc/helpers/_/_ts_generator";
import { Test } from "@nestjs/testing";
import { UsersController } from "./users.controller";
import { UsersService } from "./users.service";
describe("UsersController", function() {
var controller;
beforeEach(/*#__PURE__*/ _async_to_generator(function() {
var module;
return _ts_generator(this, function(_state) {
switch(_state.label){
case 0:
return [
4,
Test.createTestingModule({
controllers: [
UsersController
],
providers: [
UsersService
]
}).compile()
];
case 1:
module = _state.sent();
controller = module.get(UsersController);
return [
2
];
}
});
}));
it("should be defined", function() {
expect(controller).toBeDefined();
});
});

1 comment on commit d33a973

@github-actions
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Benchmark

Benchmark suite Current: d33a973 Previous: ae8cd94 Ratio
es/full/bugs-1 281747 ns/iter (± 13536) 293441 ns/iter (± 10562) 0.96
es/full/minify/libraries/antd 1257700689 ns/iter (± 12510991) 1296795251 ns/iter (± 14083013) 0.97
es/full/minify/libraries/d3 266104166 ns/iter (± 4007297) 278926065 ns/iter (± 8514939) 0.95
es/full/minify/libraries/echarts 997640418 ns/iter (± 13156843) 1076507517 ns/iter (± 34170502) 0.93
es/full/minify/libraries/jquery 81063406 ns/iter (± 627280) 85031207 ns/iter (± 2594964) 0.95
es/full/minify/libraries/lodash 95293407 ns/iter (± 784466) 98329110 ns/iter (± 2898292) 0.97
es/full/minify/libraries/moment 47899993 ns/iter (± 627736) 49820943 ns/iter (± 3533575) 0.96
es/full/minify/libraries/react 17320442 ns/iter (± 129090) 17929671 ns/iter (± 45691) 0.97
es/full/minify/libraries/terser 206787476 ns/iter (± 2007271) 217763947 ns/iter (± 1244684) 0.95
es/full/minify/libraries/three 365917129 ns/iter (± 4230124) 387753216 ns/iter (± 4070575) 0.94
es/full/minify/libraries/typescript 2456969357 ns/iter (± 17913102) 2647726695 ns/iter (± 18474506) 0.93
es/full/minify/libraries/victory 534249901 ns/iter (± 4731050) 595795844 ns/iter (± 11272585) 0.90
es/full/minify/libraries/vue 114169222 ns/iter (± 1582338) 118789353 ns/iter (± 592012) 0.96
es/full/codegen/es3 32513 ns/iter (± 568) 34400 ns/iter (± 90) 0.95
es/full/codegen/es5 33113 ns/iter (± 306) 34443 ns/iter (± 151) 0.96
es/full/codegen/es2015 32782 ns/iter (± 478) 34375 ns/iter (± 76) 0.95
es/full/codegen/es2016 32563 ns/iter (± 401) 34406 ns/iter (± 72) 0.95
es/full/codegen/es2017 32477 ns/iter (± 534) 34377 ns/iter (± 97) 0.94
es/full/codegen/es2018 32623 ns/iter (± 612) 34415 ns/iter (± 91) 0.95
es/full/codegen/es2019 32402 ns/iter (± 335) 34393 ns/iter (± 36) 0.94
es/full/codegen/es2020 32475 ns/iter (± 375) 34411 ns/iter (± 64) 0.94
es/full/all/es3 163085686 ns/iter (± 2455761) 165812121 ns/iter (± 1293622) 0.98
es/full/all/es5 156913764 ns/iter (± 2458402) 158122612 ns/iter (± 756388) 0.99
es/full/all/es2015 118506202 ns/iter (± 1665360) 118099735 ns/iter (± 934199) 1.00
es/full/all/es2016 115313449 ns/iter (± 2320674) 117008101 ns/iter (± 497404) 0.99
es/full/all/es2017 115664407 ns/iter (± 1035807) 116625625 ns/iter (± 542479) 0.99
es/full/all/es2018 113297834 ns/iter (± 1534214) 114742090 ns/iter (± 643420) 0.99
es/full/all/es2019 113510323 ns/iter (± 1114892) 113561416 ns/iter (± 720599) 1.00
es/full/all/es2020 108121100 ns/iter (± 1549842) 109315739 ns/iter (± 374199) 0.99
es/full/parser 469435 ns/iter (± 5430) 487416 ns/iter (± 5239) 0.96
es/full/base/fixer 18873 ns/iter (± 243) 18307 ns/iter (± 217) 1.03
es/full/base/resolver_and_hygiene 77529 ns/iter (± 1877) 80202 ns/iter (± 106) 0.97
serialization of serde 281 ns/iter (± 7) 296 ns/iter (± 0) 0.95
css/minify/libraries/bootstrap 27355817 ns/iter (± 325129) 29193942 ns/iter (± 85993) 0.94
css/visitor/compare/clone 1572134 ns/iter (± 26940) 1639121 ns/iter (± 5617) 0.96
css/visitor/compare/visit_mut_span 1685518 ns/iter (± 28561) 1770976 ns/iter (± 2438) 0.95
css/visitor/compare/visit_mut_span_panic 1748672 ns/iter (± 24756) 1841777 ns/iter (± 5183) 0.95
css/visitor/compare/fold_span 2462019 ns/iter (± 42141) 2582315 ns/iter (± 10484) 0.95
css/visitor/compare/fold_span_panic 2615627 ns/iter (± 45155) 2761164 ns/iter (± 11017) 0.95
css/lexer/bootstrap_5_1_3 4307711 ns/iter (± 72378) 4410414 ns/iter (± 2386) 0.98
css/lexer/foundation_6_7_4 3603008 ns/iter (± 36561) 3708532 ns/iter (± 4149) 0.97
css/lexer/tailwind_3_1_1 683025 ns/iter (± 6212) 706624 ns/iter (± 810) 0.97
css/parser/bootstrap_5_1_3 18958906 ns/iter (± 227243) 20019083 ns/iter (± 72422) 0.95
css/parser/foundation_6_7_4 15224367 ns/iter (± 298740) 15937981 ns/iter (± 34904) 0.96
css/parser/tailwind_3_1_1 2866075 ns/iter (± 42694) 3022753 ns/iter (± 5340) 0.95
es/codegen/colors 707448 ns/iter (± 393875) 737912 ns/iter (± 402335) 0.96
es/codegen/large 3023666 ns/iter (± 1588175) 2889478 ns/iter (± 1522600) 1.05
es/codegen/with-parser/colors 44075 ns/iter (± 544) 45160 ns/iter (± 638) 0.98
es/codegen/with-parser/large 459436 ns/iter (± 4730) 487487 ns/iter (± 1144) 0.94
es/minify/libraries/antd 1100246434 ns/iter (± 17754436) 1140125837 ns/iter (± 12718858) 0.97
es/minify/libraries/d3 233401208 ns/iter (± 2692672) 237725228 ns/iter (± 3060643) 0.98
es/minify/libraries/echarts 868429323 ns/iter (± 6855489) 928401798 ns/iter (± 11631674) 0.94
es/minify/libraries/jquery 72418026 ns/iter (± 849400) 72673923 ns/iter (± 199382) 1.00
es/minify/libraries/lodash 84725263 ns/iter (± 797214) 86321195 ns/iter (± 142767) 0.98
es/minify/libraries/moment 42372945 ns/iter (± 376554) 43087533 ns/iter (± 116275) 0.98
es/minify/libraries/react 15607880 ns/iter (± 145372) 15896057 ns/iter (± 34660) 0.98
es/minify/libraries/terser 181050887 ns/iter (± 1627308) 184754155 ns/iter (± 548038) 0.98
es/minify/libraries/three 310739668 ns/iter (± 3892543) 320220185 ns/iter (± 6199091) 0.97
es/minify/libraries/typescript 2161189805 ns/iter (± 25655514) 2237400026 ns/iter (± 19539913) 0.97
es/minify/libraries/victory 455212517 ns/iter (± 3914565) 471123967 ns/iter (± 4354759) 0.97
es/minify/libraries/vue 105046910 ns/iter (± 1191837) 105340634 ns/iter (± 401716) 1.00
es/visitor/compare/clone 1896648 ns/iter (± 28815) 1948451 ns/iter (± 2588) 0.97
es/visitor/compare/visit_mut_span 2169192 ns/iter (± 36580) 2253464 ns/iter (± 4223) 0.96
es/visitor/compare/visit_mut_span_panic 2193247 ns/iter (± 25984) 2315642 ns/iter (± 5642) 0.95
es/visitor/compare/fold_span 3198344 ns/iter (± 41893) 3367539 ns/iter (± 6957) 0.95
es/visitor/compare/fold_span_panic 3306141 ns/iter (± 22328) 3453547 ns/iter (± 9784) 0.96
es/lexer/colors 12333 ns/iter (± 215) 12960 ns/iter (± 16) 0.95
es/lexer/angular 5733214 ns/iter (± 56971) 6073178 ns/iter (± 10394) 0.94
es/lexer/backbone 731583 ns/iter (± 7958) 785809 ns/iter (± 943) 0.93
es/lexer/jquery 4170853 ns/iter (± 48371) 4483385 ns/iter (± 15008) 0.93
es/lexer/jquery mobile 6407604 ns/iter (± 129733) 6914745 ns/iter (± 9224) 0.93
es/lexer/mootools 3343403 ns/iter (± 53234) 3551057 ns/iter (± 9097) 0.94
es/lexer/underscore 614285 ns/iter (± 7490) 659091 ns/iter (± 768) 0.93
es/lexer/three 20247255 ns/iter (± 353170) 21479021 ns/iter (± 45740) 0.94
es/lexer/yui 3590715 ns/iter (± 64942) 3815890 ns/iter (± 3249) 0.94
es/parser/colors 25805 ns/iter (± 351) 27332 ns/iter (± 128) 0.94
es/parser/angular 12982010 ns/iter (± 242680) 13563330 ns/iter (± 48398) 0.96
es/parser/backbone 1885195 ns/iter (± 28018) 1982290 ns/iter (± 7433) 0.95
es/parser/jquery 10335078 ns/iter (± 142821) 10827768 ns/iter (± 42252) 0.95
es/parser/jquery mobile 15724852 ns/iter (± 202965) 16565811 ns/iter (± 77125) 0.95
es/parser/mootools 7941087 ns/iter (± 147068) 8315447 ns/iter (± 20682) 0.95
es/parser/underscore 1619529 ns/iter (± 21415) 1707572 ns/iter (± 15224) 0.95
es/parser/three 44618806 ns/iter (± 510613) 46557896 ns/iter (± 569712) 0.96
es/parser/yui 7804377 ns/iter (± 92934) 8270448 ns/iter (± 30599) 0.94
es/preset-env/usage/builtin_type 132809 ns/iter (± 32110) 135415 ns/iter (± 32342) 0.98
es/preset-env/usage/property 16575 ns/iter (± 185) 16393 ns/iter (± 66) 1.01
es/resolver/typescript 85081841 ns/iter (± 1333682) 88477435 ns/iter (± 969201) 0.96
es/fixer/typescript 61544326 ns/iter (± 1656260) 64196123 ns/iter (± 646912) 0.96
es/hygiene/typescript 125567384 ns/iter (± 1480875) 130551605 ns/iter (± 2046976) 0.96
es/resolver_with_hygiene/typescript 229332738 ns/iter (± 1940829) 240201574 ns/iter (± 1393391) 0.95
es/visitor/base-perf/module_clone 57596 ns/iter (± 773) 59044 ns/iter (± 305) 0.98
es/visitor/base-perf/fold_empty 60225 ns/iter (± 1290) 62826 ns/iter (± 258) 0.96
es/visitor/base-perf/fold_noop_impl_all 60076 ns/iter (± 660) 63275 ns/iter (± 324) 0.95
es/visitor/base-perf/fold_noop_impl_vec 60337 ns/iter (± 1252) 63808 ns/iter (± 259) 0.95
es/visitor/base-perf/boxing_boxed_clone 57 ns/iter (± 0) 56 ns/iter (± 0) 1.02
es/visitor/base-perf/boxing_unboxed_clone 40 ns/iter (± 0) 41 ns/iter (± 0) 0.98
es/visitor/base-perf/boxing_boxed 108 ns/iter (± 0) 108 ns/iter (± 1) 1
es/visitor/base-perf/boxing_unboxed 78 ns/iter (± 0) 79 ns/iter (± 0) 0.99
es/visitor/base-perf/visit_empty 0 ns/iter (± 0) 0 ns/iter (± 0) NaN
es/visitor/base-perf/visit_contains_this 2601 ns/iter (± 41) 2635 ns/iter (± 24) 0.99
es/base/parallel/resolver/typescript 3682698865 ns/iter (± 234456679) 3806958650 ns/iter (± 218855773) 0.97
es/base/parallel/hygiene/typescript 1434476938 ns/iter (± 20101276) 1447320595 ns/iter (± 11888967) 0.99
misc/visitors/time-complexity/time 5 131 ns/iter (± 8) 120 ns/iter (± 5) 1.09
misc/visitors/time-complexity/time 10 386 ns/iter (± 9) 392 ns/iter (± 13) 0.98
misc/visitors/time-complexity/time 15 496 ns/iter (± 4) 703 ns/iter (± 18) 0.71
misc/visitors/time-complexity/time 20 1062 ns/iter (± 9) 1069 ns/iter (± 15) 0.99
misc/visitors/time-complexity/time 40 3457 ns/iter (± 48) 3604 ns/iter (± 20) 0.96
misc/visitors/time-complexity/time 60 7143 ns/iter (± 103) 7459 ns/iter (± 80) 0.96
es/full-target/es2016 222395 ns/iter (± 2576) 229549 ns/iter (± 836) 0.97
es/full-target/es2017 211915 ns/iter (± 3227) 216684 ns/iter (± 464) 0.98
es/full-target/es2018 201173 ns/iter (± 3021) 204919 ns/iter (± 513) 0.98
es2020_nullish_coalescing 69166 ns/iter (± 575) 69810 ns/iter (± 492) 0.99
es2020_optional_chaining 79188 ns/iter (± 1019) 80504 ns/iter (± 273) 0.98
es2022_class_properties 111427 ns/iter (± 1808) 113593 ns/iter (± 345) 0.98
es2018_object_rest_spread 73323 ns/iter (± 1268) 74700 ns/iter (± 240) 0.98
es2019_optional_catch_binding 60941 ns/iter (± 703) 64325 ns/iter (± 200) 0.95
es2017_async_to_generator 60154 ns/iter (± 454) 63700 ns/iter (± 328) 0.94
es2016_exponentiation 63720 ns/iter (± 624) 67898 ns/iter (± 158) 0.94
es2015_arrow 67938 ns/iter (± 1748) 70922 ns/iter (± 242) 0.96
es2015_block_scoped_fn 66491 ns/iter (± 1723) 68550 ns/iter (± 189) 0.97
es2015_block_scoping 123128 ns/iter (± 2669) 123401 ns/iter (± 461) 1.00

This comment was automatically generated by workflow using github-action-benchmark.

Please sign in to comment.