OmniPascal doesn't seem to work correctly with latest vscode v.1.31

Issue #107 resolved
Bee Jay created an issue

Just got a VS Code update and suddenly OmniPascal doesn't seem to work correctly. No outline/breadcrumb, no class member autocomplete, no go to definition, etc. It even failed to load a project. I think the new VS Code's extension infrastructure changes a bit that makes OmniPascal no longer works properly. It makes OmniPascal practically unusable.

Hope this will be fixed as soon as possible. Thank you.

Comments (11)

  1. Christopher Wosinski repo owner

    It's working well on my machines. Is OmniPascal installed correctly? Did you try to reinstall it? Are there other Pascal extensions installed? Does it work if you disable them and reload VSCode? Which OS do you use?

  2. Bee Jay reporter
    • Yes, it's installed correctly. How would anyone installed it incorrectly anyway?
    • Yes, I have tried to reinstall it. I even tried to reinstall the older version, but it still didn't work.
    • No, there's no other Pascal extension installed. OmniPascal is the one and only Pascal extension I'm using now.
    • Yes, I have tried to disable it and reload VS Code, still didn't work either.
    • Sorry I forgot to mention that I'm using the latest VS Code with FPC v.3.0.4 on MacOS Mojave.

    Perhaps I have to uninstall all other extensions I'm using and left only OmniPascal alone, just to make sure it's the problem. I'll report later.

  3. Bee Jay reporter

    I have tried to disable and uninstall all other extensions, but OmniPascal still didn't work properly. I should have mentioned that the only feature that works all along is syntax highlighting, but the others are not working properly, not even to load a project.

  4. Christopher Wosinski repo owner

    Hmm..I hope I can take a look at it this weekend. It looks like OmniPascalServer binary doesn't start. Maybe the system prevents the start of the application?

    Please try this:

    • open a terminal
    • naviagete to {VSCode's extensions folder}/wosi.omnipascal-0.17.0/bin/mac/
    • try to run ./OmniPascalServer

    Does the file exist?

    Does it work?

    If not, run chmod and grant execution rights for ./OmniPascalServer

    Does it start now?

    Does the OS prevent the start of OmniPascalServer?

  5. Bee Jay reporter

    Here's my investigation:

    • No, I don't think the system prevents the execution of any vs code's extensions because the other extensions work just fine.
    • OmniPascalServer file does exist in {vscode's extension folder}/wosi.omnipascal-0.17.0/bin/mac/
    • No, I couldn't run it from Terminal because it has no execution right.
    • So I granted execution rights to it by chmod +x it from Terminal.
    • Yes, by now I could run it from Terminal, so I assume it works.
    • No, I don't see the system prevents it to start.

    However, OmniPascal still didn't work in vs code, even though I've run it manually from Terminal before I launched vs code application.

  6. Bee Jay reporter

    Yes, I can confirm that OmniPascal works great with the older version of vs code, v.1.30.2. Once I update vs code to later version, OmniPascal suddenly no longer works. This validates my earlier suspicion that the source of the problem is the newer vs code itself which somehow breaks OmniPascal extension.

  7. Christopher Wosinski repo owner

    I've just released a minor update that fixes this issue. Thanks for reporting! I wouldn't have recognized the breaking change on Mac and Linux otherwise.

  8. Christopher Wosinski repo owner

    There was a breaking change in the chmod function signature that needs to be called on Mac and Linux to ensure the language server can be started. In the latest VSCode release the function requires an additional argument. Without the argument the call failed, so the extension didn't even try to start the language server.

  9. Bee Jay reporter

    Thank you for the explanation. I can confirm that the latest OmniPascal version works on the latest VS Code version.

  10. Log in to comment