[racket-dev] Pre-Release Checklist for v5.3

From: Ryan Culpepper (ryan at cs.utah.edu)
Date: Wed Jul 25 14:16:20 EDT 2012

I suspect the problem is caused by commit 8358420f, which changed match 
to load part of its implementation lazily using lazy-require. Part of 
that commit was reverted by 949d12e2, but possibly the use of 
lazy-require left in is causing problems in some cases.

I think it would be best to just fully revert the commit (8358420f) on 
the release branch.

Ryan


On 07/25/2012 01:56 PM, Doug Williams wrote:
> It turns out that if I require racket/match explicitly it works.
> Although I shouldn't have to since racket/match is provided by #lang
> racket. So, I have a work around on Windows XP 32-bit. But it would be
> nice to get the problem fixed.
>
> On Wed, Jul 25, 2012 at 11:51 AM, Doug Williams
> <m.douglas.williams at gmail.com> wrote:
>> I used Create Executable in DrRacket. But, I just tried raco exe --gui
>> main.rkt to create it and get exactly the same error.
>>
>> On Wed, Jul 25, 2012 at 11:46 AM, Sam Tobin-Hochstadt <samth at ccs.neu.edu> wrote:
>>> Is this application generated with 'raco exe'?  Or 'Create Executable'
>>> in DrRacket?
>>>
>>> On Wed, Jul 25, 2012 at 10:31 AM, Doug Williams
>>> <m.douglas.williams at gmail.com> wrote:
>>>> Some more information on the problem. The application runs fine with
>>>> the pre-release on Windows 7 - 64 bit.
>>>>
>>>> The code that is dying on Windows XP 32-bit is:
>>>>
>>>> ---
>>>>
>>>> (require racket/runtime-path)
>>>>
>>>> ...
>>>>
>>>> ;;;
>>>> (define-runtime-path subject-path "..\\Subjects.txt")
>>>>
>>>> ;;;
>>>> (define (load-subject-encodings)
>>>>    (let ((port (open-input-file subject-path #:mode 'text)))
>>>>      (set! subject-encodings
>>>>            (append
>>>>             default-subject-encodings
>>>>             (for/list ((line (in-lines port))
>>>>                        #:when (regexp-match? #px"^\"(.*)\"\\s*\"(.*)\"" line))
>>>>               (match line
>>>>                 ((pregexp "^\"(.*)\"\\s*\"(.*)\"" (list _ subject encoding))
>>>>                  (list (pregexp (format "^(?i:~a)" subject)) encoding))))))
>>>>      (close-input-port port)))
>>>>
>>>> ...
>>>>
>>>> (define subject-encodings default-subject-encodings)
>>>>
>>>> (load-subject-encodings)
>>>>
>>>>   ...
>>>>
>>>> ---
>>>>
>>>> This code loads some data at load time. It does use match, which might
>>>> explain the message:
>>>>
>>>> standard-module-name-resolver: collection not found
>>>>    collection: "racket/match"
>>>>    in collection directories:
>>>>    context...:
>>>>     standard-module-name-resolver
>>>>     #%embedded:g13106:ground-truth-data: [running body]
>>>>     #%embedded:g13057:radar-data: [traversing imports]
>>>>     #%embedded:g8619:classifier-panel: [traversing imports]
>>>>     main: [traversing imports]
>>>>     loop
>>>>
>>>> [Exited. Close box or Ctrl-C closes the console.]
>>>>
>>>> I get when I run the compiled version. In DrRacket it dies with the
>>>> unhandled Win 32 exception.
>>>>
>>>> Doug
>>>>
>>>> On Wed, Jul 25, 2012 at 8:39 AM, Doug Williams
>>>> <m.douglas.williams at gmail.com> wrote:
>>>>> The pre-release 32-bit version still fails for my large applications
>>>>> at work fails to execute in DrRacket - 32-bit Windows XP. I don't have
>>>>> the source or symbol tables loaded so the only message I get from the
>>>>> Visual Studio debugger is attached. This is the same problem I was
>>>>> having with the previous pre-release version a month or so ago.
>>>>>
>>>>> I can create an executable of the application. It fails because it
>>>>> doesn't find racket/match. I'll look into that further.
>>>>>
>>>>> Doug
>>>>>
>>>>>
>>>> _________________________
>>>>    Racket Developers list:
>>>>    http://lists.racket-lang.org/dev
>>>
>>>
>>>
>>> --
>>> sam th
>>> samth at ccs.neu.edu



Posted on the dev mailing list.