Skip to content

Commit

Permalink
Merge feature/tokenrefreshtoptions to master (Azure#13498)
Browse files Browse the repository at this point in the history
* Prep for beta release

* Set CHANGELOG release date

* Add azure core to versioning_client (#12891)

* Update change log date (#12918)

* Ignored flaky CF tests (#12915) (#12922)

Co-authored-by: Gauri Prasad <[email protected]>

* disable flaky assert (#12793) (#12929)

Co-authored-by: Weidong Xu <[email protected]>

* Increment azure core version to 1.7.0-beta.2 (#13013)

* Skip Changelog processing for data track (#12787)

* Skip Changelog processing for data track

* Fix condition

* Update luis-authoring version from release

* ClassCastExceptionForTopQueryWithAggregate (#12633)

* FixForClassCastExceptionForTopDocumentQueryContext

Co-authored-by: Annie Liang <[email protected]>

* Adding namespace and missing exists methods (#12780)

* Add exists functionality.

* Add tests for existence.

* Add support for namespace operations.

* Add check for context.

* Fix test cases to use new test resources.

* Update README.md (#12756)

fix(maven groupId): Updated the groupId to point to the correct location.

* Not let our sample down if property 'azure.activedirectory.tenant-id' is not confugured. (#12645)

* Not let our sample down if property 'azure.activedirectory.tenant-id' is not confugured.

* Add NoLoginSecurityConfig to disable login.

* Add comment to explain what NoLoginSecurityConfig used for.

* Recover application.properties.

* Update readme to explain what 'NoLoginSecurityConfig' is used for.

Co-authored-by: Rujun Chen <[email protected]>

* Servicebus track2 readme changes 10327 (#12735)

* readme changes

* Servicebus track2 live test receive renew lock (#12737)

* separating resource between live test
* Fixing live test

* disable flaky assert (#12793)

* fix bug of auto configuration of spring boot starters (#12795)

* mgmt regen resources (#12794)

* mgmt fix todo (#12798)

* support key curve name for EC key

* use flux for inputsteam

* Mgmt: Appplatform (#12350)

* feat: add api specs

* feat: generate app platform

* add pom.xml

* Add spring interface

* fix compile error

* add implementation

* add piggymetrics source code for test

* add unit test

* update test and some impl

* add spring service api in azure

* regen app platform

* fix compile error

* fix checkstyle

* compress source code to temp file rather than memory

* rename app.deploy to app.deployments

* seperate client creation and file creation

* rename withCurrentActiveSetting to withSettingsFromActiveDeployment

* rename sourceCode param to sourceCodeFolder

* remove deployment with byte[]

* align deployment update interface with definition

* change deployment cache to settings cache

* delete tmp file when exit

* fix compile error

* change WithPublicEndpoint to WithEndpoint

* change sourceCode to sourceCodeFolder

* close inputstream and disconnect url connection

* check deployment removed

* remove resource code

* decompress source code from github

* update gitignore

* change activate in deployment to withActivation

* fix compile error

* [Event Hubs] Consolidate all javadoc codesnippet Java files into a single Java file (#12753)

* Consolidate all javadoc codesnippet Java files into a single Java file

* Fix checkstyle

* FormRecognizer Receipt design update (#12380)

* Sync eng/common directory with azure-sdk-tools repository (#12738)

* Removing bridge API for reactor. (#12827)

Co-authored-by: Hemant Tanwar <[email protected]>

* Fix single upload retry. (#12834)

* Fixes bug in buffered upload where data would be uploaded incorrectly if data did not fit exactly in the buffers (#12832)

* mgmt, add url to pom description (#12844)

* add url to pom description

* update wording

* update link in AUTH.md (#12845)

* update link in AUTH.md

* update line number

* mgmt resources fix TODOs (#12814)

* mgmt resources fix TODOs

* update logic of response handling

* update mono error

* Cache refresh for container recreate with same id (#12747)

* fix for delete and recreate collection with same name

Co-authored-by: Annie Liang <[email protected]>

* Migrate integration tests for spring-data-cosmosdb (#12609)

* add spring cosmosdb IT to sdk\cosmos tests.yml

* add test-resources.json for IT

* add default constructor for IT

* modify javadoc and code owners

* add tests.yml in azure-spring-data-cosmosdb

* modify readme.md for outdated link

* place integration test files in sdk/cosmos and rename directory path

* modify javadoc warning of @ symbol for the pipeline

* revert eng files and modify test-resources.json for IT

* Added spring integration matrix tests for Session and Strong consistency

* Enabled unit tests and integration tests for azure and emulator

* Added account host and key to emulator tests

* Reverted experimental changes. Exculded PageablePersonRepositoryIT from emulator tests

* restore file generate_overview_from_readme.py

* clear reademe.md temparorily for pipeline

* add Contributing.md

* modify version declaration in contributing.md

Co-authored-by: Kushagra Thapar <[email protected]>

* Testing for Tables Autorest Code (#12512)

* testing for Tables Autorest Code

* Update Search APIs Based on Review (#12791)

* Remove vararg APIs from IndexDocumentsBatch

* Update README codesnippets

* Enable blocking operation in batch receive (#12822)

* Enable blocking operation in batch receive

* Fix error type

* Remove unused imports

* update versions. (#12872)

* Prepping 73 release (#12873)

* Added versions and added REST docs (#12874)

* change RNTBD defaults as per learning and to be in par with .Net (#12654)

* change RNTBD defaults as per learning from customer

* reduced idle value to 1h

* Nio read attr (#12621)

* Started working on read attributes

* Figuring it out

* Progress

* Some good progress on testing attributes

* Finished tests. Added recordings

* Minor cleanup

* Fixed compiler warnings

* Fixed test failure

* Checkstyle

* Spotbugs

* PR feedback

* July patch release preparation for AppConfig, TA and FR (#12833)

* July Release for AppConfig and Text Analytics

* update Identity version and form recognizer version

* Sync eng/common directory with azure-sdk-tools repository (#12870)

* Add plugin to internal avro to add empty javadoc (#12879)

* Add missing changelogs (#12876)

* SpotBugs step to use the Maven proxy. (#12889)

* Increment package version after release of com.azure azure-ai-textanalytics (#12886)

* Increment version for storage releases (#12877)

* Remove ServiceBusMessageProcessor (#12885)

* Remove unneeded ServiceBusMessageProcessor.

* Increment package version after release of com.azure azure-data-appconfiguration (#12888)

* open to azure-core, for f.setAccessible(true); in FlatteningSerializer (#12863)

* move AzureServiceClient to fluentcore (#12908)

* Add Javadoc Escapes to README Overview (#12627)

* Add invalid Javadoc character escaping to the README overview injection

* Replace leading '@' with Javadoc safe '{@literal @}'

* Remove Azure Core README test text, updated regex to retain leading whitespace

* Increment version for formrecognizer release (#12916)

* Ignored flaky CF tests (#12915)

* Renamed azure-spring-data-cosmosdb to azure-spring-data-cosmos (#12881)

* Renamed azure-spring-data-cosmosdb to azure-spring-data-cosmos. Renamed directory structure and package structure to track 2 structure

* Fixed changelog version, contributing path

* Updating tests.yml

* Reverted safeName change and will update it in part 2

* Sync eng/common directory with azure-sdk-tools repository (#12912)

* Update versions for EH July release (#12913)

* Update versions for EH July release

* Update version_client.txt

* Added script logging enabled API to CosmosStoredProcedureRequestOptions (#12917)

* Added script logging enabled API to CosmosStoredProcedureRequestOptions

* Fixed java 8 compilation issue

* Updated getScriptLog API to decode before returning the response

* Added default value to java docs

* Creating yml file for ctl image build ci (#12926)

* creating yml file for ctl image build ci

* Update ctl-image-build.yml

Co-authored-by: James Suplizio <[email protected]>

* Revert storabge blob version in version_client.txt (#12928)

* Increment version for eventhubs releases (#12927)

* Increment package version after release of com.azure azure-messaging-eventhubs-checkpointstore-blob

* Increment package version after release of com.azure azure-messaging-eventhubs

* Use proper variable syntax (#12930)

* Increment package version after release of com.azure azure-core

* Tweaking the Java Cosmos CTL pipeline yml (#12933)

* adding goal to the maven build command

* update job

* add -am switch to maven command line

* add CONTRIBUTING.MD for azure-spring-boot (#12901)

* Increment azure core version to 1.7.0-beta.2 (#12958)

* Increment azure core version to 1.7.0-beta.2

* core management & change log

* Close message processor downstream. (#12921)

* Use dispose.

* Fixing test.

* Clean up repository resources (#12892)

* Sync eng/common directory with azure-sdk-tools repository (#12938)

* mgmt support api version detection (#12907)

* mgmt support api version detection

* fix alignment

* Create Migration Guide from Track 1 to Track 2 (#12909)

* Create Migration Guide File

* add key vault certificate permission (#12965)

* PR for EH + serializer integration (#12205)

* create draft PR

* fix object batch

* temp object serializer

* dep on core experimental

* temp

* getDeserializedObject()

* null object in object batch test

* remove old SR dep

* remove temporary interfaces

* rename objectSerializer builder method to serializer

* single class imports

* fix serializer builder javadoc

* rename abstract batch impl

* add EventDataBatchBase javadoc

* mono TryAdd

* fix modifiers

* remove send mode

* fix object batch javadoc

* partition event deserialize to async

* uncomment azure core

* javadoc syntax

* remove temp interface

* only core-experimental, not core

* checkstyle

* update partition event deserialize

* monoError for object batch

* rename objectSerializer to serializer

* add serializer null check in object batch creation

* cleanup

* Increment version for core releases (#12969)

* disable flaky assert (#12793)

* open to azure-core, for f.setAccessible(true); in FlatteningSerializer (#12863)

* Prepare Azure Core Management for release 1.0.0-beta.2

* Prepare Azure Core Management 1.0.0-beta.2 Release (#12914)

* disable flaky assert (#12793)

* open to azure-core, for f.setAccessible(true); in FlatteningSerializer (#12863)

* Prepare Azure Core Management for release 1.0.0-beta.2

Co-authored-by: Weidong Xu <[email protected]>

* Ignored flaky CF tests (#12915)

* Update CHANGELOG version to unblock release

* Increment package version after release of com.azure azure-core-management

Co-authored-by: Weidong Xu <[email protected]>
Co-authored-by: alzimmermsft <[email protected]>
Co-authored-by: Gauri Prasad <[email protected]>

* Add workaround for Checkstyle error, closes #6216 (#6593)

* Add workaround for Checkstyle error, closes #6216

Signed-off-by: Martijn Verburg <[email protected]>

* Update CONTRIBUTING.md

Updates to workaround section.

* Update CONTRIBUTING.md

Minor fix to use correct reference

Co-authored-by: Alan Zimmer <[email protected]>

* Revert "PR for EH + serializer integration (#12205)" (#12976)

This reverts commit 7d211b4699e17156bca3ccb6a5e11b9b2644b75b.

* Fix the issue of ChangeFeedProcessorCodeSnippet (#12894)

* Updated azure spring data cosmos group id and artifact id (#12925)

* Updated azure spring data cosmos group id and artifact id

* Sorted version client to alphabetical list

* Fixed tests.yml with new safename for azure spring data cosmos

* Increasing timeout for cosmos emulator builds since download step takes most of the time

* Added comments for increasing the timeout value

* Added an exception to unsupported provider methods instead of no-op'ing or returning null (#12977)

* Update ctl-image-build.yml (#12973)

* Update ctl-image-build.yml

Adding write-host to the powershell script, this will help in debugging if image doesn't  uploaded to registry successfully.

* Update ctl-image-build.yml

Adding Executing keyword in the starting of write host

* Remove search model builder classes (#12796)

* Remove search model builder classes

* Update codesnippets and readme samples

* Remove SearchFieldBase

* Add some wagon options. (#12991)

* Added idle tcp connection timeout bug where gateway connection overrides direct connection config (#12974)

* Use Varargs in Model APIs (#12878)

* Move model list APIs to use varargs

* Add missing vararg and List overloads

* Added more vararg and List overloads, add JsonGetters to List overloads

* Fix failing test

* Remove list overload from input only model

* Fix Java 8 toArray call

* Add null checking validation for vararg overloads

* Spring - Remove Intermediate Poms (#12966)

* remove intermediate poms

* remove deleted module

* add readme files

* remove useless <relativePath/>

Co-authored-by: Xiaolu Dai <[email protected]>

* Updates prefetch algorithm and test updates. (#12975)

* Remove parentConnection from link processor.

* Add comment for lock tokens on received messages.

* Using prefetch buffer.

* Add logic for emptyCreditListener when empty.

* Pass prefetch into parameter when publishing.

* Consider ReceiveMode when using prefetch so we continue to fetch.

* Add beta_tag to 1.7.0-beta.1 azure core

Co-authored-by: James Suplizio <[email protected]>
Co-authored-by: Annie Liang <[email protected]>
Co-authored-by: Annie Liang <[email protected]>
Co-authored-by: Connie Yau <[email protected]>
Co-authored-by: Justin Bertrand <[email protected]>
Co-authored-by: Rujun Chen <[email protected]>
Co-authored-by: Rujun Chen <[email protected]>
Co-authored-by: Hemant Tanwar <[email protected]>
Co-authored-by: Weidong Xu <[email protected]>
Co-authored-by: Yi Liu <[email protected]>
Co-authored-by: Tanyi Chen <[email protected]>
Co-authored-by: Srikanta <[email protected]>
Co-authored-by: Sameeksha Vaity <[email protected]>
Co-authored-by: Azure SDK Bot <[email protected]>
Co-authored-by: Hemant Tanwar <[email protected]>
Co-authored-by: Kamil Sobol <[email protected]>
Co-authored-by: Gauri Prasad <[email protected]>
Co-authored-by: Chuang <[email protected]>
Co-authored-by: Kushagra Thapar <[email protected]>
Co-authored-by: eboyd23 <[email protected]>
Co-authored-by: Alan Zimmer <[email protected]>
Co-authored-by: Vinay Gera <[email protected]>
Co-authored-by: Mohammad Derakhshani <[email protected]>
Co-authored-by: Rick Ley <[email protected]>
Co-authored-by: Shawn Fang <[email protected]>
Co-authored-by: Chidozie Ononiwu <[email protected]>
Co-authored-by: Mitch Denny <[email protected]>
Co-authored-by: Naveen Singh <[email protected]>
Co-authored-by: Daniel Jurek <[email protected]>
Co-authored-by: azure-sdk <[email protected]>
Co-authored-by: nickzhums <[email protected]>
Co-authored-by: Arthur Erlendsson <[email protected]>
Co-authored-by: Martijn Verburg <[email protected]>
Co-authored-by: Melanie Ma (MSFT) <[email protected]>
Co-authored-by: Xiaolu Dai <[email protected]>
Co-authored-by: Xiaolu Dai <[email protected]>

* Add token refresh options to identity library (#13029)

* Add change log for identity 1.1.0-beta.6 (#13030)

* Add token refresh options to identity library

* Add change log for identity 1.1.0-beta.6

* Fix inaccurate change log

* Increment package version after release of com.azure azure-identity (#13035)

* Remove token refresh options and default to 5 minutes (#13148)

* Remove token refresh options and default to 5 minutes

* Fix build errors

* Spotbugs

* Checkstyle

* refresh_timeout -> refresh_delay

* Merge master into feature/tokenrefreshoptions (#13424)

* Skip Changelog processing for data track (#12787)

* Skip Changelog processing for data track

* Fix condition

* Update luis-authoring version from release

* ClassCastExceptionForTopQueryWithAggregate (#12633)

* FixForClassCastExceptionForTopDocumentQueryContext

Co-authored-by: Annie Liang <[email protected]>

* Adding namespace and missing exists methods (#12780)

* Add exists functionality.

* Add tests for existence.

* Add support for namespace operations.

* Add check for context.

* Fix test cases to use new test resources.

* Update README.md (#12756)

fix(maven groupId): Updated the groupId to point to the correct location.

* Not let our sample down if property 'azure.activedirectory.tenant-id' is not confugured. (#12645)

* Not let our sample down if property 'azure.activedirectory.tenant-id' is not confugured.

* Add NoLoginSecurityConfig to disable login.

* Add comment to explain what NoLoginSecurityConfig used for.

* Recover application.properties.

* Update readme to explain what 'NoLoginSecurityConfig' is used for.

Co-authored-by: Rujun Chen <[email protected]>

* Servicebus track2 readme changes 10327 (#12735)

* readme changes

* Servicebus track2 live test receive renew lock (#12737)

* separating resource between live test
* Fixing live test

* disable flaky assert (#12793)

* fix bug of auto configuration of spring boot starters (#12795)

* mgmt regen resources (#12794)

* mgmt fix todo (#12798)

* support key curve name for EC key

* use flux for inputsteam

* Mgmt: Appplatform (#12350)

* feat: add api specs

* feat: generate app platform

* add pom.xml

* Add spring interface

* fix compile error

* add implementation

* add piggymetrics source code for test

* add unit test

* update test and some impl

* add spring service api in azure

* regen app platform

* fix compile error

* fix checkstyle

* compress source code to temp file rather than memory

* rename app.deploy to app.deployments

* seperate client creation and file creation

* rename withCurrentActiveSetting to withSettingsFromActiveDeployment

* rename sourceCode param to sourceCodeFolder

* remove deployment with byte[]

* align deployment update interface with definition

* change deployment cache to settings cache

* delete tmp file when exit

* fix compile error

* change WithPublicEndpoint to WithEndpoint

* change sourceCode to sourceCodeFolder

* close inputstream and disconnect url connection

* check deployment removed

* remove resource code

* decompress source code from github

* update gitignore

* change activate in deployment to withActivation

* fix compile error

* [Event Hubs] Consolidate all javadoc codesnippet Java files into a single Java file (#12753)

* Consolidate all javadoc codesnippet Java files into a single Java file

* Fix checkstyle

* FormRecognizer Receipt design update (#12380)

* Sync eng/common directory with azure-sdk-tools repository (#12738)

* Removing bridge API for reactor. (#12827)

Co-authored-by: Hemant Tanwar <[email protected]>

* Fix single upload retry. (#12834)

* Fixes bug in buffered upload where data would be uploaded incorrectly if data did not fit exactly in the buffers (#12832)

* mgmt, add url to pom description (#12844)

* add url to pom description

* update wording

* update link in AUTH.md (#12845)

* update link in AUTH.md

* update line number

* mgmt resources fix TODOs (#12814)

* mgmt resources fix TODOs

* update logic of response handling

* update mono error

* Cache refresh for container recreate with same id (#12747)

* fix for delete and recreate collection with same name

Co-authored-by: Annie Liang <[email protected]>

* Migrate integration tests for spring-data-cosmosdb (#12609)

* add spring cosmosdb IT to sdk\cosmos tests.yml

* add test-resources.json for IT

* add default constructor for IT

* modify javadoc and code owners

* add tests.yml in azure-spring-data-cosmosdb

* modify readme.md for outdated link

* place integration test files in sdk/cosmos and rename directory path

* modify javadoc warning of @ symbol for the pipeline

* revert eng files and modify test-resources.json for IT

* Added spring integration matrix tests for Session and Strong consistency

* Enabled unit tests and integration tests for azure and emulator

* Added account host and key to emulator tests

* Reverted experimental changes. Exculded PageablePersonRepositoryIT from emulator tests

* restore file generate_overview_from_readme.py

* clear reademe.md temparorily for pipeline

* add Contributing.md

* modify version declaration in contributing.md

Co-authored-by: Kushagra Thapar <[email protected]>

* Testing for Tables Autorest Code (#12512)

* testing for Tables Autorest Code

* Update Search APIs Based on Review (#12791)

* Remove vararg APIs from IndexDocumentsBatch

* Update README codesnippets

* Enable blocking operation in batch receive (#12822)

* Enable blocking operation in batch receive

* Fix error type

* Remove unused imports

* update versions. (#12872)

* Prepping 73 release (#12873)

* Added versions and added REST docs (#12874)

* change RNTBD defaults as per learning and to be in par with .Net (#12654)

* change RNTBD defaults as per learning from customer

* reduced idle value to 1h

* Nio read attr (#12621)

* Started working on read attributes

* Figuring it out

* Progress

* Some good progress on testing attributes

* Finished tests. Added recordings

* Minor cleanup

* Fixed compiler warnings

* Fixed test failure

* Checkstyle

* Spotbugs

* PR feedback

* July patch release preparation for AppConfig, TA and FR (#12833)

* July Release for AppConfig and Text Analytics

* update Identity version and form recognizer version

* Sync eng/common directory with azure-sdk-tools repository (#12870)

* Add plugin to internal avro to add empty javadoc (#12879)

* Add missing changelogs (#12876)

* SpotBugs step to use the Maven proxy. (#12889)

* Increment package version after release of com.azure azure-ai-textanalytics (#12886)

* Increment version for storage releases (#12877)

* Remove ServiceBusMessageProcessor (#12885)

* Remove unneeded ServiceBusMessageProcessor.

* Increment package version after release of com.azure azure-data-appconfiguration (#12888)

* open to azure-core, for f.setAccessible(true); in FlatteningSerializer (#12863)

* move AzureServiceClient to fluentcore (#12908)

* Add Javadoc Escapes to README Overview (#12627)

* Add invalid Javadoc character escaping to the README overview injection

* Replace leading '@' with Javadoc safe '{@literal @}'

* Remove Azure Core README test text, updated regex to retain leading whitespace

* Increment version for formrecognizer release (#12916)

* Ignored flaky CF tests (#12915)

* Renamed azure-spring-data-cosmosdb to azure-spring-data-cosmos (#12881)

* Renamed azure-spring-data-cosmosdb to azure-spring-data-cosmos. Renamed directory structure and package structure to track 2 structure

* Fixed changelog version, contributing path

* Updating tests.yml

* Reverted safeName change and will update it in part 2

* Sync eng/common directory with azure-sdk-tools repository (#12912)

* Update versions for EH July release (#12913)

* Update versions for EH July release

* Update version_client.txt

* Added script logging enabled API to CosmosStoredProcedureRequestOptions (#12917)

* Added script logging enabled API to CosmosStoredProcedureRequestOptions

* Fixed java 8 compilation issue

* Updated getScriptLog API to decode before returning the response

* Added default value to java docs

* Creating yml file for ctl image build ci (#12926)

* creating yml file for ctl image build ci

* Update ctl-image-build.yml

Co-authored-by: James Suplizio <[email protected]>

* Revert storabge blob version in version_client.txt (#12928)

* Increment version for eventhubs releases (#12927)

* Increment package version after release of com.azure azure-messaging-eventhubs-checkpointstore-blob

* Increment package version after release of com.azure azure-messaging-eventhubs

* Use proper variable syntax (#12930)

* Tweaking the Java Cosmos CTL pipeline yml (#12933)

* adding goal to the maven build command

* update job

* add -am switch to maven command line

* add CONTRIBUTING.MD for azure-spring-boot (#12901)

* Increment azure core version to 1.7.0-beta.2 (#12958)

* Increment azure core version to 1.7.0-beta.2

* core management & change log

* Close message processor downstream. (#12921)

* Use dispose.

* Fixing test.

* Clean up repository resources (#12892)

* Sync eng/common directory with azure-sdk-tools repository (#12938)

* mgmt support api version detection (#12907)

* mgmt support api version detection

* fix alignment

* Create Migration Guide from Track 1 to Track 2 (#12909)

* Create Migration Guide File

* add key vault certificate permission (#12965)

* PR for EH + serializer integration (#12205)

* create draft PR

* fix object batch

* temp object serializer

* dep on core experimental

* temp

* getDeserializedObject()

* null object in object batch test

* remove old SR dep

* remove temporary interfaces

* rename objectSerializer builder method to serializer

* single class imports

* fix serializer builder javadoc

* rename abstract batch impl

* add EventDataBatchBase javadoc

* mono TryAdd

* fix modifiers

* remove send mode

* fix object batch javadoc

* partition event deserialize to async

* uncomment azure core

* javadoc syntax

* remove temp interface

* only core-experimental, not core

* checkstyle

* update partition event deserialize

* monoError for object batch

* rename objectSerializer to serializer

* add serializer null check in object batch creation

* cleanup

* Increment version for core releases (#12969)

* disable flaky assert (#12793)

* open to azure-core, for f.setAccessible(true); in FlatteningSerializer (#12863)

* Prepare Azure Core Management for release 1.0.0-beta.2

* Prepare Azure Core Management 1.0.0-beta.2 Release (#12914)

* disable flaky assert (#12793)

* open to azure-core, for f.setAccessible(true); in FlatteningSerializer (#12863)

* Prepare Azure Core Management for release 1.0.0-beta.2

Co-authored-by: Weidong Xu <[email protected]>

* Ignored flaky CF tests (#12915)

* Update CHANGELOG version to unblock release

* Increment package version after release of com.azure azure-core-management

Co-authored-by: Weidong Xu <[email protected]>
Co-authored-by: alzimmermsft <[email protected]>
Co-authored-by: Gauri Prasad <[email protected]>

* Add workaround for Checkstyle error, closes #6216 (#6593)

* Add workaround for Checkstyle error, closes #6216

Signed-off-by: Martijn Verburg <[email protected]>

* Update CONTRIBUTING.md

Updates to workaround section.

* Update CONTRIBUTING.md

Minor fix to use correct reference

Co-authored-by: Alan Zimmer <[email protected]>

* Revert "PR for EH + serializer integration (#12205)" (#12976)

This reverts commit 7d211b4699e17156bca3ccb6a5e11b9b2644b75b.

* Fix the issue of ChangeFeedProcessorCodeSnippet (#12894)

* Updated azure spring data cosmos group id and artifact id (#12925)

* Updated azure spring data cosmos group id and artifact id

* Sorted version client to alphabetical list

* Fixed tests.yml with new safename for azure spring data cosmos

* Increasing timeout for cosmos emulator builds since download step takes most of the time

* Added comments for increasing the timeout value

* Added an exception to unsupported provider methods instead of no-op'ing or returning null (#12977)

* Update ctl-image-build.yml (#12973)

* Update ctl-image-build.yml

Adding write-host to the powershell script, this will help in debugging if image doesn't  uploaded to registry successfully.

* Update ctl-image-build.yml

Adding Executing keyword in the starting of write host

* Remove search model builder classes (#12796)

* Remove search model builder classes

* Update codesnippets and readme samples

* Remove SearchFieldBase

* Add some wagon options. (#12991)

* Added idle tcp connection timeout bug where gateway connection overrides direct connection config (#12974)

* Use Varargs in Model APIs (#12878)

* Move model list APIs to use varargs

* Add missing vararg and List overloads

* Added more vararg and List overloads, add JsonGetters to List overloads

* Fix failing test

* Remove list overload from input only model

* Fix Java 8 toArray call

* Add null checking validation for vararg overloads

* Spring - Remove Intermediate Poms (#12966)

* remove intermediate poms

* remove deleted module

* add readme files

* remove useless <relativePath/>

Co-authored-by: Xiaolu Dai <[email protected]>

* Updates prefetch algorithm and test updates. (#12975)

* Remove parentConnection from link processor.

* Add comment for lock tokens on received messages.

* Using prefetch buffer.

* Add logic for emptyCreditListener when empty.

* Pass prefetch into parameter when publishing.

* Consider ReceiveMode when using prefetch so we continue to fetch.

* Update to deal with use of Spring BOM in samples (#12784)

* Update to deal with use of Spring BOM in samples

* Remove defunct superfluous parent entry

* Update for missing tag on non-sdk dependencies

* Readme (#12972)

* Readme

* PR feedback

* updates

* Update CHANGELOG and README for preview 4. (#13026)

* Changelog updates.

* Update README with current version.

* Update identity version.

* Move AzureTestWatcher into azure-core-test (#12989)

* Move azure-test-watcher into azure-core-test

* Remove references to azure-test-watcher

* Modify javadoc check on spring annotation in README.md (#13012)

* Modify javadoc check on spring annotation in README.md

* Update generate_overview_from_readme.py

Relax regex pattern to match all `@` symbols and replacing them with `{@literal @}`. This is safe as Javadoc generation will display all `{@literal @}` as `@`, retaining current display behavior while fixing all erroneous attempts of Javadoc using `@` as a tag reference.

Co-authored-by: Alan Zimmer <[email protected]>

* add readme of spring data cosmos (#12964)

* add README.md for spring-data-cosmos project

* add embedme tag for README

* modify checkstyle errors

* modify README to fit SDK repo

Co-authored-by: Kushagra Thapar <[email protected]>

* Sync eng/common directory with azure-sdk-tools repository (#13027)

* Renamed getSyncSecretClientCodeSnippets() to getSecretClient() to be consistent with the samples for SecretAsyncClient. (#12837)

* Corrected broken link in README and sample with error. (#12464)

* Fix incorrect comments. (#12754)

* Fix incorrect comments. Looks like the comments were copied over from KeyOperation and the type name was fixed but the values weren't

* Fix more comments

* Address feedback

* Sync eng/common directory with azure-sdk-tools repository (#13034)

* Review Before Releasing Azure Cognitive Search (#13033)

* Added missing module-info export, added missing package-info, added missing linting annotations, and updated package-info Javadocs

* Clean up Javadocs

* Updates from comments, added to CHANGELOG

* increment version after azure-identity 1.1.0-beta.6 release (#13037)

* increment version after azure-identity 1.1.0-beta.6 release

* Update readme to 1.0.8

* [BUG] Cosmos | Addresses GitHub issue #10401 : Operator called default onErrorDropped (#12836)

* Port from v4

* Corrected package misspelling in log4j.properties and removed System.exit from Main.java

* Responded to code review comments

* Updated sdk/cosmos/README.md with info on using system properties to modify default Direct TCP options

* Removed file that's been deleted on origin/master: sdk/cosmos/README.md

* Resolved issue (see changes to RntbdTransportClient), disambiguated two messages (see changes to RntbdClientChannelPool), and optimized imports.

* Refinements to exception handling designed to eliminate onErrorDropped errors.

* RntbdTransportClient.Options constructor now respects the value of DirectConnectionConfig.idleEndpointTimeout.

* Testing a new possible fix

* Another fix attempt

* Updated code comment

* Updated code comment

* Testing a revised 'fix'

* Updated thread name prefix string.

* Tweakead the implementation before creating a PR.

* Fix compilation error on conflict resolution

* Fixed merge issue

Co-authored-by: Kushagra Thapar <[email protected]>

* modify build command to build the whole project (#12992)

* mgmt regen appservice and compute (#13022)

* add mergeContext to merge user provided context and default context

* regen appservice

* regen compute

* manual fix

* fix checkstyle

* add correlation id back when use msal (#13070)

Co-authored-by: Xiaolu Dai <[email protected]>

* Kusto: generate package-2020-06-14 (#13071)

* update kusto module

* generate package-2020-06-14

* fix compile errors

* remove duplicate plugin definitions (#13086)

Co-authored-by: Xiaolu Dai <[email protected]>

* Fixed release date (#13087)

* Fixed block issue and tier issue (#12978)

* Azure Tables Sync and Async Code Snippets (#12169)

* Azure Tables Sync and Async Code Snippets

* Updated CHANGELOG and README files. (#13041)

* Remove Container throughput default value from SDK (#13125)

Signed-off-by: Jack Lu <[email protected]>

* modify package name from btoc to b2c (#13126)

* Increment package version after release of com.azure azure-search-documents (#13129)

* Refactor Formrecognizer samples (#12987)

* 4.2.0 release (#13145)

* 4.2.0 release

Co-authored-by: Annie Liang <[email protected]>

* Fix field order to preserve service side field ordering (#13147)

* Increment package version after release of com.azure azure-cosmos (#13149)

* Artifact grouping (#10564)

* Artifact segregation (#10490)

* Bump package versions for test release. (#13157)

* mgmt doc on LRO beginCreate/beginDelete (#12899)

* support beginCreate beginDelete for GenericResource

* use generic type

* doc (preview) for LRO

* Update README.md

* rename to getActivationResponse

* mgmt, update user-agent (#13085)

* update user-agent

* fix for toReactorContext issue for older azure-core

* copy UserAgentUtil until keyvault data uses 1.6.0 azure-core

* read version from properties prepared by maven

* Sync eng/common directory with azure-sdk-tools repository (#13062)

* Support AllIgnoreCase and IgnoreCase keywords in Cosmos (#13128)

* New feature, support AllIgnoreCase and IgnoreCase keywords in Cosmos database to ignore case query.

* added findByXXXIgnoreCase testcase

* Upload incorrect length (#13144)

* Fixed a couple bugs

* CI

* CI

* CI

* Nio javadocs (#13150)

* Updated lots of docs

* Added javadocs to AzurePath

* Added docs for all parameters passed to methods

* Small fixes

* CI

* Implemented ORS List Blobs (#13096)

* Regenerated base code and all tests passed (#13153)

* regenerated base code and all tests passed now, added service API version 3.1-preview.1 and updates tests

* Update Additional Modules in keyvault/ci.yml (#13204)

* Update for bannedDependency includes and beta_ tags (#13211)

* Update for bannedDependency includes and beta_ tags

* Update comment to remove sentence fragment

* Update targeted doc-warden version (#13202)

* target newer version of doc-warden

* Mgmt Appplatform: custom domain, certificate and samples (#13127)

* add interface for left api

* add impl

* add test for custom domain

* update specs

* regen

* fix compile error

* add app platform sample

* add samples.json remaining wrong filepath

* fix checkstyle

* fix checkstyle

* disconnect in finally

* Add resourcemanager CI configuration. (#13224)

* Increment version for keyvault releases (#13219)

* Increment package version after release of com.azure azure-security-keyvault-secrets

* Increment package version after release of com.azure azure-security-keyvault-certificates

* Increment package version after release of com.azure azure-security-keyvault-keys

* Increment package version for unreleased dependency after release of com.azure azure-security-keyvault-keys

Co-authored-by: Victor Colin Amador <[email protected]>

* Increment version for core releases (#13220)

* Prepare release for serialization modules (#13205)

* Prepare release for serialization modules

* Ignored flaky CF tests (#12915)

* disable flaky assert (#12793)

Co-authored-by: Gauri Prasad <[email protected]>
Co-authored-by: Weidong Xu <[email protected]>

* Update CHANGELOGs to UTC current day

* Increment package version after release of com.azure azure-core-serializer-json-gson

* Increment package version after release of com.azure azure-core-serializer-json-jackson

* Increment package version after release of com.azure azure-core-serializer-avro-jackson

* Increment package version after release of com.azure azure-core-serializer-avro-apache

Co-authored-by: Alan Zimmer <[email protected]>
Co-authored-by: Gauri Prasad <[email protected]>
Co-authored-by: Weidong Xu <[email protected]>

* mgmt, fix code bug (#13227)

* fix code bug

* update record

* mgmt, remove 404 in response (#13228)

* remove 404 in response

* add test

* HDInsight: regenerate package-2018-06-01-preview (#13231)

* HDInsight: regenerate package-2018-06-01-preview

* update pom

* Support web apps for oauth based credentials (#13151)

* Fix AuthorizationCodeCredential to support credential

* Skip integration tests

* unused imports

* Add same settings to InteractiveBrowserCredential

* Skip live tests again

* Checkstyle

* Checkstyle: line too long

* Revert integration test change

* Add some changelog

* Improve change log

* Fix IdentityClient ctr

* Fix javadoc

* Added code for tag conditions (#13090)

* Add createOrUpdateSchemaGroup operation (#13243)

* Update swagger.json

* add description to etag property

add description to etag property to indicate read-only purposes.

* Update spring data cosmos to track2 cosmos SDK v4 dependency (#13229)

* Updated spring-data-cosmos to cosmos V4 dependency

* Updated CosmosDbUtils name

* Updated CosmosDB* CosmosDb* to Cosmos* class names for rebranding

* Fixed readme and code snippets

* Removed unused imports

* Fixed code snippets because of unused removed import:

* Cosmos v4 encryption (#9984)

* encryption draft

* added sample code

* undo changes for bom

* encryption and storing key in cosmos container

* minor cleanup

* minor cleanup

* added back removed files

* address code review comments

* decrypt on write as well

* review comments

* code review

* spotbug issues

* checkstyle rules

* fixed checkstyle

* code style rule

* infra update

* fixed typo

* fixed gate ci

* pom file

* dependency fix

* code review

* removed bcprov-ext-jdk15on

* code review comment

* code review comment addressed

* fixed version mismatch

* code review comments

* readme

* readme update

* readme update

* readme update

* changelog added

* readme update

* one word

* readme verifier skip

* run only unit tests in unit test phase

* minor test fix

* update

* version update

* fixed a few tests

* fixed test

* fix NPE

* encryption followup PR - separate CI (#13270)

* added TODO

* addressed code review

* clean up readme

* separate CI

* Fixed module info (#13260)

* Confirmed support for static website properties (#13255)

* Implemented SAS for STG 73 (#13244)

* Quick Query Input Stream Filter (#13210)

* support multiple database in azure-spring-data-cosmos (#13197)

* support multiple database in azure-spring-data-cosmos

* Re-exanding parameters

Co-authored-by: unknown <[email protected]>
Co-authored-by: Kushagra Thapar <[email protected]>

* Added support for blob rehydrate priority on blob properties (#13256)

* Release prep (#13299)

* Sync eng/common directory with azure-sdk-tools repository (#13223)

* Increment package version storage 461695 (#13303)

* Increment package version after release of com.azure azure-storage-blob-nio

* Reverted nio to rely on current blobs

* Added nio to jacoco

Co-authored-by: azure-sdk <[email protected]>

* Attach README.md and CHANGELOG.md as artifacts (#13259)

* Try out build helper.

* Remove copy steps, don't think they are necessary now.

* Add changelog for perf-test-core.

* Allow skip on missing files.

* Putting missing changelogs and readmes in.

* Remove config option, add content issue exclusion.

* Single result queries (#13251)

* add support for single result queries. Works for both normal and reactive repositories.

* fix test order issue where other contact test removes container

* fix references to renamed classes. Fix checkstyle issues

* add unit test coverae for CosmosQuery get execution methods. Address code review feedback.

* Add changelog to benchmark (#13309)

* Add changelog to benchmark

* Remove the duplicate release history release history

* Fix the filter pattern in stage-artifacts (#13312)

* Increment package version after release of com.azure azure-sdk-template (#13311)

* non-beta template release (#13313)

* Increment package version after release of com.azure azure-sdk-template (#13314)

* Fixed flaky test with or clause (#13300)

* mgmt, if service says 404 is error, it is error (#13230)

* mgmt, prepare for shared SerializerAdapter (#13320)

* upgrade gulp to 4 (#13325)

* Update msal4j and msal4j extension version (#12540)

* Upgrade msal extensions to 0.2.0

* Bump msal version everywhere

* Address readme feedback

* Increment identity version after 1.0.9 release (master)

* Add change log to storage perf

* Exclude slf4j-log4j12 from msal extensions

* encryption: no logic change, only minor cleanup, docs, style, etc (#13306)

* minor cleanup

* minor cleanup

* static field name correction, fixed pre-condition check

* Allow Long as ID type in Entity for Cosmos DB (#13321)

* Allow Long as ID type in Entity for Cosmos DB

* Unified processing of ID type conversion and added test cases
https://github.com/Azure/azure-sdk-for-java/issues/12712

* Updated code smell

* Updated code smell

* Updated getStringIDValue API to return String instead of Object

Co-authored-by: Kushagra Thapar <[email protected]>

* Added support to seal an append blob (#13335)

* Fixes broken links in azure-batch and eventhubs-eph README (#13334)

* Fix broken link in azure-batch.

* Fix broken link in eventhubs/eph README.

* Consolidate behavior of options (#13339)

* Fixed checkstyle EnforceFinalFieldsCheck violations in KeyVault classes (#13323)

* Addressed checkstyle violations.

* Removed checkstyle `EnforceFinalFieldsCheck` suppressions for KeyVault classes.

* Removed unused import on CreateEcKeyOptions.

* Add support for context passing in FormRecognizer (#13324)

* Live test fix (#13207)

* Live test fix

* Added some logging to undelete

* Added recording

* Added slf4j

* Tags are eventually consistent

* Enabled debug logging

* https

* Trying a sleep

* More logging

* Logging for listing tests

* Undid some logging. Removed versioning from arm template

* Created a separate account in the arm template for accounts with versioning

* Fixed arm template

* Fixed find blobs marker

* Add changelog for azure-spring-boot-test-core (#13347)

* Fixed flaky test with request timeout exception (#13342)

* Fixed flaky test with request timeout exception. Also fixed user agent string generation

* Excluded PageablePersonRepositoryIT from emulator tests

* fix for debug level (#13346)

Co-authored-by: Annie Liang <[email protected]>

* Merging back Tracer PR without conditional check on withContext() (#12867)

* initial commit

* changing sample

* adding query api tracer support

* reverting change for jaeger ui local testing

* adding tracers in trigger udf and sproc

* adding test case and refactoring code

* refactoring code with PR ready version

* ending span on doOnComplete

* resolving error

* perf improvement

* fixing build error

* resolving merge conflict

* check non opentelementry jar non existence in starting of all api

* fixing checkstyle

* resolving comments

* check style fix as per java 8

* adding azure-core-tracing-opentelemetry in test scope

* build error fix

* test failure fix

* test fix

* complie error fix

* removing query text from tracer

* code formating change and some comment resolution

* resolving comments

* moving AZ_TRACING_NAMESPACE_KEY to context from span attribute

* updating core opentelementry jar

* Tracer code without conditional check for withContext

* formating chage

* formating chage

* resolving comments

* build error fix

* resolving comment

* resolving comments

* resolving comment

* resolving comment

* removing extra method

* removing tets dependency

* adding span attribute unit test

* resolving comments

* resolving comments

* Fix how the custom proxy handler is added to the ChannelPipeline to ensure the connection can be reused (#13304)

* Remove Jackson Avro from build and release steps (#13383)

* Mgmt Container Instance migration and update (#13371)

* move aci from azure-libraries

* update pom

* refactor namespace

* update api-specs

* regen aci

* refactor manager

* remove method beta

* fix models type

* fix manager and some import error

* fix compile error

* add aci in azure

* fix compile error

* move sample

* fix compile error

* update api version

* regen

* update manager dependency

* remove inner

* regen

* fix compile error

* add subnet delegation

* add virtual network interface

* add test for virtual network

* add session record for virtual network

* fix test error

* update session-record

* format

* format azure package

* auto fix some checkstyle

* fix verify error

* change sample test to live only

* add withExistingNetworkProfile and withNewNetworkProfileOnExistingVirtualNetwork

* fix compile error

* remove Beta

* remove unused import

* fix checkstyle

* Spring migration - Spring Data Gremlin (#12581)

* add spring-data-gremlin

* fix build errors

* add sample

* fix README.md

* change spring-data-gremlin to current version in springboot

* fix build

* fix build

* change version tag for spring-data-gremlin from current to dependency

* change back package name

* suppress checkstyles

* add -X flag

* try to fix readme

* try to fix javadoc

* try to suppress attach-javadoc warnings for now

* fix ci build

* change module directory

* add update version tag for spring-data-gremlin in samples

* empty readme.md for now

* revert readme file

* fix ci group id

* change gremlin group id / artifact id

* add changelog files

* fix ci.yml files

* correct azure-spring-data-gremlin artifact id / group id in README file

Co-authored-by: Xiaolu Dai <[email protected]>

* Changed to use reactive test class StepVerifier to confirm test result (#13370)

* Allow Long as ID type in Entity for Cosmos DB

* Unified processing of ID type conversion and added test cases
https://github.com/Azure/azure-sdk-for-java/issues/12712

* Updated code smell

* Updated code smell

* Updated getStringIDValue API to return String instead of Object

* Changed to use reactive test class StepVerifier to confirm test result; https://github.com/Azure/azure-sdk-for-java/issues/12712

* Optimize use case logic

Co-authored-by: Kushagra Thapar <[email protected]>

* escaping querying with IN clause #12720  (#13327)

* escaping querying with IN clause #12720

Signed-off-by: Jack Lu <[email protected]>

* modify


Signed-off-by: Jack Lu <[email protected]>

* modify

Signed-off-by: Jack Lu <[email protected]>

* modify style

* Optimized code

* Optimized code

* Optimized code

* Optimized code

* Use msiexec to install Cosmos emulator. (#13405)

* Use msiexec to install Cosmos emulator.

* Update start parameters.

* Use PowerShell options.

* Duplicate -NoUI switch.

* Try a 10 minute timeout for emulator start-up.

* Fix RecordNetworkCallPolicy from improperly redacting XML Value nodes when outside of the context of UserDelegationKeys (#13395)

* Update PagedFluxCore Javadoc Code Snippets (#13393)

* Update PagedFluxCore samples

* Updated PagedFluxBase Javadoc codesnippets

* Update OffsetDateTime Handling during Deserialization (#13340)

* Add OffsetDateTime deserializer and update JacksonAdapter to use the new deserializer

* Removed package private static

* Add managed identity client id config in DAC (#13351)

* Add managed identity client id config in DAC

* Read default from environment variable

* Add more javadoc

* Pass tenant id to shared token cache in DAC

* Checkstyle: cotr javadoc

* Add change log

* Identity API updates July 2020 (#13154)

* Fix form recognizer merge error

* Integrate authentication record in SharedTokenCacheCredential (#13425)

Co-authored-by: James Suplizio <[email protected]>
Co-authored-by: Annie Liang <[email protected]>
Co-authored-by: Annie Liang <[email protected]>
Co-authored-by: Connie Yau <[email protected]>
Co-authored-by: Justin Bertrand <[email protected]>
Co-authored-by: Rujun Chen <[email protected]>
Co-authored-by: Rujun Chen <[email protected]>
Co-authored-by: Hemant Tanwar <[email protected]>
Co-authored-by: Weidong Xu <[email protected]>
Co-authored-by: Yi Liu <[email protected]>
Co-authored-by: Tanyi Chen <[email protected]>
Co-authored-by: Srikanta <[email protected]>
Co-authored-by: Sameeksha Vaity <[email protected]>
Co-authored-by: Azure SDK Bot <[email protected]>
Co-authored-by: Hemant Tanwar <[email protected]>
Co-authored-by: Kamil Sobol <[email protected]>
Co-authored-by: Gauri Prasad <[email protected]>
Co-authored-by: Chuang <[email protected]>
Co-authored-by: Kushagra Thapar <[email protected]>
Co-authored-by: eboyd23 <[email protected]>
Co-authored-by: Alan Zimmer <[email protected]>
Co-authored-by: Vinay Gera <[email protected]>
Co-authored-by: Mohammad Derakhshani <[email protected]>
Co-authored-by: Rick Ley <[email protected]>
Co-authored-by: Shawn Fang <[email protected]>
Co-authored-by: Chidozie Ononiwu <[email protected]>
Co-authored-by: Mitch Denny <[email protected]>
Co-authored-by: Naveen Singh <[email protected]>
Co-authored-by: Daniel Jurek <[email protected]>
Co-authored-by: nickzhums <[email protected]>
Co-authored-by: Arthur Erlendsson <[email protected]>
Co-authored-by: Martijn Verburg <[email protected]>
Co-authored-by: Melanie Ma (MSFT) <[email protected]>
Co-authored-by: Xiaolu Dai <[email protected]>
Co-authored-by: Xiaolu Dai <[email protected]>
Co-authored-by: vcolin7 <[email protected]>
Co-authored-by: Saurabh Singh <[email protected]>
Co-authored-by: David Noble <[email protected]>
Co-authored-by: Sima Zhu <[email protected]>
Co-authored-by: Jack Lu <[email protected]>
Co-authored-by: M <[email protected]>
Co-authored-by: Scott Beddall <[email protected]>
Co-authored-by: Eric Lam (MSFT) <[email protected]>
Co-authored-by: loveyzhou <[email protected]>
Co-authored-by: unknown <[email protected]>
Co-authored-by: azure-sdk <[email protected]>
Co-authored-by: Eric Slater <[email protected]>

* Prepare azure core for 1.7.0-beta.2 release (#13428)

* Add changelog to core 1.7.0-beta.2 (#13443)

* Prepare azure core for 1.7.0-beta.2 release

* Add changelog

* Update changelog date for azure-core 1.7.0-beta.2

* Increment package version after release of com.azure azure-core (#13455)

* Increment version for core release 1.7.0-beta.2

* update beta core versions (#13462)

* Increment package version after release of com.azure azure-identity (#13471)

* Replace identity with feature branch

* Update identity versions everywhere

* reset changes in cosmos & form recognizer

* Reset merge errors

* Reset tables

* Reset latest cosmos changes

* Fix azure-core change log merge error

* Use beta_ versions in necessary modules only

* Spring boot doesn't need beta_

* Identity current version should 1.1.0-beta.8

* Use current for core & identity instead of beta_

* Use unreleased dependency

* Remove unreleased reference in event hubs

Co-authored-by: alzimmermsft <[email protected]>
Co-authored-by: Gauri Prasad <[email protected]>
Co-authored-by: Weidong Xu <[email protected]>
Co-authored-by: James Suplizio <[email protected]>
Co-authored-by: Annie Liang <[email protected]>
Co-authored-by: Annie Liang <[email protected]>
Co-authored-by: Connie Yau <[email protected]>
Co-authored-by: Justin Bertrand <[email protected]>
Co-authored-by: Rujun Chen <[email protected]>
Co-authored-by: Rujun Chen <[email protected]>
Co-authored-by: Hemant Tanwar <[email protected]>
Co-authored-by: Yi Liu <[email protected]>
Co-authored-by: Tanyi Chen <[email protected]>
Co-authored-by: Srikanta <[email protected]>
Co-authored-by: Sameeksha Vaity <[email protected]>
Co-authored-by: Azure SDK Bot <[email protected]>
Co-authored-by: Hemant Tanwar <[email protected]>
Co-authored-by: Kamil Sobol <[email protected]>
Co-authored-by: Chuang <[email protected]>
Co-authored-by: Kushagra Thapar <[email protected]>
Co-authored-by: eboyd23 <[email protected]>
Co-authored-by: Vinay Gera <[email protected]>
Co-authored-by: Mohammad Derakhshani <[email protected]>
Co-authored-by: Rick Ley <[email protected]>
Co-authored-by: Shawn Fang <[email protected]>
Co-authored-by: Chidozie Ononiwu <[email protected]>
Co-authored-by: Mitch Denny <[email protected]>
Co-authored-by: Naveen Singh <[email protected]>
Co-authored-by: Daniel Jurek <[email protected]>
Co-authored-by: azure-sdk <[email protected]>
Co-authored-by: nickzhums <[email protected]>
Co-authored-by: Arthur Erlendsson <[email protected]>
Co-authored-by: Martijn Verburg <[email protected]>
Co-authored-by: Melanie Ma (MSFT) <[email protected]>
Co-authored-by: Xiaolu Dai <[email protected]>
Co-authored-by: Xiaolu Dai <[email protected]>
Co-authored-by: vcolin7 <[email protected]>
Co-authored-by: Saurabh Singh <[email protected]>
Co-authored-by: David Noble <[email protected]>
Co-authored-by: Sima Zhu <[email protected]>
Co-authored-by: Jack Lu <[email protected]>
Co-authored-by: M <[email protected]>
Co-authored-by: Scott Beddall <[email protected]>
Co-authored-by: Eric Lam (MSFT) <[email protected]>
Co-authored-by: loveyzhou <[email protected]>
Co-authored-by: unknown <[email protected]>
Co-authored-by: Eric Slater <[email protected]>
  • Loading branch information
Show file tree
Hide file tree
Showing 22 changed files with 181 additions and 258 deletions.
2 changes: 1 addition & 1 deletion eng/jacoco-test-coverage/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -134,7 +134,7 @@
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-identity</artifactId>
<version>1.1.0-beta.7</version> <!-- {x-version-update;com.azure:azure-identity;current} -->
<version>1.1.0-beta.8</version> <!-- {x-version-update;com.azure:azure-identity;current} -->
</dependency>
<dependency>
<groupId>com.azure</groupId>
Expand Down
4 changes: 2 additions & 2 deletions eng/versioning/version_client.txt
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ com.azure:azure-data-schemaregistry;1.0.0-beta.2;1.0.0-beta.3
com.azure:azure-data-schemaregistry-avro;1.0.0-beta.2;1.0.0-beta.3
com.azure:azure-data-tables;1.0.0-beta.1;1.0.0-beta.1
com.azure:azure-e2e;1.0.0-beta.1;1.0.0-beta.1
com.azure:azure-identity;1.0.9;1.1.0-beta.7
com.azure:azure-identity;1.0.9;1.1.0-beta.8
com.azure:azure-identity-perf;1.0.0-beta.1;1.0.0-beta.1
com.azure:azure-messaging-eventhubs;5.1.2;5.2.0-beta.1
com.azure:azure-messaging-eventhubs-checkpointstore-blob;1.1.2;1.2.0-beta.2
Expand Down Expand Up @@ -75,7 +75,7 @@ com.microsoft.azure:spring-data-cosmosdb;3.0.0-beta.1;3.0.0-beta.1
# Format;
# unreleased_<groupId>:<artifactId>;dependency-version
# note: The unreleased dependencies will not be manipulated with the automatic PR creation code.

unreleased_com.azure:azure-core;1.7.0-beta.3
unreleased_com.azure:azure-core-test;1.4.0-beta.1
unreleased_com.azure:azure-messaging-servicebus;7.0.0-beta.4
unreleased_com.azure:azure-security-keyvault-keys;4.2.0-beta.6
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -107,8 +107,7 @@ public void teardown() {
@Test
public void authorizesSasToken() {
// Arrange
// Subtracting two minutes because the AccessToken does this internally.
final Date expectedDate = Date.from(validUntil.minusMinutes(2).toInstant());
final Date expectedDate = Date.from(validUntil.toInstant());
final ClaimsBasedSecurityChannel cbsChannel = new ClaimsBasedSecurityChannel(Mono.just(requestResponseChannel),
tokenCredential, CbsAuthorizationType.SHARED_ACCESS_SIGNATURE, options);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ public class AccessToken {
*/
public AccessToken(String token, OffsetDateTime expiresAt) {
this.token = token;
this.expiresAt = expiresAt.minusMinutes(2); // 2 minutes before token expires
this.expiresAt = expiresAt;
}

/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,53 +3,139 @@

package com.azure.core.credential;

import reactor.core.publisher.FluxSink;
import reactor.core.publisher.FluxSink.OverflowStrategy;
import com.azure.core.util.logging.ClientLogger;
import reactor.core.publisher.Mono;
import reactor.core.publisher.ReplayProcessor;
import reactor.core.publisher.MonoProcessor;

import java.util.concurrent.atomic.AtomicBoolean;
import java.time.Duration;
import java.time.OffsetDateTime;
import java.util.concurrent.atomic.AtomicReference;
import java.util.function.Predicate;
import java.util.function.Supplier;

/**
* A token cache that supports caching a token and refreshing it.
*/
public class SimpleTokenCache {
private static final int REFRESH_TIMEOUT_SECONDS = 30;

private final AtomicBoolean wip;
private AccessToken cache;
private final ReplayProcessor<AccessToken> emitterProcessor = ReplayProcessor.create(1);
private final FluxSink<AccessToken> sink = emitterProcessor.sink(OverflowStrategy.BUFFER);
// The delay after a refresh to attempt another token refresh
private static final Duration REFRESH_DELAY = Duration.ofSeconds(30);
// the offset before token expiry to attempt proactive token refresh
private static final Duration REFRESH_OFFSET = Duration.ofMinutes(5);
private final AtomicReference<MonoProcessor<AccessToken>> wip;
private volatile AccessToken cache;
private volatile OffsetDateTime nextTokenRefresh = OffsetDateTime.now();
private final Supplier<Mono<AccessToken>> tokenSupplier;
private final Predicate<AccessToken> shouldRefresh;
private final ClientLogger logger = new ClientLogger(SimpleTokenCache.class);

/**
* Creates an instance of RefreshableTokenCredential with default scheme "Bearer".
*
* @param tokenSupplier a method to get a new token
*/
public SimpleTokenCache(Supplier<Mono<AccessToken>> tokenSupplier) {
this.wip = new AtomicBoolean(false);
this.wip = new AtomicReference<>();
this.tokenSupplier = tokenSupplier;
this.shouldRefresh = accessToken -> OffsetDateTime.now()
.isAfter(accessToken.getExpiresAt().minus(REFRESH_OFFSET));
}

/**
* Asynchronously get a token from either the cache or replenish the cache with a new token.
* @return a Publisher that emits an AccessToken
*/
public Mono<AccessToken> getToken() {
if (cache != null && !cache.isExpired()) {
return Mono.just(cache);
}
return Mono.defer(() -> {
if (!wip.getAndSet(true)) {
return tokenSupplier.get().doOnNext(ac -> cache = ac)
.doOnNext(sink::next)
.doOnError(sink::error)
.doOnTerminate(() -> wip.set(false));
} else {
return emitterProcessor.next();
try {
if (wip.compareAndSet(null, MonoProcessor.create())) {
final MonoProcessor<AccessToken> monoProcessor = wip.get();
OffsetDateTime now = OffsetDateTime.now();
Mono<AccessToken> tokenRefresh;
Mono<AccessToken> fallback;
if (cache != null && !shouldRefresh.test(cache)) {
// fresh cache & no need to refresh
tokenRefresh = Mono.empty();
fallback = Mono.just(cache);
} else if (cache == null || cache.isExpired()) {
// no token to use
if (now.isAfter(nextTokenRefresh)) {
// refresh immediately
tokenRefresh = Mono.defer(tokenSupplier);
} else {
// wait for timeout, then refresh
tokenRefresh = Mono.defer(tokenSupplier)
.delaySubscription(Duration.between(now, nextTokenRefresh));
}
// cache doesn't exist or expired, no fallback
fallback = Mono.empty();
} else {
// token available, but close to expiry
if (now.isAfter(nextTokenRefresh)) {
// refresh immediately
tokenRefresh = Mono.defer(tokenSupplier);
} else {
// still in timeout, do not refresh
tokenRefresh = Mono.empty();
}
// cache hasn't expired, ignore refresh error this time
fallback = Mono.just(cache);
}
return tokenRefresh
.materialize()
.flatMap(signal -> {
AccessToken accessToken = signal.get();
Throwable error = signal.getThrowable();
if (signal.isOnNext() && accessToken != null) { // SUCCESS
logger.info(refreshLog(cache, now, "Acquired a new access token"));
cache = accessToken;
monoProcessor.onNext(accessToken);
monoProcessor.onComplete();
nextTokenRefresh = OffsetDateTime.now().plus(REFRESH_DELAY);
return Mono.just(accessToken);
} else if (signal.isOnError() && error != null) { // ERROR
logger.error(refreshLog(cache, now, "Failed to acquire a new access token"));
nextTokenRefresh = OffsetDateTime.now().plus(REFRESH_DELAY);
return fallback.switchIfEmpty(Mono.error(error));
} else { // NO REFRESH
monoProcessor.onComplete();
return fallback;
}
})
.doOnError(monoProcessor::onError)
.doOnTerminate(() -> wip.set(null));
} else if (cache != null && !cache.isExpired()) {
// another thread might be refreshing the token proactively, but the current token is still valid
return Mono.just(cache);
} else {
// another thread is definitely refreshing the expired token
MonoProcessor<AccessToken> monoProcessor = wip.get();
if (monoProcessor == null) {
// the refreshing thread has finished
return Mono.just(cache);
} else {
// wait for refreshing thread to finish but defer to updated cache in case just missed onNext()
return monoProcessor.switchIfEmpty(Mono.defer(() -> Mono.just(cache)));
}
}
} catch (Throwable t) {
return Mono.error(t);
}
});
}

private String refreshLog(AccessToken cache, OffsetDateTime now, String log) {
StringBuilder info = new StringBuilder(log);
if (cache == null) {
info.append(".");
} else {
Duration tte = Duration.between(now, cache.getExpiresAt());
info.append(" at ").append(tte.abs().getSeconds()).append(" seconds ")
.append(tte.isNegative() ? "after" : "before").append(" expiry. ")
.append("Retry may be attempted after ").append(REFRESH_DELAY.getSeconds()).append(" seconds.");
if (!tte.isNegative()) {
info.append(" The token currently cached will be used.");
}
}
return info.toString();
}
}
2 changes: 1 addition & 1 deletion sdk/e2e/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-identity</artifactId>
<version>1.1.0-beta.7</version> <!-- {x-version-update;com.azure:azure-identity;current} -->
<version>1.1.0-beta.8</version> <!-- {x-version-update;com.azure:azure-identity;current} -->
</dependency>
<dependency>
<groupId>com.azure</groupId>
Expand Down
2 changes: 1 addition & 1 deletion sdk/identity/azure-identity-perf/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-identity</artifactId>
<version>1.1.0-beta.7</version> <!-- {x-version-update;com.azure:azure-identity;current} -->
<version>1.1.0-beta.8</version> <!-- {x-version-update;com.azure:azure-identity;current} -->
</dependency>
<dependency>
<groupId>com.azure</groupId>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,16 +9,13 @@
import com.azure.perf.test.core.PerfStressOptions;
import reactor.core.publisher.Mono;

import java.time.Duration;

public class WriteCache extends ServiceTest<PerfStressOptions> {
private final SharedTokenCacheCredential credential;

public WriteCache(PerfStressOptions options) {
super(options);
credential = new SharedTokenCacheCredentialBuilder()
.clientId(CLI_CLIENT_ID)
.tokenRefreshOffset(Duration.ofMinutes(60))
.build();
}

Expand Down
19 changes: 17 additions & 2 deletions sdk/identity/azure-identity/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,23 @@
# Release History

## 1.1.0-beta.7 (Unreleased)
- Added support for web apps (confidential apps) for `InteractiveBrowserCredential` and `AuthorizationCodeCredential`. A client secret is required on the builder for web apps.
## 1.1.0-beta.8 (Unreleased)


## 1.1.0-beta.7 (2020-07-23)

### Features
- Added support for web apps (confidential apps) for `AuthorizationCodeCredential`. A client secret is required on the builder for web apps.
- Added support for user assigned managed identities for `DefaultAzureCredential` with `.managedIdentityClientId()`.
- Added`AzureAuthorityHosts` to access well knwon authority hosts.
- Added `getClientId()` method in `AuthenticationRecord`

### Breaking Changes
- Removed persistent caching support from `AuthorizationCodeCredential`.
- Removed `KnownAuthorityHosts`
- Removed `getCredentials()` method in `ChainedTokenCredential` & `DefaultAzureCredential`
- Changed return type of `serialize` method in `AuthenticationRecord` to `Mono<OutputStream>`.
- Changed method signatures`enablePersistentCache(boolean)` and `allowUnencryptedCache(boolean)` on credential builders to `enablePersistentCache()` and `allowUnencryptedCache()`


## 1.1.0-beta.6 (2020-07-10)
- Added `.getCredentials()` method to `DefaultAzureCredential` and `ChainedTokenCredential` and added option `.addAll(Collection<? extends TokenCredential>)` on `ChainedtokenCredentialBuilder`.
Expand Down
4 changes: 2 additions & 2 deletions sdk/identity/azure-identity/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

<groupId>com.azure</groupId>
<artifactId>azure-identity</artifactId>
<version>1.1.0-beta.7</version> <!-- {x-version-update;com.azure:azure-identity;current} -->
<version>1.1.0-beta.8</version> <!-- {x-version-update;com.azure:azure-identity;current} -->

<name>Microsoft Azure client library for Identity</name>
<description>This module contains client library for Microsoft Azure Identity.</description>
Expand All @@ -27,7 +27,7 @@
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-core</artifactId>
<version>1.6.0</version> <!-- {x-version-update;com.azure:azure-core;dependency} -->
<version>1.7.0-beta.3</version> <!-- {x-version-update;unreleased_com.azure:azure-core;dependency} -->
</dependency>
<dependency>
<groupId>com.microsoft.azure</groupId>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -89,21 +89,4 @@ public T httpClient(HttpClient client) {
this.identityClientOptions.setHttpClient(client);
return (T) this;
}

/**
* Sets how long before the actual token expiry to refresh the token. The
* token will be considered expired at and after the time of (actual
* expiry - token refresh offset). The default offset is 2 minutes.
*
* This is useful when network is congested and a request containing the
* token takes longer than normal to get to the server.
*
* @param tokenRefreshOffset the duration before the actual expiry of a token to refresh it
* @return An updated instance of this builder with the token refresh offset set as specified.
*/
@SuppressWarnings("unchecked")
public T tokenRefreshOffset(Duration tokenRefreshOffset) {
this.identityClientOptions.setTokenRefreshOffset(tokenRefreshOffset);
return (T) this;
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,6 @@
*/
@Immutable
public final class DefaultAzureCredential extends ChainedTokenCredential {

/**
* Creates default DefaultAzureCredential instance to use. This will use AZURE_CLIENT_ID,
* AZURE_CLIENT_SECRET, and AZURE_TENANT_ID environment variables to create a
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,6 @@
@Immutable
public class EnvironmentCredential implements TokenCredential {
private final Configuration configuration;
private final IdentityClientOptions identityClientOptions;
private final ClientLogger logger = new ClientLogger(EnvironmentCredential.class);
private final TokenCredential tokenCredential;

Expand All @@ -48,7 +47,6 @@ public class EnvironmentCredential implements TokenCredential {
*/
EnvironmentCredential(IdentityClientOptions identityClientOptions) {
this.configuration = Configuration.getGlobalConfiguration().clone();
this.identityClientOptions = identityClientOptions;
TokenCredential targetCredential = null;

String clientId = configuration.get(Configuration.PROPERTY_AZURE_CLIENT_ID);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -122,5 +122,4 @@ private AccessToken updateCache(MsalToken msalToken) {
identityClient.getTenantId(), identityClient.getClientId())));
return msalToken;
}

}
Loading

0 comments on commit 1e3f629

Please sign in to comment.