-
Notifications
You must be signed in to change notification settings - Fork 71
Expand file tree
/
Copy pathknip.js
More file actions
79 lines (79 loc) · 2.98 KB
/
Copy pathknip.js
File metadata and controls
79 lines (79 loc) · 2.98 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
/** @type {import('knip').KnipConfig} */
export default {
ignore: [
// Generated test services and shared test utilities (generated, exports used by multiple packages)
'test-packages/test-services-e2e/**',
'test-packages/test-services-odata-v2/**',
'test-packages/test-services-odata-v4/**',
'test-packages/test-services-openapi/**',
'test-packages/test-services-odata-common/**',
// Test resources (deliberately faulty/standalone files)
'test-resources/**',
// Knowledge base
'knowledge-base/**',
// Memory tests use canary/pinned deps outside workspace management
'test-packages/memory-tests/**',
// Memory tests workflow references binary from canary workspace
'.github/workflows/memory-tests.yml'
],
workspaces: {
// Root workspace — several devDeps are hoisted for sub-packages, not used directly in root source
'.': {
entry: ['scripts/**/*.ts'],
ignoreDependencies: [
'@typescript/native',
'axios',
'glob',
'semver',
'typedoc',
'unionfs'
]
},
// eslint-config exports JS configs consumed via require(), not TS imports;
// parser/prettier deps referenced as strings in config objects
'packages/eslint-config': {
entry: ['flat-config.js'],
ignoreDependencies: [
'@typescript-eslint/parser',
'eslint-config-prettier',
'eslint-plugin-prettier'
]
},
// generator treats odata-v2/v4 as optional peer deps, not direct imports
'packages/generator': {
ignoreDependencies: ['@sap-cloud-sdk/odata-v2', '@sap-cloud-sdk/odata-v4']
},
// openapi-generator treats openapi as optional peer dep
'packages/openapi-generator': {
ignoreDependencies: ['@sap-cloud-sdk/openapi']
},
// type-tests: .test-d.ts and .ts files are entry points for tsd;
// moment used as ambient type without import statement
'test-packages/type-tests': {
entry: ['test/**/*.ts', 'test/**/*.test-d.ts'],
ignoreDependencies: ['moment']
},
// self-tests: tsd is invoked by the test runner, not imported
'test-packages/self-tests': {
entry: ['madge-test/**/*.ts'],
ignoreDependencies: ['tsd']
},
// e2e-tests: cap-js/sqlite loaded dynamically by CDS at runtime;
// odata-v2 and bignumber.js used only in generated test output (not in entry patterns)
'test-packages/e2e-tests': {
entry: ['test/**/*.ts', 'srv/**/*.js', 'test/proxy/**/*.js'],
ignoreDependencies: ['@cap-js/sqlite', '@sap-cloud-sdk/odata-v2', 'bignumber.js']
},
// integration-tests: test-util-internal is used at runtime via jest setup;
// throw-exception-with-logger-script.ts is invoked as a subprocess, not imported
'test-packages/integration-tests': {
ignoreDependencies: ['@sap-cloud-sdk/test-util-internal'],
ignore: [
'test/throw-exception-with-logger-script.mjs'
]
},
'build-packages/check-public-api': {
ignoreDependencies: ['memfs']
}
}
};