Skip to content

Missing Source Map Files in @kubernetes/[email protected] Cause ~100 Vite Warnings #2249

Closed
@MichaelJCole

Description

@MichaelJCole

Missing Source Map Files in @kubernetes/[email protected] Cause Vite Warnings

Description

The @kubernetes/client-node package (v1.0.0) includes source map comments (e.g., //# sourceMappingURL=StorageV1alpha1Api.js.map) in its generated JS files under dist/gen/apis/, but the .map files are not included in the npm package. This causes repeated "Failed to load source map" warnings in Vite (used by Nuxt 3) during development, cluttering logs and confusing developers. The warnings are cosmetic but degrade the dev experience due to a packaging issue.

Steps to Reproduce

  1. Create a Nuxt 3 project:
    npx nuxi init k8s-test
    cd k8s-test
    npm install
    npm install @kubernetes/[email protected]
    
  2. Add to server/utils/ingress.ts:
    import * as k8s from '@kubernetes/client-node';
    export async function testK8s() {
      const kc = new k8s.KubeConfig();
      kc.loadFromCluster();
      const k8sApi = kc.makeApiClient(k8s.NetworkingV1Api);
      console.log('K8s API initialized');
    }
  3. Add to plugins/test.server.ts:
    import { defineNuxtPlugin } from '#app';
    import { testK8s } from '~/server/utils/ingress';
    export default defineNuxtPlugin(() => { testK8s(); });
  4. Run npm run dev and check logs.

Expected Behavior

No source map warnings, either by including .map files or removing the comments.

Actual Behavior

~100 Warnings like:

[7:46:46 PM]  WARN  Failed to load source map for /node_modules/@kubernetes/client-node/dist/gen/apis/StorageV1alpha1Api.js.
Error: ENOENT: no such file or directory, open '/node_modules/@kubernetes/client-node/dist/gen/apis/StorageV1alpha1Api.js.map'

Examples

  • Affected files: StorageV1alpha1Api.js, CoreV1Api.js, util.js, etc.
  • Warning: See above log snippet.

Why It’s a Problem

Clutters dev logs, confuses developers, adds minor overhead.

Suggested Fix

  • Include .map files in the package, or
  • Remove //# sourceMappingURL=... comments during build (e.g., --sourceMap false).

Workaround

Patch locally with patch-package:

npm install --save-dev patch-package
find node_modules/@kubernetes/client-node/dist/gen -name '*.js' -exec sed -i 's://# sourceMappingURL=.*$::g' {} +
npx patch-package @kubernetes/client-node

Context

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions