theseion / Fuel

Fuel, the Smalltalk object serializer
https://theseion.github.io/Fuel
MIT License
27 stars 13 forks source link

Can't materialize global class references if class not present #196

Closed GoogleCodeExporter closed 2 years ago

GoogleCodeExporter commented 9 years ago
Objects whose class is not present on serialization are simply ignore. I like 
that feature. Unfortunately, the same doesn't apply to global class references. 
Trying to materialize a global class reference when that class does not exist 
on the target system results in an unrecoverable error.

I propose to handle global class references the same way we handle fixed 
objects during materialization with regard to absent classes.

Original issue reported on code.google.com by maxle...@gmail.com on 1 Mar 2013 at 8:38

GoogleCodeExporter commented 9 years ago
I'm sorry, I don't understand. Objects whose class is not present on 
serialization are ignored? 

Sounds good in general terms since it's always better to be "fault tolerant", 
but I didn't catch the exact case. 

Could you explain again, please? 

thanks!

Original comment by tinchod...@gmail.com on 1 Mar 2013 at 9:42

GoogleCodeExporter commented 9 years ago
For some reason, in my setup I was able to load a graph with objects whose 
class was not present in the image. When I wanted to verify that right now with 
a fresh fuel installation, that didn't work (FLClassNotFound was signaled, as 
expected).

Something's a bit weird here� let me investigate and I'll get back to you.

Original comment by maxle...@gmail.com on 4 Mar 2013 at 5:09

GoogleCodeExporter commented 9 years ago
ok

It's strange, I don't remember we have ever supported this.

But I can be a good idea. IIRC in Parcels 
(http://scg.unibe.ch/archive/papers/Mira05aParcels.pdf) they support something 
like this. I guess a kind of temporary/anonymous class is created with the 
original name and the original instance variable names (information that we 
have).This way the instances can be materialized. I don't know very well.

Original comment by tinchod...@gmail.com on 5 Mar 2013 at 2:22

stale[bot] commented 3 years ago

This issue has been automatically marked as stale because it has not had recent activity. It will remain open but will probably not come into focus. If you still think this should receive some attention, leave a comment. Thank you for your contributions.

theseion commented 2 years ago

Was probably a setup issue.