Hello,

I'm using *LazyVim* on *OpenBSD 7.7 (GENERIC.MP#625 <http://GENERIC.MP#625>
amd64)* for Angular development. While my Angular application builds and
runs without problems, I'm encountering multiple issues in the *LazyVim*
IDE after enabling LSP support for Angular via the lang.angular plugin
(which also pulls in lang.typescript).

The issues are consistent across all .ts files in my project:

   -

   File
   '/home/marto/repos/angular/finances/node_modules/@angular/core/index.d.ts'
   is not a module. [2306]
   -

   This syntax requires an imported helper but module 'tslib' cannot be
   found. [2354] (on every @Component decorator)
   -

   Cannot find name 'Readonly'. [2304]
   -

   Attempting to jump to definition (lsp_definitions) fails with "No
   results found".

I've tried the following:

   -

   Adding tslib explicitly to dependencies in package.json
   -

   Deleting and reinstalling node_modules and re-running npm install
   -

   Confirming that the project builds successfully with ng build

Versions:

   -

   Node.js: v22.15.1 (built from ports)
   -

   TypeScript: 5.7.3
   -

   Angular: 19.2.12

The same project and IDE setup works as expected on DragonFlyBSD (with
node18), which makes me suspect the issue may be related to Node/npm
interaction with OpenBSD or potential missing/incompatible dependencies in
the environment.

I've attached the following files:

   -

   LspInfo.txt
   -

   package.json
   -

   tsconfig.json

I'm happy to test or provide further details (e.g., full dmesg, build
paths, language server logs) if anyone has ideas or has run into similar
problems.

Thanks in advance for any guidance.

Best regards,
Martin
uname -a: OpenBSD marto.OpenBSD 7.7 GENERIC.MP#625 amd64
==============================================================================
vim.lsp: require("vim.lsp.health").check()

- LSP log level : WARN
- Log path: /home/marto/.local/state/nvim/lsp.log
- Log size: 0 KB

vim.lsp: Active Clients ~
- angularls (id: 1)
    Root directory: ~/repos/angular/finances
    Command: ngserver --stdio --tsProbeLocations 
/home/marto/.local/share/nvim/mason/packages/angular-language-server/node_modules,/home/marto/repos/angular/finances/node_modules
 --ngProbeLocations 
/home/marto/.local/share/nvim/mason/packages/angular-language-server/node_modules/@angular/language-server/node_modules,/home/marto/repos/angular/finances/node_modules
    Settings: vim.empty_dict()
    Attached buffers: 71, 5, 93, 83, 106, 115
- vtsls (id: 2)
   pes = {
            enabled = false
          }
        },
        suggest = <2>{
          completeFunctionCalls = true
        },
        updateImportsOnFileMove = <3>{
          enabled = "always"
        }
      },
      typescript = {
        inlayHints = <table 1>,
        suggest = <table 2>,
        updateImportsOnFileMove = <table 3>
      },
      vtsls = {
        autoUseWorkspaceTsdk = true,
        enableMoveToFileCodeAction = true,
        experimental = {
          completion = {
            enableServerSideFuzzyMatch = true
          },
          maxInlayHintLength = 30
        },
        tsserver = {
          globalPlugins = { {
              enableForWorkspaceTypeScriptVersions = false,
              location = 
"/home/marto/.local/share/nvim/mason/packages/angular-language-server//node_modules/@angular/language-server",
              name = "@angular/language-server"
            } }
        }
      }
    }
    Attached buffers: 71, 5, 93, 83, 106, 115

vim.lsp: File Watcher ~
- file watching "(workspace/didChangeWatchedFiles)" disabled on all clients

vim.lsp: Position Encodings ~
- No buffers contain mixed position encodings

Attachment: tsconfig.json
Description: application/json

Attachment: package.json
Description: application/json

Reply via email to