Skip to content

Commit 2e82538

Browse files
committed
Update dependencies
1 parent fe65e9e commit 2e82538

7 files changed

Lines changed: 68 additions & 54 deletions

File tree

index.js

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,7 @@ export default function typescriptProvider({negotiateProtocol}) {
9898
path.join(protocol.projectDir, from),
9999
path.join(protocol.projectDir, to),
100100
]);
101-
const testFileExtension = new RegExp(`\\.(${extensions.map(extension => escapeStringRegexp(extension)).join('|')})$`);
101+
const testFileExtension = new RegExp(String.raw`\.(${extensions.map(extension => escapeStringRegexp(extension)).join('|')})$`, 'v');
102102

103103
const watchMode = {
104104
changeInterpretations,
@@ -128,7 +128,7 @@ export default function typescriptProvider({negotiateProtocol}) {
128128
}
129129

130130
// Only recognize .cjs, .mjs and .js files.
131-
if (!/\.(c|m)?js$/.test(filePath)) {
131+
if (!/\.(c|m)?js$/v.test(filePath)) {
132132
return null;
133133
}
134134

@@ -142,11 +142,11 @@ export default function typescriptProvider({negotiateProtocol}) {
142142

143143
if (filePath.endsWith('.cjs')) {
144144
if (extensions.includes('cjs')) {
145-
possibleExtensions.push({replace: /\.cjs$/, extension: 'cjs'});
145+
possibleExtensions.push({replace: /\.cjs$/v, extension: 'cjs'});
146146
}
147147

148148
if (extensions.includes('cts')) {
149-
possibleExtensions.push({replace: /\.cjs$/, extension: 'cts'});
149+
possibleExtensions.push({replace: /\.cjs$/v, extension: 'cts'});
150150
}
151151

152152
if (possibleExtensions.length === 0) {
@@ -156,11 +156,11 @@ export default function typescriptProvider({negotiateProtocol}) {
156156

157157
if (filePath.endsWith('.mjs')) {
158158
if (extensions.includes('mjs')) {
159-
possibleExtensions.push({replace: /\.mjs$/, extension: 'mjs'});
159+
possibleExtensions.push({replace: /\.mjs$/v, extension: 'mjs'});
160160
}
161161

162162
if (extensions.includes('mts')) {
163-
possibleExtensions.push({replace: /\.mjs$/, extension: 'mts'});
163+
possibleExtensions.push({replace: /\.mjs$/v, extension: 'mts'});
164164
}
165165

166166
if (possibleExtensions.length === 0) {
@@ -170,15 +170,15 @@ export default function typescriptProvider({negotiateProtocol}) {
170170

171171
if (filePath.endsWith('.js')) {
172172
if (extensions.includes('js')) {
173-
possibleExtensions.push({replace: /\.js$/, extension: 'js'});
173+
possibleExtensions.push({replace: /\.js$/v, extension: 'js'});
174174
}
175175

176176
if (extensions.includes('ts')) {
177-
possibleExtensions.push({replace: /\.js$/, extension: 'ts'});
177+
possibleExtensions.push({replace: /\.js$/v, extension: 'ts'});
178178
}
179179

180180
if (extensions.includes('tsx')) {
181-
possibleExtensions.push({replace: /\.js$/, extension: 'tsx'});
181+
possibleExtensions.push({replace: /\.js$/v, extension: 'tsx'});
182182
}
183183

184184
if (possibleExtensions.length === 0) {
@@ -245,7 +245,7 @@ export default function typescriptProvider({negotiateProtocol}) {
245245

246246
worker({extensionsToLoadAsModules, state: {extensions, rewritePaths}}) {
247247
const importJs = extensionsToLoadAsModules.includes('js');
248-
const testFileExtension = new RegExp(`\\.(${extensions.map(extension => escapeStringRegexp(extension)).join('|')})$`);
248+
const testFileExtension = new RegExp(String.raw`\.(${extensions.map(extension => escapeStringRegexp(extension)).join('|')})$`, 'v');
249249

250250
return {
251251
canLoad(reference) {
@@ -257,10 +257,10 @@ export default function typescriptProvider({negotiateProtocol}) {
257257
let rewritten = `${to}${reference.slice(from.length)}`;
258258
let useImport = true;
259259
if (reference.endsWith('.cts')) {
260-
rewritten = rewritten.replace(/\.cts$/, '.cjs');
260+
rewritten = rewritten.replace(/\.cts$/v, '.cjs');
261261
useImport = false;
262262
} else if (reference.endsWith('.mts')) {
263-
rewritten = rewritten.replace(/\.mts$/, '.mjs');
263+
rewritten = rewritten.replace(/\.mts$/v, '.mjs');
264264
} else {
265265
rewritten = rewritten.replace(testFileExtension, '.js');
266266
useImport = importJs;

package.json

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -24,14 +24,14 @@
2424
},
2525
"dependencies": {
2626
"escape-string-regexp": "^5.0.0",
27-
"execa": "^9.6.0"
27+
"execa": "^9.6.1"
2828
},
2929
"devDependencies": {
30-
"ava": "^6.4.0",
31-
"c8": "^10.1.3",
32-
"del": "^8.0.0",
33-
"typescript": "^5.8.3",
34-
"xo": "^1.1.0"
30+
"ava": "^7.0.0",
31+
"c8": "^11.0.0",
32+
"del": "^8.0.1",
33+
"typescript": "^6.0.2",
34+
"xo": "^2.0.2"
3535
},
3636
"volta": {
3737
"node": "24.14.1",

test/broken-fixtures/tsconfig.json

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
11
{
22
"compilerOptions": {
3-
"outDir": "typescript/compiled",
4-
"lib": [
5-
"es2022"
6-
]
3+
"outDir": "./typescript/compiled",
4+
"rootDir": "./typescript",
5+
"tsBuildInfoFile": "./typescript/compiled/.tsbuildinfo"
76
},
87
"include": [
98
"typescript"

test/compilation.js

Lines changed: 43 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -6,45 +6,65 @@ import {execaNode} from 'execa';
66
import createProviderMacro from './_with-provider.js';
77

88
const __dirname = path.dirname(fileURLToPath(import.meta.url));
9-
const withProvider = createProviderMacro('ava-6', '6.0.0', path.join(__dirname, 'fixtures'));
10-
const withAltProvider = createProviderMacro('ava-6', '6.0.0', path.join(__dirname, 'broken-fixtures'));
9+
const withProvider = createProviderMacro(
10+
'ava-6',
11+
'6.0.0',
12+
path.join(__dirname, 'fixtures'),
13+
);
14+
const withAltProvider = createProviderMacro(
15+
'ava-6',
16+
'6.0.0',
17+
path.join(__dirname, 'broken-fixtures'),
18+
);
1119

1220
test.before('deleting compiled files', async t => {
1321
t.log(await deleteAsync('test/fixtures/typescript/compiled'));
1422
t.log(await deleteAsync('test/broken-fixtures/typescript/compiled'));
1523
});
1624

1725
const compile = async provider => ({
18-
state: await provider.main({
19-
config: {
20-
rewritePaths: {
21-
'ts/': 'typescript/',
22-
'compiled/': 'typescript/compiled/',
26+
state: await provider
27+
.main({
28+
config: {
29+
rewritePaths: {
30+
'ts/': 'typescript/',
31+
'compiled/': 'typescript/compiled/',
32+
},
33+
compile: 'tsc',
2334
},
24-
compile: 'tsc',
25-
},
26-
}).compile(),
35+
})
36+
.compile(),
2737
});
2838

29-
test('worker(): load rewritten paths files', withProvider, async (t, provider) => {
30-
const {state} = await compile(provider);
31-
const {stdout, stderr} = await execaNode(
32-
path.join(__dirname, 'fixtures/install-and-load'),
33-
[JSON.stringify({state}), path.join(__dirname, 'fixtures/ts', 'file.ts')],
34-
{cwd: path.join(__dirname, 'fixtures')},
35-
);
36-
if (stderr.length > 0) {
37-
t.log(stderr);
38-
}
39+
test(
40+
'worker(): load rewritten paths files',
41+
withProvider,
42+
async (t, provider) => {
43+
const {state} = await compile(provider);
44+
const {stdout, stderr} = await execaNode(
45+
path.join(__dirname, 'fixtures/install-and-load'),
46+
[
47+
JSON.stringify({state}),
48+
path.join(__dirname, 'fixtures/ts', 'file.ts'),
49+
],
50+
{cwd: path.join(__dirname, 'fixtures')},
51+
);
52+
if (stderr.length > 0) {
53+
t.log(stderr);
54+
}
3955

40-
t.snapshot(stdout);
41-
});
56+
t.snapshot(stdout);
57+
},
58+
);
4259

4360
test('worker(): runs compiled files', withProvider, async (t, provider) => {
4461
const {state} = await compile(provider);
4562
const {stdout, stderr} = await execaNode(
4663
path.join(__dirname, 'fixtures/install-and-load'),
47-
[JSON.stringify({state}), path.join(__dirname, 'fixtures/compiled', 'index.ts')],
64+
[
65+
JSON.stringify({state}),
66+
path.join(__dirname, 'fixtures/compiled', 'index.ts'),
67+
],
4868
{cwd: path.join(__dirname, 'fixtures')},
4969
);
5070
if (stderr.length > 0) {
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
1+
"use strict";
12
console.log('logged in fixtures/load/index.ts');
2-
export {};

test/fixtures/load/tsconfig.json

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
11
{
22
"compilerOptions": {
3-
"strictNullChecks": true,
4-
"module": "node18",
53
"outDir": "compiled"
64
},
75
"include": [

test/fixtures/tsconfig.json

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,8 @@
11
{
22
"compilerOptions": {
3-
"strictNullChecks": true,
4-
"lib": [
5-
"es2022",
6-
"dom"
7-
],
8-
"outDir": "typescript/compiled"
3+
"outDir": "./typescript/compiled",
4+
"rootDir": "./typescript",
5+
"tsBuildInfoFile": "./typescript/compiled/.tsbuildinfo"
96
},
107
"include": [
118
"typescript"

0 commit comments

Comments
 (0)