Skip to content

Commit abf4039

Browse files
authored
2 parents 2799dc8 + f83d10a commit abf4039

File tree

93 files changed

+1774
-1785
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

93 files changed

+1774
-1785
lines changed

.all-contributorsrc

+18
Original file line numberDiff line numberDiff line change
@@ -1402,6 +1402,24 @@
14021402
"contributions": [
14031403
"doc"
14041404
]
1405+
},
1406+
{
1407+
"login": "touchez-du-bois",
1408+
"name": "Takahiro Sugiura",
1409+
"avatar_url": "https://avatars.githubusercontent.com/u/434017?v=4",
1410+
"profile": "https://github.com/touchez-du-bois",
1411+
"contributions": [
1412+
"doc"
1413+
]
1414+
},
1415+
{
1416+
"login": "agdimech",
1417+
"name": "Adrian Dimech",
1418+
"avatar_url": "https://avatars.githubusercontent.com/u/51220968?v=4",
1419+
"profile": "https://github.com/agdimech",
1420+
"contributions": [
1421+
"code"
1422+
]
14051423
}
14061424
],
14071425
"repoType": "github",

.github/workflows/gh-pages.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ jobs:
1919
- name: Check out
2020
uses: actions/checkout@v3
2121
- name: Set up Python
22-
uses: actions/setup-python@v3
22+
uses: actions/setup-python@v4
2323
with:
2424
cache: 'pip'
2525
cache-dependency-path: 'gh-pages/requirements-dev.txt'

.github/workflows/main.yml

+3-3
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ jobs:
4747
cache: yarn
4848
node-version: '14'
4949
- name: Set up Python 3.7
50-
uses: actions/setup-python@v3
50+
uses: actions/setup-python@v4
5151
with:
5252
python-version: '3.7'
5353
- name: Install python3-venv
@@ -141,7 +141,7 @@ jobs:
141141
cache: yarn
142142
node-version: '14'
143143
- name: Set up Python 3.7
144-
uses: actions/setup-python@v3
144+
uses: actions/setup-python@v4
145145
with:
146146
python-version: '3.7'
147147
- name: Install python3-venv
@@ -315,7 +315,7 @@ jobs:
315315
cache: yarn
316316
node-version: ${{ matrix.node }}
317317
- name: Set up Python ${{ matrix.python }}
318-
uses: actions/setup-python@v3
318+
uses: actions/setup-python@v4
319319
with:
320320
python-version: ${{ matrix.python }}
321321
- name: 'Linux: Install python3-venv'

CHANGELOG.md

+14
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,20 @@
22

33
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
44

5+
## [1.61.0](https://github.com/aws/jsii/compare/v1.60.1...v1.61.0) (2022-06-16)
6+
7+
8+
### Features
9+
10+
* add support for using custom .m2 directory ([#3573](https://github.com/aws/jsii/issues/3573)) ([0003c8a](https://github.com/aws/jsii/commit/0003c8a22dd44a2c89fcc117e1b1064b221aacfe))
11+
12+
13+
### Bug Fixes
14+
15+
* @jsii/check-node crashes on loading with older node releases ([#3588](https://github.com/aws/jsii/issues/3588)) ([a1582bf](https://github.com/aws/jsii/commit/a1582bf7d9cc4081dd89e51efb4b3bc76b6e407e))
16+
* instantiate perf observer for each iteration ([#3585](https://github.com/aws/jsii/issues/3585)) ([3827d93](https://github.com/aws/jsii/commit/3827d93d7a1c1c83247a79647e84a56c2b5e321a))
17+
* italics in Markdown notation ([#3594](https://github.com/aws/jsii/issues/3594)) ([f754baa](https://github.com/aws/jsii/commit/f754baa81f78cce2f269732272fe305f6b34ca86))
18+
519
## [1.60.1](https://github.com/aws/jsii/compare/v1.60.0...v1.60.1) (2022-06-09)
620

721
### Bug Fixes

README.md

+26-24
Large diffs are not rendered by default.

gh-pages/content/index.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ any other native type:
8383
The documentation in this website is separated in different topics, which can be navigated using links in the site's
8484
header bar:
8585

86-
- The [Welcome](./index.md) section provides a high level overview of *jsii.
86+
- The [Welcome](./index.md) section provides a high level overview of *jsii*.
8787
- The [User Guides](./user-guides) section includes the following:
8888

8989
- The [Library Author Guide](user-guides/lib-author) is intended for developers who are looking to author libraries

gh-pages/partials/node-support-table.md

+1-3
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,8 @@
22

33
| Release | Status | End-of-Life |
44
| --------- | ---------------------------- | ------------ |
5-
| `^12.7.0` | :white_check_mark: Supported | `2022-04-30` |
6-
| `^14.5.0` | :white_check_mark: Supported | `2023-04-30` |
5+
| `^14.6.0` | :white_check_mark: Supported | `2023-04-30` |
76
| `^16.3.0` | :white_check_mark: Supported | `2024-04-30` |
8-
| `^17.3.0` | :test_tube: Best effort | `2022-06-01` |
97
| `^18.0.0` | :white_check_mark: Supported | `2025-04-30` |
108

119
??? question "Status Definitions"

gh-pages/requirements-dev.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
mkdocs~=1.3.0
22
mkdocs-awesome-pages-plugin~=2.7.0
3-
mkdocs-material~=8.2.16
3+
mkdocs-material~=8.3.4
44
mkdocs-git-revision-date-plugin~=0.3.2

lerna.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -10,5 +10,5 @@
1010
"rejectCycles": true
1111
}
1212
},
13-
"version": "1.60.1"
13+
"version": "1.61.0"
1414
}

package.json

+13-13
Original file line numberDiff line numberDiff line change
@@ -15,27 +15,27 @@
1515
"compliance": "(cd tools/jsii-compliance && yarn report)"
1616
},
1717
"devDependencies": {
18-
"@jest/types": "^28.1.0",
19-
"@types/jest": "^28.1.0",
20-
"@types/node": "^12.20.54",
21-
"@typescript-eslint/eslint-plugin": "^5.27.0",
22-
"@typescript-eslint/parser": "^5.27.0",
18+
"@jest/types": "^28.1.1",
19+
"@types/jest": "^28.1.1",
20+
"@types/node": "^14.18.21",
21+
"@typescript-eslint/eslint-plugin": "^5.28.0",
22+
"@typescript-eslint/parser": "^5.28.0",
2323
"all-contributors-cli": "^6.20.0",
24-
"eslint": "^8.16.0",
24+
"eslint": "^8.17.0",
2525
"eslint-config-prettier": "^8.5.0",
2626
"eslint-import-resolver-node": "^0.3.6",
2727
"eslint-import-resolver-typescript": "^2.7.1",
2828
"eslint-plugin-import": "^2.26.0",
2929
"eslint-plugin-prettier": "^4.0.0",
30-
"jest": "^28.1.0",
31-
"jest-circus": "^28.1.0",
32-
"jest-config": "^28.1.0",
30+
"jest": "^28.1.1",
31+
"jest-circus": "^28.1.1",
32+
"jest-config": "^28.1.1",
3333
"jest-expect-message": "^1.0.2",
34-
"lerna": "^5.0.0",
35-
"prettier": "^2.6.2",
34+
"lerna": "^5.1.2",
35+
"prettier": "^2.7.0",
3636
"standard-version": "^9.5.0",
37-
"ts-node": "^10.8.0",
38-
"typescript": "~4.7.2"
37+
"ts-node": "^10.8.1",
38+
"typescript": "~4.7.3"
3939
},
4040
"repository": {
4141
"type": "git",

packages/@fixtures/jsii-calc-bundled/package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
"directory": "packages/@fixtures/jsii-calc-bundled"
1818
},
1919
"engines": {
20-
"node": ">= 14.5.0"
20+
"node": ">= 14.6.0"
2121
},
2222
"main": "index.js"
2323
}

packages/@jsii/benchmarks/bin/benchmark.ts

+61-31
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import * as fs from 'fs-extra';
2+
import * as path from 'path';
23
import * as yargs from 'yargs';
34

45
import { benchmarks } from '../lib';
@@ -39,43 +40,72 @@ interface ResultsJson {
3940
/* eslint-disable-next-line @typescript-eslint/await-thenable */
4041
const argv = await yargs
4142
.command('$0', 'Runs jsii benchmark tests and displays results', (argv) =>
42-
argv.option('output', {
43-
type: 'string',
44-
desc: 'location of benchmark results json file, does not output to file if not specified.',
45-
}),
43+
argv
44+
.option('output', {
45+
type: 'string',
46+
desc: 'location of benchmark results json file, does not output to file if not specified.',
47+
})
48+
.option('profile-dir', {
49+
type: 'string',
50+
desc: 'directory to write benchmark profiles to',
51+
}),
4652
)
4753
.help().argv;
4854

4955
// Run list of benchmarks in sequence
50-
const resultsJson: ResultsJson[] = await benchmarks.reduce(
51-
async (
52-
accum: Promise<ResultsJson[]>,
53-
benchmark: Benchmark<any>,
54-
): Promise<ResultsJson[]> => {
55-
const prev = await accum;
56-
const result = await benchmark.run();
57-
const extra = `${result.name} averaged ${result.average} milliseconds over ${result.iterations.length} runs`;
58-
console.log(extra);
59-
return [
60-
...prev,
61-
{
62-
name: result.name,
63-
unit: 'milliseconds',
64-
value: result.average,
65-
range: result.variance,
66-
extra,
67-
},
68-
];
69-
},
70-
Promise.resolve([]),
71-
);
56+
try {
57+
const resultsJson: ResultsJson[] = await benchmarks.reduce(
58+
async (
59+
accum: Promise<ResultsJson[]>,
60+
benchmark: Benchmark<any>,
61+
): Promise<ResultsJson[]> => {
62+
const bench = argv.profileDir ? benchmark.profile() : benchmark;
63+
const prev = await accum;
64+
const result = await bench.run();
7265

73-
if (argv.output) {
74-
await fs.writeJson(argv.output, resultsJson, { spaces: 2 });
75-
console.log(`results written to ${argv.output}`);
76-
}
66+
// Output summary to console
67+
const extra = `${result.name} averaged ${result.average} milliseconds over ${result.iterations.length} runs`;
68+
console.log(extra);
69+
70+
// Write profiles if enabled
71+
if (argv.profileDir) {
72+
const dirName = result.name.replace(/[/\\:*?"<>]/g, '');
73+
const profilesTargetDir = path.join(argv.profileDir, dirName);
74+
await fs.mkdir(profilesTargetDir);
75+
76+
await Promise.all(
77+
result.iterations.map(async (iter, idx) => {
78+
const profileFile = path.join(profilesTargetDir, `${idx}.json`);
79+
await fs.writeJson(profileFile, iter.profile);
80+
}),
81+
);
82+
console.log(`profiles written to ${profilesTargetDir} directory`);
83+
}
7784

78-
return resultsJson;
85+
return [
86+
...prev,
87+
{
88+
name: result.name,
89+
unit: 'milliseconds',
90+
value: result.average,
91+
range: result.variance,
92+
extra,
93+
},
94+
];
95+
},
96+
Promise.resolve([]),
97+
);
98+
99+
if (argv.output) {
100+
await fs.writeJson(argv.output, resultsJson, { spaces: 2 });
101+
console.log(`results written to ${argv.output}`);
102+
}
103+
104+
return resultsJson;
105+
} catch (e) {
106+
console.error(e);
107+
throw e;
108+
}
79109
})()
80110
.then((results) => {
81111
console.log(`successfully completed ${results.length} benchmarks`);

0 commit comments

Comments
 (0)