[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#29220: 26.0.90; eieio-persistent-read fail to restore saved object.
From: |
Noam Postavsky |
Subject: |
bug#29220: 26.0.90; eieio-persistent-read fail to restore saved object. |
Date: |
Sun, 12 Nov 2017 14:10:46 -0500 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/26.0.90 (gnu/linux) |
Eric Abrahamsen <eric@ericabrahamsen.net> writes:
> pierre.techoueyres@free.fr (Pierre Téchoueyres) writes:
>
>> So here is the same sample completed. Sorry.
>>
>> ;;; -*- lexical-binding: t -*-
>> (require 'eieio)
>> (require 'eieio-base)
>>
>> (defclass eieio-fail (eieio-persistent eieio-named)
>> ((version :initarg :version :initform nil)
>> (version-constant :allocation :class)
>> (entries :initarg :entries :initform (make-hash-table))))
>
> This problem isn't related to my changes: it looks like the source of
> the issue is the way the hash table is written, and the fact that one of
> its entries holds an EIEIO object.
>
> As far as I can tell, when the hash table is written with `prin1', the
> EIEIO object inside is also getting written with `prin1' instead of
> `object-write'. The `prin1' representation isn't readable, so the
> persistent read process chokes on it.
>
> The prin1 process for the hash table would have to detect that there's
> an object in there, and write it with `object-write'.
>
> I assume this used to work? There have been several changes to the
> printing process in Emacs 26, but I don't have a good grasp of the
> details -- hopefully Stefan or someone will chime in.
Stefan isn't subscribed to the bug list, so you have to Cc him (which
I've now done). I note that adding (setq print-circle t) makes the
given recipe work.
- bug#29220: 26.0.90; eieio-persistent-read fail to restore saved object., Pierre Téchoueyres, 2017/11/08
- bug#29220: 26.0.90; eieio-persistent-read fail to restore saved object., Eric Abrahamsen, 2017/11/08
- bug#29220: 26.0.90; eieio-persistent-read fail to restore saved object., Pierre Téchoueyres, 2017/11/10
- bug#29220: 26.0.90; eieio-persistent-read fail to restore saved object., Eric Abrahamsen, 2017/11/10
- bug#29220: 26.0.90; eieio-persistent-read fail to restore saved object., Pierre Téchoueyres, 2017/11/10
- bug#29220: 26.0.90; eieio-persistent-read fail to restore saved object.,
Noam Postavsky <=
- bug#29220: 26.0.90; eieio-persistent-read fail to restore saved object., Pierre Téchoueyres, 2017/11/14
- bug#29220: 26.0.90; eieio-persistent-read fail to restore saved object., Noam Postavsky, 2017/11/14
- bug#29220: 26.0.90; eieio-persistent-read fail to restore saved object., Stefan Monnier, 2017/11/15
- bug#29220: 26.0.90; eieio-persistent-read fail to restore saved object., Pierre Téchoueyres, 2017/11/17
- bug#29220: 26.0.90; eieio-persistent-read fail to restore saved object., Noam Postavsky, 2017/11/17
- bug#29220: 26.0.90; eieio-persistent-read fail to restore saved object., Eric Abrahamsen, 2017/11/17
- bug#29220: 26.0.90; eieio-persistent-read fail to restore saved object., Noam Postavsky, 2017/11/18
- bug#29220: 26.0.90; eieio-persistent-read fail to restore saved object., Eric Abrahamsen, 2017/11/18
- bug#29220: 26.0.90; eieio-persistent-read fail to restore saved object., Noam Postavsky, 2017/11/18
- bug#29220: 26.0.90; eieio-persistent-read fail to restore saved object., Eric Abrahamsen, 2017/11/19