Skip to content

Commit 9634085

Browse files
author
Gerit Wagner
committed
Dataset: lazy-load git-repo
1 parent e4c87b1 commit 9634085

2 files changed

Lines changed: 6 additions & 2 deletions

File tree

colrev/dataset.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
import os
66
import tempfile
77
import typing
8+
from functools import cached_property
89
from pathlib import Path
910

1011
import colrev.exceptions as colrev_exceptions
@@ -27,7 +28,10 @@ class Dataset:
2728

2829
def __init__(self, *, review_manager: colrev.review_manager.ReviewManager) -> None:
2930
self.review_manager = review_manager
30-
self.git_repo = GitRepo(path=review_manager.path)
31+
32+
@cached_property
33+
def git_repo(self) -> GitRepo:
34+
return GitRepo(path=self.review_manager.path)
3135

3236
def get_origin_state_dict(self, records_string: str = "") -> dict:
3337
"""Get the origin_state_dict (to determine state transitions efficiently)

colrev/packages/files_dir/src/files_dir.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,6 @@ def __init__(
8787
import colrev.review_manager as colrev_review_manager
8888

8989
self.review_manager = colrev_review_manager.ReviewManager()
90-
colrev.ops.check.CheckOperation(self.review_manager)
9190

9291
def _update_if_pdf_renamed(
9392
self,
@@ -656,6 +655,7 @@ def search(self, rerun: bool) -> None:
656655
if self.review_manager.force_mode: # i.e., reindex all
657656
self.logger.info("Reindex all")
658657

658+
colrev.ops.check.CheckOperation(self.review_manager)
659659
# Removing records/origins for which PDFs were removed makes sense for curated repositories
660660
# In regular repositories, it may be confusing (e.g., if PDFs are renamed)
661661
# In these cases, we may simply print a warning instead of modifying/removing records?

0 commit comments

Comments
 (0)