Skip to content

Extension fails in deeply nested workspaces due to 103 character path limit #1233

@djzager

Description

@djzager

Description

The editor extension fails when used in deeply nested workspace directories due to a 103 character limit constraint. This breaks the extension for users with deep project structures or long workspace paths.

Environment

  • Affected Platforms: Windows, macOS
  • VS Code Extension: Konveyor Editor Extensions
  • Branch: release-0.2 (likely affects main as well)

Problem Details

When the extension operates in workspaces with paths approaching or exceeding 103 characters, operations fail due to path length constraints. This appears to affect:

  • File processing pipelines
  • Temporary file operations
  • npm script execution
  • Extension analysis workflows

User Impact

Real-world scenarios that fail:

  • Projects in deeply nested corporate directory structures
  • Workspaces under long user paths (e.g., /Users/long-username/Development/company-name/project-category/project-name/)
  • Windows systems with deep folder hierarchies
  • Shared network drives with verbose naming conventions

Expected Behavior

The extension should work reliably regardless of workspace path depth, within reasonable OS limits (Windows: 260 chars, Unix: 4096 chars).

Suggested Investigation Areas

  1. Path handling: Review code paths that create temporary files or construct long path strings
  2. npm scripts: Check for pipe commands or temporary directory operations with path constraints
  3. File operations: Identify operations that might hit path length limits before OS limits
  4. Cross-platform compatibility: Ensure path handling works across Windows/macOS/Linux

Priority

This is a significant usability issue that makes the extension unusable for many real-world development environments with standard corporate directory structures.

Reproduction

Test the extension in a workspace with a path length approaching 103 characters to observe failures.

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