mirror of
https://github.com/Aider-AI/aider.git
synced 2025-06-06 12:45:00 +00:00
fix: handle exceptions during index loading and recreate cache if necessary in aider/help.py
This commit is contained in:
parent
a230fa10b3
commit
cb1f6f2e3a
1 changed files with 33 additions and 19 deletions
|
@ -58,6 +58,9 @@ def fname_to_url(filepath):
|
||||||
return docid
|
return docid
|
||||||
|
|
||||||
|
|
||||||
|
import json
|
||||||
|
import shutil
|
||||||
|
|
||||||
def get_index():
|
def get_index():
|
||||||
from llama_index.core import (
|
from llama_index.core import (
|
||||||
Document,
|
Document,
|
||||||
|
@ -69,12 +72,23 @@ def get_index():
|
||||||
|
|
||||||
dname = Path.home() / ".aider" / "caches" / ("help." + __version__)
|
dname = Path.home() / ".aider" / "caches" / ("help." + __version__)
|
||||||
|
|
||||||
|
index = None
|
||||||
|
|
||||||
if dname.exists():
|
if dname.exists():
|
||||||
|
try:
|
||||||
|
storage_context = StorageContext.from_defaults(
|
||||||
|
persist_dir=dname,
|
||||||
|
)
|
||||||
|
index = load_index_from_storage(storage_context)
|
||||||
|
except (OSError, json.JSONDecodeError):
|
||||||
|
shutil.rmtree(dname)
|
||||||
|
pass
|
||||||
storage_context = StorageContext.from_defaults(
|
storage_context = StorageContext.from_defaults(
|
||||||
persist_dir=dname,
|
persist_dir=dname,
|
||||||
)
|
)
|
||||||
index = load_index_from_storage(storage_context)
|
index = load_index_from_storage(storage_context)
|
||||||
else:
|
else:
|
||||||
|
if index is None:
|
||||||
parser = MarkdownNodeParser()
|
parser = MarkdownNodeParser()
|
||||||
|
|
||||||
nodes = []
|
nodes = []
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue