[plt-scheme] Standalone GUI executable bugs
I see bugs in `serialize' and `deserialize' when the serialized
structure type is referenced through a relative module path, instead of
through a collection.
For example, I was able to trigger problems with
s1.ss:
#lang scheme/base
(require scheme/serialize)
(provide (struct-out pt))
(define-serializable-struct pt (x y))
s2.ss:
#lang scheme/base
(require "s1.ss" scheme/serialize)
(deserialize (serialize (make-pt 1 2)))
The bugs are now fixed in SVN, at least for my example. I think the
enclosed patch works for v4.2. Otherwise, you could try the next
nightly build from
http://pre.plt-scheme.org/installers/
Let us know if you still problems after this repair.
Thanks for the report,
Matthew
At Mon, 22 Jun 2009 02:52:27 -0700 (PDT), Edo Shor wrote:
> Hi all,
>
> My first post... (^_^)
>
> I work on a hierarchical music editor which is to be deployed to other
> Windows machines, independent of any local plt-scheme installation. In
> other words, the solution for me is a "distributable package".
>
> I use "create executable" from drscheme (4.2).
> I use several collection libraries (including planet), native dll's
> and everything works fine.
> Part for the serialization mechanism which seems buggy to me.
>
> Here is the story:
> - Serialization is used to save/load a session into persistent file.
> - It works fine if I run from drscheme
> - Running from the distribution, I get:
>
> error: standard-module-name-resolver: collection not found:
> #<path:scheme\gui\lang> in any of: (#<path:C:\Documents and Settings
> \edos\Application Data\PLT Scheme\4.2\collects>
> #<path:C:\Bgu\2008b\Music\PLT_GUI\SIMC-12tone\12tone--pkg\lib\plt
> \12tone-main\collects>)
>
> - I manually copy the collection into the distribution and get:
>
> error: standard-module-name-resolver: collection not found: "syntax"
> in any of:
> (#<path:C:\Documents and Settings\edos\Application Data\PLT Scheme
> \4.2\collects>
> #<path:C:\Bgu\2008b\Music\PLT_GUI\SIMC-12tone\12tone--pkg\lib\plt
> \12tone-main\collects>)
>
> - I copy the syntax collection and get:
>
> error: link: namespace mismatch; reference (phase 0) to a module
> "C:\Documents and Settings\edos\Application Data\PLT Scheme
> \4.2\collects\syntax\module-reader.ss"
> that is not available (phase level 0); reference appears in module: "C:
> \Documents and Settings\edos\Application Data\PLT Scheme\4.2\collects
> \scheme\gui\lang\reader.ss" in: wrap-internal
>
>
> I can't really figure out the problem, any help is more then
> welcome...
-------------- next part --------------
A non-text attachment was scrubbed...
Name: ser.patch
Type: application/octet-stream
Size: 2499 bytes
Desc: not available
URL: <http://lists.racket-lang.org/users/archive/attachments/20090623/75336222/attachment.obj>