Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

query whether hash / defrag transfer item content

Abierto
#234 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
5/5
Tiempo estimado
Más de una semana
Aptitud para principiantes
35/100
Tipo de issue
Nueva funcionalidad
Claridad
Bastante claro
Estado de actividad
Activo
Stack tecnológico
python

Línea de trabajo

Start at the Store.hash and Store.defrag operations and trace their implementations across the posixfs, rest, sftp, s3, and rclone backends. Define and test the requested transfer query against the behavior in the table, including the algorithm-dependent sftp check-file probing; done means callers can determine whether item content will transfer.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

borg compact copies packs with Store.defrag. borgbackup/borg#10410 needs a Store.hash check of each source pack before the copy. Whether that check is cheap depends on the backend, and the caller cannot tell which case applies.

"Transfer" below means the item content goes over the network between the storage and the borgstore client.

backend hash defrag
posixfs no transfer (local file read) no transfer
rest no transfer (computed by borg serve --rest) no transfer
sftp no transfer if the server supports the check-file extension (OpenSSH does not; never for blake3), otherwise downloads the item downloads the source ranges, uploads the target
s3, rclone downloads the item downloads the source ranges, uploads the target

Request: a way to ask the store whether an operation transfers item content, e.g.

Store.transfers_content(op: str, algorithm: str | None = None) -> bool  # op: "hash", "defrag"

algorithm is needed because sftp check-file does not support blake3. For sftp hash, check_file_supported is only known after the first check-file attempt, so the query has to probe or return True until it is confirmed.

Lenguaje dominante
Python
Estrellas
26
Forks
9
Merge medio
2 h 22 min
PR fusionados (30 d)
12

Preparar el entorno

Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de borgbackup/borgstore

Todos los issues de borgbackup/borgstore

Issues similares

Más issues de Python

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.