Override attributes are not pickled correctly
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 42/100
Línea de trabajo
Comience ejecutando el ejemplo de reproducción del issue, incluido el paso de garbage collection, e inspeccione la ruta de serialización y reconstrucción de clases de cloudpickle. Añada una prueba de regresión que cubra clases padre e hija con atributos sobrescritos iguales y, después, verifique que dict de la subclase conserve el atributo antes y después de que se recolecten las clases originales.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
When you have parent and child classes both have the same attribute, then the __dict__ of each class should contains this attribute.
But when the attribute have the same value, cloudpickle will remove the attribute from the dict of the sub class.
For Example:
import cloudpickle
import gc
class A:
__version__ = 1
class B(A):
__version__ = 1
obj = B()
print('Obj: ', '__version__' in obj.__class__.__dict__)
s = cloudpickle.dumps(obj)
loaded_obj = cloudpickle.loads(s)
print('Loaded obj: ', '__version__' in loaded_obj.__class__.__dict__)
del A
del B
del obj
del loaded_obj
gc.collect()
loaded_obj = cloudpickle.loads(s)
print('Loaded obj after gc: ', '__version__' in loaded_obj.__class__.__dict__)
The output will be:
Obj: True
Loaded obj: True
Loaded obj after gc: False
- Lenguaje dominante
- Python
- Estrellas
- 1.9k
- Forks
- 197
- Merge medio
- 1 d 10 h
- PR fusionados (30 d)
- 1
Preparar el entorno
Aún no hemos revisado los archivos de configuración de este proyecto. Empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de cloudpipe/cloudpickle
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
cloudpipe/cloudpickle#593 · 1 comentario ·
-
Dificultad 4/5 3-5 días Aptitud para principiantes 42/100
cloudpipe/cloudpickle#595 ·
-
Dificultad 3/5 1-2 días Aptitud para principiantes 65/100
cloudpipe/cloudpickle#592 · 2 comentarios ·
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
cloudpipe/cloudpickle#589 ·
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 20/100
cloudpipe/cloudpickle#587 ·
Todos los issues de cloudpipe/cloudpickle
Issues similares
-
documentation
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
kristofdegrave/homeassistant-smart-charging#1413 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
nasa/earthdata-varinfo#113 ·
-
curriculum documentation quality
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
githubnext/gh-aw-workshop#3849 ·
Los mantenedores suelen responder en 2 días
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 90/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
Los mantenedores suelen responder en 1 día