Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[SDK Suppressions labels] Add new action to update suppressions labels #31878

Merged
merged 194 commits into from
Jan 8, 2025
Merged
Show file tree
Hide file tree
Changes from 185 commits
Commits
Show all changes
194 commits
Select commit Hold shift + click to select a range
6af1c8c
first test action is working
JackTn Dec 5, 2024
9d13f26
test variabel can used in next step
JackTn Dec 5, 2024
feade6a
remove old
JackTn Dec 5, 2024
598db16
add new
JackTn Dec 5, 2024
5fd1f32
test read env in node script
JackTn Dec 5, 2024
cf53842
write all github info
JackTn Dec 5, 2024
8eeabb1
fix bug
JackTn Dec 5, 2024
6beaa16
add new param
JackTn Dec 5, 2024
b33ad69
remove sth
JackTn Dec 5, 2024
2f03f58
add script
JackTn Dec 5, 2024
5a5f3f6
test action using js
JackTn Dec 5, 2024
6a4e8b7
using suppressions.js to test
JackTn Dec 5, 2024
7f78eca
test github-script
JackTn Dec 5, 2024
39e4af0
set output
JackTn Dec 5, 2024
7122d89
log context
JackTn Dec 5, 2024
962da36
log context
JackTn Dec 5, 2024
91f1b41
find change path
JackTn Dec 5, 2024
1801f09
find path content
JackTn Dec 5, 2024
9b2c657
add new test
JackTn Dec 6, 2024
da68760
add new return
JackTn Dec 6, 2024
23eda20
fix bug
JackTn Dec 6, 2024
5c9ff47
refactor env
JackTn Dec 6, 2024
efd658c
fix bug
JackTn Dec 6, 2024
d1267c3
fix bug
JackTn Dec 6, 2024
db90e6a
fix bug
JackTn Dec 6, 2024
bd848f0
fix bug
JackTn Dec 6, 2024
dda9b71
fix bug
JackTn Dec 6, 2024
bd1df5f
fix bug
JackTn Dec 6, 2024
10bce10
add feature
JackTn Dec 6, 2024
ad8945d
fix git ignore
JackTn Dec 6, 2024
617b2bd
fix npm ci error
JackTn Dec 6, 2024
65ee4c3
fix npm ci error
JackTn Dec 6, 2024
e2048d8
fix npm ci error
JackTn Dec 6, 2024
3c4f72f
fix process env error
JackTn Dec 6, 2024
b2275f3
fix process env error
JackTn Dec 6, 2024
f12b069
fix process env error
JackTn Dec 6, 2024
fca9cd2
fix process env error
JackTn Dec 6, 2024
1611202
fix process env error
JackTn Dec 6, 2024
b6284db
fix process env error
JackTn Dec 6, 2024
0d5912b
fix process env error
JackTn Dec 6, 2024
e3f37a8
log to next step
JackTn Dec 6, 2024
7b01d41
add breaking change
JackTn Dec 6, 2024
65d7ae4
test next step get labels
JackTn Dec 6, 2024
74c9dd2
test next step get labels
JackTn Dec 6, 2024
065be65
save result to file
JackTn Dec 6, 2024
3078936
save result to file
JackTn Dec 6, 2024
e4f3025
add test upload test
JackTn Dec 9, 2024
f48e354
test update-lables
JackTn Dec 9, 2024
a2e19c9
test update-lables
JackTn Dec 9, 2024
799f9d3
add test
JackTn Dec 9, 2024
44e579c
add test
JackTn Dec 9, 2024
c2e91da
add test
JackTn Dec 9, 2024
ee882f6
fix test bug
JackTn Dec 9, 2024
9afc6d2
add bug code
JackTn Dec 9, 2024
6a8c5de
add test label
JackTn Dec 9, 2024
511f7f0
add test label
JackTn Dec 9, 2024
bb3d73b
add test label
JackTn Dec 9, 2024
3aaf326
add test label
JackTn Dec 9, 2024
6ace848
test echo env
JackTn Dec 9, 2024
ce838f3
test set env
JackTn Dec 9, 2024
5ae3db7
add new job
JackTn Dec 9, 2024
c16e11c
fix name buyg
JackTn Dec 9, 2024
ff72925
bug env
JackTn Dec 9, 2024
215eaee
bug env
JackTn Dec 9, 2024
b8bd9f8
bug env
JackTn Dec 9, 2024
399965f
bug env
JackTn Dec 9, 2024
88a1a2d
bug env
JackTn Dec 9, 2024
75f3321
bug env
JackTn Dec 9, 2024
c7df20c
bug env
JackTn Dec 9, 2024
715b39d
bug env
JackTn Dec 9, 2024
9864b8a
fix eng
JackTn Dec 9, 2024
ac6cfb5
fix eng
JackTn Dec 9, 2024
0525cfe
rename output file name
JackTn Dec 9, 2024
3aa3ca5
rename output file name
JackTn Dec 9, 2024
92faeb4
add loop to update label
JackTn Dec 9, 2024
1602b11
rename workflow name
JackTn Dec 9, 2024
50e305f
set output.json to var
JackTn Dec 9, 2024
0f4fce7
fix script error
JackTn Dec 9, 2024
0fcb2f8
fix script error
JackTn Dec 9, 2024
7c276ef
fix script error
JackTn Dec 9, 2024
6938904
fix script error
JackTn Dec 9, 2024
1f38870
fix remvoe label error
JackTn Dec 9, 2024
7555446
fix remvoe label error
JackTn Dec 9, 2024
8db4fa2
fix remove label error
JackTn Dec 9, 2024
5ec82c9
fix remove label error
JackTn Dec 9, 2024
8ac45c3
add workflows
JackTn Dec 9, 2024
541bcf7
add workflows
JackTn Dec 9, 2024
fb64520
remove test
JackTn Dec 9, 2024
4f01177
fix rebase error
JackTn Dec 10, 2024
e75ba31
fix rebase error
JackTn Dec 10, 2024
728de43
fix rebase error
JackTn Dec 10, 2024
c05d5d1
fix comment
JackTn Dec 10, 2024
16acb67
add powershell script
JackTn Dec 10, 2024
6368842
add action test
JackTn Dec 10, 2024
bc21cef
add action test
JackTn Dec 10, 2024
71dda9d
fix bug
JackTn Dec 10, 2024
4af465f
fix bug
JackTn Dec 10, 2024
ebcd3c7
fix bug
JackTn Dec 10, 2024
bbc84b5
change code to fix comment
JackTn Dec 11, 2024
75768e0
change code to fix comment
JackTn Dec 11, 2024
30b5815
use bash code to upload artifact
JackTn Dec 11, 2024
b9291da
rename token
JackTn Dec 11, 2024
dfe6e13
rename token
JackTn Dec 11, 2024
00a0930
rename token
JackTn Dec 11, 2024
ab41f98
rename token
JackTn Dec 11, 2024
daa9e5e
rename step name
JackTn Dec 11, 2024
7689d3e
enhancement when the pre job is empty
JackTn Dec 11, 2024
6dba8d1
add new out put
JackTn Dec 11, 2024
700cfef
add new out put
JackTn Dec 11, 2024
3eab5cf
rename job name
JackTn Dec 11, 2024
79ff2f6
test has output
JackTn Dec 11, 2024
bf234a7
test has output
JackTn Dec 11, 2024
6433ab5
test has output
JackTn Dec 11, 2024
4b280ce
test has output
JackTn Dec 11, 2024
d1bbbb5
test has output
JackTn Dec 11, 2024
bb3e3ea
add composite action
JackTn Dec 11, 2024
47b3381
add composite action
JackTn Dec 11, 2024
9a9f87c
add composite action
JackTn Dec 11, 2024
ac11661
test composite action
JackTn Dec 11, 2024
c8c092a
test composite action
JackTn Dec 11, 2024
672cbe2
test composite action
JackTn Dec 11, 2024
29ad2dd
revert
JackTn Dec 11, 2024
a866d11
add special js to resolve upload artifact
JackTn Dec 11, 2024
19cb4a2
fix bug
JackTn Dec 11, 2024
22bbeb4
add new js to upload artifact
JackTn Dec 11, 2024
5938e63
test js
JackTn Dec 11, 2024
9d333b4
fix js bug
JackTn Dec 11, 2024
3ad0c18
fix js bug
JackTn Dec 11, 2024
789839c
fix js bug
JackTn Dec 11, 2024
f48943f
fix js bug
JackTn Dec 11, 2024
5e06e19
fix js bug
JackTn Dec 11, 2024
718a06f
fix core.log
JackTn Dec 11, 2024
d55dd44
finsihed
JackTn Dec 11, 2024
1011648
add test
JackTn Dec 11, 2024
668cbc4
fix parse
JackTn Dec 11, 2024
fec55bc
Update eng/tools/suppressions/src/index.ts
JackTn Dec 12, 2024
e16bbe9
using git command
JackTn Dec 12, 2024
0780ff3
using git command add content
JackTn Dec 12, 2024
4164c1c
change code to support git command
JackTn Dec 12, 2024
ff378b1
fix bug
JackTn Dec 12, 2024
4e7bcc0
remove log
JackTn Dec 12, 2024
1f6dbff
remove base264 function
JackTn Dec 12, 2024
d3ca09e
test output
JackTn Dec 12, 2024
d340fca
test add label
JackTn Dec 12, 2024
c96529d
test add label
JackTn Dec 12, 2024
3373c31
test add label
JackTn Dec 12, 2024
2c01e22
test add label
JackTn Dec 12, 2024
4a1e0ab
test add label
JackTn Dec 12, 2024
87ba0f9
test add label
JackTn Dec 12, 2024
0446686
test add label
JackTn Dec 12, 2024
57cba71
remove test and unused code
JackTn Dec 12, 2024
b614a17
remove test
JackTn Dec 12, 2024
ee68c21
try to use git output instead of set output
JackTn Dec 12, 2024
381ebbe
output script result
JackTn Dec 12, 2024
bc51375
output script result
JackTn Dec 12, 2024
66b0514
output script result
JackTn Dec 12, 2024
bc74a11
output script result 2
JackTn Dec 12, 2024
1cfac5b
output script result 3
JackTn Dec 12, 2024
f2a197d
output script result 4
JackTn Dec 12, 2024
c8de5e8
remove code
JackTn Dec 12, 2024
95289c9
regen package-lock.json file
JackTn Dec 13, 2024
196850e
fix comment & remove unused code
JackTn Dec 17, 2024
b448bc3
console ajv error
JackTn Dec 17, 2024
23541cd
bug fix
JackTn Dec 17, 2024
d9d558f
bug fix
JackTn Dec 17, 2024
36456c4
bug fix
JackTn Dec 17, 2024
b85a0c5
bug fix
JackTn Dec 17, 2024
0b357e8
fix comment
JackTn Dec 17, 2024
f82256e
fix comment 1
JackTn Dec 19, 2024
418f101
fix comment 1
JackTn Dec 19, 2024
50de231
trigger to update label setting
JackTn Dec 19, 2024
be41133
add args for node script
JackTn Dec 19, 2024
8d5ae35
add condition for add label artificate
JackTn Dec 19, 2024
abd7610
add new args without env
JackTn Dec 19, 2024
f485568
fix bug for args
JackTn Dec 19, 2024
4b1fcdc
fix bug for args
JackTn Dec 19, 2024
92f4762
fix bug for args
JackTn Dec 19, 2024
adf88c7
fix bug for args
JackTn Dec 19, 2024
37585a0
fix bug for args
JackTn Dec 19, 2024
8f7f4a2
change comment
JackTn Dec 19, 2024
b72f423
refactor process label
JackTn Dec 19, 2024
b1d9418
add test
JackTn Dec 19, 2024
be7b892
remove unused code and test branch
JackTn Dec 19, 2024
0072a75
add function description and fix comment
JackTn Dec 20, 2024
af7617e
Merge branch 'main' into jacktn/suppression-action
JackTn Dec 20, 2024
2fa944f
change dependency to fix comment
JackTn Jan 7, 2025
96f22e7
remove test branch
JackTn Jan 7, 2025
8e4d49c
bump ajv to 8.17.1
JackTn Jan 8, 2025
eb1ab6a
add comment to to explain this behavior
JackTn Jan 8, 2025
9848a6c
Add trailing newline
mikeharder Jan 8, 2025
90633e6
Merge branch 'main' into jacktn/suppression-action
mikeharder Jan 8, 2025
1be8519
Merge branch 'main' into jacktn/suppression-action
mikeharder Jan 8, 2025
ebeefc8
Empty commit to re-trigger checks
mikeharder Jan 8, 2025
ac23cd9
Merge branch 'main' into jacktn/suppression-action
raych1 Jan 8, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
99 changes: 99 additions & 0 deletions .github/workflows/SDK-Suppressions-Label.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,99 @@
name: SDK Suppressions

on:
pull_request:
branches:
- main
- RPSaaSMaster
- release*

jobs:
process-sdk-suppressions-labels:
name: Sdk Suppressions
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- name: Checkout code
uses: actions/checkout@v4
with:
# Required since "HEAD^" is passed to Get-ChangedFiles
fetch-depth: 2

- name: Setup Node and run `npm ci`
uses: ./.github/actions/setup-node-npm-ci

- name: Get GitHub PullRequest Changed Files
shell: pwsh
id: get-changedFiles
run: |
. eng/scripts/ChangedFiles-Functions.ps1
$changedFiles = @(Get-ChangedFiles)
echo "PR Changed files: $changedFiles"
Add-Content -Path $env:GITHUB_OUTPUT -Value "changedFiles=$changedFiles"

- name: Get GitHub PullRequest Context
uses: actions/github-script@v7
id: fetch-pullRequest-context
with:
script: |
const pr = context.payload.pull_request;
if (!pr) {
throw new Error("This workflow must run in the context of a pull request.");
}
console.log("This action trigger by ", context.eventName);
core.setOutput("prLabels", pr.labels.map(label => label.name));
result-encoding: string

- name: Run Get suppressions label script
id: run-suppressions-script
env:
OUTPUT_FILE: "output.json"
GITHUB_PULL_REQUEST_CHANGE_FILES: ${{ steps.get-changedFiles.outputs.changedFiles }}
GITHUB_PULL_REQUEST_LABELS: ${{ steps.fetch-pullRequest-context.outputs.prLabels }}
run: |
node eng/tools/sdk-suppressions/cmd/sdk-suppressions-label.js HEAD^ HEAD "$GITHUB_PULL_REQUEST_CHANGE_FILES" "$GITHUB_PULL_REQUEST_LABELS"

OUTPUT=$(cat $OUTPUT_FILE)
echo "Script output labels: $OUTPUT"

labelsToAdd=$(echo "$OUTPUT" | sed -n 's/.*"labelsToAdd":\[\([^]]*\)\].*/\1/p' | tr -d '" ')
labelsToRemove=$(echo "$OUTPUT" | sed -n 's/.*"labelsToRemove":\[\([^]]*\)\].*/\1/p' | tr -d '" ')

for label in $(echo $labelsToAdd | tr ',' '\n'); do
echo "Label to add: $label"
echo "$label=true" >> $GITHUB_OUTPUT
done

for label in $(echo $labelsToRemove | tr ',' '\n'); do
echo "Label to remove: $label"
echo "$label=false" >> $GITHUB_OUTPUT
done

- uses: ./.github/actions/add-label-artifact
name: Upload artifact with results-go
if: ${{ steps.run-suppressions-script.outputs.BreakingChange-Go-Sdk-Suppression }}
mikeharder marked this conversation as resolved.
Show resolved Hide resolved
with:
name: "BreakingChange-Go-Sdk-Suppression"
value: "${{ steps.run-suppressions-script.outputs.BreakingChange-Go-Sdk-Suppression == 'true' }}"

- uses: ./.github/actions/add-label-artifact
name: Upload artifact with results java
if: ${{ steps.run-suppressions-script.outputs.BreakingChange-Java-Sdk-Suppression }}
with:
name: "BreakingChange-Java-Sdk-Suppression"
value: "${{ steps.run-suppressions-script.outputs.BreakingChange-Java-Sdk-Suppression == 'true' }}"

- uses: ./.github/actions/add-label-artifact
name: Upload artifact with results js
if: ${{ steps.run-suppressions-script.outputs.BreakingChange-JavaScript-Sdk-Suppression }}
with:
name: "BreakingChange-JavaScript-Sdk-Suppression"
value: "${{ steps.run-suppressions-script.outputs.BreakingChange-JavaScript-Sdk-Suppression == 'true' }}"

- uses: ./.github/actions/add-label-artifact
name: Upload artifact with results python
if: ${{ steps.run-suppressions-script.outputs.BreakingChange-Python-Sdk-Suppression }}
with:
name: "BreakingChange-Python-Sdk-Suppression"
value: "${{ steps.run-suppressions-script.outputs.BreakingChange-Python-Sdk-Suppression == 'true' }}"
2 changes: 1 addition & 1 deletion .github/workflows/update-labels.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ on:
# types: [labeled, unlabeled]
# If an upstream workflow if completed, get only the artifacts from that workflow, and update labels
workflow_run:
workflows: ["TypeSpec Requirement"]
workflows: ["TypeSpec Requirement", "SDK Suppressions"]
types: [completed]
workflow_dispatch:
inputs:
Expand Down
3 changes: 2 additions & 1 deletion eng/tools/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,8 @@
"@azure-tools/suppressions": "file:suppressions",
"@azure-tools/tsp-client-tests": "file:tsp-client-tests",
"@azure-tools/typespec-requirement": "file:typespec-requirement",
"@azure-tools/typespec-validation": "file:typespec-validation"
"@azure-tools/typespec-validation": "file:typespec-validation",
"@azure-tools/sdk-suppressions": "file:sdk-suppressions"
},
"scripts": {
"build": "tsc --build",
Expand Down
5 changes: 5 additions & 0 deletions eng/tools/sdk-suppressions/cmd/sdk-suppressions-label.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
#!/usr/bin/env node

import { main } from "../dist/src/index.js";

await main();
31 changes: 31 additions & 0 deletions eng/tools/sdk-suppressions/package.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
{
"name": "@azure-tools/sdk-suppressions",
"private": true,
"type": "module",
"main": "dist/src/index.js",
"version": "1.0.0",
"bin": {
"get-sdk-suppressions-label": "cmd/sdk-suppressions-label.js"
},
"scripts": {
"build": "tsc --build",
"test": "vitest",
"test:ci": "vitest run --coverage --reporter=verbose"
},
"engines": {
"node": ">= 18.0.0"
},
"dependencies": {
"ajv": "^6.12.6",
JackTn marked this conversation as resolved.
Show resolved Hide resolved
"js-yaml": "^3.14.0",
JackTn marked this conversation as resolved.
Show resolved Hide resolved
"lodash": "^4.17.20"
},
"devDependencies": {
JackTn marked this conversation as resolved.
Show resolved Hide resolved
"@types/js-yaml": "^3.12.5",
"@types/lodash": "^4.14.161",
"@types/node": "^18.19.31",
"@vitest/coverage-v8": "^2.0.4",
"typescript": "~5.6.2",
"vitest": "^2.0.4"
}
}
65 changes: 65 additions & 0 deletions eng/tools/sdk-suppressions/src/common.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
// import { load } from "js-yaml";
import pkg from 'js-yaml';
const { load } = pkg;

import { exec } from "child_process";
import { promisify } from "util";

/**
* @param yamlContent
* @returns {result: string | object | undefined | null, message: string}
* special return
* if the content is empty, return {result: null, message: string
* if the file parse error, return {result: undefined, message: string
*/
export function parseYamlContent(yamlContent: string, path: string): {
result: string | object | undefined | null;
message: string;
}{
let content = undefined;
// if yaml file is not a valid yaml, catch error and return undefined
try {
content = load(yamlContent);
} catch (error) {
console.error(`The file parsing failed in the ${path}. Details: ${error}`);
return {
result: content,
message: `The file parsing failed in the ${path}. Details: ${error}`
};;
}

// if yaml file is empty, run yaml.safeload success but get undefined
// to identify whether it is empty return null to distinguish.
if (!content) {
console.info(`The file in the ${path} has been successfully parsed, but it is an empty file.`)
return {
result: null,
message: `The file in the ${path} has been successfully parsed, but it is an empty file.`
};;
}

return {
result: content,
message: 'The file has been successfully parsed.'
};

}

// Promisify the exec function
const execAsync = promisify(exec);

export async function runGitCommand(command: string): Promise<string> {
try {
const { stdout, stderr } = await execAsync(command);

if (stderr) {
console.error("Error Output:", stderr);
// throw new Error(stderr);
}

return stdout.trim();
} catch (error:any) {
console.error("Error details:", error.stderr || error);
throw error;
}
}
mikeharder marked this conversation as resolved.
Show resolved Hide resolved
39 changes: 39 additions & 0 deletions eng/tools/sdk-suppressions/src/index.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@

import { exit } from "process";
import { updateSdkSuppressionsLabels } from "./updateSdkSuppressionsLabel.js";

function getArgsError(args: string[]): string {
return (
"Get args lengths: " + args.length + "\n" +
"Details: " + args.join(', ') + "\n" +
"Usage: node eng/tools/sdk-suppressions/cmd/sdk-suppressions-label.js baseCommitHash headCommitHash changeFiles prLabels\n" +
"Returns: {labelsToAdd: [label1, label2],labelsToRemove: [lable3, label4]}\n" +
"Parameters:\n" +
" baseCommitHash: The base commit hash. Example: HEAD^ \n" +
" headCommitHash: The head commit hash. Example: HEAD \n" +
" changeFiles: The changed files. Example: 'specification/workloads/Workloads.Operations.Management/sdk-suppressions.yaml specification/workloads/Workloads.Operations.Management/main.tsp'\n" +
" prLabels: The PR has added labels. Example: '['BreakingChange-Go-Sdk-Suppression', 'BreakingChange-Python-Sdk-Suppression']'\n"
);
}

export async function main() {
const args: string[] = process.argv.slice(2);
if (args.length === 4) {
const baseCommitHash: string = args[0];
const headCommitHash: string = args[1];
const changeFiles: string = args[2];
const lables: string = args[3];
const outputFile = process.env.OUTPUT_FILE as string;
const changedLabels: {labelsToAdd: String[], labelsToRemove: String[]} = await updateSdkSuppressionsLabels(lables, changeFiles, baseCommitHash, headCommitHash, outputFile);
console.log(JSON.stringify(changedLabels));
exit(0);
} else {
console.error(getArgsError(args));
exit(1);
}

}

export { updateSdkSuppressionsLabels };


59 changes: 59 additions & 0 deletions eng/tools/sdk-suppressions/src/sdk.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
/**
* This file is the single source of truth for the labels used by the SDK generation tooling
* in the Azure/azure-rest-api-specs and Azure/azure-rest-api-specs-pr repositories.
*
* For additional context, see:
* - https://gist.github.com/raych1/353949d19371b69fb82a10dd70032a51
* - https://github.com/Azure/azure-sdk-tools/issues/6327
* - https://microsoftapc-my.sharepoint.com/:w:/g/personal/raychen_microsoft_com/EbOAA9SkhQhGlgxtf7mc0kUB-25bFue0EFbXKXS3TFLTQA
*/
export type SdkName =
| "azure-sdk-for-go"
| "azure-sdk-for-java"
| "azure-sdk-for-js"
| "azure-sdk-for-net"
| "azure-sdk-for-python"

export const sdkLabels: {
[sdkName in SdkName]: {
breakingChange: string | undefined;
breakingChangeApproved: string | undefined;
breakingChangeSuppression: string | undefined;
breakingChangeSuppressionApproved: string | undefined;
};
} = {
"azure-sdk-for-go": {
breakingChange: "BreakingChange-Go-Sdk",
breakingChangeApproved: "BreakingChange-Go-Sdk-Approved",
breakingChangeSuppression: "BreakingChange-Go-Sdk-Suppression",
breakingChangeSuppressionApproved:
"BreakingChange-Go-Sdk-Suppression-Approved",
},
"azure-sdk-for-java": {
breakingChange: "BreakingChange-Java-Sdk",
breakingChangeApproved: "BreakingChange-Java-Sdk-Approved",
breakingChangeSuppression: "BreakingChange-Java-Sdk-Suppression",
breakingChangeSuppressionApproved:
"BreakingChange-Java-Sdk-Suppression-Approved"
},
"azure-sdk-for-js": {
breakingChange: "BreakingChange-JavaScript-Sdk",
breakingChangeApproved: "BreakingChange-JavaScript-Sdk-Approved",
breakingChangeSuppression: "BreakingChange-JavaScript-Sdk-Suppression",
breakingChangeSuppressionApproved:
"BreakingChange-JavaScript-Sdk-Suppression-Approved"
},
"azure-sdk-for-net": {
breakingChange: undefined,
breakingChangeApproved: undefined,
breakingChangeSuppression: undefined,
breakingChangeSuppressionApproved: undefined
},
"azure-sdk-for-python": {
breakingChange: "BreakingChange-Python-Sdk",
breakingChangeApproved: "BreakingChange-Python-Sdk-Approved",
breakingChangeSuppression: "BreakingChange-Python-Sdk-Suppression",
breakingChangeSuppressionApproved:
"BreakingChange-Python-Sdk-Suppression-Approved"
}
};
Loading
Loading