Commit 3413fb3
authored
refactor: Detach tsconfigs for Jest from the build (#3301)
This pull request refactors TypeScript configuration across several
packages to simplify project structure and build scripts. It removes
redundant or legacy `tsconfig.node.json` and related files, consolidates
configuration into main `tsconfig.json` files, and updates references
and build scripts accordingly. The changes aim to reduce duplication,
streamline TypeScript project references, and make the build and test
processes more maintainable.
> [!NOTE]
>
> In essence, this PR
> - Simplifies `build` – `tsc -b` across the board.
> - Simplifies `check` – `tsc -p tsconfig.jest.json`
> - Drops the Eslint-driven requirement of test files being in
package-level `tsconfig.json` files.
> 💡 `test/` dirs have their own `tsconfig.json` files that satisfy
eslint's project service resolver.
> - Renames `tsconfig.node.json` to `tsconfig.json` making it the main
entrypoint of each package.
> - Drop `references` field from `tsconfig.jest.json` files as these
produce a lot of unnecessary noise and we don't "build" through these.
> - Make the root `tsconfig.jest.json` disable emitting properly – we
\*don't* reference jest tsconfigs anymore!
> 💡 Although tsc does not complain, previously this behaviour was
against the rules of `composite` tsconfig setup – makes it hard to
predict what the outcome is (will it emit, or it won't?).
>
> It also covers a lot of what the following PRs offer:
> - #3271
> - #3272
> - #3273
> - #3274
> - #3275
> - #3276
> - #3277
### Changes
**TypeScript configuration consolidation:**
* Removed `tsconfig.node.json` and related files from multiple packages
(`autocertifier-server`, `cdn-location`, `cli-tools`), consolidating
configuration into main `tsconfig.json` files and updating their
`extends`, `include`, and `references` fields for clarity and
maintainability.
[[1]](diffhunk://#diff-b8ca01c11975250ba2d1cf703ecb4dfb3a3197b14d1e0fb1c92cab47c0f393efL1-L16)
[[2]](diffhunk://#diff-829757d9b00ea7fbff093ee2e216391cd3edcd5f46ddf05bde89e75eae6bfe83L1-L12)
[[3]](diffhunk://#diff-4e2d6360af04c468b2d5b2f6616a8ddd0c008d6f25cb3173a8b741cd15ec77d3L1-L18)
[[4]](diffhunk://#diff-4f7db719f0663c85b00b0dbfb67cd08b73003012b9de614802b30a1490546861L1-L9)
[[5]](diffhunk://#diff-6911c66f995472db595934d34bed8bb3b9d4f5f4e8dcef1329a16d498928e684L2-R14)
[[6]](diffhunk://#diff-6348cef142feb7833264b39ad43d4ef7281cf1ac9530f0ac807d3e6a547c9795L2-R10)
[[7]](diffhunk://#diff-38daa775ecafcf440e7c2b9817052481019197dfba8e0bbb482e7ce5efe0cfafL2-R16)
[[8]](diffhunk://#diff-ae13578e8d026eec67d6b00c439076ab2fc27081e16cb0744b996b414ec28a98L12-R12)
* Updated `tsconfig.jest.json` files to directly include relevant
source, test, and config files, and removed obsolete project references.
[[1]](diffhunk://#diff-08758b3945f3c6bf5569734c2c5d0528c21904deef2ca70414543e91107e6af9R4-L7)
[[2]](diffhunk://#diff-7b3ee0dcec62b1726878a419c615b3645198209626245d78f996ea5bb2a9ea31R4-L8)
[[3]](diffhunk://#diff-198e2b7b2035fa308d0d3c58fddc55ee01229e98c40f7c40ac11cffb40092f83L8-L14)
**Build and check script simplification:**
* Simplified `check` and `build` scripts in `package.json` files to use
the consolidated TypeScript configs, removing redundant or chained
TypeScript invocations.
[[1]](diffhunk://#diff-50299ff04a4b7e150c72c86a7d621a7a799aa89849e4885c6ac0887af7da9629L22-R22)
[[2]](diffhunk://#diff-650e71c74d8235428c25ec35eb19d1ab8daa27dc303d7564f493507a8c011b26L28-R28)
[[3]](diffhunk://#diff-2595495f28a036656bd9466e08f5fe32af851fb9bd3465eef7b2c202cd6ff83dL21-R21)
[[4]](diffhunk://#diff-48deceddbbe98a41ff1d0f560db132548031fbd96d790c09ffeed924a20e8a05L27-R29)
* Updated shell scripts and build commands to no longer rely on removed
config files.
**Test configuration improvements:**
* Added dedicated `test/tsconfig.json` files in several packages to
ensure test files are properly included and configured for TypeScript
and Jest.
[[1]](diffhunk://#diff-99570814e8a6d99b92ce03d11db23716ed24927bbc40da26f16424cb9135917cR1-R6)
[[2]](diffhunk://#diff-d33492e918ed4916dd23554eb003330d2983698030d26bbf2667c472e2bb0166R1-R6)
Overall, these changes make the TypeScript setup across packages more
consistent, easier to understand, and less error-prone.1 parent 728d1e6 commit 3413fb3
File tree
63 files changed
+227
-297
lines changed- packages
- autocertifier-client
- autocertifier-server
- test
- cdn-location
- data-generation
- test
- cli-tools
- test
- dht
- scripts
- test
- geoip-location
- test
- node
- test
- proto-rpc
- test
- sdk
- bin
- test
- test-utils
- test
- trackerless-network
- test
- utils
- test
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
63 files changed
+227
-297
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
9 | 9 | | |
10 | 10 | | |
11 | 11 | | |
12 | | - | |
| 12 | + | |
13 | 13 | | |
14 | 14 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
25 | 25 | | |
26 | 26 | | |
27 | 27 | | |
28 | | - | |
| 28 | + | |
29 | 29 | | |
30 | 30 | | |
31 | 31 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | 3 | | |
| 4 | + | |
| 5 | + | |
4 | 6 | | |
5 | | - | |
6 | | - | |
7 | | - | |
8 | 7 | | |
9 | 8 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | | - | |
| 2 | + | |
3 | 3 | | |
4 | | - | |
| 4 | + | |
5 | 5 | | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
6 | 10 | | |
7 | | - | |
8 | | - | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
9 | 15 | | |
10 | 16 | | |
This file was deleted.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
19 | 19 | | |
20 | 20 | | |
21 | 21 | | |
22 | | - | |
| 22 | + | |
23 | 23 | | |
24 | 24 | | |
25 | 25 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
This file was deleted.
0 commit comments