5

Failed to compile.

/moonholdings.io/node_modules/@types/react-dom/node_modules/@types/react/index.d.ts (2312,14): Duplicate identifier 'LibraryManagedAttributes'.

Not sure why I'm getting this.

I've downgraded my "@types/node" from 10 to 8 and that didn't work. Also tried "@types/node": "^9.6.7"

My Repo: https://github.com/Futuratum/moonholdings.io

My package.json

{
  "name": "moonholdings.io",
  "version": "0.1.0",
  "private": true,
  "scripts": {
    "build-css": "node-sass-chokidar src/ -o src/ --source-map",
    "watch-css": "npm run build-css && node-sass-chokidar src/ -o src/ --watch --recursive --source-map",
    "start": "react-scripts-ts start",
    "build": "react-scripts-ts build",
    "test": "react-scripts-ts test --env=jsdom",
    "eject": "react-scripts-ts eject"
  },
  "dependencies": {
    "@types/react": "^16.4.14",
    "@types/react-redux": "^6.0.9",
    "node-sass-chokidar": "^1.3.3",
    "react": "^16.5.0",
    "react-dom": "^16.5.0",
    "react-redux": "^5.0.7",
    "react-router-dom": "^4.3.1",
    "react-scripts-ts": "2.17.0",
    "redux-thunk": "^2.3.0"
  },
  "devDependencies": {
    "@types/jest": "^23.3.2",
    "@types/node": "^8.10.29",
    "@types/react-dom": "^16.0.7",
    "typescript": "^3.0.3"
  }
}

Here is my tsconfig

    {
  "compilerOptions": {
    "traceResolution": false,
    "strictNullChecks": true,
    "noImplicitAny": true,
    "module": "esnext",
    "target": "es5",
    "lib": [
      "es2015",
      "es2017",
      "es6",
      "es7",
      "es5",
      "dom"
    ],
    "jsx": "react",
    "experimentalDecorators": true,
    "moduleResolution": "node",
    "baseUrl": "./src",
    "noUnusedLocals": true,
    "noUnusedParameters": false,
    "noImplicitAny": false,
    "allowSyntheticDefaultImports": true,
    "importHelpers": true,
    "strictFunctionTypes": false
  },
  "include": [
    "src/**/*",
    "webpack/**/*"
  ],
  "files": [
    "core.ts",
    "sys.ts",
    "types.ts",
    "tsc.ts",
    "registerServiceWorker.ts",
    "src/registerServiceWorker.ts",
    "src/setupTests.ts"
  ],
  "exclude": [
    "typings/browser.d.ts",
    "typings/browser",
    "typings",
    "node_modules",
    "build",
    "scripts",
    "acceptance-tests",
    "webpack",
    "jest"
  ]
}
Community
  • 1
  • 1
Leon Gaban
  • 36,509
  • 115
  • 332
  • 529

3 Answers3

9

You may find that the duplicates are located in node_modules/@types/react and node_modules/types/react-dom/@types/react or a similar set-up, in which one of the packages has a nested dependency on the other.

Uninstalling and reinstalling @types/react-dom and @types/react together is what fixed it for me.

yarn remove @types/react-dom @types/react


yarn add -D @types/react-dom @types/react
Dimitar Nikovski
  • 973
  • 13
  • 15
  • 1
    Thank you so much! Tried so many different tricks form here: https://stackoverflow.com/questions/52399839/duplicate-identifier-librarymanagedattributes but this worked perfectly. – Mayur Dhurpate Apr 11 '20 at 13:23
1

I'm still not sure what caused that bug, however I've checked out a much earlier version of my app, where it was stable. So going to continue work from there.

Here is the working package.json

{
  "name": "moonholdings.io",
  "version": "0.1.0",
  "private": true,
  "scripts": {
    "start": "react-scripts-ts start",
    "build": "react-scripts-ts build",
    "test": "react-scripts-ts test --env=jsdom",
    "eject": "react-scripts-ts eject"
  },
  "dependencies": {
    "@types/jest": "^23.3.1",
    "@types/node": "^10.9.4",
    "@types/react": "^16.4.13",
    "@types/react-dom": "^16.0.7",
    "react": "^16.4.2",
    "react-dom": "^16.4.2",
    "react-ts-with-scss": "2.1.0",
    "typescript": "^3.0.3"
  },
  "devDependencies": {}
}
Leon Gaban
  • 36,509
  • 115
  • 332
  • 529
  • 1
    That didn't solve the problem for me. I would guess if you delete your `node_modules` folder and do a fresh `yarn install` and `yarn build` the error will reappear. I found another workaround: https://stackoverflow.com/questions/52399839/typescript-duplicate-identifier-librarymanagedattributes – Spenhouet Sep 19 '18 at 13:14
  • Why did you accept your own answer? Its not a real solution. – Eduard Jacko Dec 13 '18 at 22:20
0

I had the same error. I upgraded @types/react and @types/react-dom to their latest versions in package.json and it fixed my error.

dumazy
  • 13,857
  • 12
  • 66
  • 113
  • is it not because typescript code is only for development. Once it is transpiled for deployment it is javascript so types are no longer neccessary? Are types not always menat to be dev deps – Joey Gough Feb 04 '21 at 09:59
  • 1
    types should only be in your devDeps – shallow.alchemy Mar 05 '22 at 17:10
  • Thanks @shallow.alchemy to clarify this. It makes sense, I guess, since types don't matter at runtime anymore. I'll keep an eye out for this if I'll pick up TS again – dumazy Mar 06 '22 at 08:39