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

Add public preview client for FaceAPI #21595

Closed
wants to merge 10 commits into from

Conversation

msyache
Copy link
Contributor

@msyache msyache commented Jun 4, 2021

Adding a new client package for FaceAPI public preview endpoint in Vision.Face.Preview.
Contains changes generated from the fixed in Azure/azure-rest-api-specs#14556

All SDK Contribution checklist:

This checklist is used to make sure that common guidelines for a pull request are followed.

  • Please open PR in Draft mode if it is:
    • Work in progress or not intended to be merged.
    • Encountering multiple pipeline failures and working on fixes.
  • If an SDK is being regenerated based on a new swagger spec, a link to the pull request containing these swagger spec changes has been included above.
  • I have read the contribution guidelines.
  • The pull request does not introduce breaking changes.

General Guidelines and Best Practices

  • Title of the pull request is clear and informative.
  • There are a small number of commits, each of which have an informative message. This means that previously merged commits do not appear in the history of the PR. For more information on cleaning up the commits in your PR, see this page.

Testing Guidelines

  • Pull request includes test coverage for the included changes.

SDK Generation Guidelines

  • The generate.cmd file for the SDK has been updated with the version of AutoRest, as well as the commitid of your swagger spec or link to the swagger spec, used to generate the code. (Track 2 only)
  • The *.csproj and AssemblyInfo.cs files have been updated with the new version of the SDK. Please double check nuget.org current release version.

Additional management plane SDK specific contribution checklist:

Note: Only applies to Microsoft.Azure.Management.[RP] or Azure.ResourceManager.[RP]

  • Include updated management metadata.
  • Update AzureRP.props to add/remove version info to maintain up to date API versions.

Management plane SDK Troubleshooting

  • If this is very first SDK for a services and you are adding new service folders directly under /SDK, please add new service label and/or contact assigned reviewer.

  • If the check fails at the Verify Code Generation step, please ensure:

    • Do not modify any code in generated folders.
    • Do not selectively include/remove generated files in the PR.
    • Do use generate.ps1/cmd to generate this PR instead of calling autorest directly.
      Please pay attention to the @microsoft.csharp version output after running generate.ps1. If it is lower than current released version (2.3.82), please run it again as it should pull down the latest version.

    Note: We have recently updated the PSH module called by generate.ps1 to emit additional data. This would help reduce/eliminate the Code Verification check error. Please run following command:

      `dotnet msbuild eng/mgmt.proj /t:Util /p:UtilityName=InstallPsModules`
    

Old outstanding PR cleanup

Please note:
If PRs (including draft) has been out for more than 60 days and there are no responses from our query or followups, they will be closed to maintain a concise list for our reviewers.

@check-enforcer
Copy link

check-enforcer bot commented Jun 8, 2021

This pull request is protected by Check Enforcer.

What is Check Enforcer?

Check Enforcer helps ensure all pull requests are covered by at least one check-run (typically an Azure Pipeline). When all check-runs associated with this pull request pass then Check Enforcer itself will pass.

Why am I getting this message?

You are getting this message because Check Enforcer did not detect any check-runs being associated with this pull request within five minutes. This may indicate that your pull request is not covered by any pipelines and so Check Enforcer is correctly blocking the pull request being merged.

What should I do now?

If the check-enforcer check-run is not passing and all other check-runs associated with this PR are passing (excluding license-cla) then you could try telling Check Enforcer to evaluate your pull request again. You can do this by adding a comment to this pull request as follows:
/check-enforcer evaluate
Typically evaulation only takes a few seconds. If you know that your pull request is not covered by a pipeline and this is expected you can override Check Enforcer using the following command:
/check-enforcer override
Note that using the override command triggers alerts so that follow-up investigations can occur (PRs still need to be approved as normal).

What if I am onboarding a new service?

Often, new services do not have validation pipelines associated with them. In order to bootstrap pipelines for a new service, please perform following steps:

For data-plane/track 2 SDKs Issue the following command as a pull request comment:

/azp run prepare-pipelines
This will run a pipeline that analyzes the source tree and creates the pipelines necessary to build and validate your pull request. Once the pipeline has been created you can trigger the pipeline using the following comment:
/azp run net - [service] - ci

For track 1 management-plane SDKs

Please open a separate PR and to your service SDK path in this file. Once that PR has been merged, you can re-run the pipeline to trigger the verification.

@msyache
Copy link
Contributor Author

msyache commented Jun 8, 2021

/azp run prepare-pipelines

@azure-pipelines
Copy link

Commenter does not have sufficient privileges for PR 21595 in repo Azure/azure-sdk-for-net

@msyache msyache requested a review from mitchdenny as a code owner June 8, 2021 23:46
@jsquire jsquire self-assigned this Jun 15, 2021
@jsquire jsquire self-requested a review June 15, 2021 14:03
Copy link
Member

@jsquire jsquire left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is the first time that I've seen the pattern of XX.Preview for package naming. I'd like to loop in @tg-msft and @KrzysztofCwalina for additional thoughts and feedback.

@jsquire jsquire added Client This issue points to a problem in the data-plane of the library. Cognitive - Face labels Jun 15, 2021
@tg-msft
Copy link
Member

tg-msft commented Jun 15, 2021

This is the first time that I've seen the pattern of XX.Preview for package naming. I'd like to loop in @tg-msft and @KrzysztofCwalina for additional thoughts and feedback.

We shouldn't put Preview in the package name. https://azure.github.io/azure-sdk/policies_releases.html#net describes how we indicate that something's beta/preview quality for Track 2. Even though this looks like a Track 1 package, it would still create unhelpful noise for customers on NuGet if you tried versioning your API using the package name (i.e., customers searching your service will see multiple packages, customers using your preview won't automatically upgrade to GA when available, etc.).

@msyache
Copy link
Contributor Author

msyache commented Jun 15, 2021

This is the first time that I've seen the pattern of XX.Preview for package naming. I'd like to loop in @tg-msft and @KrzysztofCwalina for additional thoughts and feedback.

We shouldn't put Preview in the package name. https://azure.github.io/azure-sdk/policies_releases.html#net describes how we indicate that something's beta/preview quality for Track 2. Even though this looks like a Track 1 package, it would still create unhelpful noise for customers on NuGet if you tried versioning your API using the package name (i.e., customers searching your service will see multiple packages, customers using your preview won't automatically upgrade to GA when available, etc.).

Thank you for the information. While the policy reference clarifies the management of preview status for the client, it seems less clear on how to manage the client versions with regards to preview API versions. The only guideline in the policy says:

Rev a minor release for each new Azure API version

Under the assumption that each API version has its own base URI and a different set of APIs, bumping the version here seems to require overwriting/deprecating the previous minor version if we were to merge to master.
Would it be a viable option if we manage the new minor release in a different branch and request release from there? Please advise on the recommended strategy here.

@tg-msft
Copy link
Member

tg-msft commented Jun 16, 2021

The right workflow generally depends on your team and service. Are you still working actively on the GA version of your client library? If not you can develop the preview in master and use hotfix branches off the GA release tag if you need to update anything. Our release pipelines also support releasing out of other branches too if it's easier to develop in a preview branch. @weshaggard is the expert on these things and can correct me if I'm totally wrong.

@msyache
Copy link
Contributor Author

msyache commented Jun 22, 2021

The best option for our service does seem to be releasing from a different branch. Updated the PR to reflect the approach.
It seems like I do not have the permission to create a branch in the master repo though. Could any reviewer create a
face/public-preview
branch and help me direct the PR to that instead of the main branch please?

@jsquire
Copy link
Member

jsquire commented Jun 23, 2021

Could any reviewer create a face/public-preview branch and help me direct the PR to that instead of the main branch please?

@msyache: I created feature/face/public-preview for you. I don't know of a way to retarget a PR in-flight; I'd recommend closing this PR, rebasing your working branch on the new preview feature branch, and then opening a new PR that targets it.

@msyache
Copy link
Contributor Author

msyache commented Jun 23, 2021

Could any reviewer create a face/public-preview branch and help me direct the PR to that instead of the main branch please?

@msyache: I created feature/face/public-preview for you. I don't know of a way to retarget a PR in-flight; I'd recommend closing this PR, rebasing your working branch on the new preview feature branch, and then opening a new PR that targets it.

Thanks Jesse. Agreed that opening a new PR would be cleaner--#22106

@msyache msyache closed this Jun 23, 2021
azure-sdk pushed a commit to azure-sdk/azure-sdk-for-net that referenced this pull request Feb 14, 2023
Release apimangement 2022-08 01 (Azure#22313)

* Release api management 2022 08 01 (Azure#21169)

* add base for 2022-08-01

* updates readme.md

* update api-version and examples

* resolve Go SDK breaking change

* update examples to fix model definition

Co-authored-by: Chenjie Shi <tadelesh.shi@live.cn>

* Adding Resolver Entities to documentation (Azure#21352)

* merging in resolver entities

* adding resolver updates

* fixed policy examples that were missing a policyId param

* fixed typo that added a nested properties prop

* fixed description for API Resolvers List, filter query

* fixed error in definitions for resolvers

* fixed example that had an incorrect response definition

* added missing json file references

* fix for linting errors

* ref fixes and undoing bad merge overwrites

* fix typo

* wiki for apis and products  (Azure#21595)

* wiki for apis and products

* prettier; fixed spellchecks

* Fixed spelling

* Updated path

Co-authored-by: changlong-liu <59815250+changlong-liu@users.noreply.github.com>

* code review changes; gihub checks fixes

* fixed conact name and paths

* added properties back

* added contract properties objects

* fixed lint

* changed example to match the definition

* prettier

* code review changes

* added paths and examples for wiki collections

* Added x-ms-pageable

* removed count

Co-authored-by: changlong-liu <59815250+changlong-liu@users.noreply.github.com>

* Add ConfirmConsentCode to APIM RP (Azure#22418)

* Update apimauthorizationproviders.json

Add ConfirmConsentCode endpoint

* Update definitions.json

* Create ApiManagementPostAuthorizationConfirmConsentCodeRequest.json

* Update definitions.json

Remove count property

* Update apimauthorizationproviders.json

* [2022-08-01] Fix Linter Errors (Azure#22537)

* linter errors

* prettier

* v2

* fix error response duplicate schema

* type object

* prettier

* sync data from current ga version

* remove duplicate parameter

* type object

---------

Co-authored-by: Chenjie Shi <tadelesh.shi@live.cn>
Co-authored-by: hoonality <92482069+hoonality@users.noreply.github.com>
Co-authored-by: malincrist <92857141+malincrist@users.noreply.github.com>
Co-authored-by: changlong-liu <59815250+changlong-liu@users.noreply.github.com>
Co-authored-by: Logan Zipkes <44794089+LFZ96@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Client This issue points to a problem in the data-plane of the library. Cognitive - Face
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants