gnio

hello everyone

many of you know that i’ve been working on gnio for a little while. it is available from git://git.desrt.ca/gnio

gnio is a networking library built on the foundations of gio. it allows you to use network connections as input and output streams.

you need the gresolver branch of glib in order to use it. that’s at git://git.desrt.ca/glib

i think it’s pretty nice, but i’d like some feedback. if you could take it for a spin and send flames my way, it would be greatly appreciated. i’m specifically looking for API suggestions.

any bugs or feature requests should be filed in the ‘network’ component of glib on bgo. contributions of code, docs, tests are most welcome and i encourage you to attach git-format-patch output to the relevant bugs.

thanks :)

8 Comments

  1. Anders
    Posted February 24, 2009 at 5:30 pm | Permalink

    I’m curious, and I’m sure a lot of other people are too…

    What is gnio?

  2. Lucas
    Posted February 24, 2009 at 6:08 pm | Permalink

    This solution is quite similar http://code.google.com/p/snllibrary/

  3. anon
    Posted February 24, 2009 at 6:32 pm | Permalink

    Please please please start typing capitals at the beginning of sentences!

  4. Iñigo Martínez
    Posted February 24, 2009 at 11:06 pm | Permalink

    Sorry for my ignorance, but I was looking for something similar time ago, and I found gnet. Can’t both used for network using gio ?

  5. tpm
    Posted February 25, 2009 at 12:27 pm | Permalink

    Iñigo Martínez: gnet can be used, but it’s got a very outdated and in many places awkward GLib-1.x-style API, ie. no GObjects, based on GIOChannels, bad error reporting in many places etc.

    Getting all this functionality into GLib with a modern API is long overdue. Ryan and other gnio coders: rock on!

  6. Posted February 25, 2009 at 2:33 pm | Permalink

    @Lucas: that library doesn’t have input and output stream classes. Instead it has methods like receive() and send(). Preferably you decouple those method from the “socket” into the “stream” (like how most I/O frameworks including .NET’s, Java’s and GIO works).

    So I don’t really agree that it’s a similar solution.

  7. Posted March 10, 2009 at 9:35 am | Permalink

    How do you check out the code? I haven’t used git before.

  8. Posted March 10, 2009 at 6:48 pm | Permalink

    I figured out how to download the repository. Hopefully others aren’t as clueless as I am. ;-)

    git clone git://git.desrt.ca/gnio gnio