[racket-dev] Pre-Release Checklist for v5.3
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