C++ Library containing a lot of needful things: Stack Trace, Command Line Parser, Resource Handling, Configuration Files, Unix Command Execution, Directories, Regular Expressions, Tokenizer, Function Trace, Standard Extensions.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

117 lines
3.6 KiB

2018-11-21
Upgraded to support C++17, mainly all throw declarations have been
replaced by noexcept. Now minimum requirement is C++11. The library
should be reviewed with regard to latest C++ standards. Probably some
features can be removed, especially regular expressions are now part
of the standard.
2006-02-04
New RPM mrw-c++-minimal with minimal dependencies on other libraries
(boost, ltdl, log4cxx), but without debugging support, means not stack
trace, no logging.
2005-04-18
New feature: Execution of commands is can now be done "in the
background", without the need of threads (similar to the use of
select, or non-blocking pipes, actually it is achieved through non
blocking pipes). See class PartialExec for details.
2005-04-06
New feature: Automatic initialisation of log4cxx, just link to
libmrwlog4cxxconfiguration.
2005-03-05
Really cool new feature: Automagic function trace: Don't change a
single line in your code (if log4cxx is already configured), just use
GNU gcc with option -finstrument functions, and link to
libmrwfunctiontracelog4cxx!
2005-02-23
New feature: A Function Tracer. Add the METHOD macro as first line in
all your methods and the FUNCTION macro in your functions, then you'll
get a nice log4cxx based entry and exit tracing.
New: mrw::ifelse, acts as A ? A : B but with only one access to A
Repaired and tested: mrw::Dir (on my system, type is always UNKOWN)
DELETED:
- mrw::min and mrw::max
- SimpleTrace (use log4cxx instead!)
2005-02-18
Added a new class DynamicLibrary which is a wrapper around the system
independent linltdl from the libtool. You can use it for loading
symbols from shared libraries at runtime.
Added new functions ifelse which implement (a?a:b), but without the
drawback of having expression a evaluated twice.
"libbfd" from the GNU binutils is now no more linked to the library,
but loaded at runtime using the new DynamicLibrary class. This way,
there is a dependency less in the RPMs. The dependency was bad,
because the libbfd does not use the normal library versioning, so you
used to have to install the exactly same version of the binutils, as
the compiler of the RPMs, and this was inacceptable for me.
2005-02-03
Added facilities for handling UNIX C library calls that set variable
errno in class Errno and in exeption unix_error
New static methods in Args to simplify access to command line
parameters.
2005-01-07
There is a new configuration file handler to read and write settings
from a Unix like configuration file.
2004-12-20
Warning: Interface change!
Conversion from string mrw::to<> and string operator>> throw exception
in case of failure!
2004-12-17
The new implementation of Exec was not so stable, now it works perfectly.
New feature: A simple string tokenizer, in the regular expressions module.
2004-12-14
Extended Exec so, that it is possible to pass stdin to the child
process.
2004-12-10:
Added a new library for handling regular expressions (because using
boost resultet in link errors
UPDATE:
Found the source of boost problem: It's kdevelops fault, kdevelop
disables C++ by default (-fno-exception -fno-rtti)! The regexp library
still remains, but may be deleted in future, if I think that boost's
is better. Customer feedback is welcome, please tell me if you need my
implementation.
2004-10-13:
StackTrace now can load not only the executable, but also shared
libraries. On Linux, if StackTrace is initialized without parameters,
then not only the executable is loaded, but all shared libraries with
their offset are parsed from /proc/self/maps.
- no more need for /usr/bin/ldd
- new functions mrw::readline