Skip to content
Prev Previous commit
Next Next commit
[openapi-diff-runner] organize imports
  • Loading branch information
mikeharder committed Jul 24, 2025
commit 996fad50e7035cab9a03a778735e9e733ca9ac4e
10 changes: 5 additions & 5 deletions eng/tools/openapi-diff-runner/src/command-helpers.ts
Original file line number Diff line number Diff line change
@@ -1,17 +1,17 @@
import { BREAKING_CHANGES_CHECK_TYPES } from "@azure-tools/specs-shared/breaking-change";
import { getChangedFilesStatuses, swagger } from "@azure-tools/specs-shared/changed-files";
import { existsSync, mkdirSync, readFileSync, rmSync, writeFileSync } from "node:fs";
import path from "node:path";
import { existsSync, mkdirSync, readFileSync, writeFileSync, rmSync } from "node:fs";
import { logError, LogLevel, logMessage, setOutput } from "./log.js";
import {
BreakingChangeReviewRequiredLabel,
BreakingChangesCheckType,
Context,
BreakingChangeReviewRequiredLabel,
VersioningReviewRequiredLabel,
} from "./types/breaking-change.js";
import { ResultMessageRecord } from "./types/message.js";
import { createOadMessageProcessor } from "./utils/oad-message-processor.js";
import { createPullRequestProperties } from "./utils/pull-request.js";
import { getChangedFilesStatuses, swagger } from "@azure-tools/specs-shared/changed-files";
import { BREAKING_CHANGES_CHECK_TYPES } from "@azure-tools/specs-shared/breaking-change";
import { logError, LogLevel, logMessage, setOutput } from "./log.js";

/**
* Interface for parsed CLI arguments
Expand Down
26 changes: 13 additions & 13 deletions eng/tools/openapi-diff-runner/src/commands.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,30 +3,30 @@
* i.e. it is invoked by files with depth 0 and invokes files with depth 2.
*/

import { RawMessageRecord, ResultMessageRecord } from "./types/message.js";
import { BREAKING_CHANGES_CHECK_TYPES } from "@azure-tools/specs-shared/breaking-change";
import { existsSync } from "node:fs";
import * as path from "node:path";
import { createOadTrace, setOadBaseBranch, generateOadMarkdown } from "./types/oad-types.js";
import {
createBreakingChangeDetectionContext,
checkBreakingChangeOnSameVersion,
checkCrossVersionBreakingChange,
} from "./detect-breaking-change.js";
import { Context } from "./types/breaking-change.js";
import {
getSwaggerDiffs,
changeBaseBranch,
logFullOadMessagesList,
createDummySwagger,
cleanDummySwagger,
isSameVersionBreakingType,
createDummySwagger,
getCreatedDummySwaggerCount,
getSwaggerDiffs,
isSameVersionBreakingType,
logFullOadMessagesList,
outputBreakingChangeLabelVariables,
} from "./command-helpers.js";
import {
checkBreakingChangeOnSameVersion,
checkCrossVersionBreakingChange,
createBreakingChangeDetectionContext,
} from "./detect-breaking-change.js";
import { generateBreakingChangeResultSummary } from "./generate-report.js";
import { LOG_PREFIX, logMessage } from "./log.js";
import { Context } from "./types/breaking-change.js";
import { RawMessageRecord, ResultMessageRecord } from "./types/message.js";
import { createOadTrace, generateOadMarkdown, setOadBaseBranch } from "./types/oad-types.js";
import { appendMarkdownToLog } from "./utils/oad-message-processor.js";
import { BREAKING_CHANGES_CHECK_TYPES } from "@azure-tools/specs-shared/breaking-change";

/**
* The function validateBreakingChange() is executed with type SameVersion or CrossVersion
Expand Down
16 changes: 8 additions & 8 deletions eng/tools/openapi-diff-runner/src/detect-breaking-change.ts
Original file line number Diff line number Diff line change
Expand Up @@ -17,13 +17,21 @@
);pth 2,
* i.e. it is invoked by files with depth 1 and invokes files with depth 3.
*/
import { BREAKING_CHANGES_CHECK_TYPES } from "@azure-tools/specs-shared/breaking-change";
import { SpecModel } from "@azure-tools/specs-shared/spec-model";
import { appendFileSync, existsSync } from "node:fs";
import * as path from "node:path";
import { logError, LogLevel, logMessage } from "./log.js";
import { runOad } from "./run-oad.js";
import {
ApiVersionLifecycleStage,
BreakingChangesCheckType,
Context,
logFileName,
} from "./types/breaking-change.js";
import { RawMessageRecord, ResultMessageRecord } from "./types/message.js";
import { addOadTrace, OadMessage, OadTraceData } from "./types/oad-types.js";
import { applyRules } from "./utils/apply-rules.js";
import {
blobHref,
branchHref,
Expand All @@ -32,16 +40,8 @@ import {
processOadRuntimeErrorMessage,
specIsPreview,
} from "./utils/common-utils.js";
import { appendFileSync, existsSync } from "node:fs";
import * as path from "node:path";
import { applyRules } from "./utils/apply-rules.js";
import { OadMessage, OadTraceData, addOadTrace } from "./types/oad-types.js";
import { runOad } from "./run-oad.js";
import { processAndAppendOadMessages } from "./utils/oad-message-processor.js";
import { getExistedVersionOperations, getPrecedingSwaggers } from "./utils/spec.js";
import { logError, LogLevel, logMessage } from "./log.js";
import { BREAKING_CHANGES_CHECK_TYPES } from "@azure-tools/specs-shared/breaking-change";
import { SpecModel } from "@azure-tools/specs-shared/spec-model";

// We want to display some lines as we improved AutoRest v2 error output since March 2024 to provide multi-line error messages, e.g.:
// https://github.com/Azure/autorest/pull/4934
Expand Down
4 changes: 2 additions & 2 deletions eng/tools/openapi-diff-runner/src/generate-report.ts
Original file line number Diff line number Diff line change
@@ -1,18 +1,18 @@
import { addToSummary, logMessage, logWarning } from "./log.js";
import { ApiVersionLifecycleStage, Context } from "./types/breaking-change.js";
import {
BrChMsgRecord,
getKey,
MessageLevel,
RawMessageRecord,
ResultMessageRecord,
} from "./types/message.js";
import { ApiVersionLifecycleStage, Context } from "./types/breaking-change.js";
import {
BreakingChangeMdReport,
createBreakingChangeMdReport,
reportToString,
sortBreakingChangeMdReports,
} from "./utils/markdown-report.js";
import { addToSummary, logMessage, logWarning } from "./log.js";

// Per the GitHub documentation [1], the length limit of a check pane is 65535 characters.
// While not immediately obvious, it looks like the 65535 limit applies to the total length of the text and summary,
Expand Down
10 changes: 5 additions & 5 deletions eng/tools/openapi-diff-runner/src/index.ts
Original file line number Diff line number Diff line change
@@ -1,17 +1,17 @@
import { exit } from "node:process";
import { parseArgs, type ParseArgsConfig } from "node:util";
import { BREAKING_CHANGES_CHECK_TYPES } from "@azure-tools/specs-shared/breaking-change";
import { existsSync, mkdirSync } from "node:fs";
import path from "node:path";
import { exit } from "node:process";
import { fileURLToPath } from "node:url";
import { existsSync, mkdirSync } from "node:fs";
import { validateBreakingChange } from "./commands.js";
import { parseArgs, type ParseArgsConfig } from "node:util";
import {
buildPrInfo,
createContextFromParsedArgs,
type ParsedCliArguments,
} from "./command-helpers.js";
import { validateBreakingChange } from "./commands.js";
import { logError, logMessage } from "./log.js";
import { BreakingChangesCheckType } from "./types/breaking-change.js";
import { BREAKING_CHANGES_CHECK_TYPES } from "@azure-tools/specs-shared/breaking-change";

const __filename: string = fileURLToPath(import.meta.url);
const __dirname: string = path.dirname(__filename);
Expand Down
2 changes: 1 addition & 1 deletion eng/tools/openapi-diff-runner/src/run-oad.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@
* i.e. it is invoked by files with depth 2.
*/
import * as oad from "@azure/oad";
import { OadMessage } from "./types/oad-types.js";
import { logMessage, logMessageSafe } from "./log.js";
import { OadMessage } from "./types/oad-types.js";

/**
* The runOad() function is a wrapper around the "@azure/oad" library whose source is https://github.com/Azure/openapi-diff.
Expand Down
8 changes: 4 additions & 4 deletions eng/tools/openapi-diff-runner/src/types/breaking-change.ts
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
import { OadMessageProcessorContext } from "../utils/oad-message-processor.js";
import { PullRequestProperties } from "../utils/pull-request.js";
import {
VERSIONING_APPROVALS,
BREAKING_CHANGE_APPROVALS,
REVIEW_REQUIRED_LABELS,
BREAKING_CHANGES_CHECK_TYPES,
REVIEW_REQUIRED_LABELS,
VERSIONING_APPROVALS,
} from "@azure-tools/specs-shared/breaking-change";
import { OadMessageProcessorContext } from "../utils/oad-message-processor.js";
import { PullRequestProperties } from "../utils/pull-request.js";

/**
* This file contains types used by the OpenAPI specification breaking change checks
Expand Down
14 changes: 8 additions & 6 deletions eng/tools/openapi-diff-runner/src/types/oad-types.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,14 +8,16 @@
* - "[Breaking Change][PR Workflow] Use more granular labels for Breaking Changes approvals"
* https://github.com/Azure/azure-sdk-tools/issues/6374
*/
import { basename } from "node:path";
import { getVersionFromInputFile, specificBranchHref } from "../utils/common-utils.js";
import { MessageLevel } from "./message.js";
import { sourceBranchHref } from "../utils/common-utils.js";
import { ApiVersionLifecycleStage, Context } from "./breaking-change.js";
import { readFileSync } from "node:fs";
import { basename, dirname, join } from "node:path";
import { fileURLToPath } from "node:url";
import { dirname, join } from "node:path";
import {
getVersionFromInputFile,
sourceBranchHref,
specificBranchHref,
} from "../utils/common-utils.js";
import { ApiVersionLifecycleStage, Context } from "./breaking-change.js";
import { MessageLevel } from "./message.js";

const __filename = fileURLToPath(import.meta.url);
const __dirname = dirname(__filename);
Expand Down
6 changes: 3 additions & 3 deletions eng/tools/openapi-diff-runner/src/utils/apply-rules.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,23 +4,23 @@
* In the "breakingChanges directory invocation depth" this file has depth 3
* i.e. it is invoked by files with depth 2.
*/
import { BreakingChangeLabelsToBeAdded } from "../command-helpers.js";
import {
ApiVersionLifecycleStage,
BreakingChangesCheckType,
ReviewRequiredLabel,
VersioningReviewRequiredLabel,
} from "../types/breaking-change.js";
import { OadMessage } from "../types/oad-types.js";
import { BreakingChangeLabelsToBeAdded } from "../command-helpers.js";

import { BREAKING_CHANGES_CHECK_TYPES } from "@azure-tools/specs-shared/breaking-change";
import { logMessage, logWarning } from "../log.js";
import {
OadMessageRule,
fallbackLabel,
fallbackRule as fallbackOadMessageRule,
oadMessagesRuleMap,
} from "./oad-rule-map.js";
import { logMessage, logWarning } from "../log.js";
import { BREAKING_CHANGES_CHECK_TYPES } from "@azure-tools/specs-shared/breaking-change";

/**
* The function applyRules() applies oadMessagesRuleMap to OAD messages returned by runOad().
Expand Down
2 changes: 1 addition & 1 deletion eng/tools/openapi-diff-runner/src/utils/common-utils.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { FilePosition } from "../types/message.js";
import { Context } from "../types/breaking-change.js";
import { FilePosition } from "../types/message.js";

export function blobHref(repo: string, sha: string, file: string): string {
return `https://github.com/${repo}/blob/${sha}/${file}`;
Expand Down
6 changes: 3 additions & 3 deletions eng/tools/openapi-diff-runner/src/utils/markdown-report.ts
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
import { LogLevel, logMessage } from "../log.js";
import { BrChMsgRecord, MessageLevel, ResultMessageRecord, getKey } from "../types/message.js";
import {
createBreakingChangeMdRows,
getMdTableHeader,
getDeficitRow,
getMdTableHeader,
rowToString,
} from "./markdown-report-row.js";
import { BrChMsgRecord, MessageLevel, ResultMessageRecord, getKey } from "../types/message.js";
import { logMessage, LogLevel } from "../log.js";

/**
* Represents a markdown report for breaking change violations
Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,10 @@
import path from "node:path";
import fs from "node:fs";
import { OadMessage } from "../types/oad-types.js";
import path from "node:path";
import { logMessage, logMessageSafe } from "../log.js";
import { Context, logFileName } from "../types/breaking-change.js";
import { JsonPath, MessageLevel, ResultMessageRecord } from "../types/message.js";
import { OadMessage } from "../types/oad-types.js";
import { sourceBranchHref, specificBranchHref } from "./common-utils.js";
import { logFileName } from "../types/breaking-change.js";
import { logMessage, logMessageSafe } from "../log.js";
import { Context } from "../types/breaking-change.js";

/**
* Context for OAD message processing operations
Expand Down
2 changes: 1 addition & 1 deletion eng/tools/openapi-diff-runner/src/utils/oad-rule-map.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { BreakingChangesCheckType, ReviewRequiredLabel } from "../types/breaking-change.js";
import { MessageLevel } from "../types/message.js";
import { OadRuleCode } from "../types/oad-types.js";
import { BreakingChangesCheckType, ReviewRequiredLabel } from "../types/breaking-change.js";

/**
* This oadMessagesRuleMap is applied by applyRules() function, invoked by BreakingChangeDetector,
Expand Down
2 changes: 1 addition & 1 deletion eng/tools/openapi-diff-runner/src/utils/pull-request.ts
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
import { existsSync, mkdirSync } from "node:fs";
import path from "node:path";
import { simpleGit } from "simple-git";
import { Context } from "../types/breaking-change.js";
import { logError, logMessage } from "../log.js";
import { Context } from "../types/breaking-change.js";

/**
* Properties of Pull Request in Azure DevOps CI.
Expand Down
22 changes: 11 additions & 11 deletions eng/tools/openapi-diff-runner/test/command-helpers.test.ts
Original file line number Diff line number Diff line change
@@ -1,29 +1,29 @@
import { describe, it, expect, vi, beforeEach, afterEach } from "vitest";
import { existsSync, mkdirSync, readFileSync, writeFileSync, rmSync } from "node:fs";
import { BREAKING_CHANGES_CHECK_TYPES } from "@azure-tools/specs-shared/breaking-change";
import { getChangedFilesStatuses } from "@azure-tools/specs-shared/changed-files";
import { existsSync, mkdirSync, readFileSync, rmSync, writeFileSync } from "node:fs";
import { fileURLToPath } from "node:url";
import { afterEach, beforeEach, describe, expect, it, vi } from "vitest";
import {
createContextFromParsedArgs,
BreakingChangeLabelsToBeAdded,
getSwaggerDiffs,
buildPrInfo,
changeBaseBranch,
logFullOadMessagesList,
createDummySwagger,
cleanDummySwagger,
isSameVersionBreakingType,
createContextFromParsedArgs,
createDummySwagger,
getCreatedDummySwaggerCount,
getSwaggerDiffs,
isSameVersionBreakingType,
logFullOadMessagesList,
outputBreakingChangeLabelVariables,
type ParsedCliArguments,
} from "../src/command-helpers.js";
import { LogLevel } from "../src/log.js";
import {
Context,
BreakingChangeReviewRequiredLabel,
Context,
VersioningReviewRequiredLabel,
} from "../src/types/breaking-change.js";
import { ResultMessageRecord } from "../src/types/message.js";
import { getChangedFilesStatuses } from "@azure-tools/specs-shared/changed-files";
import { BREAKING_CHANGES_CHECK_TYPES } from "@azure-tools/specs-shared/breaking-change";
import { LogLevel } from "../src/log.js";

// Test constants
const TEST_CONSTANTS = {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
import { describe, it, expect, beforeEach, afterEach, vi } from "vitest";
import { SpecModel } from "@azure-tools/specs-shared/spec-model";
import { existsSync } from "node:fs";
import * as path from "node:path";
import { afterEach, beforeEach, describe, expect, it, vi } from "vitest";
import {
getReadmeFolder,
isInDevFolder,
checkBreakingChangeOnSameVersion,
doBreakingChangeDetection,
getReadmeFolder,
getSpecModel,
isInDevFolder,
type BreakingChangeDetectionContext,
} from "../src/detect-breaking-change.js";
import { Context, ApiVersionLifecycleStage } from "../src/types/breaking-change.js";
import { SpecModel } from "@azure-tools/specs-shared/spec-model";
import { ApiVersionLifecycleStage, Context } from "../src/types/breaking-change.js";
import { getExistedVersionOperations, getPrecedingSwaggers } from "../src/utils/spec.js";

vi.mock("@azure-tools/specs-shared/spec-model", () => ({
Expand Down
6 changes: 3 additions & 3 deletions eng/tools/openapi-diff-runner/test/generate-report.test.ts
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
import { describe, it, expect, vi, beforeEach, afterEach } from "vitest";
import { BREAKING_CHANGES_CHECK_TYPES } from "@azure-tools/specs-shared/breaking-change";
import { afterEach, beforeEach, describe, expect, it, vi } from "vitest";
import { generateBreakingChangeResultSummary } from "../src/generate-report.js";
import { addToSummary, logMessage } from "../src/log.js";
import { Context } from "../src/types/breaking-change.js";
import { RawMessageRecord, ResultMessageRecord } from "../src/types/message.js";
import { addToSummary, logMessage } from "../src/log.js";
import {
BreakingChangeMdReport,
createBreakingChangeMdReport,
reportToString,
sortBreakingChangeMdReports,
} from "../src/utils/markdown-report.js";
import { BREAKING_CHANGES_CHECK_TYPES } from "@azure-tools/specs-shared/breaking-change";

// Mock dependencies
vi.mock("../src/log.js");
Expand Down
6 changes: 3 additions & 3 deletions eng/tools/openapi-diff-runner/test/types/oad-types.test.ts
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
import { BREAKING_CHANGES_CHECK_TYPES } from "@azure-tools/specs-shared/breaking-change";
import { describe, expect, it } from "vitest";
import { Context } from "../../src/types/breaking-change.js";
import {
createOadTrace,
addOadTrace,
createOadTrace,
generateOadMarkdown,
setOadBaseBranch,
} from "../../src/types/oad-types.js";
import { Context } from "../../src/types/breaking-change.js";
import { BREAKING_CHANGES_CHECK_TYPES } from "@azure-tools/specs-shared/breaking-change";

const mockContext: Context = {
runType: BREAKING_CHANGES_CHECK_TYPES.SAME_VERSION,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
import { describe, it, expect, vi, beforeEach } from "vitest";
import { applyRules } from "../../src/utils/apply-rules.js";
import { OadMessage } from "../../src/types/oad-types.js";
import { beforeEach, describe, expect, it, vi } from "vitest";
import { BreakingChangeLabelsToBeAdded } from "../../src/command-helpers.js";
import { logMessage, logWarning } from "../../src/log.js";
import { ApiVersionLifecycleStage } from "../../src/types/breaking-change.js";
import { OadMessage } from "../../src/types/oad-types.js";
import { applyRules } from "../../src/utils/apply-rules.js";

// Mock the command-helpers module
vi.mock("../../src/command-helpers.js", () => ({
Expand Down
Loading