@ankhorage/renovate 0.1.2 → 0.1.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +12 -0
- package/README.md +4 -2
- package/default.json +31 -2
- package/dist/default.test.js +71 -1
- package/dist/default.test.js.map +1 -1
- package/examples/renovate.json5 +3 -1
- package/package.json +7 -8
- package/paradox/badges/npm.svg +3 -3
- package/paradox/index.html +10 -6
- package/paradox/paradox.json +22 -7
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# @ankhorage/renovate
|
|
2
2
|
|
|
3
|
+
## 0.1.4
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- a798ac9: Bootstrap consumers from the legacy Changeset-only workflow pin to the released automatic Devtools synchronization workflow.
|
|
8
|
+
|
|
9
|
+
## 0.1.3
|
|
10
|
+
|
|
11
|
+
### Patch Changes
|
|
12
|
+
|
|
13
|
+
- 7d4a510: Recreate split Ankhorage library and Devtools toolchain updates on distinct clean Renovate branches.
|
|
14
|
+
|
|
3
15
|
## 0.1.2
|
|
4
16
|
|
|
5
17
|
### Patch Changes
|
package/README.md
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
|
|
4
4
|
# @ankhorage/renovate
|
|
5
5
|
|
|
6
|
-
         
|
|
7
7
|
|
|
8
8
|
Ankhorage dependency update policy and automation powered by Renovate.
|
|
9
9
|
|
|
@@ -37,7 +37,9 @@ packages and canonical workflows out of independent Renovate updates, and groups
|
|
|
37
37
|
@ankhorage/ankh and @ankhorage/devtools releases for the trusted automatic synchronization
|
|
38
38
|
workflow. The workflow runs the exact lock-selected Devtools provider with either the consumer's
|
|
39
39
|
lock-selected Ankh CLI or its own exact canonical CLI pin, requires byte stability, and commits
|
|
40
|
-
the complete managed result without a manual repository sync.
|
|
40
|
+
the complete managed result without a manual repository sync. The shared preset also performs a
|
|
41
|
+
one-time migration of the legacy immutable workflow pin to the released synchronization
|
|
42
|
+
implementation; all other canonical workflow changes remain owned by Devtools sync.
|
|
41
43
|
|
|
42
44
|
Source: `examples/renovate.json5`
|
|
43
45
|
|
package/default.json
CHANGED
|
@@ -4,6 +4,20 @@
|
|
|
4
4
|
"extends": ["config:recommended", ":dependencyDashboard"],
|
|
5
5
|
"gitIgnoredAuthors": ["41898282+github-actions[bot]@users.noreply.github.com"],
|
|
6
6
|
"labels": ["dependencies"],
|
|
7
|
+
"customManagers": [
|
|
8
|
+
{
|
|
9
|
+
"customType": "regex",
|
|
10
|
+
"description": "Bootstrap the legacy consumer workflow to the released synchronization implementation.",
|
|
11
|
+
"managerFilePatterns": ["/^\\.github\\/workflows\\/renovate\\.yml$/"],
|
|
12
|
+
"matchStrings": [
|
|
13
|
+
"uses:\\s+ankhorage/renovate/\\.github/workflows/changeset\\.yml@(?<currentDigest>b7305e8f17f9b07238f6b827bbc9f866fd498a0f)"
|
|
14
|
+
],
|
|
15
|
+
"currentValueTemplate": "main",
|
|
16
|
+
"depNameTemplate": "ankhorage/renovate",
|
|
17
|
+
"datasourceTemplate": "github-digest",
|
|
18
|
+
"autoReplaceStringTemplate": "uses: ankhorage/renovate/.github/workflows/changeset.yml@{{{newDigest}}}"
|
|
19
|
+
}
|
|
20
|
+
],
|
|
7
21
|
"packageRules": [
|
|
8
22
|
{
|
|
9
23
|
"description": "Disable dependency updates unless a later Ankhorage rule explicitly enables them.",
|
|
@@ -11,11 +25,12 @@
|
|
|
11
25
|
"enabled": false
|
|
12
26
|
},
|
|
13
27
|
{
|
|
14
|
-
"description": "Group Ankhorage
|
|
28
|
+
"description": "Group Ankhorage library updates and propagate every release downstream.",
|
|
15
29
|
"matchDatasources": ["npm"],
|
|
16
30
|
"matchPackageNames": ["@ankhorage/**"],
|
|
17
31
|
"enabled": true,
|
|
18
|
-
"groupName": "Ankhorage
|
|
32
|
+
"groupName": "Ankhorage libraries",
|
|
33
|
+
"groupSlug": "ankhorage-libraries",
|
|
19
34
|
"rangeStrategy": "bump",
|
|
20
35
|
"automerge": true,
|
|
21
36
|
"automergeType": "pr",
|
|
@@ -27,6 +42,7 @@
|
|
|
27
42
|
"matchPackageNames": ["@ankhorage/ankh", "@ankhorage/devtools"],
|
|
28
43
|
"enabled": true,
|
|
29
44
|
"groupName": "Ankhorage CLI and Devtools toolchain",
|
|
45
|
+
"groupSlug": "ankhorage-cli-and-devtools-toolchain",
|
|
30
46
|
"rangeStrategy": "bump",
|
|
31
47
|
"automerge": true,
|
|
32
48
|
"automergeType": "pr",
|
|
@@ -48,6 +64,19 @@
|
|
|
48
64
|
".github/workflows/release.yml"
|
|
49
65
|
],
|
|
50
66
|
"enabled": false
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
"description": "Bootstrap the released Renovate synchronization workflow exactly once.",
|
|
70
|
+
"matchDatasources": ["github-digest"],
|
|
71
|
+
"matchManagers": ["custom.regex"],
|
|
72
|
+
"matchPackageNames": ["ankhorage/renovate"],
|
|
73
|
+
"matchFileNames": [".github/workflows/renovate.yml"],
|
|
74
|
+
"enabled": true,
|
|
75
|
+
"groupName": "Ankhorage Renovate workflow bootstrap",
|
|
76
|
+
"groupSlug": "ankhorage-renovate-workflow-bootstrap",
|
|
77
|
+
"automerge": true,
|
|
78
|
+
"automergeType": "pr",
|
|
79
|
+
"platformAutomerge": false
|
|
51
80
|
}
|
|
52
81
|
]
|
|
53
82
|
}
|
package/dist/default.test.js
CHANGED
|
@@ -19,7 +19,8 @@ describe('consumer preset', () => {
|
|
|
19
19
|
expect(resolveRules(consumerPreset.packageRules, dependency('@ankhorage/contracts'))).toMatchObject({
|
|
20
20
|
automerge: true,
|
|
21
21
|
enabled: true,
|
|
22
|
-
groupName: 'Ankhorage
|
|
22
|
+
groupName: 'Ankhorage libraries',
|
|
23
|
+
groupSlug: 'ankhorage-libraries',
|
|
23
24
|
rangeStrategy: 'bump',
|
|
24
25
|
});
|
|
25
26
|
});
|
|
@@ -30,12 +31,74 @@ describe('consumer preset', () => {
|
|
|
30
31
|
automergeType: 'pr',
|
|
31
32
|
enabled: true,
|
|
32
33
|
groupName: 'Ankhorage CLI and Devtools toolchain',
|
|
34
|
+
groupSlug: 'ankhorage-cli-and-devtools-toolchain',
|
|
33
35
|
platformAutomerge: false,
|
|
34
36
|
rangeStrategy: 'bump',
|
|
35
37
|
});
|
|
36
38
|
}
|
|
37
39
|
});
|
|
38
40
|
});
|
|
41
|
+
describe('consumer policy migration', () => {
|
|
42
|
+
test('replaces the closed pre-split group with distinct clean branch identities', () => {
|
|
43
|
+
const closedPreSplitBranch = 'renovate/ankhorage-packages';
|
|
44
|
+
const replacementBranches = [
|
|
45
|
+
branchName(resolveRules(consumerPreset.packageRules, dependency('@ankhorage/paradox'))),
|
|
46
|
+
branchName(resolveRules(consumerPreset.packageRules, dependency('@ankhorage/devtools'))),
|
|
47
|
+
];
|
|
48
|
+
expect(replacementBranches).toEqual([
|
|
49
|
+
'renovate/ankhorage-libraries',
|
|
50
|
+
'renovate/ankhorage-cli-and-devtools-toolchain',
|
|
51
|
+
]);
|
|
52
|
+
expect(replacementBranches).not.toContain(closedPreSplitBranch);
|
|
53
|
+
expect(new Set(replacementBranches).size).toBe(replacementBranches.length);
|
|
54
|
+
});
|
|
55
|
+
});
|
|
56
|
+
describe('consumer workflow bootstrap', () => {
|
|
57
|
+
test('bootstraps only the legacy immutable consumer workflow pin', () => {
|
|
58
|
+
const [bootstrapManager] = consumerPreset.customManagers ?? [];
|
|
59
|
+
expect(bootstrapManager).toMatchObject({
|
|
60
|
+
autoReplaceStringTemplate: 'uses: ankhorage/renovate/.github/workflows/changeset.yml@{{{newDigest}}}',
|
|
61
|
+
currentValueTemplate: 'main',
|
|
62
|
+
customType: 'regex',
|
|
63
|
+
datasourceTemplate: 'github-digest',
|
|
64
|
+
depNameTemplate: 'ankhorage/renovate',
|
|
65
|
+
managerFilePatterns: ['/^\\.github\\/workflows\\/renovate\\.yml$/'],
|
|
66
|
+
});
|
|
67
|
+
const [matchString] = bootstrapManager?.matchStrings ?? [];
|
|
68
|
+
expect(matchString).toBeDefined();
|
|
69
|
+
const legacyWorkflow = 'uses: ankhorage/renovate/.github/workflows/changeset.yml@' +
|
|
70
|
+
'b7305e8f17f9b07238f6b827bbc9f866fd498a0f';
|
|
71
|
+
const releasedWorkflow = 'uses: ankhorage/renovate/.github/workflows/changeset.yml@' +
|
|
72
|
+
'7d4a5104b94e763ca5be34919f4fcfbb12efd526';
|
|
73
|
+
const matcher = new RegExp(matchString ?? '');
|
|
74
|
+
expect(matcher.test(legacyWorkflow)).toBe(true);
|
|
75
|
+
expect(matcher.test(releasedWorkflow)).toBe(false);
|
|
76
|
+
expect(matcher.test('uses: actions/checkout@b7305e8f17f9b07238f6b827bbc9f866fd498a0f')).toBe(false);
|
|
77
|
+
});
|
|
78
|
+
});
|
|
79
|
+
describe('consumer workflow bootstrap permissions', () => {
|
|
80
|
+
test('enables only the one-time workflow bootstrap dependency', () => {
|
|
81
|
+
expect(resolveRules(consumerPreset.packageRules, dependency('ankhorage/renovate', {
|
|
82
|
+
datasource: 'github-digest',
|
|
83
|
+
fileName: '.github/workflows/renovate.yml',
|
|
84
|
+
manager: 'custom.regex',
|
|
85
|
+
updateType: 'digest',
|
|
86
|
+
}))).toMatchObject({
|
|
87
|
+
automerge: true,
|
|
88
|
+
automergeType: 'pr',
|
|
89
|
+
enabled: true,
|
|
90
|
+
groupName: 'Ankhorage Renovate workflow bootstrap',
|
|
91
|
+
groupSlug: 'ankhorage-renovate-workflow-bootstrap',
|
|
92
|
+
platformAutomerge: false,
|
|
93
|
+
});
|
|
94
|
+
expect(resolveRules(consumerPreset.packageRules, dependency('ankhorage/renovate', {
|
|
95
|
+
datasource: 'github-digest',
|
|
96
|
+
fileName: '.github/workflows/renovate.yml',
|
|
97
|
+
manager: 'github-actions',
|
|
98
|
+
updateType: 'digest',
|
|
99
|
+
}))).toEqual({ enabled: false });
|
|
100
|
+
});
|
|
101
|
+
});
|
|
39
102
|
describe('consumer toolchain safeguards', () => {
|
|
40
103
|
test('requires review for major CLI and provider upgrades', () => {
|
|
41
104
|
expect(resolveRules(consumerPreset.packageRules, dependency('@ankhorage/devtools', { updateType: 'major' }))).toMatchObject({
|
|
@@ -104,6 +167,12 @@ function dependency(packageName, overrides = {}) {
|
|
|
104
167
|
...overrides,
|
|
105
168
|
};
|
|
106
169
|
}
|
|
170
|
+
function branchName(rule) {
|
|
171
|
+
if (typeof rule.groupSlug !== 'string') {
|
|
172
|
+
throw new Error('Grouped policy rules must declare a stable branch identity.');
|
|
173
|
+
}
|
|
174
|
+
return 'renovate/' + rule.groupSlug;
|
|
175
|
+
}
|
|
107
176
|
function matchesRule(rule, candidate) {
|
|
108
177
|
return (matches(rule.matchDatasources, candidate.datasource) &&
|
|
109
178
|
matches(rule.matchFileNames, candidate.fileName) &&
|
|
@@ -130,6 +199,7 @@ function resolveRules(rules, candidate) {
|
|
|
130
199
|
...(rule.automergeType === undefined ? {} : { automergeType: rule.automergeType }),
|
|
131
200
|
...(rule.enabled === undefined ? {} : { enabled: rule.enabled }),
|
|
132
201
|
...(rule.groupName === undefined ? {} : { groupName: rule.groupName }),
|
|
202
|
+
...(rule.groupSlug === undefined ? {} : { groupSlug: rule.groupSlug }),
|
|
133
203
|
...(rule.platformAutomerge === undefined
|
|
134
204
|
? {}
|
|
135
205
|
: { platformAutomerge: rule.platformAutomerge }),
|
package/dist/default.test.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"default.test.js","sourceRoot":"","sources":["../src/default.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"default.test.js","sourceRoot":"","sources":["../src/default.test.ts"],"names":[],"mappings":"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"}
|
package/examples/renovate.json5
CHANGED
|
@@ -6,7 +6,9 @@
|
|
|
6
6
|
* @ankhorage/ankh and @ankhorage/devtools releases for the trusted automatic synchronization
|
|
7
7
|
* workflow. The workflow runs the exact lock-selected Devtools provider with either the consumer's
|
|
8
8
|
* lock-selected Ankh CLI or its own exact canonical CLI pin, requires byte stability, and commits
|
|
9
|
-
* the complete managed result without a manual repository sync.
|
|
9
|
+
* the complete managed result without a manual repository sync. The shared preset also performs a
|
|
10
|
+
* one-time migration of the legacy immutable workflow pin to the released synchronization
|
|
11
|
+
* implementation; all other canonical workflow changes remain owned by Devtools sync.
|
|
10
12
|
*
|
|
11
13
|
* @usage
|
|
12
14
|
* @readme
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ankhorage/renovate",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.4",
|
|
4
4
|
"description": "Ankhorage dependency update policy and automation powered by Renovate.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
@@ -47,12 +47,12 @@
|
|
|
47
47
|
},
|
|
48
48
|
"scripts": {
|
|
49
49
|
"build": "rm -rf dist tsconfig.tsbuildinfo && bun x tsc -p tsconfig.json",
|
|
50
|
-
"changeset": "changeset",
|
|
51
|
-
"changeset:status": "changeset status --since=origin/main",
|
|
50
|
+
"changeset": "ankhorage-changeset",
|
|
51
|
+
"changeset:status": "ankhorage-changeset status --since=origin/main",
|
|
52
52
|
"docs": "paradox",
|
|
53
53
|
"test": "bun test src && RENOVATE_X_IGNORE_RE2=true renovate-config-validator default.json devtools-owner.json",
|
|
54
54
|
"typecheck": "bun x tsc --noEmit -p tsconfig.json",
|
|
55
|
-
"version-packages": "changeset version",
|
|
55
|
+
"version-packages": "ankhorage-changeset version",
|
|
56
56
|
"lint": "ankhorage-eslint . --max-warnings=0",
|
|
57
57
|
"lint:fix": "ankhorage-eslint . --fix --max-warnings=0",
|
|
58
58
|
"format": "ankhorage-prettier --write .",
|
|
@@ -60,13 +60,12 @@
|
|
|
60
60
|
"knip:check": "ankhorage-knip"
|
|
61
61
|
},
|
|
62
62
|
"devDependencies": {
|
|
63
|
-
"@ankhorage/devtools": "^1.
|
|
63
|
+
"@ankhorage/devtools": "^1.8.0",
|
|
64
64
|
"@ankhorage/paradox": "^0.1.24",
|
|
65
|
-
"@
|
|
66
|
-
"@types/bun": "^1.3.14",
|
|
65
|
+
"@types/bun": "^1.4.0",
|
|
67
66
|
"@types/node": "^24.13.3",
|
|
68
67
|
"renovate": "^44.43.1",
|
|
69
68
|
"typescript": "~6.0.3"
|
|
70
69
|
},
|
|
71
|
-
"packageManager": "bun@1.
|
|
70
|
+
"packageManager": "bun@1.4.0"
|
|
72
71
|
}
|
package/paradox/badges/npm.svg
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
<svg xmlns="http://www.w3.org/2000/svg" width="90" height="20" role="img" aria-label="npm: v0.1.
|
|
2
|
-
<title>npm: v0.1.
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="90" height="20" role="img" aria-label="npm: v0.1.3">
|
|
2
|
+
<title>npm: v0.1.3</title>
|
|
3
3
|
<rect width="38" height="20" fill="#374151"/>
|
|
4
4
|
<rect x="38" width="52" height="20" fill="#cb3837"/>
|
|
5
5
|
<text x="19" y="14" fill="#ffffff" font-family="Verdana,Geneva,DejaVu Sans,sans-serif" font-size="11" text-anchor="middle">npm</text>
|
|
6
|
-
<text x="64" y="14" fill="#ffffff" font-family="Verdana,Geneva,DejaVu Sans,sans-serif" font-size="11" text-anchor="middle">v0.1.
|
|
6
|
+
<text x="64" y="14" fill="#ffffff" font-family="Verdana,Geneva,DejaVu Sans,sans-serif" font-size="11" text-anchor="middle">v0.1.3</text>
|
|
7
7
|
</svg>
|
package/paradox/index.html
CHANGED
|
@@ -134,7 +134,7 @@
|
|
|
134
134
|
</li><li>
|
|
135
135
|
<button class="nav-button" type="button" data-target="src/default.test.ts">
|
|
136
136
|
src/default.test.ts
|
|
137
|
-
<small>
|
|
137
|
+
<small>6 functions</small>
|
|
138
138
|
</button>
|
|
139
139
|
</li>
|
|
140
140
|
</ul>
|
|
@@ -278,23 +278,27 @@
|
|
|
278
278
|
<h2>src/default.test.ts</h2>
|
|
279
279
|
<article class="item" data-search="dependency src/default.test.ts ">
|
|
280
280
|
<h3>dependency</h3>
|
|
281
|
-
<p class="muted"><code>src/default.test.ts:
|
|
281
|
+
<p class="muted"><code>src/default.test.ts:253:1</code></p>
|
|
282
|
+
<p class="empty">No description available.</p>
|
|
283
|
+
</article><article class="item" data-search="branchName src/default.test.ts ">
|
|
284
|
+
<h3>branchName</h3>
|
|
285
|
+
<p class="muted"><code>src/default.test.ts:264:1</code></p>
|
|
282
286
|
<p class="empty">No description available.</p>
|
|
283
287
|
</article><article class="item" data-search="matchesRule src/default.test.ts ">
|
|
284
288
|
<h3>matchesRule</h3>
|
|
285
|
-
<p class="muted"><code>src/default.test.ts:
|
|
289
|
+
<p class="muted"><code>src/default.test.ts:271:1</code></p>
|
|
286
290
|
<p class="empty">No description available.</p>
|
|
287
291
|
</article><article class="item" data-search="matches src/default.test.ts ">
|
|
288
292
|
<h3>matches</h3>
|
|
289
|
-
<p class="muted"><code>src/default.test.ts:
|
|
293
|
+
<p class="muted"><code>src/default.test.ts:281:1</code></p>
|
|
290
294
|
<p class="empty">No description available.</p>
|
|
291
295
|
</article><article class="item" data-search="readPreset src/default.test.ts ">
|
|
292
296
|
<h3>readPreset</h3>
|
|
293
|
-
<p class="muted"><code>src/default.test.ts:
|
|
297
|
+
<p class="muted"><code>src/default.test.ts:291:1</code></p>
|
|
294
298
|
<p class="empty">No description available.</p>
|
|
295
299
|
</article><article class="item" data-search="resolveRules src/default.test.ts ">
|
|
296
300
|
<h3>resolveRules</h3>
|
|
297
|
-
<p class="muted"><code>src/default.test.ts:
|
|
301
|
+
<p class="muted"><code>src/default.test.ts:295:1</code></p>
|
|
298
302
|
<p class="empty">No description available.</p>
|
|
299
303
|
</article>
|
|
300
304
|
</section>
|
package/paradox/paradox.json
CHANGED
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
{
|
|
15
15
|
"id": "npm",
|
|
16
16
|
"label": "npm",
|
|
17
|
-
"value": "v0.1.
|
|
17
|
+
"value": "v0.1.3",
|
|
18
18
|
"color": "cb3837"
|
|
19
19
|
},
|
|
20
20
|
{
|
|
@@ -72,7 +72,7 @@
|
|
|
72
72
|
},
|
|
73
73
|
{
|
|
74
74
|
"title": "Repository configuration",
|
|
75
|
-
"description": "Repository configuration\n\nLoads the normal consumer policy from its default branch. The policy keeps Devtools-owned\npackages and canonical workflows out of independent Renovate updates, and groups compatible\n@ankhorage/ankh and @ankhorage/devtools releases for the trusted automatic synchronization\nworkflow. The workflow runs the exact lock-selected Devtools provider with either the consumer's\nlock-selected Ankh CLI or its own exact canonical CLI pin, requires byte stability, and commits\nthe complete managed result without a manual repository sync.",
|
|
75
|
+
"description": "Repository configuration\n\nLoads the normal consumer policy from its default branch. The policy keeps Devtools-owned\npackages and canonical workflows out of independent Renovate updates, and groups compatible\n@ankhorage/ankh and @ankhorage/devtools releases for the trusted automatic synchronization\nworkflow. The workflow runs the exact lock-selected Devtools provider with either the consumer's\nlock-selected Ankh CLI or its own exact canonical CLI pin, requires byte stability, and commits\nthe complete managed result without a manual repository sync. The shared preset also performs a\none-time migration of the legacy immutable workflow pin to the released synchronization\nimplementation; all other canonical workflow changes remain owned by Devtools sync.",
|
|
76
76
|
"language": "",
|
|
77
77
|
"code": "{\n $schema: 'https://docs.renovatebot.com/renovate-schema.json',\n extends: ['github>ankhorage/renovate'],\n}",
|
|
78
78
|
"sourcePath": "examples/renovate.json5"
|
|
@@ -129,7 +129,16 @@
|
|
|
129
129
|
"description": null,
|
|
130
130
|
"sourceLocation": {
|
|
131
131
|
"filePath": "src/default.test.ts",
|
|
132
|
-
"line":
|
|
132
|
+
"line": 253,
|
|
133
|
+
"column": 1
|
|
134
|
+
}
|
|
135
|
+
},
|
|
136
|
+
{
|
|
137
|
+
"name": "branchName",
|
|
138
|
+
"description": null,
|
|
139
|
+
"sourceLocation": {
|
|
140
|
+
"filePath": "src/default.test.ts",
|
|
141
|
+
"line": 264,
|
|
133
142
|
"column": 1
|
|
134
143
|
}
|
|
135
144
|
},
|
|
@@ -138,7 +147,7 @@
|
|
|
138
147
|
"description": null,
|
|
139
148
|
"sourceLocation": {
|
|
140
149
|
"filePath": "src/default.test.ts",
|
|
141
|
-
"line":
|
|
150
|
+
"line": 271,
|
|
142
151
|
"column": 1
|
|
143
152
|
}
|
|
144
153
|
},
|
|
@@ -147,7 +156,7 @@
|
|
|
147
156
|
"description": null,
|
|
148
157
|
"sourceLocation": {
|
|
149
158
|
"filePath": "src/default.test.ts",
|
|
150
|
-
"line":
|
|
159
|
+
"line": 281,
|
|
151
160
|
"column": 1
|
|
152
161
|
}
|
|
153
162
|
},
|
|
@@ -156,7 +165,7 @@
|
|
|
156
165
|
"description": null,
|
|
157
166
|
"sourceLocation": {
|
|
158
167
|
"filePath": "src/default.test.ts",
|
|
159
|
-
"line":
|
|
168
|
+
"line": 291,
|
|
160
169
|
"column": 1
|
|
161
170
|
}
|
|
162
171
|
},
|
|
@@ -165,7 +174,7 @@
|
|
|
165
174
|
"description": null,
|
|
166
175
|
"sourceLocation": {
|
|
167
176
|
"filePath": "src/default.test.ts",
|
|
168
|
-
"line":
|
|
177
|
+
"line": 295,
|
|
169
178
|
"column": 1
|
|
170
179
|
}
|
|
171
180
|
}
|
|
@@ -246,6 +255,12 @@
|
|
|
246
255
|
"callExpression": "dependency",
|
|
247
256
|
"sourcePath": "src/default.test.ts"
|
|
248
257
|
},
|
|
258
|
+
{
|
|
259
|
+
"fromSymbol": "src/default.test.ts",
|
|
260
|
+
"toSymbol": "branchName",
|
|
261
|
+
"callExpression": "branchName",
|
|
262
|
+
"sourcePath": "src/default.test.ts"
|
|
263
|
+
},
|
|
249
264
|
{
|
|
250
265
|
"fromSymbol": "matchesRule",
|
|
251
266
|
"toSymbol": "matches",
|