Skip to content

Commit

Permalink
Merge branch 'master' into jordan.gonzalez/r2r/add-r2r-artifacts-to-a…
Browse files Browse the repository at this point in the history
…zure-pipelines
  • Loading branch information
duncanista authored Jan 14, 2025
2 parents 6340013 + ee7f8d5 commit 0b3bd4c
Show file tree
Hide file tree
Showing 531 changed files with 27,243 additions and 6,178 deletions.
518 changes: 407 additions & 111 deletions .azure-pipelines/ultimate-pipeline.yml

Large diffs are not rendered by default.

14 changes: 14 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,20 @@ updates:
- dependency-name: "MessagePack" # Locked at a version that supports our net452 build target
- dependency-name: "*" # Ignore patches for all integrations
update-types: ["version-update:semver-patch"]

# Azure functions explicit testing - we can't include these with our "normal" process checks
# Because they aren't compatible with the dotnet msbuild approach we're using
- package-ecosystem: "nuget"
directory: "/tracer/test/test-applications/azure-functions/Samples.AzureFunctions.V4Isolated"
schedule:
interval: "daily"
labels:
- "dependencies"
- "area:dependabot"
ignore:
- dependency-name: "*" # Ignore patches for all integrations
update-types: ["version-update:semver-patch"]

# Src libraries
- package-ecosystem: "nuget"
directory: "/tracer/src/Datadog.Trace"
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/override_version_bump_pr_checks.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ jobs:
set -o pipefail
# These checks won't run automatically on the version bump PR, so need to force this
contexts=("code_freeze" "verify_source_generators" "verify_app_trimming_descriptor_generator")
contexts=("code_freeze" "verify_source_generators" "verify_app_trimming_descriptor_generator", "verify_solution_changes_are_persisted")
sha="${{ github.sha }}"
targetUrl="https://github.com/DataDog/dd-trace-dotnet/actions/workflows/override_version_bump_pr_checks.yml"
Expand Down
36 changes: 36 additions & 0 deletions .github/workflows/verify_solution_changes_are_persisted.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
name: Verify Sample solution changes have been persisted

on:
pull_request:
workflow_dispatch:

jobs:
verify_solution_changes_are_persisted:
runs-on: windows-latest
permissions:
contents: read

steps:
- name: Support longpaths
run: git config --system core.longpaths true

- name: Checkout
uses: actions/checkout@v2

- uses: actions/setup-dotnet@v1
with:
dotnet-version: '9.0.100'

- name: "Regenerating Solutions"
run: .\tracer\build.ps1 RegenerateSolutions

- name: "Verify no changes in generated solutions"
run: |
git diff --quiet
if ($LASTEXITCODE -eq 1) {
git diff
Write-Error "Found changes in generated solutions. Did you add a new sample? Regenerate the build solution locally by running the target 'RegenerateSolutions', and ensure the changed files are committed to git."
Exit 1
} else {
echo "No changes found to generated files"
}
4 changes: 3 additions & 1 deletion .gitlab-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -126,7 +126,9 @@ onboarding_tests_installer:
onboarding_tests_k8s_injection:
parallel:
matrix:
- WEBLOG_VARIANT: dd-lib-dotnet-init-test-app
- WEBLOG_VARIANT: [dd-lib-dotnet-init-test-app]
SCENARIO: [K8S_LIB_INJECTION, K8S_LIB_INJECTION_UDS, K8S_LIB_INJECTION_NO_AC, K8S_LIB_INJECTION_NO_AC_UDS, K8S_LIB_INJECTION_PROFILING_DISABLED, K8S_LIB_INJECTION_PROFILING_ENABLED, K8S_LIB_INJECTION_PROFILING_OVERRIDE]
K8S_CLUSTER_VERSION: ['7.56.2','7.57.0','7.59.0']

deploy_to_reliability_env:
rules:
Expand Down
1,220 changes: 1,220 additions & 0 deletions Datadog.Trace.Samples.g.sln

Large diffs are not rendered by default.

25 changes: 18 additions & 7 deletions Datadog.Trace.sln
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Microsoft Visual Studio Solution File, Format Version 12.00
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 17
VisualStudioVersion = 17.1.31903.286
MinimumVisualStudioVersion = 15.0.26124.0
Expand Down Expand Up @@ -596,7 +596,15 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "AssemblyLoadContextResolve"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Samples.AspNet.MultipleAppsInDomain", "tracer\test\test-applications\aspnet\Samples.AspNet.MultipleAppsInDomain\Samples.AspNet.MultipleAppsInDomain.csproj", "{A82EB6F8-D8D0-4763-B252-08CA3F39D153}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Samples.Security.AspNetCore5.DatabaseIntegration", "tracer\test\test-applications\security\Samples.Security.AspNetCore5.DatabaseIntegration\Samples.Security.AspNetCore5.DatabaseIntegration.csproj", "{067CE939-C803-4959-890A-B6B34C83F87A}"
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "tracer", "tracer", "{82FFBC1A-6B13-4C0A-896A-90306AE4828F}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "test", "test", "{07D12F26-2583-4C6F-AFBB-AA30FF339FC6}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "test-applications", "test-applications", "{F8C637E1-1F4F-4E3B-9E34-AAD61097C3F8}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "azure-functions", "azure-functions", "{FE9F14E0-8DFF-413B-BB9E-49CEA4115A5D}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Samples.AzureFunctions.V4Isolated.SdkV1", "tracer\test\test-applications\azure-functions\Samples.AzureFunctions.V4Isolated.SdkV1\Samples.AzureFunctions.V4Isolated.SdkV1.csproj", "{18767A3E-9ADC-485C-A8C7-50660D5B579D}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Expand Down Expand Up @@ -1430,10 +1438,10 @@ Global
{A82EB6F8-D8D0-4763-B252-08CA3F39D153}.Debug|Any CPU.Build.0 = Debug|Any CPU
{A82EB6F8-D8D0-4763-B252-08CA3F39D153}.Release|Any CPU.ActiveCfg = Release|Any CPU
{A82EB6F8-D8D0-4763-B252-08CA3F39D153}.Release|Any CPU.Build.0 = Release|Any CPU
{067CE939-C803-4959-890A-B6B34C83F87A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{067CE939-C803-4959-890A-B6B34C83F87A}.Debug|Any CPU.Build.0 = Debug|Any CPU
{067CE939-C803-4959-890A-B6B34C83F87A}.Release|Any CPU.ActiveCfg = Release|Any CPU
{067CE939-C803-4959-890A-B6B34C83F87A}.Release|Any CPU.Build.0 = Release|Any CPU
{18767A3E-9ADC-485C-A8C7-50660D5B579D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{18767A3E-9ADC-485C-A8C7-50660D5B579D}.Debug|Any CPU.Build.0 = Debug|Any CPU
{18767A3E-9ADC-485C-A8C7-50660D5B579D}.Release|Any CPU.ActiveCfg = Release|Any CPU
{18767A3E-9ADC-485C-A8C7-50660D5B579D}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
Expand Down Expand Up @@ -1666,7 +1674,10 @@ Global
{D6155F26-8245-4B66-8944-79C3DF9F9DA3} = {BAF8F246-3645-42AD-B1D0-0F7EAFBAB34A}
{8B1AF6A7-DD41-4347-B637-90C23D69B50E} = {498A300E-D036-49B7-A43D-821D1CAF11A5}
{A82EB6F8-D8D0-4763-B252-08CA3F39D153} = {AFA0AB23-64F0-4AC1-9050-6CE8FE06F580}
{067CE939-C803-4959-890A-B6B34C83F87A} = {0972AD57-B16B-494F-AE0A-091DD6F3B42B}
{07D12F26-2583-4C6F-AFBB-AA30FF339FC6} = {82FFBC1A-6B13-4C0A-896A-90306AE4828F}
{F8C637E1-1F4F-4E3B-9E34-AAD61097C3F8} = {07D12F26-2583-4C6F-AFBB-AA30FF339FC6}
{FE9F14E0-8DFF-413B-BB9E-49CEA4115A5D} = {F8C637E1-1F4F-4E3B-9E34-AAD61097C3F8}
{18767A3E-9ADC-485C-A8C7-50660D5B579D} = {FE9F14E0-8DFF-413B-BB9E-49CEA4115A5D}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {160A1D00-1F5B-40F8-A155-621B4459D78F}
Expand Down
58 changes: 58 additions & 0 deletions docs/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,64 @@




## [Release 3.8.0](https://github.com/DataDog/dd-trace-dotnet/releases/tag/v3.8.0)

## Summary

- [ASM] Improved error handling and reporting
- [ASM/IAST] Fix a crash occurring when an attribute is decorated with itself
- [Dynamic Instrumentation] Fix errors in symbol upload and exception replay
- [AWS Lambda] Encode non-ascii error messages

## Changes

### Tracer
* [Tracing] Refactor internal Span Links API (#6341)
* Support relative path in `DD_DOTNET_TRACER_HOME` (#6434)
* Add support for `[DuckPropertyOrField]` (#6463)

### ASM
* [ASM] Log `FormatException` from `get_Uri` as debug (#6489)
* [ASM] Update Iast Log Warning to Error (#6492)
* [ASM] upgrade warning to error (#6421)
* [ASM] Fix IAST benchmark tests (#6462)
* [ASM] Error metric for unknown operator errors (#6465)
* [ASM] Introduce SecurityReporter for all reporting functions of SecurityCoordinator (#6481)
* [ASM] Normalise aspects exception logging (#6495)
* Fix build issues on aspects on net5.0 (#6500)

### Debugger
* [Dynamic Instrumentation] Hotfix SymDB and ER (#6468)

### Serverless
* [serverless] encode lambda error.msg and error.type (#6438)

### Fixes
* [IAST] Fix recursive custom attribute crash (#6470)

### Build / Test
* [IAST] Skip failing tests (#6455)
* repo: mandatory issue templates (AIDM-424) (#6456)
* K8s Lib Injection tests: run on a matrix (#6458)
* [Build] Fix version bump autogen files error (#6464)
* Fix the build and some versions (#6466)
* [IAST] skip dotnet 2.1 tests that can't work (#6467)
* Exclude common failure in smoke tests (#6469)
* allow running exploration tests on mac (#6474)
* [Test Package Versions Bump] Updating package versions (#6450)
* [Test Package Versions Bump] Updating package versions (#6478)
* [Test Package Versions Bump] Updating package versions (#6486)
* Parallelize unit tests (#6483)
* [IAST] Propagation tests reorg (#6487)
* fix UpdateVendoredCode on mac (#6490)

### Miscellaneous
* [Crashtracking] Add a setting to disable crashtracking filtering (#6452)


[Changes since 3.7.0](https://github.com/DataDog/dd-trace-dotnet/compare/v3.7.0...v3.8.0)

## [Release 3.7.0](https://github.com/DataDog/dd-trace-dotnet/releases/tag/v3.7.0)

## Summary
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
# Project definition
# ******************************************************

project("Datadog.Linux.ApiWrapper" VERSION 3.8.0)
project("Datadog.Linux.ApiWrapper" VERSION 3.9.0)

# ******************************************************
# Compiler options
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
# Project definition
# ******************************************************

project("Datadog.Profiler.Native.Linux" VERSION 3.8.0)
project("Datadog.Profiler.Native.Linux" VERSION 3.9.0)

option(RUN_ASAN "Build with Clang Undefined-Behavior Sanitizer" OFF)
option(RUN_UBSAN "Build with Clang Undefined-Behavior Sanitizer" OFF)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -62,8 +62,8 @@ END

// ------- version info -------------------------------------------------------
VS_VERSION_INFO VERSIONINFO
FILEVERSION 3,8,0,0
PRODUCTVERSION 3,8,0,0
FILEVERSION 3,9,0,0
PRODUCTVERSION 3,9,0,0
FILEFLAGSMASK VS_FF_PRERELEASE
FILEOS VOS_NT
FILETYPE VFT_DLL
Expand All @@ -74,12 +74,12 @@ BEGIN
BEGIN
VALUE "CompanyName", "Datadog"
VALUE "FileDescription", "Continuous Profiler for .NET Applications"
VALUE "FileVersion", "3.8.0.0"
VALUE "FileVersion", "3.9.0.0"
VALUE "InternalName", "Native Profiler Engine"
VALUE "LegalCopyright", "(c) Datadog 2020-2022"
VALUE "OriginalFilename", "Datadog.Profiler.Native.dll"
VALUE "ProductName", "Continuous Profiler for .NET Applications"
VALUE "ProductVersion", "3.8.0.0"
VALUE "ProductVersion", "3.9.0.0"
END
END
BLOCK "VarFileInfo"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,4 @@

#pragma once

constexpr auto PROFILER_VERSION = "3.8.0";
constexpr auto PROFILER_VERSION = "3.9.0";
2 changes: 1 addition & 1 deletion profiler/src/ProfilerEngine/ProductVersion.props
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@

<!-- * * * * * * * * * * * INPUTS. Update this section EVERY time the component is shipped/released! * * * * * * * * * * * -->
<PropertyGroup>
<ProductVersion>3.8.0</ProductVersion>
<ProductVersion>3.9.0</ProductVersion>
</PropertyGroup>
<!-- * * * * * * * * * * * END OF INPUTS. * * * * * * * * * * * -->

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,24 +28,24 @@
<None Remove="GarbageCollections\3x3GCs-64.bevents" />
<None Remove="xunit.runner.json" />
<Content Include="Allocations\allocations-32.bevents">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="Allocations\allocations-64.bevents">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="Contention\lockContention-32.bevents">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="Contention\lockContention-64.bevents">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="GarbageCollections\3x3GCs-32.bevents">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="GarbageCollections\3x3GCs-64.bevents">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="xunit.runner.json" CopyToOutputDirectory="Always" />
<Content Include="xunit.runner.json" CopyToOutputDirectory="PreserveNewest" />
</ItemGroup>

<ItemGroup>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -85,7 +85,8 @@ public void EnsureAppDoesNotCrashIfProfilerDeactivateAndTracerActivated(string a
[TestAppFact("Samples.ExceptionGenerator")]
public void GenerateDumpIfDbgRequested(string appName, string framework, string appAssembly)
{
var runner = new TestApplicationRunner(appName, framework, appAssembly, _output, enableTracer: true, commandLine: "--scenario 7");
// The continuous profiler is disabled for this test because it's not needed and it *might* be causing some failures
var runner = new TestApplicationRunner(appName, framework, appAssembly, _output, enableTracer: true, enableProfiler: false, commandLine: "--scenario 7");

runner.Environment.SetVariable("COMPlus_DbgEnableMiniDump", "1");
runner.Environment.SetVariable("COMPlus_DbgMiniDumpName", "/dev/null");
Expand Down
2 changes: 1 addition & 1 deletion shared/src/Datadog.Trace.ClrProfiler.Native/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ endif()
# Project definition
# ******************************************************

project("Datadog.Trace.ClrProfiler.Native" VERSION 3.8.0)
project("Datadog.Trace.ClrProfiler.Native" VERSION 3.9.0)

if (UNIVERSAL)
find_package(GlibcCompat REQUIRED)
Expand Down
8 changes: 4 additions & 4 deletions shared/src/Datadog.Trace.ClrProfiler.Native/Resource.rc
Original file line number Diff line number Diff line change
Expand Up @@ -57,8 +57,8 @@ VS_VERSION_INFO VERSIONINFO
#else
FILEFLAGS 0x0L
#endif
FILEVERSION 3,8,0,0
PRODUCTVERSION 3,8,0,0
FILEVERSION 3,9,0,0
PRODUCTVERSION 3,9,0,0
FILEOS VOS_NT
FILETYPE VFT_DLL
BEGIN
Expand All @@ -68,12 +68,12 @@ BEGIN
BEGIN
VALUE "CompanyName", "Datadog"
VALUE "FileDescription", "Native loader for Datadog .NET APM"
VALUE "FileVersion", "3.8.0.0"
VALUE "FileVersion", "3.9.0.0"
VALUE "InternalName", "Native loader"
VALUE "LegalCopyright", "(c) Datadog 2020-2022"
VALUE "OriginalFilename", "Datadog.Trace.ClrProfiler.Native.dll"
VALUE "ProductName", "Native loader for Datadog .NET APM"
VALUE "ProductVersion", "3.8.0.0"
VALUE "ProductVersion", "3.9.0.0"
END
END
BLOCK "VarFileInfo"
Expand Down
4 changes: 2 additions & 2 deletions shared/src/msi-installer/WindowsInstaller.wixproj
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,9 @@
<IntermediateOutputPath>obj\$(Configuration)\$(Platform)\</IntermediateOutputPath>
<SuppressPdbOutput>True</SuppressPdbOutput>
<DefineSolutionProperties>false</DefineSolutionProperties>
<OutputName>datadog-dotnet-apm-3.8.0-$(Platform)</OutputName> <!-- -The regex recognizes this line -->
<OutputName>datadog-dotnet-apm-3.9.0-$(Platform)</OutputName> <!-- -The regex recognizes this line -->
<MonitoringHomeDirectory Condition="'$(MonitoringHomeDirectory)' == ''">$(MSBuildThisFileDirectory)..\..\bin\monitoring-home</MonitoringHomeDirectory>
<DefineConstants>InstallerVersion=3.8.0;MonitoringHomeDirectory=$(MonitoringHomeDirectory);</DefineConstants>
<DefineConstants>InstallerVersion=3.9.0;MonitoringHomeDirectory=$(MonitoringHomeDirectory);</DefineConstants>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
<DefineConstants>$(DefineConstants);Debug</DefineConstants>
Expand Down
2 changes: 1 addition & 1 deletion shared/src/native-src/version.h
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
#pragma once

constexpr auto PROFILER_VERSION = "3.8.0";
constexpr auto PROFILER_VERSION = "3.9.0";
12 changes: 2 additions & 10 deletions tracer/Datadog.Trace.proj
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@
<ItemGroup>
<CppProject Include="src\**\*.vcxproj"/>
<CppTestProject Include="test\**\*.vcxproj"/>
<FrameworkReproduction Include="test\test-applications\regression\StackExchange.Redis.AssemblyConflict.LegacyProject\StackExchange.Redis.AssemblyConflict.LegacyProject.csproj" />
</ItemGroup>

<!-- Used by CompileNativeSrcWindows-->
Expand All @@ -24,14 +23,7 @@
</MSBuild>
</Target>

<!-- Used by CompileFrameworkReproductions-->
<Target Name="BuildFrameworkReproductions">
<MSBuild Targets="Build" Projects="@(FrameworkReproduction)">
<Output TaskParameter="TargetOutputs" ItemName="CollectedBuildOutput"/>
</MSBuild>
</Target>

<!-- Used by CompileMultiApiPackageVersionSamples -->
<!-- Used by CompileSamples -->
<Target Name="RestoreSamplesForPackageVersionsOnly" Condition="'$(TestAllPackageVersions)'=='true'">

<ItemGroup>
Expand All @@ -46,7 +38,7 @@
</MSBuild>
</Target>

<!-- Used by CompileMultiApiPackageVersionSamples -->
<!-- Used by CompileSamples -->
<Target Name="RestoreAndBuildSamplesForPackageVersionsOnly" Condition="'$(TestAllPackageVersions)'=='true'" DependsOnTargets="RestoreSamplesForPackageVersionsOnly">

<ItemGroup>
Expand Down
Loading

0 comments on commit 0b3bd4c

Please sign in to comment.