Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

"analysis.extraPaths" no longer working? #351

Open
munkybutt opened this issue Aug 16, 2024 · 16 comments
Open

"analysis.extraPaths" no longer working? #351

munkybutt opened this issue Aug 16, 2024 · 16 comments
Labels
await response Waiting for response from the OP

Comments

@munkybutt
Copy link

As of this morning neither Pyright nor BasedPyright can resolve packages in "analysis.extraPaths".
Everything was functional last night 😢
I have tried re-installing both as well as LSP and the troubleshoot server shows no issues.
I didn't see any update in sublime this morning so not sure what the issue could be?

@jfcherng
Copy link
Collaborator

jfcherng commented Aug 16, 2024

so how do you set it? what is its value? what is your working environment, directory structure etc?

and what is the lsp-pyright prompt in the stastus bar? any error message in ST console?

@munkybutt
Copy link
Author

No errors that I can see.
The paths are set in the sublime-project and are hard coded to avoid relative pathing issues:

"settings":
{
    "LSP": {
        "LSP-basedpyright": {
            "settings": {
                "basedpyright.analysis.extraPaths": [
                    "D:/p4/tools/dcc_tools/ayon/stubs",
                    "D:/p4/tools/dcc_tools/ayon/ayon-core/.venv/Lib/site-packages",
                    "D:/p4/tools/dcc_tools/ayon/ayon-launcher/.venv/Lib/site-packages",
                    "D:/p4/tools/dcc_tools/ayon/ayon-version-control/.venv/Lib/site-packages",
                    "D:/p4/tools/dcc_tools/ayon/ayon-dependencies-tool/.venv/Lib/site-packages",
                    "D:/p4/tools/dcc_tools/ayon/ayon-backend",
                    "D:/p4/tools/dcc_tools/ayon/ayon-core/client",
                    "D:/p4/tools/dcc_tools/ayon/ayon-applications/client",
                    "D:/p4/tools/dcc_tools/ayon/ayon-version-control/client",
                ],
            },

            "enabled": true,
        },
        "LSP-pyright": {
            "settings": {
                "python.analysis.extraPaths": [
                    "D:/p4/tools/dcc_tools/ayon/stubs",
                    "D:/p4/tools/dcc_tools/ayon/ayon-core/.venv/Lib/site-packages",
                    "D:/p4/tools/dcc_tools/ayon/ayon-launcher/.venv/Lib/site-packages",
                    "D:/p4/tools/dcc_tools/ayon/ayon-version-control/.venv/Lib/site-packages",
                    "D:/p4/tools/dcc_tools/ayon/ayon-dependencies-tool/.venv/Lib/site-packages",
                    "D:/p4/tools/dcc_tools/ayon/ayon-backend",
                    "D:/p4/tools/dcc_tools/ayon/ayon-core/client",
                    "D:/p4/tools/dcc_tools/ayon/ayon-applications/client",
                    "D:/p4/tools/dcc_tools/ayon/ayon-version-control/client",
                ],
            },

            "enabled": false,
        },
        "LSP-ruff": {
            "initializationOptions": {
                "settings": {
                    "configuration": "D:/p4/tools/dcc_tools/ayon/ayon-core/pyproject.toml",
                    "organizeImports": false,
                },
            },
        },
    }
}

Output of troubleshooting:

Troubleshooting: LSP-basedpyright

Version

  • LSP: 2.2.0
  • Sublime Text: 4180

Server Test Run

  • exit code: 0
  • output

Server Configuration

  • command
[
  "${node_bin}",
  "${server_path}",
  "--stdio"
]
  • shell command
"C:\Users\Shea.Richardson\AppData\Local\Sublime Text\Package Storage\lsp_utils\node-runtime\18.18.1\node\node.exe" "C:\Users\Shea.Richardson\AppData\Local\Sublime Text\Package Storage\LSP-basedpyright\18.18.1\language-server\node_modules\basedpyright\langserver.index.js" --stdio
  • selector
source.python
  • priority_selector
source.python
  • init_options
{}
  • settings
{
  "basedpyright": {
    "analysis": {
      "autoImportCompletions": true,
      "autoSearchPaths": true,
      "diagnosticMode": "openFilesOnly",
      "diagnosticSeverityOverrides": {
        "reportDuplicateImport": "warning",
        "reportImplicitStringConcatenation": "warning",
        "reportMissingModuleSource": "none",
        "reportUnboundVariable": "warning",
        "reportUnusedClass": "information",
        "reportUnusedFunction": "information",
        "reportUnusedImport": "information",
        "reportUnusedVariable": "information"
      },
      "extraPaths": [
        "D:/p4/tools/dcc_tools/ayon/stubs",
        "D:/p4/tools/dcc_tools/ayon/ayon-core/.venv/Lib/site-packages",
        "D:/p4/tools/dcc_tools/ayon/ayon-launcher/.venv/Lib/site-packages",
        "D:/p4/tools/dcc_tools/ayon/ayon-version-control/.venv/Lib/site-packages",
        "D:/p4/tools/dcc_tools/ayon/ayon-dependencies-tool/.venv/Lib/site-packages",
        "D:/p4/tools/dcc_tools/ayon/ayon-backend",
        "D:/p4/tools/dcc_tools/ayon/ayon-core/client",
        "D:/p4/tools/dcc_tools/ayon/ayon-applications/client",
        "D:/p4/tools/dcc_tools/ayon/ayon-version-control/client"
      ],
      "logLevel": "Information",
      "stubPath": "./typings",
      "typeCheckingMode": "standard",
      "typeshedPaths": [],
      "useLibraryCodeForTypes": true
    },
    "dev_environment": "",
    "disableLanguageServices": false,
    "disableOrganizeImports": false
  },
  "python": {
    "pythonPath": "D:\\uuid\\Scripts\\python.exe",
    "venvPath": ""
  },
  "statusText": "{% set parts = [] %}{% if server_version %}{% do parts.append('v' + server_version) %}{% endif %}{% if venv %}{% do parts.append('venv: ' + venv.venv_prompt) %}{% do parts.append('py: ' + venv.python_version) %}{% do parts.append('by: ' + venv.finder_name) %}{% endif %}{{ parts|join('; ') }}",
  "venvStrategies": [
    "local_dot_venv",
    "env_var_conda_prefix",
    "env_var_virtual_env",
    "rye",
    "poetry",
    "pdm",
    "hatch",
    "pipenv",
    "pyenv",
    "any_subdirectory"
  ]
}
  • env
{
  "PATH": "C:\\Users\\Shea.Richardson\\AppData\\Local\\Sublime Text\\Package Storage\\lsp_utils\\node-runtime\\18.18.1\\node;"
}

Active view

  • File name
D:\p4\tools\dcc_tools\ayon\ayon.sublime-project
  • Settings
{
  "auto_complete_selector": "meta.tag, source - comment - string.quoted.double.block - string.quoted.single.block - string.unquoted.heredoc",
  "lsp_active": true,
  "syntax": "Packages/JSON/JSON.sublime-syntax"
}
  • base scope
source.json

Project / Workspace

  • folders
[
  "D:\\p4\\tools\\dcc_tools\\ayon"
]
  • is project: True
  • project data:
{
  "folders": [
    {
      "path": "D:/p4/tools/dcc_tools/ayon"
    }
  ],
  "settings": {
    "LSP": {
      "LSP-basedpyright": {
        "enabled": true,
        "settings": {
          "basedpyright.analysis.extraPaths": [
            "D:/p4/tools/dcc_tools/ayon/stubs",
            "D:/p4/tools/dcc_tools/ayon/ayon-core/.venv/Lib/site-packages",
            "D:/p4/tools/dcc_tools/ayon/ayon-launcher/.venv/Lib/site-packages",
            "D:/p4/tools/dcc_tools/ayon/ayon-version-control/.venv/Lib/site-packages",
            "D:/p4/tools/dcc_tools/ayon/ayon-dependencies-tool/.venv/Lib/site-packages",
            "D:/p4/tools/dcc_tools/ayon/ayon-backend",
            "D:/p4/tools/dcc_tools/ayon/ayon-core/client",
            "D:/p4/tools/dcc_tools/ayon/ayon-applications/client",
            "D:/p4/tools/dcc_tools/ayon/ayon-version-control/client"
          ]
        }
      },
      "LSP-pyright": {
        "enabled": false,
        "settings": {
          "python.analysis.extraPaths": [
            "D:/p4/tools/dcc_tools/ayon/stubs",
            "D:/p4/tools/dcc_tools/ayon/ayon-core/.venv/Lib/site-packages",
            "D:/p4/tools/dcc_tools/ayon/ayon-launcher/.venv/Lib/site-packages",
            "D:/p4/tools/dcc_tools/ayon/ayon-version-control/.venv/Lib/site-packages",
            "D:/p4/tools/dcc_tools/ayon/ayon-dependencies-tool/.venv/Lib/site-packages",
            "D:/p4/tools/dcc_tools/ayon/ayon-backend",
            "D:/p4/tools/dcc_tools/ayon/ayon-core/client",
            "D:/p4/tools/dcc_tools/ayon/ayon-applications/client",
            "D:/p4/tools/dcc_tools/ayon/ayon-version-control/client"
          ]
        }
      },
      "LSP-ruff": {
        "initializationOptions": {
          "settings": {
            "configuration": "D:/p4/tools/dcc_tools/ayon/ayon-core/pyproject.toml",
            "organizeImports": false
          }
        }
      }
    }
  }
}

LSP configuration

{
  "diagnostics_additional_delay_auto_complete_ms": 0,
  "diagnostics_delay_ms": 0,
  "diagnostics_gutter_marker": "dot",
  "diagnostics_highlight_style": {
    "error": "squiggly",
    "hint": "underline",
    "info": "underline",
    "warning": "squiggly"
  },
  "diagnostics_panel_include_severity_level": 4,
  "document_highlight_style": "underline",
  "inhibit_snippet_completions": false,
  "inhibit_word_completions": true,
  "log_debug": false,
  "log_max_size": 8192,
  "log_server": [],
  "lsp_code_actions_on_save": {
    "source.organizeImports": true
  },
  "lsp_format_on_save": false,
  "on_save_task_timeout_ms": 2000,
  "popup_max_characters_height": 1250,
  "popup_max_characters_width": 100,
  "semantic_highlighting": false,
  "show_code_actions": "annotation",
  "show_code_actions_in_hover": true,
  "show_code_lens": "annotation",
  "show_diagnostics_count_in_view_status": false,
  "show_diagnostics_in_view_status": true,
  "show_diagnostics_panel_on_save": 0,
  "show_diagnostics_severity_level": 4,
  "show_multiline_diagnostics_highlights": true,
  "show_references_in_quick_panel": false,
  "show_symbol_action_links": true,
  "show_view_status": true
}

System PATH

  • C:\Windows\system32
  • C:\Windows
  • C:\Windows\System32\Wbem
  • C:\Windows\System32\WindowsPowerShell\v1.0\
  • C:\Windows\System32\OpenSSH\
  • C:\Program Files\dotnet\
  • C:\Program Files\Perforce\
  • C:\Program Files\Common Files\Autodesk Shared\
  • C:\Program Files\Docker\Docker\resources\bin
  • C:\Program Files\Git\cmd
  • C:\Program Files (x86)\Windows Kits\10\Windows Performance Toolkit\
  • C:\Program Files\PowerShell\7\
  • D:\p4\tools\dcc_tools\mg_tools_standalone\python.envs.poetry\bin\
  • D:\p4\tools\dcc_tools\mg_tools_standalone\python.envs.pyenv\pyenv-win\bin
  • D:\p4\tools\dcc_tools\mg_tools_standalone\python.envs.pyenv\pyenv-win\shims
  • C:\Program Files\WindowsApps\Microsoft.OutlookForWindows_1.2024.111.100_x64__8wekyb3d8bbwe
  • C:\Users\Shea.Richardson.dotnet\tools
  • C:\Users\Shea.Richardson\AppData\Local\Microsoft\WindowsApps
  • C:\Users\Shea.Richardson\AppData\Local\Programs\Microsoft VS Code\bin
  • C:\Program Files\CMake\bin

So ayon_core is in "D:/p4/tools/dcc_tools/ayon/ayon-core/client" but it cannot be resolved even though the path is in "extraPaths"

image

image

@jfcherng
Copy link
Collaborator

jfcherng commented Aug 16, 2024

Oops. I thought it's pythonPath, which we have some refactoring recently. We hardly change analysis.extraPaths.

@jfcherng
Copy link
Collaborator

Wrong repo for filing an issue? since you are using basedpyright.

@jfcherng
Copy link
Collaborator

Didn't see any "path" mentioned in the pyright changelog. My pylance still works well.

@munkybutt
Copy link
Author

Wrong repo for filing an issue? since you are using basedpyright.

It is broken for both pyright and basedPyright and as based is a fork of pyright I figured made more sense here?

It is very strange - everything was fine last night before I shut down, this morning it is borked :(

Here is the pyright output:

Troubleshooting: LSP-pyright

Version

  • LSP: 2.2.0
  • Sublime Text: 4180

Server Test Run

  • exit code: 0
  • output

Server Configuration

  • command
[
  "${node_bin}",
  "${server_path}",
  "--stdio"
]
  • shell command
"C:\Users\Shea.Richardson\AppData\Local\Sublime Text\Package Storage\lsp_utils\node-runtime\18.18.1\node\node.exe" "C:\Users\Shea.Richardson\AppData\Local\Sublime Text\Package Storage\LSP-pyright\18.18.1\language-server\node_modules\pyright\langserver.index.js" --stdio
  • selector
source.python
  • priority_selector
source.python
  • init_options
{}
  • settings
{
  "pyright": {
    "dev_environment": "",
    "disableLanguageServices": false,
    "disableOrganizeImports": false
  },
  "python": {
    "analysis": {
      "autoImportCompletions": true,
      "autoSearchPaths": true,
      "diagnosticMode": "openFilesOnly",
      "diagnosticSeverityOverrides": {},
      "extraPaths": [
        "D:/p4/tools/dcc_tools/ayon/stubs",
        "D:/p4/tools/dcc_tools/ayon/ayon-core/.venv/Lib/site-packages",
        "D:/p4/tools/dcc_tools/ayon/ayon-launcher/.venv/Lib/site-packages",
        "D:/p4/tools/dcc_tools/ayon/ayon-version-control/.venv/Lib/site-packages",
        "D:/p4/tools/dcc_tools/ayon/ayon-dependencies-tool/.venv/Lib/site-packages",
        "D:/p4/tools/dcc_tools/ayon/ayon-backend",
        "D:/p4/tools/dcc_tools/ayon/ayon-core/client",
        "D:/p4/tools/dcc_tools/ayon/ayon-applications/client",
        "D:/p4/tools/dcc_tools/ayon/ayon-version-control/client"
      ],
      "logLevel": "Information",
      "stubPath": "./typings",
      "typeCheckingMode": "standard",
      "typeshedPaths": [],
      "useLibraryCodeForTypes": true
    },
    "pythonPath": "D:\\uuid\\Scripts\\python.exe",
    "venvPath": ""
  },
  "statusText": "{% set parts = [] %}{% if server_version %}{% do parts.append('v' + server_version) %}{% endif %}{% if venv %}{% do parts.append('venv: ' + venv.venv_prompt) %}{% do parts.append('py: ' + venv.python_version) %}{% do parts.append('by: ' + venv.finder_name) %}{% endif %}{{ parts|join('; ') }}",
  "venvStrategies": [
    "local_dot_venv",
    "env_var_conda_prefix",
    "env_var_virtual_env",
    "rye",
    "poetry",
    "pdm",
    "hatch",
    "pipenv",
    "pyenv",
    "any_subdirectory"
  ]
}
  • env
{
  "PATH": "C:\\Users\\Shea.Richardson\\AppData\\Local\\Sublime Text\\Package Storage\\lsp_utils\\node-runtime\\18.18.1\\node;"
}

Active view

  • File name
D:\p4\tools\dcc_tools\ayon\ayon-version-control\client\version_control\tools\workfiles\widgets\files_widget_workarea.py
  • Settings
{
  "auto_complete_selector": "meta.tag, source - comment - string.quoted.double.block - string.quoted.single.block - string.unquoted.heredoc",
  "lsp_active": true,
  "syntax": "Packages/Python/Python.sublime-syntax"
}
  • base scope
source.python

Project / Workspace

  • folders
[
  "D:\\p4\\tools\\dcc_tools\\ayon"
]
  • is project: True
  • project data:
{
  "folders": [
    {
      "path": "D:/p4/tools/dcc_tools/ayon"
    }
  ],
  "settings": {
    "LSP": {
      "LSP-basedpyright": {
        "enabled": true,
        "settings": {
          "basedpyright.analysis.extraPaths": [
            "D:/p4/tools/dcc_tools/ayon/stubs",
            "D:/p4/tools/dcc_tools/ayon/ayon-core/.venv/Lib/site-packages",
            "D:/p4/tools/dcc_tools/ayon/ayon-launcher/.venv/Lib/site-packages",
            "D:/p4/tools/dcc_tools/ayon/ayon-version-control/.venv/Lib/site-packages",
            "D:/p4/tools/dcc_tools/ayon/ayon-dependencies-tool/.venv/Lib/site-packages",
            "D:/p4/tools/dcc_tools/ayon/ayon-backend",
            "D:/p4/tools/dcc_tools/ayon/ayon-core/client",
            "D:/p4/tools/dcc_tools/ayon/ayon-applications/client",
            "D:/p4/tools/dcc_tools/ayon/ayon-version-control/client"
          ]
        }
      },
      "LSP-pyright": {
        "enabled": false,
        "settings": {
          "python.analysis.extraPaths": [
            "D:/p4/tools/dcc_tools/ayon/stubs",
            "D:/p4/tools/dcc_tools/ayon/ayon-core/.venv/Lib/site-packages",
            "D:/p4/tools/dcc_tools/ayon/ayon-launcher/.venv/Lib/site-packages",
            "D:/p4/tools/dcc_tools/ayon/ayon-version-control/.venv/Lib/site-packages",
            "D:/p4/tools/dcc_tools/ayon/ayon-dependencies-tool/.venv/Lib/site-packages",
            "D:/p4/tools/dcc_tools/ayon/ayon-backend",
            "D:/p4/tools/dcc_tools/ayon/ayon-core/client",
            "D:/p4/tools/dcc_tools/ayon/ayon-applications/client",
            "D:/p4/tools/dcc_tools/ayon/ayon-version-control/client"
          ]
        }
      },
      "LSP-ruff": {
        "initializationOptions": {
          "settings": {
            "configuration": "D:/p4/tools/dcc_tools/ayon/ayon-core/pyproject.toml",
            "organizeImports": false
          }
        }
      }
    }
  }
}

LSP configuration

{
  "diagnostics_additional_delay_auto_complete_ms": 0,
  "diagnostics_delay_ms": 0,
  "diagnostics_gutter_marker": "dot",
  "diagnostics_highlight_style": {
    "error": "squiggly",
    "hint": "underline",
    "info": "underline",
    "warning": "squiggly"
  },
  "diagnostics_panel_include_severity_level": 4,
  "document_highlight_style": "underline",
  "inhibit_snippet_completions": false,
  "inhibit_word_completions": true,
  "log_debug": false,
  "log_max_size": 8192,
  "log_server": [],
  "lsp_code_actions_on_save": {
    "source.organizeImports": true
  },
  "lsp_format_on_save": false,
  "on_save_task_timeout_ms": 2000,
  "popup_max_characters_height": 1250,
  "popup_max_characters_width": 100,
  "semantic_highlighting": false,
  "show_code_actions": "annotation",
  "show_code_actions_in_hover": true,
  "show_code_lens": "annotation",
  "show_diagnostics_count_in_view_status": false,
  "show_diagnostics_in_view_status": true,
  "show_diagnostics_panel_on_save": 0,
  "show_diagnostics_severity_level": 4,
  "show_multiline_diagnostics_highlights": true,
  "show_references_in_quick_panel": false,
  "show_symbol_action_links": true,
  "show_view_status": true
}

System PATH

  • C:\Windows\system32
  • C:\Windows
  • C:\Windows\System32\Wbem
  • C:\Windows\System32\WindowsPowerShell\v1.0\
  • C:\Windows\System32\OpenSSH\
  • C:\Program Files\dotnet\
  • C:\Program Files\Perforce\
  • C:\Program Files\Common Files\Autodesk Shared\
  • C:\Program Files\Docker\Docker\resources\bin
  • C:\Program Files\Git\cmd
  • C:\Program Files (x86)\Windows Kits\10\Windows Performance Toolkit\
  • C:\Program Files\PowerShell\7\
  • D:\p4\tools\dcc_tools\mg_tools_standalone\python.envs.poetry\bin\
  • D:\p4\tools\dcc_tools\mg_tools_standalone\python.envs.pyenv\pyenv-win\bin
  • D:\p4\tools\dcc_tools\mg_tools_standalone\python.envs.pyenv\pyenv-win\shims
  • C:\Program Files\WindowsApps\Microsoft.OutlookForWindows_1.2024.111.100_x64__8wekyb3d8bbwe
  • C:\Users\Shea.Richardson.dotnet\tools
  • C:\Users\Shea.Richardson\AppData\Local\Microsoft\WindowsApps
  • C:\Users\Shea.Richardson\AppData\Local\Programs\Microsoft VS Code\bin
  • C:\Program Files\CMake\bin

Same issue:

image

@jfcherng
Copy link
Collaborator

Do you know how to revert to any LSP-pyright version you want to use? (i.e., that previous one)

@munkybutt
Copy link
Author

oh no - had no idea that was possible. Is there a command or setting?

@jfcherng
Copy link
Collaborator

jfcherng commented Aug 16, 2024

oh no - had no idea that was possible. Is there a command or setting?

Basically you just clone this repository so that it's put like

Packages/
├── LSP-pyright
│   ├── boot.py
│   ├── ...

you can checkout to any commit and restart ST to test.

@jfcherng jfcherng added the await response Waiting for response from the OP label Aug 17, 2024
@munkybutt
Copy link
Author

ok - rolling back to 1.2.9 gets things working again:
https://github.com/sublimelsp/LSP-basedpyright/releases/tag/1.2.9

@munkybutt
Copy link
Author

I haven't tried pyright - but I expect it will have the same thing

@jfcherng
Copy link
Collaborator

jfcherng commented Aug 19, 2024

ok - rolling back to 1.2.9 gets things working again: sublimelsp/LSP-basedpyright@1.2.9 (release)

Can you try v1.2.10? The one you used when you creating this issue is probably v1.2.11 (Package Control doesn't care GitHub Releases but it cares git tags).

@munkybutt
Copy link
Author

Pyright v1.4.13 is borked
BasedPyright v1.2.10 is functional

@jfcherng
Copy link
Collaborator

jfcherng commented Aug 20, 2024

my current best guess is that pyright 1.1.376 is broken because

  • LSP-pyright v1.4.13 uses pyright 1.1.376
  • LSP-basedpyright v1.2.11 uses basedpyright 1.16.0, which is based on pyright 1.1.376 as per its changelog

but I don't see any related issue on https://github.com/microsoft/pyright/issues at the first glance.

@jfcherng
Copy link
Collaborator

jfcherng commented Aug 20, 2024

hmm... wait, no LSP-pyright pyright 1.1.375

having no idea what's going on at this moment. at the same time your seem to be the only one who is affected by this issue.

@jfcherng jfcherng removed the await response Waiting for response from the OP label Aug 20, 2024
@munkybutt
Copy link
Author

ok - I am happy to pin to a version that is working for me and review in a few more releases to see if I can stick to latest again.
And if not will come back to try and debug further?
Thanks very much for you help @jfcherng <3

@jfcherng jfcherng added the await response Waiting for response from the OP label Aug 20, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
await response Waiting for response from the OP
Projects
None yet
Development

No branches or pull requests

2 participants