www.digitalmars.com         C & C++   DMDScript  

c++.stlsoft - recls 1.9.1 (alpha 7) released

Download from https://sourceforge.net/projects/recls/files

recls 1.9.1 (alpha 7) released - 30th November 2011
===================================================

Summary:
--------

 * added numLinks member to recls_entryinfo_t
 * added member numRelativeDirectoryParts to recls_entryinfo_t
 * added RECLS_F_LINK_COUNT flag
 * added Recls_GetErrno()
 * added Recls_ResultCodeToUnixErrorCode()
 * added Recls_ResultCodeToWindowsErrorCode()
 * added 64-bit compatibility (currently Windows-only)
 * removed RECLS_RC_WRONG_ENTRY_TYPE status code; added
RECLS_RC_ENTRY_IS_DIRECTORY and RECLS_RC_ENTRY_IS_NOT_DIRECTORY status codes
 * Recls_Stat() now returns RECLS_RC_FAIL when a std::exception-derived
exception is caught
 * fix to RECLS_FAILED() (C-definition)
 * weakened contract (on Windows) to allow for full-path pattern
 * now copes with search directory surrounded by quotes
 * added test.unit.cpp.retcodes project
 * added test.unit.c.retcodes project
 * added test.scratch.links project
 * added GCC 4.5 and GCC 4.6 makefile
 * simplified the naming of bin and lib targets within the makefiles
 * corrected defect in clean.libs target, whereby the snprintf*.obj files were
not cleaned (Windows-only)
 * NOTE: bundles shwild 0.9.19
 * NOTE: bundles xTests 0.16.2
 * NOTE: depends on STLSoft 1.9.111

Details:
--------

General / C-API:

 ~ include/recls/internal/compiler_borland.h:
 ~ include/recls/internal/compiler_ch.h:
 ~ include/recls/internal/compiler_como.h:
 ~ include/recls/internal/compiler_dmc.h:
 ~ include/recls/internal/compiler_gcc.h:
 ~ include/recls/internal/compiler_intel.h:
 ~ include/recls/internal/compiler_msvc.h:
 ~ include/recls/internal/compiler_mwerks.h:
 ~ include/recls/internal/compiler_vectorc.h:
 ~ include/recls/internal/compiler_watcom.h:
    ~ 64-bit compatibility (currently Windows-only)

 ~ include/recls/internal/platform_types.h:
    + added numLinks member to recls_entryinfo_t
    + added member numRelativeDirectoryParts to recls_entryinfo_t

 ~ include/recls/internal/retcodes.h:
    - removed RECLS_RC_WRONG_ENTRY_TYPE
    + added RECLS_RC_ENTRY_IS_DIRECTORY
    + added RECLS_RC_ENTRY_IS_NOT_DIRECTORY

 ~ include/recls/recls.h:
    ~ fix to RECLS_FAILED() (C-definition)
    ~ minor fix (changing C++ comment to C comment)
    ~ 64-bit compatibility (currently Windows-only)
    + added RECLS_F_LINK_COUNT flag
    + added Recls_GetErrno()
    ~ minor mods

 ~ include/recls/unix.h:
    + added Recls_ResultCodeToUnixErrorCode()

 ~ include/recls/windows.h:
    + added Recls_ResultCodeToWindowsErrorCode()

Core:

 ~ src/ReclsFileSearch.cpp:
    ~ weakened contract (on Windows) to allow for full-path pattern
    ~ now copes with search directory surrounded by quotes
    ~ trivial formatting changes

 ~ src/api.entryinfo.cpp:
    ~ improved boolean testing

 ~ src/api.error.cpp:
    ~ GCC pedanticism compatibility
    + added Recls_GetErrno()
    - removed RECLS_RC_WRONG_ENTRY_TYPE
    + added RECLS_RC_ENTRY_IS_DIRECTORY
    + added RECLS_RC_ENTRY_IS_NOT_DIRECTORY

 + src/api.retcodes.windows.cpp:
    - removed RECLS_RC_WRONG_ENTRY_TYPE
    + added RECLS_RC_ENTRY_IS_DIRECTORY
    + added RECLS_RC_ENTRY_IS_NOT_DIRECTORY

 ~ src/api.search.cpp:
    ~ trivial formatting changes

 ~ src/api.util.create_directory.cpp:
    - removed RECLS_RC_WRONG_ENTRY_TYPE
    + added RECLS_RC_ENTRY_IS_DIRECTORY
    + added RECLS_RC_ENTRY_IS_NOT_DIRECTORY

 ~ src/api.util.stat.cpp:
    - removed RECLS_RC_WRONG_ENTRY_TYPE
    + added RECLS_RC_ENTRY_IS_DIRECTORY
    + added RECLS_RC_ENTRY_IS_NOT_DIRECTORY
    ~ Recls_Stat() now returns RECLS_RC_FAIL when a std::exception-derived
exception is caught

 ~ src/impl.entryinfo.cpp:
    ~ fixed defect whereby top-level directories did not have attributes set
correctly
    ~ fixed defect where attributes of non-existant stat'd entry were garbage
    + added RECLS_F_LINK_COUNT flag
    + added member numRelativeDirectoryParts to recls_entryinfo_t

 ~ src/impl.snprintf.cpp:
    ~ puts recls_snprintf() and recls_vsnprintf() into recls::util namespace

 ~ src/impl.trace.cpp:
    ~ diagnostic logging defaults are now { fatal=0 (on), error=3 (on),
warning=4 (on), informational=6 (on), debug0=7 (on), debug1=7 (on), debug2=-1
(off) }
    ~ diagnostic of function scope tracing is no longer on by default

 ~ src/impl.types.ftp.hpp:
    ~ CodeWarrior compatibility

C++ API:

 ~ include/recls/cpp/entry.hpp:
    + added num_links() method
    + added method num_relative_directory_parts() to recls::entry class
    + added property NumRelativeDirectoryParts to recls::entry class

 ~ include/recls/recls.hpp:
    + added operating system-specific functionality

Makefiles / Project-files:

 ~ build/ar/makefile:
 ~ build/bc56/makefile:
 ~ build/bc582/makefile:
 ~ build/cw8.unix/makefile:
 ~ build/cw8.win32/makefile:
 ~ build/dm/makefile:
 ~ build/gcc34.unix/makefile:
 ~ build/gcc34.win32/makefile:
 ~ build/gcc40.unix/makefile:
 ~ build/gcc41.unix/makefile:
 ~ build/gcc42.unix/makefile:
 ~ build/gcc43.unix/makefile:
 ~ build/gcc44.unix/makefile:
 ~ build/icl10.win32/makefile:
 ~ build/icl11.win32/makefile:
 ~ build/icl8.win32/makefile:
 ~ build/icl9.win32/makefile:
 ~ build/vc10.unixem/makefile:
 ~ build/vc10.x64/makefile:
 ~ build/vc10/makefile:
 ~ build/vc6.unixem/makefile:
 ~ build/vc6/makefile:
 ~ build/vc71/makefile:
 ~ build/vc8.unixem/makefile:
 ~ build/vc8.x64/makefile:
 ~ build/vc8/makefile:
 ~ build/vc9.unixem/makefile:
 ~ build/vc9.x64/makefile:
 ~ build/vc9/makefile:
    ~ various minor makefile structure and dependency corrections
    + test.unit.cpp.retcodes
    + test.unit.c.retcodes
    ~ corrected defect in clean.libs target, whereby the snprintf*.obj files
were not cleaned (Windows-only)
    ~ simplified the naming of bin and lib targets within the makefiles

 + build/gcc45.unix/makefile:
 + build/gcc46.unix/makefile:
    + added GCC 4.5 and GCC 4.6 makefile

 ~ projects/core/vc6/recls.core.dsp:
    + added api.retcodes.windows.cpp

 ~ projects/core/vc9/recls.core.vcproj:
    + added api.retcodes.windows.cpp to VC++ 9 project

 ~ recls.vc6.dsw:
    + added test.scratch.links project

Examples:

 ~ examples/cpp/example_cpp_2/example_cpp_2.cpp:
    ~ GCC 3.x compatibility

Test.Unit:

 ~ test/unit/test.unit.api.combine_paths/test.unit.api.combine_paths.c:
 ~ test/unit/test.unit.api.squeeze_path/test.unit.api.squeeze_path.c:
 + test/unit/test.unit.c.retcodes/test.unit.c.retcodes.c:
    + added required explicit initialisation for xCover (in C compilation unit)

Test.Scratch:

 + test/scratch/test.scratch.links/implicit_link.cpp:
 + test/scratch/test.scratch.links/test.scratch.links.cpp:
 + test/scratch/test.scratch.links/vc6/test.scratch.links.dsp:
    + added test.scratch.links project

Depends on:

 * STLSoft 1.9.111 or later
   (http://stlsoft.org/)

============================================================================
Nov 29 2011