Notes: The .tar.gz is in the UNIX text format, and the .zip for Windows. Other than that they are both identical. Beats me why the .zip is so much larger than the .tar, I guess it's because .zip does each file separately and there's a large overhead per file whereas the tar piles it all together in one contingous block. Highlights of some of the changes since 0.003. * Maturing of the threading and timers code. * Greatly expanded and tested Console I/O API * Nearly complete redesign to the Connection API, and new types of Connections have been added and implemented * Better packaging support and directory/include structure. * Linux support now working and actively maintained. * Several more example programs, bug fixes, and more classes implemented across the board.
Changes: GNE 0.003 to 0.4 A new example exsynchello which is fully compatable with exhello and does the same thing, but with SyncConnection only. New include structure and method of inclusion, although more typing and perhaps less flexible, now works properly on all platforms without name changing and small cludges and hacks. Some of the examples make use of these new I/O classes even though using mprintf was perfectly fine to get some testing for these classes. Implemented new streambufs to be used with ostream and istream, so now two classes gout and gin exist that work even when curses is active, since they make use of the Console class I/O functions. Both styles of I/O may be mixed. The examples have been updated due to this change. Fixed a deadlock bug that occurs when GNE is shut down. Lots of improvements, additions, and optimizations for the Console class and API. Making GNE work with Linux out of the box. Added SyncConnection class for syncronous communications over a Connection. Added ConnectionListener class. Events go there now. ServerConnectionCreator class is gone now. ServerConnectionListener now has the needed function, and other event handling changes in that class as well. Completely changed the Connection API Added onDisconnect event. Improvements with Error generation and handling. Added test/example exaddr for the Address class. Added GNE::Address class which changes things everywhere, but is many many times nicer due to implicit conversions and encapsulation. Cleaned up exhello example, more complete code. Improved functions dealing with NLaddress, added GNE::addressToString. Fixed C callback in Thread so that Thread::run is now protected rather than public as it should be, and Thread::end is now private rather than public, as it very definately should be. Made ClientConnection::open a little more friendly. Modifications to the event system, onDisconnect event, and error events split into two categories. Error objects now passed by const reference. A few bug fixes. Added the SocketPair class to separate shared properties between Connection and SyncConnection. Removed the OnReceiveEventClass. onReceive events are now forced to be "non-blocking" as there is now only a single event thread. Multiple event threads were found to be overly confusing and complex to the developers and users, with very little to no potential benefits. If you need to "block" in an event (other than onNewConn), spawn a new thread. Created a new class, Error, that replaces the Connection::FailureType enum, and allows the user some shortcuts and a better way to get a textual description of the error.
Copyright © 2009 Geeknet, Inc. All rights reserved. Terms of Use