Skip to content

Commit 63114be

Browse files
FrozenPandazllwt
andcommitted
chore(repo): correctly pin ktfmt version (#34917)
ktfmt... is supposed to be pinned ktfmt is now actually pinned (cherry picked from commit 537543e) chore: formatting chore(linter): format ast-utils.ts Co-authored-by: llwt <[email protected]> chore(eslint): format ast-utils.ts Co-authored-by: llwt <[email protected]> fix(eslint): restore generic type arguments Co-authored-by: llwt <[email protected]>
1 parent cb6daf5 commit 63114be

2 files changed

Lines changed: 18 additions & 13 deletions

File tree

gradle/libs.versions.toml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ kotlinx-coroutines = "1.7.3"
1010
slf4j = "1.7.10"
1111
gradle-tooling-api = "8.13"
1212
shadow = "8.1.1"
13-
ktfmt = "0.52.0"
13+
ktfmt = "0.25.0"
1414
nx-project-graph = "0.1.7"
1515
gradle-plugin-publish = "1.2.1"
1616

@@ -27,6 +27,6 @@ gradle-tooling-api = { module = "org.gradle:gradle-tooling-api", version.ref = "
2727
[plugins]
2828
kotlin-jvm = { id = "org.jetbrains.kotlin.jvm", version.ref = "kotlin" }
2929
shadow = { id = "com.github.johnrengelman.shadow", version.ref = "shadow" }
30-
ktfmt = { id = "com.ncorti.ktfmt.gradle", version = "+" }
30+
ktfmt = { id = "com.ncorti.ktfmt.gradle", version.ref = "ktfmt" }
3131
nx-project-graph = { id = "dev.nx.gradle.project-graph", version.ref = "nx-project-graph" }
3232
gradle-plugin-publish = { id = "com.gradle.plugin-publish", version.ref = "gradle-plugin-publish" }

packages/eslint/src/generators/utils/flat-config/ast-utils.ts

Lines changed: 16 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -187,7 +187,7 @@ export function hasOverride(
187187
}
188188
for (const node of exportsArray) {
189189
if (isOverride(node)) {
190-
let data: Partial<Linter.ConfigOverride<Linter.RulesRecord>>;
190+
let data: Partial<Record<string, unknown>>;
191191

192192
if (ts.isObjectLiteralExpression(node)) {
193193
data = extractPropertiesFromObjectLiteral(node);
@@ -201,7 +201,9 @@ export function hasOverride(
201201
}
202202
}
203203

204-
if (lookup(data as Linter.ConfigOverride<Linter.RulesRecord>)) {
204+
if (
205+
lookup(data as unknown as Linter.ConfigOverride<Linter.RulesRecord>)
206+
) {
205207
return true;
206208
}
207209
}
@@ -279,7 +281,7 @@ function extractLiteralValue(node: ts.Node): unknown {
279281
*/
280282
function extractPropertiesFromObjectLiteral(
281283
node: ts.ObjectLiteralExpression
282-
): Partial<Linter.ConfigOverride<Linter.RulesRecord>> {
284+
): Partial<Record<string, unknown>> {
283285
const result: Record<string, unknown> = {};
284286
for (const prop of node.properties) {
285287
if (ts.isPropertyAssignment(prop)) {
@@ -291,7 +293,7 @@ function extractPropertiesFromObjectLiteral(
291293
}
292294
}
293295

294-
return result as Partial<Linter.ConfigOverride<Linter.RulesRecord>>;
296+
return result as Partial<Record<string, unknown>>;
295297
}
296298

297299
/**
@@ -398,11 +400,13 @@ export function replaceOverride(
398400

399401
// Use AST-based extraction to handle variable references (e.g., plugins: { 'abc': abc })
400402
const data = extractPropertiesFromObjectLiteral(objectLiteralNode);
401-
if (lookup(data as Linter.ConfigOverride<Linter.RulesRecord>)) {
403+
if (lookup(data as unknown as Linter.ConfigOverride<Linter.RulesRecord>)) {
402404
// Deep clone before update (update functions may mutate nested objects)
403405
const originalData = structuredClone(data);
404406

405-
let updatedData = update?.(data);
407+
let updatedData = update?.(
408+
data as Partial<Linter.ConfigOverride<Linter.RulesRecord>>
409+
);
406410
if (updatedData) {
407411
updatedData = mapFilePaths(updatedData);
408412

@@ -448,7 +452,10 @@ export function replaceOverride(
448452
changes.push({
449453
type: ChangeType.Insert,
450454
index: insertPos,
451-
text: `${needsComma}\n "${propName}": ${serializeValue(updatedValue, format)}`,
455+
text: `${needsComma}\n "${propName}": ${serializeValue(
456+
updatedValue,
457+
format
458+
)}`,
452459
});
453460
}
454461
}
@@ -1892,9 +1899,7 @@ export function generateAst<T>(
18921899
): T {
18931900
if (Array.isArray(input)) {
18941901
return ts.factory.createArrayLiteralExpression(
1895-
input.map((item) =>
1896-
generateAst<ts.Expression>(item, propertyAssignmentReplacer)
1897-
),
1902+
input.map((item) => generateAst(item, propertyAssignmentReplacer)),
18981903
true // Always treat as multiline, using item.length does not work in all cases
18991904
) as T;
19001905
}
@@ -1945,7 +1950,7 @@ function generatePropertyAssignmentsFromObjectEntries(
19451950
.map(([key, value]) => {
19461951
const original = ts.factory.createPropertyAssignment(
19471952
isValidKey(key) ? key : ts.factory.createStringLiteral(key),
1948-
generateAst<ts.Expression>(value, propertyAssignmentReplacer)
1953+
generateAst(value, propertyAssignmentReplacer)
19491954
);
19501955
if (
19511956
propertyAssignmentReplacer &&

0 commit comments

Comments
 (0)