I put up a repo with the bug at https://github.com/nwg/racket-expo

The stack trace is this:

build-path: contract violation
  expected: (or/c path-string? path-for-some-system? 'up 'same)
  given: #<promise:config:installation-name>
  context...:
   do-raise-argument-error
   loop
   build
   proc
   call-in-empty-metacontinuation-frame
   call-with-module-prompt
   body of "/Applications/Racket v7.7/collects/planet/config.rkt"
   temp35_0
   for-loop
   run-module-instance!
   for-loop
   [repeats 1 more time]
   run-module-instance!
   for-loop
   [repeats 1 more time]
   run-module-instance!

Nate


On Mon, Jul 13, 2020 at 1:03 PM Ryan Culpepper <rmculpepp...@gmail.com>
wrote:

> I don't know if it helps, but config:installation-name is a promise
> defined by setup/private/dirs.
>
> Ryan
>
>
> On Mon, Jul 13, 2020 at 7:23 PM Matthew Flatt <mfl...@cs.utah.edu> wrote:
>
>> I'm not sure how it could be in `dynamic-require` itself, as opposed to
>> a library that is loaded by `dynamic-require`, but it sounds like a bug
>> at some level. Can you provide a small example?
>>
>> At Mon, 13 Jul 2020 11:03:41 -0500, Nate Griswold wrote:
>> > Sam, thanks
>> >
>> > To be clear, this crash happened DURING a dynamic-require and judging by
>> > the stack trace looked to be part of the dynamic-require machinery (and
>> > this seems to depend on the installation name).
>> >
>> > I actually wasn't depending on anything but racket/base, so i don't
>> believe
>> > anything i was using was causing a separate dependency on promise.
>> >
>> > Nate
>> >
>> >
>> > On Mon, Jul 13, 2020 at 9:32 AM Sam Tobin-Hochstadt <
>> sa...@cs.indiana.edu>
>> > wrote:
>> >
>> > > My guess, not having looked further than your email, is that when you
>> > > don't include racket/promise, something is supplying a promise to
>> something
>> > > else but there are two different instantiations of the promise
>> library,
>> > > causing the force call from one not to recognize the promise from the
>> > > other. Then force just becomes the identity function, and passes
>> through a
>> > > promise to somewhere that isn't expecting one.
>> > >
>> > > Is it possible that some library you're using features promises?
>> > > Alternatively, it might be that the embedding code needs an explicit
>> > > dependency on promises.
>> > >
>> > > Sam
>> > >
>> > > On Mon, Jul 13, 2020, 10:18 AM Nate Griswold <nategrisw...@gmail.com>
>> > > wrote:
>> > >
>> > >> Hello.
>> > >>
>> > >> I noticed something and was wondering what the list thinks:
>> > >>
>> > >> I am using an embedded racket Ics) and i noticed that if i embed a
>> file
>> > >> and don't include any libraries (for a very bare bones c file) i have
>> > >> problems with a crash on a promise on any dynamic-require:
>> > >>
>> > >> build-path: contract violation
>> > >>   expected: (or/c path-string? path-for-some-system? 'up 'same)
>> > >>   given: #<promise:config:installation-name>
>> > >>
>> > >> but if i do a (require racket/promise) in my rkt argument to
>> --c-mods OR
>> > >> if i do a ++lib racket/promise i get no crash.
>> > >>
>> > >> So is this expected behavior? Should racket/promise always be
>> included or
>> > >> no? And what exactly is going on under the hood here?
>> > >>
>> > >> Nate
>> > >>
>> > >> --
>> > >> You received this message because you are subscribed to the Google
>> Groups
>> > >> "Racket Users" group.
>> > >> To unsubscribe from this group and stop receiving emails from it,
>> send an
>> > >> email to racket-users+unsubscr...@googlegroups.com.
>> > >> To view this discussion on the web visit
>> > >>
>> >
>> https://groups.google.com/d/msgid/racket-users/CAM-xLPpg_0Ef8ByjS01Y1pKEeeFMVkF
>> > k3dvGcdpRaYo3ZqDb9A%40mail.gmail.com
>> > >>
>> > <
>> https://groups.google.com/d/msgid/racket-users/CAM-xLPpg_0Ef8ByjS01Y1pKEeeFMVk
>> > Fk3dvGcdpRaYo3ZqDb9A%
>> 40mail.gmail.com?utm_medium=email&utm_source=footer>
>> > >> .
>> > >>
>> > >
>> >
>> > --
>> > You received this message because you are subscribed to the Google
>> Groups
>> > "Racket Users" group.
>> > To unsubscribe from this group and stop receiving emails from it, send
>> an
>> > email to racket-users+unsubscr...@googlegroups.com.
>> > To view this discussion on the web visit
>> >
>> https://groups.google.com/d/msgid/racket-users/CAM-xLPpaOSxvPEDYzmkAXdFg%2BLTMA
>> > H1mw57kJt7%3DCe6ipXmXDw%40mail.gmail.com.
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "Racket Users" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to racket-users+unsubscr...@googlegroups.com.
>> To view this discussion on the web visit
>> https://groups.google.com/d/msgid/racket-users/20200713112340.24e%40sirmail.smtp.cs.utah.edu
>> .
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/racket-users/CAM-xLPoKbgtUGTFoRSvK0D2M%2BX_EE38z0bwuW-p3MptyWHkCnw%40mail.gmail.com.

Reply via email to