Skip to content

Commit a0260b3

Browse files
authored
Turbopack: ignore empty NEXT_TURBOPACK_TRACING var (#73903)
After #73614, an empty env var also enabled tracing: `NEXT_TURBOPACK_TRACING= next dev` Now that empty env var is ignored entirely. This is useful because it you can easily switch between tracing and non-tracing builds as you don't have to retype the long env var name And apparently, the napi-rs version bump had also caused a different typedef generation that wasn't commited yet
1 parent 3babf7a commit a0260b3

File tree

4 files changed

+36
-32
lines changed

4 files changed

+36
-32
lines changed

crates/napi/src/next_api/project.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -298,7 +298,7 @@ pub async fn project_new(
298298
let trace = std::env::var("NEXT_TURBOPACK_TRACING").ok();
299299
let (exit, exit_receiver) = ExitHandler::new_receiver();
300300

301-
if let Some(mut trace) = trace {
301+
if let Some(mut trace) = trace.filter(|v| !v.is_empty()) {
302302
// Trace presets
303303
match trace.as_str() {
304304
"overview" | "1" => {

crates/next-build-test/src/main.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ fn main() {
8181
.block_on(async {
8282
let trace = std::env::var("NEXT_TURBOPACK_TRACING").ok();
8383

84-
let _guard = if let Some(mut trace) = trace {
84+
let _guard = if let Some(mut trace) = trace.filter(|v| !v.is_empty()) {
8585
// Trace presets
8686
match trace.as_str() {
8787
"overview" | "1" => {

packages/next/src/build/swc/generated-native.d.ts

Lines changed: 33 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -38,18 +38,18 @@ export interface TransformOutput {
3838
map?: string
3939
output?: string
4040
}
41-
export function mdxCompile(
41+
export declare function mdxCompile(
4242
value: string,
4343
option: Buffer,
4444
signal?: AbortSignal | undefined | null
4545
): Promise<unknown>
46-
export function mdxCompileSync(value: string, option: Buffer): string
47-
export function minify(
46+
export declare function mdxCompileSync(value: string, option: Buffer): string
47+
export declare function minify(
4848
input: Buffer,
4949
opts: Buffer,
5050
signal?: AbortSignal | undefined | null
5151
): Promise<TransformOutput>
52-
export function minifySync(input: Buffer, opts: Buffer): TransformOutput
52+
export declare function minifySync(input: Buffer, opts: Buffer): TransformOutput
5353
export interface NapiEndpointConfig {}
5454
export interface NapiServerPath {
5555
path: string
@@ -62,15 +62,15 @@ export interface NapiWrittenEndpoint {
6262
serverPaths: Array<NapiServerPath>
6363
config: NapiEndpointConfig
6464
}
65-
export function endpointWriteToDisk(endpoint: {
65+
export declare function endpointWriteToDisk(endpoint: {
6666
__napiType: 'Endpoint'
6767
}): Promise<TurbopackResult>
68-
export function endpointServerChangedSubscribe(
68+
export declare function endpointServerChangedSubscribe(
6969
endpoint: { __napiType: 'Endpoint' },
7070
issues: boolean,
7171
func: (...args: any[]) => any
7272
): { __napiType: 'RootTask' }
73-
export function endpointClientChangedSubscribe(
73+
export declare function endpointClientChangedSubscribe(
7474
endpoint: { __napiType: 'Endpoint' },
7575
func: (...args: any[]) => any
7676
): { __napiType: 'RootTask' }
@@ -178,15 +178,15 @@ export interface NapiTurboEngineOptions {
178178
/** An upper bound of memory that turbopack will attempt to stay under. */
179179
memoryLimit?: number
180180
}
181-
export function projectNew(
181+
export declare function projectNew(
182182
options: NapiProjectOptions,
183183
turboEngineOptions: NapiTurboEngineOptions
184184
): Promise<{ __napiType: 'Project' }>
185-
export function projectUpdate(
185+
export declare function projectUpdate(
186186
project: { __napiType: 'Project' },
187187
options: NapiPartialProjectOptions
188188
): Promise<void>
189-
export function projectShutdown(project: {
189+
export declare function projectShutdown(project: {
190190
__napiType: 'Project'
191191
}): Promise<void>
192192
export interface AppPageNapiRoute {
@@ -223,19 +223,19 @@ export interface NapiEntrypoints {
223223
pagesAppEndpoint: ExternalObject<ExternalEndpoint>
224224
pagesErrorEndpoint: ExternalObject<ExternalEndpoint>
225225
}
226-
export function projectEntrypointsSubscribe(
226+
export declare function projectEntrypointsSubscribe(
227227
project: { __napiType: 'Project' },
228228
func: (...args: any[]) => any
229229
): { __napiType: 'RootTask' }
230-
export function projectHmrEvents(
230+
export declare function projectHmrEvents(
231231
project: { __napiType: 'Project' },
232232
identifier: string,
233233
func: (...args: any[]) => any
234234
): { __napiType: 'RootTask' }
235235
export interface HmrIdentifiers {
236236
identifiers: Array<string>
237237
}
238-
export function projectHmrIdentifiersSubscribe(
238+
export declare function projectHmrIdentifiersSubscribe(
239239
project: { __napiType: 'Project' },
240240
func: (...args: any[]) => any
241241
): { __napiType: 'RootTask' }
@@ -260,7 +260,7 @@ export interface NapiUpdateInfo {
260260
*
261261
* The signature of the `func` is `(update_message: UpdateMessage) => void`.
262262
*/
263-
export function projectUpdateInfoSubscribe(
263+
export declare function projectUpdateInfoSubscribe(
264264
project: { __napiType: 'Project' },
265265
aggregationMs: number,
266266
func: (...args: any[]) => any
@@ -273,25 +273,29 @@ export interface StackFrame {
273273
column?: number
274274
methodName?: string
275275
}
276-
export function projectTraceSource(
276+
export declare function projectTraceSource(
277277
project: { __napiType: 'Project' },
278278
frame: StackFrame
279279
): Promise<StackFrame | null>
280-
export function projectGetSourceForAsset(
280+
export declare function projectGetSourceForAsset(
281281
project: { __napiType: 'Project' },
282282
filePath: string
283283
): Promise<string | null>
284-
export function projectGetSourceMap(
284+
export declare function projectGetSourceMap(
285285
project: { __napiType: 'Project' },
286286
filePath: string
287287
): Promise<string | null>
288-
export function projectGetSourceMapSync(
288+
export declare function projectGetSourceMapSync(
289289
project: { __napiType: 'Project' },
290290
filePath: string
291291
): string | null
292292
/** Runs exit handlers for the project registered using the [`ExitHandler`] API. */
293-
export function projectOnExit(project: { __napiType: 'Project' }): Promise<void>
294-
export function rootTaskDispose(rootTask: { __napiType: 'RootTask' }): void
293+
export declare function projectOnExit(project: {
294+
__napiType: 'Project'
295+
}): Promise<void>
296+
export declare function rootTaskDispose(rootTask: {
297+
__napiType: 'RootTask'
298+
}): void
295299
export interface NapiIssue {
296300
severity: string
297301
stage: string
@@ -324,24 +328,24 @@ export interface NapiDiagnostic {
324328
name: string
325329
payload: Record<string, string>
326330
}
327-
export function parse(
331+
export declare function parse(
328332
src: string,
329333
options: Buffer,
330334
filename?: string | undefined | null,
331335
signal?: AbortSignal | undefined | null
332336
): Promise<string>
333-
export function transform(
337+
export declare function transform(
334338
src: string | Buffer | undefined,
335339
isModule: boolean,
336340
options: Buffer,
337341
signal?: AbortSignal | undefined | null
338342
): Promise<unknown>
339-
export function transformSync(
343+
export declare function transformSync(
340344
src: string | Buffer | undefined,
341345
isModule: boolean,
342346
options: Buffer
343347
): object
344-
export function startTurbopackTraceServer(path: string): void
348+
export declare function startTurbopackTraceServer(path: string): void
345349
export interface NextBuildContext {
346350
/** The root directory of the workspace. */
347351
root?: string
@@ -374,23 +378,23 @@ export interface NapiRewrite {
374378
has?: Array<NapiRouteHas>
375379
missing?: Array<NapiRouteHas>
376380
}
377-
export function getTargetTriple(): string
378-
export function initHeapProfiler(): ExternalObject<RefCell>
379-
export function teardownHeapProfiler(
381+
export declare function getTargetTriple(): string
382+
export declare function initHeapProfiler(): ExternalObject<RefCell>
383+
export declare function teardownHeapProfiler(
380384
guardExternal: ExternalObject<RefCell>
381385
): void
382386
/**
383387
* Initialize tracing subscriber to emit traces. This configures subscribers
384388
* for Trace Event Format <https://docs.google.com/document/d/1CvAClvFfyA5R-PhYUmn5OOQtYMH4h6I0nSsKchNAySU/preview>.
385389
*/
386-
export function initCustomTraceSubscriber(
390+
export declare function initCustomTraceSubscriber(
387391
traceOutFilePath?: string | undefined | null
388392
): ExternalObject<RefCell>
389393
/**
390394
* Teardown currently running tracing subscriber to flush out remaining traces.
391395
* This should be called when parent node.js process exits, otherwise generated
392396
* trace may drop traces in the buffer.
393397
*/
394-
export function teardownTraceSubscriber(
398+
export declare function teardownTraceSubscriber(
395399
guardExternal: ExternalObject<RefCell>
396400
): void

turbopack/crates/turbopack-cli/src/main.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ async fn main_inner(args: Arguments) -> Result<()> {
3939
let exit_handler = ExitHandler::listen();
4040

4141
let trace = std::env::var("TURBOPACK_TRACING").ok();
42-
if let Some(mut trace) = trace {
42+
if let Some(mut trace) = trace.filter(|v| !v.is_empty()) {
4343
// Trace presets
4444
match trace.as_str() {
4545
"overview" => {

0 commit comments

Comments
 (0)