Skip to content

Commit ef0fc37

Browse files
authored
Merge pull request #220 from kategengler/kg-fix-build
2 parents b5dbe4e + d0eeb11 commit ef0fc37

File tree

14 files changed

+340
-209
lines changed

14 files changed

+340
-209
lines changed

.github/workflows/build.yml

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -26,14 +26,14 @@ jobs:
2626
git config --global user.name "Tomster"
2727
git config --global user.email "tomster@emberjs.com"
2828
- name: Set up Volta
29-
uses: rwjblue/setup-volta@v1
29+
uses: volta-cli/action@v4
3030
- name: Set up build cache (yarn)
31-
uses: actions/cache@preview
31+
uses: actions/cache@v3
3232
with:
3333
path: ~/.cache/yarn
3434
key: ${{ runner.os }}-yarn
3535
- name: Checkout
36-
uses: actions/checkout@v2
36+
uses: actions/checkout@v3
3737
- name: Install dependencies (apt-get)
3838
run: |
3939
sudo apt-get update -y
@@ -69,19 +69,19 @@ jobs:
6969
working-directory: dist/code/super-rentals
7070
run: git clean -dfX
7171
- name: Upload artifacts (assets)
72-
uses: actions/upload-artifact@v2
72+
uses: actions/upload-artifact@v3
7373
if: always()
7474
with:
7575
name: assets (${{ matrix.channel }})
7676
path: dist/assets
7777
- name: Upload artifacts (markdown)
78-
uses: actions/upload-artifact@v2
78+
uses: actions/upload-artifact@v3
7979
if: always()
8080
with:
8181
name: markdown (${{ matrix.channel }})
8282
path: dist/markdown
8383
- name: Upload artifacts (code)
84-
uses: actions/upload-artifact@v2
84+
uses: actions/upload-artifact@v3
8585
if: always()
8686
with:
8787
name: code (${{ matrix.channel }})
@@ -142,12 +142,12 @@ jobs:
142142
sudo apt-get update -y
143143
sudo apt-get install -y zipcmp advancecomp optipng perceptualdiff
144144
- name: Download artifacts (assets)
145-
uses: actions/download-artifact@v2
145+
uses: actions/download-artifact@v3
146146
with:
147147
name: assets (release)
148148
path: assets
149149
- name: Download artifacts (markdown)
150-
uses: actions/download-artifact@v2
150+
uses: actions/download-artifact@v3
151151
with:
152152
name: markdown (release)
153153
path: markdown
@@ -240,7 +240,7 @@ jobs:
240240
241241
git add public/images
242242
- name: Upload artifacts (perceptualdiff)
243-
uses: actions/upload-artifact@v2
243+
uses: actions/upload-artifact@v3
244244
if: always()
245245
with:
246246
name: perceptualdiff (release)
@@ -305,7 +305,7 @@ jobs:
305305
with:
306306
ssh-private-key: ${{ secrets.SUPER_RENTALS_DEPLOY_KEY }}
307307
- name: Download artifacts
308-
uses: actions/download-artifact@v2
308+
uses: actions/download-artifact@v3
309309
with:
310310
name: code (release)
311311
path: .
@@ -364,7 +364,7 @@ jobs:
364364
with:
365365
ssh-private-key: ${{ secrets.SUPER_RENTALS_DEPLOY_KEY }}
366366
- name: Download artifacts
367-
uses: actions/download-artifact@v2
367+
uses: actions/download-artifact@v3
368368
with:
369369
name: code (release)
370370
path: output

package.json

Lines changed: 10 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -8,23 +8,22 @@
88
"private": true,
99
"devDependencies": {
1010
"@actions/core": "^1.2.6",
11-
"@types/glob": "^7.1.1",
12-
"@types/image-size": "^0.7.0",
11+
"@types/glob": "^8.0.0",
12+
"@types/image-size": "^0.8.0",
1313
"@types/mdast": "^3.0.2",
14-
"@types/mkdirp": "^0.5.2",
14+
"@types/mkdirp": "^1.0.2",
1515
"@types/ncp": "^2.0.1",
16-
"@types/node": "^12.7.2",
17-
"@types/puppeteer": "^2.0.0",
16+
"@types/node": "^18.11.18",
1817
"@types/unist": "^2.0.3",
19-
"@types/vfile": "^3.0.2",
18+
"@types/vfile": "^4.0.0",
2019
"chalk": "^2.4.2",
2120
"ember-cli": "*",
2221
"ember-dictionary": "^0.2.3",
23-
"image-size": "^0.7.4",
24-
"mkdirp": "^0.5.1",
22+
"image-size": "^1.0.2",
23+
"mkdirp": "^1.0.4",
2524
"ncp": "^2.0.0",
2625
"node-glob": "^1.2.0",
27-
"puppeteer": "~2.1.1",
26+
"puppeteer": "~19.5.2",
2827
"rehype-stringify": "^6.0.0",
2928
"remark": "^11.0.1",
3029
"remark-cli": "^7.0.0",
@@ -46,9 +45,9 @@
4645
"retext-syntax-urls": "^1.0.2",
4746
"shx": "^0.3.2",
4847
"ts-std": "^0.7.0",
49-
"tslint": "^5.18.0",
48+
"tslint": "^6.1.3",
5049
"tslint-config-prettier": "^1.18.0",
51-
"typescript": "^3.5.3",
50+
"typescript": "^4.9.4",
5251
"unified": "^8.4.0"
5352
},
5453
"scripts": {

src/bin/generate.ts

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import {
55
writeFile as _writeFile
66
} from 'fs';
77
import _glob from 'glob';
8-
import _mkdirp from 'mkdirp';
8+
import mkdirp from 'mkdirp';
99
import { ncp as _ncp } from 'ncp';
1010
import { basename, dirname, join, relative, sep } from 'path';
1111
import frontmatter from 'remark-frontmatter';
@@ -21,7 +21,6 @@ import { doNotEdit, retinaImages, runCodeBlocks, todoLinks, zoeySays } from '../
2121
const glob = promisify(_glob);
2222
const readFile = promisify(_readFile);
2323
const writeFile = promisify(_writeFile);
24-
const mkdirp = promisify(_mkdirp);
2524
const ncp = promisify(_ncp);
2625

2726
// 01-orientation.md -> orientation.md
@@ -55,8 +54,8 @@ async function main() {
5554
let codeDir = join(project, 'dist', 'code');
5655

5756
await ncp(join(project, 'src', 'assets'), assetsDir);
58-
await mkdirp(outDir);
59-
await mkdirp(codeDir);
57+
await mkdirp(outDir, {});
58+
await mkdirp(codeDir, {});
6059

6160
let pattern = process.argv[2] || join('src', 'markdown', '**', '*.md');
6261

@@ -79,7 +78,7 @@ async function main() {
7978
let dir = unprefix(relative(srcDir, dirname(inputPath)));
8079
let name = unprefix(basename(inputPath));
8180

82-
await mkdirp(join(outDir, dir));
81+
await mkdirp(join(outDir, dir), {});
8382

8483
let outputPath = join(outDir, dir, name);
8584

src/lib/plugins/retina-images/walker.ts

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ import { exists as _exists } from 'fs';
22
import _imageSize from 'image-size';
33
import { HTML, Image } from 'mdast';
44
import { basename, resolve } from 'path';
5+
import { expect } from 'ts-std';
56
import { promisify } from 'util';
67
import BaseWalker from '../../walker';
78
import Options from './options';
@@ -38,9 +39,14 @@ function attr(v: unknown): string {
3839

3940

4041
async function toImgTag(node: Image, options: Options): Promise<HTML> {
41-
let size = await imageSize(pathFor(node.url, options));
42-
let width = Math.floor(size.width / 2);
43-
let height = Math.floor(size.height / 2);
42+
let sizeOfImage = await imageSize(pathFor(node.url, options));
43+
44+
let size = expect(sizeOfImage, 'size should be present');
45+
let width = expect(size.width, 'width should be present');
46+
let height = expect(size.height, 'height should be present');
47+
48+
let widthAttr = Math.floor(width / 2);
49+
let heightAttr = Math.floor(height / 2);
4450

4551
let attrs = [];
4652

@@ -54,8 +60,8 @@ async function toImgTag(node: Image, options: Options): Promise<HTML> {
5460
attrs.push(`title=${attr(node.title)}`);
5561
}
5662

57-
attrs.push(`width=${attr(width)}`);
58-
attrs.push(`height=${attr(height)}`);
63+
attrs.push(`width=${attr(widthAttr)}`);
64+
attrs.push(`height=${attr(heightAttr)}`);
5965

6066
return {
6167
type: 'html',

src/lib/plugins/run-code-blocks/directives/file/copy.ts

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import { lstat as _lstat, readFile as _readFile } from 'fs';
22
import { Code } from 'mdast';
3-
import _mkdirp from 'mkdirp';
3+
import mkdirp from 'mkdirp';
44
import { ncp as _ncp } from 'ncp';
55
import { basename, dirname, join } from 'path';
66
import { Option } from 'ts-std';
@@ -9,7 +9,6 @@ import Options from '../../options';
99
import parseArgs, { ToBool, optional, required } from '../../parse-args';
1010

1111
const lstat = promisify(_lstat);
12-
const mkdirp = promisify(_mkdirp);
1312
const ncp = promisify(_ncp);
1413
const readFile = promisify(_readFile);
1514

@@ -53,7 +52,7 @@ export default async function copyFile(node: Code, options: Options): Promise<Op
5352
throw new Error(`\`${src}\` is neither a regular file or a directory`);
5453
}
5554

56-
await mkdirp(destDir);
55+
await mkdirp(destDir, {});
5756
await ncp(src, destPath);
5857

5958
if (args.hidden) {

src/lib/plugins/run-code-blocks/directives/file/create.ts

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,12 @@
11
import { writeFile as _writeFile } from 'fs';
22
import { Code } from 'mdast';
3-
import _mkdirp from 'mkdirp';
3+
import mkdirp from 'mkdirp';
44
import { basename, dirname, join } from 'path';
55
import { Option } from 'ts-std';
66
import { promisify } from 'util';
77
import Options from '../../options';
88
import parseArgs, { ToBool, optional, required } from '../../parse-args';
99

10-
const mkdirp = promisify(_mkdirp);
1110
const writeFile = promisify(_writeFile);
1211

1312
interface Args {
@@ -37,7 +36,7 @@ export default async function createFile(node: Code, options: Options): Promise<
3736

3837
dir = join(dir, dirname(args.filename));
3938

40-
await mkdirp(dir);
39+
await mkdirp(dir, {});
4140

4241
let path = join(dir, basename(args.filename));
4342

src/lib/plugins/run-code-blocks/directives/pause.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ import Options from '../options';
66
async function prompt(message: string): Promise<void> {
77
console.log(`\n${message}\n`);
88

9-
await new Promise(resolve => {
9+
await new Promise<void>(resolve => {
1010
let rl = readline.createInterface({
1111
input: process.stdin,
1212
output: process.stdout

src/lib/plugins/run-code-blocks/directives/screenshot.ts

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import { exec as _exec } from 'child_process';
22
import { Code, Image } from 'mdast';
3-
import _mkdirp from 'mkdirp';
3+
import mkdirp from 'mkdirp';
44
import { basename, extname, join, sep } from 'path';
55
import { ScreenshotOptions, Viewport } from 'puppeteer';
66
import { JSONObject, JSONValue, assert } from 'ts-std';
@@ -10,7 +10,6 @@ import Options from '../options';
1010
import parseArgs, { ToBool, optional, required } from '../parse-args';
1111

1212
const exec = promisify(_exec);
13-
const mkdirp = promisify(_mkdirp);
1413

1514
interface Args {
1615
filename: string;
@@ -156,7 +155,7 @@ export default async function screenshot(node: Code, options: Options, vfile: VF
156155
filename = `${basename(filename, '.png')}@2x.png`;
157156
}
158157

159-
await mkdirp(dir);
158+
await mkdirp(dir, {});
160159

161160
let path = join(dir, filename);
162161

src/lib/plugins/run-code-blocks/parse-args.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ export function ToBool(input: string): boolean {
2727
return input === 'true';
2828
}
2929

30-
export type KeyTransforms = Array<KeyTransform<string | undefined, unknown>>;
30+
export type KeyTransforms = KeyTransform<string | undefined, unknown>[];
3131

3232
export default function parseArgs<Args extends object>(node: Code, transforms: KeyTransforms): Args {
3333
let { lang, meta } = node;

src/lib/plugins/run-code-blocks/server.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ export default class Server {
2525
// TODO
2626
}
2727

28-
get pid(): Option<number> {
28+
get pid(): null | number | undefined {
2929
return this.process && this.process.pid;
3030
}
3131

0 commit comments

Comments
 (0)