446 lines (361 with data), 16.4 kB
from ucommon 3.3.7 to 3.4.0
- simplified to better focus on core runtime mission.
- packaging simplified.
- ccscript moved to bayonne
- ccaudio detached
from ucommon 3.3.6 to 3.3.7
- small change in how ucommon components can be pre-set.
- missing local header for gnutls.
from ucommon 3.3.5 to 3.3.6
- grouping operator for usage help.
- script merge operation by images.
- doxygen generation now supported from cmake, from Angelo Naselli.
from ucommon 3.3.4 to 3.3.5
- make sure gettext is actually buildable before we build with it.
from ucommon 3.3.3 to 3.3.4
- broken sym lookup fixed.
from ucommon 3.3.2 to 3.3.3
- process detach and restart handling.
- more complete string to numeric conversions.
- syms were not initialized in all shell constructors.
- some inline templates that contain generic values redone as typename.
from ucommon 3.3.1 to 3.3.2
- shell debug message logging output.
- restart method to hook debuggers.
- local thread-safe symbol space.
from ucommon 3.3.0 to 3.3.1
- expand args to directory and recursive operations.
- fix cstring initialization.
- set methods to initialize shell options.
- basic logging added.
from ucommon 3.2.2 to 3.3.0
- internationalization bindings with gnu gettext support.
- use shell parser in audiotool code.
- small fixes in shell option parsing.
from ucommon 3.2.1 to 3.2.2
- xml parser for buffered i/o objects and files.
- bidirectional socket descriptor to FILE.
- OrderedIndex reset method.
- numeric format conversion and scanning operator "%".
from ucommon 3.2.0 to 3.2.1
- splitting shell parser so that it is possible to create tool style parsers.
- string hexpack and hexdump functions.
- traditional, random, and digest uuid functions.
- make sure we always ignore pthread/pth if msw targets (fedora mingw32).
- barrier patch from Leon Pollak.
from ucommon 3.1.2 to 3.2.0
- added explicit add and remove for NamedObject to make keymap easier to use.
- created new keypager type to allocate named objects on demand.
- fixed option crash when not defining a long option.
- improved shell header documentation.
- shell spawn and process management functions.
- shell io for buffered pipes and stdio handling.
from ucommon 3.1.1 to 3.1.2
- some attention to the question of padding cipher blocks.
- gnutls can now also be used in place of openssl.
- make sure all keys are destroyed cleanly when secure objects are released.
from ucommon 3.1.0 to 3.1.1
- some attention to the shell functions.
from ucommon 3.0.6 to 3.1.0
- encapuslate select() bit mask operations into select class.
- new read/write based stream methods.
- socket cannot be private in TCPSocket.
- fixed doxygen generated docs, now much more complete.
- introduced new secure library for ssl sockets, digests, ciphers, etc.
from ucommon 3.0.5 to 3.0.6
- optional socks proxy support possible with --enable-socks configure flag.
- new Socket methods to wrap more socket functionality and new init method.
from ucommon 3.0.4 to 3.0.5
- new socket option for nodelay.
- copyright notices fixed for consistency.
- fix for conflict between stream and macros.
from ucommon 3.0.3 to 3.0.4
- buffer purge method added.
- new flush io buffer virtual method.
- buffering support and tcp socket for non-blocking i/o.
from ucommon 3.0.2 to 3.0.3
- new biderectional buffered i/o support added.
- new buffered file and buffered tcp socket classes added.
- bug in ReusableAllocator freelist assignment.
- creation of connected sockets.
- standardized host and service name resolution.
from ucommon 3.0.1 to 3.0.2
- atomic counter and lock class added.
- shell no longer a second class member of ucommon.
- unit tests conditional by component selection.
- audio::init for static linkage issues.
- fsys::trunc method added.
- unicode utf8 file character operations.
from ucommon 3.0.0 to 3.0.1
- bug fix and unit test for queueof.
- initialization template function added.
- small cmake fixes.
- refinement of stackof and queueof templates.
From ucommon 2.1.4 to 3.0.0
- merged ccscript and ccaudio into ucommon core framework.
- extended configuration support for includes and plugins.
- expanded configure for framework component selection.
From ucommon 2.1.3 to 2.1.4
- new utf8_pointer string class and further unicode support.
- new component access api for datetime objects.
- New object containers for object lists, fifo's, and queues.
From ucommon 2.1.2 to 2.1.3
- unicode string support and utf8 string processing.
From ucommon 2.1.1 to 2.1.2
- set() methods for date, time, and datetime added.
- new defines for buffer sizes added.
- new date and time related auto string classes.
- fixups for netbsd and openbsd.
From ucommon 2.1.0 to 2.1.1
- fix for Time string conversion
- size fields for date and time strings.
From ucommon 2.0.8 to 2.1.0
- new abi for fsys seek and drop
- Added NamedTree/treemap copy constructor and changed id behavior
- Improved cmake support using proper build options and adding cpack
- Common use of "eq()" inlines for string and other data types
- fix for lseek (also patched in 2.0.9)
- all int fsys functions now return errno on failure, not -1
- Common C++ number string manip classes
- greater use of const in abi
- datetime class support added
- timer class expanded for operators
- fix for generated docs
From ucommon 2.0.7 to 2.0.8
- support for optional cmake based build system being added
From ucommon 2.0.6 to 2.0.7
- strict aliasing, socket address manipulations, and gcc 4.4
- doc generation cleanup
From ucommon 2.0.5 to 2.0.6
- spec file updated per redhat/fedora packaging policies
- fixed install scripts handling
- added man page for ucommon-config.
From ucommon 2.0.4 to 2.0.5
- small code cleanup.
- added fsync to fsys as fsys::sync() method.
- added missing destructors for queue and stack when no mempager is used.
From ucommon 2.0.3 to 2.0.4
- fixed bug in reusable object handoff to free list.
- basic dccp socket support added.
From ucommon 2.0.2 to 2.0.3
- documented behavior and use case for ...Thread::exit() methods changed.
From ucommon 2.0.1 to 2.0.2
- fix for missing functions in mingw32 cross-builds.
From ucommon 2.0.0 to 2.0.1
- fix for failed dlopen detection in lc and false libcompat check for netbsd
- general code cleanup with pedantic, some subtle header changes
- fix for generic interface routing in ipv6 multicast operations
- improved sunwpro support for --disable-stdcpp by using no%Cstd and CXX model
From ucommon 1.9.9 to 2.0.0
- fsys stream and random access modes with posix_fadvise support.
- new fsys drop method to drop used pages in streaming applications.
- license changes to lgplv3+
- mempager/memalloc "zalloc" method added.
- keyfile based on memalloc, not mempager.
From ucommon 1.9.8 to 1.9.9
- critical fix for assignment template for auto pointers.
From ucommon 1.9.7 to 1.9.8
- new NamedTree listing methods for moving and re-ordering tree branches.
- getIndexed methods for accessing a linked list by index.
- some clarification of internet socket address types.
- smart pointer can be initially assigned NULL...
- new memalloc because I needed a mempager without mutexes...
From ucommon 1.9.6 to 1.9.7
- lots of code cleanup for final release candidate for 2.0.
From ucommon 1.9.5 to 1.9.6
- better address list management, including unique insert and remove.
- copy constructor and address duplication for Socket::address.
- fixup of reader/writer pool locking and addition of gaurd objects.
- hopefully final core api for real 2.0 release!
From ucommon 1.9.4 to 1.9.5
- mutex::gaurd for scope mutex locking arbitrary objects.
- read/write locking access control for arbitrary objects.
- multi-distro spec file.
- simplified abi numbering.
From ucommon 1.9.3 to 1.9.4
- string equality tests.
- Socket isNull/isNumeric can parse inside a field...
- container policies for cidr's
- behavior of ID reset for named objects can now be overriden by virtual.
- string format conversion base class for use in string classes and operators.
From ucommon 1.9.2 to 1.9.3
- fixed join/drop issue in multicast reported by Michael Freedman.
- module loader error handling.
From ucommon 1.9.1 to 1.9.2
- added Socket::isNull and Socket::isNumeric checks.
- added keyhost hash key indexing on host only.
- fixed uninitialized getsockname len argument in gethint.
- updated spec file.
From ucommon 1.9.0 to 1.9.1
- bug in string::token parsing fixed.
- unit test to validate string::token fix.
- keyfile/keydata classes added for generic config file parsing.
- unit test added for keydata processing.
From ucommon 1.8.2 to 1.9.0
- pipestream interface normalized for shell execution.
- new "shell" class for generic parsing and argument expansion.
- v4mapped() added to enable/disable ipv4 to ipv6 mapping support.
- fsys::isfile/isdir added.
- some rework of timer events to better support updating in arm & disarm.
From ucommon 1.8.1 to 1.8.2
- doxygen updates.
- fix related to libstdc++/ansi c++ library design defect.
From ucommon 1.8.0 to 1.8.1
- use entirely safe string operations everywhere.
- keyassoc keydata constructor changed to pass size of string buffer.
- basic optional GNU pth support completed.
From ucommon 1.7.2 to 1.8.0
- support for forced ipv4/ipv6 in init. ipv6 unit testing.
- new family method for query default.
- further refinement of socket api.
- ipv6 support for opensolaris and -lnsl.
From ucommon 1.7.1 to 1.7.2
- small fix in type mismatch in stream allocate methods.
- do not remap undefined error codes, as can break switch blocks.
- fix for mingw32 address conversion functions.
From ucommon 1.7.0 to 1.7.1
- extended errno mapping for sockets.
From ucommon 1.6.2 to 1.7.0
- updated abi for fsys, rebuilt to unify file handling and to use a common
type and functions for files, directory access, and loader.
- simplified TimedEvent completion port handling and new static members.
- refactored socket api around supporting use of native socket_t. Minimal
api for abstract socket class used for protocol building.
- refactored containers to use references in assignment to avoid stack frame
- added stream classes for fsys (threaded i/o) and piping.
From ucommon 1.6.1 to 1.6.2
- improved support for using Socket::address as referenced type. New set &
From ucommon 1.6.0 to 1.6.1
- fix for loader.
- simplified fsys r/w calls.
- fsys.h documented.
From ucommon 1.5.0 to 1.6.0
- some small cleanups for opensolaris builds.
- additional is() and isnull() template operators, template swap.
- automatic rules for default selection with/without ansi C++ library (see
- new fsys wrapper class for threaded portable i/o operations.
- cmodel.sh support for broken libtool versions.
- lots of tcpstream/socket bug fixes and new tcpstream unit test added.
- changes in tcpstream abi to use address objects by reference.
- dynamic loader support added.
From ucommon 1.4.2 to 1.5.0
- added gnu common c++ based tcp streaming class to ucommon.
- added gnu common c++ based xml sax parser to ucommon with better support for
parsing embedded xml data structures.
- Daniel Silverstone's persistence engine from gnu common c++ added.
From ucommon 1.4.1 to 1.4.2
- get address entry by family from list.
- MultiMap/multimap multiply pathed lists/associated key objects.
- remove complex automake rules; use new cmodel.sh to reset libtool when
building pure c mode link for c++ objects for deep embedding without
- changes to support QNX target builds.
From ucommon 1.4.0 to 1.4.1
- internalized getaddrinfo substituted on targets without addrinfo support.
- small correction to socket::address::add to pass socket type.
- cygwin support
- fixups for Solaris support
From ucommon 1.3.3 to 1.4.0
- socket::address constructors reorganized
- added mapped (shared memory) to ucommon library
- improved mingw32 support
- support for gcc < 3.0 (gcc 2.96, rhel-2.1 for example)
- socket initialization for msw.
From ucommon 1.3.2 to 1.3.3
- initialization of socket hinting for BSD stack.
- further clarify asserts.
- fixes for NetBSD 4; clock_nanosleep and pthread_setconcurrency support.
- fixes for gcc < 3.4 (such as openbsd...)
- fixes for embedded linux kernel targets
From ucommon 1.3.1 to 1.3.2
- clarified assertions for argument preconditions for correctness.
From ucommon 1.3.0 to 1.3.1
- many testing asserts added to library for function argument preconditions.
From ucommon 1.2.5 to 1.3.0
- dynamic mutex resource locking, with new interface and supporting templates
to automate operation. This allows one to create exclusive access regions
on demand without having to embed initialized mutexes in each instance of
an object that requires serialization protection.
From ucommon 1.2.4 to 1.2.5
- restore sharing level at ConditionalLock commit if recursive locked.
From ucommon 1.2.3 to 1.2.4
- default initialization of socket address list to NULL required.
From ucommon 1.2.2 to 1.2.3
- small change in use of sched.h for portability.
- unitialized mempager and reorg treemap purge.
From ucommon 1.2.1 to 1.2.2
- typo in exclusive conditional lock.
From ucommon 1.2.0 to 1.2.1
- conditional modify access can be asserted during active recursive share.
From ucommon 1.1.1 to 1.2.0
- adding conditional policies, ConditionalLock::concurrency() and
- Recursive support in conditional locking.
- SharedPointer derived from ConditionalRW and optimized.
From ucommon 1.1.1 to 1.1.2
- fix for OS/X.
From ucommon 1.1.0 to 1.1.1
- adjusted definition of priority scheduling and added realtime thread policies.
From ucommon 1.0.0 to 1.1.0
- fixed spec file to support uses_stdcpp definition.
- fixed new operator when using stdcpp.
- conditionalrw locking scheme integrated for scheduling optimization.
From ucommon 0.9.2 to 1.0.0
- use std::runtime_exception instead of abort when using c++ runtime library
- crit macro allows std::runtime_exception processing for c++ runtime library
- check for old and new style c++ stream i/o classes, added OLD_STDCPP
- replaced NOSTDCPP with reversed & revised NEW_STDCPP flag unless OLD_STDCPP
- classes documented and doxygenized.
- expanded linked list support with head/tail and insert options.
- barrier with timed wait.
From ucommon 0.9.1 to 0.9.2
- fix critical bug in Socket::equal tests...
From ucommon 0.9.0 to 0.9.1
- removed AutoObject
- migrated thread functions to use pure win32 threading for mingw32; no
more redhat pthread-win32. This became possible when we dropped
- fixed cc mode library build because libtool still forces libstdc++!
From ucommon 0.8.2 to 0.9.0
- slight change to thread init for pthread-win32 static libs.
- new steplock formed purely from staircase mutexes.
- new event timer for timed completion event signalling.
- removed cancellable thread concepts to simplify thread model!
From ucommon 0.8.1 to 0.8.2
- conditional lock protect for shared recursive/short lock use.
From ucommon 0.8.0 to 0.8.1
- fix for pthread without setschedprio.
From ucommon 0.7.0 to 0.8.0
- fix for timerqueue class.
- potential writer starvation issues resolved in rwlock/condlock classes.
- consolidated and improved Conditional timed waits.
- introduction of transformable conditional locking.
- access shared locking extended to cover transformable conditional locks.
- default compile mode is now stdcpp; first step in gnu common c++ merge.
From ucommon 0.6.1 to 0.7.0
- added basic thread priority support
- changed base configure options to avoid collisions with other packages
- added getservice interface to get socket port #
- added charbuf template
- cidr policy chains simplified
- some rationalization and improvement in socket class with the ability
to compare addresses, manipulate address lists, etc.
- string finding with deliminators.
- first pass at offering real documentation for the library via doxygen.
From ucommon 0.6.0 to 0.6.1
- support for static libpthreadGC2
- support for w32 address conversion
From ucommon 0.5.0 to 0.6.0
- detached & pooled thread exit support fixed
- equal test for socket address
- getinterface to find interface to destination address
- subnet test for socket address comparison
- getaddress replaces hosttostr
From ucommon 0.4.0 to 0.5.0
- rwlock now also recursive writers
- clarification of conditional locking
- generic rexlock type replaces recursive mutex
Initial Release 0.4.0