Skip to content

Commit 6df11a9

Browse files
alan-agius4profanis
authored andcommitted
docs: remove solution style tsconfig (angular#38394)
Following the issues highlighted in https://docs.google.com/document/d/1eB6cGCG_2ircfS5GzpDC9dBgikeYYcMxghVH5sDESHw/edit?usp=sharing and discussions held with the TypeScript team. Together with the TypeScript team it was decided that the best course of action is to rollback this feature. In future, it is not excluded that solution style tsconfigs are re-introduced. See: angular/angular-cli#18478 PR Close angular#38394
1 parent db1bec7 commit 6df11a9

9 files changed

+10
-98
lines changed

aio/content/guide/angular-compiler-options.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ For example:
3131

3232
```json
3333
{
34-
"extends": "../tsconfig.base.json",
34+
"extends": "../tsconfig.json",
3535
"compilerOptions": {
3636
"experimentalDecorators": true,
3737
...

aio/content/guide/file-structure.md

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -40,8 +40,7 @@ The top level of the workspace contains workspace-wide configuration files, conf
4040
| `package-lock.json` | Provides version information for all packages installed into `node_modules` by the npm client. See [npm documentation](https://docs.npmjs.com/files/package-lock.json) for details. If you use the yarn client, this file will be [yarn.lock](https://yarnpkg.com/lang/en/docs/yarn-lock/) instead. |
4141
| `src/` | Source files for the root-level application project. |
4242
| `node_modules/` | Provides [npm packages](guide/npm-packages) to the entire workspace. Workspace-wide `node_modules` dependencies are visible to all projects. |
43-
| `tsconfig.json` | The `tsconfig.json` file is a ["Solution Style"](https://www.typescriptlang.org/docs/handbook/release-notes/typescript-3-9.html#support-for-solution-style-tsconfigjson-files) TypeScript configuration file. Code editors and TypeScript’s language server use this file to improve development experience. Compilers do not use this file. |
44-
| `tsconfig.base.json` | The base [TypeScript](https://www.typescriptlang.org/) configuration for projects in the workspace. All other configuration files inherit from this base file. For more information, see the [Configuration inheritance with extends](https://www.typescriptlang.org/docs/handbook/tsconfig-json.html#configuration-inheritance-with-extends) section of the TypeScript documentation.|
43+
| `tsconfig.json` | The base [TypeScript](https://www.typescriptlang.org/) configuration for projects in the workspace. All other configuration files inherit from this base file. For more information, see the [Configuration inheritance with extends](https://www.typescriptlang.org/docs/handbook/tsconfig-json.html#configuration-inheritance-with-extends) section of the TypeScript documentation.|
4544
| `tslint.json` | Default [TSLint](https://palantir.github.io/tslint/) configuration for projects in the workspace. |
4645

4746

@@ -103,7 +102,7 @@ Angular components, templates, and styles go here.
103102
The application-specific configuration files for the root application reside at the workspace root level.
104103
For a multi-project workspace, project-specific configuration files are in the project root, under `projects/project-name/`.
105104

106-
Project-specific [TypeScript](https://www.typescriptlang.org/) configuration files inherit from the workspace-wide `tsconfig.base.json`, and project-specific [TSLint](https://palantir.github.io/tslint/) configuration files inherit from the workspace-wide `tslint.json`.
105+
Project-specific [TypeScript](https://www.typescriptlang.org/) configuration files inherit from the workspace-wide `tsconfig.json`, and project-specific [TSLint](https://palantir.github.io/tslint/) configuration files inherit from the workspace-wide `tslint.json`.
107106

108107
| APPLICATION-SPECIFIC CONFIG FILES | PURPOSE |
109108
| :--------------------- | :------------------------------------------|

aio/content/guide/ivy-compatibility.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,11 +11,11 @@ That said, some applications will likely need to apply some manual updates.
1111
In version 10, [a few deprecated APIs have been removed](guide/updating-to-version-10#removals) and there are a [few breaking changes](guide/updating-to-version-10#breaking-changes) unrelated to Ivy.
1212
If you're seeing errors after updating to version 9, you'll first want to rule those changes out.
1313

14-
To do so, temporarily [turn off Ivy](guide/ivy#opting-out-of-angular-ivy) in your `tsconfig.base.json` and re-start your app.
14+
To do so, temporarily [turn off Ivy](guide/ivy#opting-out-of-angular-ivy) in your `tsconfig.json` and re-start your app.
1515

1616
If you're still seeing the errors, they are not specific to Ivy. In this case, you may want to consult the [general version 10 guide](guide/updating-to-version-10). If you've opted into any of the new, stricter type-checking settings, you may also want to check out the [template type-checking guide](guide/template-typecheck).
1717

18-
If the errors are gone, switch back to Ivy by removing the changes to the `tsconfig.base.json` and review the list of expected changes below.
18+
If the errors are gone, switch back to Ivy by removing the changes to the `tsconfig.json` and review the list of expected changes below.
1919

2020
{@a payload-size-debugging}
2121
### Payload size debugging

aio/content/guide/migration-solution-style-tsconfig.md

Lines changed: 0 additions & 55 deletions
This file was deleted.

aio/content/guide/migration-update-module-and-target-compiler-options.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ This process helps ensure that intentional changes to the options are kept in pl
99

1010
TypeScript Configuration File(s) | Changed Property | Existing Value | New Value
1111
------------- | ------------- | ------------- | ------------- | -------------
12-
`<workspace base>/tsconfig.base.json` | `"module"` | `"esnext"` | `"es2020"`
12+
`<workspace base>/tsconfig.json` | `"module"` | `"esnext"` | `"es2020"`
1313
Used in `browser` builder options (`ng build` for applications) | `"module"` | `"esnext"` | `"es2020"`
1414
Used in `ng-packgr` builder options (`ng build` for libraries) | `"module"` | `"esnext"` | `"es2020"`
1515
Used in `karma` builder options (`ng test` for applications) | `"module"` | `"esnext"` | `"es2020"`

aio/content/guide/typescript-configuration.md

Lines changed: 3 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -18,32 +18,7 @@ that are important to Angular developers, including details about the following
1818
## Configuration files
1919

2020
A given Angular workspace contains several TypeScript configuration files.
21-
At the root level, there are two main TypeScript configuration files: a `tsconfig.json` file and a `tsconfig.base.json` file.
22-
23-
The `tsconfig.json` file is a ["Solution Style"](https://www.typescriptlang.org/docs/handbook/release-notes/typescript-3-9.html#support-for-solution-style-tsconfigjson-files) TypeScript configuration file.
24-
Code editors and TypeScript’s language server use this file to improve development experience.
25-
Compilers do not use this file.
26-
27-
The `tsconfig.json` file contains a list of paths to the other TypeScript configuration files used in the workspace.
28-
29-
<code-example lang="json" header="tsconfig.json" linenums="false">
30-
{
31-
"files": [],
32-
"references": [
33-
{
34-
"path": "./tsconfig.app.json"
35-
},
36-
{
37-
"path": "./tsconfig.spec.json"
38-
},
39-
{
40-
"path": "./projects/my-lib/tsconfig.lib.json"
41-
}
42-
]
43-
}
44-
</code-example>
45-
46-
The `tsconfig.base.json` file specifies the base TypeScript and Angular compiler options that all projects in the workspace inherit.
21+
At the root `tsconfig.json` file specifies the base TypeScript and Angular compiler options that all projects in the workspace inherit.
4722

4823
The TypeScript and Angular have a wide range of options which can be used to configure type-checking features and generated output.
4924
For more information, see the [Configuration inheritance with extends](https://www.typescriptlang.org/docs/handbook/tsconfig-json.html#configuration-inheritance-with-extends) section of the TypeScript documentation.
@@ -55,9 +30,9 @@ For details about configuration inheritance, see the [Configuration inheritance
5530

5631
</div>
5732

58-
The initial `tsconfig.base.json` for an Angular workspace typically looks like the following example.
33+
The initial `tsconfig.json` for an Angular workspace typically looks like the following example.
5934

60-
<code-example lang="json" header="tsconfig.base.json" linenums="false">
35+
<code-example lang="json" header="tsconfig.json" linenums="false">
6136
{
6237
"compileOnSave": false,
6338
"compilerOptions": {

aio/content/guide/universal.md

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -48,8 +48,7 @@ src/
4848
app/ ... <i>application code</i>
4949
app.server.module.ts <i>* server-side application module</i>
5050
server.ts <i>* express web server</i>
51-
tsconfig.json <i>TypeScript solution style configuration</i>
52-
tsconfig.base.json <i>TypeScript base configuration</i>
51+
tsconfig.json <i>TypeScript base configuration</i>
5352
tsconfig.app.json <i>TypeScript browser application configuration</i>
5453
tsconfig.server.json <i>TypeScript server application configuration</i>
5554
tsconfig.spec.json <i>TypeScript tests configuration</i>

aio/content/guide/updating-to-version-10.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,5 @@ Read about the migrations the CLI handles for you automatically:
7777

7878
* [Migrating missing `@Directive()`/`@Component()` decorators](guide/migration-undecorated-classes)
7979
* [Migrating `ModuleWithProviders`](guide/migration-module-with-providers)
80-
* [Solution-style `tsconfig.json` migration](guide/migration-solution-style-tsconfig)
8180
* [`tslib` direct dependency migration](guide/migration-update-libraries-tslib)
8281
* [Update `module` and `target` compiler options migration](guide/migration-update-module-and-target-compiler-options)

aio/content/navigation.json

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -858,11 +858,6 @@
858858
"title": "Missing @Injectable() Decorators",
859859
"tooltip": "Migration to add missing @Injectable() decorators and incomplete provider definitions."
860860
},
861-
{
862-
"url": "guide/migration-solution-style-tsconfig",
863-
"title": "Solution-style `tsconfig.json`",
864-
"tooltip": "Migration to create a solution-style `tsconfig.json`."
865-
},
866861
{
867862
"url": "guide/migration-update-libraries-tslib",
868863
"title": "`tslib` direct dependency",

0 commit comments

Comments
 (0)