YTools Lib Changes File
-----------------------

$Id$

1.1.0-34
--------
o usrv: fixed memory leak while sending

1.1.2-0 
--------
o usrv: added on_close_connection callback

1.1.2-2
-------
o usrv: cleaning up IPC pipe sockets after process termination

1.1.2-3
-------
o usrv: bugfix: segfault after connection termination

1.1.2-4
-------
o usrv: bugfix: segfault after connection termination (uncorrect unregister of
  invalidated connections)

1.1.2-5
-------
o usrv: bugfix: various minor coredumps, mostly related to connection lists

1.1.3-0
-------
o usrv: added on_new_connection() callback

1.1.3-1
-------
o hash/md5: fixed major memory leak in file2md5()
o added support for mpatrol library

1.1.3-2
-------
o misc: added mem_snapshot() and mem_dump()
o misc: bugfix: mem_free() did not work correctly
o usrv: bugfix: incomimg messages were not freed
o msgfmt: bugfix: parse() had small memory leaks

1.1.3-3
-------
o compiling release version with NDEBUG (switching off assertions)

1.1.3-4
-------
o bugfix: client handler process did not exit after connection reset by client

1.1.3-5
-------
o /usr/local/ftp -> /home/ftp

1.1.3-6
-------
o replaced assert(0) with abort()

1.1.4-0
-------
o added client_ tcp socket options to server configuration struct
o added some assertions to module msgfmt

1.1.4-0F1
---------
o now not including autobuilt files in tar archive
o now using sh instead of exec to start mkspec in mkspec_wrapper.sh, better 
  because of permissions
o now allowing characters in rpm patchlevel dependencies in mkspec_wrapper.sh

1.1.4-1
-------
o jcs setval: added -n switch and fixed multi-word handling
o enhancement to yupdate.sh (floppy config file detection support)

1.1.4-2
-------
o bugfix in yupdate.sh: broken command line parsing

1.1.5-0
-------
o uclnt: beautified error messages in YConnection
o usrv: added snd_timeout and rcv_timeout options
o usrv: added usrv_shutdown_process() 

1.1.5-1
-------
o uclnt: added first (untested) support for heartbeat function
o usrv: added timeout to write_to_socket() and callers
o YStopWatch: added some convenience overloads and onAlarm() callbacks
o YStopWatchThreadList: minor fixes to generate_function_timers.sh
o misc: added get_time_diff()

1.1.5-2
-------
o devutil/scripts: fixed comment handling
o devutil/scripts: update.sh fixed groups and added some informational opts (-x,-p)

1.1.5-2F1
---------
o merged changes of 1.1.4-0 -> 1.1.4-0F1

1.1.5-2F2
---------
o now compiling distribution version with compiler debug options

1.1.5-2F3
---------
o backported yupdate.sh and jcs from ytools 1.1.8-0

1.1.6-0
-------
o YThread: added context argument to callbacks
o YMidi: first appearance of this module
o yupdate: fix in comment handling

1.1.7-0
-------
o big changes everywhere, triggered by different uclnt thread scheme

1.1.7-1
-------
o preserving targets over config target invocation
o added hdr to module script/devutils
o added YTimeB: added getDateStr()
o YThread: Big redesign, mostly because everything is now
  handled in one giant switch / case statement
o slog: now logging timestamps to console, too
o slog: added get_log_prio_str()
o misc: added pthread_join_strerror()
o YError: nicer timestamps
o YQueue: bugfix in ETIMEDOUT
o make: moved trace and other options from ytools.mk.in into defs.mk.in
  to make them visible for other projects, too
o YMutex: added derived YDummyMutex class for debugging
o usrv: now understanding up_terminate and sending back down_terminate
        triggering on_close_connection()
o uclnt: bugfix: did not correctly deal with empty messages
o uclnt: big rewrite (again), now using five threads beside the main thread:
  - YStateMagager: managing all the state changes
  - YInDispatcher: reading inbound messages from the network and passing them
                   on either to YCbQueue or to YMsgWindowQueue
  - YOutQueue: queuing outbound messages
  - YCbQueue: queing messages for all callbacks except onError()
  - YMsgWindowQueue: queing messages for onError()
o YStopWatch: bugfix, was alarmed by to long step times, even if step times
  was off
o YThread: added getFlags(), setFlags(), addFlags(), delFlags()
o slog: now supporting callstack traces
o uclnt/usrv: now supporting application defined down_terminate messages
o YMutex: made YDummyMutex YDebugMutex and made it lock again
o make: now supporting local.mk
o make: added linux-rpm.mk

1.1.8-0
-------
o merged changes of V_1_1_7_1_JL
o slog: added possibility for multiple nested slog_open() calls
o uclnt: fixed uncaught exception during YMsgDispatcher::_dispatchEvent()
o merged changes from V_1_1_5_2_FIXES and corrected YStopWatchThreadList
  related issues
o devutil/jcs and make: added support for specifying a bootlabel in kernel
  rpm build process; added asm to asm-$ARCH link in kernel include
o devutil/jcs and make: now adding an EXTRAVERSION string to `uname -r`

1.1.8-1
-------
o merged changes of V_1_1_5-2 -> V_1_1_5-2F3
o msgfmt: bugfix, fmt_user was not correctly recognized, breaking up_format.c
o usrv: bugfix, "allclients" destination was ignored
o benno added "#include <errno.h>" to contr/YQueue/YQueue.h

1.1.8-2
-------
o merged changes of V_1_1_5-2F3 -> V_1_1_5-2F4

1.1.8-3
-------
o make/rpmdist.mk: added target ftag
o slog: now logging hint about initlog() being deprecated
o YThread: now logging pthread_self() on entering thread
o misc: added pthread_self_str()
o YStopWatchThreadList: fixed generate_function_timer to work with SuSE 9.1 sed
o usrv: bugfix, server not quitting anylonger after termination of child
o uclnt: now continuing write on EWOULDBLOCK, TODO: use select(), or, at least,
         implement a timeout
o scripts: now calling nice -10 on cptree.sh
o contr Y2WayMap:
  - fixed typedef foo_t to typedef typename foo_t
  - added dummy Y2WayMap.cpp to make Y2WayMap fail in ytools directory if buggy

1.1.8-4
-------
o added support for QT ui generation from .ui files

1.1.9-0
-------
o uclnt: - Added YMsgDispatcher::getAddress()
         - added getCount()
         - added instance count to thread names
         - made some getXX() functions const
o slog: - now not logging date, process id, id to console anylonger by default
        - introduced mutex to be able to use static buffer

1.1.10-0
--------
o YError: - added setFile() and setLine() methods
o YOptString: - newly added
o usrv: - fixed crash due to race in unregistering from connection list
        - fixed memory leaks in YServer.cpp
        -  major rewrite and renaming of classes
        - optimized memory management
        - added memory debugger
o misc: - now logging mpatrol mem_dump() to syslog
o contr: - added module YLifo
o YOsc: - rewrite
o slog, platform, misc unified into module base
o YThread: - added setFlags(), addFlags(), delFlags() and changed setName() to 
             avoid deadlock
o inifile: - now supporting quoted strings as values
           - added inifile_val() and inifile_str() macros
o scripts: - some fixes to cvs_mail.sh
o make: - some indentation cleanup in defs.mk.in
        - made all targets depend on all.done
        - fixed plugin.mk
o platform: - added winerrno.h; will be removed again


1.1.10-1
--------
o fixed build with some broken LOCAL_PREREQ definitions
o base: - bugfix in file_basename()
        - added - remove_command_line_option()
                - asciify()
                - parse_geometry_string()
                - ytools_strtok_r()
                - vslog()
                - ftruncate() for windows
o inifile: - bugfix in dump()
o YApplication: newly added MVC framework
o make: - moved compiler optimization and such from project dirs into defs.mk.in

1.1.10-2
--------
o now supporting gcc 4.0, fixed some uninitialized vars and some syntax while at it
o now supporting x86_64
o base/misc: added consume_bytes_from_pipe()
o slog: slog() inline
o beautified some Makefiles (FIND_SUBDIRS)
o make:
  - decoupled USE_COMPILER_OPTIMIZATION_OPTS from USE_DEBUG_OPS
  - added USE_ASSERTIONS
  - not using qt4 debug libs anylonger
  - added run.mk
o YShMem: made a couple of functions inline
o uclnt/cpp: fixed some uninitialized variables, possibly harming stability (thread id)
o contr: added YPath

1.1.10-3
--------
o base: fixed O_TRUNC in ytools_open()
o uclnt:
  - improved logging
  - now pushing format ids by reference into YDataBox

1.1.10-4
--------
o misc:
  - bugfix (by Benno): fixed read end condition in afs_read_from_fd()
o inifile:
  - bugfix: short subsections weren't matched by match_super(),
    breaking inifile_get_num_sections()
  - inifile handle is now of (opaque) type struct inifile

1.1.11-0
--------
o inifile:
  - complete redesign behind the scenes, now depending on YStringTree
o YMisc:
  - added cropstr() and unquote()
o make:
  - replaced ytools.mk -> proj.mk and MODDIR definition by TOPDIR definition 
    to be consistent with other projects

Version 1.1.12-0
---------------
o patched mingw gcc (gcc bug 24196)

Version 1.1.13-0
----------------
o added new members _longname() and _logname() to YAbstractFamilyMember
