Version 8 of Wibble news

Updated 2010-11-13 07:01:58 by AMG

AMG: This page is for Wibble news and announcements. Discussion is welcome, but if it gets lengthy it should be moved to the Wibble discussion page. Announcements prior to the 2010-11-06 are embedded in the Wibble discussion page. Detailed change reports are at Wibble change log.

Fetching backrefs...

2010-11-13 - Non-blocking file transfers

Change log: [L1 ]

AMG: I can't believe I didn't notice this problem before. The [chan copy] invocation blocks until it's complete. I changed it to use the -command option, instructing it to resume the connection's coroutine when it's done. Then I [yield]. The [llength] of [yield]'s return value shows why the coroutine was resumed:

  • llength = 0: Socket became readable. Yield again.
  • llength = 1: Copy completed. Break out of loop and go on to the next request.
  • llength = 2: Copy failed. Error.

Also I put in workarounds for the two bugs currently posted on the Wibble bugs page. I'll back these out again when they're no longer needed.


2010-11-07 - Another new version, already!

Change log: [L2 ]

AMG: I guess I'm making up for lost time; it's been well over a year since my last big update. This update isn't nearly as big as yesterday's, but it's still progress.

I added another zone handler called script that's meant as a companion to template. Previously they were combined into a single template zone handler.

I made the vars zone handler much nicer, and error reporting is nicer too. They now share a common library routine to format the request data.

I added a few more keys to the request dictionary (time, rawtime, port).

PUT is gone.


2010-11-06 - Reorganization, new version

Change log: [L3 ]

AMG: Tired of having one giant page for everything Wibble, I reorganized into several pages.

This level of content shuffling would make RA2 happy, but I figured I'd avoid one of his major mistakes and let the Wiki do the indexing work for me. All Wibble-related pages link to Category Wibble, whose backrefs are conveniently repeated on the main Wibble page. But I can't have everything. Page history suffers, since it obviously doesn't carry over to the new pages. For history prior to today, see [L4 ].

I took this opportunity to publish the latest version of Wibble, found at Wibble implementation. You may notice that I turned off syntax highlighting for that page. Trust me, the syntax highlighting made the code far less readable (scroll through [L5 ] to see what I mean). We need to fix that. :^(

The new version digs deeper into the headers, breaking them into lists and dicts. Among other things, this made POST file uploads possible. That's another new feature I've added. I don't know if I'll ever support PUT; does anyone even use PUT? If no one speaks up, I'll drop it entirely.

I think I have more writing to do: updated documentation, new examples, etc.