Custom Python ODB backends - write() support
Personne n'a encore pris cette issue.
- Langage dominant
- Python
- Étoiles
- 1.7k
- Forks
- 408
- Merge moyen
- 2 j 57 min
- PR mergées (30 j)
- 7
Description
Is there any support for implementing write() for custom python ODB backends?
I noticed it wasn't in the docs, but tried implementing it like so:
class MyOdbBackend(pygit2.OdbBackend):
# snip - other OdbBackend methods
def write(self, oid, data, length, type):
print(f"writing {oid} {length} type {type}")
return True
repo = pygit2.Repository()
odb = pygit2.Odb()
odb.add_backend(MyOdbBackend(), 1)
repo.set_odb(odb)
test_blob_id = repo.create_blob(b"hello world\n")
print(repo[test_blob_id].data)
But I get a _pygit2.GitError: TLS backend doesn't support certificate locations on calling repo.create_blob(). The built-in backends seem to work fine.
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Commencez par reproduire l’exemple de MyOdbBackend.write() personnalisé et l’échec au niveau de repo.create_blob(). Consultez les interfaces OdbBackend et add_backend ainsi que la documentation associée afin de déterminer si write() est pris en charge. Le travail est terminé lorsque le comportement est soit implémenté et vérifié avec cet exemple, soit clairement documenté avec la limitation et la cause de l’erreur.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- git, python
- Domaine
- backend
- Type d'issue
- Fonctionnalité
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 32/100