Skip to content

Commit

Permalink
Update typescript setup, take 2 (#1554)
Browse files Browse the repository at this point in the history
  • Loading branch information
sndrs authored Jun 18, 2024
1 parent 9ecd710 commit 490384d
Show file tree
Hide file tree
Showing 54 changed files with 2,435 additions and 774 deletions.
8 changes: 8 additions & 0 deletions .changeset/serious-bulldogs-unite.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
---
'@guardian/source-development-kitchen': major
'@guardian/source': major
---

Now has a peer dependency of `@emotion/react@^11.11.3` (from `^11.11.1`).

Fixes conflicting types between Emotion's deps, as outlined in https://github.com/emotion-js/emotion/pull/3141.
1 change: 1 addition & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ jobs:
matrix:
include:
- task: formatting:check
- task: tsc
- task: lint
- task: test
- task: e2e
Expand Down
78 changes: 74 additions & 4 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -52,27 +52,33 @@ verify-dist: env

# checks all projects for lint errors
.PHONY: lint
lint: install
lint: env
$(call log,"Linting projects")
@corepack pnpm -r lint
@node ./tools/scripts/check-packages-for-tslib.mjs

# check repo for formatting errors
.PHONY: formatting\:check
formatting\:check: install
formatting\:check: env
$(call log,"Checking formatting across repo")
@corepack pnpm prettier --ignore-unknown --cache --check .

# attemps to fix lint errors across all projects
.PHONY: fix
fix: install
fix: env
$(call log,"Attempting to fix issues across all projects")
@corepack pnpm -r fix
@corepack pnpm prettier --ignore-unknown --cache --write .

# type-checking all projects
.PHONY: tsc
tsc: env
$(call log,"Checking types across all projects")
@corepack pnpm -r tsc

# makes sure absolutely everything is working
.PHONY: validate
validate: env lint test e2e build verify-dist build-storybook
validate: env tsc lint test e2e build verify-dist build-storybook

##################################### BUILD ####################################

Expand Down Expand Up @@ -163,6 +169,10 @@ install: check-node-version
@guardian/ab-core\:test: env
@corepack pnpm --filter @guardian/ab-core test

.PHONY: @guardian/ab-core\:tsc
@guardian/ab-core\:tsc: env
@corepack pnpm --filter @guardian/ab-core tsc

.PHONY: @guardian/ab-core\:verify-dist
@guardian/ab-core\:verify-dist: env
@corepack pnpm --filter @guardian/ab-core verify-dist
Expand All @@ -187,6 +197,10 @@ install: check-node-version
@guardian/ab-react\:test: env
@corepack pnpm --filter @guardian/ab-react test

.PHONY: @guardian/ab-react\:tsc
@guardian/ab-react\:tsc: env
@corepack pnpm --filter @guardian/ab-react tsc

.PHONY: @guardian/ab-react\:verify-dist
@guardian/ab-react\:verify-dist: env
@corepack pnpm --filter @guardian/ab-react verify-dist
Expand All @@ -199,6 +213,10 @@ install: check-node-version
@guardian/browserslist-config\:lint: env
@corepack pnpm --filter @guardian/browserslist-config lint

.PHONY: @guardian/browserslist-config\:tsc
@guardian/browserslist-config\:tsc: env
@corepack pnpm --filter @guardian/browserslist-config tsc

.PHONY: @guardian/browserslist-config\:update-readme
@guardian/browserslist-config\:update-readme: env
@corepack pnpm --filter @guardian/browserslist-config update-readme
Expand All @@ -211,6 +229,10 @@ install: check-node-version
@guardian/cobalt-plugin-ts\:lint: env
@corepack pnpm --filter @guardian/cobalt-plugin-ts lint

.PHONY: @guardian/cobalt-plugin-ts\:tsc
@guardian/cobalt-plugin-ts\:tsc: env
@corepack pnpm --filter @guardian/cobalt-plugin-ts tsc

.PHONY: @guardian/core-web-vitals\:build
@guardian/core-web-vitals\:build: env
@corepack pnpm --filter @guardian/core-web-vitals build
Expand All @@ -231,6 +253,10 @@ install: check-node-version
@guardian/core-web-vitals\:test: env
@corepack pnpm --filter @guardian/core-web-vitals test

.PHONY: @guardian/core-web-vitals\:tsc
@guardian/core-web-vitals\:tsc: env
@corepack pnpm --filter @guardian/core-web-vitals tsc

.PHONY: @guardian/core-web-vitals\:verify-dist
@guardian/core-web-vitals\:verify-dist: env
@corepack pnpm --filter @guardian/core-web-vitals verify-dist
Expand All @@ -247,6 +273,10 @@ install: check-node-version
@guardian/design-tokens\:lint: env
@corepack pnpm --filter @guardian/design-tokens lint

.PHONY: @guardian/design-tokens\:tsc
@guardian/design-tokens\:tsc: env
@corepack pnpm --filter @guardian/design-tokens tsc

.PHONY: @guardian/eslint-config\:fix
@guardian/eslint-config\:fix: env
@corepack pnpm --filter @guardian/eslint-config fix
Expand All @@ -255,6 +285,10 @@ install: check-node-version
@guardian/eslint-config\:lint: env
@corepack pnpm --filter @guardian/eslint-config lint

.PHONY: @guardian/eslint-config\:tsc
@guardian/eslint-config\:tsc: env
@corepack pnpm --filter @guardian/eslint-config tsc

.PHONY: @guardian/eslint-config-typescript\:fix
@guardian/eslint-config-typescript\:fix: env
@corepack pnpm --filter @guardian/eslint-config-typescript fix
Expand All @@ -263,6 +297,10 @@ install: check-node-version
@guardian/eslint-config-typescript\:lint: env
@corepack pnpm --filter @guardian/eslint-config-typescript lint

.PHONY: @guardian/eslint-config-typescript\:tsc
@guardian/eslint-config-typescript\:tsc: env
@corepack pnpm --filter @guardian/eslint-config-typescript tsc

.PHONY: @guardian/identity-auth\:build
@guardian/identity-auth\:build: env
@corepack pnpm --filter @guardian/identity-auth build
Expand All @@ -283,6 +321,10 @@ install: check-node-version
@guardian/identity-auth\:test: env
@corepack pnpm --filter @guardian/identity-auth test

.PHONY: @guardian/identity-auth\:tsc
@guardian/identity-auth\:tsc: env
@corepack pnpm --filter @guardian/identity-auth tsc

.PHONY: @guardian/identity-auth\:verify-dist
@guardian/identity-auth\:verify-dist: env
@corepack pnpm --filter @guardian/identity-auth verify-dist
Expand All @@ -307,6 +349,10 @@ install: check-node-version
@guardian/identity-auth-frontend\:test: env
@corepack pnpm --filter @guardian/identity-auth-frontend test

.PHONY: @guardian/identity-auth-frontend\:tsc
@guardian/identity-auth-frontend\:tsc: env
@corepack pnpm --filter @guardian/identity-auth-frontend tsc

.PHONY: @guardian/identity-auth-frontend\:verify-dist
@guardian/identity-auth-frontend\:verify-dist: env
@corepack pnpm --filter @guardian/identity-auth-frontend verify-dist
Expand Down Expand Up @@ -339,6 +385,10 @@ install: check-node-version
@guardian/libs\:test: env
@corepack pnpm --filter @guardian/libs test

.PHONY: @guardian/libs\:tsc
@guardian/libs\:tsc: env
@corepack pnpm --filter @guardian/libs tsc

.PHONY: @guardian/libs\:verify-dist
@guardian/libs\:verify-dist: env
@corepack pnpm --filter @guardian/libs verify-dist
Expand All @@ -359,6 +409,10 @@ install: check-node-version
@guardian/newsletter-types\:lint: env
@corepack pnpm --filter @guardian/newsletter-types lint

.PHONY: @guardian/newsletter-types\:tsc
@guardian/newsletter-types\:tsc: env
@corepack pnpm --filter @guardian/newsletter-types tsc

.PHONY: @guardian/prettier\:fix
@guardian/prettier\:fix: env
@corepack pnpm --filter @guardian/prettier fix
Expand All @@ -367,6 +421,10 @@ install: check-node-version
@guardian/prettier\:lint: env
@corepack pnpm --filter @guardian/prettier lint

.PHONY: @guardian/prettier\:tsc
@guardian/prettier\:tsc: env
@corepack pnpm --filter @guardian/prettier tsc

.PHONY: @guardian/source\:build
@guardian/source\:build: env
@corepack pnpm --filter @guardian/source build
Expand Down Expand Up @@ -403,6 +461,10 @@ install: check-node-version
@guardian/source\:test: env
@corepack pnpm --filter @guardian/source test

.PHONY: @guardian/source\:tsc
@guardian/source\:tsc: env
@corepack pnpm --filter @guardian/source tsc

.PHONY: @guardian/source\:verify-dist
@guardian/source\:verify-dist: env
@corepack pnpm --filter @guardian/source verify-dist
Expand Down Expand Up @@ -435,6 +497,10 @@ install: check-node-version
@guardian/source-development-kitchen\:test: env
@corepack pnpm --filter @guardian/source-development-kitchen test

.PHONY: @guardian/source-development-kitchen\:tsc
@guardian/source-development-kitchen\:tsc: env
@corepack pnpm --filter @guardian/source-development-kitchen tsc

.PHONY: @guardian/source-development-kitchen\:verify-dist
@guardian/source-development-kitchen\:verify-dist: env
@corepack pnpm --filter @guardian/source-development-kitchen verify-dist
Expand All @@ -451,6 +517,10 @@ github-pages\:dev: env
github-pages\:start: env
@corepack pnpm --filter github-pages start

.PHONY: github-pages\:tsc
github-pages\:tsc: env
@corepack pnpm --filter github-pages tsc

.PHONY: storybooks\:dev
storybooks\:dev: env
@corepack pnpm --filter storybooks dev
Expand Down
15 changes: 14 additions & 1 deletion apps/github-pages/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,8 @@
"scripts": {
"build": "wireit",
"dev": "wireit",
"start": "wireit"
"start": "wireit",
"tsc": "wireit"
},
"devDependencies": {
"@astrojs/check": "0.7.0",
Expand Down Expand Up @@ -54,6 +55,18 @@
"files": [
"dist/**"
]
},
"tsc": {
"command": "tsc --pretty",
"files": [
"src/**/*",
"tsconfig.json",
"../../libs/@guardian/tsconfig/tsconfig.json",
"../../@types/**",
"../../tsconfig.base.json",
"!(dist)/**"
],
"output": []
}
}
}
2 changes: 1 addition & 1 deletion apps/storybooks/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
"dev": "wireit"
},
"devDependencies": {
"storybook": "8.0.5",
"storybook": "8.1.8",
"wireit": "0.14.4"
},
"wireit": {
Expand Down
7 changes: 1 addition & 6 deletions configs/jest.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -5,12 +5,7 @@ export const config = {
testPathIgnorePatterns: ['/node_modules/', '/.wireit/'],
transformIgnorePatterns: ['node_modules/.pnpm/(?!@guardian)'],
transform: {
'^.+\\.[tj]sx?$': [
'ts-jest',
{
tsconfig: '<rootDir>/tsconfig.spec.json',
},
],
'^.+\\.[tj]sx?$': ['ts-jest'],
},
coveragePathIgnorePatterns: ['/__generated__/'],
};
20 changes: 10 additions & 10 deletions configs/storybook/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -10,17 +10,17 @@
"@babel/preset-react": "7.24.1",
"@babel/preset-typescript": "7.24.1",
"@emotion/babel-plugin": "11.11.0",
"@emotion/react": "11.11.1",
"@emotion/react": "11.11.3",
"@guardian/source": "workspace:*",
"@storybook/addon-a11y": "8.0.5",
"@storybook/addon-docs": "8.0.5",
"@storybook/addon-essentials": "8.0.5",
"@storybook/addon-links": "8.0.5",
"@storybook/addon-viewport": "8.0.5",
"@storybook/manager-api": "8.0.5",
"@storybook/react": "8.0.5",
"@storybook/react-webpack5": "8.0.5",
"@storybook/theming": "8.0.5",
"@storybook/addon-a11y": "8.1.8",
"@storybook/addon-docs": "8.1.8",
"@storybook/addon-essentials": "8.1.8",
"@storybook/addon-links": "8.1.8",
"@storybook/addon-viewport": "8.1.8",
"@storybook/manager-api": "8.1.8",
"@storybook/react": "8.1.8",
"@storybook/react-webpack5": "8.1.8",
"@storybook/theming": "8.1.8",
"@types/babel__core": "7.20.5",
"@types/react": "18.2.11",
"babel-loader": "9.1.3",
Expand Down
2 changes: 1 addition & 1 deletion docs/source/storybook.md
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ export default {
title: 'Source/src-my-component/MyComponent',
component: MyComponent,
argTypes: {
id: { control: null },
id: { control: { disable: true } },
},
args: {
label: 'Label',
Expand Down
14 changes: 14 additions & 0 deletions libs/@guardian/ab-core/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@
"fix": "wireit",
"lint": "wireit",
"test": "wireit",
"tsc": "wireit",
"verify-dist": "wireit"
},
"devDependencies": {
Expand Down Expand Up @@ -93,6 +94,19 @@
],
"output": []
},
"tsc": {
"command": "tsc --pretty",
"files": [
"**",
"tsconfig.json",
"../tsconfig/tsconfig.json",
"../../../@types/**",
"../../../tsconfig.base.json",
"!(dist)/**",
"!.eslintcache"
],
"output": []
},
"verify-dist": {
"command": "jest --setupFilesAfterEnv ./jest.dist.setup.js",
"dependencies": [
Expand Down
10 changes: 2 additions & 8 deletions libs/@guardian/ab-core/tsconfig.json
Original file line number Diff line number Diff line change
@@ -1,11 +1,5 @@
{
"extends": "../../../tsconfig.base.json",
"files": ["../../../@types/window.d.ts"],
"include": ["."],
"exclude": ["node_modules", "dist", ".wireit"],
"references": [
{
"path": "./tsconfig.spec.json"
}
]
"include": ["**/*"],
"exclude": ["node_modules", "dist", ".wireit", "jest.dist.setup.js"]
}
21 changes: 0 additions & 21 deletions libs/@guardian/ab-core/tsconfig.spec.json

This file was deleted.

Loading

0 comments on commit 490384d

Please sign in to comment.