-
-
Notifications
You must be signed in to change notification settings - Fork 7
Expand file tree
/
Copy pathcommitlint.config.js
More file actions
66 lines (66 loc) · 1.96 KB
/
Copy pathcommitlint.config.js
File metadata and controls
66 lines (66 loc) · 1.96 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
export default {
extends: ['@commitlint/config-angular'],
rules: {
// Types allowed (Angular-style)
'type-enum': [
2,
'always',
[
'build', // Changes to build system or dependencies
'ci', // CI configuration changes
'docs', // Documentation only changes
'feat', // A new feature
'fix', // A bug fix
'perf', // Performance improvement
'refactor', // Code change that neither fixes a bug nor adds a feature
'test', // Adding or correcting tests
'chore', // Other changes that don't modify src or test files
'revert', // Reverts a previous commit
'style', // Code style changes (formatting, semicolons, etc.)
],
],
// Scopes for ng-forge packages
'scope-enum': [
2,
'always',
[
// Core packages
'core',
'forms',
'dynamic-forms',
// UI integrations
'material',
'bootstrap',
'primeng',
'ionic',
// MCP server
'mcp',
// OpenAPI generator
'openapi-generator',
// Validation CLI
'cli',
// Apps
'docs',
'examples',
// Infrastructure
'release',
'deps',
'config',
// Allow empty scope for general changes
'',
],
],
'scope-empty': [0], // Allow empty scope
// Disable strict lowercase to allow proper nouns (function names, class names, etc.)
'subject-case': [0],
'subject-empty': [2, 'never'],
'subject-full-stop': [2, 'never', '.'],
'header-max-length': [2, 'always', 100],
'body-leading-blank': [2, 'always'],
'footer-leading-blank': [2, 'always'],
// Allow the Conventional Commits breaking-change marker (e.g. `feat!: ...`).
// The Angular preset disables this in favor of a `BREAKING CHANGE:` footer;
// we enable both so PR titles can flag breaking changes inline.
'subject-exclamation-mark': [0],
},
};