Skip to content

Commit

Permalink
Sync main to feature branch (#3757)
Browse files Browse the repository at this point in the history
* Reword the curl proxy fix changelog entry. (#3606)

* Add Emma Zhu as code owner (#3605)

* Short circuit out of msdocs publish if no package locations are specified (#3607)

Co-authored-by: Patrick Hallisey <[email protected]>

* sdk/core: Reimplement Md5OpenSSL using EVP API (#3609)

The MD5_Init/Update/Final functions are deprecated in OpenSSL 3.0 and result in
a compile-time warning. Due to the default usage of -Werror during compilation,
these warnings are treated as errors and prevent the SDK from being built on
Ubuntu 22.04, which ships with OpenSSL by default. The deprecated APIs should
be replaced by the EVP APIs, which are already in use for the SHA family of
functions, and supported on all versions of OpenSSL.

* API Review Feedback for Attestation SDK (#3543)

* API Review Feedback for Attestation SDK

* Updated changelog to reflect API Review updates

* Remove version pin for OpenSSL (#3610)

* Remove version pin for OpenSSL

* Gratuitous change to trigger CI pipelines

* Update the version tool to the latest (#3616)

Co-authored-by: sima-zhu <[email protected]>

* Get rid of warnings in nullable.hpp (#3617)

* cl (#3613)

* Update pipeline-generator version (#3623)

Co-authored-by: Patrick Hallisey <[email protected]>

* Prepare Attestation SDK for May Release. (#3625)

* Prepare attestation for May release

* Removed some noise from changelog

* Increment package version after release of azure-core (#3624)

* Update CODEOWNERS (#3628)

* Fix identity samples running in CI (#3632)

* azure identity may 2022 release (#3615)

* Increment package version after release of azure-identity (#3637)

* Removed uwp-x86 from platform matrix. (#3629)

* Increment package version after release of azure-security-attestation (#3636)

* Update readme for -pre and -post TestResource scripts (#3645)

Co-authored-by: Christopher Scott <[email protected]>

* Fixed a bug where text of XML element cannot be empty. (#3643)

* String parsing improvements to service directory resource names (#3644)

Co-authored-by: Ben Broderick Phillips <[email protected]>

* Adding Acknowledgments (#3611)

* cl

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

Co-authored-by: Ahson Khan <[email protected]>

* cspell

Co-authored-by: Ahson Khan <[email protected]>

* Add skip variable for remove test resources to support debugging (#3648)

Co-authored-by: Ben Broderick Phillips <[email protected]>

* Storage Blob Stg78 Features (#3650)

* Clean up target_include_directories() (#3641)

Co-authored-by: Anton Kolesnyk <[email protected]>

* Update all-inclusive headers, and CMakeFiles for including all headers (#3640)

* Remove (#3657)

oexcept specifier from Context::IsCancelled()

Co-authored-by: Anton Kolesnyk <[email protected]>

* Add Language product slug (#3665)

Co-authored-by: Deyaaeldeen Almahallawi <[email protected]>

* Sync eng/common directory with azure-sdk-tools for PR 3342 (#3664)

* Delete PR and branch which central PR is closed

* more logging changes

* resume the delete operations.

* Change the pr link directly

* fix the regex

* Refactor on regex name

* change the function to inline logic

* change typo

* delete on branch

* make changes on comments

* add commnets

* Update eng/common/scripts/Delete-RemoteBranches.ps1

Co-authored-by: Wes Haggard <[email protected]>

* Update eng/common/scripts/Delete-RemoteBranches.ps1

Co-authored-by: Wes Haggard <[email protected]>

* Update eng/common/scripts/Delete-RemoteBranches.ps1

Co-authored-by: Wes Haggard <[email protected]>

* Update eng/common/scripts/Delete-RemoteBranches.ps1

Co-authored-by: Wes Haggard <[email protected]>

Co-authored-by: sima-zhu <[email protected]>
Co-authored-by: Sima Zhu <[email protected]>
Co-authored-by: Wes Haggard <[email protected]>

* Split out attestation client factory into separate class (#3654)

* Split out attestation client factory into separate class

* Updated readme; clang-format

* Final set of API review changes

* Replaced () constructors with {} constructors

* Initial implementation of OpenTelemetry APIs. (#3561)

* Start of tracing prototype

* Created initial implementation of azure-core-opentelemetry package

* New version of enabling MSVCRT Lib for static configs

* Attempt to add OpenTelemetry tests to build

* Take a dependency on OpenTelemetry version 1.3

* Added service API level tracing support

* API Review feedback

* storage unittest fix and improvement (#3667)

* Sync eng/common directory with azure-sdk-tools for PR 3362 (#3676)

* spell-check skippable by commit

* suceededOrFailed -> succeededOrFailed

Co-authored-by: scbedd <[email protected]>

* Sync eng/common directory with azure-sdk-tools for PR 3378 (#3679)

* Create json package property parent directory

* Fix the issue in script

Co-authored-by: praveenkuttappan <[email protected]>

* Vcpkg sample (#3670)

* one commit to rule them all

* main merge

* error

* all smoke

* typo

* 120 minutes

* timeout param missing on job

* actual url

* Update samples/integration/vcpkg-all-smoke/src/main.cpp

Co-authored-by: Larry Osterman <[email protected]>

* actual creds

Co-authored-by: Larry Osterman <[email protected]>

* Complete the initial implementation of OpenTelemetry (#3677)

* Added telemetry support for HTTP pipeline elements

* Finish OpenTelemetry implementation

* clang-format and added doxygen comments

* Creadscan skips (#3671)

* one commit to rule them all

* main merge

* error

* add recordings for cred scan skipping

* certificates added

* remove dupe

* cspell

* Moved attestation factory back to static method on attestation class … (#3682)

* Moved attestation factory back to static method on attestation class and return a concrete type not a pointer

* Fixed factory in readme file

* OpenTelemetry API Review Feedback (#3687)

* OpenTelemetry API Review Feedback

* Attestation 1.0.0 GA Release (#3693)

* Prepare attestation for release

* removed references to RetrieveResponseValidationCollateral from docs

* Added C++ SDK team as owners of attestation SDK

* Added Ahmad from attestation team to attestation owners

* Removed dead API; switched attestation back to beta-3

* Disable detached head warnings on sparse checkout to commit (#3680)

Co-authored-by: Ben Broderick Phillips <[email protected]>

* Remove samples with docker.io (#3621)

* remove samples using docker.io

* removing docker files

* remove project

* Fix issue where matrix replace was not using imported display names (#3694)

Co-authored-by: Ben Broderick Phillips <[email protected]>

* Additional OpenTelemetry Feedback... (#3691)

* OpenTelemetry API Review Feedback

* Returns std::unique_ptr<DiagnosticTracingFactory instead of raw pointer

* Late breaking pull request feedback

* Renamed clientContext parameter to CreateSpan

* Renamed ContextAndSpanFactory to TracingContextFactory and CreateSpan to CreateTracingContext.

* Added ability to create instance with pointer (#3698)

* Added ability to create instance with pointer

* Pull request feedback

* Core 1.7.0-beta.1 Release (#3684)

Co-authored-by: Anton Kolesnyk <[email protected]>

* Increment package version after release of azure-core (#3699)

* Format vcpkg.json (#3701)

Co-authored-by: Anton Kolesnyk <[email protected]>

* Update README to list all the vcpkgs (#3704)

Co-authored-by: Anton Kolesnyk <[email protected]>

* Removed version>= fields for openssl in vcpkg.json files (#3705)

* Tab vcpkg publishing condition in to apply to the task (#3709)

* Storage June Release (#3686)

* Override live test location default to westus (#3696)

* Changelog updates for secrets and certificates (#3714)

* Changelog updates for secrets and certificates

* Update package versions

* Removed empty sections in changelog (#3718)

* Identity 1.3.0 Release (#3685)

Co-authored-by: Anton Kolesnyk <[email protected]>

* OpenTelemetry vcpkg fixes (#3716)

* OpenTelemetry vcpkg fixes

* Update ci.yml

* Drop version >= from project-level vcpkg

* find_package only supports numeric versions

* include(AzureBuildTargetForCI)

* Do not build as Windows/UWP DLL

* Docs and package dependencies

* Update condition

* Move condition down

* Move more under condition

* Rephrase condition

* Try hack for CI that won't affect vcpkg

Co-authored-by: Anton Kolesnyk <[email protected]>

* Increment package version after release of azure-identity (#3721)

* Increment version for storage releases (#3713)

* Increment package version after release of azure-storage-common

* Increment package version after release of azure-storage-blobs

* [EngSys] Get Vcpkg automatically (#3614)

* get vcpkg automatically

* Updated changelog (#3726)

* Increment package version after release of azure-core-tracing-opentelemetry (#3727)

* Increment package version after release of azure-security-attestation (#3717)

* Increment package version after release of azure-security-attestation (#3720)

* Enable Distributed Tracing for Attestation SDK client. (#3706)

* Implement tracing for Attestation and Template services

* Pipeline no longer requires service name if opting into distributed tracing; enable tracing in attestation service

* Generate user-agent header from request activity policy

* Added test to catch the redacted header regression

* Updated documentation to reflect API surface changes

* Make sample service an object library (#3728)

Co-authored-by: Anton Kolesnyk <[email protected]>

* Include �pi-version to default list of unredacted query params for logging (#3730)

Co-authored-by: Anton Kolesnyk <[email protected]>

* Sync eng/common directory with azure-sdk-tools for PR 3433 (#3731)

* add condition

* divide line

Co-authored-by: Mariana Rios Flores <[email protected]>

* Sync eng/common directory with azure-sdk-tools for PR 3267 (#3655)

* Use seperate scripts

* address comments.

* do compare and update

* save on the service level readme

* have the helper for reuse function

* remove mgmt table

* changes

* fix

* no return on error

* return if no contents

* Address comments

* change the table

* address wes comments.

* address wes comments.

* address more comments.

Co-authored-by: sima-zhu <[email protected]>

* Sync eng/common directory with azure-sdk-tools for PR 3386 (#3733)

* Update the order of remarks and examples to align with docs.ms

* change all occurance

* Update class.tmpl.partial

Co-authored-by: sizhu <[email protected]>
Co-authored-by: Sima Zhu <[email protected]>

* ensure conditions all work properly in the case of a previous error (#3732)

Co-authored-by: Scott Beddall <[email protected]>

* InputSanitizer: rename to HttpSanitizer, remove static member (#3736)

* InputSanitizer => HttpSanitizer, remove static

* Update cpp

* Clang format

Co-authored-by: Anton Kolesnyk <[email protected]>

* Increment version for keyvault releases (#3719)

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

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

* Update DistributedTracing.md (#3715)

Fix typo

* ApiView command line generation script (#3711)

* ApiView command line generation script

* Strongly typed parameters

Co-authored-by: Ben Broderick Phillips <[email protected]>

Co-authored-by: Anton Kolesnyk <[email protected]>
Co-authored-by: Ben Broderick Phillips <[email protected]>

* Add missing license header to http_sanitizer source file (#3739)

* Add ResourceType parameter - Selects live test or perf test resources (#3740)

Co-authored-by: Mike Harder <[email protected]>

* Update identity codeowners (#3744)

Co-authored-by: Ahson Khan <[email protected]>
Co-authored-by: Azure SDK Bot <[email protected]>
Co-authored-by: Patrick Hallisey <[email protected]>
Co-authored-by: Jeremi Piotrowski <[email protected]>
Co-authored-by: Larry Osterman <[email protected]>
Co-authored-by: sima-zhu <[email protected]>
Co-authored-by: Victor Vazquez <[email protected]>
Co-authored-by: Rick Winter <[email protected]>
Co-authored-by: Anton Kolesnyk <[email protected]>
Co-authored-by: Christopher Scott <[email protected]>
Co-authored-by: Ben Broderick Phillips <[email protected]>
Co-authored-by: Ahson Khan <[email protected]>
Co-authored-by: Anton Kolesnyk <[email protected]>
Co-authored-by: Deyaaeldeen Almahallawi <[email protected]>
Co-authored-by: Sima Zhu <[email protected]>
Co-authored-by: Wes Haggard <[email protected]>
Co-authored-by: scbedd <[email protected]>
Co-authored-by: praveenkuttappan <[email protected]>
Co-authored-by: George Arama <[email protected]>
Co-authored-by: Daniel Jurek <[email protected]>
Co-authored-by: Mariana Rios Flores <[email protected]>
Co-authored-by: Scott Beddall <[email protected]>
Co-authored-by: Ben Broderick Phillips <[email protected]>
Co-authored-by: Mike Harder <[email protected]>
  • Loading branch information
1 parent 192b9da commit 9e209cc
Show file tree
Hide file tree
Showing 233 changed files with 9,428 additions and 2,861 deletions.
78 changes: 0 additions & 78 deletions .devcontainer/Dockerfile

This file was deleted.

32 changes: 0 additions & 32 deletions .devcontainer/devcontainer.json

This file was deleted.

4 changes: 2 additions & 2 deletions .github/CODEOWNERS
Original file line number Diff line number Diff line change
Expand Up @@ -23,14 +23,14 @@
/sdk/core/ @rickwinter @ahsonkhan @antkmsft @vhvb1989 @gearama @LarryOsterman

# PRLabel: %Azure.Identity
/sdk/identity/ @antkmsft @schaabs @ahsonkhan @rickwinter @vhvb1989 @gearama
/sdk/identity/ @antkmsft @schaabs @ahsonkhan @rickwinter @vhvb1989 @gearama @LarryOsterman

###########
# Client SDKs
###########

# PRLabel: %Attestation
/sdk/attestation/ @LarryOsterman @gkostal @anilba06 @kroshkina-ms
/sdk/attestation/ @LarryOsterman @gkostal @anilba06 @kroshkina-ms @ahmadmsft @rickwinter @ahsonkhan @antkmsft @vhvb1989 @gearama

# PRLabel: %KeyVault
/sdk/keyvault/ @vhvb1989 @gearama @antkmsft @rickwinter
Expand Down
6 changes: 6 additions & 0 deletions .vscode/cspell.json
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
"Dockerfile",
"*nlohmann-json*",
"eng/docs/api/assets/**/*",
"eng/CredScanSuppression.json",
"**/test/ut/recordings/*.json"
],
// * Unless configured otherwise, these words are not case sensitive
Expand All @@ -42,9 +43,11 @@
"cuse",
"CUSEUAP",
"DCMAKE",
"DDISABLE",
"deserializers",
"Deserializes",
"DFETCH",
"DMSVC",
"docfx",
"DPAPI",
"DRUN",
Expand Down Expand Up @@ -81,6 +84,7 @@
"ncus",
"Niels",
"nlohmann",
"nostd",
"noclean",
"NOCLOSE",
"NOCRLF",
Expand All @@ -89,6 +93,8 @@
"northcentralus",
"NTSTATUS",
"okhttp",
"opentelemetry",
"otel",
"PBYTE",
"pdbs",
"Piotrowski",
Expand Down
15 changes: 12 additions & 3 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -55,21 +55,31 @@ if(MSVC_USE_STATIC_CRT AND MSVC)
#
# 5. We "replace with empty string" (i.e. remove) first, then add, so that '/MT'
# will be present (and present once) even if '/MD' was not.

message(STATUS "Configuring Static Runtime Library.")
if(${CMAKE_CXX_FLAGS} MATCHES ".*/MD.*")
string(REGEX REPLACE "/MD" "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /MT")
endif()

if(${CMAKE_CXX_FLAGS_RELEASE} MATCHES ".*/MD.*")
string(REGEX REPLACE "/MD" "" CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE}")
set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /MT")

endif()

if(${CMAKE_CXX_FLAGS_RELWITHDEBINFO} MATCHES ".*/MD.*")
string(REGEX REPLACE "/MD" "" CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO}")
set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} /MT")
endif()

if(${CMAKE_CXX_FLAGS_MINSIZEREL} MATCHES ".*/MD.*")
string(REGEX REPLACE "/MD" "" CMAKE_CXX_FLAGS_MINSIZEREL "${CMAKE_CXX_FLAGS_MINSIZEREL}")
set(CMAKE_CXX_FLAGS_MINSIZEREL "${CMAKE_CXX_FLAGS_MINSIZEREL} /MT")
endif()

if(${CMAKE_CXX_FLAGS_DEBUG} MATCHES ".*/MD.*")
string(REGEX REPLACE "/MDd" "" CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG}")
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /MTd")
endif()
endif()

if(BUILD_TESTING)
Expand Down Expand Up @@ -103,6 +113,5 @@ add_subdirectory(sdk/storage)
add_subdirectory(sdk/template)

if(BUILD_SAMPLES)
add_subdirectory(samples/integration/vcpkg-keyvault)
add_subdirectory(samples/integration/vcpkg-all-smoke)
endif()
21 changes: 21 additions & 0 deletions CMakeSettings.json
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,13 @@
"name": "VCPKG_TARGET_TRIPLET",
"value": "x64-windows-static",
"type": "STRING"
},
{
"name": "MSVC_USE_STATIC_CRT",
"value": "True",
"type": "BOOL"
}

]
},
{
Expand All @@ -33,6 +39,11 @@
"name": "VCPKG_TARGET_TRIPLET",
"value": "x64-windows-static",
"type": "STRING"
},
{
"name": "MSVC_USE_STATIC_CRT",
"value": "True",
"type": "BOOL"
}
]
},
Expand All @@ -51,6 +62,11 @@
"name": "VCPKG_TARGET_TRIPLET",
"value": "x86-windows-static",
"type": "STRING"
},
{
"name": "MSVC_USE_STATIC_CRT",
"value": "True",
"type": "BOOL"
}
]
},
Expand All @@ -70,6 +86,11 @@
"value": "True",
"type": "BOOL"
},
{
"name": "MSVC_USE_STATIC_CRT",
"value": "True",
"type": "BOOL"
},
{
"name": "BUILD_TRANSPORT_CURL",
"value": "True",
Expand Down
64 changes: 32 additions & 32 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
## Azure SDK for C++ Contributing Guide
# Azure SDK for C++ Contributing Guide

Thank you for your interest in contributing to Azure SDK for C++.

Expand Down Expand Up @@ -39,9 +39,9 @@ Thank you for your interest in contributing to Azure SDK for C++.
- Contributor is using an e-mail address other than the primary GitHub address and wants that preserved in the history. Contributor must be willing to squash
the commits manually before acceptance.

## Developer Guide
# Developer Guide

### Codespaces
## Codespaces

Codespaces is new technology that allows you to use a container as your development environment. This repo provides a Codespaces container which is supported by both GitHub Codespaces and VS Code Codespaces.

Expand All @@ -50,54 +50,54 @@ Codespaces is new technology that allows you to use a container as your developm
1. From the Azure SDK GitHub repo, click on the "Code -> Open with Codespaces" button.
1. Open a Terminal. The development environment will be ready for you. Continue to [Building and Testing](https://github.com/Azure/azure-sdk-for-cpp/blob/main/CONTRIBUTING.md#building-and-testing).

#### VS Code Codespaces
### VS Code Codespaces

1. Install the [VS Code Remote Extension Pack](https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.vscode-remote-extensionpack)
1. When you open the Azure SDK for C++ repo in VS Code, it will prompt you to open the project in the Dev Container. If it does not prompt you, then hit CTRL+P, and select "Remote-Containers: Open Folder in Container..."
1. Open a Terminal. The development environment will be ready for you. Continue to [Building and Testing](https://github.com/Azure/azure-sdk-for-cpp/blob/main/CONTRIBUTING.md#building-and-testing).

### Full Local Setup
## Full Local Setup

#### Pre-requisites
### Pre-requisites

##### CMake
#### CMake

CMake version 3.13 or higher is required to build these libraries. Download and install CMake from the project's
[website](https://cmake.org/download/).

##### Third Party Dependencies
### Third Party Dependencies

- curl
- libxml2
- clang-format (min version 10)
Azure SDK uses Vcpkg manifest mode to declare the [list of required 3rd party dependencies](https://github.com/Azure/azure-sdk-for-cpp/blob/main/vcpkg.json) for building the SDK service libraries. It will also get and set up Vcpkg automatically. **You can move on to [Building the project](#building-the-project)** and skip the next part if you are not interested in learning about alternatives for setting up dependencies.

Vcpkg can be used to install the Azure SDK for CPP dependencies into a specific folder on the system instead of globally installing them.
Follow [vcpkg install guide](https://github.com/microsoft/vcpkg#getting-started) to get vcpkg and install the following dependencies:
#### Customize the Vcpkg dependency integration

```sh
./vcpkg install curl libxml2
```

When using vcpkg, you can set the `VCPKG_ROOT` environment variable to the vcpkg Git repository folder. This would automatically set the CMake variable `CMAKE_TOOLCHAIN_FILE` for you, enabling the project to use any library installed with vcpkg.
If the CMake option _-DCMAKE_TOOLCHAIN_FILE=..._ is not defined to generate the project, the Azure SDK project will automatically get Vcpkg and link it to get its dependencies. You can use the next environment variables to change this behavior:

The Azure SDK for C++ uses [this vcpkg release version](https://github.com/Azure/azure-sdk-for-cpp/blob/main/eng/vcpkg-commit.txt) for continuous integration (CI) building and testing. Make sure to checkout this version when following the next steps for building and running the Azure SDK for C++. Using a newer vcpkg version might still work, however, if it is tested.

```sh
# Checking out vcpkg release version before installing dependencies
<center>

git clone https://github.com/Microsoft/vcpkg.git
cd vcpkg
# Checkout the vcpkg commit from the vcpkg-commit.txt file (link above)
git checkout <vcpkg commit>
<table>
<tr>
<td>Environment Variable</td>
<td>Description</td>
</tr>
<tr>
<td>AZURE_SDK_DISABLE_AUTO_VCPKG</td>
<td>When defined, Vcpkg won't be automatically cloned and linked. Use this setting, for example, if your dependencies are installed on the system and you don't need to get them.</td>
</tr>
<tr>
<td>AZURE_SDK_VCPKG_COMMIT</td>
<td>This variable can set the git commit id to be used when automatically cloning Vcpkg.</td>
</tr>
<tr>
<td>VCPKG_ROOT</td>
<td>Use this variable to set an existing Vcpkg folder from your system to be linked for building. Use this, for example, when working with Vcpkg classic mode, to switch between different Vcpkg folders.</td>
</tr>
</table>

# build vcpkg (showing Linux command, see vcpkg getting started for Windows)
./bootstrap-vcpkg.sh
./vcpkg install curl libxml2
```
</center>

### Building and Testing

#### Building the project
## Building the project

Generate the CMake files and build as you would with any standard CMake project. From the
repo root, run:
Expand Down
Loading

0 comments on commit 9e209cc

Please sign in to comment.