============================================================================
STLSoft - History

; Created:  29th March 2002
; Updated:  9th March 2009

============================================================================


9th March 2009 - 1.9.77 released
--------------------------------

 * corrected invalid invariants in memory_mapped_file classes in UNIXSTL and
   WinSTL


6th March 2009 - 1.9.76 released
--------------------------------

 * added swap() methods to memory_mapped_file classes in UNIXSTL and WinSTL
 * corrected defect in VC++ detection of bad_alloc support (which only
   affects VC++ 6 or earlier)


26th February 2009 - 1.9.75 released
------------------------------------

 * tidied up COMSTL documentation
 * tidied up scoped_handle use in winstl::memory_mapped_file
 * added checks to detect at compile time accidental use of &stat_data with winstl::filesystem_traits<>::get_file_size()
 * fixed defect in winstl::basic_reg_value::value_sz(), whereby the nul-terminator is included in the resultant string length
 * tidied up winstl::basic_path, and added max_size() method
 * tidied up winstl::basic_commandline_parser, added substring-constructor, and changed subscript operator to allow indexing (but not use) of the end element


13th February 2009 - 1.9.74 released
------------------------------------

 * further implementation of special Borland version of stlsoft::scoped_handle
 * further workarounds to Borland code generation defects in stlsoft::basic_simple_string and platformstl::basic_file_lines


3rd February 2009 - 1.9.73 released
-----------------------------------

 * added partial support for Borland 5.9.x and 6.1.x; to support use of Borland with Pantheios
 * re-applied VC++ 7.1 workaround eroneously removed in 1.9.70


1st February 2009 - 1.9.72 released
-----------------------------------

 * added char_copy() methods to filesystem_traits classes in UNIXSTL, as part of move away from "unsafe" string functions
 * fixed defect in winstl::squeeze_path() whereby wrong length is returned if buffer size is < 5 and the file length < buffer size
 * removes unwanted trailing slash in application directory from winstl::basic_searchpath_sequence
 * further work to remove dependency on "unsafe" string functions


28th January 2009 - 1.9.71 released
-----------------------------------

 * fixed DMC++ incompatibility introduced in 1.9.70


25th January 2009 - 1.9.70 released
-----------------------------------

 * improved stlsoft::find_next_token() function templates to ensure that all empty fields are reported to caller
 * added char_copy() methods to filesystem_traits classes in InetSTL and WinSTL, as part of move away from "unsafe" string functions
 * minor enhancements to platformstl::readdir_sequence, to disambiguate constructor overloads
 * removed all "unsafe" string functions from winstl::basic_findfile_sequence class template and supporting components
 * improved winstl::basic_path class template to ensure proper behaviour in corner cases of use of push() and pop() methods


23rd January 2009 - 1.9.69 released
-----------------------------------

 * improved robustness of winstl::path_squeeze
 * more "Safe String" library compatibility changes


19th January 2009 - 1.9.68 released
-----------------------------------

 * fix defect, and updated docs, for stlsoft::must_init utility class template


17th January 2009 - 1.9.67 released
-----------------------------------

 * compatibility with GCC on Fedora on PPC
 * correction of semantics of null_allocator


4th January 2009 - 1.9.66 released
----------------------------------

 * compatibility with GCC 4.3's pedantic precedence warnings
 * compatibility with SunPro compiler for limit_traits


1st January 2009 - 1.9.65 released
----------------------------------

 * "Safe String" library compatibility changes


28th December 2008 - 1.9.64 released
------------------------------------

 * fix to string access shims for VARIANT


9th December 2008 - 1.9.63 released
-----------------------------------

 * optimised stlsoft::basic_string_view::reserve()
 * enhanced compatibility for stlsoft::fixed_array_?d class templates


1st December 2008 - 1.9.62 released
-----------------------------------

 * fixed defect in interface_cast<> and try_interface_cast<>
 * improved compatibility with Visual C++ 9
 * speculative support for Intel C/C++ 11.0
 * fixed defect in winstl::to_SYSTEMTIME(DATE) overload


19th November 2008 - 1.9.61 released
------------------------------------

 * better compatibility with SAPI.h for COMSTL's sapi_util.hpp
 * documentation markup improvements for a number of files


27th October 2008 - 1.9.60 released
-----------------------------------

 * added stlsoft::apply_const()
 * added stlsoft/conversion/m2w.hpp


25th October 2008 - 1.9.59 released
-----------------------------------

 * change in ATLSTL's property method helpers to avoid infinite loop in
   Visual C++ 6 problem when implementing property puts to CComBSTR
 * fixed compile error with GCC when using VARIANTs in C compilation units


16th October 2008 - 1.9.58 released
-----------------------------------

 * fixed major defect introduced in 1.9.52 to WinSTL's time string access
   shims
 * fixed minor defects in COMSTL's VARIANT string access shims
 * fixed defect in documentation generation whereby examples were omitted
 * reduced compilation dependencies in STLSoft's time string access shims

10th October 2008 - 1.9.57 released
-----------------------------------

 * addition of missing const_reference member type in various Windows
   controls collection classes
 * C / C++ compatibility fixes for COMSTL
 * fix of minor non-standard name in winstl::int_to_string() supporting
   class
 * a large number of files were altered in minor ways, to do with whitespace
   and the placement of * and & symbols
 * several files' documentation markup was cleaned up

1st October 2008 - 1.9.56 released
----------------------------------

 * a large number of minor enhancements to the documentation markup
 * fixes to defects to include guards in UNIXSTL

27th September 2008 - 1.9.55 released
-------------------------------------

 * corrected defects in stlsoft::wide2multibyte and stlsoft::multibyte2wide
   conversion classes
 * fixes to various x64 defects related to use of inappropriate calling
   convention specifiers with use of dl_call
 * sundry other modifications in internal pre-processor facilities and
   small improvements to Watcom compatibility

15th September 2008 - 1.9.54 released
-------------------------------------

 * added stlsoft::exception_string::truncate() method
 * removed dependency of UDATE for to_FILETIME() and to_SYSTEMTIME() shim
   overloads for DATE type

14th September 2008 - 1.9.53 released
-------------------------------------

 * changed definition of STLSOFT_STATIC_ASSERT() to work with GCC
 * defect defect in pre-condition enforcement of
   winstl::system_traits::expand_environment_strings()

11th September 2008 - 1.9.52 released
-------------------------------------

 * fixed for warnings in 64-bit compilation (VC9) in WinSTL string access
   shims for SYSTEMTIME; also added extra safeguard against external race
   condition

7th September 2008 - 1.9.51 released
------------------------------------

 * workaround for defective exception-throwing behaviour of
   stlsoft::conversion_error with VC6
 * fixed defect in WinSTL string access shims for SYSTEMTIME that faults
   when asked to process an invalid time value

3rd September 2008 - 1.9.50 released
------------------------------------

 * added stlsoft character conversion typedefs m2w, w2m, t2m, m2t
 * fix for VC++ 6 defect in requiring return code after exception throw

2nd September 2008 - 1.9.49 released
------------------------------------

 * fix for DMC++ defect in winstl::reg_value function template definition
 * added winstl character conversion typedefs m2w, w2m, t2m, m2t

23rd August 2008 - 1.9.48 released
----------------------------------

 * added comstl/util/CY_functions.h
 * added comstl/util/DECIMAL_functions.h
 * added comstl/util/VARIANT_functions.h
 * added comstl::variant conversion constructor for DECIMAL
 * fixed bug in stlsoft::trim_all()
 * added winstl::basic_error_desc<>::empty()

12th August 2008 - 1.9.47 released
----------------------------------

 * enhancement of stlsoft::read_line() function template to work with
   various line-termination sequences
 * enhancement of fixed array classes to allow zero size
 * winstl::clipboard_format_sequence enhancements to iterator type profile
 * winstl::clipboard_scope defect fix and documentation enhancement
 * syntactic modification of contract enforcement statements to a large
   number of components to address warnings with GCC 4.3 in pedantic mode

11th August 2008 - 1.9.46 released
----------------------------------

 * defect fixes to stlsoft::pod_vector
 * reduced coupling, and increased functionality, of stlsoft::format_bytes()
 * sundry compatibility improvements

8th June 2008 - 1.9.45 released
-------------------------------

 * enhancement to stlsoft::to_uint64 conversion shim for ULARGE_INTEGER
 * more Win-64 compatibility changes
 * fixes to winstl::basic_path class template

1st June 2008 - 1.9.44 released
-------------------------------

 * bug fix in winstl/shims/access/string/LSA_UNICODE_STRING.hpp, required
   for newly released flecxx library

31st May 2008 - 1.9.43 released
-------------------------------

 * more Win64-compatibility modifications
 * more Safe String library modifications
 * expanded the stlsoft::get_FILE_ptr attribute shim for MFC's CStdioFile

17th May 2008 - 1.9.42 released
-------------------------------

 * more Win64-compatibility modifications
 * more Safe String library modifications

13th May 2008 - 1.9.41 released
-------------------------------

 * bug fix for GCC compilation on PowerPC that was broken with 1.9.40

13th May 2008 - 1.9.40 released
-------------------------------

 * significant refactoring of compiler-capability discrimination for GCC and
   VC++
 * compatibility fixes for SunPro compilers
 * bug fix in integral_printf_traits (introduced in 1.9.39)

11th May 2008 - 1.9.39 released
-------------------------------

 * next tranche of changes for Win64 support

4th May 2008 - 1.9.38 released
------------------------------

 * next tranche of changes for Win64 support

3rd May 2008 - 1.9.37 released
------------------------------

 * first tranche of changes for Win64 support

30th April 2008 - 1.9.36 released
---------------------------------

 * added support for FreeBSD operating system

29th April 2008 - 1.9.35 released
---------------------------------

 * added value_multi_sz() to winstl::reg_value

25th April 2008 - 1.9.34 released
---------------------------------

 * renamed winstl::get_hwnd attribute shim to winstl::get_HWND
 * minor adjustments to Sun Pro support
 * library feature discrimination symbol cleanup
 * refactored error/exception handling in Windows Registry library

25th April 2008 - 1.9.33 released
---------------------------------

 * added support for the SunPro C and C++ compilers
 * various mods to ensure headers are self-contained when used with
    Windows "lean and mean" suppression symbols

22nd April 2008 - 1.9.32 released
---------------------------------

 * fix for VC++ 8/9 linker error in the allocator_selector
 * refactoring of string access shim headers for lightweight compilation

13th April 2008 - 1.9.31 released
---------------------------------

 * exception hierarchy refactoring
 * bug fix to stlsoft::must_init

3rd April 2008 - 1.9.30 released
--------------------------------

 * tidying of distribution

3rd March 2008 - 1.9.29 released
--------------------------------

 * more preparation for safe string library compatibility

24th March 2008 - 1.9.28 released
---------------------------------

 * enhancement to winstl::reg_key class
 * preparation for safe string library compatibility
 * bug fix for C-compilation in winstl/controls/functions.h

17th March 2008 - 1.9.27 released
---------------------------------

 * support for Visual C++ 9 (Visual C++ 2008)
 * fixed pre-processor typo that breaks GCC -pedantic
 * added item-data functions for list-/combo-boxes

15th March 2008 - 1.9.26 released
---------------------------------

 * definition, where appropriate, of STLSOFT_CF_FUNCTION_SYMBOL_SUPPORT,
   denoting that a particular compiler supports the __FUNCTION__
   pre-processor symbol

9th March 2008 - 1.9.24 released
--------------------------------

 * wholesale increase of use of forward include guards, to reduce
   compilation times

8th March 2008 - 1.9.24 released
--------------------------------

 * finishing up some missed std::swap refactoring

20th February 2008 - 1.9.23 released
------------------------------------

 * fix for minor compiler compatibility issue

8th February 2008 - 1.9.22 released
-----------------------------------

 * refactored unixstl/synch/util/features.h

5th February 2008 - 1.9.21 released
-----------------------------------

 * fixed a bug in platformstl/synch/util/features.h

3rd February 2008 - 1.9.20 released
-----------------------------------

 * added new stlsoft::singlethreaded_tss_index synchronisation utility class

2nd February 2008 - 1.9.19 released
-----------------------------------

 * enhancement of SAPI utility header for COMSTL

27th January 2008 - 1.9.18 released
-----------------------------------

 * enhancement of STLSoft's integral_printf_trait component to support
   Pantheios 1.0.1 beta 91
 * release of SAPI utility header for COMSTL

5th January 2008 - 1.9.17 released
----------------------------------

 * bug fix for UNIXSTL on Leopard/GCC 4.0.1

29th December 2007 - 1.9.16 released
------------------------------------

 * bug fix in stlsoft::printf_traits
 * bug fix in winstl::GetTimeFormat_msA/W
 * other minor bug fixes
 * minor feature enhancements & refactoring

24th December 2007 - 1.9.15 released
------------------------------------

 * minor bug fix for C compilation

23rd December 2007 - 1.9.14 released
------------------------------------

 * updated stlsoft version (_STLSOFT_VER) missing in 1.9.13

20th December 2007 - 1.9.13 released
------------------------------------

 * features enhancements to fixed array classes

19th December 2007 - 1.9.12 released
------------------------------------

 * features enhancements to fixed array classes

17th December 2007 - 1.9.11 released
------------------------------------

 * minor modifications and bug-fixes

10th December 2007 - 1.9.10 released
------------------------------------

 * bug fix for recls (http://recls.org/)
 * minor feature enhancements

19th November 2007 - 1.9.9 released
-----------------------------------

 shim fixes in UNIXSTL

18th November 2007 - 1.9.8 released
-----------------------------------

 compatibility with Borland C/C++ 5.82 (Turbo C++); now supports VOLE

16th November 2007 - 1.9.7 released
-----------------------------------

 Win 64-bit compilation support; not perfect yet
 Borland Turbo C++ v5.82 support; not perfect yet
 new stlsoft::get_FILE_ptr shim
 new platformstl::file_lines class
 new winstl::to_DATE conversion shim
 major enhancements to unixstl::memory_mapped_file
 multiple compiler compatibility enhancement fixes
 minor compilation warning fixes

25th September 2007 - 1.9.6 released
------------------------------------

 bug fixes - mostly minor


2nd August 2007 - 1.9.5 released
--------------------------------

 minor additions and bug fixes


2nd August 2007 - 1.9.4 released
--------------------------------

 __VA_ARGS__ compiler-support detection


29th July 2007 - 1.9.3 released
-------------------------------

 A couple of small additions.

 Documentation still outstanding ... resolved soon. Hopefully.


2nd June 2007 - 1.9.2 released
------------------------------

 A few changes and updates to various components, primarily to support the
 release of recls 1.8.10 (http://recls.org/downloads.html).

 The elephant in the living room is still the lack of documentation. It's
 coming ... honest.


30th April 2007 - 1.9.1 released (for Extended STL, volume 1: CD)
-----------------------------------------------------------------

 There has been an enormous amount of change in STLSoft from the last
 release, 1.8.9 (October 2005), to the new release, 1.9.1 (April/May 2007).

 Consequently, I just can't muster the effort at this time to detail the
 entire set of changes. The one big change I will note, however, is that
 the library files no longer reside in the root directory, e.g.

   comstl_bstr_functions.h

 and are now in appropriate sub-directories under the sub-project
 sub-directories, e.g.

   comstl/string/bstr_functions.h


=============================== End of file ================================
