AttributeError: type object Signature has no attribute _encoding
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Accessibilité débutants
- 42/100
Piste de recherche
Commencez par exécuter la reproduction fournie dans l’environnement Docker avec Python 3.9.16, pygit2 v1.12.2 et Ray installé depuis PyPI, en comparant l’exécution avec et sans Ray. Suivez le moment où Signature perd _encoding et identifiez un test de régression ciblé ; c’est terminé lorsque le cas Ray reproduit ne lève plus AttributeError.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Hi folks!
I'm running into this weird error when running my python code with ray.
Basically I get AttributeError: type object 'Signature' has no attribute '_encoding'.
But it works fine when I run my script without ray...
pygit2 version: v1.12.2
environment: python:3.9.16 docker container.
The error can be reproduced with the code below.
Ray can be installed from PyPi: pip install ray
import pygit2
import ray
from pygit2 import Signature
def function_without_ray():
org_name = "libgit2"
repo_name = "pygit2"
repo = pygit2.clone_repository(
f"https://github.com/{org_name}/{repo_name}",
f"/tmp/{repo_name}.git",
)
new_branch = repo.branches.create(
"dummy-branch", repo.revparse_single("HEAD")
)
repo.checkout(new_branch)
index = repo.index
index.add_all()
index.write()
author = Signature("John Doe", "[email protected]")
ref = repo.head.name
tree = index.write_tree()
parents = [repo.head.target]
repo.create_commit(
ref,
author,
author,
"Just a dummy commit",
tree,
parents,
)
@ray.remote
def function_with_ray():
function_without_ray()
# Comment out one of these function calls to check if it works:
ray.get(function_with_ray.remote())
function_without_ray()
- Langage dominant
- Python
- Étoiles
- 1.7k
- Forks
- 408
- Merge moyen
- 1 j 15 h
- PR mergées (30 j)
- 7
Préparer son environnement
- Aucun Dockerfile ni fichier Docker Compose
- Aucun modèle de pull request
- Lire 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.
Autres issues de libgit2/pygit2
-
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
-
Difficulté 1/5 Moins d'une heure Accessibilité débutants 88/100
-
Feature Request: Support app-level temporary config overrides using libgit2's backend supprtPeut-être pris Une pull request liée à cette issue est ouverte ou déjà fusionnée. Ouverte
Difficulté 4/5 3-5 jours Accessibilité débutants 45/100
-
Difficulté 3/5 1-2 jours Accessibilité débutants 48/100
-
merge_bases not wrappedOuverte
Difficulté 3/5 1-2 jours Accessibilité débutants 55/100
Toutes les issues de libgit2/pygit2
Issues similaires
-
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100
FuRongJun-1999/dsh-memory#56 ·
Les mainteneurs répondent en général sous 1 jour
-
Bug
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
pgadmin-org/pgadmin4#10503 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 1/5 Moins d'une heure Accessibilité débutants 85/100
521xueweihan/HelloGitHub#3857 ·
-
needs-ac
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
Ikalus1988/MisakaNet#2845 ·
Les mainteneurs répondent en général sous 1 jour
-
bug connectors operations
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
pyinfra-dev/pyinfra#1989 ·
Les mainteneurs répondent en général sous 3 jours