Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

'TypeError: Converting circular structure to JSON' in a Lerna workspace with CRA and Typescript

I have a Lerna Workspace with some packages and a webapp created with create-react-app using TypeScript.

When I try to add node-sass (needed for customizing ag-grid library themes, which I'm using in this project), I get the following error which I can't figure why it's happening:

TypeError: Converting circular structure to JSON
    --> starting at object with constructor 'SourceFileObject'
    |     property 'statements' -> object with constructor 'Array'
    |     index 0 -> object with constructor 'NodeObject'
    --- property 'parent' closes the circle
    at JSON.stringify (<anonymous>)
    at getBuildInfoText (path/to/project/packages/front/node_modules/typescript/lib/typescript.js:107932:21)
    at emitBuildInfo (path/to/project/packages/front/node_modules/typescript/lib/typescript.js:107709:67)
    at emitSourceFileOrBundle (path/to/project/packages/front/node_modules/typescript/lib/typescript.js:107674:13)
    at forEachEmittedFile (path/to/project/packages/front/node_modules/typescript/lib/typescript.js:107416:28)
    at Object.emitFiles (path/to/project/packages/front/node_modules/typescript/lib/typescript.js:107648:9)
    at Object.emitBuildInfo (path/to/project/packages/front/node_modules/typescript/lib/typescript.js:114560:33)
    at emitTsBuildInfoFileForBuilderProgram (path/to/project/packages/front/node_modules/fork-ts-checker-webpack-plugin/lib/typescript-reporter/reporter/TypeScriptReporter.js:86:25)
    at path/to/project/packages/front/node_modules/fork-ts-checker-webpack-plugin/lib/typescript-reporter/reporter/TypeScriptReporter.js:295:37
    at Object.afterProgramCreate (path/to/project/packages/front/node_modules/fork-ts-checker-webpack-plugin/lib/typescript-reporter/reporter/ControlledWatchCompilerHost.js:15:17)

Due to it being a private project, I can't provide a snippet with the code.

Thanks in advance for any clue on how to solve a problem like this.

like image 619
epresas Avatar asked Sep 07 '25 02:09

epresas


1 Answers

I encountered this issue while upgrading a project to React 18.1.0. In my case, upgrading Typescript to version 4.6.4 (the latest version at the time of writing) fixed it.

(I noticed the error message was coming from typescript-reporter, which was the clue I needed to upgrade Typescript.)

like image 189
Olly Hodgson Avatar answered Sep 08 '25 22:09

Olly Hodgson