[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/vc-jj 95db88c07c 49/58: Improve performance of vc-jj-di
From: |
ELPA Syncer |
Subject: |
[elpa] externals/vc-jj 95db88c07c 49/58: Improve performance of vc-jj-dir-status-files |
Date: |
Sat, 15 Mar 2025 07:01:55 -0400 (EDT) |
branch: externals/vc-jj
commit 95db88c07c6d7ca85410d7d49d2b1bbfc4847615
Author: Rob <bruno.robsiq@gmail.com>
Commit: Rob <bruno.robsiq@gmail.com>
Improve performance of vc-jj-dir-status-files
Don't recalculate (and show) status for every file in the repo. This would
then
cause updates in the log-view to also recalculate every file on commit
edits,
leading to very poor performance on large repos
---
vc-jj.el | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/vc-jj.el b/vc-jj.el
index 7f9f114e91..3d61943a15 100644
--- a/vc-jj.el
+++ b/vc-jj.el
@@ -152,10 +152,9 @@ NIL otherwise."
The list is passed to UPDATE-FUNCTION."
;; TODO: could be async!
(let* ((dir (expand-file-name dir))
- (files (process-lines vc-jj-program "file" "list" "--" dir))
- ;; TODO: Instead of the two `mapcan' calls, it should be more
- ;; efficient to write the output to a buffer and then search
- ;; for lines beginning with A or M, pushing them into a list.
+ ;; TODO: Instead of the two `mapcan' calls, it should be more
+ ;; efficient to write the output to a buffer and then search
+ ;; for lines beginning with A or M, pushing them into a list.
(changed-files (process-lines vc-jj-program "diff" "--summary" "--"
dir))
(added (mapcan (lambda (file) (and (string-prefix-p "A " file)
(list (substring file 2))))
@@ -163,6 +162,7 @@ The list is passed to UPDATE-FUNCTION."
(modified (mapcan (lambda (file) (and (string-prefix-p "M " file)
(list (substring file 2))))
changed-files))
+ (files (mapcan (lambda (file) (list (substring file 2)))
changed-files))
;; The output of `jj resolve --list' is a list of file names
;; plus a free-text conflict description per line -- rather
;; than trying to be fancy and parsing each line (and getting
- [elpa] externals/vc-jj 08449de406 22/58: Remove a second "--" argument, it's already in the arg list, (continued)
- [elpa] externals/vc-jj 08449de406 22/58: Remove a second "--" argument, it's already in the arg list, ELPA Syncer, 2025/03/15
- [elpa] externals/vc-jj 6621c9b6ab 24/58: Discriminate between added, edited files in vc-dir buffer, ELPA Syncer, 2025/03/15
- [elpa] externals/vc-jj b75160031a 29/58: Add some tests, ELPA Syncer, 2025/03/15
- [elpa] externals/vc-jj 5294ae8ddd 34/58: Use 'vc-jj-program' instead of hardcoded "jj", ELPA Syncer, 2025/03/15
- [elpa] externals/vc-jj 31ab84e6bf 32/58: Implement vc-annotate, ELPA Syncer, 2025/03/15
- [elpa] externals/vc-jj 885ddb24ae 38/58: Consider project-files-relative-names in project-files, ELPA Syncer, 2025/03/15
- [elpa] externals/vc-jj 9df26ebf32 40/58: Return full change id from vc-jj-working-revision, ELPA Syncer, 2025/03/15
- [elpa] externals/vc-jj e505ad90ee 44/58: Use when-let*, ELPA Syncer, 2025/03/15
- [elpa] externals/vc-jj db1427ba24 42/58: Simplify, add tests for vc-ignore, ELPA Syncer, 2025/03/15
- [elpa] externals/vc-jj 0f0efbfe80 47/58: Improve performance of vc-jj-state, ELPA Syncer, 2025/03/15
- [elpa] externals/vc-jj 95db88c07c 49/58: Improve performance of vc-jj-dir-status-files,
ELPA Syncer <=
- [elpa] externals/vc-jj 785b82d5f5 50/58: Simplify `vc-jj-state', fix failing test, ELPA Syncer, 2025/03/15
- [elpa] externals/vc-jj 413ecc82c5 52/58: add vc-jj-pull, ELPA Syncer, 2025/03/15
- [elpa] externals/vc-jj 23db0c6751 54/58: Use vc-jj-program in vc-push, vc-pull defaults, ELPA Syncer, 2025/03/15
- [elpa] externals/vc-jj 71a84c08fe 58/58: Add cl-lib dependency, ELPA Syncer, 2025/03/15
- [elpa] externals/vc-jj 616c2aea6f 15/58: Merge #1 and #2: Fix and improve vc-dir, ELPA Syncer, 2025/03/15
- [elpa] externals/vc-jj 290cd89ad8 57/58: Try to make vc-dir more performant, ELPA Syncer, 2025/03/15
- [elpa] externals/vc-jj 56bacbe747 55/58: Remove vc-jj--call-jj, use vc-switches, ELPA Syncer, 2025/03/15
- [elpa] externals/vc-jj 24161b5249 19/58: Differentiate between added and modified files in `vc-jj-state`, ELPA Syncer, 2025/03/15
- [elpa] externals/vc-jj 117c75b740 20/58: Better mode-line indicator, ELPA Syncer, 2025/03/15
- [elpa] externals/vc-jj 5df3902990 33/58: Add .gitignore, ELPA Syncer, 2025/03/15