Commit Graph

868 Commits

Author SHA1 Message Date
Ronnie Geraghty
f1ccfabd25
Fixing table in the README (#6852) 2025-12-04 10:53:01 -08:00
Copilot
32b67d1798
Add unit tests for Base64Url encode and decode methods in Core (#6804)
* Initial plan

* Add comprehensive unit tests for Base64Url encode and decode methods

Co-authored-by: RickWinter <4430337+RickWinter@users.noreply.github.com>

* Fix clang-format for base64_test.cpp

Co-authored-by: RickWinter <4430337+RickWinter@users.noreply.github.com>

* Fix misleading comments in Base64Url tests

Co-authored-by: RickWinter <4430337+RickWinter@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: RickWinter <4430337+RickWinter@users.noreply.github.com>
2025-10-23 11:38:03 -07:00
Anton Kolesnyk
397ae78b1e
Delete cgmanifest.json when being installed via vcpkg, but also update SHAs (#6789)
* Delete cgmanifest.json when being installed via vcpkg, but also update SHAs

* Update cspell

---------

Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
2025-10-17 14:51:11 -07:00
Azure SDK Bot
d26e8c0f35
Increment package version after release of azure-core (#6730) 2025-09-11 15:34:09 -07:00
Anton Kolesnyk
e7063f78ba
Update DateTime to compile on Android (#6732)
Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
2025-09-11 15:28:42 -07:00
Anton Kolesnyk
11a2a38aa7
Implement Phase 3 features for DefaultAzureCredential (#6724)
* Implement Phase 3 features for DefaultAzureCredential

* Forgotten change to update header

* Clang-format

* GCC fix

* Change 'envVarName' string parameter to a boolean 'requireEnvVarValue' parameter

* Rename EnvVarName to CredentialSpecifierEnvVarName and make it constexpr auto

* requireEnvVarValue => requireCredentialSpecifierEnvVarValue

* Clang-format

* Update unit test name

* Clang-format

* Update CHANGELOG with new features and bug fixes

---------

Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
2025-09-10 13:34:22 -07:00
Anton Kolesnyk
573fe95a0e
Azure Core and Identity September Releases (#6725)
* Azure Core and Identity September Releases

* "Identity"

* Update azure-core-cpp version to 1.16.0

* Enclose BIO_seek() OpenSSL macro in -Wold-style-cast ignore pragmas for macOS

---------

Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
2025-09-10 12:45:39 -07:00
dependabot[bot]
fac93b7d35
Bump github.com/microsoft/vcpkg from master to 2025.08.27 (#6726)
* Bump github.com/microsoft/vcpkg from master to 2025.08.27

Bumps [github.com/microsoft/vcpkg](https://github.com/microsoft/vcpkg) from master to 2025.08.27. This release includes the previously tagged commit.
- [Release notes](https://github.com/microsoft/vcpkg/releases)
- [Commits](ef7dbf94b9...120deac306)

---
updated-dependencies:
- dependency-name: github.com/microsoft/vcpkg
  dependency-version: 2025.08.27
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

* Update corresponding files

* Stop using deprecated members from libxml2

* Clang-format

* Update use of opentelemetry deprecated include file

* Clang-format

* Another Opentelemetry breaking change

* Add include file

* NO_LINKER_OVERRIDE

* -framework Security on macOS

* Disable CurlTransportOptions.setCADirectory test on Mac

* disable -Wold-style-cast from external sources on mac

* Wrap all openssl includes to ignore -Wold-style-cast for clang

* Update cspell

* Wrap all usages of BIO_get_mem_data() macro to ignore -Wold-style-cast for clang

* Clang-format

* Clang-format

* Clang-format

* Wrap all usages of BIO_flush() macro to ignore -Wold-style-cast for clang

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
2025-09-09 16:59:00 -07:00
dependabot[bot]
2d969df700
Bump github.com/microsoft/vcpkg from master to ef7dbf94b9198bc58f45951adcf1f041fcbc5ea0 (#6659)
* Bump github.com/microsoft/vcpkg

---
updated-dependencies:
- dependency-name: github.com/microsoft/vcpkg
  dependency-version: ef7dbf94b9198bc58f45951adcf1f041fcbc5ea0
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

* Update vcpkg.json

* Update default VCPKG commit hash in AzureVcpkg.cmake

* try fixing CI by updating xcode version

* 16.2 -> 16.4

* Fix the reason for overfow warning

* Suppress warning C6326: Potential comparison of a constant with another constant.

* Undo unintended format

* Correct condition to check whether it is possible to add epoch to system clock max without overflow

* Insert info for debugging on mac

* Better temp log formatting

* Use largest int type for calcuations (mac fix)

* In case system clock is lesser resolution than Azure::DateTime, do all calculations in a greater ration to avoid integer overflows

* Avoid overflowing system clock max when converting to time since epoch

* Add one more variable for debug logging on mac

* Avoid one more integer overflow

* Remove debug stuff

* CLang-format

* More clang-format

* Less conversions if equal

* Commit to reset CI

* Undo commit to reset CI

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Rick Winter <rick.winter@microsoft.com>
Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com>
Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
2025-09-05 14:36:58 -07:00
Azure SDK Bot
2630c06030
Increment package version after release of azure-core (#6654)
---------

Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
2025-07-10 11:09:06 -07:00
Anton Kolesnyk
de3cc64a55
Azure Core and Identity July GA Releases (#6651)
* Azure Core and Identity July GA Releases

* Add Identity to the release

* Undo change to FolderList.cmake (chicken vs egg problem; we'll have to update after the release)

---------

Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
2025-07-10 08:25:05 -07:00
Larry Osterman
a14e3d5ee0
Fixed WinHTTP failfast caused by premature cancellation (#6637) 2025-06-30 17:52:32 +00:00
Larry Osterman
2626f12add
Temporarily disable Mac azuresdkforcpp tests (#6636)
* Temporarily disable Mac azuresdkforcpp tests
2025-06-23 21:34:53 +00:00
Azure SDK Bot
65fed0581f
Increment package version after release of azure-core (#6614)
Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
2025-06-05 09:32:58 -07:00
Anton Kolesnyk
2e9f0472b4
Core and Identity June Beta releases (#6605)
Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
2025-06-05 07:03:18 -07:00
Anton Kolesnyk
a035ee5f94
Identity: IMDS fail-fast and Cred order change in DAC (and Core support) (#6573)
* Identity: IMDS fail-fast and Cred order change in DAC (and Core support)

* Mac fix and cspell update

* Update unit test and clang-format

* Temporarily update samples to use AzCliCred until recordings are re-recorded

* Revert samples back to use DAC

* Remove SAS auth from Tables template

* Clang-format

* Add support for 'AZURE_POD_IDENTITY_AUTHORITY_HOST', override it for running samples in CI

* Add unit test for AZURE_POD_IDENTITY_AUTHORITY_HOST

* "in milliseconds"

Co-authored-by: Scott Addie <10702007+scottaddie@users.noreply.github.com>

* PR Feedback

* Named constant + comment

---------

Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
Co-authored-by: Scott Addie <10702007+scottaddie@users.noreply.github.com>
2025-05-30 16:47:50 -07:00
Anton Kolesnyk
47c738bba2
Implement AZURE_TOKEN_CREDENTIALS (#6593)
* Implement AZURE_TOKEN_CREDENTIALS

* Clang-format

* Update sdk/identity/azure-identity/src/default_azure_credential.cpp

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update sdk/identity/azure-identity/src/default_azure_credential.cpp

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update sdk/identity/azure-identity/CHANGELOG.md

Co-authored-by: Scott Addie <10702007+scottaddie@users.noreply.github.com>

* TrimString()

* Test against contains() or startsWith() being used

* Update sdk/identity/azure-identity/src/default_azure_credential.cpp

Co-authored-by: Scott Addie <10702007+scottaddie@users.noreply.github.com>

* TrimString() => StringExtensions::Trim()

---------

Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Scott Addie <10702007+scottaddie@users.noreply.github.com>
2025-05-27 16:40:16 -07:00
Anton Kolesnyk
6c6c4e9b35
Update libcurl transport pool to include all options into connection key (#6583)
Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
2025-05-21 05:32:53 -07:00
Sushrut Shringarputale
c6d553b2a2
Fix Windows error for failing curl SSL cache (#6582)
* Fix Windows error for failing curl SSL cache

* Fix unused parameter warning in win_http_transport.cpp, as in #6579

* Update changelog, cspell, and conditional init m_sslShareHandle

---------

Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
2025-05-20 21:59:01 -07:00
Sushrut Shringarputale
51125b0fdc
Add SSL caching share for curl (#6537)
* Add SSL caching share for curl

* Use correct destructor for CURLSH RAII

* Unit tests passing locally

* Add curloptions test for coverage and fix clangformat errors

* whitespace reverts

* Fix clang format errors

* Address PR comments

* Update changelog and CI line coverage target

* Update Changelog and set curl options test to disable ssl caching for validating non-default codepath

* Update sdk/core/azure-core/CHANGELOG.md

* Update CHANGELOG.md

* Update cspell.json

---------

Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com>
2025-05-12 14:36:19 -07:00
Anton Kolesnyk
395a2d13c5
Temporarily disable CheckFailedCrlValidation test to unblock CI (#6554)
* Temporarily disable CheckFailedCrlValidation test to unblock CI

* Update branch coverage

---------

Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
2025-05-01 21:31:32 -07:00
Anton Kolesnyk
22a08bc969
Use TokenCredential *const* everywhere (#6453)
* 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>
2025-03-12 11:57:11 -07:00
Larry Osterman
e04e96cf87
Merged Rust AMQP stack with main. (#6442)
* 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>
2025-03-11 22:30:13 +00:00
Larry Osterman
7fe547bd3c
Update the logging level for CRL validation failures (#6449) 2025-03-07 10:37:28 -08:00
Azure SDK Bot
03688bbe68
Increment package version after release of azure-core (#6452) 2025-03-06 21:49:56 +00:00
Anton Kolesnyk
b6e7a28c62
Azure Core March GA Release (#6450)
Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
2025-03-06 12:18:05 -08:00
gearama
00c45ee8ae
fix certs and missing include (#6425) 2025-02-18 13:02:34 -08:00
Rick Winter
9a32e64739
Fix CodeQL issue (#6382)
Add explanation to CodeQL suppression.

Change was pulled directly from nlohmann/json
nlohmann/json#4362
2025-01-29 13:04:48 -08:00
Azure SDK Bot
53a74b0299
Increment package version after release of azure-core (#6332) 2025-01-11 04:04:43 -08:00
Anton Kolesnyk
47007a6a9e
Azure Core January Beta Release (#6318)
* Azure Core January Beta Release

* Update release date to 2025-01-09

---------

Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
2025-01-09 16:29:12 -08:00
Wes Haggard
c2bc4736fd
Update location of big test file (#6320) 2025-01-09 14:48:50 -08:00
Ronnie Geraghty
b391d65809
Docs links coversion: docs.microsoft.com -> learn.microsoft.com (#6276)
* Docs links coversion: docs.microsoft.com -> learn.microsoft.com
Some markdown formatting

* Adding "msrc" to cspell words

* Undoing things auto formatter did

* Appling Ahson's suggestions
2024-12-16 09:32:19 -08:00
Anton Kolesnyk
1af1bc5831
Make Uuid's default constructor implicit (#6243)
Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
2024-11-19 16:54:45 -08:00
Anton Kolesnyk
bef420162e
Fix typos (#6234)
* Fix typos

* Fix name collision

* Re-trigger CI

* Re-trigger CI

---------

Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
2024-11-17 23:06:28 -08:00
Anton Kolesnyk
384552adff
Remove unused includes (#6209)
* Remove unused includes

* Fixes

* move statics instantiation into cpp

* clang-format

---------

Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
2024-11-14 14:41:53 -08:00
Azure SDK Bot
7469049097
Increment package version after release of azure-core (#6218)
---------

Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
2024-11-13 17:15:19 -08:00
Anton Kolesnyk
28c6d139ad
Azure Core November Beta Release (#6217)
Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
2024-11-13 15:43:06 -08:00
Anton Kolesnyk
b74d9c36be
Minor code cleanups (3) (#6179)
* Minor code cleanups (3)

---------

Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
2024-11-11 15:36:58 -08:00
Larry Osterman
9770fb77dc
Implement mTLS support in WinHTTP transport. (#6131)
* Very preliminary mTLS implementation

* Tests for TLS client certificate

* Tested mTLS functionality

* Added changelog entry; updated PCCERT_CONTEXT using declaration to be more succinct.
2024-11-06 20:03:08 +00:00
Anton Kolesnyk
868a14f4d8
Minor code cleanups 2 (#6171)
* Minor code cleanups

* Clang-format

* Adjust line coverage target

---------

Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
2024-11-05 10:12:13 -08:00
Anton Kolesnyk
daeff2ce9e
Minor code cleanups (#6169)
* Minor code cleanups

* Update claims_based_security_impl.hpp

Undo UniqueAmqpCbsHandle removal - it is right, but will create problems for Larry working in a feature branch when merging it back.

* Update claims_based_security_impl.hpp

---------

Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
2024-11-04 19:58:06 +00:00
Azure SDK Bot
54872294f9
Increment package version after release of azure-core (#6168)
---------

Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
2024-11-01 16:21:12 -07:00
Anton Kolesnyk
0180c8ee5c
HttpShared::GenerateUserAgent() (#6163)
* Rename UserAgentGenerator

* Update includes

* Clang-format

* Move GenerateUserAgent() to HttpShared class

* Update invocations

* Update invocations

* Clang-format

* Drop unnecessary include

* Update release dates

---------

Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
2024-11-01 14:07:45 -07:00
Anton Kolesnyk
99e0895a5d
Move UserAgentGenerator to _internal (#6067)
* Move UserAgentGenerator to _internal

* Clang-format

* Update release date to November release (Core)

* Update release date to November release (EventHubs)

* _MSVC_LANG

* Move comment up

* Add /Zc:__cplusplus when building the SDK, and add unittest

---------

Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
2024-10-31 10:00:12 -07:00
Ahson Khan
064fcad72f
Set token to be expired if response comes back as unauthorized, within BeareTokenAuthenticationPolicy. (#6151)
* Set token to be expired if response comes back as unauthorized.

* Add CL entry.

* Update CL.

* Use trc MinimumExpiration to invalidate the credential's token cache.

* Add test.

* Address PR feedback.

* Remove comment as it is no longer relevant.

* Use initializer list syntax to see if posix compilers are okay with that.

* Keep the bool field as non-atomic.

* Revert "Keep the bool field as non-atomic."

This reverts commit 1b8c7622d5234b010bb0a4eb5db8a436de5a2adf.
2024-10-30 14:00:42 -07:00
Anton Kolesnyk
bf550f2544
Acknowledge community contribution to Core (#6091)
* Acknowledge community contribution to Core

* Update CHANGELOG.md

---------

Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
2024-10-11 21:06:40 +00:00
James Le Cuirot
a091f4c8e0
Set VERSION property against all libraries to write versioned SONAME (#6087)
The SONAME currently written to shared libraries is unversioned, e.g.
libazure-core.so. The SDK's ABI is unstable, so replacing these .so
files with newer versions will immediately break any consumers.

Setting the VERSION property results in libazure-core.so being a symlink
that is used at build time to point to the versioned library, e.g.
libazure-core.so.1.14.0. Consumers point directly to the versioned
library and continue to work against the older version when the library
is upgraded. Once rebuilt, they then point to the newer version instead.

It is more common to use an ABI version that is separate to the library
version, but it makes sense to use the latter when the ABI is unstable.
The Boost libraries do exactly this.

This change has no effect on static libraries, which is the more common
use case. See the CMake documentation for its wider effects.

https://cmake.org/cmake/help/latest/prop_tgt/VERSION.html
2024-10-11 11:42:13 -07:00
Ahson Khan
8f8d24280f
Fixed warning for an unused function in curl.cpp when building the SDK using a version of libcurl older than 7.77.0 (#6073) 2024-10-07 16:28:25 -07:00
Azure SDK Bot
4722e3df3c
Increment package version after release of azure-core (#6062)
Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
2024-10-03 19:50:04 -07:00
Anton Kolesnyk
9aa25a063d
UserAgentGenerator compatibility for previously published EventHubs (#6063)
Co-authored-by: Anton Kolesnyk <antkmsft@users.noreply.github.com>
2024-10-03 19:48:47 -07:00