branch: elpa/hyperdrive commit dead3de76396bd4509a6e9edcbb88396cb28e8be Author: Adam Porter <a...@alphapapa.net> Commit: Adam Porter <a...@alphapapa.net>
Fix: (hyperdrive-delete) Add workaround for hypercore-fetch bug --- hyperdrive-lib.el | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/hyperdrive-lib.el b/hyperdrive-lib.el index 8ea51ef3d5..38a08c0933 100644 --- a/hyperdrive-lib.el +++ b/hyperdrive-lib.el @@ -887,9 +887,12 @@ Call ELSE with `plz-error' struct if request fails." (pcase-let* (((cl-struct plz-response headers) response) ((map etag) headers) (nonexistent-entry (hyperdrive-copy-tree entry t))) - (setf (hyperdrive-entry-version nonexistent-entry) (string-to-number etag)) - (hyperdrive--fill-latest-version (hyperdrive-entry-hyperdrive entry) headers) - (hyperdrive-update-nonexistent-version-range nonexistent-entry) + (unless (hyperdrive--entry-directory-p entry) + ;; FIXME: hypercore-fetch bug doesn't update version + ;; number when deleting a directory. + (setf (hyperdrive-entry-version nonexistent-entry) (string-to-number etag)) + (hyperdrive--fill-latest-version (hyperdrive-entry-hyperdrive entry) headers) + (hyperdrive-update-nonexistent-version-range nonexistent-entry)) (funcall then response))) :else else))