File tree 2 files changed +11
-2
lines changed
2 files changed +11
-2
lines changed Original file line number Diff line number Diff line change @@ -15,6 +15,11 @@ const resolveContext = (
15
15
throw new Error ( 'The current file path (__filename or import.meta.url) must be provided in the second argument of tsx.require()' ) ;
16
16
}
17
17
18
+ // If id is not a relative path, it doesn't need to be resolved
19
+ if ( ! id . startsWith ( '.' ) ) {
20
+ return id ;
21
+ }
22
+
18
23
if (
19
24
( typeof fromFile === 'string' && fromFile . startsWith ( 'file://' ) )
20
25
|| fromFile instanceof URL
@@ -86,7 +91,7 @@ export const register: Register = (
86
91
const [ request , query ] = resolvedId . split ( '?' ) ;
87
92
88
93
const parameters = new URLSearchParams ( query ) ;
89
- if ( options . namespace ) {
94
+ if ( options . namespace && ! request . startsWith ( 'node:' ) ) {
90
95
parameters . set ( 'namespace' , options . namespace ) ;
91
96
}
92
97
@@ -100,7 +105,7 @@ export const register: Register = (
100
105
const [ request , query ] = resolvedId . split ( '?' ) ;
101
106
102
107
const parameters = new URLSearchParams ( query ) ;
103
- if ( options . namespace ) {
108
+ if ( options . namespace && ! request . startsWith ( 'node:' ) ) {
104
109
parameters . set ( 'namespace' , options . namespace ) ;
105
110
}
106
111
Original file line number Diff line number Diff line change @@ -230,6 +230,10 @@ export default testSuite(({ describe }, node: NodeApis) => {
230
230
const loaded = tsx.require('./file', __filename);
231
231
console.log(loaded.message);
232
232
233
+ // Can require core modules
234
+ tsx.require('node:path', __filename);
235
+ tsx.require('fs', __filename);
236
+
233
237
// Remove from cache
234
238
const loadedPath = tsx.require.resolve('./file', __filename);
235
239
console.log(loadedPath.split(path.sep).pop());
You can’t perform that action at this time.
0 commit comments