Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Typescript tsconfig to exclude some source files

I am trying to get Typescript to exclude certain files when compiling. However it doesn't seem to want to exclude them.

Here is my tsconfig.json

{
  "ref": "master",
  "path": "typings",
  "compilerOptions": {
    "module": "amd",
    "target": "es5",
    "declaration": true,
    "sourceMap": true,
    "outDir": "build/src"
  },
  "exclude": [
    "node_modules",
    "typings/global",
    "typings/index.d.ts",
    "./src/subClassA.ts"
  ],
  "files": [
    "./src/entry.ts"
  ]
}

It seems to be excluding the node_modules and typings. However the compiled code, still includes subClassA.

I would have expected the compiled code to not have any of the code from subClassA, however it does.

like image 222
Nicholas Mordecai Avatar asked Apr 21 '17 09:04

Nicholas Mordecai


1 Answers

From the documentation:

Any files that are referenced by files included via the "files" or "include" properties are also included. Similarly, if a file B.ts is referenced by another file A.ts, then B.ts cannot be excluded unless the referencing file A.ts is also specified in the "exclude" list.

If your ./src/entry.ts file or any dependency of ./src/entry.ts uses ./src/subClassA.ts somewhere, then ./src/subClassA.ts cannot be excluded unless ./src/entry.ts is excluded too.

Related discussion: https://github.com/Microsoft/TypeScript/issues/7432

like image 192
Saravana Avatar answered Sep 20 '22 08:09

Saravana