Skip to content
Snippets Groups Projects
  1. Sep 04, 2009
  2. Sep 03, 2009
    • Ryan Dahl's avatar
      Sort files in readdir test. · b6eed303
      Ryan Dahl authored
      b6eed303
    • Ryan Dahl's avatar
      Add node.fs.mkdir() · 3736bf9f
      Ryan Dahl authored
      3736bf9f
    • Ryan Dahl's avatar
      Add node.fs.readdir() · 9b3e2ae1
      Ryan Dahl authored
      9b3e2ae1
    • Ryan Dahl's avatar
      Clean up eio wrappers. Create EIOPromise. · 747d6723
      Ryan Dahl authored
      747d6723
    • Ryan Dahl's avatar
      Clean up text on website. · c13773a7
      Ryan Dahl authored
      c13773a7
    • Ryan Dahl's avatar
      Asyncly do getaddrinfo() on Apple. · 1645b8f8
      Ryan Dahl authored
      1645b8f8
    • Ryan Dahl's avatar
      Upgrade libeio, increase xthread stacksize to 64kb. · 1df6d612
      Ryan Dahl authored
      64kb seems to be the magic number for getaddrinfo() to work on Macintosh.
      1df6d612
    • Ryan Dahl's avatar
      Add extension API documentation · 342da697
      Ryan Dahl authored
      342da697
    • Ryan Dahl's avatar
      Add stack to promise.wait(). · aefbd575
      Ryan Dahl authored
      The problem was that if promise A was waiting and promise B was created and
      then also told to wait (from some callback coming off the event loop), and
      then promise A finished, promise B's wait would return. Promise A's wait
      would not return until promise B was finished. This is incorrect.
      
      To solve this issue properly, one probably needs to allocate separate
      execution stacks. I use, instead, Poor Man's Coroutines. We continue to use
      the main execution stack and force promises created most recently to return
      first.
      
      That is even if Promise A finishes first, neither wait() returns. Not until
      Promise B finishes, will its wait() return. After that is complete, Promise
      A's wait() will return.
      
      This introduces the problem of growing the "wait stack" infinitely. Thus
      I've added a strong warning to the documentation only to use this operation
      sparingly. require() and include() seem to be the proper use case for such a
      thing: they are called usually at program start up - they don't take too
      long to finish and they won't be called so often.
      
      Let's experiment with this stop-gap. If the infinite promise stack becomes a
      problem for many, then I will remove promise.wait() entirely or perhaps only
      use it for thread pool events.
      aefbd575
  3. Sep 02, 2009
  4. Sep 01, 2009
  5. Aug 31, 2009
  6. Aug 27, 2009
  7. Aug 26, 2009
Loading