* Remove the use of ifdef for TESTING_BUILD in KeyVault clients, where they are not needed.
* Rename the TESTING_BUILD macro to be _azure_TESTING_BUILD to highlight this is internal only and reduce chances of collision.
* Update remaining macro names and add comments.
* Revert rename change which was using BUILD_TESTING cmake flag in source.
* Revert "Move the connection back to the connection pool when HTTP error 404 was received (#5308)"
This reverts commit 79cc06d004.
* Changelog
---------
Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
* Added blocking Open for message sender
* Blocking message sender open; added AZURE_NODISCARD to help ensure APIs that are likely to fail have their returns checked
* Update eventhubs stress test to use DefaultAzureCredential instead of ClientSecretCredential; Fixed stress test to correctly request client parameters; Removed hard coded resource name from producer client test
* Pull request feedback with link events; renamed AZURE_NODISCARD to _azure_NODISCARD
---------
Co-authored-by: Rick Winter <rick.winter@microsoft.com>
* All eng/ folder changes necessary to enable 1es-templates for the azure-sdk-for-cpp
* Includes updates to all ci.yml files to reflect new syntax requirements from 1es-template changes to archetype-sdk-client
* Fixing links in Event Hubs README.md
Came across these links pointing to material for the Go libraries and updated them to the C++ materials.
* Updating links for event hubs checkpoint library
* Revert "Remove the use of ifdef for TESTING_BUILD in KeyVault clients, where (#5406)"
This reverts commit 2d8c940f55.
* Revert "Rename the TESTING_BUILD macro to be _azure_TESTING_BUILD to highlight (#5390)"
This reverts commit 256c2df8b5.
* Revert "Use new macros in existing surface area, so that classes marked as final don't have virtual methods. (#5389)"
This reverts commit 3d7eaddb9d.
* Revert "For new surface area, classes marked as final should not have virtual methods. (#5331)"
This reverts commit ddd0f4bd07.
---------
Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
* Use new macros in existing surface area, so that classes marked as final don't have virtual methods.
* Update doc comments.
* Use DOXYGEN_PREDEFINED to expand only the macros we want expanded.
* Add the compile definition for more projects.
* Address PR feedback.
* Make TestableTokenCache a friend class of TokenCache.
* Fix use of namespace qualifiers that have not been explicitly introduced.
* Format (sort usings alphabetically)
* Update CHANGELOG.md
* Update cspell.json
---------
Co-authored-by: Morten Ofstad <morten.ofstad@bluware.com>
Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com>
* Updated tests to support -UserAuth test resources switch to enable non-corpnet access.
* Try setting sample environment variables in sample script pipeline
* AMQP: do not use scope.MinimumExpiration when getting SAS Token
* Remove unused parameters
* Match style
---------
Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
# Significant rewrite of Eventhubs stress test.
## Cleaned up implementation of EventHubs stress/reliability test
* Reworked stress test layout to isolate stress test implementation from stress deployment elements.
* Added ability of stress test scenarios to be independently configured.
* Rewrote stress test app to be closer to the Go equivalent app.
* added apparg.hpp for command line parsing
* added scope_guard to test for scope_guard implementation.
## Added close methods to Consumer client and Producer client.
They don't do much currently, but will eventually.
## AI Generated summary of pull request
This pull request primarily focuses on the `azure-core-amqp` and `azure-messaging-eventhubs` packages, introducing changes to improve code efficiency and maintainability. The most significant changes include the removal of unnecessary `#include` directives in various files in the `azure-core-amqp` package, the addition of `Close` methods in `consumer_client.hpp` and `producer_client.hpp` in the `azure-messaging-eventhubs` package, and modifications to the `cgmanifest.json` files in the `azure-messaging-eventhubs-checkpointstore-blob` and `azure-messaging-eventhubs` directories.
Removal of unnecessary `#include` directives:
* [`sdk/core/azure-core-amqp/src/amqp/claim_based_security.cpp`](diffhunk://#diff-5acd7049cef5955540cc4253f264207e5a7d2701612e148c736ca5781e69d224L12-L14): Removed unnecessary `#include` directives for `iostream` and `sstream`.
* [`sdk/core/azure-core-amqp/src/amqp/connection.cpp`](diffhunk://#diff-fc3a6e5b11f1254c4fd344bcd1846c83ad4ca8e2a8a23b7db0657c2846f43937L18): Removed unnecessary `#include` directive for `azure/core/url.hpp`.
* [`sdk/core/azure-core-amqp/src/amqp/connection_string_credential.cpp`](diffhunk://#diff-14cf130dc5f0b51f698cca57724b733591d48fad0e5beb4745fc1cd78cbdaa72L7-L20): Removed unnecessary `#include` directives for `azure/core/amqp/internal/models/amqp_protocol.hpp`, `azure_c_shared_utility/azure_base64.h`, `azure_c_shared_utility/buffer_.h`, and `iostream`.
* [`sdk/core/azure-core-amqp/src/amqp/link.cpp`](diffhunk://#diff-249643f29ca2c0b1226e9d22ce90be83c77105f55221a1092fb605a5c7ead356L10-L21): Removed unnecessary `#include` directives for `azure/core/amqp/internal/message_receiver.hpp`, `azure/core/amqp/internal/message_sender.hpp`, `azure/core/amqp/internal/models/messaging_values.hpp`, and `azure_uamqp_c/amqp_definitions_sequence_no.h`.
* [`sdk/core/azure-core-amqp/src/amqp/management.cpp`](diffhunk://#diff-b03544340ff264961e045648c2c274dde9fa7ceb33b07b0c41a708128e28d40fL6-L16): Removed unnecessary `#include` directives for `azure/core/amqp/internal/connection.hpp`, `azure/core/amqp/internal/session.hpp`, and `azure_uamqp_c/amqp_management.h`.
Addition of `Close` methods:
* [`sdk/eventhubs/azure-messaging-eventhubs/inc/azure/messaging/eventhubs/consumer_client.hpp`](diffhunk://#diff-fad00d7bec0f12ef5e7d36387e866ab5291c6f5f57568845dfabe3f23320c899R152-R159): Added a `Close` method to the `ConsumerClient` class.
* [`sdk/eventhubs/azure-messaging-eventhubs/inc/azure/messaging/eventhubs/producer_client.hpp`](diffhunk://#diff-cba1fbd1d786b763c27123a2284476e1cc8093753abe6e3a6af9ca78aae4d594R96-R113): Added a `Close` method to the `ProducerClient` class.
Modification of `cgmanifest.json` files:
* [`sdk/eventhubs/azure-messaging-eventhubs-checkpointstore-blob/cgmanifest.json`](diffhunk://#diff-465b096c14ed240a8f14180f16e0924e3df69bd1c95934dca435c0b3c97468a0R1-R37): Added a new `cgmanifest.json` file specifying development dependencies.
* [`sdk/eventhubs/azure-messaging-eventhubs/cgmanifest.json`](diffhunk://#diff-f3e86a1f7be148625ac80b2151504461f3faff4d0564db588c6df9d0d9eb0986R1-R48): Added a new `cgmanifest.json` file specifying development dependencies.
*
---------
Co-authored-by: Rick Winter <rick.winter@microsoft.com>
* Classes marked as final should not have virtual methods.
(cherry picked from commit 7413384c111b73be448f78527a08a544fd1f6ec6)
* Update changelog.
* Address PR feedback and use named-macro.
* Only use the macro for testing_build final classes.
* Add a new compile definition _azure_TESTING_BUILD.
* Add test as a friend class and put the test in a Identity specific test
namespace.
* Remove the macro for final expansion since doxygen struggles with it.
* Address PR feedback, add ifdef guard around _azure_VIRTUAL_FOR_TESTS.
* Enabled multithreaded calls to eventhubs management APIs
* Added partition client properties tests, removed unused variables in consumer client tests
* Restructured properties APIs in eventhubs to simplify producer client and consumer client implementations
* Fixed test crash in LinkAttachDetach AMQP test
* Added test cases for management authn failures
* Don't emit body contents in AmqpMessage insertion operator
* Don't take numeric value parameters by value to ostream insertion operators
* Updated eventhubs dependency to match reality
* Added value based tests for enumeration stream inserters
* Implemented connection handle table to fix half closed session problem
* Correctly handle session begin after connection is open
* Split out amqp settle mode to separate header; added test coverage for AMQP Transfer and Detach performatives
* Use absolute path for settle mode header
* Increment package version after release of azure-security-keyvault-keys
* Increment package version after release of azure-security-keyvault-certificates
* Increment package version after release of azure-security-keyvault-secrets
* Increment package version after release of azure-security-keyvault-administration
* dss
* first pass at a client and tests
* constructors work
* working request, need to fix the response parsing
* basic tests working for service client
* refactored the constructors
* testproxy and tests
* format file
* got client and one API working
* list working
* all apis recorded
* new assets.json
* assets.json regen
* format json
* adding word to cspell
* fix build issues
* fix one more break
* typo
* clangs
* one more issue
* more fixezez
* regen recordings
* try again
* clangs
* clangs again
* new assets
* new test proxy
* regen tests based on new merge
* hmmm
* restore
* add debug env for test proxy
* resync cmake presets from main
* gor get and set working
* get stats
* table client and create
* delete
* get/set acls
* list tables
* some cleanup
* Create /update/merge/delete
* upsert
* query entities
* generated tests
* clangs
* some fixes
* some more errors
* cspells
* got transaction API working
* transactions working , need to parse response
* get data out of the response
* clangs
* batch1
* regen tests
* part 2
* batch3
* batch4
* clangs
* regen tests
* regen tests
* try again
* live only
* added some more tests for the transaction body
* small refactor for tests
* oops
* some oter update
* darn includes
* sddfsd
* erorr fix
* key clients
* sas
* small cleanup
* All tests passing
* test recordings
* clangs
* missing ENV for test
* attempt1
* retry
* couple recordings
* regen some tests
* clangs
* again
* again
* comments
* comments
* headers and footers
* some cleanjup
* Move folders step1
* revert assets and test resources in storage
* revert to main
* cspell
* readme
* comments
* revert ci.yml
* liveonly test
* clangs
* camke
* ci2
* try again
* fdssfs
* fdsfsd
* some cleanup
* dasda
* dsdsds
* asda
* assets
* comments
* a few more bits and pieces
* some other updates for cspell
* typo
* more docs
* spell
* another doc error
* clangs docs
* docs
* test cov
* dasdas
* hg
* stress test
* cspell
* Update sdk/storage/azure-storage-common/test/ut/CMakeLists.txt
Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com>
* Update sdk/storage/azure-storage-common/test/ut/shared_key_policy_lite_test.cpp
Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com>
* Update sdk/tables/azure-data-tables/CHANGELOG.md
Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com>
* Update sdk/tables/azure-data-tables/CMakeLists.txt
Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com>
* Update sdk/tables/azure-data-tables/test/stress/scenarios-matrix.yaml
Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com>
* Update sdk/tables/azure-data-tables/test/stress/Dockerfile
Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com>
* PR comments
* respurces cleanup
* cleanup 2
* respurce fix
* revddrt
* weqq
* oops
* try again
* Update sdk/tables/azure-data-tables/vcpkg/vcpkg.json
Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com>
* try
* test fix
* samples
* readmes
* readmes
* readmes
* api view settings
* qualify friends
* try
* moving usings
* refactor for API View tool
* some more
* clangs
* Update sdk/tables/README.md
Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com>
* Update sdk/core/azure-core/inc/azure/core/http/http.hpp
Co-authored-by: Ahson Khan <ahkha@microsoft.com>
* Update sdk/core/azure-core/src/http/transport_policy.cpp
Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com>
* Update sdk/tables/azure-data-tables/inc/azure/data/tables/rest_client.hpp
Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com>
* Update sdk/tables/azure-data-tables/CHANGELOG.md
Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com>
* Update sdk/tables/azure-data-tables/test/ut/CMakeLists.txt
Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com>
* Update sdk/tables/azure-data-tables/src/rest_client.cpp
Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com>
* some comments
* comments
* comments part N
* clang
* try now
* clang
* comments
* update file names
* update test to check for the final signature
* ccc
* rename shared key policy lite
* cleanup some includes
* add a couple more tests
* small update
* clang
* increase test limits
* xml transition
* service_version_policy
* shared creds and key policy lite
* switch to secondary policy
* code done
* remove last storage vestiges
* put back some code
* readme/changelog
* Update sdk/tables/azure-data-tables/src/serializers.cpp
Co-authored-by: Rick Winter <rick.winter@microsoft.com>
* Add the shared key policy for Larry
* Larry comments
* curlybracify the initializers
* Update sdk/core/azure-core-xml/inc/azure/core/xml/dll_import_export.hpp
Co-authored-by: Rick Winter <rick.winter@microsoft.com>
* Update sdk/core/azure-core-xml/vcpkg.json
Co-authored-by: Rick Winter <rick.winter@microsoft.com>
* Update sdk/tables/azure-data-tables/inc/azure/data/tables.hpp
Co-authored-by: Rick Winter <rick.winter@microsoft.com>
* Rick's comments one more namespace change for serializers
* whiteline
* typo
* oops
* includes and clangs
* cleanup
* jhfjdhjfd
* hjkjdhf
* daas
* Anton's comments
* clang
* revert some changes
* fdss
* Update sdk/core/azure-core-xml/CHANGELOG.md
Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com>
* everything works
* clangs and vcpkg test
* test remove azure-core-xml
* vcpkg json
* remove the code
* merge main
* saa
* wqw
* last comments
* clang
---------
Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com>
Co-authored-by: Ahson Khan <ahkha@microsoft.com>
Co-authored-by: Rick Winter <rick.winter@microsoft.com>
* Make the CAPath option available on all OSes and change to throw on
runtime on non-linux.
* Address PR feedback, update test, and let curl fail on unsupported
platforms.
* AzureCliCredential to treat datetime without TZ info as local time.
* Fix spelling
* CLang-format
* Parse as local by appending TimeZoneOffsetAsString()
* Fix bad merge
* PR Feedback
* Merge
* Merge
---------
Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
* Fix spelling errors
* Exclusion list
* More updates for the exclusion list
* Even more updates for the exclusion list
* And even more updates for the exclusion list
---------
Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
* Disable default features in libxml2.
We don't seem to make use of any of them in `xml_wrapper.cpp`.
* Update changelog.
* Added "Acknowledgments" section to the Storage Changelog.
* "Identity" => "Storage" (my bad)
* Apply suggestions from code review
Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com>
---------
Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com>
* First cut at snippet generation - markdown files only for now.
* Removed trailing blank lines in updated file
* Use snippet generator for keyvault snippets
* Move Azure::Core::_internal::UniqueHandleHelper to _detail
* Linux build fix
* More Linux fixes and clang-format
* Get back the @cond
* Revert one more @cond removal
* Linux fix: include necessary header
* Undo unnecessary clang-format
* Clang-format, again
* Trigger CI
* Trigger CI
* amqps, amqpvalue
* Update cspell.json
* Update curl.cpp
---------
Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
* `BearerTokenAuthenticationPolicy` to use shared_lock in case no refresh is needed
* Copy constructor
* Update bearer_token_authentication_policy.cpp
---------
Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
* Remove some usages of internal APIs in samples
* std::cerr => std::cout
* Two errors would actually go to stderr
---------
Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
* URL: avoid double slash at the start of the path
* Remove unnecessary change
* More test coverage
* Changelog
---------
Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
* Make vcpkg.json comment multiline
* Update core-opentelemetry tests to be able to compile with opentelemetry-cpp version 1.12.0
---------
Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
* Return pointer to message rather than message; cleaned up API surface to remove uAMQP details
* ASAN configuration via CMAKE preset, not environment variable
* clang-tidy fixes
* Azure Identity November Release
* Re-order and move fix to new feature.
---------
Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
Co-authored-by: Ahson Khan <ahkha@microsoft.com>
* Incapsulate all the defaults for options values such as authority host
in a helper class and add authority host url validation.
* Address PR feedback.
* Re-use the selected credential that works for each subsequent request in
DefaultAzureCredential by caching the chosen credential per instance.
* Update test to include per-instance caching validation.
* Addresss PR feedback and fix clang error on atomic assignment.
* Fix typo in CL and drop ifdef testing_build to investigate clang build
issue.
* Add double-colon in front of friend class.
* Add link pollable; Fixed several memory leaks
* Rule of 5 fixes for AMQP and EventHubs types; moved message handle type to _detail namespace.
* Update sdk/core/azure-core-amqp/CHANGELOG.md
Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com>
---------
Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com>
* Move MHSM to region with more availability
Resolves#4613
* Trigger CI re-run
* Undo the trigger
---------
Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com>
* Increment package version after release of azure-storage-common
* Increment package version after release of azure-storage-blobs
* Increment package version after release of azure-storage-files-datalake
* Increment package version after release of azure-storage-files-shares
* Increment package version after release of azure-storage-queues
* Add a note to vcpkg manifest files that all changes made in the vcpkg repo alone might be lost.
* may => will
---------
Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
* Create separate lists of characters that are allowed within a tenant id vs scopes in AzureCliCredential.
* Update test to catch the particular exception we expect to be thrown for
tenant id but not for scopes.
* Address PR feedback.
* Fix vcpkg install for the vendored uamqp
* Make changes mergeable to upstream
* Update CMakeLists.txt
* Update CMakeLists.txt
---------
Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
* Moved internal AMQP types to internal header directory
* Updated consumers of AMQP headers to match moved headers
* Updated changelog to reflect breaking change in AMQP
* Made includes explicit in event_data.hpp
* Reference non-package headers with angle braces not quotes
* Small cleanup around AMQP dependencies
* Update cfgmanifest.json to remove uamqp, and add umock, csharedutil, and macro-utils-c
---------
Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
* Split out curl an winhttp testing on WS2022 to work around CURL bias in test proxy tests
* Minor change to storage to trigger CI pipeline
* On testing builds, send a 0 length Content-Length header on Patch verbs if the caller has not provided a Content-Length header.
* Update sdk/core/azure-core/inc/azure/core/http/http.hpp
Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com>
---------
Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com>
* Prefix interal macros with _azure_ to 'remove' them from the public area
* PR feedback
---------
Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
* Try to see what happens without coverage exclusions
* Reset coverage limits
* Mark ThrowParseError as [[noreturn]] to ensure compiler knows that code after it is dead code
* Added tests for the Azure assert macro
---------
Co-authored-by: Ahson Khan <ahkha@microsoft.com>
* clang-13 version of cstdlib doesn't define integer types in global namespace
* Added clang-13 and clang-15 variants to mix
* Pull request feedback
* Update sdk/core/azure-core/inc/azure/core/uuid.hpp
* Update sdk/core/azure-core/inc/azure/core/base64.hpp
---------
Co-authored-by: Larry Osterman <larryo@LOTHAIR-HOME.ntdev.corp.microsoft.com>
* Increment package version after release of azure-storage-common
* Increment package version after release of azure-storage-blobs
* Increment package version after release of azure-storage-files-datalake
* Increment package version after release of azure-storage-files-shares
* Increment package version after release of azure-storage-queues
* Increment package version after release of azure-messaging-eventhubs
* Increment package version after release of azure-messaging-eventhubs-checkpointstore-blob
* Remove OPENSSL_VERSION_NUMBER version check for the CAPath option in
libcurl.
* Revert unit test change that caused an intentional error.
* Remove the openssl header.
* Change the default option for authority host to be read from the environment first.
* Update changelog.
* Update doc comment and refer to the env var correctly.
* Update doc comments and add unit tests.
* Acknowledge community contribution in the changelog
* Update cspell.json
---------
Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
* Added eventhubs test collateral to create and destroy eventhubs namespaces and eventhubs; Added peek message functionality to AMQP
* Use HTTP to talk to management APIs instead of az cli
* Azure Identity September Release
* Update release date in CHANGELOG.md
---------
Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
Co-authored-by: Ahson Khan <ahkha@microsoft.com>
* Modify the order of the credentials used within the to be consistent with other languages.
* Update LogMessages test since the order of credentials has changed.
* Fix the order for the rest of the log messages within the test.
* Update svg and clang format.
There are two significant parts to this fix. The first is that the Connection object now has a method EnableAsyncOperation which registers the connection with a background thread which polls the connection. The EnableAsyncOperation needs to be callable from outside the connection because in normal client operation, the calls to open the connection are all internal to uAMQP. That means that the message sender and receiver need to call it when they're opened (and closed).
The other major part of this change is that the AsyncOperationQueue now has a WaitForRequest API which does not normally poll (there is a test hook which enables polling but that is not normally used in most scenarios).
The other part of this change fixes some concurrency issues associated with the Log::Stream functionality.
Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com>
* Update sdk/core/azure-core/src/logger.cpp
Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com>
* Update sdk/core/azure-core/test/ut/CMakeLists.txt
Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com>
* Update sdk/core/azure-core/test/ut/logging_test.cpp
Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com>
* Added ASAN as an option, converted transports to be bases to ensure consistancy
---------
Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com>
* Add WorkloadIdentityCredential to the DefaultAzureCredential.
* Clang format and update the CL.
* Address PR feedback - update CL, and SVG
* Define the required AZURE_FEDERATED_TOKEN_FILE env variable in the test.
* Update DAC unit test to include WIC in the log messages.
* Make several params to WorkloadIdentityCredential optional and read them from the environment instead.
* Fix typo in calling the ClientCredentialCore ctor
* Add changelog entry.
* Address PR feedback, avoid creating many WIC options instances.
* Update ctor impl and add options test.
* Set locals if the options are non-empty, and void unused variable in tests.
* Fixup the sample since the customer no longer needs to explicitly pass in those params.
* Increment package version after release of azure-storage-common
* Increment package version after release of azure-storage-blobs
* Increment package version after release of azure-storage-files-datalake
* Increment package version after release of azure-storage-files-shares
* Increment package version after release of azure-storage-queues
* Better cmake UWP detection condition (use the same definition as vcpkg)
* Update Config.cmake.in
---------
Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
* Add dependency to WIL in azure-identity-cpp when on WIndows.
* Use Win32 APIs to get the thumbprint and private key of a certificate.
* Don't use `out_param_ptr` in `GetPrivateKey`.
`NCRYPT_KEY_HANDLE` is not a pointer but a uintptr and using `out_param_ptr` with it causes compiler errors.
* Use Win32 APIs to sign messages with a private key.
* Remove the OpenSSL dependency from azure-identity-cpp on Windows.
We can't remove it from the root vcpkg.json that gets used for development, because an attestation example uses OpenSSL for certificate code.
* Update the changelog.
* Fix compile errors.
We can't use WIL in the public headers; we will use instead the same approach with the OpenSSL handles.
* Fix more compile errors.
* Use `AZ_PLATFORM_WINDOWS`.
* clang-format
* Update cspell.json
* Update CHANGELOG.md
* Update cspell.json
* Update cspell.json
* Attempt to make spell checker happy with minimum changes
* Ignore `CMakeUserPresets.json`.
* Move to the BCrypt APIs in anticipation of the rewrite.
* Use Windows APIs to read the certificate and the private key in PEM format.
* Move decoding the PEM string to its own function.
* Remove redundant error messages from some checks.
WIL does not recommend them if they do not provide additional information, and it already captures the source location.
* Support opening raw RSA and ECC private keys.
* Stop using pseudo-handles.
They are not supported in Windows Server 2012 R2, which is still supported.
* Fix CI.
* Refactor the ClientCertificateCredential tests and test more certificates.
Thanks to googletest's parameterized tests, duplicate code was eliminated and we test twelve cases with only two test methods.
* Improve code sharing across OpenSSL and CNG.
* Fix error checks when signing.
* Remove ECC certificate support.
Turns out Microsoft identity platform itself does not support them.
* Replace `#ifdef` with `#if defined`.
* Move some CryptoAPI-related terms to a `cspell.json` file local to `azure-identity`.
* Exclude the root `cspell.json` file from gitignore.
* Clean-up `cspell.json`.
* Fix linked libraries of `azure-identity`.
We don't use ncrypt anymore.
* Move `platform.hpp` to `client_certificate_credential.cpp`.
* Clean-up `UniquePrivateKey` and reduce mentions of `pkey`.
---------
Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com>
* Update core ci.yml so that some CI pipeline runs when modifying markdown files at the root of the repo
* Update ci.yml for PRs.
* Update README.md to test that CI triggers.
* Check why wildcard isn't working as expected
* Try wrapping wildcard in quotes since it is at the start of the path to trigger
* Added link credit support to message sender and receiver; reworked message receiver creation to move to the partition client object
* Added round trip test, including filters; fixed a hang with the consumer client caused by no messages; fixed checkpoint store storage names.
* EventDataBatch is created from EventProducer. Fixes#4868
* SendEventDataBatch renamed to Send; pass in Context on methods which require a context
* Added producer client send APIs without requiring an explicit event data batch
* close message receiver in destructor if it is open
* Consumer client and producer client only create message sender and receiver when needed
* Update sas test
* add test case and test records
* fix import file
* fix import files
* update record
* fix test name
* fix conversations
* update test
* fix clang format
* Increment package version after release of azure-storage-common
* Increment package version after release of azure-storage-blobs
* Increment package version after release of azure-storage-files-datalake
* Increment package version after release of azure-storage-files-shares
* Increment package version after release of azure-storage-queues
* bahavior -> behavior
* Update transport_adapter_base_test.hpp to fix the typo
* Update blob_base_test.hpp to fix the typo
* Update cspell.json to exclude bahavior is a valid word in the dictionary
---------
Co-authored-by: Ahson Khan <ahson_ahmedk@yahoo.com>
* Added azure_test resources to test-resources.json
* Add RBAC roles to created eventhubs instances
* Eventhubs samples read from the start of the partition, not the end.
* Scaffolding for eventhubs perf test
* Added eventhubs 'stress' test, which is really a totally broken perf test'
* Added stress test skeleton
* EventHubs Stress test is an actual eventhubs test now
* EventHubs throws exceptions on producer client failure. Rationalized error reporting from AMQP - message sender and receiver generate the same errors.
* Rationalize AMQP error results; throw exceptions on eventhubs errors
* Fixed amqp management test; added HTTP status code for management triggered exceptions
* Event Data binary no longer takes an AMQP binary; Preliminary readme.md for eventhubs (still many go constructs in the readme)
* Created the first eventhubs samples - they don't do much but they work
Co-authored-by: Ahson Khan <ahkha@microsoft.com>
Co-authored-by: Rick Winter <rick.winter@microsoft.com>
* API Review feedback
* Added isTransient flag to eventhubs exception based on Java implementation
* Updated AMQP changelog to reflect recent changes
---------
Co-authored-by: Ahson Khan <ahkha@microsoft.com>
Co-authored-by: Rick Winter <rick.winter@microsoft.com>
* Storage/STG90-Data Lake Pagination Delete (#4816)
* add pagination delete
* remove id and secret
* fix spell
* add clientConfiguartion to all clients
* fix doxygen doc
* fix conversation
* add unit tests
* fix cspell
* fix clang format
* update test code
* update test case
* update record
* Storage/Archive to Cold Tier Rehydration (#4825)
* add RehydratePendingToCold
* add unit test
* update changelog.md
* update record
* soft delete test
* enable setTierCold
* IsConnectionReuse in record-playback mode
* DISABLED_UploadPagesFromUriCrc64AccessCondition
* update recording assets
* ClientSecretCredentialWorks works in record-playback mode
* ServiceContainerSasPermissions and ServiceBlobSasPermissions work in record-playback mode
* BlobServiceClientTest.UserDelegationKey works in record-playback mode
* update recordings
* f
* Clean up version requirements
* Revert curl back to 7.44
* Update vcpkg.json
---------
Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
* Move eventhubs under messaging
* Update cmakefile
* cspell
* Do it the other way
---------
Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
* Disable libcurl globalCleanUp test until it has been investigated
* Update curl_connection_pool_private.hpp friend class name for the disabled test
* Update curl_session_private.hpp friend class name for the disabled test
* Increment package version after release of azure-storage-common
* Increment package version after release of azure-storage-blobs
* Increment package version after release of azure-storage-files-datalake
* Increment package version after release of azure-storage-files-shares
* Update vcpkg baseline
* Update in another place as well
* Remove default-features requirement for telemetry and amqp in manifest mode
* Also remove default-features for storage
---------
Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
* Enable phasing out a breaking change in Code in a step-by-step manner
* Update messages
* Fully qualify namespace in Changelog
---------
Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
* Identity: Improve diagnosability
* Update sdk/identity/azure-identity/src/azure_cli_credential.cpp
Co-authored-by: Larry Osterman <LarryOsterman@users.noreply.github.com>
* GCC fix
* Mac fix
* More agressive sanitizing
* cspell
* minor CI fixes
* Improve
* More tests
* min/max values test
---------
Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
Co-authored-by: Larry Osterman <LarryOsterman@users.noreply.github.com>