Skip to content

Conversation

@trentm
Copy link
Contributor

@trentm trentm commented Oct 17, 2025

Refs: #3032

This is Trent's play area to try to grok why CI is failing for ^^ that PR.

@github-actions
Copy link
Contributor

This package does not have an assigned component owner and is considered unmaintained. As such this package is in feature-freeze and this PR will be closed with 14 days unless a new owner or a sponsor (a member of @open-telemetry/javascript-approvers) for the feature is found. It is the responsibility of the author to find a sponsor for this feature.
Are you familiar with this package? Consider becoming a component owner.

@trentm
Copy link
Contributor Author

trentm commented Oct 29, 2025

Running here (https://github.com/open-telemetry/opentelemetry-js-contrib/actions/runs/18918615450/job/54009060382?pr=3181) with --loglevel=silly for the npm ci step:

...
 npm info run [email protected] install node_modules/better-sqlite3 prebuild-install || node-gyp rebuild --release
npm info run [email protected] install node_modules/dtrace-provider node-gyp rebuild || node suppress-error.js
npm info run [email protected] install node_modules/oracledb node package/install.js
npm info run [email protected] install { code: 0, signal: null }
npm info run [email protected] install node_modules/sqlite3 prebuild-install -r napi || node-gyp rebuild
npm info run [email protected] install { code: 0, signal: null }
npm info run [email protected] install { code: 0, signal: null }
npm info run [email protected] install { code: 0, signal: null }
npm info run @nestjs/[email protected] postinstall node_modules/@nestjs/core opencollective || exit 0
npm info run [email protected] postinstall node_modules/esbuild node install.js
npm info run [email protected] postinstall node_modules/nx node ./bin/post-install
npm info run @nestjs/[email protected] postinstall { code: 0, signal: null }
npm info run [email protected] postinstall node_modules/protobufjs node scripts/postinstall
npm info run [email protected] postinstall { code: 0, signal: null }
npm info run [email protected] postinstall node_modules/@lerna/create/node_modules/nx node ./bin/post-install || exit 0
npm info run [email protected] postinstall { code: 0, signal: null }
npm info run [email protected] postinstall node_modules/lerna/node_modules/nx node ./bin/post-install || exit 0
npm info run [email protected] postinstall { code: 0, signal: null }

I think that indicates that the two concurrent [email protected] postinstall runs are not completing:

npm info run [email protected] postinstall node_modules/@lerna/create/node_modules/nx node ./bin/post-install || exit 0
npm info run [email protected] postinstall node_modules/lerna/node_modules/nx node ./bin/post-install || exit 0

Currently we have two separate [email protected] installs in separate dirs (and, FWIW, another [email protected] install).

% npm ls --package-lock-only nx
[email protected] /Users/trentm/tm/opentelemetry-js-contrib8
├─┬ @nx/[email protected]
│ ├─┬ @nx/[email protected]
│ │ └── [email protected] deduped
│ └─┬ @nx/[email protected]
│   └─┬ @nx/[email protected]
│     └── [email protected] deduped
├─┬ [email protected]
│ ├─┬ @lerna/[email protected]
│ │ ├─┬ @nx/[email protected]
│ │ │ └── [email protected] deduped
│ │ └── [email protected]
│ ├─┬ @nx/[email protected]
│ │ └── [email protected] deduped
│ └── [email protected]
└── [email protected]

% npm ls --package-lock-only nx -p
/Users/trentm/tm/opentelemetry-js-contrib8/node_modules/nx
/Users/trentm/tm/opentelemetry-js-contrib8/node_modules/lerna/node_modules/nx
/Users/trentm/tm/opentelemetry-js-contrib8/node_modules/@lerna/create/node_modules/nx

@d4nyll d4nyll removed their assignment Oct 29, 2025
@trentm
Copy link
Contributor Author

trentm commented Oct 30, 2025

Closing. This helped track down the issue.

Copied from this Slack comment https://cloud-native.slack.com/archives/C08T7MZTV8W/p1761781178575799?thread_ts=1761762353.429559&cid=C08T7MZTV8W


Short answer, the removal of the nx optional binary deps (for all platforms except your dev one) from package-lock.json, e.g.:

-    "node_modules/@lerna/create/node_modules/@nx/nx-linux-x64-gnu": {
-      "version": "21.6.4",
-      "resolved": "https://registry.npmjs.org/@nx/nx-linux-x64-gnu/-/nx-linux-x64-gnu-21.6.4.tgz",
-      "integrity": "sha512-TYC5a5VnXhEGGVAtPVwdG5qLzf9p7SZyOrOdQMZlAZCchFpL37gmV1OMH1Eb5eM32o+mGF/DDIgbyNXAErTN5g==",
-      "cpu": [
-        "x64"
-      ],
-      "dev": true,
-      "license": "MIT",
-      "optional": true,
-      "os": [
-        "linux"
-      ]
-    },
-    "node_modules/@lerna/create/node_modules/@nx/nx-linux-x64-musl": {
-      "version": "21.6.4",
-      "resolved": "https://registry.npmjs.org/@nx/nx-linux-x64-musl/-/nx-linux-x64-musl-21.6.4.tgz",
-      "integrity": "sha512-2ZG3DUadDpP79oW5DIYMZPKFMCGSRbqLKeHlW8miYORbPJ6VinUp6wTVDx6cAoL2IhP9biD6dItc9Dcfn5Hj2g==",
-      "cpu": [
-        "x64"
-      ],
-      "dev": true,
-      "license": "MIT",
-      "optional": true,
-      "os": [
-        "linux"
-      ]
-    },

causes this breakage on platforms other than darwin-arm64.

  • It is a bug, IMO, that regular npm install ... usage can make this happen. I've seen it in PRs before, but I don't recall the usage pattern that results in this happening. I haven't dug into an npm issue search or creating an issue. I would be happy for anyone else to pursue that.
  • Not installing the binary @nx/nx-{platform} binary dep makes nx (in "nx/src/native/native-bindings.js") fallback to attempting to load a local "nx.wasm32-wasi.wasm" file.
  • As of nx version 21.1.0 that hangs on require.
  • This nx native-bindings is loaded during npm ci because the (entirely unnecessary, IMHO) postinstall script loads itself to check some things in the install.
  • Even though nx added a hard timeout to their postinstall script (https://github.com/nrwl/nx/pull/32027/files#diff-aa465e15ae53c5ba61ded5cda85cef02acd659d93a2f79d05f220afe8f920dc4R14-R20), that doesn't work because the hang happens in the requires above that before the setTimeout is created.

See also this comment on an nx issue: nrwl/nx#32750 (comment)

@trentm trentm closed this Oct 30, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

pkg:auto-configuration-propagators pkg:auto-instrumentations-node pkg:auto-instrumentations-web pkg:host-metrics pkg:id-generator-aws-xray pkg:instrumentation-amqplib pkg:instrumentation-aws-lambda pkg:instrumentation-aws-sdk pkg:instrumentation-bunyan pkg:instrumentation-cassandra-driver pkg:instrumentation-connect pkg:instrumentation-cucumber pkg:instrumentation-dataloader pkg:instrumentation-dns pkg:instrumentation-document-load pkg:instrumentation-express pkg:instrumentation-fastify pkg:instrumentation-fs pkg:instrumentation-generic-pool pkg:instrumentation-graphql pkg:instrumentation-hapi pkg:instrumentation-ioredis pkg:instrumentation-kafkajs pkg:instrumentation-knex pkg:instrumentation-koa pkg:instrumentation-long-task pkg:instrumentation-lru-memoizer pkg:instrumentation-memcached pkg:instrumentation-mongodb pkg:instrumentation-mongoose pkg:instrumentation-mysql pkg:instrumentation-mysql2 pkg:instrumentation-nestjs-core pkg:instrumentation-net pkg:instrumentation-openai pkg:instrumentation-oracledb pkg:instrumentation-pg pkg:instrumentation-pino pkg:instrumentation-redis pkg:instrumentation-restify pkg:instrumentation-router pkg:instrumentation-runtime-node pkg:instrumentation-socket.io pkg:instrumentation-tedious pkg:instrumentation-undici pkg:instrumentation-user-interaction pkg:instrumentation-winston pkg:plugin-react-load pkg:propagation-utils pkg:propagator-aws-xray pkg:propagator-aws-xray-lambda pkg:propagator-instana pkg:propagator-ot-trace pkg:redis-common pkg:resource-detector-alibaba-cloud pkg:resource-detector-aws pkg:resource-detector-azure pkg:resource-detector-container pkg:resource-detector-gcp pkg:resource-detector-github pkg:resource-detector-instana pkg:sampler-aws-xray pkg:sql-common pkg:test-utils pkg-status:unmaintained:autoclose-scheduled pkg-status:unmaintained This package is unmaintained. Only bugfixes may be acceped until a new owner has been found.

Projects

None yet

Development

Successfully merging this pull request may close these issues.