Skip to content

Commit 587f74c

Browse files
authored
Merge pull request #1326 from oraios/fix/added_ignored_dirs
Followup after 34e1fae - added more ignored directories
2 parents 2305389 + 57dec4c commit 587f74c

8 files changed

Lines changed: 45 additions & 8 deletions

File tree

scripts/demo_run_tools.py

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@
77
from pathlib import Path
88
from pprint import pprint
99

10+
from toon_format import encode
11+
1012
from serena.agent import SerenaAgent
1113
from serena.config.serena_config import SerenaConfig
1214
from serena.constants import REPO_ROOT
@@ -24,7 +26,7 @@
2426
serena_config = SerenaConfig.from_config_file()
2527
serena_config.web_dashboard = False
2628
# project = Path(REPO_ROOT).parent / "serena-jetbrains-plugin-copy"
27-
project = Path(REPO_ROOT) / "test/resources/repos/python/test_repo"
29+
project = Path(REPO_ROOT)
2830
agent = SerenaAgent(project=str(project), serena_config=serena_config)
2931

3032
# apply a tool
@@ -37,11 +39,12 @@
3739
inline_symbol = agent.get_tool(JetBrainsInlineSymbol)
3840

3941
result = agent.execute_task(
40-
lambda: inline_symbol.apply(
41-
relative_path="test_repo/nested.py",
42-
name_path="OuterClass/NestedClass",
43-
keep_definition=True,
42+
lambda: overview_tool.apply(
43+
# name_path_pattern="SerenaAgent",
44+
relative_path="src/serena/agent.py",
45+
depth=2,
46+
# keep_definition=True,
4447
)
4548
)
46-
pprint(json.loads(result))
49+
pprint(encode(json.loads(result)))
4750
# input("Press Enter to continue...")

src/solidlsp/language_servers/ccls_language_server.py

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,8 @@
3434
import threading
3535
from typing import Any, cast
3636

37+
from overrides import override
38+
3739
from solidlsp.ls import (
3840
LanguageServerDependencyProvider,
3941
LanguageServerDependencyProviderSinglePath,
@@ -67,6 +69,13 @@ def __init__(self, config: LanguageServerConfig, repository_root_path: str, soli
6769
def _create_dependency_provider(self) -> LanguageServerDependencyProvider:
6870
return self.DependencyProvider(self._custom_settings, self._ls_resources_dir)
6971

72+
@override
73+
def is_ignored_dirname(self, dirname: str) -> bool:
74+
ignored_dirs = [
75+
".ccls-cache",
76+
]
77+
return super().is_ignored_dirname(dirname) or dirname in ignored_dirs
78+
7079
class DependencyProvider(LanguageServerDependencyProviderSinglePath):
7180
def _get_or_install_core_dependency(self) -> str:
7281
"""

src/solidlsp/language_servers/clangd_language_server.py

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@
55
import threading
66
from typing import Any, cast
77

8+
from overrides import override
9+
810
from solidlsp.ls import LanguageServerDependencyProvider, LanguageServerDependencyProviderSinglePath, ProcessLaunchInfo, SolidLanguageServer
911
from solidlsp.ls_config import LanguageServerConfig
1012
from solidlsp.lsp_protocol_handler.lsp_types import InitializeParams
@@ -40,6 +42,13 @@ def __init__(self, config: LanguageServerConfig, repository_root_path: str, soli
4042
self.initialize_searcher_command_available = threading.Event()
4143
self.resolve_main_method_available = threading.Event()
4244

45+
@override
46+
def is_ignored_dirname(self, dirname: str) -> bool:
47+
ignored_dirs = [
48+
".ccls-cache",
49+
]
50+
return super().is_ignored_dirname(dirname) or dirname in ignored_dirs
51+
4352
def _prepare_compile_commands(self) -> str | None:
4453
"""
4554
Prepare clangd compilation database with absolute directory paths.

src/solidlsp/language_servers/clojure_lsp.py

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,8 @@
1010
import threading
1111
from typing import cast
1212

13+
from overrides import override
14+
1315
from solidlsp.ls import LanguageServerDependencyProvider, LanguageServerDependencyProviderSinglePath, SolidLanguageServer
1416
from solidlsp.ls_config import LanguageServerConfig
1517
from solidlsp.lsp_protocol_handler.lsp_types import InitializeParams
@@ -59,6 +61,11 @@ class ClojureLSP(SolidLanguageServer):
5961
CLOJURE_LSP_VERSION = CLOJURE_LSP_VERSION
6062
CLOJURE_LSP_ALLOWED_HOSTS = CLOJURE_LSP_ALLOWED_HOSTS
6163

64+
@override
65+
def is_ignored_dirname(self, dirname: str) -> bool:
66+
ignored_dirs = [".clj-kondo", ".lsp", ".cpcache"]
67+
return super().is_ignored_dirname(dirname) or dirname in ignored_dirs
68+
6269
@classmethod
6370
def _runtime_dependencies(cls, version: str) -> RuntimeDependencyCollection:
6471
clojure_lsp_releases = f"https://github.com/clojure-lsp/clojure-lsp/releases/download/{version}"

src/solidlsp/language_servers/ruby_lsp.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,7 @@ def is_ignored_dirname(self, dirname: str) -> bool:
6767
"public/packs", # Webpacker output
6868
"public/webpack", # Webpack output
6969
"public/assets", # Rails compiled assets
70+
".ruby-lsp",
7071
]
7172
return super().is_ignored_dirname(dirname) or dirname in ruby_ignored_dirs
7273

src/solidlsp/language_servers/solargraph.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,7 @@ def is_ignored_dirname(self, dirname: str) -> bool:
6767
"doc", # Generated documentation
6868
"node_modules", # Node modules (for Rails with JS)
6969
"storage", # Active Storage files (Rails)
70+
".ruby-lsp",
7071
]
7172
return super().is_ignored_dirname(dirname) or dirname in ruby_ignored_dirs
7273

src/solidlsp/language_servers/taplo_server.py

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,8 @@
1414
import stat
1515
from typing import Any
1616

17+
from overrides import override
18+
1719
from solidlsp.ls import LanguageServerDependencyProvider, LanguageServerDependencyProviderSinglePath, SolidLanguageServer
1820
from solidlsp.ls_config import LanguageServerConfig
1921
from solidlsp.ls_utils import FileUtils, PathUtils
@@ -266,6 +268,10 @@ def window_log_message(msg: dict) -> None:
266268

267269
log.info("Taplo server initialization complete")
268270

271+
@override
269272
def is_ignored_dirname(self, dirname: str) -> bool:
270-
"""Define TOML-specific directories to ignore."""
271-
return super().is_ignored_dirname(dirname) or dirname in ["target", ".cargo", "node_modules"]
273+
if dirname == ".vscode":
274+
# special case, one might want to analyze toml files in .vscode
275+
return False
276+
dirnames_to_ignore = ["target", ".cargo", "node_modules"]
277+
return dirname in dirnames_to_ignore or super().is_ignored_dirname(dirname)

src/solidlsp/ls.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -371,6 +371,7 @@ class SolidLanguageServer(ABC):
371371
".nox", # test runners
372372
".idea", # IDE internals
373373
".serena", # serena's own data
374+
".vscode", # Doesn't contain symbols
374375
}
375376
)
376377

0 commit comments

Comments
 (0)