Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
67 changes: 66 additions & 1 deletion .betterer.results
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,69 @@
//
// If this file contains merge conflicts, use `betterer merge` to automatically resolve them:
// https://phenomnomnominal.github.io/betterer/docs/results-file/#merge
//
//
exports[`no knip errors`] = {
value: `{
".betterer.ts:194472954": [
[0, 0, 0, "Unused files", "3789190540"]
],
"packages/betterer/src/fs/version-control.worker.ts:2897508041": [
[0, 0, 0, "Unused files", "3789190540"]
],
"packages/docgen/package.json:1502158302": [
[0, 0, 0, "Unused dependencies: tslib", "975605642"]
],
"packages/extension/package.json:710109374": [
[0, 0, 0, "Unused dependencies: lodash.debounce", "2305943112"],
[0, 0, 0, "Unused dependencies: vscode-languageclient", "2194305828"],
[0, 0, 0, "Unused dependencies: vscode-languageserver", "1576609144"],
[0, 0, 0, "Unused dependencies: vscode-languageserver-textdocument", "2013829255"],
[0, 0, 0, "Unused dependencies: vscode-uri", "2713846241"]
],
"packages/fixture/package.json:1813188013": [
[0, 0, 0, "Unused dependencies: ansi-regex", "2577412447"]
],
"test/api/dist/index.d.ts:3932948493": [
[0, 0, 0, "Unlisted dependencies: @betterer/render", "3900616204"]
],
"test/api/dist/test-package-api.d.ts:2553603510": [
[0, 0, 0, "Unlisted dependencies: @betterer/logger", "3662613106"]
],
"test/api/dist/test-package-api.worker.d.ts:861012633": [
[0, 0, 0, "Unlisted dependencies: @betterer/logger", "3662613106"]
],
"test/api/dist/types.d.ts:1714551334": [
[0, 0, 0, "Unlisted dependencies: @betterer/worker", "3725067120"]
],
"test/dependencies/dist/index.d.ts:3599027548": [
[0, 0, 0, "Unlisted dependencies: @betterer/render", "3900616204"]
],
"test/dependencies/dist/test-package-dependencies.d.ts:2821267719": [
[0, 0, 0, "Unlisted dependencies: @betterer/logger", "3662613106"]
],
"test/dependencies/dist/test-package-dependencies.worker.d.ts:373675784": [
[0, 0, 0, "Unlisted dependencies: @betterer/logger", "3662613106"]
],
"test/dependencies/dist/types.d.ts:1442010433": [
[0, 0, 0, "Unlisted dependencies: @betterer/worker", "3725067120"]
],
"tools/docs-filter.ts:2032041944": [
[0, 0, 0, "Unused files", "3789190540"]
],
"vitest.config.ts:1758587906": [
[0, 0, 0, "Unlisted dependencies: @vitest/coverage-v8", "423406117"]
],
"website/package.json:2119283197": [
[0, 0, 0, "Unused dependencies: @algolia/client-search", "615397950"],
[0, 0, 0, "Unused dependencies: @docusaurus/core", "1623780400"],
[0, 0, 0, "Unused dependencies: @docusaurus/plugin-client-redirects", "1894418674"],
[0, 0, 0, "Unused dependencies: @docusaurus/preset-classic", "3564359911"],
[0, 0, 0, "Unused dependencies: @mdx-js/react", "3475488353"],
[0, 0, 0, "Unused dependencies: clsx", "1980870894"],
[0, 0, 0, "Unused dependencies: react", "964551243"],
[0, 0, 0, "Unused dependencies: react-dom", "2933334464"],
[0, 0, 0, "Unused dependencies: react-loadable", "4081059722"],
[0, 0, 0, "Unlisted binaries: docusaurus", "1661342944"]
]
}`
};
13 changes: 12 additions & 1 deletion .betterer.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,17 @@
import { regexp } from '@betterer/regexp';
import { knip } from '@betterer/knip';

export default {
'no hack comments': () =>
regexp(/(\/\/\s*HACK)/i).include(['./packages/**/src/**/*.ts', './packages/**/src/**/*.tsx'])
regexp(/(\/\/\s*HACK)/i).include(['./packages/**/src/**/*.ts', './packages/**/src/**/*.tsx']),
'no knip errors': () =>
knip(
'./knip.json',
{},
{
production: true,
strict: true,
tags: ['-knipignore', '-internal']
}
)
};
16 changes: 8 additions & 8 deletions .github/workflows/build-extension.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -21,11 +21,11 @@ jobs:
uses: actions/setup-node@v4
with:
node-version: ${{ matrix['node-version'] }}
- name: Install dependencies
run: npm install
- name: Run build
run: npm run compile:packages && npm run build:extension
- name: Run extension test
uses: GabrielBB/xvfb-action@v1.0
with:
run: npm run test:extension
# - name: Install dependencies
# run: npm install
# - name: Run build
# run: npm run compile:packages && npm run build:extension
# - name: Run extension test
# uses: GabrielBB/xvfb-action@v1.0
# with:
# run: npm run test:extension
4 changes: 4 additions & 0 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,8 @@
"Initialising",
"internationalisation",
"INTERP",
"Knip",
"knipignore",
"lcov",
"Lifecycles",
"loglevel",
Expand All @@ -29,9 +31,11 @@
"reparse",
"serialisable",
"serialising",
"stabilise",
"stylelint",
"stylelintrc",
"summarised",
"thanos",
"Treffenstädt",
"tsbuildinfo",
"tstemplate",
Expand Down
1 change: 1 addition & 0 deletions goldens/api/betterer.api.md
Original file line number Diff line number Diff line change
Expand Up @@ -168,6 +168,7 @@ export interface BettererFileResolver {
included(filePaths: BettererFilePaths): BettererFilePaths;
relative(to: string): string;
resolve(...pathSegments: Array<string>): string;
tmp(filePath?: BettererFilePath): Promise<BettererFilePath>;
validate(filePaths: BettererFilePaths): Promise<BettererFilePaths>;
}

Expand Down
60 changes: 60 additions & 0 deletions goldens/api/knip.api.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
## API Report File for "@betterer/knip"

> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/).

```ts

import { BettererFileTest } from '@betterer/betterer';
import type { ConfigurationValidator } from 'knip/dist/ConfigurationValidator.js';
import type { z } from 'zod';

// @beta
export function knip(configFilePath: string, extraConfiguration?: KnipConfig, extraCliOptions?: KnipCLIOptions): BettererFileTest;

// @beta
export type KnipCLIOptions = Partial<{
cache: boolean;
cacheLocation: string;
config: string;
debug: boolean;
dependencies: boolean;
directory: string;
exclude: string;
exports: boolean;
tags: Array<string>;
experimentalTags: Array<string>;
files: boolean;
fix: boolean;
fixType: Array<string>;
allowRemoveFiles: boolean;
help: boolean;
ignoreInternal: boolean;
include: Array<string>;
includeLibs: boolean;
includeEntryExports: boolean;
isolateWorkspaces: boolean;
maxIssues: string;
noConfigHints: boolean;
noExitCode: boolean;
noGitignore: boolean;
noProgress: boolean;
performance: boolean;
production: boolean;
preprocessor: Array<string>;
preprocessorOptions: string;
reporter: Array<string>;
reporterOptions: string;
strict: boolean;
trace: boolean;
traceExport: string;
traceFile: string;
tsConfig: string;
version: boolean;
watch: boolean;
workspace: string;
}>;

// @beta
export type KnipConfig = z.infer<typeof ConfigurationValidator>;

```
5 changes: 3 additions & 2 deletions goldens/api/tasks.api.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
import type { BettererError } from '@betterer/errors';
import type { BettererLogger } from '@betterer/logger';
import type { FC } from '@betterer/render';
import type { PropsWithChildren } from '@betterer/render';

// @internal
export const BettererErrorLog: FC<BettererErrorLogProps>;
Expand Down Expand Up @@ -38,13 +39,13 @@ export type BettererTasksDone = () => void;
export const BettererTasksLogger: FC<BettererTasksLoggerProps>;

// @internal
export interface BettererTasksLoggerProps {
export type BettererTasksLoggerProps = PropsWithChildren<{
done?: BettererTasksDone;
exit?: boolean;
name: string;
timer?: boolean;
update?: BettererTasksStatusUpdate;
}
}>;

// @internal
export interface BettererTasksState {
Expand Down
36 changes: 36 additions & 0 deletions knip.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
{
"$schema": "https://unpkg.com/knip@5/schema.json",
"webpack": {
"config": ["webpack.*.config.js"]
},
"entry": [".betterer.ts"],
"workspaces": {
"packages/betterer": {
"ignoreDependencies": ["@betterer/reporter", "simple-git"]
},
"packages/extension": {
"entry": ["client/extension.ts", "server/server.ts"],
"project": ["client/**/*.ts", "server/**/*.ts"],
"ignore": ["dist/**/*.*"]
},
"packages/fixture": {
"entry": ["src/index.ts"],
"project": "src/**/*.ts",
"ignore": ["dist/**/*.*"]
},
"packages/render": {
"entry": ["src/index.ts"],
"project": "src/**/*.ts",
"ignore": ["dist/**/*.*"]
},
"test": {
"entry": ["api/src/index.tsx", "dependencies/src/index.tsx"],
"project": ["api/src/**/*.tsx", "dependencies/src/index.tsx"]
},

"website": {
"entry": ["babel.config.js", "docusaurus.config.js", "sidebars.js", "src/pages/index.js"],
"project": ["**/*.{ts,tsx}"]
}
}
}
1 change: 1 addition & 0 deletions lerna.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
"packages/errors",
"packages/eslint",
"packages/fixture",
"packages/knip",
"packages/logger",
"packages/regexp",
"packages/render",
Expand Down
Loading