Hacktoberfest 2026 : les issues que les mainteneurs ont marquées pour octobre, ouvertes et accessibles aux débutants. Parcourir les issues Hacktoberfest

CLI crashes on startup with @opentelemetry/semantic-conventions default export error

Ouverte Adaptée aux débutants
#1,088 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Les mainteneurs répondent en général sous 2 jours

Personne n'a encore pris cette issue.

Évaluation

Difficulté
2/5
Temps estimé
1-3 heures
Accessibilité débutants
65/100
Type d'issue
Bug
Clarté
Clairement spécifiée
Activité
Active
Stack technique
javascript, node.js
Domaine
cli

Piste de recherche

Lisez l’entrée de dépendance de @opentelemetry/semantic-conventions dans package.json et repérez l’importation dans dist/cli.mjs décrite dans le rapport. Vérifiez en quoi les exports de la version 1.44.0 diffèrent de ceux de la version 1.43.0, puis reproduisez le problème avec une installation propre et exécutez cmdc --version, --help et info. Le travail est terminé lorsque les nouvelles installations démarrent sans le SyntaxError dû à l’absence d’export par défaut.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

Summary
Root Cause
  1. Upstream Breaking Change:
    • On October 28, 2026, @opentelemetry/[email protected] was published. In this release, the package build was revamped with tsdown,
    routing ESM imports directly to ./dist/index.mjs, which exposes only named exports and no default export.
    • In previous versions (1.43.0 and earlier), exports fell back to CommonJS (build/src/index.js), which allowed Node.js to synthesize a default
    export object.

  2. Permissive Semver Range:
    • command-code (the package behind cmdc) specified "@opentelemetry/semantic-conventions": "^1.30.0" in its dependencies.
    • When installed, npm resolved the dependency to the newly released 1.44.0.
    • The bundled code in cli.mjs performs:
    import ze from "@opentelemetry/semantic-conventions";

    • Because 1.44.0 has no default export, Node.js halted execution with a SyntaxError.

──────

Resolution Applied
  1. Downgraded Dependency:
    • Replaced @opentelemetry/semantic-conventions in command-code's global node_modules with version 1.43.0.
  2. Pinned Version:
    • Pinned the dependency to exact version "1.43.0" in package.json to prevent automatic re-upgrades until command-code publishes an official
    patch.
  3. Verification:
    • Verified that cmdc --version (outputs 1.88.1), cmdc --help, and cmdc info execute and exit cleanly without errors.

────────────────────────────────────────────────────────────

need to file bug on github issues with the exact packge version give me content for this

▸ Thought for 6s
Here is a complete, preformatted issue report ready to paste into GitHub Issues:
──────

Title
[Bug]: SyntaxError: The requested module '@opentelemetry/semantic-conventions' does not provide an export named 'default' on startup

──────

Issue Body
### Describe the Bug

When running `cmdc` (or `cmd`, `command-code`), the CLI crashes immediately on startup with a `SyntaxError`:

SyntaxError: The requested module '@opentelemetry/semantic-conventions' does not provide an export named 'default'
at #_instantiate (node:internal/modules/esm/module_job:254:21)
at async ModuleJob.run (node:internal/modules/esm/module_job:369:5)
at async onImport.tracePromise.proto (node:internal/modules/esm/loader:691:26)
at async file:///.../command-code/dist/index.mjs:2:1757

### Environment

- **Package Version**: `[email protected]`
- **Node Version**: `v24.11.0` (affects Node >= 22)
- **OS**: Windows (win32 x64) / macOS / Linux
- **npm Version**: Current (`npm i -g command-code`)

### Steps to Reproduce

1. Install `command-code` globally:
   ```bash
   npm install -g command-code
  1. Run any command:
    cmdc --version
    # or
    cmd

  2. Observe the crash before the CLI loads.

Root Cause Analysis
  1. In [email protected]'s package.json, @opentelemetry/semantic-conventions is specified as:
    "@opentelemetry/semantic-conventions": "^1.30.0"

  2. On October 28, 2026, @opentelemetry/[email protected] was released. This release revamped the build output with tsdown and routed
    exports directly to pure ESM (./dist/index.mjs), which provides only named exports and no default export.

  3. In earlier versions (1.43.0 and below), the package entrypoint pointed to CommonJS (build/src/index.js), enabling Node's synthetic default
    import.

  4. Because ^1.30.0 resolves to 1.44.0 on fresh installs, dist/cli.mjs fails when executing:
    import ze from "@opentelemetry/semantic-conventions";
    // ...
    ({ ATTR_SERVICE_NAME: ZD, ATTR_SERVICE_VERSION: eN } = ze)

Proposed Solutions

Any of the following will fix the issue:

  1. Named Import (Recommended): Change the import in the source to named imports:
    import { ATTR_SERVICE_NAME, ATTR_SERVICE_VERSION } from "@opentelemetry/semantic-conventions";
    or namespace import:
    import * as ze from "@opentelemetry/semantic-conventions";

  2. Pin Dependency Version: Pin the dependency in package.json until the import style is updated:
    "@opentelemetry/semantic-conventions": "1.43.0"

Expected Behavior
Expected Behavior
The CLI (`cmdc`, `cmd`, or `command-code`) should start up successfully and display the interactive interface or handle flags (e.g.,
`--version`, `--help`) without throwing a module resolution `SyntaxError`.
Actual Behavior
### Actual Behavior

The CLI immediately crashes upon execution and exits with code 1 before loading any commands or interface:

```text
SyntaxError: The requested module '@opentelemetry/semantic-conventions' does not provide an export named 'default'
    at #_instantiate (node:internal/modules/esm/module_job:254:21)
    at async ModuleJob.run (node:internal/modules/esm/module_job:369:5)
    at async onImport.tracePromise.__proto__ (node:internal/modules/esm/loader:691:26)
    at async file:///.../command-code/dist/index.mjs:2:1757

Node.js v24.11.0
Steps to reproduce the issue
Steps to Reproduce
1. Install `command-code` globally via npm (or clean install):
   ```bash
   npm install -g command-code
  1. Run any command or flag using cmdc, cmd, or command-code:
    cmdc --version
    (or simply cmdc)
  2. The process crashes immediately with the SyntaxError.
Command Code Version

1.88.1

Operating System

Windows

Terminal/IDE

No response

Shell

No response

Session file (optional)

No response

Fix prompt (optional)
### Context
`@opentelemetry/[email protected]` switched its ESM build (`dist/index.mjs`) to export only named attributes, dropping the synthetic
CommonJS default export. Because `package.json` specifies `"^1.30.0"`, fresh installs pull in `1.44.0`, breaking `import ze from
"@opentelemetry/semantic-conventions"` with:
`SyntaxError: The requested module '@opentelemetry/semantic-conventions' does not provide an export named 'default'`

### Instructions
1. In the source file where `@opentelemetry/semantic-conventions` is imported:
   - Replace any default import (`import ze from "@opentelemetry/semantic-conventions"`) with named imports:
     ```typescript
     import { ATTR_SERVICE_NAME, ATTR_SERVICE_VERSION } from "@opentelemetry/semantic-conventions";
     ```
   - Or change to a namespace import:
     ```typescript
     import * as ze from "@opentelemetry/semantic-conventions";
     ```
2. (Optional safeguard) Pin the dependency in `package.json`:
   ```json
   "@opentelemetry/semantic-conventions": "~1.43.0"
   ```
3. Rebuild the CLI and ensure `cmdc --version` executes cleanly without throwing `SyntaxError`.
`````*
Additional context

No response

Langage dominant
Aucune donnée de langage
Étoiles
4.2k
Forks
372
Merge moyen
4 j 15 h
PR mergées (30 j)
9

Préparer son environnement

Ce projet ne fournit ni conteneur de développement, ni Dockerfile, ni guide de contribution : l'installation est à votre charge. Commencez par son README, et consultez notre guide de la première contribution pour les étapes générales.

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de CommandCodeAI/command-code

Toutes les issues de CommandCodeAI/command-code

Issues similaires

Plus d'issues CLI

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.