* generate code and build the generated code
* client
* update name
* put back things
* work in progress for get
* get and get version
* das
* issuer ops
* set/get/delete contacts
* backup restore
* Get /update policy
* purge
* get deleted
* Update props
* Merge cert
* import cert
* Create
* Start delete
* Recover
* Delete/Cacel op
* GetCertsProps
* Get versions
* get deleted certs
* getissuers
* some cleanup and tests all working
* samples
* test record
* PR build
* more PR stuffs
* PR update part i lost count
* clang
* Update sdk/keyvault/azure-security-keyvault-certificates/samples/certificate-basic-operations/certificate_basic_operations.cpp
Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com>
* Update sdk/keyvault/azure-security-keyvault-certificates/samples/certificate-get-certificates/certificate_get_certificates.cpp
Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com>
* Update sdk/keyvault/azure-security-keyvault-certificates/samples/certificate-import-certificate/certificate_import_certificate.cpp
Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com>
* Update sdk/keyvault/azure-security-keyvault-certificates/test/ut/certificate_client_base_test.hpp
Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com>
* Update sdk/keyvault/azure-security-keyvault-certificates/test/ut/certificate_client_test.cpp
Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com>
* comments
* explicitly turn off
* friend comments
* clang
---------
Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com>
* Add support for building with ICU 75.1 or later
We use ICU via libxml2 implicitly. ICU 75.1 or later require C++17 for
its C++ API:
https://github.com/unicode-org/icu/releases/tag/release-75-1
> C++ code now requires C++17
But we use C++17. So `#include <libxml/xmlreader.h>` with ICU 75.1 or
later causes an error:
[1/177] Building CXX object sdk/storage/azure-storage-common/CMakeFiles/azure-storage-common.dir/src/xml_wrapper.cpp.o
FAILED: sdk/storage/azure-storage-common/CMakeFiles/azure-storage-common.dir/src/xml_wrapper.cpp.o
/bin/c++ -DAZ_RTTI -DBUILD_CURL_HTTP_TRANSPORT_ADAPTER -D_azure_BUILDING_SDK
-Isdk/storage/azure-storage-common/inc -Isdk/core/azure-core/inc
-isystem /usr/include/libxml2 -g -std=gnu++14 -fno-operator-names
-Wold-style-cast -Wall -Wextra -pedantic -Werror -MD
-MT sdk/storage/azure-storage-common/CMakeFiles/azure-storage-common.dir/src/xml_wrapper.cpp.o
-MF sdk/storage/azure-storage-common/CMakeFiles/azure-storage-common.dir/src/xml_wrapper.cpp.o.d
-o sdk/storage/azure-storage-common/CMakeFiles/azure-storage-common.dir/src/xml_wrapper.cpp.o
-c sdk/storage/azure-storage-common/src/xml_wrapper.cpp
In file included from /usr/include/unicode/uenum.h:25,
from /usr/include/unicode/ucnv.h:52,
from /usr/include/libxml2/libxml/encoding.h:31,
from /usr/include/libxml2/libxml/parser.h:812,
from /usr/include/libxml2/libxml/globals.h:18,
from /usr/include/libxml2/libxml/threads.h:35,
from /usr/include/libxml2/libxml/xmlmemory.h:218,
from /usr/include/libxml2/libxml/tree.h:1307,
from /usr/include/libxml2/libxml/xmlreader.h:14,
from sdk/storage/azure-storage-common/src/xml_wrapper.cpp:23:
/usr/include/unicode/localpointer.h:561:26: error: 'auto' parameter not permitted in this context
561 | template <typename Type, auto closeFunction>
| ^~~~
/usr/include/unicode/localpointer.h:573:76: error: template argument 2 is invalid
573 | explicit LocalOpenPointer(std::unique_ptr<Type, decltype(closeFunction)> &&p)
| ^
/usr/include/unicode/localpointer.h:583:78: error: template argument 2 is invalid
583 | LocalOpenPointer &operator=(std::unique_ptr<Type, decltype(closeFunction)> &&p) {
| ^
/usr/include/unicode/localpointer.h:599:59: error: template argument 2 is invalid
599 | operator std::unique_ptr<Type, decltype(closeFunction)> () && {
| ^
/usr/include/unicode/uenum.h:69:1: note: invalid template non-type parameter
69 | U_DEFINE_LOCAL_OPEN_POINTER(LocalUEnumerationPointer, UEnumeration, uenum_close);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/unicode/ucnv.h:597:1: note: invalid template non-type parameter
597 | U_DEFINE_LOCAL_OPEN_POINTER(LocalUConverterPointer, UConverter, ucnv_close);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
We don't need ICU C++ API. So we can avoid this error by disabling ICU
C++ API by defining `U_SHOW_CPLUSPLUS_API` as `0`.
* Update CHANGELOG
* Update Identity root README to align with the common format
* Update vcpkg link identifier in README
* Remove vcpkg installation instructions from README
---------
Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
* first stab at a client tsp /tspconfig scripts
* space
* updates to clientTSP
* update for latest specs for KV
* gfd
* gfd
* hghf
* dfgdf
* jhg
* oopsie
* comments
* headers
* clang & param
* coverage
* more comments not gened
* spell
* more comments
* regen for testing
* gfd
* gdf
* tretre
* update to use tsp client
* vcxvx
* fdsfsd
* fds
* round 2
* api view
* dsa
* rte
* update to use code injection
* clang and comments
* gfd
* updates
* clang
* fsd
* spell
* comments
* some cleanup
* first test passing
* dsa
* second test
* startdeletesecret
* update secret ptoeprties
* recover secret
* cleanup clang
* docs
* update recordings and clean up tests
* ggfd
* ooops
* samples build
* gdf
* samples run
* perf tests
* CLANG
* fds
* CLAAAAAAAAANG
* update to latest version of the TSPs
* update to latest codegen
* gdfgdf
* replace method
* client and stuffs
* PR comments
* remove security from path
* clang
* qfe
* gdf
* update to models and to the lastest codegen
* forgot cmake file
* Update sdk/keyvault/azure-security-keyvault-secrets/samples/sample1-basic-operations/sample1_basic_operations.cpp
Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com>
* test api view
* dfsfsd
* ccxcvx
* step1
* delete, and lor and paged
* all work
* works and serializers and test for them gone
* cleanup test files
* sample
* tests passing
* dfsfsd
* latest codegen
* after merge
* fsd
* gfd
* gfd
* ApiView
* move to _details namespace
* put back readme
* update readmes
* clang
* dfsd
* get rid of snippets, validation fails without explanation as to what the failure is
* update locations of methods tp cpp files
* format files
* cover
---------
Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com>
* Use TokenCredential *const* everywhere
* Use left const where the surrounding code also uses it
* Use left const everywhere
* Clang-format
* More clang-format
* typos
* Clang-format
---------
Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
* Initial attempt at a Rust AMQP stack, merged against feature/rust_amqp for now. (#5942)
* Enabled building AMQP *without* uAMQP
* Start integrating Rust AMQP Value to C++ AMQP Value
* AMQP Value tests now pass
* Moved AmqpValueType ostream inserter to its original location
* Added Rust AMQP Message implementation
* Added start of message source tests
* Enabled building AMQP *without* uAMQP
* Start integrating Rust AMQP Value to C++ AMQP Value
* Moved AmqpValueType ostream inserter to its original location
* Message target support
* Message source and target support
* Add connection support; restructured tests to fail on RUST AMQP rather than attempting to run; removed some uAMQP-only features (#5986)
* Checkpoint of connection logic
* Started implementing Rust based Connection by pulling out uAMQP artifacts
* Implemented AMQP Connection in Rust; started API surface refactoring for Rust APIs; Refactored tests to remove some uAMQP only elements.
* Don't leak runtime context on calls
* Refactor AMQP logic to better isolate rust AMQP code from uAMQP code. (#6008)
* refactor uAMQP and Rust AMQP into separate implementations for ease of use
* Add connection support; restructured tests to fail on RUST AMQP rather than attempting to run; removed some uAMQP-only features (#5986)
* Checkpoint of connection logic
* Started implementing Rust based Connection by pulling out uAMQP artifacts
* Implemented AMQP Connection in Rust; started API surface refactoring for Rust APIs; Refactored tests to remove some uAMQP only elements.
* Don't leak runtime context on calls
* export UUID from AMQP
* Cleaned up some more elements; reduced scope of doxygen significantly
* runtime context needs to be process global not thread global; all tests pass or fail at this point
* Merged main into branch
* Implement AMQP Session APIs in Rust. (#6033)
* Checkpoint of rust session support
* Session begin/end now works
* Session tests pass
* Removed accidental regression
* Added rust per-call context (#6043)
* Reworked runtime context to be call context
* Added context parameter to blocking AMQP calls
* Added comments around the lifetime of the RustRuntimeContext captured in the CallContext object
* uAMQP changes corresponding to Rust changes
Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com>
* sync rust SDK fixes to C++
---------
Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com>
* Enable Rust ClaimsBasedSecurity interoperability; Converted EventHubs producer client to work with Rust AMQP changes. (#6059)
* canonicalized return values; initial CBS support
* Implementation of CBS for C++
* Amqp Authentication works; Integrate Rust AMQP into Eventhubs Producer client
* Implemented Rust AMQP message sender. (#6083)
* Initial sender implementation
* PR feedback
* Management APIs work (#6096)
* Management APIs work
---------
Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com>
* Converted builders to be compliant with Rust guidelines. (#6102)
* Converted builders to be compliant with Rust guidelines.
* Bring rust changes back to C++ repo
* Improved builder developer experience
* Removed builders from AMQP layer to conform to Rust guidelines; Fixed AMQP bug in message sender tests (#6208)
* Removed builders from AMQP layer to conform to Rust guidelines; Fixed AMQP related bug in message sender tests
* Pr feedback
* Implement receiving messages; Changes to eventhubs so that all eventhubs tests pass (#6254)
* Eventhubs tests pass
* Noise reduction; explain the task which spawns a task
* Update sdk/eventhubs/azure-messaging-eventhubs/src/producer_client.cpp
Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com>
* PR feedback
---------
Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com>
* Integrate Rust 2 step message receive code to C++ (#6349)
* Integrate Rust 2 step message receive code to C++
* If receiving a delivery failed, transmit the error to the message channel if at all possible
* Enable Rust based AMQP by default (#6362)
* AMQP tests now pass; Integrate TestAmqpBroker with CI pipeline
* Updated changelogs to reflect API changes made during AMQP updates
* Replace uAMQP with Rust AMQP as the default AMQP transport; Updated build configurationj to reflect that
* Test fixes
* PR feedback; test fixes
* Fixed uninitialized variable tanking some tests (#6381)
* Fixed uninitialized variable tanking some tests
* Fixed Rust AMQP tests
* Removed connection string support from Eventhubs and EH tests. (#6391)
* Removed the ability to use connection strings from EventHubs
* Enable Rust AMQP by default!!!
* Update CMakePresets.json
Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com>
---------
Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com>
* Identity: Log Client ID used in ManagedIdentityCredential
* Clang-format
* [&]
---------
Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
* Identity: Add AzureCliCredentialOptions::Subscription
* Clang-format
* Id => ID
* Fix typo
* Apply suggestions from code review
Co-authored-by: Larry Osterman <LarryOsterman@users.noreply.github.com>
* Replace `decltype` with `auto` in test file
* + "If this is the name of a subscription, use its ID instead."
---------
Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
Co-authored-by: Larry Osterman <LarryOsterman@users.noreply.github.com>
* Add samples for AppConfig LRO CreateSnapshot with comparisons of what we'd expect the user experience to be.
* Add the necessary thread include.
* Update LRO sample where Operation<T> returns a status monitor instead of the resource.
* Add initial result to get the snapshot back from the first request, and fix formatting.
* Update the return type of GetSnapshot to match existing, current API shape.
* Add samples for all AppConfig pager methods (GetSnapshots, GetConfigurationSettings, GetRevisions) with comparisons of what we'd expect the user experience to be.
* Adding GetConfigurationSettings for snapshot.
* test1
* dsaf
* clangs
* remove enum_operators as they where only used for sas related operations
* URLEncode
* gfd
* clang
* PR comments
* CLAAAAAAANG