Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
95 commits
Select commit Hold shift + click to select a range
b22ac8e
vendor bundled non-datadog dependencies
rochdev Nov 21, 2025
404eb5d
fix support for old node versions
rochdev Nov 21, 2025
6695a29
remove redundant dependencies
rochdev Nov 21, 2025
ed23790
fix esm tests
rochdev Nov 21, 2025
7db38c3
code cleanup
rochdev Nov 21, 2025
57777dd
fix invalid import
rochdev Nov 21, 2025
aa3c87a
move dc-polyfill back
rochdev Nov 21, 2025
4b0b479
add missing dev dependency
rochdev Nov 21, 2025
7f66343
add missing dependencies
rochdev Nov 21, 2025
3039f8b
remove filesystem cache
rochdev Nov 21, 2025
5b2612b
switch to rspack
rochdev Nov 21, 2025
82e9c60
fix missing optional dependency
rochdev Nov 21, 2025
45384cc
fix ddsketch
rochdev Nov 21, 2025
8207cf9
fix pack test
rochdev Nov 21, 2025
f531f6c
fix missing dev dependency
rochdev Nov 21, 2025
e43c658
fix license check
rochdev Nov 21, 2025
6d5545e
fix missing dev dependency
rochdev Nov 21, 2025
064a163
fix install on unsupported node versions
rochdev Nov 21, 2025
c13e9f5
streamline installing vendors
rochdev Nov 21, 2025
9b8a63e
code cleanup
rochdev Nov 21, 2025
00bbe7e
code cleanup
rochdev Nov 21, 2025
e82fcd3
move datadog openfeature to vendor
rochdev Nov 21, 2025
d575023
fix lockfiles
rochdev Nov 21, 2025
81cc767
move native addons to optional dependencies
rochdev Nov 21, 2025
fa02b6e
fix esm support
rochdev Nov 21, 2025
0bf5879
fix source-map
rochdev Nov 21, 2025
ca85fec
fix types
rochdev Nov 21, 2025
05b26d9
fix lint
rochdev Nov 21, 2025
fca2e3b
fix lint
rochdev Nov 21, 2025
6a6c543
fix llmobs
rochdev Nov 21, 2025
82bd803
fix esbuild
rochdev Nov 21, 2025
6c092b9
fix lint
rochdev Nov 21, 2025
881861a
fix missing dependency for sandboxed test
rochdev Nov 21, 2025
45c945a
add licenses
rochdev Nov 21, 2025
801469e
code cleanup and remove unneeded dependency
rochdev Nov 22, 2025
f7de043
move escape-string-regexp to vendored dependencies
rochdev Nov 24, 2025
1fe8823
move otel api back to dependencies
rochdev Nov 24, 2025
54cd0ff
fix escape-string-regexp
rochdev Nov 24, 2025
d54b956
fix license inclusion and clean up code
rochdev Nov 24, 2025
2470cb4
remove dependency on otel api
rochdev Nov 24, 2025
1227fef
move otel api-logs to peer dependencies
rochdev Nov 24, 2025
817197d
remove optional flag for otel api
rochdev Nov 25, 2025
0d89378
move otel api to optional dependencies
rochdev Nov 25, 2025
1aee4e8
fix playwright test
rochdev Nov 25, 2025
cc36535
vendor graphql language tools
rochdev Nov 25, 2025
2dab189
automate vendor update for dependabot
rochdev Nov 25, 2025
fe3e01a
update package size calculation to give the real number
rochdev Nov 25, 2025
dbc86e5
refactor without working-directory
rochdev Nov 25, 2025
d422122
debug
rochdev Nov 26, 2025
2a5934d
add path
rochdev Nov 26, 2025
ab75a7e
add path
rochdev Nov 26, 2025
853c1e9
strip components
rochdev Nov 26, 2025
493442f
remove external option requirement for graphql with bundlers
rochdev Nov 26, 2025
70a393f
add bundle validation
rochdev Dec 4, 2025
4c2be2a
fix missing dependency and missing external
rochdev Dec 4, 2025
d85b16f
switch to named module ids
rochdev Dec 4, 2025
bb4bd1a
isolate graphql
rochdev Dec 4, 2025
da3eeb5
frozen lockfile
rochdev Dec 4, 2025
fb21632
forgot to run yarn
rochdev Dec 4, 2025
3c35a8a
add graphql back
rochdev Dec 4, 2025
2f8e2a9
remove dependency on graphql
rochdev Dec 4, 2025
5fdd510
move openfeature core to a dependency
rochdev Dec 4, 2025
937e4e8
do not compare licenses
rochdev Dec 4, 2025
7a0f44b
fix merge issue
rochdev Dec 4, 2025
2262c8a
mark openfeature core as external
rochdev Dec 4, 2025
3c8f89c
add todos
rochdev Dec 4, 2025
7d7061c
move datadog openfeature to a dependency
rochdev Dec 4, 2025
99a87b0
fix apollo
rochdev Dec 4, 2025
7775e18
fix missing openfeature core in tests
rochdev Dec 4, 2025
bf15638
code cleanup
rochdev Dec 4, 2025
3f4f511
add support for vendor folder to license check
rochdev Dec 5, 2025
11f6ae4
move openfeature-node-server to vendors and add source maps
rochdev Dec 5, 2025
c1bdbc5
fix 3rd-party license
rochdev Dec 5, 2025
b294059
include types in package
rochdev Dec 5, 2025
58c597a
include wasm in package
rochdev Dec 5, 2025
6d8139f
code cleanup
rochdev Dec 5, 2025
df54919
add comments
rochdev Dec 9, 2025
d555998
add more comments
rochdev Dec 9, 2025
3a5b6d7
switch dependabot automation to pull request trigger
rochdev Dec 9, 2025
f0fe386
stricter eslint rules
rochdev Dec 9, 2025
d314eeb
code cleanup
rochdev Dec 9, 2025
045ced6
move openfeature-node-server back to dependencies
rochdev Dec 9, 2025
11b56b5
code cleanup
rochdev Dec 9, 2025
2c3682d
use shared and hidden global for graphql tools
rochdev Dec 9, 2025
d3b6c9e
add comment
rochdev Dec 9, 2025
8d56371
code cleanup and add comment
rochdev Dec 9, 2025
77e521f
fix 3rd party licenses and add missing eslint ignore
rochdev Dec 9, 2025
8b5d062
code cleanup
rochdev Dec 10, 2025
199a698
normalize dependabot lag time
rochdev Dec 10, 2025
5f29f96
only include ts definition files and not source files
rochdev Dec 10, 2025
0142797
code cleanup
rochdev Dec 10, 2025
8a6fc0d
remove unnecessary cleanup of license files
rochdev Dec 10, 2025
728004d
hide implementation detail of regexp-escape bundle
rochdev Dec 10, 2025
bfd1416
add logging when package.json is skipped with esbuild
rochdev Dec 10, 2025
5bf77bd
fix dependabot config
rochdev Dec 11, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/chainguard/dependabot-automation.sts.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ issuer: https://token.actions.githubusercontent.com
subject: repo:DataDog/dd-trace-js:pull_request

claim_pattern:
event_name: pull_request_target
event_name: pull_request
ref: refs/heads/master
ref_protected: "true"
job_workflow_ref: DataDog/dd-trace-js/.github/workflows/dependabot-automation.yml@refs/heads/master
Expand Down
60 changes: 46 additions & 14 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -60,20 +60,6 @@ updates:
- dependency-name: "@types/node"
# Update the types manually with new Node.js version support
update-types: ["version-update:semver-major"]
- dependency-name: "jest-docblock"
# 30.0.0 onwards only supports Node.js 18.14.x and above
update-types: ["version-update:semver-major"]
# The path-to-regexp version has to be the same as used in express v4.
# Consider vendoring it instead.
- dependency-name: "path-to-regexp"
- dependency-name: "lru-cache"
# 11.0.0 onwards only supports Node.js 20 and above
update-types: ["version-update:semver-major"]
- dependency-name: "limiter"
# 2.0.0 onwards breaks our tests. 3.0.0 works but it requires Node.js v16.
# That breaks cypress in our v5 release line. Update when v5 is EOL.
# Reverting this commit should suffice.
update-types: ["version-update:semver-major"]
- dependency-name: "glob"
# 11.0.0 onwards only supports Node.js 20 and above
update-types: ["version-update:semver-major"]
Expand All @@ -87,6 +73,9 @@ updates:
# Thus, we ignore them and update them manually.
- dependency-name: "@opentelemetry/api"
- dependency-name: "@opentelemetry/api-logs"
- dependency-name: "tap"
# Contain breaking changes that are incompatible with our test usage
update-types: ["version-update:semver-major"]
groups:
dev-minor-and-patch-dependencies:
dependency-type: "development"
Expand All @@ -103,6 +92,49 @@ updates:
- "minor"
- "patch"

# Vendored dependencies
- package-ecosystem: "npm"
directories:
- "/vendor"
schedule:
interval: "weekly"
open-pull-requests-limit: 100
cooldown:
default-days: 5
labels:
- dependabot
- dependencies
- javascript
- semver-patch
ignore:
- dependency-name: "jest-docblock"
# 30.0.0 onwards only supports Node.js 18.14.x and above
update-types: ["version-update:semver-major"]
# The path-to-regexp version has to be the same as used in express v4.
- dependency-name: "path-to-regexp"
- dependency-name: "lru-cache"
# 11.0.0 onwards only supports Node.js 20 and above
update-types: ["version-update:semver-major"]
- dependency-name: "limiter"
# 2.0.0 onwards breaks our tests. 3.0.0 works but it requires Node.js v16.
# That breaks cypress in our v5 release line. Update when v5 is EOL.
# Reverting this commit should suffice.
update-types: ["version-update:semver-major"]
- dependency-name: "@opentelemetry/core"
# 2.0.0 onwards only supports Node.js 18.19.0 and above
update-types: ["version-update:semver-major"]
- dependency-name: "@opentelemetry/resources"
# 2.0.0 onwards only supports Node.js 18.19.0 and above
update-types: ["version-update:semver-major"]
groups:
vendor-minor-and-patch-dependencies:
dependency-type: "production"
patterns:
- "*"
update-types:
- "minor"
- "patch"

# Instrumented library support range
- package-ecosystem: "npm"
directories:
Expand Down
2 changes: 2 additions & 0 deletions .github/workflows/audit.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,3 +16,5 @@ jobs:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- uses: ./.github/actions/node/latest
- run: yarn audit
- run: yarn audit
working-directory: ./vendor
35 changes: 34 additions & 1 deletion .github/workflows/dependabot-automation.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
name: 'Dependabot Automation'

on:
pull_request_target:
pull_request:
types:
- opened

Expand Down Expand Up @@ -37,3 +37,36 @@ jobs:
env:
PR_URL: ${{ github.event.pull_request.html_url }}
GH_TOKEN: ${{ steps.octo-sts.outputs.token }}

vendor:
if: github.event.pull_request.user.login == 'dependabot[bot]'
runs-on: ubuntu-latest
permissions:
id-token: write
contents: write
steps:
- name: Dependabot metadata
id: metadata
uses: dependabot/fetch-metadata@08eff52bf64351f401fb50d4972fa95b9f2c2d1b # 2.4.0
- uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0
if: steps.metadata.outputs.dependency-group == 'vendor-minor-and-patch-dependencies'
- run: yarn
working-directory: ./vendor
if: steps.metadata.outputs.dependency-group == 'vendor-minor-and-patch-dependencies'
- name: Create commits
id: create-commits
run: |
git config user.name github-actions
git config user.email github-actions@github.com
git add -A
git commit -m "update vendored dependencies with new versions"

echo "commit=$(git rev-parse HEAD)" >> $GITHUB_OUTPUT
if: steps.metadata.outputs.dependency-group == 'vendor-minor-and-patch-dependencies'
- name: Push commits
uses: DataDog/commit-headless@5a0f3876e0fbdd3a86b3e008acf4ec562db59eee # action/v2.0.1
with:
branch: ${{ github.ref_name }}
command: push
commits: "${{ steps.create-commits.outputs.commits }}"
if: steps.metadata.outputs.dependency-group == 'vendor-minor-and-patch-dependencies'
10 changes: 10 additions & 0 deletions .github/workflows/platform.yml
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,16 @@ jobs:
- run: ./node_modules/.bin/bun pm pack --gzip-level 0 --filename bun.tgz && tar -zxf bun.tgz -C bun
- run: diff -r npm bun

bundle-validate:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0
- uses: ./.github/actions/node/active-lts
# Running `yarn` also automatically runs `rspack` as a postinstall script.
- run: yarn --frozen-lockfile
working-directory: vendor
- run: git diff --exit-code

core:
runs-on: ubuntu-latest
steps:
Expand Down
10 changes: 9 additions & 1 deletion .github/workflows/project.yml
Original file line number Diff line number Diff line change
Expand Up @@ -51,14 +51,22 @@ jobs:
- uses: ./.github/actions/install
- run: npm run lint

# The package size is especially useful in constrained environments, so the
# computation is done only on the package that would be installed there.
# In order to do that, the current folder is wiped and replaced with what
# would be installed is those environments before running the computation.
package-size-report:
runs-on: ubuntu-latest
permissions:
pull-requests: write
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- uses: ./.github/actions/node/latest
- uses: ./.github/actions/install
- run: FILENAME=$(npm pack --pack-destination /tmp) && mv /tmp/$FILENAME /tmp/dd-trace.tgz
- run: rm -rf *
- run: tar -zxf /tmp/dd-trace.tgz -C $(pwd) --strip-components=1
- run: yarn --prod --ignore-optional
- run: ls -lisa
- name: Compute module size tree and report
uses: qard/heaviest-objects-in-the-universe@1e02edbdda803a45537a808ede97866db47756d3 # Unreleased
with:
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -131,6 +131,7 @@ packages/dd-trace/test/plugins/versions/node_modules
packages/dd-trace/test/plugins/versions/yarn.lock
!packages/dd-trace/**/telemetry/logs
packages/datadog-plugin-azure-functions/test/integration-test/fixtures/node_modules
!packages/node_modules
__azurite_db_queue__.json
__azurite_db_queue_extent__.json
__queuestorage__/AzuriteConfig
Loading
Loading