Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
71 commits
Select commit Hold shift + click to select a range
219d875
Reusing the OSSku definition and renaming definitions to avoid overla…
HariPrasadV Nov 22, 2023
21467ec
[Hub Generated] Review request for Microsoft.NotificationHubs to add …
jessHuh Nov 22, 2023
8263dd6
Revert "Add KeyCredentialTrait (#26779)" (#26819)
cparisineti Nov 22, 2023
4bb583b
update paloaltonetworks readme.go.md (#26731)
Alancere Nov 23, 2023
ae57786
Call Automation Api spec for 2023-10-15 (GA2) (#25624)
vivekmore-msft Nov 24, 2023
c1ba9df
add directive in paloaltonetwork readme.typescript.md (#26709)
kazrael2119 Nov 24, 2023
8d68a1d
mgmt, java, skip flatten for non-GA TypeSpec libs (#26687)
weidongxu-microsoft Nov 24, 2023
739f4f5
Update readme.python.md (#26711)
ChenxiJiang333 Nov 27, 2023
3abd387
networkanalytics, create readme.java.md to add service name and title…
haolingdong-msft Nov 27, 2023
cb2d97e
first commit (#26787)
koyasu221b Nov 27, 2023
12de39b
Add customizaton class (#26821)
cparisineti Nov 27, 2023
738ab25
PR workflow diagram update (#26816)
raych1 Nov 28, 2023
9c146b3
[Hub Generated] Review request for Microsoft.DataProtection to add ve…
asmitt Nov 28, 2023
5856115
Adding new preview version "2023-11-01-preview" with new APIs (#26528)
vipray-ms Nov 28, 2023
c0e7b13
security readme.go.md directive (#26857)
Alancere Nov 28, 2023
a4d77e0
GalleryRP 2022-08-03 release branch (#25524)
Sandido Nov 28, 2023
41a50ea
[Hub Generated] Review request for Microsoft.DesktopVirtualization to…
ryanosh Nov 28, 2023
de24532
Update readme.md (#26872)
JoshLove-msft Nov 28, 2023
565e209
Adding new version 2023-11-01-preview for updating monitor Properties…
RheaHooda23 Nov 28, 2023
1631971
Azure Active Directory change to Microsoft Entra ID (#26815)
apoorvasingh130 Nov 28, 2023
784f4a4
Update readme.md (#26775)
stevemunk Nov 28, 2023
9c7722c
Fix type of detected to be boolean as returned by service (#26863)
bexxx Nov 28, 2023
91ada2b
enable java partial update in AACS (#26880)
zhaiyutong Nov 29, 2023
6511ebd
Revert "Add TypeSpec label for PullRequests (#26542)" (#26879)
Nov 29, 2023
4fabea7
Upgrade typespec-client-generator-core to 0.36.1 (#26878)
mikeharder Nov 29, 2023
4eb1ac2
Updating examples and documents (#26840)
JoshuaLai Nov 29, 2023
6507720
[Hub Generated] Publish private branch 'edgemrketplace202308' (#25556)
aneesh-ponneth Nov 29, 2023
f5aa38d
[Hub Generated] Publish private branch 'release-netapp-Microsoft.NetA…
audunn Nov 29, 2023
30d711a
[Hub Generated] Publish private branch 'gyz0072004-testbase-Microsoft…
gyz0072004 Nov 30, 2023
4466c02
[Hub Generated] Review request for Microsoft.HardwareSecurityModules …
emmeliaAra Nov 30, 2023
6bffca2
fix examples to use valid values (#26599)
anandanthony Nov 30, 2023
6556dd8
[Hub Generated] Review request for Microsoft.BareMetalInfrastructure …
canchliya31 Nov 30, 2023
b8c74fd
Update spell checking instructions (#26874)
weshaggard Nov 30, 2023
5318242
Update readme.python.md (#26894)
ChenxiJiang333 Dec 1, 2023
fb39d98
[Cognitive Services - Azure AI Content Safety] Update package print n…
JieZhou000 Dec 1, 2023
399b119
storagecache root squash 2023 11 01 preview (#26066)
Aman-Jain-14 Dec 1, 2023
5ab0b60
[Hub Generated] Review request for Microsoft.OffAzure to add version …
vegajula Dec 1, 2023
d6efaae
Updating user assigned properties for 2023-06-01 version (#26665)
shivani-tyagii Dec 1, 2023
32c63d6
Update control_plane_template.md: improve guidance on getting help (#…
Dec 1, 2023
cb798ff
[TypeSpec Validation] Trigger "all" pipeline when TypeSpec dev packag…
mikeharder Dec 3, 2023
5f00ca0
readme.java.md (#26935)
XiaofeiCao Dec 4, 2023
070f2fb
[Hub Generated] Publish private branch 'datafactory/dfandel/swagger_c…
DaveFandel Dec 4, 2023
9196271
Add ApiVersion and OperationHeader (#26603)
jamaalhay Dec 4, 2023
aaf72f6
This PR seeks to remove the 2022-12-12-preview API version from Micro…
MikePham0630 Dec 4, 2023
4a25742
New API version 2023-10-01-preview for Microsoft.NetworkCloud (#26740)
Linquan25 Dec 4, 2023
99139d0
[Hub Generated] Review request for Microsoft.DocumentDB to add versio…
kshittiz7 Dec 4, 2023
794de72
Update example 'Flink' to 'Trino' (#26612)
yuc-Li Dec 4, 2023
639ecfa
[ACS - Chat] GA Attachments to ChatMessage (#26017)
jimchou-dev Dec 4, 2023
f0614ca
Adding base commit for new API Preview Version 2023-07-31-preview (#2…
RamyaElangovanP Dec 5, 2023
61323f3
Update readme.python.md (#26936)
ChenxiJiang333 Dec 5, 2023
1ca8b90
[TypeSpec Validation] tsv folder path standardization (#26721)
ckairen Dec 5, 2023
6ae0fb5
fix swagger definition. (#26846)
wangbwn Dec 5, 2023
408db25
[Hub Generated] Review request for Microsoft.Batch to add version sta…
wiboris Dec 5, 2023
c1c82e7
[Hub Generated] Review request for Microsoft.CostManagement to add ve…
thramu Dec 5, 2023
3556bb9
Remove Azure.CodeSigning service from specifications (#26635)
Jaxelr Dec 5, 2023
6f43368
[PostgreSQL] Add 202 as valid response for PUT for Advanced Threat Pr…
ambrahma Dec 5, 2023
378977e
Feature/cplat 2023 09 01 (#26270)
Dec 5, 2023
90115af
Update guidance docs for `OAV` check (#26948)
scbedd Dec 5, 2023
9971340
[TypeSpec Validation] exclude trailing slash when calculating folder …
ckairen Dec 6, 2023
d402f68
Azure OpenAI: TypeSpec updates for 2023-12-01-preview (#26737)
trrwilson Dec 6, 2023
4cd1510
[Agrifood] Adding Nov 2023 Preview API version (#25083)
bhargav-kansagara Dec 6, 2023
30688b3
fix for reported and confirmed level mismatch of detail (#26967)
trrwilson Dec 6, 2023
60679ee
Revert 2023-08-01 stable changes (#26924)
soumyapattnaik Dec 6, 2023
583e15c
Swagger Correctness missing Cache property (#26701)
sampathvasalav Dec 7, 2023
95e78a7
[Hub Generated] Review request for Microsoft.AzureStackHCI to add ver…
priyjain358 Dec 7, 2023
11dd0db
fix easm (#26980)
tadelesh Dec 7, 2023
e87b8fe
Adds base for updating Microsoft.NetApp from version stable/2023-05-0…
audunn Nov 22, 2023
e1d75f8
Updates readme
audunn Nov 22, 2023
d7399eb
Updates API version in new specs and examples
audunn Nov 22, 2023
aae00f1
[NetAppFiles] Update rest to 2023-07-01 (#26817)
audunn Dec 5, 2023
cf868fe
readme
audunn Dec 7, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
18 changes: 9 additions & 9 deletions .github/PULL_REQUEST_TEMPLATE/control_plane_template.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,12 @@
# ARM (Control Plane) API Specification Update Pull Request

> Tip: overwhelmed by all this guidance? See the `Getting help` section at the bottom of this PR description.

## PR review workflow diagram

Please understand this diagram before proceeding. It explains how to get your PR approved & merged.

![diagram](https://github.com/Azure/azure-rest-api-specs/assets/4429827/029a11fd-eaf9-4865-9d77-a16b5ea5eb26)
![diagram](https://github.com/Azure/azure-rest-api-specs/assets/20296335/35140fb9-639e-4e44-ac4b-38b1a20dddf9)

<details>
<summary> Click here to see the details of Step 1 </summary>
Expand Down Expand Up @@ -36,13 +38,11 @@ If the automation determines you have breaking changes, i.e. Step 1 from the dia

### Diagram footnotes

[1] [ARM review queue] (for **merge** queues, see [4])
[1] [ARM review queue] (for **merge** queues, see [2])
The PRs are processed by time opened, ascending. Your PR may show up on 2nd or later page.
If you addressed Step 1 from the diagram and your PR is not showing up in the queue, ensure the label `ARMChangesRequested`
is removed from your PR. This should cause the label `WaitForARMFeedback` to be added.
[2] https://aka.ms/azsdk/support/specreview-channel
[3] [List of SDK breaking changes approvers] in pinned Teams announcement
[4] [public repo merge queue], [private repo merge queue] (for **ARM review** queue, [1])
is removed from your PR. This should cause the label `WaitForARMFeedback` to be added.
[2] [public repo merge queue], [private repo merge queue] (for **ARM review** queue, [1])

If you need further help with anything, see `Getting help` section below.

Expand Down Expand Up @@ -89,15 +89,15 @@ to get approval.

## Getting help

- For general PR approval workflow, see the diagram at the top of this comment.
- First, please carefully read through this PR description, from top to bottom. Please fill out the `Purpose of this PR` and `Due diligence checklist`.
- To understand what you must do next to merge this PR, see the `Next Steps to Merge` comment. It will appear within few minutes of submitting this PR and will continue to be up-to-date with current PR state.
- For guidance on fixing this PR CI check failures, see the hyperlinks provided in given failure
and https://aka.ms/ci-fix.
- If the PR CI checks appear to be stuck in `queued` state, please add a comment with contents `/azp run`.
This should result in a new comment denoting a `PR validation pipeline` has started and the checks should be updated after few minutes.
This should result in a new comment denoting a `PR validation pipeline` has started and the checks should be updated after few minutes.
- If the help provided by the previous points is not enough, post to https://aka.ms/azsdk/support/specreview-channel and link to this PR.

[ARM review queue]: https://github.com/search?q=org%3AAzure+is%3Apr+is%3Aopen+label%3AWaitForARMFeedback+-label%3AIDCDevDiv++draft%3Afalse+sort%3Acreated-asc+&type=pullrequests
[List of SDK breaking changes approvers]: https://teams.microsoft.com/l/message/19:0351f5f9404446e4b4fd4eaf2c27448d@thread.skype/1689115217750?tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47&groupId=3e17dcb0-4257-4a30-b843-77f47f1d4121&parentMessageId=1689115217750&teamName=Azure%20SDK&channelName=API%20Spec%20Review&createdTime=1689115217750
[public repo merge queue]: https://github.com/Azure/azure-rest-api-specs/pulls?q=is%3Aopen+is%3Apr+label%3AMergeRequested+draft%3Afalse+sort%3Acreated-asc
[private repo merge queue]: https://github.com/Azure/azure-rest-api-specs-pr/pulls?q=is%3Aopen+is%3Apr+label%3AMergeRequested+-label%3AApproved-OkToMerge+draft%3Afalse+sort%3Acreated-asc
[breaking changes process]: https://eng.ms/docs/cloud-ai-platform/azure-core/azure-core-pm-and-design/trusted-platform-pm-karimb/service-lifecycle-and-actions-team/service-lifecycle-actions-team/apex/media/launchingproductbreakingchanges#breaking-change-process-1
11 changes: 1 addition & 10 deletions .github/policies/resourceManagement.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2529,16 +2529,7 @@ configuration:
then:
- removeLabel:
label: no-recent-activity
description:
- if:
- payloadType: Pull_Request
then:
- if:
- filesMatchPattern:
pattern: specification/.*(\.tsp|tspconfig.yaml)
then:
- addLabel:
label: TypeSpec
description:
- if:
- payloadType: Issue_Comment
- and:
Expand Down
28 changes: 28 additions & 0 deletions custom-words.txt
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,7 @@ adla
adlarge
adls
adlsgen
adma
adminmanagement
adou
adsis
Expand Down Expand Up @@ -181,6 +182,7 @@ appfigures
appid
appinsights
applynetworkconfigurationupdates
approveRollingUpgrade
appservice
appsettings
appsource
Expand Down Expand Up @@ -214,6 +216,7 @@ asyncoperation
asyncrhonously
asyncronously
atascada
atleast
attachednetworks
attestationcollateral
attestationmechanism
Expand Down Expand Up @@ -526,6 +529,7 @@ codespaces
coffeelake
cognitiveservices
collectiondetails
cogservice
colls
colocation
cololocation
Expand All @@ -539,6 +543,7 @@ compilationjobs
compilefile
compositeentities
computervision
computeusage
concurrentappend
conda
configreferences
Expand Down Expand Up @@ -567,6 +572,7 @@ Contoso's
contosodataset
contosomedia
contributer
CONV
convolutional
cooldown
copyid
Expand Down Expand Up @@ -734,6 +740,8 @@ deletedstorage
deletedwithversions
deletefailed
deleteissuers
deletejob
deletejobs
deleteprivateendpointconnection
deletesas
deletetype
Expand Down Expand Up @@ -953,6 +961,8 @@ exploitability
exportconfiguration
exportdevices
exporterrors
exportjob
exportjobs
exportstatus
externaldatasources
externaldnsipaddress01
Expand Down Expand Up @@ -1242,6 +1252,7 @@ hypernet
hyperparameters
hyperparams
hyperscale
hyperthread
hyperv
hypervcollectors
iaas
Expand Down Expand Up @@ -1293,6 +1304,8 @@ immutabilitypolicy
importances
importcollectors
importdevices
importjob
importjobs
imsi
inari
inbuild
Expand Down Expand Up @@ -1645,6 +1658,7 @@ manytoone
mapbox
mapconfiguration
mapconfigurations
mapextensions
mapp
mapred
mapreduce
Expand Down Expand Up @@ -2438,6 +2452,8 @@ ruleset
rulesets
rulestack
rulestacks
runasaccount
runasaccounts
runbook
runbooks
runid
Expand Down Expand Up @@ -2493,6 +2509,7 @@ scsv
scvmm
sddc
sddl
sdflex
sdks
sdwan
searchbuffer
Expand Down Expand Up @@ -2629,6 +2646,7 @@ snmp
snomed
snssai
sobol
softwareinventories
softwareplan
sohsv
solaris
Expand Down Expand Up @@ -2770,6 +2788,7 @@ subvolumes
subwoofer
subword
subwords
succeded
suceeded
sudoer
suggesters
Expand Down Expand Up @@ -3013,6 +3032,7 @@ unrepaired
unrestorable
unsecure
unsubstituted
unsynchronized
untagged
untracked
untrust
Expand Down Expand Up @@ -3084,9 +3104,11 @@ versioner
versionid
versionswithin
vertica
vffs
vfyc
vhds
vhdx
vmfs
videoanalyzer
videosearch
viewp
Expand Down Expand Up @@ -3152,11 +3174,13 @@ vpndeviceconfigurationscript
vray
vrfs
vrops
vsan
vsphere
vsts
vstsrm
vuln
vusers
vvol
vwan
vxlan
w3clogfile
Expand Down Expand Up @@ -3884,6 +3908,10 @@ usedCPUMHz
totalCPUMHz
docon
DialOut
vectorizers
ONTAP
SVM
SVM's
Vectorizable
vectorizers
Entra
Expand Down
2 changes: 1 addition & 1 deletion documentation/Semantic-and-Model-Violations-Reference.md
Original file line number Diff line number Diff line change
Expand Up @@ -850,7 +850,7 @@ This document lists the set of automated rules that can be validated against swa

**Output Message**: Long running operation should return {header} in header but not being provided.

**Description**: Long running operation must return location header or azure-AsyncOperation header in response when this operation is annotated with x-ms-long-running-operation:true.
**Description**: Long running operation must return `Operation-Id`, `Operation-Location`, or `azure-AsyncOperation` header in response when this operation is annotated with x-ms-long-running-operation:true.

**How to fix the violation**: Adding one of these headers to the response in example or in traffic payload. Refer to this [example](https://github.com/Azure/azure-rest-api-specs/blob/5e638554b6/specification/appplatform/resource-manager/Microsoft.AppPlatform/stable/2020-07-01/examples/Apps_Update.json#L64) for the fix.

Expand Down
26 changes: 24 additions & 2 deletions documentation/ci-fix.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,31 @@ Most guides here require for you to have `npm` installed, which you can get by i

## Spell check

Please add your words to `./custom-words.txt` if you think you have the correct spell.
If you receive a spelling failure either fix the spelling to match or if there are words that need to be suppressed for your service then add the word to the override list in [cspell.json](https://github.com/Azure/azure-rest-api-specs/blob/main/cSpell.json). Either
add to your existing section or create a new section for your specific spec or service family if the work is more generally used in losts of files under your service.
```
"overrides": [
... example of specific file override
{
"filename": "**/specification/hdinsight/resource-manager/Microsoft.HDInsight/preview/2015-03-01-preview/cluster.json",
"words": [
"saskey"
]
}
... example of specific service family override
{
"filename": "**/specification/cognitiveservices/**/*.json",
"words": [
"flac",
"mpga"
]
}
```
Words are case-insensitive so use lower case for the word list.

If you need more information on see [cspell configuration](https://cspell.org/configuration/).

If your problem is some existing error name that is not a word and need to suppress the error in that file (and don't want to add to custom-words.txt), you can add it to `./cSpell.txt`.
*Note*: We are trying to move away from one shared dictionary file so try and avoid editing custom-words.txt in the root as it will likely go away in the future.

## Prettier check

Expand Down
17 changes: 17 additions & 0 deletions eng/pipelines/typespec-validation-all.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,23 @@ pr:
- eng
- specification/common-types

resources:
pipelines:
- pipeline: typespec
source: typespec - CI
project: internal
trigger:
branches:
include:
- main
- pipeline: typespec-azure
source: typespec-azure - CI
project: internal
trigger:
branches:
include:
- main

jobs:
- job: Validate_All_Specs

Expand Down
10 changes: 5 additions & 5 deletions eng/tools/typespec-validation/src/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,10 @@ import { FormatRule } from "./rules/format.js";
import { GitDiffRule } from "./rules/git-diff.js";
import { LinterRulesetRule } from "./rules/linter-ruleset.js";
import { NpmPrefixRule } from "./rules/npm-prefix.js";
import path from "path";
import { TsvRunnerHost } from "./tsv-runner-host.js";

export async function main() {
const host = new TsvRunnerHost();
const args = process.argv.slice(2);
const options = {
folder: {
Expand All @@ -18,10 +18,10 @@ export async function main() {
},
};
const parsedArgs = parseArgs({ args, options, allowPositionals: true } as ParseArgsConfig);
const folder = parsedArgs.positionals[0].split(path.sep).join("/");
console.log("Running TypeSpecValidation on folder:", folder);
const folder = parsedArgs.positionals[0];
const absolutePath = host.normalizePath(folder);

const host = new TsvRunnerHost();
console.log("Running TypeSpecValidation on folder: ", absolutePath);

const rules = [
new FolderStructureRule(),
Expand All @@ -36,7 +36,7 @@ export async function main() {
for (let i = 0; i < rules.length; i++) {
const rule = rules[i];
console.log("\nExecuting rule: " + rule.name);
const result = await rule.execute(host, folder);
const result = await rule.execute(host, absolutePath);
if (result.stdOutput) console.log(result.stdOutput);
if (!result.success) {
success = false;
Expand Down
9 changes: 5 additions & 4 deletions eng/tools/typespec-validation/src/rules/folder-structure.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
import { globby } from "globby";
import path from "path";
import { Rule } from "../rule.js";
import { RuleResult } from "../rule-result.js";
Expand All @@ -11,6 +10,8 @@ export class FolderStructureRule implements Rule {
let success = true;
let stdOutput = "";
let errorOutput = "";
let gitRoot = host.normalizePath(await host.gitOperation(folder).revparse("--show-toplevel"));
let relativePath = path.relative(gitRoot, folder).split(path.sep).join("/");

stdOutput += `folder: ${folder}\n`;
if (!(await host.checkFileExists(folder))) {
Expand All @@ -21,7 +22,7 @@ export class FolderStructureRule implements Rule {
};
}

const tspConfigs = await globby([`${folder}/**tspconfig.*`]);
const tspConfigs = await host.globby([`${folder}/**tspconfig.*`]);
stdOutput += `config files: ${JSON.stringify(tspConfigs)}\n`;
tspConfigs.forEach((file: string) => {
if (!file.endsWith("tspconfig.yaml")) {
Expand All @@ -30,8 +31,8 @@ export class FolderStructureRule implements Rule {
}
});

// Verify top level folder is lower case
let folderStruct = folder.split("/");
// Verify top level folder is lower case and remove empty entries when splitting by slash
let folderStruct = relativePath.split("/").filter(Boolean);
if (folderStruct[1].match(/[A-Z]/g)) {
success = false;
errorOutput += `Invalid folder name. Folders under specification/ must be lower case.\n`;
Expand Down
7 changes: 4 additions & 3 deletions eng/tools/typespec-validation/src/rules/npm-prefix.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
import path from "path";
import { Rule } from "../rule.js";
import { RuleResult } from "../rule-result.js";
import { TsvHost } from "../tsv-host.js";
Expand All @@ -13,7 +12,7 @@ export class NpmPrefixRule implements Rule {
let expected_npm_prefix: string | undefined;
try {
// If spec folder is inside a git repo, returns repo root
expected_npm_prefix = path.normalize(await git.revparse("--show-toplevel"));
expected_npm_prefix = host.normalizePath(await git.revparse("--show-toplevel"));
} catch (err) {
// If spec folder is outside git repo, or if problem running git, throws error
return {
Expand All @@ -22,7 +21,9 @@ export class NpmPrefixRule implements Rule {
};
}

const actual_npm_prefix = path.normalize((await host.runCmd(`npm prefix`, folder))[1].trim());
const actual_npm_prefix = host.normalizePath(
(await host.runCmd(`npm prefix`, folder))[1].trim(),
);

let success = true;
let stdOutput =
Expand Down
Loading