Skip to content

Commit

Permalink
Merge branch 'main' into zachg/handle_cross_org_propagation
Browse files Browse the repository at this point in the history
  • Loading branch information
ZStriker19 authored Dec 20, 2024
2 parents e1b10df + 42f69dc commit 6811970
Show file tree
Hide file tree
Showing 426 changed files with 10,476 additions and 3,089 deletions.
2 changes: 1 addition & 1 deletion .circleci/config.templ.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ mongo_image: &mongo_image mongo:3.6@sha256:19c11a8f1064fd2bb713ef1270f79a742a184
httpbin_image: &httpbin_image kennethreitz/httpbin@sha256:2c7abc4803080c22928265744410173b6fea3b898872c01c5fd0f0f9df4a59fb
vertica_image: &vertica_image vertica/vertica-ce:latest
rabbitmq_image: &rabbitmq_image rabbitmq:3.7-alpine
testagent_image: &testagent_image ghcr.io/datadog/dd-apm-test-agent/ddapm-test-agent:v1.17.0
testagent_image: &testagent_image ghcr.io/datadog/dd-apm-test-agent/ddapm-test-agent:v1.20.0

parameters:
coverage:
Expand Down
29 changes: 0 additions & 29 deletions .github/ISSUE_TEMPLATE.md

This file was deleted.

64 changes: 64 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
name: "Bug Report (Low Priority)"
description: "Create a public Bug Report. Note that these may not be addressed as quickly as the helpdesk and that looking up account information will be difficult."
title: "[BUG]: "
labels: bug
body:
- type: input
attributes:
label: Tracer Version(s)
description: "Version(s) of the tracer affected by this bug"
placeholder: "1.23.4, 2.8.0"
validations:
required: true

- type: input
attributes:
label: Python Version(s)
description: "Version(s) of Python (`python --version`) that you've encountered this bug with"
placeholder: "Python 3.9.15"
validations:
required: true

- type: input
attributes:
label: Pip Version(s)
description: "Version(s) of Pip (`pip --version`) that you've encountered this bug with"
placeholder: "pip 22.0.4"
validations:
required: true

- type: textarea
attributes:
label: Bug Report
description: Please add a clear and concise description of the bug here
validations:
required: true

- type: textarea
attributes:
label: Reproduction Code
description: Please add code here to help us reproduce the problem
validations:
required: false

- type: textarea
attributes:
label: Error Logs
description: "Please provide any error logs from the tracer (`DD_TRACE_DEBUG=true` can help)"
validations:
required: false

- type: textarea
attributes:
label: Libraries in Use
description: "Which libraries and their versions are you using? Paste output from `pip freeze` here."
validations:
required: false

- type: input
attributes:
label: Operating System
description: "Provide your operating system and version (e.g. `uname -a`)"
placeholder: Darwin Kernel Version 23.6.0
validations:
required: false
9 changes: 9 additions & 0 deletions .github/ISSUE_TEMPLATE/config.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
blank_issues_enabled: false
contact_links:
- name: Bug Report (High Priority)
url: https://help.datadoghq.com/hc/en-us/requests/new?tf_1260824651490=pt_product_type:apm&tf_1900004146284=pt_apm_language:python
about: Create an expedited Bug Report via the helpdesk (no login required). This will allow us to look up your account and allows you to provide additional information in private. Please do not create a GitHub issue to report a bug.
- name: Feature Request (High Priority)
url: https://help.datadoghq.com/hc/en-us/requests/new?tf_1260824651490=pt_product_type:apm&tf_1900004146284=pt_apm_language:python&tf_1260825272270=pt_apm_category_feature_request
about: Create an expedited Feature Request via the helpdesk (no login required). This helps with prioritization and allows you to provide additional information in private. Please do not create a GitHub issue to request a feature.

50 changes: 50 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
name: Feature Request (Low Priority)
description: Create a public Feature Request. Note that these may not be addressed as quickly as the helpdesk and that looking up account information will be difficult.
title: "[FEATURE]: "
labels: feature-request
body:
- type: input
attributes:
label: Package Name
description: "If your feature request is to add instrumentation support for a package please provide the name here"
placeholder: mysql
validations:
required: false

- type: input
attributes:
label: Package Version(s)
description: "If your feature request is to add instrumentation support for a package please provide the version you use"
placeholder: 0.0.3
validations:
required: false

- type: textarea
attributes:
label: Describe the goal of the feature
description: A clear and concise goal of what you want to happen.
validations:
required: true

- type: textarea
attributes:
label: Is your feature request related to a problem?
description: |
Please add a clear and concise description of your problem.
E.g. I'm unable to instrument my database queries...
validations:
required: false

- type: textarea
attributes:
label: Describe alternatives you've considered
description: A clear and concise description of any alternative solutions or features you've considered
validations:
required: false

- type: textarea
attributes:
label: Additional context
description: Add any other context or screenshots about the feature request here
validations:
required: false
2 changes: 1 addition & 1 deletion .github/workflows/build_deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ jobs:
build_wheels:
uses: ./.github/workflows/build_python_3.yml
with:
cibw_build: 'cp37* cp38* cp39* cp310* cp311* cp312*'
cibw_build: 'cp37* cp38* cp39* cp310* cp311* cp312* cp313*'

build_sdist:
name: Build source distribution
Expand Down
12 changes: 6 additions & 6 deletions .github/workflows/build_python_3.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ jobs:
- uses: actions/setup-python@v5
with:
python-version: '3.8'
- run: pip install cibuildwheel==2.16.5
- run: pip install cibuildwheel==2.22.0
- id: set-matrix
env:
CIBW_BUILD: ${{ inputs.cibw_build }}
Expand All @@ -34,7 +34,7 @@ jobs:
{
cibuildwheel --print-build-identifiers --platform linux --arch x86_64,i686 | jq -cR '{only: ., os: "ubuntu-latest"}' \
&& cibuildwheel --print-build-identifiers --platform linux --arch aarch64 | jq -cR '{only: ., os: "arm-4core-linux"}' \
&& cibuildwheel --print-build-identifiers --platform windows --arch AMD64,x86 | jq -cR '{only: ., os: "windows-latest"}' \
&& cibuildwheel --print-build-identifiers --platform windows --arch AMD64,x86 | grep -v 313 | jq -cR '{only: ., os: "windows-latest"}' \
&& cibuildwheel --print-build-identifiers --platform macos --arch x86_64,universal2 | jq -cR '{only: ., os: "macos-13"}'
} | jq -sc
)
Expand Down Expand Up @@ -83,7 +83,7 @@ jobs:

- name: Build wheels arm64
if: always() && matrix.os == 'arm-4core-linux'
run: /home/runner/.local/bin/pipx run cibuildwheel==2.16.5 --only ${{ matrix.only }}
run: /home/runner/.local/bin/pipx run cibuildwheel==2.22.0 --only ${{ matrix.only }}
env:
CIBW_SKIP: ${{ inputs.cibw_skip }}
CIBW_PRERELEASE_PYTHONS: ${{ inputs.cibw_prerelease_pythons }}
Expand All @@ -107,7 +107,7 @@ jobs:
rm -rf ./tempwheelhouse
CIBW_REPAIR_WHEEL_COMMAND_MACOS: |
zip -d {wheel} \*.c \*.cpp \*.cc \*.h \*.hpp \*.pyx &&
delocate-wheel --require-archs {delocate_archs} -w {dest_dir} -v {wheel}
MACOSX_DEPLOYMENT_TARGET=12.7 delocate-wheel --require-archs {delocate_archs} -w {dest_dir} -v {wheel}
CIBW_REPAIR_WHEEL_COMMAND_WINDOWS:
choco install -y 7zip &&
7z d -r "{wheel}" *.c *.cpp *.cc *.h *.hpp *.pyx &&
Expand All @@ -117,7 +117,7 @@ jobs:

- name: Build wheels
if: always() && matrix.os != 'arm-4core-linux'
uses: pypa/cibuildwheel@v2.16.5
uses: pypa/cibuildwheel@v2.22.0
with:
only: ${{ matrix.only }}
env:
Expand All @@ -143,7 +143,7 @@ jobs:
rm -rf ./tempwheelhouse
CIBW_REPAIR_WHEEL_COMMAND_MACOS: |
zip -d {wheel} \*.c \*.cpp \*.cc \*.h \*.hpp \*.pyx &&
delocate-wheel --require-archs {delocate_archs} -w {dest_dir} -v {wheel}
MACOSX_DEPLOYMENT_TARGET=12.7 delocate-wheel --require-archs {delocate_archs} -w {dest_dir} -v {wheel}
CIBW_REPAIR_WHEEL_COMMAND_WINDOWS:
choco install -y 7zip &&
7z d -r "{wheel}" *.c *.cpp *.cc *.h *.hpp *.pyx &&
Expand Down
7 changes: 6 additions & 1 deletion .github/workflows/generate-package-versions.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ on:
jobs:
generate-package-versions:
name: Generate package versions
runs-on: ubuntu-latest
runs-on: ubuntu-22.04
permissions:
actions: read
contents: write
Expand Down Expand Up @@ -49,6 +49,11 @@ jobs:
with:
python-version: "3.12"

- name: Setup Python 3.13
uses: actions/setup-python@v5
with:
python-version: "3.13"

- name: Set up QEMU
uses: docker/setup-qemu-action@v2

Expand Down
121 changes: 121 additions & 0 deletions .github/workflows/generate-supported-versions.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,121 @@
name: Generate Supported Integration Versions

on:
workflow_dispatch: # can be triggered manually

jobs:
generate-supported-versions:
name: Generate supported integration versions
runs-on: ubuntu-22.04
permissions:
actions: read
contents: write
pull-requests: write

steps:
- uses: actions/checkout@v4
with:
persist-credentials: false

- name: Setup Python 3.7
uses: actions/setup-python@v5
with:
python-version: "3.7"

- name: Setup Python 3.8
uses: actions/setup-python@v5
with:
python-version: "3.8"

- name: Setup Python 3.9
uses: actions/setup-python@v5
with:
python-version: "3.9"

- name: Setup Python 3.10
uses: actions/setup-python@v5
with:
python-version: "3.10"

- name: Setup Python 3.11
uses: actions/setup-python@v5
with:
python-version: "3.11"

- name: Setup Python 3.12
uses: actions/setup-python@v5
with:
python-version: "3.12"

- name: Setup Python 3.13
uses: actions/setup-python@v5
with:
python-version: "3.13"

- name: Set up QEMU
uses: docker/setup-qemu-action@v2

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3

- name: Install system dependencies
run: |
sudo apt-get update
sudo apt-get install -y libmariadb-dev
- name: Install Python dependencies
run: |
python -m pip install --upgrade pip
pip install packaging
pip install requests
pip install riot==0.20.1
pip install wrapt==1.16.0
- name: Install ddtrace
run: |
pip install -e .
- run: python scripts/freshvenvs.py generate

- name: Generate table
run: python scripts/generate_table.py

- run: git diff

- name: Create Pull Request
id: pr
uses: peter-evans/create-pull-request@v6
with:
token: ${{ secrets.GITHUB_TOKEN }}
branch: "update-supported-versions"
commit-message: "Update supported versions table"
delete-branch: true
base: main
title: "chore: update supported versions"
labels: changelog/no-changelog
body: |
Generates / updates the supported versions table for integrations.
This should be tied to releases, or triggered manually.
Workflow runs: [Generate Supported Integration Versions](https://github.com/DataDog/dd-trace-py/actions/workflows/generate-supported-versions.yml)
## Checklist
- [x] PR author has checked that all the criteria below are met
- The PR description includes an overview of the change
- The PR description articulates the motivation for the change
- The change includes tests OR the PR description describes a testing strategy
- The PR description notes risks associated with the change, if any
- Newly-added code is easy to change
- The change follows the [library release note guidelines](https://ddtrace.readthedocs.io/en/stable/releasenotes.html)
- The change includes or references documentation updates if necessary
- Backport labels are set (if [applicable](https://ddtrace.readthedocs.io/en/latest/contributing.html#backporting))
## Reviewer Checklist
- [ ] Reviewer has checked that all the criteria below are met
- Title is accurate
- All changes are related to the pull request's stated goal
- Avoids breaking [API](https://ddtrace.readthedocs.io/en/stable/versioning.html#interfaces) changes
- Testing strategy adequately addresses listed risks
- Newly-added code is easy to change
- Release note makes sense to a user of the library
- If necessary, author has acknowledged and discussed the performance implications of this PR as reported in the benchmarks PR comment
- Backport labels are set in a manner that is consistent with the [release branch maintenance policy](https://ddtrace.readthedocs.io/en/latest/contributing.html#backporting)
6 changes: 5 additions & 1 deletion .github/workflows/profiling-native.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ jobs:
matrix:
os: [ubuntu-24.04]
python-version: ["3.8", "3.9", "3.10", "3.11", "3.12"]
sanitizer: ["safety", "thread"]
sanitizer: ["safety", "thread", "valgrind"]

steps:
- uses: actions/checkout@v4
Expand All @@ -40,6 +40,10 @@ jobs:
chmod +x llvm.sh
sudo ./llvm.sh 19
- name: Install Valgrind
run: |
sudo apt-get install -y valgrind
- name: Run tests with sanitizers
run: |
# DEV: We currently have tests in dd_wrapper and stack_v2, setting
Expand Down
Loading

0 comments on commit 6811970

Please sign in to comment.