Skip to content

Conversation

@pabloerhard
Copy link
Contributor

@pabloerhard pabloerhard commented Oct 8, 2025

What does this PR do?

A new manual workflow dispatcher triggers other workflows using the nightly Node version.
Fixes tests that broke with the nightly Node version.
Skips tests for versions that are incompatible with Node nightly.

When triggered any job using the latest version of node gets replaced by the nightly node version.

grpc – Modified version splitting to correctly include versions compatible with Node 25.
next - >=11.0.0 <13 – A dependency uses SlowBuffer, which is deprecated in Node 25.
avsc – Incompatible with version 5.0.0.
postgres – Not triggered by nightly tests because a native dependency cannot be installed with Node 25.

Motivation

Plugin Checklist

Additional Notes

@github-actions
Copy link

github-actions bot commented Oct 8, 2025

Overall package size

Self size: 12.92 MB
Deduped: 115.63 MB
No deduping: 117.84 MB

Dependency sizes | name | version | self size | total size | |------|---------|-----------|------------| | @datadog/libdatadog | 0.7.0 | 35.02 MB | 35.02 MB | | @datadog/native-appsec | 10.3.0 | 20.73 MB | 20.74 MB | | @datadog/native-iast-taint-tracking | 4.0.0 | 11.72 MB | 11.73 MB | | @datadog/pprof | 5.11.1 | 9.96 MB | 10.34 MB | | @opentelemetry/core | 1.30.1 | 908.66 kB | 7.16 MB | | protobufjs | 7.5.4 | 2.95 MB | 5.73 MB | | @datadog/wasm-js-rewriter | 4.0.1 | 2.85 MB | 3.58 MB | | @opentelemetry/resources | 1.9.1 | 306.54 kB | 1.74 MB | | @datadog/native-metrics | 3.1.1 | 1.02 MB | 1.43 MB | | @opentelemetry/api-logs | 0.206.0 | 201.39 kB | 1.42 MB | | @opentelemetry/api | 1.9.0 | 1.22 MB | 1.22 MB | | jsonpath-plus | 10.3.0 | 617.18 kB | 1.08 MB | | import-in-the-middle | 1.15.0 | 127.66 kB | 856.24 kB | | lru-cache | 10.4.3 | 804.3 kB | 804.3 kB | | @datadog/openfeature-node-server | 0.1.0-preview.12 | 95.11 kB | 401.68 kB | | opentracing | 0.14.7 | 194.81 kB | 194.81 kB | | source-map | 0.7.6 | 185.63 kB | 185.63 kB | | pprof-format | 2.2.1 | 163.06 kB | 163.06 kB | | @datadog/sketches-js | 2.1.1 | 109.9 kB | 109.9 kB | | lodash.sortby | 4.7.0 | 75.76 kB | 75.76 kB | | ignore | 7.0.5 | 63.38 kB | 63.38 kB | | istanbul-lib-coverage | 3.2.2 | 34.37 kB | 34.37 kB | | rfdc | 1.4.1 | 27.15 kB | 27.15 kB | | dc-polyfill | 0.1.10 | 26.73 kB | 26.73 kB | | @isaacs/ttlcache | 1.4.1 | 25.2 kB | 25.2 kB | | tlhunter-sorted-set | 0.1.0 | 24.94 kB | 24.94 kB | | shell-quote | 1.8.3 | 23.74 kB | 23.74 kB | | limiter | 1.1.5 | 23.17 kB | 23.17 kB | | retry | 0.13.1 | 18.85 kB | 18.85 kB | | semifies | 1.0.0 | 15.84 kB | 15.84 kB | | jest-docblock | 29.7.0 | 8.99 kB | 12.76 kB | | crypto-randomuuid | 1.0.0 | 11.18 kB | 11.18 kB | | ttl-set | 1.0.0 | 4.61 kB | 9.69 kB | | mutexify | 1.4.0 | 5.71 kB | 8.74 kB | | path-to-regexp | 0.1.12 | 6.6 kB | 6.6 kB | | module-details-from-path | 1.0.4 | 3.96 kB | 3.96 kB |

🤖 This report was automatically generated by heaviest-objects-in-the-universe

@codecov
Copy link

codecov bot commented Oct 8, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 84.13%. Comparing base (e3488cb) to head (ee8a010).
⚠️ Report is 2 commits behind head on master.

Additional details and impacted files
@@            Coverage Diff             @@
##           master    #6629      +/-   ##
==========================================
+ Coverage   83.44%   84.13%   +0.69%     
==========================================
  Files         495      505      +10     
  Lines       20837    21038     +201     
==========================================
+ Hits        17387    17701     +314     
+ Misses       3450     3337     -113     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@pr-commenter
Copy link

pr-commenter bot commented Oct 8, 2025

Benchmarks

Benchmark execution time: 2025-10-24 14:00:42

Comparing candidate commit ee8a010 in PR branch pabloerhard/nightly-with-global with baseline commit e3488cb in branch master.

Found 0 performance improvements and 0 performance regressions! Performance is the same for 1608 metrics, 62 unstable metrics.

@pabloerhard pabloerhard changed the title Pabloerhard/nightly with global pabloerhard/nightly-with-global Oct 8, 2025
@pabloerhard pabloerhard changed the title pabloerhard/nightly-with-global nightly testing Oct 9, 2025
@pabloerhard pabloerhard force-pushed the pabloerhard/nightly-with-global branch from e8c2b5d to fb0252d Compare October 9, 2025 13:59
@datadog-datadog-prod-us1

This comment has been minimized.

@pabloerhard pabloerhard force-pushed the pabloerhard/nightly-with-global branch from bff25f8 to f9370f2 Compare October 9, 2025 20:59
@pabloerhard pabloerhard marked this pull request as ready for review October 10, 2025 16:21
@pabloerhard pabloerhard requested review from a team as code owners October 10, 2025 16:21
@pabloerhard pabloerhard requested review from khanayan123 and rochdev and removed request for a team October 10, 2025 16:21
@pabloerhard pabloerhard force-pushed the pabloerhard/nightly-with-global branch from 1767b2a to f9370f2 Compare October 10, 2025 19:51
@pabloerhard pabloerhard force-pushed the pabloerhard/nightly-with-global branch from 26cfacd to f2effeb Compare October 14, 2025 19:40
@pabloerhard pabloerhard requested review from bengl and rochdev October 15, 2025 13:38
@pabloerhard pabloerhard force-pushed the pabloerhard/nightly-with-global branch 4 times, most recently from baba0cd to 3dcccb9 Compare October 17, 2025 14:24
@pabloerhard pabloerhard force-pushed the pabloerhard/nightly-with-global branch from d3636eb to 265240c Compare October 20, 2025 20:22
@pabloerhard pabloerhard requested a review from rochdev October 20, 2025 21:03
Comment on lines 257 to 266
addHook({ name: '@grpc/grpc-js', versions: ['>=1.1.4 <1.3.0'], file: 'build/src/make-client.js' }, client => {
shimmer.wrap(client, 'makeClientConstructor', createWrapMakeClientConstructor(true))
shimmer.wrap(client, 'loadPackageDefinition', createWrapLoadPackageDefinition(true))

return client
})

addHook({ name: '@grpc/grpc-js', versions: ['>=1.3.0'] }, patch(true))

addHook({ name: '@grpc/grpc-js', versions: ['>=1.3.0'], file: 'build/src/make-client.js' }, client => {
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am not sure I understand the change here. Does this have any impact?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It doesn't, I had added it for some previous changes, but it's not needed anymore. Thank you for catching that!

const { engines } = require('../package.json')
const supportedRange = engines.node
const currentVersionIsSupported = semver.satisfies(process.versions.node, supportedRange)
const currentNodeVersion = process.versions.node.split('-')[0] || process.versions.node
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We could switch to the version file instead :)

Copy link
Contributor Author

@pabloerhard pabloerhard Oct 22, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That specific process of version validation has to be done with the full version string and not just the major, unless you prefer doing something like ${NODE_MAJOR}.${NODE_MINOR}.${NODE_PATH} or ideally also add the full version string into the version file which would result in keep the above logic, but now having the full version available for other files to also use.

Edit: nodeMatches already exposes the full versions as index 0.

@pabloerhard pabloerhard requested a review from a team as a code owner October 22, 2025 15:05
@pabloerhard pabloerhard requested a review from BridgeAR October 22, 2025 15:53
default: 'false'
type: string

env:
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What I meant is that env was below concurrency before and was moved before it, which is an unnecessary change and adds noise to the PR.

} = require('../../../../integration-tests/helpers')
const { withVersions } = require('../../../dd-trace/test/setup/mocha')
const { assert } = require('chai')
const nodeMajor = parseInt(process.versions.node.split('.')[0])
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Doesn't look like this change landed yet.

@pabloerhard pabloerhard force-pushed the pabloerhard/nightly-with-global branch 2 times, most recently from 2413727 to fa0c7e4 Compare October 22, 2025 23:17
@pabloerhard pabloerhard requested a review from rochdev October 23, 2025 13:55
@pabloerhard pabloerhard force-pushed the pabloerhard/nightly-with-global branch from 828c873 to 851c26c Compare October 23, 2025 18:20
@pabloerhard pabloerhard requested review from a team as code owners October 23, 2025 18:20
@pabloerhard pabloerhard force-pushed the pabloerhard/nightly-with-global branch from 73a176a to 6bb7c10 Compare October 24, 2025 13:46
@pabloerhard pabloerhard force-pushed the pabloerhard/nightly-with-global branch from 6bb7c10 to ee8a010 Compare October 24, 2025 13:49
@pabloerhard pabloerhard merged commit eb9030c into master Oct 24, 2025
958 of 982 checks passed
@pabloerhard pabloerhard deleted the pabloerhard/nightly-with-global branch October 24, 2025 14:49
@dd-octo-sts dd-octo-sts bot mentioned this pull request Oct 25, 2025
dd-octo-sts bot pushed a commit that referenced this pull request Oct 25, 2025
* Testing using env

* Added workflow_call into workflows

* Compatability changes with node 25

* Added env into pending workflow

* Changed next job to use prebuilt action

* removed runNightly from cancel-in-progress

* Simplified next job

* fix to input reference

* Changed kafka test to use test action and readded reusable llmobs action

* Fix grammar issue and used with versions

* testing nightly as workflow dispatch

* Changes to nightly dispatch yml

* Added gh token into env

* Added changes to simplify workflow

* Set back to some original job design, resolved conflicts

* fixed format error

* fixed format error

* Removed extra hyphen

* Comment change and added NODE_VERSION into versions file

* Set back changes on grpc client

* Modified env, generalized node major usage and code quality changes

* Added missing brackets

* Reinstated serverless group

* Normalized version handling and added appsec and profiling tests
juan-fernandez pushed a commit that referenced this pull request Oct 27, 2025
* Testing using env

* Added workflow_call into workflows

* Compatability changes with node 25

* Added env into pending workflow

* Changed next job to use prebuilt action

* removed runNightly from cancel-in-progress

* Simplified next job

* fix to input reference

* Changed kafka test to use test action and readded reusable llmobs action

* Fix grammar issue and used with versions

* testing nightly as workflow dispatch

* Changes to nightly dispatch yml

* Added gh token into env

* Added changes to simplify workflow

* Set back to some original job design, resolved conflicts

* fixed format error

* fixed format error

* Removed extra hyphen

* Comment change and added NODE_VERSION into versions file

* Set back changes on grpc client

* Modified env, generalized node major usage and code quality changes

* Added missing brackets

* Reinstated serverless group

* Normalized version handling and added appsec and profiling tests
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants