Code

rrdcached.postrm: Remove /var/lib/rrdcached/ on purge.
[pkg-rrdtool.git] / CHANGES
diff --git a/CHANGES b/CHANGES
index 3f0098804c389b032cebd95d7a5460d8bbe8595f..892fd36148e6338aed1be0a1c983133faea24edd 100644 (file)
--- a/CHANGES
+++ b/CHANGES
-2009-04-07 07:31  oetiker
+2009-09-28 16:21  oetiker
 
-       * branches/1.3/program/bindings/perl-piped/RRDp.pm,
-         branches/1.3/program/bindings/perl-shared/RRDs.pm,
-         branches/1.3/program/configure.ac,
-         branches/1.3/program/doc/rrdbuild.pod,
-         branches/1.3/program/rrdtool.spec,
-         branches/1.3/program/src/pngsize.c,
-         branches/1.3/program/src/rrd.h,
-         branches/1.3/program/src/rrd_cgi.c,
-         branches/1.3/program/src/rrd_create.c,
-         branches/1.3/program/src/rrd_datalang.c,
-         branches/1.3/program/src/rrd_diff.c,
-         branches/1.3/program/src/rrd_dump.c,
-         branches/1.3/program/src/rrd_error.c,
-         branches/1.3/program/src/rrd_fetch.c,
-         branches/1.3/program/src/rrd_first.c,
-         branches/1.3/program/src/rrd_format.c,
-         branches/1.3/program/src/rrd_format.h,
-         branches/1.3/program/src/rrd_gfx.c,
-         branches/1.3/program/src/rrd_graph.c,
-         branches/1.3/program/src/rrd_graph_helper.c,
-         branches/1.3/program/src/rrd_hw.c,
-         branches/1.3/program/src/rrd_hw.h,
-         branches/1.3/program/src/rrd_i18n.h,
+       * doc/librrd.pod: Moved rrd_dump_cb_r() to section "CORE FUNCTIONS"
+         since this is not a utility function but rather part of RRDtool's
+         core. -- Sebastian Harl
+
+2009-09-28 16:16  oetiker
+
+       * doc/Makefile.am: Moved the 'librrd' manpage to section 3 --
+         Sebastian Harl
+
+2009-09-28 16:16  oetiker
+
+       * doc/librrd.pod: documentation for rrd_mkdir_p added -- Sebastian
+         Harl
+
+2009-09-28 16:16  oetiker
+
+       * src/rrd_daemon.c: free config_pid_file after using it for the last
+         time ... Else, the daemon might either segfault or leave the PID
+         file around. -- Sebastian Harl
+
+2009-09-28 16:15  oetiker
+
+       * src/rrd_daemon.c: try to create missing journal directories rather
+         than abort with an error. -- Sebastian Harl
+
+2009-09-28 16:13  oetiker
+
+       * src/librrd.sym.in.in, src/rrd.h, src/rrd_utils.c: added
+         rrd_mkdir_p - This function may be used to recursively create some
+         directory, similar to "mkdir -p" on the command-line. -- Sebastian
+         Harl
+
+2009-09-24 19:21  oetiker
+
+       * src/rrd_restore.c: adjusted copyright wording according to
+         sebastians suggestions
+
+2009-09-01 08:49  oetiker
+
+       * NEWS, src/rrd_graph.c: show element type in legend
+
+2009-08-25 09:01  oetiker
+
+       * configure.ac, src/rrd_client.h, src/rrd_daemon.c: detect if
+         stdint.h is available. if not, use inttypes. this should fix #239
+         and make compilation on solaris 9 work.
+
+2009-08-24 12:04  oetiker
+
+       * debian/README, debian/README.Debian, debian/build_freetype.sh,
+         debian/changelog, debian/control, debian/copyright,
+         debian/librrd0-dev.files, debian/librrd0.files,
+         debian/librrd0.postinst, debian/librrd0.postrm,
+         debian/librrd0.shlibs, debian/librrdp-perl.files,
+         debian/librrds-perl.files, debian/rrdtool-tcl.files,
+         debian/rrdtool.files, debian/rules, debian/watch: replae with
+         pointer
+
+2009-08-24 12:02  oetiker
+
+       * src/rrd_config_bottom.h: call fpclass only once when replacing
+         isnan for solaris
+
+2009-08-22 22:03  oetiker
+
+       * MakeMakefile: remove misspellt keyword ...
+
+2009-08-21 05:03  oetiker
+
+       * m4/acinclude.m4, src/rrd_config_bottom.h: make sure all elements
+         required in the definition of isinf are defined in their turn
+
+2009-08-20 22:02  oetiker
+
+       * src/rrd_graph.c, src/rrd_tool.c: Trim trailing whitespace, reoder
+         getopt_long per shortopt char; Fix -D while at it -- Bernhard
+         Reutner-Fischer
+
+2009-08-19 15:24  oetiker
+
+       * NEWS, doc/rrdgraph.pod, src, src/rrd_graph.c, src/rrd_graph.h,
+         src/rrd_tool.c: The attached patch allows to $ rrdtool graph
+         --border=0 to disable the 3d border around the image. -- Bernhard
+         Reutner-Fischer rep.dot.nop gmail.com
+
+2009-08-19 07:44  oetiker
+
+       * src/rrd_graph.c: yes this should not matter, but I think it is the
+         right thing todo ...
+
+2009-08-17 21:34  oetiker
+
+       * src/rrd_dump.c, src/rrd_tune.c: added missing prototypes
+
+2009-08-17 21:31  oetiker
+
+       * CONTRIBUTORS, doc/librrd.pod, src/librrd.sym.in.in, src/rrd.h,
+         src/rrd_dump.c: Added a call back interface to rrd_dump to be able
+         to call the function from c. See librrd.pod for documentation. --
+         Benny Baumann BenBE geshi.org
+
+2009-08-16 22:22  oetiker
+
+       * doc/rrdcached.pod, src/rrd_daemon.c: From: Florian Forster
+         <octo@leeloo.lan.home.verplant.org> This patch introduces
+         per-socket, per-command permissions to the RRD caching daemon,
+         RRDCacheD. This allows administrators to limit access to the
+         daemon in a fine-grained manner. The patch removes the command
+         line option `-L' and introduces `-P' instead. The option must
+         appear *before* the `-l' option and the given permissions are set
+         for all following sockets or another `-P' option. For example:
+         rrdcached -P FLUSH,PENDING -l 10.2.3.4 -P UPDATE -l
+         unix:/some/path Allow `FLUSH' and `PENDING' commands to clients
+         connected via IPv4 networking and `UPDATE' to clients connected
+         via a UNIX domain socket only. There are a couple of exceptions: -
+         The commands `HELP' and `QUIT' are always allowed. - If the
+         command `BATCH' is allowed, the command `.' is automatically
+         allowed, too. By default, i. e. if no `-P' option is specified,
+         all commands will be allowed. As a shortcut to reset the behavior
+         to the default behavior, you can use the slightly hackish `-P ""'
+         syntax. Signed-off-by: Florian Forster
+         <octo@leeloo.lan.home.verplant.org>
+
+2009-08-16 22:05  oetiker
+
+       * configure.ac: with my Debian Testing box I had to apply the
+         following small changes to the `configure.ac' file in order to
+         make `autoconf' happy. Don't know what the problem precisely is ?
+         m4 and its square parenthesis is too high for me ;) -- Florian
+
+2009-08-16 22:00  oetiker
+
+       * autogen.sh: there is no config directory ... so lets not search
+         for it in autogen.sh
+
+2009-08-11 14:00  oetiker
+
+       * branches/1.3/program/src/rrd_restore.c, src/rrd_restore.c: fix
+         freeing order when generating error messages. found by Dmitry V.
+         Krivenok
+
+2009-08-10 11:47  oetiker
+
+       * m4/acinclude.m4: include math.h when testing IEEE
+
+2009-08-08 14:06  oetiker
+
+       * branches/1.3/program/doc/rrd-beginners.pod, doc/rrd-beginners.pod:
+         remove extra \ in perl example
+
+2009-08-08 09:38  oetiker
+
+       * src/rrd_daemon.c: The journal files are time-stamped and replayed
+         in order. This allows systems with 32-bit signed off_t to write
+         more than 2GB of journal entries per flush interval. --kevin
+
+2009-08-08 09:36  oetiker
+
+       * doc/rrdgraph.pod: add some shell proggramming advice ... Bernhard
+         Reutner-Fischer
+
+2009-08-08 09:34  oetiker
+
+       * src/rrd_daemon.c: Remove PID file later in the cleanup process
+         --kevin
+
+2009-08-08 09:29  oetiker
+
+       * src/rrd_daemon.c: Increment the DataSetsWritten counter before
+         freeing the RRD values. --kevin
+
+2009-08-08 09:28  oetiker
+
+       * src/rrd_daemon.c: The current method may have caused flushes (and
+         journal rotations) more often than necessary. The problem was
+         introduced in r1600. --kevin
+
+2009-08-08 09:27  oetiker
+
+       * src/rrd_daemon.c: Two-phase shutdown for rrdcached ensures that
+         values are flushed. Previously, it was possible for the queue
+         threads to exit before the flush thread completed queueing values.
+         If running with -F, rrdcached may have crashed due to assertion
+         failure before writing all values. -- kevin
+
+2009-08-07 06:04  oetiker
+
+       * branches/1.3/program/bindings/python/rrdtoolmodule.c,
+         bindings/python/rrdtoolmodule.c: include PACKAGE_VERSION as
+         version number for python module to fix #236
+
+2009-08-03 18:51  oetiker
+
+       * branches/1.3/program/src/rrd_info.c, src/rrd_info.c: in rrd > 1.3
+         it's called rrd_info_push ... and not just info_push ...
+
+2009-08-03 18:45  oetiker
+
+       * branches/1.2/program/src/rrd_info.c,
+         branches/1.3/program/src/rrd_info.c, src/rrd_info.c: Show the
+         index of each data source in the rrd_info output. Patch for #231
+         provided by Glenn Herteg, GroundWork Open Source, Inc.
+
+2009-07-30 07:57  oetiker
+
+       * NEWS: new news
+
+2009-07-30 07:56  oetiker
+
+       * src/rrd_tune.c: rrd_tune HW Update Allow to set the smoothing
+         window (alpha, beta, gamma) to zero. I'm using rrdtool 1.3.8 with
+         abberant behavior detection from the Brutlag method. I need to use
+         a week seasonality and no smoothing for the SEASONAL and
+         DEVSEASONAL. So I use rrdtune in order to set the smoothing window
+         to 0.0. This calls the set_hwarg(). But this method is also used
+         to tune the alpha, beta and gamma that can't be set to 0.0 So when
+         I tune my smoothing window size to 0.0, it returns -1 due to the
+         if(window<=0.0) then do nothing. I join here a small correction
+         with a differnent method used to set only the smoothing window
+         size and allowing it to be zero. -- sylvain.luiset gmail.com
+
+2009-07-28 16:49  oetiker
+
+       * configure.ac: update conditional silent-rules
+
+2009-07-14 12:00  oetiker
+
+       * src/rrd_daemon.c: Handle race condition for "UPDATE" with new
+         files. Problem found by Sebastian Harl. Patch by Kevin.
+
+2009-07-12 06:28  oetiker
+
+       * src/rrd_daemon.c: Do not trust cache tree pointers after releasing
+         the cache lock. It's possible that a "FORGET" was issued in the
+         mean time. -- kevin
+
+2009-07-10 05:52  oetiker
+
+       * src/rrd_daemon.c: destroy flush condition variable
+
+2009-07-10 05:51  oetiker
+
+       * src/rrd_graph.c: Move <libgen.h> include so we know whether we
+         HAVE_LIBGEN_H -- kevin
+
+2009-07-09 20:14  oetiker
+
+       * doc/Makefile.am, src/rrd_thread_safe.c: Silence automake
+         portability warnings caused by multiple inference rules. -- kevin
+         brintnall
+
+2009-07-05 08:41  oetiker
+
+       * configure.ac, src/rrd_restore.c, win32/rrd_config.h.msvc: check
+         for the size of time_t and behave accordingly
+
+2009-07-04 14:51  oetiker
+
+       * src/rrd_restore.c: be more careful when converting to string to
+         time_t ... test if time_t is long long
+
+2009-06-10 19:05  oetiker
+
+       * bindings/lua/compat-5.1r5/compat-5.1.c,
+         bindings/lua/compat-5.1r5/compat-5.1.h,
+         bindings/lua/compat-5.1r5/compat-5.1.lua: add the real license ...
+
+2009-06-10 12:17  oetiker
+
+       * branches/1.3/program/doc/bin_dec_hex.pod,
+         branches/1.3/program/doc/rrdtutorial.es.pod, doc/bin_dec_hex.pod,
+         doc/rrdtutorial.es.pod: fix bad pdf links
+
+2009-06-09 19:22  oetiker
+
+       * bindings/lua/compat-5.1r5/compat-5.1.c,
+         bindings/lua/compat-5.1r5/compat-5.1.h,
+         bindings/lua/compat-5.1r5/compat-5.1.lua: added compat 5.1 license
+         copied from website
+
+2009-06-08 05:12  oetiker
+
+       * branches/1.3/program/configure.ac, configure.ac: make config.h a
+         symlink to rrd_config.h so that intl/Makefile is happy
+
+2009-06-08 04:56  oetiker
+
+       * branches/1.3/program/MakeMakefile,
+         branches/1.3/program/configure.ac, MakeMakefile, configure.ac:
+         Relax automake requirements and make 1.11 features optional --
+         kevin brintnall
+
+2009-06-07 20:48  oetiker
+
+       * bindings/perl-shared/RRDs.xs, bindings/python/rrdtoolmodule.c,
+         bindings/ruby/main.c: fix some missing rrd_flushcached instances
+         -- kevin
+
+2009-06-07 14:46  oetiker
+
+       * bindings/tcl/tclrrd.c: switch to the rrd_flushcached interface
+
+2009-06-07 14:45  oetiker
+
+       * src/rrd_cgi.c: consider fgets return value
+
+2009-06-07 14:33  oetiker
+
+       * intl, po/Makefile.in.in: do not try to mess with autopoints files
+
+2009-06-07 14:27  oetiker
+
+       * src/rrd_open.c: check return value from write
+
+2009-06-07 14:19  oetiker
+
+       * src/rrd_daemon.c: check return values of dup and ftruncate
+
+2009-06-07 14:12  oetiker
+
+       * src/rrd_fetch.c, src/rrd_flushcached.c, src/rrd_info.c: fix some
+         warnings
+
+2009-06-07 13:57  oetiker
+
+       * intl, intl/Makefile.in: added a copy to svn since it is changed
+         from the original
+
+2009-06-07 13:53  oetiker
+
+       * po/Makefile.in.in: changed from original version, so include it
+         ...
+
+2009-06-07 13:42  oetiker
+
+       * Makefile.am, autogen.sh: include libtool with the distro
+
+2009-06-07 11:36  oetiker
+
+       * configure.ac: another ID tag
+
+2009-06-07 11:35  oetiker
+
+       * Makefile.am, README: more id tags added
+
+2009-06-07 11:34  oetiker
+
+       * COPYRIGHT: updated for release
+
+2009-06-07 11:34  oetiker
+
+       * COPYRIGHT, TODO: updated for release
+
+2009-06-07 11:20  oetiker
+
+       * CONTRIBUTORS: added $Id:$
+
+2009-06-07 11:16  oetiker
+
+       * NEWS: initial news
+
+2009-06-02 13:55  oetiker
+
+       * branches/1.3/program/doc/rrdupdate.pod, doc/rrdupdate.pod: Mention
+         that negative time values should be separated by '--' in
+         rrdupdate.pod -- Sebastian Harl
+
+2009-06-01 14:01  oetiker
+
+       * branches/1.3/program/m4/acinclude.m4, m4/acinclude.m4: Make
+         rrdtool compile on GNU/kFreeBSD. Fix for Debian bug 494874. Patch
+         by Petr Salinger.
+
+2009-06-01 13:58  oetiker
+
+       * branches/1.3/program/src/rrd_update.c, src/rrd_update.c: make
+         negative update times work as diescribed in the documentation (-5
+         is NOW-5seconds) this takes care of debian bug 332766
+
+2009-05-28 05:25  oetiker
+
+       * src/rrd_open.c: madvise hints may not be ORed since they are
+         enumerated ... #224
+
+2009-05-27 16:23  oetiker
+
+       * configure.ac: back to 0.14.4
+
+2009-05-27 16:21  oetiker
+
+       * Makefile.am, configure.ac: get the latest gettext
+
+2009-05-27 16:03  oetiker
+
+       * src/Makefile.am: added gettext.h to dist
+
+2009-05-27 15:00  oetiker
+
+       * src/gettext.h: added missing gettext.h
+
+2009-05-27 14:59  oetiker
+
+       * po/LINGUAS, po/de.po: we don't have any translations ... so do not
+         pretend
+
+2009-05-27 14:31  oetiker
+
+       * autogen.sh, configure.ac: reduce gettext version requirements
+
+2009-05-27 14:14  oetiker
+
+       * MakeMakefile: fix path
+
+2009-05-27 13:39  oetiker
+
+       * MakeMakefile, Makefile.am, acinclude.m4, autogen.sh,
+         bindings/Makefile.am, configure.ac, doc/Makefile.am,
+         m4/acinclude.m4, po/ChangeLog, po/Makevars, src/Makefile.am,
+         src/rrd_i18n.h: the get ready for 1.4rc patch * updated to
+         automake 1.11 with silet build, with this warnings stand out much
+         better in the build process. use make V=1 to see all as before *
+         switched from intltoolize to autopoint for gettext support * moved
+         m4 bits into their own subdirectory --tobi
+
+2009-05-27 13:11  oetiker
+
+       * src/rrd_graph.c, src/rrd_graph.h: Only include libgen.h when we
+         have it. use pbbasename if we do not. Also fixes #223.
+
+2009-05-26 15:25  oetiker
+
+       * doc/rrdtool.pod: update flush to flushcached
+
+2009-05-26 15:24  oetiker
+
+       * bindings/lua/rrdlua.c, bindings/perl-shared/RRDs.pm,
+         bindings/perl-shared/RRDs.xs, bindings/python/rrdtoolmodule.c,
+         bindings/ruby/main.c, bindings/tcl/tclrrd.c: bindings should
+         invoke new rrd_flushcached (instead of rrd_cmd_flush) -- kevin
+
+2009-05-26 15:20  oetiker
+
+       * src/rrd_restore.c: "ulong" is not portable. must be unsigned long
+         -- kevin
+
+2009-05-26 08:55  oetiker
+
+       * doc/Makefile.am: update flush document name
+
+2009-05-26 07:14  oetiker
+
+       * src/Makefile.am: rename rrd_flush.c to rrd_flushcached.c in
+         Makefile.am
+
+2009-05-26 07:13  oetiker
+
+       * doc/rrdflush.pod, doc/rrdflushcached.pod, src/librrd.sym.in.in,
+         src/rrd.h, src/rrd_flush.c, src/rrd_flushcached.c, src/rrd_open.c,
+         src/rrd_tool.c: resolve the "flush inconsistency": * rrd_flush (a
+         leftover from when rrdtool was using stream based io) is turned
+         into a no-op but still exported to preserve library compatibility.
+         * rrd_cmd_flush (the implementation of "rrdtool flush") is renamed
+         to rrd_flushcached along with its command line invocation which is
+         now rrdtool flushcached --tobi
+
+2009-05-25 22:23  oetiker
+
+       * src/rrd_restore.c: While restoring, rrd_restore uses between 30
+         and 40 times as much memory as the size of the rrd file to be
+         restored. This is due to the use of libxml2 for parsing the the
+         whole file prior to turning it into rrd structs. This patch
+         switches rrd_restore to using the xmlTextReader interface for
+         incremental consumtion of xml files. This reduces the memory
+         requirements to about twice the size of the rrd file which should
+         be quite manageable for most cases. The parsing is about 25% less
+         efficient than with the original libxml2 version of rrd_restore.
+         This could be in part due to the more liberal use of malloced
+         memory. Optimizing this is for another day though. --tobi
+
+2009-05-25 06:05  oetiker
+
+       * branches/1.3/program/src/rrd_open.c, src/rrd_open.c: only include
+         utime.h when necessary
+
+2009-05-24 10:31  oetiker
+
+       * branches/1.3/program/configure.ac,
          branches/1.3/program/src/rrd_info.c,
-         branches/1.3/program/src/rrd_is_thread_safe.h,
-         branches/1.3/program/src/rrd_last.c,
-         branches/1.3/program/src/rrd_lastupdate.c,
-         branches/1.3/program/src/rrd_not_thread_safe.c,
          branches/1.3/program/src/rrd_open.c,
-         branches/1.3/program/src/rrd_resize.c,
-         branches/1.3/program/src/rrd_restore.c,
-         branches/1.3/program/src/rrd_rpncalc.c,
-         branches/1.3/program/src/rrd_rpncalc.h,
-         branches/1.3/program/src/rrd_thread_safe.c,
-         branches/1.3/program/src/rrd_thread_safe_nt.c,
-         branches/1.3/program/src/rrd_tool.c,
-         branches/1.3/program/src/rrd_tool.h,
-         branches/1.3/program/src/rrd_tune.c,
-         branches/1.3/program/src/rrd_update.c,
-         branches/1.3/program/src/rrd_version.c,
-         branches/1.3/program/src/rrd_xport.c,
-         branches/1.3/program/src/rrd_xport.h,
-         branches/1.3/program/src/rrdupdate.c: prepare for the release of
-         rrdtool-1.3.7
-
-2009-04-07 07:25  oetiker
-
-       * branches/1.3/website/.htaccess,
-         branches/1.3/website/gallery/index.en.html,
-         branches/1.3/website/gallery/miszek.xml,
-         branches/1.3/website/inc/template.inc,
-         branches/1.3/website/rrdworld/index.wml,
-         branches/1.3/website/rrdworld/tacLOG_RRD.png,
-         branches/1.3/website/rrdworld/tacLOG_RRD.xml,
-         branches/1.3/website/site-sync: sync up
+         branches/1.3/program/src/rrd_update.c, configure.ac,
+         src/rrd_info.c, src/rrd_open.c, src/rrd_update.c: * in 1.3:
+         Changed types used in rrd_file_t from off_t to size_t to prevent:
+         warning: comparison between signed and unsigned * Misc other off_t
+         -> size_t changes to prevent signed warning * in 1.3: Added
+         rrd_dump_opt_r declaration to prevent undef warning * Explicit
+         cast to time_t of check in rrd_fetch to prevent signed warning *
+         Added vasprintf path to sprintf_alloc to prevent excessive
+         mallocing * in 1.3: fixed STRERROR_R_CHAR_P undef warning patch by
+         Steven Hartland killing multiplay.co.uk
 
-2009-04-07 07:23  oetiker
+2009-05-22 14:54  oetiker
+
+       * src/rrd_update.c: reset errno right befor the call I want to test
+
+2009-05-22 13:55  oetiker
+
+       * src/rrd_update.c: inline is something for the compiler to figure
+         ...
+
+2009-05-22 11:32  oetiker
+
+       * branches/1.3/program/src/rrd_update.c, src/rrd_update.c: fix error
+         messages on the road to fix #222
+
+2009-05-21 05:20  oetiker
+
+       * doc/rrdgraph.pod: fix text organisation
 
-       * branches/1.3/program/doc/rrdbuild.pod: fix build docs
+2009-05-18 14:23  oetiker
 
-2009-04-07 07:21  oetiker
+       * branches/1.3/program/bindings/python/rrdtoolmodule.c,
+         bindings/python/rrdtoolmodule.c: integrated fix for debian bug
+         #529291 as supplied by Anders Hammarquist
 
-       * branches/1.3/program/m4: provide have m4 macros go here
+2009-05-11 21:25  oetiker
 
-2009-04-07 07:20  oetiker
+       * branches/1.3/program/configure.ac,
+         branches/1.3/program/src/rrd_getopt.c, configure.ac,
+         src/rrd_getopt.c: fix rrd_getops use of external variables (optarg
+         and friends) ... most prominently is kills a segfault when using
+         rrdtool perl bindings on solaris ... thanks to Ihsan Dogan for
+         helping with tracking this down and providing access to sparc
+         solaris boxes.
+
+2009-04-29 06:52  oetiker
+
+       * branches/1.3/program/CONTRIBUTORS,
+         branches/1.3/program/doc/rrdgraph_data.pod, CONTRIBUTORS,
+         doc/rrdgraph_data.pod: added some remarks on CDEF versus VDEF to
+         the docs -- Pablo Sanchez
+
+2009-04-20 06:48  oetiker
+
+       * doc/Makefile.am, doc/librrd.pod, src/librrd.sym.in.in, src/rrd.h,
+         src/rrd_daemon.c, src/rrd_utils.c: This patch includes utility
+         functions to support dynamically sized arrays. This simplifies the
+         code that manages some of the dynamic structures inside rrdcached.
+         A few data types have been changed to size_t. -- kevin
+
+2009-04-20 06:46  oetiker
+
+       * doc/rrdinfo.pod, src/rrd_format.c, src/rrd_info.c, src/rrd_open.c,
+         src/rrd_tool.h: introduced header_property in info output --
+         Daniel.Pocock barclayscapital.com
+
+2009-04-17 09:53  oetiker
+
+       * branches/1.3/program/src/rrd_tool.c, src/rrd_tool.c: add
+         documentation for graph-render-mode
+
+2009-04-15 07:05  oetiker
+
+       * branches/1.3/program/src/rrd_restore.c, src/rrd_restore.c: fix
+         comments and error messages in rrd_restore patch
+
+2009-04-15 07:02  oetiker
+
+       * branches/1.3/program/src/rrd_restore.c, src/rrd_restore.c: Fix
+         casting issues in rrd_restore. The bug manifested when compiled on
+         sparc v9 as explained in #218. Patch based in input provided by
+         poster of #218.
+
+2009-04-14 13:55  oetiker
+
+       * branches/1.2/program/bindings/ruby/main.c,
+         branches/1.3/program/bindings/ruby/main.c, bindings/ruby/main.c:
+         make ruby bindings compile with newer ruby versions ... fix for
+         #217 patch provided by rrd trac user.
 
-       * branches/1.3/program/configure.ac: set helper directory
+2009-04-14 07:51  oetiker
 
-2009-04-07 07:20  oetiker
+       * branches/1.3/program/bindings/perl-piped/RRDp.pm,
+         bindings/perl-piped/RRDp.pm: Generate an error message when using
+         RRDp with graph - this can not work reliably. (Debian Bug#251701)
+         -- Sebastian Harl
+
+2009-04-14 06:10  oetiker
+
+       * src/Makefile.am, src/librrd.sym.in.in, src/rrd.h,
+         src/rrd_daemon.c, src/rrd_open.c, src/rrd_restore.c,
+         src/rrd_utils.c: rrd_random() is a wrapper around random() that
+         ensures the PRNG is seeded exactly ONCE per process. rrd_utils.c
+         is introduced for functions that do not have a better home.
+         --kevin
+
+2009-04-10 08:52  oetiker
+
+       * src/rrd_daemon.c: This patch consolidates several aspects of the
+         command handling in rrdcached: * all commands, help, and context
+         information is reduced to a single data structure. * all checks
+         for command validity (context and permission) are handled in the
+         main dispatch routine This removes duplicate help/syntax text, and
+         long if..elseif..else chains. It facilitates the addition of new
+         commands. -- kevin
+
+2009-04-09 15:07  oetiker
+
+       * src/rrd_daemon.c: The bookkeeping of all threads is not necessary,
+         since we cannot pthread_join() them anyway. We only need to know
+         when the last one has exited. -- kevin
+
+2009-04-09 15:05  oetiker
 
-       * branches/1.3/program/src/rrd_graph.c: fix lazy fix ... syntax
-         error
+       * doc/rrdcached.pod: added missing docs -- kevin
 
-2009-04-07 07:19  oetiker
+2009-04-09 15:04  oetiker
 
-       * branches/1.3/program/Makefile.am: update ACLOCAL flags
+       * branches/1.3/program/doc/rrdtutorial.pod, doc/rrdtutorial.pod:
+         added missing newline -- by sebastian harl
+
+2009-04-07 07:23  oetiker
+
+       * m4: make sure an empty m4 is in the checkout
 
 2009-04-07 06:37  oetiker
 
          rrd_dump outputs numbers with C locale so that . does not suddenly
          become , this fixes #212
 
+2009-04-06 14:49  oetiker
+
+       * CONTRIBUTORS, bindings/python/rrdtoolmodule.c, doc/rrdpython.pod:
+         I thought that it would be nice to be able to pass parameters to
+         python bindings as a list (array) of strings. -- Vytautas
+         Zdanavicius vytaszd at yahoo.com
+
+2009-04-06 14:14  oetiker
+
+       * src/rrd_dump.c: use %lld with (long long) conversion when printing
+         time.
+
 2009-04-06 14:12  oetiker
 
        * branches/1.3/program/src/rrd_update.c, src/rrd_update.c: printf
          platforms time_t is only 32bit ... by adding (long long) to the
          time value this gets fixed.
 
-2009-03-21 10:44  oetiker
+2009-04-06 14:08  oetiker
+
+       * src/rrd_graph.c: lets have an error message when creating the
+         graph fails
 
-       * branches/1.3/program/src/rrd_hw.c: removed more rrd_flush
-         instances
+2009-03-21 10:45  oetiker
 
-2009-03-21 09:55  oetiker
+       * src/rrd_hw.c: remove excess flush calls ...
 
-       * branches/1.3/program/src/rrd_hw.c: rrd_flush is not necessary here
-         this used to ba a call to fflush which is something different
-         anyway.
+2009-03-21 09:56  oetiker
+
+       * src/librrd.sym.in.in, src/rrd.h: remove flush symbol
+
+2009-03-21 09:53  oetiker
+
+       * src/rrd_hw.c, src/rrd_open.c: the call to rrd_flush has appeared
+         when rrd_open was fleshed out. It used to be an fflush call which
+         is something entirely different than the current rrd_flush
+         implementation with fdatasync was ... we can safely drop this and
+         gain performance for holt winters in the process ... -- tobi
+
+2009-03-18 17:12  oetiker
+
+       * CONTRIBUTORS, NEWS, doc/rrdgraph.pod, src/rrd_graph.c,
+         src/rrd_graph.h: New rrd_graph functions for legend placement
+         control added -- Patch by Melchior Rabe rrdtool mrab.de
+
+2009-03-08 11:12  oetiker
+
+       * src/rrd_flush.c: rrd_flush.c: Provide a more useful error message.
+         by Sebastian Harl
 
 2009-03-08 08:02  oetiker
 
          renamed the file to ntmake-build sinc it gets called explicilty on
          windows anyway. Reported by Kevin modified by Tobi
 
+2009-03-07 10:31  oetiker
+
+       * NEWS, bindings/lua/rrdlua.c, bindings/perl-shared/RRDs.pm,
+         bindings/perl-shared/RRDs.xs, bindings/python/rrdtoolmodule.c,
+         bindings/ruby/main.c, bindings/tcl/tclrrd.c, doc/rrdflush.pod,
+         src/rrd_flush.c: This 2-patch series exposes 'flush' methods to
+         the various language bindings.
+
 2009-03-06 05:51  oetiker
 
        * branches/1.3/program/src/rrd_xport.c, src/rrd_xport.c: there were
          two lines of debug info printed by rrd_xport, messing up the xml
          code. Fix by Alejandro Galue.
 
-2009-03-06 05:40  oetiker
+2009-03-06 05:39  oetiker
 
-       * branches/1.3/program/configure.ac,
-         branches/1.3/program/src/rrd_thread_safe.c: Even though POSIX/XSI
+       * configure.ac, src/rrd_thread_safe.c: Even though POSIX/XSI
          requires "strerror_r" to return an "int", some systems (e.g. the
          GNU libc) return a "char *" _and_ ignore the second argument (user
          provided buffer). The configure script now checks for that
          spotting it in collectd <http://collectd.org>. patch by Sebastian
          Harl
 
-2009-02-21 09:46  oetiker
+2009-03-06 05:30  oetiker
 
-       * branches/1.3/website/rrdworld/index.wml,
-         branches/1.3/website/rrdworld/observer.png,
-         branches/1.3/website/rrdworld/observer.xml,
-         branches/1.3/website/rrdworld/observernms.jpg,
-         branches/1.3/website/rrdworld/observernms.xml: update observer
-         entry
+       * src/rrd_daemon.c: Make sure we use correct sizes for vsnprintf
+         (sizeof) and strncpy (sizeof-1). -- kevin
 
 2009-02-21 09:43  oetiker
 
          doc/rrdtutorial.pod: Misc documentation fixes by Alex van den
          Bogaerdt
 
-2009-02-21 09:22  oetiker
+2009-02-21 09:23  oetiker
 
-       * branches/1.3/program/doc/rrdgraph.pod,
-         branches/1.3/program/doc/rrdgraph_rpn.pod: Documentation fixes by
+       * doc/rrdgraph.pod, doc/rrdgraph_rpn.pod: Documentation fixes by
          Bernhard Reutner-Fischer
 
-2009-01-26 05:59  oetiker
-
-       * branches/1.3/website/inc/design.css: fix css to not mutilate trac
-         layout
-
 2009-01-25 22:39  oetiker
 
        * branches/1.3/program/doc/rrdgraph.pod, doc/rrdgraph.pod: added doc
          bindings/perl-shared/ntmake.pl: rename ntmake.pl to ntmake.PL so
          that it does not get installed
 
-2009-01-25 15:49  oetiker
-
-       * branches/1.3/website/download.wml,
-         branches/1.3/website/gallery/index.wml,
-         branches/1.3/website/gallery/miszek.png,
-         branches/1.3/website/gallery/miszek.xml,
-         branches/1.3/website/index.wml,
-         branches/1.3/website/rrdworld/index.wml,
-         branches/1.3/website/rrdworld/lpar2rrd.png,
-         branches/1.3/website/rrdworld/lpar2rrd.xml,
-         branches/1.3/website/sponsor.wml: misc web updates
-
-2009-01-22 15:43  oetiker
-
-       * branches/1.3/program/src/rrd_open.c: Missed to include utime.h.
-         #207.
+2009-01-25 18:38  oetiker
 
-2009-01-19 14:27  oetiker
-
-       * branches/1.3/program/bindings/perl-piped/RRDp.pm,
-         branches/1.3/program/bindings/perl-shared/RRDs.pm,
-         branches/1.3/program/configure.ac,
-         branches/1.3/program/doc/rrdbuild.pod,
-         branches/1.3/program/rrdtool-1.3-release,
-         branches/1.3/program/rrdtool.spec,
-         branches/1.3/program/src/pngsize.c,
-         branches/1.3/program/src/rrd.h,
-         branches/1.3/program/src/rrd_cgi.c,
-         branches/1.3/program/src/rrd_create.c,
-         branches/1.3/program/src/rrd_datalang.c,
-         branches/1.3/program/src/rrd_diff.c,
-         branches/1.3/program/src/rrd_dump.c,
-         branches/1.3/program/src/rrd_error.c,
-         branches/1.3/program/src/rrd_fetch.c,
-         branches/1.3/program/src/rrd_first.c,
-         branches/1.3/program/src/rrd_format.c,
-         branches/1.3/program/src/rrd_format.h,
-         branches/1.3/program/src/rrd_gfx.c,
-         branches/1.3/program/src/rrd_graph.c,
-         branches/1.3/program/src/rrd_graph_helper.c,
-         branches/1.3/program/src/rrd_hw.c,
-         branches/1.3/program/src/rrd_hw.h,
-         branches/1.3/program/src/rrd_i18n.h,
-         branches/1.3/program/src/rrd_info.c,
-         branches/1.3/program/src/rrd_is_thread_safe.h,
-         branches/1.3/program/src/rrd_last.c,
-         branches/1.3/program/src/rrd_lastupdate.c,
-         branches/1.3/program/src/rrd_not_thread_safe.c,
-         branches/1.3/program/src/rrd_open.c,
-         branches/1.3/program/src/rrd_resize.c,
-         branches/1.3/program/src/rrd_restore.c,
-         branches/1.3/program/src/rrd_rpncalc.c,
-         branches/1.3/program/src/rrd_rpncalc.h,
-         branches/1.3/program/src/rrd_thread_safe.c,
-         branches/1.3/program/src/rrd_thread_safe_nt.c,
-         branches/1.3/program/src/rrd_tool.c,
-         branches/1.3/program/src/rrd_tool.h,
-         branches/1.3/program/src/rrd_tune.c,
-         branches/1.3/program/src/rrd_update.c,
-         branches/1.3/program/src/rrd_version.c,
-         branches/1.3/program/src/rrd_xport.c,
-         branches/1.3/program/src/rrd_xport.h,
-         branches/1.3/program/src/rrdupdate.c: prepare for the release of
-         rrdtool-1.3.6
+       * src/rrd_tool.c: define cwd where we need it and not outside
 
 2009-01-14 08:14  oetiker
 
          rrd_infoval_t's u_cnt but read out of u_int (u_long vs. int). This
          breaks on LP64BE. Patch by Rafal Boni rafal pobox.com
 
-2009-01-09 06:14  oetiker
+2009-01-14 07:22  oetiker
 
-       * branches/1.3/website/download.wml,
-         branches/1.3/website/sponsor.wml,
-         branches/1.3/website/tut/index.wml: added links
+       * NEWS, doc/rrdgraph_rpn.pod, src/rrd_graph.c, src/rrd_graph.h:
+         added percentnan (VDEF PERCENT variant that ignores NAN) -- patch
+         by Martin Sperl
 
 2009-01-06 16:32  oetiker
 
        * branches/1.3/program/bindings/perl-shared/RRDs.pm,
          bindings/perl-shared/RRDs.pm: documentation fixes
 
-2008-12-22 10:25  oetiker
-
-       * branches/1.3/website/logos/asdasd_101x51.png: fixed size
-
 2008-12-22 07:21  oetiker
 
        * branches/1.3/program/doc/rrdgraph.pod, doc/rrdgraph.pod: Fix for
        * branches/1.3/program/Makefile.am, Makefile.am: fix extra dist to
          include missing win32 files
 
-2008-12-18 07:34  oetiker
-
-       * branches/1.3/website/index.wml,
-         branches/1.3/website/logos/hitmeister.gif,
-         branches/1.3/website/sponsor.wml: added hitmeister sponsor
-
-2008-12-16 08:04  oetiker
-
-       * branches/1.3/website/inc/trac.css: special css for trac
-
-2008-12-15 22:06  oetiker
-
-       * branches/1.3/program/bindings/perl-piped/RRDp.pm,
-         branches/1.3/program/bindings/perl-shared/RRDs.pm,
-         branches/1.3/program/configure.ac,
-         branches/1.3/program/doc/rrdbuild.pod,
-         branches/1.3/program/rrdtool.spec,
-         branches/1.3/program/src/pngsize.c,
-         branches/1.3/program/src/rrd.h,
-         branches/1.3/program/src/rrd_cgi.c,
-         branches/1.3/program/src/rrd_create.c,
-         branches/1.3/program/src/rrd_datalang.c,
-         branches/1.3/program/src/rrd_diff.c,
-         branches/1.3/program/src/rrd_dump.c,
-         branches/1.3/program/src/rrd_error.c,
-         branches/1.3/program/src/rrd_fetch.c,
-         branches/1.3/program/src/rrd_first.c,
-         branches/1.3/program/src/rrd_format.c,
-         branches/1.3/program/src/rrd_format.h,
-         branches/1.3/program/src/rrd_gfx.c,
-         branches/1.3/program/src/rrd_graph.c,
-         branches/1.3/program/src/rrd_graph_helper.c,
-         branches/1.3/program/src/rrd_hw.c,
-         branches/1.3/program/src/rrd_hw.h,
-         branches/1.3/program/src/rrd_i18n.h,
-         branches/1.3/program/src/rrd_info.c,
-         branches/1.3/program/src/rrd_is_thread_safe.h,
-         branches/1.3/program/src/rrd_last.c,
-         branches/1.3/program/src/rrd_lastupdate.c,
-         branches/1.3/program/src/rrd_not_thread_safe.c,
-         branches/1.3/program/src/rrd_open.c,
-         branches/1.3/program/src/rrd_resize.c,
-         branches/1.3/program/src/rrd_restore.c,
-         branches/1.3/program/src/rrd_rpncalc.c,
-         branches/1.3/program/src/rrd_rpncalc.h,
-         branches/1.3/program/src/rrd_thread_safe.c,
-         branches/1.3/program/src/rrd_thread_safe_nt.c,
-         branches/1.3/program/src/rrd_tool.c,
-         branches/1.3/program/src/rrd_tool.h,
-         branches/1.3/program/src/rrd_tune.c,
-         branches/1.3/program/src/rrd_update.c,
-         branches/1.3/program/src/rrd_version.c,
-         branches/1.3/program/src/rrd_xport.c,
-         branches/1.3/program/src/rrd_xport.h,
-         branches/1.3/program/src/rrdupdate.c: prepare for the release of
-         rrdtool-1.3.5
-
-2008-12-11 14:31  oetiker
+2008-12-11 14:31  oetiker
 
        * branches/1.2/program/src/rrd_fetch.c,
          branches/1.3/program/src/rrd_fetch.c, src/rrd_fetch.c: fixed
          "friendly" to older versions of RHEL and derivatives. -- Martin
          Sperl <rrdtool@martin.sperl.org>
 
+2008-12-11 09:59  oetiker
+
+       * doc/Makefile.am: include luapod into distro
+
 2008-12-10 13:18  oetiker
 
        * branches/1.3/program/src/rrd_restore.c, src/rrd_restore.c: On some
          architectures, strtod does not turn "NaN" into 'Not A Number
          (NAN)' se we better provide our own code here.
 
-2008-12-10 13:16  oetiker
+2008-12-10 12:42  oetiker
+
+       * NEWS, doc/rrddump.pod, src/rrd_dump.c: rrdtool dump is now
+         backward compatible with rrdtool 1.3 dump again. Default is
+         --header=dtd and --no-header is an alias for --header=none
 
-       * branches/1.3/website/sponsor.wml: integrated new sponsors on
-         website
+2008-12-10 08:29  oetiker
+
+       * NEWS: minichange
 
 2008-12-09 18:30  oetiker
 
          bindings/perl-shared/Makefile.PL: integrate osx build hints as
          indicated in #192
 
-2008-12-05 15:25  oetiker
+2008-12-05 15:23  oetiker
 
-       * branches/1.3/program/src/rrd_open.c: accidentely removed #endif
-         restored
+       * src/rrd_open.c: deleted a bit much from rrd_open ... merged back
+         in
 
 2008-12-05 15:18  oetiker
 
          MS_ASYNC where the mtime does not get updated. warn and explicitly
          call utime in rrd_open when a file is opened rw.
 
+2008-12-05 10:23  oetiker
+
+       * examples/rrdcached/Makefile.am: added rrdcached examples to
+         extra_dist to make sure they get distributed
+
 2008-12-04 16:01  oetiker
 
        * branches/1.3/program/src/rrd_graph.c, src/rrd_graph.c: Legends
          should NOT be placed in reverse order when using --full-size-mode
          ... this fixed #198.
 
+2008-12-04 15:49  oetiker
+
+       * src/rrd_fetch.c: add de-referencing to step in fetch check
+
+2008-12-04 15:48  oetiker
+
+       * src/rrd.h: fix merg error with win32 port
+
 2008-12-04 09:03  oetiker
 
        * branches/1.2/program/src/rrd_graph_helper.c,
          rrd file. This did cause seek errors in some setups. Fixed. Thanks
          to Daniel Pocock for finding the problem.
 
-2008-12-03 10:46  oetiker
-
-       * branches/1.3/website/sponsor.wml: extra sponsors
+2008-12-03 09:54  oetiker
 
-2008-12-03 10:42  oetiker
+       * configure.ac, examples/Makefile.am,
+         examples/rrdcached/Makefile.am: integrated rrdcached examples into
+         build process
 
-       * branches/1.3/program/CONTRIBUTORS: added extra contributor
+2008-12-03 08:47  oetiker
 
-2008-12-02 22:04  oetiker
-
-       * branches/1.3/program/Makefile.am, branches/1.3/program/src/rrd.h,
-         branches/1.3/program/src/rrd_create.c,
-         branches/1.3/program/src/rrd_diff.c,
-         branches/1.3/program/src/rrd_dump.c,
-         branches/1.3/program/src/rrd_error.c,
-         branches/1.3/program/src/rrd_fetch.c,
-         branches/1.3/program/src/rrd_first.c,
-         branches/1.3/program/src/rrd_format.c,
-         branches/1.3/program/src/rrd_getopt.c,
-         branches/1.3/program/src/rrd_getopt.h,
-         branches/1.3/program/src/rrd_getopt1.c,
-         branches/1.3/program/src/rrd_gfx.c,
-         branches/1.3/program/src/rrd_graph.c,
-         branches/1.3/program/src/rrd_graph.h,
-         branches/1.3/program/src/rrd_hw.c,
-         branches/1.3/program/src/rrd_hw_math.c,
-         branches/1.3/program/src/rrd_hw_update.c,
-         branches/1.3/program/src/rrd_info.c,
-         branches/1.3/program/src/rrd_lastupdate.c,
-         branches/1.3/program/src/rrd_open.c,
-         branches/1.3/program/src/rrd_parsetime.c,
-         branches/1.3/program/src/rrd_resize.c,
-         branches/1.3/program/src/rrd_restore.c,
-         branches/1.3/program/src/rrd_rpncalc.c,
-         branches/1.3/program/src/rrd_thread_safe_nt.c,
-         branches/1.3/program/src/rrd_tune.c,
-         branches/1.3/program/src/rrd_update.c,
-         branches/1.3/program/src/rrd_xport.c,
-         branches/1.3/program/win32/config.h,
-         branches/1.3/program/win32/rrdlib.vcproj: make rrdtool compile on
-         windows with cv++. check out win32/rrdlib.vcproj. --
-         Christof.Wegmann with exitgames.com
+       * examples/rrdcached, examples/rrdcached/RRDCached.pm,
+         examples/rrdcached/rrdcached-size.pl: add rrdcached examples --
+         kevin
 
 2008-12-02 12:35  oetiker
 
          branches/1.3/program/doc/rrdbuild.pod, doc/rrdbuild.pod: fixed
          solaris build instructions
 
-2008-11-18 08:42  oetiker
+2008-12-01 11:05  oetiker
+
+       * doc/Makefile.am: added libdbi doc to extradist
+
+2008-11-20 13:04  oetiker
+
+       * doc/rrdgraph_libdbi.pod, src/rrd_fetch_libdbi.c: Attached a patch
+         for the rrd-tool LIBDBI integration with the following
+         improvements: a) correct error handling in case of libdbi being
+         unable to load the driver was producing segmentation faults. b)
+         better parsing of datasources * until now timestamp fields had to
+         be integer and had to contain a unix timestamp - now you can now
+         also use DateTime fields (you still need to specify it, as the
+         time-range needs to be defined correctly) * data fields are now no
+         longer limited to (var)char or DOUBLE fields - FLOAT, INTEGER,...
+         are now also supported. c) there is a bug with at least LIBDBI
+         0.8.1 in conjunction with mysql that can result in segmentation
+         faults when BINARY/BLOB fields are accessed - rrdtool will now
+         tell you about this fact before dying ;) d) also the value of
+         rrdderivemaxstep only gets applied if derive has been selected
+         correctly. e) "GROUP BY timestamp" has been removed from SQL
+         statement. f) "ORDER BY timestamp" will be added only in the case
+         of fetching "derived" data. -- Martin Sperl
+
+2008-11-18 17:19  oetiker
+
+       * CONTRIBUTORS, src/rrd.h, src/rrd_client.h, src/rrd_create.c,
+         src/rrd_daemon.c, src/rrd_diff.c, src/rrd_error.c,
+         src/rrd_fetch.c, src/rrd_first.c, src/rrd_format.c,
+         src/rrd_getopt.c, src/rrd_getopt.h, src/rrd_getopt1.c,
+         src/rrd_graph.c, src/rrd_graph.h, src/rrd_hw.c, src/rrd_hw_math.c,
+         src/rrd_hw_update.c, src/rrd_info.c, src/rrd_open.c,
+         src/rrd_parsetime.c, src/rrd_resize.c, src/rrd_restore.c,
+         src/rrd_rpncalc.c, src/rrd_thread_safe_nt.c, src/rrd_tool.c,
+         src/rrd_tune.c, src/rrd_update.c, src/rrd_xport.c, win32/config.h,
+         win32/rrdlib.vcproj: win32 portability patch and
+         win32/rrdlib.vcproj file for the source -- christof wegmann
+         Christof.Wegmann with exitgames.com some fixes to make the result
+         work on unix again ...
+
+2008-11-18 07:14  oetiker
+
+       * configure.ac: missing , added to help string
+
+2008-11-17 16:21  oetiker
+
+       * doc/Makefile.am: added build instruction for libdbi docu
+
+2008-11-16 22:24  oetiker
+
+       * doc/RRDp.pod, doc/RRDs.pod, doc/rrdgraph_libdbi.pod: missing pod
+         files
+
+2008-11-15 14:35  oetiker
 
-       * branches/1.3/website/rrdworld/index.wml: fixed myysqlbind
+       * configure.ac: switch tu using AS_HELP_STRING for formatting ...
 
-2008-11-17 16:35  oetiker
+2008-11-15 14:15  oetiker
 
-       * branches/1.3/website/download.wml: addedsolaris download
+       * src/rrd_daemon.c: fix typo in handle_request_help --kevin
 
-2008-11-17 15:25  oetiker
+2008-11-15 14:14  oetiker
 
-       * branches/1.3/website/download.wml, branches/1.3/website/index.wml,
-         branches/1.3/website/rrdworld/index.wml,
-         branches/1.3/website/rrdworld/nhawk_description.xml,
-         branches/1.3/website/rrdworld/nhawk_icon.png: monir upates
+       * doc/rrdcached.pod: doc fixups for rrdcacehd * documented the -p
+         option * added nbsp between option and argument * layout one
+         option per line --kevin
+
+2008-11-11 16:36  oetiker
+
+       * src/rrd_graph.c: make basename work
+
+2008-11-11 16:36  oetiker
+
+       * doc/rrdcached.pod, src/rrd_daemon.c: This patch allows for
+         multiple RRD writer threads to service the queue. Now, rrdcached
+         can have more simultaneous I/O requests into the kernel. This may
+         allow the kernel to re-order disk writes, resulting in better disk
+         throughput. In practice, throughput is increased by 2-3x. The
+         flush (-f) timer maintenance has been moved from queue_thread_main
+         into its own thread. Be more careful about when to use
+         pthread_cond_signal vs _broadcast, since multiple threads may be
+         waiting on &queue_cond. --kevin
 
 2008-11-09 19:19  oetiker
 
          basename to determine filename for imginfo as suggested by
          sebastian
 
-2008-11-07 22:46  oetiker
+2008-11-08 22:57  oetiker
 
-       * branches/1.2/program/src/rrd_graph.c,
-         branches/1.3/program/src/rrd_graph.c, src/rrd_graph.c: fixed
-         --font TITLE:12: problem -- tobi
+       * src/rrd_daemon.c: rrdcached: move queue length decrement into
+         remove_from_queue -- kevin
 
-2008-11-07 13:36  oetiker
+2008-11-08 22:57  oetiker
 
-       * branches/1.3/program/rrdtool.spec: added librrd.pc to spec file as
-         requested byu Bernard Li
+       * doc/rrdcached.pod, src/rrd_daemon.c: rrdcached: examine the
+         current queue with the "QUEUE" command -- kevin
 
-2008-10-30 14:32  oetiker
+2008-11-08 22:50  oetiker
 
-       * branches/1.3/program/doc/cdeftutorial.pod: fix from alex
+       * src/rrd_daemon.c: This helps with portability on platforms where
+         realloc doesn't handle NULL. -- kevin
 
-2008-10-28 08:47  oetiker
+2008-11-08 18:01  oetiker
 
-       * branches/1.3/website/rrdtool-dump.xsd: added xsd for rrdtoool
+       * doc/rrdcached.pod, src/rrd_daemon.c: document the "QUIT" command
+         -- kevin
 
-2008-10-27 18:40  oetiker
+2008-11-08 18:01  oetiker
 
-       * branches/1.3/website/gallery/charles.png,
-         branches/1.3/website/gallery/charles.xml,
-         branches/1.3/website/gallery/index.en.html,
-         branches/1.3/website/gallery/index.wml,
-         branches/1.3/website/index.wml,
-         branches/1.3/website/logos/digicomp.gif,
-         branches/1.3/website/rrdworld/index.wml,
-         branches/1.3/website/rrdworld/yacketystats.xml,
-         branches/1.3/website/sponsor.wml: misc updates
+       * src/rrd_daemon.c: rrdcached: journal_replay default failure
+         reason, just in case avoids a "may be used uninitialized" warning
+         -- kevin
 
-2008-10-27 05:35  oetiker
+2008-11-08 18:00  oetiker
 
-       * branches/1.3/program/configure.ac: missed checkin for librrd.sym
-         fix
+       * src/rrd_daemon.c: added "quit" command -- kevin
 
-2008-10-26 15:16  oetiker
+2008-11-08 17:57  oetiker
 
-       * branches/1.3/program/src/Makefile.am,
-         branches/1.3/program/src/librrd.sym.in,
-         branches/1.3/program/src/librrd.sym.in.in: fix for osx porability
-         ... the # in librrd.sym did not work well there
+       * src/rrd_daemon.c: rrdcached now frees all of its resources
+         correctly. This facilitates memory debugging. g_tree now knows how
+         to free the nodes when it removes them. Also, use g_tree_replace
+         instead of g_tree_insert. This fixes a bug triggered when the same
+         file was simultaneously inserted by two clients. --kevin
+
+2008-11-08 17:56  oetiker
+
+       * configure.ac: do not quit when libdbi is missing
+
+2008-11-07 22:46  oetiker
+
+       * branches/1.2/program/src/rrd_graph.c,
+         branches/1.3/program/src/rrd_graph.c, src/rrd_graph.c: fixed
+         --font TITLE:12: problem -- tobi
+
+2008-11-07 22:23  oetiker
+
+       * src/rrd_fetch_libdbi.c: fix scaling issue -- Martin
+
+2008-11-07 14:09  oetiker
+
+       * src/rrd_fetch_libdbi.c: extra file to make libdbi patch work
+
+2008-11-07 14:07  oetiker
+
+       * CONTRIBUTORS, configure.ac, src/Makefile.am, src/rrd_fetch.c,
+         src/rrd_tool.h: As some of you may know that I have created a
+         patch for rrdtool 1.2 a few years ago, so that a database could be
+         queried for values for graphing. The patch has been mostly
+         rewritten and the following changes have been made: * high
+         dependency on mysql has been reduced by avoiding the temporary
+         tables (which was bad for mysql replication) * The number of
+         executed SQL-Statements for one CDEF has been reduced to 1
+         compared to 11 SQLs (including CREATE TEMPORARY TABLE) - for patch
+         against version 1.2 * All consolidation is done in rrdtool itself
+         (MIN,MAX,AVERAGE) * Additional consolidation functions are COUNT
+         and SIGMA, which give information on statistics on a per
+         "time-bin" basis. * All these consolidation values are always
+         returned as separate columns, that are returned by RRD and the
+         consolidation function given as Argument is ignored. Main reason
+         is that this way there is only one call to rrd_fetcht and thus the
+         database even if we need to fetch for example min, avg and max.
+         Compare this to 3 calls in case of different consolidation
+         functions - and if you want to get SIGMA and COUNT as well it is
+         still only one call to the backend and the database. * Some
+         previous existing features have been taken out at the moment to
+         allow for this reduced set of SQL queries. o prediction using the
+         values from the last X days at the same time o the corresponding
+         sigma calculation * The idea is to create generic CDEF's that will
+         do the same thing, but that is also available when using RRD-files
+         (similar to TREND, but with another scope) This will get posted as
+         a separate patch. * Overall performance should be much better and
+         the patch as a whole simpler. * The patch also includes
+         modifications to the configuration infrastructure, to make libdbi
+         support optional. -- Martin Sperl
+
+2008-11-07 14:02  oetiker
+
+       * CONTRIBUTORS, doc/rrdgraph_rpn.pod, src/rrd_rpncalc.c,
+         src/rrd_rpncalc.h: new CDEF functions for predictions PREDICT and
+         PREDICTSIGMA -- Martin Sperl
+
+2008-11-07 13:51  oetiker
+
+       * src/rrd_daemon.c: Much simpler handling of timestamp errors.
+         Return an error to the user when any of the time stamp values are
+         invalid. This is similar to RRDTool's normal behavior. Removed the
+         complex logic previously used to return error codes to the user.
+         This solves a bug where non-advancing timestamps could have
+         produced incorrect error output during "BATCH" mode. The bug was
+         cause by using the sock->wbuf pointer for the error output. --
+         kevin brintnall
+
+2008-11-07 13:45  oetiker
+
+       * src/rrd_daemon.c: rrdcached: pull in rrd_config.h so we can use
+         its defines ... particularly HAVE_VSNPRINTF -- kevin brintnall
+
+2008-11-04 07:12  oetiker
+
+       * bindings/Makefile.am, bindings/lua/Makefile.am, doc/Makefile.am: I
+         realize now that the problem is the line test -f lua/Makefile &&
+         cd lua && $(MAKE) install || true in the target
+         "install-data-local", in bindings/Makefile.am. It forces execution
+         of bindings/lua/Makefile independently of lua being found or not.
+         I added that line in my first patch, following perl, python and
+         ruby build style, but it's not needed after I switched to
+         automake. The make recursion is controlled by SUBDIRS, which will
+         only contain "lua" if BUILD_LUA is true. -- Fidelis Assis
+
+2008-11-02 17:25  oetiker
+
+       * bindings/lua/Makefile.am: fix build process for systems without
+         lua
+
+2008-11-02 17:09  oetiker
+
+       * src/rrd_daemon.c: PTHREAD_COND_INITIALIZER may only be used to
+         initialize static cond variables. -- Sebastian Harl
+
+2008-11-02 15:25  oetiker
+
+       * configure.ac: reverting non build makefile patch ... we need to
+         lua makefile for building the ditribution
+
+2008-11-01 09:09  oetiker
+
+       * configure.ac: do not create the lua makefile if lua is not to be
+         compiled.
+
+2008-10-30 14:32  oetiker
+
+       * doc/cdeftutorial.pod: fix from alex
+
+2008-10-28 08:57  oetiker
+
+       * NEWS, doc/rrddump.pod, doc/rrdtool-dump.xsd, src/rrd_dump.c,
+         src/rrd_tool.c: - remove the spaccing between the elements - add
+         xsd support to dump output - change the argument
+         "[--no-header|-n]" to [--header|-h {xsd,dtd}] -- tobias.lindenmann
+         1und1.de
+
+2008-10-26 15:18  oetiker
+
+       * configure.ac, src/Makefile.am, src/librrd.sym.in,
+         src/librrd.sym.in.in: make compilation on older OSX versios work
+         by removing the # from the librrd.sym file
 
 2008-10-24 06:20  oetiker
 
          branches/1.3/program/doc/rrdpython.pod, doc/rrdpython.pod: fixed
          typo ... GAUGE not GUAGE
 
+2008-10-22 20:41  oetiker
+
+       * src/rrd_daemon.c: The previous code relied on the assumption that
+         pthread_cond_init(&cond) was equivalent to memset(&cond,0). This
+         may not be true on all platforms. -- kevin
+
+2008-10-22 06:02  oetiker
+
+       * src/rrd_daemon.c: remove_cache_item() did not check whether a file
+         was in queue before modifying the cache head/tail pointers.
+         Therefore, the process of flushing old files may perturb the
+         cache_queue_head pointer. This caused some nodes with
+         CI_FLAGS_IN_QUEUE to be un-linked from the queue list. Thereafter,
+         they would not be flushed by any periodic process (although they
+         could be revived with FLUSH or UPDATE). This caused a slow memory
+         leak for files that are no longer updated. Pending updates for
+         these "abandoned" files would remain in memory ad infinitum. With
+         this patch, remove_from_queue() will check that the item is queued
+         before modifying the head/tail pointers. This restores the
+         intended behavior. --kevin
+
+2008-10-22 05:08  oetiker
+
+       * bindings/lua/Makefile.lua.in: this was replaced by Makefile.am
+
+2008-10-21 06:10  oetiker
+
+       * bindings/lua/Makefile.am: guess one needs that in svn too for
+         luabindings to work
+
+2008-10-21 05:42  oetiker
+
+       * src/rrd_daemon.c: * Open all listen sockets in daemonize(), while
+         we still have stderr. Changed open_listen_socket_* routines to
+         complain to stderr. Now, any errors in binding to the listen
+         sockets are much more obvious. * Simplified exit of parent after
+         fork() * PID file will be correctly cleaned up if there is a
+         failure in daemonize(). * unlink the unix socket before trying to
+         bind() (after we're sure we have the PID file) -- kevin
+
+2008-10-20 11:46  oetiker
+
+       * src/rrd.h, src/rrd_create.c, src/rrd_open.c, src/rrd_update.c:
+         rrd_notify_row patch: - Delegate choice of starting row for newly
+         created RRD files to the rrd_open.c API. - Introduce the
+         rrd_notify_row() function so that an implementation can choose to
+         align the rows of new RRDs with existing RRDs, if desirable. -
+         Maintain the existing behaviour (random starting row) by default.
+         -- Daniel.Pocock
+
+2008-10-20 06:06  oetiker
+
+       * bindings/Makefile.am, bindings/lua/README,
+         bindings/lua/compat-5.1r5, bindings/lua/compat-5.1r5/compat-5.1.c,
+         bindings/lua/compat-5.1r5/compat-5.1.h,
+         bindings/lua/compat-5.1r5/compat-5.1.lua, bindings/lua/rrdlua.c,
+         bindings/lua/test.lua, bindings/lua/test.lua.bottom, configure.ac:
+         - Lua module build and install process rewritten using
+         automake+libtool - improved check for compat-5.1 availability --
+         Fidelis Assis
+
+2008-10-18 22:32  oetiker
+
+       * src/rrd_open.c: rrd_open should not create files with restrictive
+         masks Removed unnecessary "mode" varaible. The mode is only used
+         when O_CREAT is specified, where we want to use 0666 (as
+         rrd_create_fn did r<=1612). --kevin
+
+2008-10-18 15:50  oetiker
+
+       * src/rrd.h, src/rrd_open.c: - encapsulate fd and mmap related
+         variables within a private data structure - rrd_file_t keeps a
+         pointer to the private data structure of type void*, so that other
+         block storage implementations can store their internal data with
+         rrd_file_t -- Daniel.Pocock
+
+2008-10-17 05:50  oetiker
+
+       * src/rrd_client.c: rrdc_flush_if_daemon should not clobber error
+         message -- kevin (as suggested by Sebastian)
+
 2008-10-17 05:44  oetiker
 
        * branches/1.3/program/src/rrd_graph.c, src/rrd_graph.c: use double
          for legend positioning to fight wiggle
 
-2008-10-16 21:32  oetiker
+2008-10-16 21:33  oetiker
 
-       * branches/1.3/program/doc/rrdbuild.pod: fix version numbers
+       * doc/rrdbuild.pod: fix version numbers in compile instructions tobi
 
-2008-10-15 22:34  oetiker
+2008-10-16 21:30  oetiker
 
-       * branches/1.3/program/doc/rrdbuild.pod: improved docu
+       * src/rrd_client.c: In almost all cases where rrdc_flush can fail,
+         it will leave a more descriptive error message anyway.. better not
+         overwrite it. -- kevin
 
-2008-10-07 15:38  oetiker
+2008-10-16 21:12  oetiker
 
-       * branches/1.3/program/src/rrd_open.c: Daniel Pocock reported that
-         the argument may be NULL in low-diskspace situations, so check for
-         that here to prevent a segmentation fault. -- Florian Forster
+       * src/rrd.h, src/rrd_create.c, src/rrd_dump.c, src/rrd_fetch.c,
+         src/rrd_first.c, src/rrd_info.c, src/rrd_last.c,
+         src/rrd_lastupdate.c, src/rrd_open.c, src/rrd_resize.c,
+         src/rrd_tune.c, src/rrd_update.c: - rrd_open() calculates file
+         size for new files and calls mmap once for the whole file -
+         rrd_resize() cleaned up, no longer passing a size through the
+         cookie argument - rrd_init(&my_rrd) must be called before
+         rrd_open() - if people are calling rrd_open directly from
+         application code, this might be troublesome. Alternative
+         solutions: creating an additional function, rrd_open_create(), or
+         adding an extra argument to rrd_open() for setting the file size
+         -- Daniel Pocock
 
-2008-10-04 16:04  oetiker
+2008-10-16 21:05  oetiker
 
-       * branches/1.3/program/bindings/perl-piped/RRDp.pm,
-         branches/1.3/program/bindings/perl-shared/RRDs.pm,
-         branches/1.3/program/configure.ac,
-         branches/1.3/program/doc/rrdbuild.pod,
-         branches/1.3/program/rrdtool.spec,
-         branches/1.3/program/src/Makefile.am,
-         branches/1.3/program/src/librrd.pc.in,
-         branches/1.3/program/src/pngsize.c,
-         branches/1.3/program/src/rrd.h,
-         branches/1.3/program/src/rrd_cgi.c,
-         branches/1.3/program/src/rrd_create.c,
-         branches/1.3/program/src/rrd_datalang.c,
-         branches/1.3/program/src/rrd_diff.c,
-         branches/1.3/program/src/rrd_dump.c,
-         branches/1.3/program/src/rrd_error.c,
-         branches/1.3/program/src/rrd_fetch.c,
-         branches/1.3/program/src/rrd_first.c,
-         branches/1.3/program/src/rrd_format.c,
-         branches/1.3/program/src/rrd_format.h,
-         branches/1.3/program/src/rrd_gfx.c,
-         branches/1.3/program/src/rrd_graph.c,
-         branches/1.3/program/src/rrd_graph_helper.c,
-         branches/1.3/program/src/rrd_hw.c,
-         branches/1.3/program/src/rrd_hw.h,
-         branches/1.3/program/src/rrd_i18n.h,
-         branches/1.3/program/src/rrd_info.c,
-         branches/1.3/program/src/rrd_is_thread_safe.h,
-         branches/1.3/program/src/rrd_last.c,
-         branches/1.3/program/src/rrd_lastupdate.c,
-         branches/1.3/program/src/rrd_not_thread_safe.c,
-         branches/1.3/program/src/rrd_open.c,
-         branches/1.3/program/src/rrd_resize.c,
-         branches/1.3/program/src/rrd_restore.c,
-         branches/1.3/program/src/rrd_rpncalc.c,
-         branches/1.3/program/src/rrd_rpncalc.h,
-         branches/1.3/program/src/rrd_thread_safe.c,
-         branches/1.3/program/src/rrd_thread_safe_nt.c,
-         branches/1.3/program/src/rrd_tool.c,
-         branches/1.3/program/src/rrd_tool.h,
-         branches/1.3/program/src/rrd_tune.c,
-         branches/1.3/program/src/rrd_update.c,
-         branches/1.3/program/src/rrd_version.c,
-         branches/1.3/program/src/rrd_xport.c,
-         branches/1.3/program/src/rrd_xport.h,
-         branches/1.3/program/src/rrdupdate.c: prepare for the release of
-         rrdtool-1.3.4
+       * src/rrd_open.c, src/rrd_update.c: move rrd_lock into rrd_open
+         where the general rrd_file ops are located. -- Daniel Pocock
+
+2008-10-16 06:11  oetiker
+
+       * src/rrd_daemon.c: error reporting caused crash in journal replay
+
+2008-10-16 06:11  oetiker
+
+       * doc/rrdbuild.pod: better build docs
+
+2008-10-15 05:29  oetiker
+
+       * src/rrd.h, src/rrd_create.c, src/rrd_open.c, src/rrd_resize.c,
+         src/rrd_tool.h, src/rrd_update.c: reverted r1601 and r1606 since
+         r1601 introduced a non portable mremap and r1606 has a dependency
+         on r1601.
+
+2008-10-14 20:14  oetiker
+
+       * src/rrd.h, src/rrd_create.c, src/rrd_open.c, src/rrd_update.c:
+         This moves selection of the initial RRA row into the rrd_open.c
+         API The current implementation (random row) is used by default.
+         However, it now provides an opportunity for alternative
+         implementations to integrate with rrdtool in a single place. Maybe
+         there are other places in rrdtool where I should insert calls to
+         the function rrd_notify_row()? This has been tested with rrdtool
+         create and rrdtool info to verify that random rows are selected by
+         default (existing behaviour preserved). -- Daniel Pocock
+
+2008-10-14 19:23  oetiker
+
+       * src/rrd_daemon.c: Under most circumstances, rrdcached can detect a
+         stale pid file. If the process in the pid file does not exist, or
+         cannot be signalled by the rrdcached owner, then rrdcached will
+         replace the pid file and start normally. Otherwise, it will
+         complain verbosely to STDERR. --kevin
+
+2008-10-14 19:08  oetiker
+
+       * src/rrd_client.c: * this preserves principle of least surprise
+         when dealing with files that are reachable via many path strings.
+         i.e. when $PWD=/base/dir the following files are the same:
+         /base/dir/x.rrd x.rrd ../dir/x.rrd * for performance, absolute
+         paths (starting with '/') are not resolved. this reduces the
+         number of stat(2) system calls.
+
+2008-10-14 19:08  oetiker
+
+       * doc/rrdcached.pod, src/rrd_daemon.c: Now, the daemon will check
+         that a base directory is NOT reached via symbolic link.
+         Documentation added to illustrate the restriction. This allows
+         several simplifying (and performance-enhancing) assumptions to be
+         made elsewhere in the code: * it ensures that paths resolved in
+         the client via realpath() will match our data structure keys *
+         it's possible to generate the correct absolute path when given a
+         relative path by simply prepending the base directory * it's not
+         necessary to resolve paths that begin with '/' -- kevin
+
+2008-10-14 19:08  oetiker
+
+       * CONTRIBUTORS, src/rrd_daemon.c: rrdcached treats relative and
+         absolute paths the same -- kevin
+
+2008-10-14 11:33  oetiker
+
+       * src/rrd_create.c, src/rrd_open.c, src/rrd_resize.c,
+         src/rrd_tool.h: Some observations I made while implementing this:
+         - In rrd_open(), the call to rrd_init() clobbers values already
+         populated in rrd_create.c - The logic for newfile_size in
+         rrd_open() wasn't really able to cope with the logic for a file
+         starting with size 0 I've tried to deal with these issues, but
+         maybe there is a more elegant solution. -- Daniel Pocock
+
+2008-10-14 06:37  oetiker
+
+       * src/rrd_daemon.c: clearer way of advancing the flush time -- kevin
+
+2008-10-13 22:07  oetiker
+
+       * src/rrd_daemon.c: This patch reduces the number of
+         time()/gettimeofday() system calls when doing high volume
+         processing. This enables about 25% speed increase during journal
+         replay and "BATCH" processing. (this is a function of syscall
+         overhead). * note when "BATCH" processing or journal replay
+         starts, use that timestamp for all commands * use the batch start
+         time to detect when we're in batch mode. no longer need a separate
+         boolean. * pass the time_t into handle_request * pass the time_t
+         through to the commands that need it -- kevin brintnall
+
+2008-10-13 18:41  oetiker
 
-2008-10-04 15:50  oetiker
+       * src/rrd_daemon.c: fixed bad folding marker (on
+         handle_request_flush) -- kevin
 
-       * branches/1.3/program/configure.ac: finite broken on solaris 9 too
-         ?
+2008-10-11 09:53  oetiker
+
+       * src/rrd_daemon.c: this ensures that the response is
+         protocol-compliant even if additional info has been added to the
+         write buffer during processing. -- kevin brintnall
+
+2008-10-11 09:37  oetiker
+
+       * doc/rrdcached.pod, src/rrd_daemon.c: This patch introduces a
+         feature whereby rrdcached will disallow updates that do not
+         advance the update time. This prevents the updates from being
+         discarded later by rrd_update_r. This patch attempts to make the
+         most of the protocol's limited ability to return error text when
+         using a -1 return code. -- kevin brintnall
+
+2008-10-10 05:21  oetiker
+
+       * etc/rrdcached-init: This patch ensures that when rrdcached is
+         stopped, it cleans up the pid file. Apparently this is necessary
+         if RRDCACHED_USER is not the default "rrdcached". -- Bernard Li
+
+2008-10-10 05:21  oetiker
+
+       * rrdtool.spec: The patch I submitted for rrdtool.spec introduced a
+         bug where there are two ldconfig calls in the %postun section.
+         This patch fixes that. -- Bernard Li
+
+2008-10-10 05:19  oetiker
+
+       * etc/rrdcached-default, etc/rrdcached-init: This patch does two
+         things: - remove the --pidfile check, for compatibility with older
+         RHEL/Centos systems - update the username used by the init script,
+         to remain consistent with Bernard's changes to the spec file --
+         Daniel.Pocock
+
+2008-10-08 20:47  oetiker
+
+       * rrdtool.spec: Split-out rrd-cached subpackage -- Bernard Li
+
+2008-10-08 05:49  oetiker
+
+       * rrdtool.spec: This patch updates the spec file and includes the
+         librrd.pc file in the -devel subpackage so that you can build the
+         RPM again. -- Bernard
+
+2008-10-08 05:47  oetiker
+
+       * src/rrd_daemon.c: fix crash reported by Bernard Li -
+         connection_thread_main: avoid double calls to close_connection --
+         kevin
+
+2008-10-08 05:46  oetiker
+
+       * doc/rrdcached.pod: fixed typo
+
+2008-10-07 21:10  oetiker
+
+       * doc/rrdcached.pod, src/rrd_daemon.c: This patch introduces two new
+         commands for cache management: PENDING: shows any un-written
+         updates for a file FORGET : remove a file completely from cache --
+         kevin brintnall
+
+2008-10-07 21:08  oetiker
+
+       * src/rrd_daemon.c: This patch moves the permission handling code
+         around a bit. * moved privilege checks into the command handler
+         functions (possible now that we pass the sock data structures
+         around) * on UPDATE, delay journal_write until after
+         check_file_access(). previously, it was possible for a high-priv
+         socket to introduce commands into the journal that could be
+         replayed if they were still in the journal at next startup. *
+         moved has_privilege() further up in the file to avoid need for
+         prototype. -- kevin brintnall
+
+2008-10-07 16:28  oetiker
+
+       * src/rrd_daemon.c: This patch introduces some extra safety checks
+         in journal processing, and cleans up the code a little bit. *
+         moved journal initialization to its own function; main() is
+         cleaner * any time we process a file, log the results (previous
+         code only loggded if there was a valid entry) * After reading
+         journals at startup, only trigger full flush out to disk if the
+         user specified -F. Avoids unnecessary IO on startup unless the
+         user also wants unnecessary IO on shutdown. * journal_replay is
+         much more careful about files it will open * must be a regular
+         file * must be owned by daemon user * must not be group/other
+         writable * Ensure that the journal gets created with the right
+         permissions. ... even when the daemon is invoked with a permissive
+         umask. equivalent to "chmod a-x,go-w" -- kevin
+
+2008-10-07 15:37  oetiker
+
+       * src/rrd_open.c: aniel Pocock reported that the argument may be
+         NULL in low-diskspace situations, so check for that here to
+         prevent a segmentation fault. -- Florian Forster
+
+2008-10-06 19:14  oetiker
+
+       * bindings/lua/Makefile.lua: Makefile.lua is now generated
+
+2008-10-06 19:13  oetiker
+
+       * bindings/lua/Makefile.lua.in: added missing file from lua 5.0
+         integration patch
+
+2008-10-06 19:05  oetiker
+
+       * doc/rrdcached.pod, src/rrd_daemon.c: This patch introduces "BATCH"
+         mode. In this mode, a client can feed multiple commands to
+         rrdcached without waiting for acknowledgement. This permits
+         multiple commands to be sent for each read()/write(). This can
+         dramatically increase the command throughput by increasing the
+         amount of work done per system call. It enables over 100k
+         updates/second with no CPU utilization due to the reduced system
+         calls. -- kevin brintnall
+
+2008-10-06 19:04  oetiker
+
+       * src/rrd_daemon.c: This patch introduces buffered I/O to rrdcached.
+         Now, rrdcached can interpret as many commands as arrive in a
+         single read(), and it will use fewer write()s when there are
+         multiple output lines. All routines now pass around
+         listen_socket_t objects instead of file descriptors. All I/O is
+         now contained in two routines. It's no longer necessary to specify
+         the line count in multi-line outputs, since that is calculated
+         automatically. This is the foundation for accepting batched
+         commands. -- kevin brintnall
+
+2008-10-06 05:05  oetiker
+
+       * CONTRIBUTORS, bindings/Makefile.am, bindings/lua/Makefile.lua,
+         bindings/lua/README, bindings/lua/rrdlua.c, configure.ac,
+         doc/rrdlua.pod: Support to Lua 5.0 -- Fidelis Assis
+
+2008-10-04 16:05  oetiker
+
+       * configure.ac, src/Makefile.am, src/librrd.pc.in: initial librrd
+         file added ... this will need more love since it does not pick up
+         any -rpath settings
 
 2008-10-04 13:34  oetiker
 
          is large enough, based on the ds_cnt and the total number of RRA
          rows -- kevin brintnall
 
-2008-09-28 19:24  oetiker
+2008-10-02 19:17  oetiker
+
+       * src/rrd_daemon.c: folding fix
+
+2008-10-02 19:08  oetiker
+
+       * bindings/ruby/extconf.rb: missing spaces in extconf.rb caused
+         compile failure -- kevin
+
+2008-10-02 17:17  oetiker
+
+       * etc/rrdcached-default: permission fix for rrdcached socket --
+         Daniel.Pocock
+
+2008-10-01 20:22  oetiker
+
+       * src/Makefile.am: since rrdcached uses pthread functions, use the
+         threadsafe version of librrd as well. This will also reasolve
+         build problems on boxes there the ptherad functions must be linked
+         explicitly.
+
+2008-10-01 20:04  oetiker
+
+       * doc/rrdcached.pod: Clearer explanation on which paths are
+         permitted when -B is supplied -- kevin
+
+2008-10-01 20:01  oetiker
+
+       * bindings/lua/Makefile.lua, bindings/ruby/extconf.rb,
+         bindings/ruby/main.c, bindings/tcl/Makefile.am,
+         bindings/tcl/tclrrd.c, configure.ac, src/Makefile.am,
+         src/rrd_client.c, src/rrd_dump.c, src/rrd_gfx.c, src/rrd_open.c,
+         src/rrd_xport.c: Fixes for the following compiler warnings: -
+         unused variable - unused parameter - assignment / argument
+         discards qualifiers from pointer target type - comparison between
+         signed and unsigned - too many arguments to function - assignment
+         makes pointer from integer without a cast - incompatible pointer
+         type - differ in signedness - implicit declaration of function -
+         enumeration value not handled in switch - value computed is not
+         used Most notably, a possible segfault in the Rrd_Lastupdate()
+         code of the TCL bindings has been fixed. Also, -Wundef (warn if an
+         undefined identifier is evaluated in an #if directive) has been
+         removed from CFLAGS. I don't see any problem with letting
+         undefined identifiers evaluate to "false" in rrdtool. Keeping that
+         option would produce a lot of (imho unnecessary) errors which
+         would need to be fixed using ugly preprocessor statements like
+         '#if defined(FOO) && FOO'. -- Sebastian Harl
+
+2008-10-01 19:48  oetiker
+
+       * Makefile.am, etc, etc/rrdcached-default, etc/rrdcached-init,
+         rrdtool.spec: I've adapted an init script for rrdcached, and also
+         incorporated it into the spec file so that it is deployed with the
+         RPM. There are also some other changes to the spec file so that I
+         could build an RPM successfully from trunk. I'm happy to tidy up
+         the spec file some more if no one else wants to mandate the best
+         way to do it. By default, rrdcached runs as nobody. I've tested
+         this on a server running Ganglia gmetad. Regards, Daniel
+
+2008-10-01 19:44  oetiker
+
+       * doc/rrdcached.pod, src/rrd_daemon.c: Now, moving a value to the
+         head of the queue is O(1). Before it was O(queue size). This
+         improves performance of individual flushes when there is a large
+         number of files in the queue. As a result, we don't hold the
+         cache_lock as much. Revamped enqueue_cache_item to take advantage
+         of the new structure. Renamed _wipe_ci_values to look nicer with
+         other code. --kevin
+
+2008-10-01 16:53  oetiker
+
+       * src/rrd_graph.c: lcd is actually gcd!
+
+2008-09-30 18:44  oetiker
+
+       * doc/rrdcached.pod, src/rrd_daemon.c: When -B is specified, the
+         daemon will only operate on files within the base directory.
+         Symlink detection is omitted for performance reasons (if a user
+         can create a symlink, they can probably overwrite the RRDs
+         anyway). -- kevin
+
+2008-09-30 18:43  oetiker
+
+       * src/rrd_daemon.c: check permissions before writing to journal --
+         kevin
+
+2008-09-30 18:42  oetiker
+
+       * src/rrd_daemon.c: The daemon should behave the same way w/r/t
+         files whether we "-g" or not. -- kevin
+
+2008-09-29 20:00  oetiker
+
+       * src/rrd_daemon.c: This bug caused the last line in each journal
+         file to be processed a second time. Since it had been modified due
+         to tokenizing, it failed syntax check. The daemon would always
+         record one failed line at end-of-journal as a result. No data loss
+         incurred by this bug. -- kevin
+
+2008-09-29 19:58  oetiker
+
+       * doc/rrdcached.pod, src/rrd_daemon.c: This patch introduces the
+         concept of socket privilege levels. "UPDATE" and "FLUSHALL"
+         commands are restricted to high-privilege sockets. "FLUSH"
+         commands can be executed on any socket. This is ideal for
+         multi-user installations where only certain users need write
+         access to the RRD files. Now, nearly all socket information is
+         passed around the daemon in listen_socket_t data structures. In
+         case there is other per-socket state (i.e. if we add
+         authentication) we can put it there. Also, I created a new
+         "open_listen_socket_network" and removed the network setup from
+         "open_listen_socket". -- kevin
 
-       * branches/1.3/program/MakeMakefile: Attached is a patch to lower
-         the version requirements of libtool and automake. I have tested
-         this on CentOS 4.x with the specified versions of libtool and
-         automake and was able to build RRDTool fine. I did *not* test
-         building with PHP, tcl, ruby or Python though. I also abstracted
-         the version numbers of all the dependencies such that editing them
-         in the future will be easier. -- Bernard Li
+2008-09-29 19:56  oetiker
 
-2008-09-28 19:15  oetiker
+       * src/rrd_client.c, src/rrd_update.c: This patch provides better
+         error messages to the client when something goes wrong with the
+         daemon. When possible, the daemon error message is passed through
+         to rrd_set_error() on the client. Prior to this patch, most error
+         conditions would result in "Internal error", which is not very
+         helpful. -- kevin brintnall
 
-       * branches/1.3/program/rrdtool.spec: Attached is a patch against the
-         spec file shipped with rrdtool-1.3.3.spec which will make it
-         buildable (at least it works on my CentOS 4.x system). -- Bernard
-         Li
+2008-09-28 21:37  oetiker
+
+       * doc/rrdcached.pod: spelling fix -- kevin
+
+2008-09-28 21:36  oetiker
+
+       * doc/rrdcached.pod, src/rrd_daemon.c: This patch removes an extra
+         "SIGNALS" section in the rrdcached.pod and merges "[BUG] fixed
+         hang in flush_file() introduced by per-file flush condition". --
+         kevin brintnall
+
+2008-09-28 19:27  oetiker
+
+       * src/rrd_daemon.c: a few missing {{{ folding }}} markers added --
+         kevin brintnall
+
+2008-09-28 19:26  oetiker
+
+       * doc/rrdcached.pod, src/rrd_daemon.c: This patch introduces "fast
+         shutdown" mode and two new signals. -- kevin brintnall
+
+2008-09-28 19:25  oetiker
+
+       * doc/rrdcached.pod, src/rrd_daemon.c: Moved signal handler setup
+         out of daemonize(). Coalesced common code in preparation for new
+         signals. Documented behavior of existing signals. -- kevin
+         brintnall
+
+2008-09-28 19:23  oetiker
+
+       * MakeMakefile: Attached is a patch to lower the version
+         requirements of libtool and automake. I have tested this on CentOS
+         4.x with the specified versions of libtool and automake and was
+         able to build RRDTool fine. I did *not* test building with PHP,
+         tcl, ruby or Python though. I also abstracted the version numbers
+         of all the dependencies such that editing them in the future will
+         be easier. -- Bernard Li
+
+2008-09-28 19:12  oetiker
+
+       * doc/rrdcached.pod, src/rrd_daemon.c: added support for FLUSHALL
+         command -- kevin brintnall
+
+2008-09-28 19:10  oetiker
+
+       * src/rrd_daemon.c: move cache broadcast into enqueue_cache_item --
+         kevin brintnall
+
+2008-09-28 19:10  oetiker
+
+       * src/rrd_daemon.c: When -z <jitter> is specified, some updates may
+         be timestamped up to <jitter> seconcds in the future. Therefore, a
+         timeout of now+1 may not be sufficient. Set abs_timeout past the
+         point where any updates are currently specified. -- kevin
+         brintnall
+
+2008-09-28 19:09  oetiker
+
+       * src/rrd_daemon.c: The PID file is created with open() in the
+         parent process, while we still have STDERR open. If it cannot be
+         created, it complains verbosely to stderr. The PID file is written
+         in the child process. The only way the fdopen() will fail on a fd
+         that is already open is if you're completely out of memory. As in
+         other places in the code, I didn't consider this a case that
+         required a very verbose message. (Search for "strdup failed"). If
+         you still think a more verbose message is called for, please
+         suggest one. The attached patch corrects the error message to
+         complain about fdopen() vs fopen(). I hadn't noticed that until
+         you brought it up. -- kevin brintnall
+
+2008-09-28 19:08  oetiker
+
+       * src/librrd.sym.in, src/rrd.h: rrd.h, librrd.sym: Define and export
+         rrd_info_r() -- Sebastian Harl
 
 2008-09-28 15:01  oetiker
 
          a uniform step size. Thanks to Peter Valdemar Mørch for finding
          this.
 
-2008-09-23 07:57  oetiker
+2008-09-26 05:11  oetiker
 
-       * branches/1.3/website/gallery/index.en.html,
-         branches/1.3/website/gallery/index.wml,
-         branches/1.3/website/gallery/pings.png,
-         branches/1.3/website/gallery/pings.xml: fixed ping image
+       * src/rrd_daemon.c: create the pid file before forking, so we can
+         complain to stderr -- kevin brintnall
 
-2008-09-22 06:34  oetiker
+2008-09-26 05:10  oetiker
 
-       * branches/1.3/program/MakeMakefile,
-         branches/1.3/program/configure.ac: fixed destdir for default
-         install of language bindings and removed sepp preference
+       * doc/rrdcached.pod, doc/rrdflush.pod, src/rrd_daemon.c: This patch
+         ensures that the "FLUSH" command will write the updates out to RRD
+         before returning to the user. Before, it returned when the update
+         was "dequeued"; updates were not necessarily on disk. Also, for
+         new nodes, the cache_lock is not held while we are setting up the
+         new node. We don't want to be holding the lock if the stat()
+         blocks. -- kevin brintnal
+
+2008-09-25 21:07  oetiker
+
+       * src/rrd_client.c: Use the same IPv6/IPv4 as for the client as
+         Florian did for the server -- kevin brintnall
+
+2008-09-25 20:31  oetiker
+
+       * src/rrd_daemon.c: This fixes a couple problems when exiting due to
+         signal: * connection threads exit without closing client socket
+         (so client blocks waiting for response that never comes) *
+         listen_queue_thread blocks on poll() until a new connection comes
+         in (because no poll timeout specified) -- kevin brintnall
+
+2008-09-25 20:11  oetiker
+
+       * src/rrd_daemon.c: set SO_REUSEADDR on the listen socket -- kevin
+         brintnall
+
+2008-09-25 20:10  oetiker
+
+       * doc/rrdcached.pod, src/rrd_daemon.c: Support for IPv6 has been
+         broken with revision 1522: Because IPv6-addresses contain colons,
+         simply checking for a colon and using everything after it does
+         destroy correctly formatted IPv6-addresses. This patch checks for
+         dots '.' in the address. If the address contains at least one dot,
+         it is considered to be a hostname or an IPv4-address and a simple
+         search for a colon is done. If no dot is found, the code will
+         check for an opening square bracket '[' at the beginning of the
+         address. If one if found, the format [address]:port is assumed. If
+         neither applies, the default port will be used. -- Florian Forster
+
+2008-09-25 15:25  oetiker
+
+       * doc/rrdcached.pod, doc/rrddump.pod, doc/rrdfetch.pod,
+         doc/rrdflush.pod, doc/rrdgraph.pod, doc/rrdinfo.pod,
+         doc/rrdlast.pod, doc/rrdlastupdate.pod, doc/rrdupdate.pod,
+         doc/rrdxport.pod, src/rrd_client.c: This adds support for
+         <address>:<port> in the rrd client library. Obviously this is
+         required to take advantage of the server's ability to bind to a
+         non-standard port -- kevin brintnall
+
+2008-09-24 22:21  oetiker
+
+       * doc/rrdcached.pod, src/rrd_daemon.c: Allow ports to be specified
+         with -l addr:port also. -- kevin brintnall
+
+2008-09-24 22:07  oetiker
+
+       * bindings/Makefile.am: the rrdlua.pod is in the doc directory
+
+2008-09-24 06:04  oetiker
+
+       * doc/rrdcached.pod: added section on error reporting -- Florian
+         Forster
+
+2008-09-22 06:35  oetiker
+
+       * MakeMakefile, bindings/Makefile.am, bindings/lua,
+         bindings/lua/Makefile.lua, bindings/lua/README,
+         bindings/lua/rrdlua.c, bindings/lua/test.lua, configure.ac,
+         doc/Makefile.am, doc/rrdlua.pod: I finally finished the first
+         version of the patch (attached) -- Fidelis Assis fidelis pobox.com
+         (this does not seem to quite work yet at least not in my hardy
+         setup)
 
 2008-09-22 05:38  oetiker
 
          branches/1.3/program/configure.ac, configure.ac: use default
          prefix for ruby install if no user defined prefix is available
 
-2008-09-22 05:37  oetiker
-
-       * branches/1.3/website/index.wml: fix layout
-
 2008-09-19 20:34  oetiker
 
        * branches/1.3/program/bindings/perl-shared/Makefile.PL,
          sparc this causes a segfault. Thanks to Sebastian Harl and Jurij
          Smakov for finding this.
 
-2008-09-14 20:33  oetiker
+2008-09-14 15:30  oetiker
 
-       * branches/1.3/program/src/rrd_config_bottom.h: added missing bottom
-         config
+       * src/rrd_daemon.c: fix RRDCacheD documentation -- Florian Forster
 
-2008-09-14 20:32  oetiker
+2008-09-14 15:28  oetiker
 
-       * branches/1.3/program/bindings/perl-piped/RRDp.pm,
-         branches/1.3/program/bindings/perl-shared/RRDs.pm,
-         branches/1.3/program/configure.ac,
-         branches/1.3/program/doc/rrdbuild.pod,
-         branches/1.3/program/rrdtool.spec,
-         branches/1.3/program/src/pngsize.c,
-         branches/1.3/program/src/rrd.h,
-         branches/1.3/program/src/rrd_cgi.c,
-         branches/1.3/program/src/rrd_create.c,
-         branches/1.3/program/src/rrd_datalang.c,
-         branches/1.3/program/src/rrd_diff.c,
-         branches/1.3/program/src/rrd_dump.c,
-         branches/1.3/program/src/rrd_error.c,
-         branches/1.3/program/src/rrd_fetch.c,
-         branches/1.3/program/src/rrd_first.c,
-         branches/1.3/program/src/rrd_format.c,
-         branches/1.3/program/src/rrd_format.h,
-         branches/1.3/program/src/rrd_gfx.c,
-         branches/1.3/program/src/rrd_graph.c,
-         branches/1.3/program/src/rrd_graph_helper.c,
-         branches/1.3/program/src/rrd_hw.c,
-         branches/1.3/program/src/rrd_hw.h,
-         branches/1.3/program/src/rrd_i18n.h,
-         branches/1.3/program/src/rrd_info.c,
-         branches/1.3/program/src/rrd_is_thread_safe.h,
-         branches/1.3/program/src/rrd_last.c,
-         branches/1.3/program/src/rrd_lastupdate.c,
-         branches/1.3/program/src/rrd_not_thread_safe.c,
-         branches/1.3/program/src/rrd_open.c,
-         branches/1.3/program/src/rrd_resize.c,
-         branches/1.3/program/src/rrd_restore.c,
-         branches/1.3/program/src/rrd_rpncalc.c,
-         branches/1.3/program/src/rrd_rpncalc.h,
-         branches/1.3/program/src/rrd_thread_safe.c,
-         branches/1.3/program/src/rrd_thread_safe_nt.c,
-         branches/1.3/program/src/rrd_tool.c,
-         branches/1.3/program/src/rrd_tool.h,
-         branches/1.3/program/src/rrd_tune.c,
-         branches/1.3/program/src/rrd_update.c,
-         branches/1.3/program/src/rrd_version.c,
-         branches/1.3/program/src/rrd_xport.c,
-         branches/1.3/program/src/rrd_xport.h,
-         branches/1.3/program/src/rrdupdate.c: prepare for the release of
-         rrdtool-1.3.3
+       * src/rrd_client.c: The previous code was broken: The response was
+         read using `read(2)'. If the server wasn't sending fast enough,
+         the client would stop reading before the entire message had been
+         read. This patch changes the communication code to use the (line
+         based) `fgets' function rather than the lower level `read'
+         function. After reading the first line (which contains the total
+         number of line to be expected), this precise number of lines is
+         read - blocking if necessary. Also, the missing four new statistic
+         values have been added to `rrdc_stats_get'. --Folorian Forester
 
-2008-09-14 20:31  oetiker
+2008-09-14 10:35  oetiker
 
-       * branches/1.3/program/rrdtool-1.3-release: fix release script for
-         1.3 branche
+       * CONTRIBUTORS, doc/rrdcached.pod, doc/rrdflush.pod,
+         src/librrd.sym.in, src/rrd_client.c, src/rrd_client.h,
+         src/rrd_daemon.c, src/rrd_dump.c, src/rrd_fetch.c,
+         src/rrd_flush.c, src/rrd_graph.c, src/rrd_graph.h, src/rrd_info.c,
+         src/rrd_last.c, src/rrd_lastupdate.c, src/rrd_tool.h,
+         src/rrd_update.c, src/rrd_xport.c: did not pick up all the changes
+         for rrdcached in the first round ... so here is the second batch.
 
-2008-09-14 00:42  oetiker
+2008-09-14 09:49  oetiker
 
-       * branches/1.3/program/configure.ac,
-         branches/1.3/program/doc/rrdgraph.pod,
-         branches/1.3/program/src/Makefile.am,
-         branches/1.3/program/src/rrd_format.h,
-         branches/1.3/program/src/rrd_graph.c: resync with trunk since
-         these are fixes
+       * CONTRIBUTORS, configure.ac, doc/Makefile.am, doc/rrdcached.pod,
+         doc/rrddump.pod, doc/rrdfetch.pod, doc/rrdgraph.pod,
+         doc/rrdinfo.pod, doc/rrdlast.pod, doc/rrdlastupdate.pod,
+         doc/rrdtool.pod, doc/rrdupdate.pod, doc/rrdxport.pod,
+         src/Makefile.am, src/librrd.sym.in, src/rrd.h, src/rrd_client.c,
+         src/rrd_client.h, src/rrd_daemon.c, src/rrd_dump.c,
+         src/rrd_fetch.c, src/rrd_graph.c, src/rrd_graph.h, src/rrd_info.c,
+         src/rrd_last.c, src/rrd_lastupdate.c, src/rrd_tool.c,
+         src/rrd_tool.h, src/rrd_update.c, src/rrd_xport.c: RRDcached
+         patch. This implements an infrastructure, where rrd updates can be
+         sent to a daemon which caches them prior to bulk-updateing rrd
+         files. See the rrdcached manual page. -- Created by Florian
+         Forster with some help from Kevin Brintnall.
+
+2008-09-13 11:42  oetiker
+
+       * configure.ac, src/Makefile.am, src/rrd_config_bottom.h: regarding
+         #183: * move part of rrd_config.h out to a separate file, so that
+         autoconf is not confused by the more complex expressions. * fix
+         configure variable name to allow caching * another attemt at
+         fixing solaris 2.8 compile so that it works out of the box.
+
+2008-09-13 10:56  oetiker
+
+       * doc/rrdgraph.pod: fix graph docs
+
+2008-09-11 20:27  oetiker
+
+       * src/rrd_graph.c: fixed processing of custom fonts René GARCIA
+         <rene@margar.fr>
+
+2008-09-11 07:01  oetiker
+
+       * src/rrd_format.h: no , on the last member in C
+
+2008-09-07 07:19  oetiker
+
+       * src/rrd_update.c: The attached patch eliminates the many places
+         where the rra_current pointer was maintained; the existing
+         write/seek mechanisms update rrd_file->pos correctly. Also, the
+         seek at the front of process_arg is not necessary; write_to_rras
+         will now take care to correct the file position at every update
+         cycle. This eliminates unnecessary rrd_seek() calls when MMAP is
+         not enabled. -- kevin brintnall kbrint rufus.net
+
+2008-09-06 14:24  oetiker
+
+       * bindings/perl-piped/RRDp.pm, bindings/perl-shared/RRDs.pm,
+         doc/rrdbuild.pod, rrdtool.spec, src/pngsize.c, src/rrd.h,
+         src/rrd_cgi.c, src/rrd_create.c, src/rrd_datalang.c,
+         src/rrd_diff.c, src/rrd_dump.c, src/rrd_error.c, src/rrd_fetch.c,
+         src/rrd_first.c, src/rrd_format.c, src/rrd_format.h,
+         src/rrd_gfx.c, src/rrd_graph.c, src/rrd_graph_helper.c,
+         src/rrd_hw.c, src/rrd_hw.h, src/rrd_i18n.h, src/rrd_info.c,
+         src/rrd_is_thread_safe.h, src/rrd_last.c, src/rrd_lastupdate.c,
+         src/rrd_not_thread_safe.c, src/rrd_open.c, src/rrd_resize.c,
+         src/rrd_restore.c, src/rrd_rpncalc.c, src/rrd_rpncalc.h,
+         src/rrd_thread_safe.c, src/rrd_thread_safe_nt.c, src/rrd_tool.c,
+         src/rrd_tool.h, src/rrd_tune.c, src/rrd_update.c,
+         src/rrd_version.c, src/rrd_xport.c, src/rrd_xport.h,
+         src/rrdupdate.c: prepare for the release of rrdtool-1.3.2
+
+2008-09-06 11:46  oetiker
+
+       * src/rrd_tool.h: we need rrd_format.h here for things to compile
+         properly
+
+2008-09-06 11:43  oetiker
+
+       * doc/rrdbuild.pod: updated opensolaris build instructions
+
+2008-09-06 10:43  oetiker
+
+       * bindings/perl-piped/RRDp.pm, configure.ac, src/Makefile.am,
+         src/librrd.sym, src/librrd.sym.in, src/rrd_tool.h: only link build
+         and use rrd_getopt if there is no getopt_long provided by by the
+         os ... this should also fix problems for solaris 2.8 and other non
+         getopt_long oses who were not taken care of anymore after the
+         intriduction of librrd.sym
+
+2008-09-06 10:39  oetiker
+
+       * src/rrd_update.c: fix for multi update - data corruption bug as
+         reported (and patched) in #178 by kevin brintnall
+
+2008-09-06 10:32  oetiker
+
+       * doc/cdeftutorial.pod, doc/rrdgraph.pod, doc/rrdgraph_graph.pod,
+         doc/rrdtool.pod: make pod checker happy
+
+2008-09-06 08:58  oetiker
+
+       * src/rrd_open.c: inline functions are not supported in c99 ... lets
+         remove this. the compiler will foture it out if they are
+         important.
+
+2008-09-04 21:45  oetiker
+
+       * src/rrd_graph.c: introduced a persistant fontmap ... this makes
+         our pango rendering 6 times faster starting from the second graph
+         we draw.
+
+2008-08-31 23:42  oetiker
+
+       * src/rrd_gfx.c, src/rrd_graph.c, src/rrd_graph.h: now the results
+         actually look as they did with the old code only things are FASTER
+
+2008-08-31 22:53  oetiker
+
+       * src/rrd_gfx.c, src/rrd_graph.c, src/rrd_graph.h,
+         src/rrd_graph_helper.c: Improve performance by keeping multiple
+         pango font descriptions. For the first invocation we are about 20%
+         times as fast for the second one about 4-5 times faster ...
+
+2008-08-31 10:55  oetiker
+
+       * src/rrd_gfx.c: trying to improve the pango performance I added
+         facilities to cache layout,context and more in between invocations
+         of the text function, unfortunately it does not seem to help all
+         that much.
+
+2008-08-31 10:52  oetiker
+
+       * bindings/perl-shared/RRDs.xs, bindings/ruby/main.c: use the
+         standart info free function
+
+2008-08-28 05:49  oetiker
+
+       * src/rrd_tool.c: fix handling of error conditions in rrd_tool.c ...
+         errno is not for detection, only for information AFTER detection.
+
+2008-08-28 04:13  oetiker
+
+       * src/rrd_tool.c: free the linebuffer if you don't return it!
+
+2008-08-27 22:06  oetiker
+
+       * src/rrd_gfx.c: some more leak plugging
+
+2008-08-27 21:48  oetiker
+
+       * src/rrd_graph.c: drop the dummy surface prior to creating the real
+         one
+
+2008-08-27 21:46  oetiker
+
+       * src/rrd_tool.c: added some freeing for error conditions
+
+2008-08-27 21:25  oetiker
+
+       * src/rrd.h, src/rrd_gfx.c, src/rrd_graph.c, src/rrd_open.c,
+         src/rrd_update.c: fixed indentation ... gnu indent results are not
+         realy beautifl. I might switch to uncrustify.
+
+2008-08-27 21:25  oetiker
+
+       * src/rrd_create.c: Many rrd_create memory leaks patched ... based
+         on valgrind analysis by Sven Engelhardt. Thanks!
+
+2008-08-27 21:18  oetiker
+
+       * src/rrd_restore.c: fix indentation
+
+2008-08-27 06:52  oetiker
+
+       * configure.ac: added sparc-sun-solaris2.8 to list of broken
+         isfinite implementations
+
+2008-08-22 22:04  oetiker
+
+       * bindings/ruby/main.c: it is rb_rrd_infocall not rrd_infocall ...
+
+2008-08-16 07:13  oetiker
+
+       * doc/rrdgraph.pod, src/rrd_graph.c: When in lazy mode, and the
+         graph does not get regenerated, then there are no results from
+         PRINT either. Fix for #163.
+
+2008-08-16 07:11  oetiker
+
+       * bindings/perl-shared/RRDs.pm: documentation updates
+
+2008-08-12 06:48  oetiker
+
+       * src/rrd_graph.c: make sure imageinfo only reports the filename and
+         not the whole path. This is a regression from 1.2.x where this was
+         implemented properly.
+
+2008-08-04 20:35  oetiker
+
+       * src/rrd_gfx.c: The attached patch converts the given string to
+         UTF-8 using glib's g_locale_to_utf8() function. This function
+         expects the string to be encoded as specified by the locale
+         settings, so this will fail if e.g. you're using some script which
+         is encoded in some way incompatible to the locale settings. In
+         this case, the patch falls back to use the original string as
+         provided by the user as there is no way to tell how to interpret
+         that string. So, in this case, you will still get the old behavior
+         (that pango warning and messed up strings in the graph). However,
+         imho this is perfectly fine since it should be up to the user to
+         take care of a sane environment. -- Sebastian Harl
+
+2008-07-29 14:42  oetiker
+
+       * bindings/perl-shared/RRDs.xs: newer perlapi docu suggests to use
+         SV * instead of void for managed returns
+
+2008-07-29 05:08  oetiker
+
+       * src/rrd_gfx.c, src/rrd_hw_update.c: fixed some c++ style lines --
+         David Masterson
+
+2008-07-28 07:23  oetiker
+
+       * doc/rrdgraph_data.pod: spelling fix
+
+2008-07-23 15:03  oetiker
+
+       * src/rrd_restore.c: forward ported patch for rra cur_row
+         randomization in rrd_restore from 1.2.28 to 1.3.1
+
+2008-07-23 13:02  oetiker
+
+       * bindings/perl-piped/RRDp.pm, bindings/perl-shared/RRDs.pm,
+         configure.ac, doc/rrdbuild.pod, rrdtool.spec, src/pngsize.c,
+         src/rrd.h, src/rrd_cgi.c, src/rrd_create.c, src/rrd_datalang.c,
+         src/rrd_diff.c, src/rrd_dump.c, src/rrd_error.c, src/rrd_fetch.c,
+         src/rrd_first.c, src/rrd_format.c, src/rrd_format.h,
+         src/rrd_gfx.c, src/rrd_graph.c, src/rrd_graph_helper.c,
+         src/rrd_hw.c, src/rrd_hw.h, src/rrd_i18n.h, src/rrd_info.c,
+         src/rrd_is_thread_safe.h, src/rrd_last.c, src/rrd_lastupdate.c,
+         src/rrd_not_thread_safe.c, src/rrd_open.c, src/rrd_resize.c,
+         src/rrd_restore.c, src/rrd_rpncalc.c, src/rrd_rpncalc.h,
+         src/rrd_thread_safe.c, src/rrd_thread_safe_nt.c, src/rrd_tool.c,
+         src/rrd_tool.h, src/rrd_tune.c, src/rrd_update.c,
+         src/rrd_version.c, src/rrd_xport.c, src/rrd_xport.h,
+         src/rrdupdate.c: prepare for the release of rrdtool-1.3.1
+
+2008-07-23 12:45  oetiker
+
+       * src/rrd_restore.c: added support for restoring rrdtool 1.0.x files
+         ... removed support for old HW patched rrd format created by an
+         early patched version of 1.0.x
+
+2008-07-22 15:15  oetiker
+
+       * branches/1.2/program/src/rrd_create.c, src/rrd_create.c: Fix for
+         #167 - rrdcreate is arguably missing a check for 'step>=1' for
+         RRAs with AVERAGE as a CF. I ran into this when specifying 0.6 as
+         a step value, assuming floats were also accepted. Patch attached
+         here. -- Bogdan
+
+2008-07-01 06:35  oetiker
+
+       * doc/rrdbuild.pod: header-fix
+
+2008-07-01 06:34  oetiker
+
+       * doc/rrdbuild.pod: improve layout
+
+2008-06-29 16:23  oetiker
+
+       * src/rrd_update.c: added rrd filename to illegal update message --
+         he at uninett.no
+
+2008-06-29 14:08  oetiker
+
+       * rrdtool.spec: rrdtool.spec fix by Anton Blanchard to build without
+         php patch
+
+2008-06-29 13:57  oetiker
+
+       * doc/rrdgraph.pod, src/rrd_graph.c: make sure image-with and
+         image-height get returned even when rrdtool is called with --lazy
+         as reported in bug #163
+
+2008-06-19 13:18  oetiker
+
+       * branches/1.2/program/bindings/python/rrdtoolmodule.c,
+         bindings/python/rrdtoolmodule.c: rrdtool.fetch is returning an
+         extra, bogus, data point. Attached is a patch to correct this. -
+         Gilad Raphaelli. Fix for #161
+
+2008-06-12 13:54  oetiker
+
+       * doc/rrdgraph_graph.pod: added note on %S
+
+2008-06-11 15:49  oetiker
+
+       * NEWS: made news the same as the announcement
+
+2008-06-10 23:12  oetiker
+
+       * bindings/perl-piped/RRDp.pm, bindings/perl-shared/RRDs.pm,
+         doc/rrdbuild.pod, doc/rrdcreate.pod, doc/rrdgraph.pod,
+         doc/rrdgraph_graph.pod, rrdtool.spec, src/pngsize.c, src/rrd.h,
+         src/rrd_cgi.c, src/rrd_create.c, src/rrd_datalang.c,
+         src/rrd_diff.c, src/rrd_dump.c, src/rrd_error.c, src/rrd_fetch.c,
+         src/rrd_first.c, src/rrd_format.c, src/rrd_format.h,
+         src/rrd_gfx.c, src/rrd_graph.c, src/rrd_graph_helper.c,
+         src/rrd_hw.c, src/rrd_hw.h, src/rrd_i18n.h, src/rrd_info.c,
+         src/rrd_is_thread_safe.h, src/rrd_last.c, src/rrd_lastupdate.c,
+         src/rrd_not_thread_safe.c, src/rrd_open.c, src/rrd_resize.c,
+         src/rrd_restore.c, src/rrd_rpncalc.c, src/rrd_rpncalc.h,
+         src/rrd_thread_safe.c, src/rrd_thread_safe_nt.c, src/rrd_tool.c,
+         src/rrd_tool.h, src/rrd_tune.c, src/rrd_update.c,
+         src/rrd_version.c, src/rrd_xport.c, src/rrd_xport.h,
+         src/rrdupdate.c: prepare for the release of rrdtool-1.3.0
+
+2008-06-10 16:38  oetiker
+
+       * configure.ac: oops it is 1.3.0 not 1.4.0 yet
+
+2008-06-10 16:37  oetiker
+
+       * 00README, CONTRIBUTORS, PROJECTS, TODO, configure.ac,
+         rrdtool-1.3-release: preparing for 1.3
+
+2008-06-10 16:32  oetiker
+
+       * src/Makefile.am, src/rrd.h, src/rrd_format.h, src/rrd_hw_math.c,
+         src/rrd_hw_update.c, src/rrd_tool.h: document the 'internal'
+         functions in rrd.h but mark them as deprecated, so that anyone
+         using them will see that they should not be doing it.
+
+2008-06-10 11:16  oetiker
+
+       * src/rrd_create.c: flip check for row_count with setting for better
+         code logic
+
+2008-06-10 09:35  oetiker
+
+       * doc/rrdcreate.pod, src/rrd_create.c: check row count in RRAs to be
+         > 0 ... by Sebastian Harl
+
+2008-06-10 07:18  oetiker
+
+       * src/rrd_create.c, src/rrd_open.c: for windows we must open files
+         in O_BINARY mode
+
+2008-06-09 16:10  oetiker
+
+       * src/rrd.h, src/rrd_tool.h: do NOT export lowlevel functions, since
+         I have no intention supporting these interfaces across versions.
+         The symbols are in the library, so if someone WANTS to code to
+         them, they are free todo so, but they will have to use our
+         internal header files.
+
+2008-06-09 15:49  oetiker
+
+       * src/librrd.sym, src/rrd.h, src/rrd_tool.h: add all lowlevel file
+         access functions from the rrd_open interface to the export list.
+
+2008-06-09 05:12  oetiker
+
+       * bindings/python/rrdtoolmodule.c, src/pngsize.c, src/rrd.h,
+         src/rrd_error.c, src/rrd_graph.h, src/rrd_info.c, src/rrd_open.c,
+         src/rrd_parsetime.c, src/rrd_tool.c, src/rrd_update.c: fixed
+         indenting
+
+2008-06-09 05:11  oetiker
+
+       * rrdtool.spec: update to rpm spec from Jarod Wilson
+
+2008-06-08 21:15  oetiker
+
+       * src/librrd.sym: export some more symbols from librrd
+
+2008-06-08 21:06  oetiker
+
+       * win32/config.h: windows should use a windows font
+
+2008-06-08 21:05  oetiker
+
+       * src/rrd_graph.c: drop special case windows font code ... it makes
+         no sense with the new setup
+
+2008-06-08 17:08  oetiker
+
+       * bindings/perl-piped/RRDp.pm, bindings/perl-shared/RRDs.pm,
+         configure.ac, doc/rrdbuild.pod, rrdtool.spec, src/pngsize.c,
+         src/rrd.h, src/rrd_cgi.c, src/rrd_create.c, src/rrd_datalang.c,
+         src/rrd_diff.c, src/rrd_dump.c, src/rrd_error.c, src/rrd_fetch.c,
+         src/rrd_first.c, src/rrd_format.c, src/rrd_format.h,
+         src/rrd_gfx.c, src/rrd_graph.c, src/rrd_graph_helper.c,
+         src/rrd_hw.c, src/rrd_hw.h, src/rrd_i18n.h, src/rrd_info.c,
+         src/rrd_is_thread_safe.h, src/rrd_last.c, src/rrd_lastupdate.c,
+         src/rrd_not_thread_safe.c, src/rrd_open.c, src/rrd_resize.c,
+         src/rrd_restore.c, src/rrd_rpncalc.c, src/rrd_rpncalc.h,
+         src/rrd_thread_safe.c, src/rrd_thread_safe_nt.c, src/rrd_tool.c,
+         src/rrd_tool.h, src/rrd_tune.c, src/rrd_update.c,
+         src/rrd_version.c, src/rrd_xport.c, src/rrd_xport.h,
+         src/rrdupdate.c: prepare for the release of rrdtool-1.3rc9
+
+2008-06-08 17:08  oetiker
+
+       * src/rrd_gfx.c, src/rrd_graph.c: fixed pango markup switch ... we
+         still want the text to show even if no markup is enabled
+
+2008-06-08 16:47  oetiker
+
+       * bindings/python/rrdtoolmodule.c, bindings/ruby/main.c,
+         src/librrd.sym: rrd_freemem has to be exported as well ...
+
+2008-06-08 16:23  oetiker
+
+       * branches/1.2/program/src/pngsize.c, src/pngsize.c: fix for ticket
+         #121 jmpbuf on aix is a problem it seems, maybe this makes it
+         better.
+
+2008-06-08 15:59  oetiker
+
+       * src/Makefile.am: prepare for the release of rrdtool-1.3rc8
+
+2008-06-08 15:55  oetiker
+
+       * bindings/perl-piped/RRDp.pm, bindings/perl-shared/RRDs.pm,
+         configure.ac, doc/rrdbuild.pod, rrdtool.spec, src/pngsize.c,
+         src/rrd.h, src/rrd_cgi.c, src/rrd_create.c, src/rrd_datalang.c,
+         src/rrd_diff.c, src/rrd_dump.c, src/rrd_error.c, src/rrd_fetch.c,
+         src/rrd_first.c, src/rrd_format.c, src/rrd_format.h,
+         src/rrd_gfx.c, src/rrd_graph.c, src/rrd_graph_helper.c,
+         src/rrd_hw.c, src/rrd_hw.h, src/rrd_i18n.h, src/rrd_info.c,
+         src/rrd_is_thread_safe.h, src/rrd_last.c, src/rrd_lastupdate.c,
+         src/rrd_not_thread_safe.c, src/rrd_open.c, src/rrd_resize.c,
+         src/rrd_restore.c, src/rrd_rpncalc.c, src/rrd_rpncalc.h,
+         src/rrd_thread_safe.c, src/rrd_thread_safe_nt.c, src/rrd_tool.c,
+         src/rrd_tool.h, src/rrd_tune.c, src/rrd_update.c,
+         src/rrd_version.c, src/rrd_xport.c, src/rrd_xport.h,
+         src/rrdupdate.c: prepare for the release of rrdtool-1.3rc8
+
+2008-06-08 15:55  oetiker
+
+       * bindings/perl-shared/RRDs.xs, bindings/python/rrdtoolmodule.c,
+         bindings/ruby/main.c, bindings/tcl/tclrrd.c, doc/rrdthreads.pod,
+         netware/Makefile, src/Makefile.am, src/librrd.sym,
+         src/parsetime.c, src/parsetime.h, src/rrd.h, src/rrd_cgi.c,
+         src/rrd_create.c, src/rrd_error.c, src/rrd_fetch.c,
+         src/rrd_graph.c, src/rrd_graph.h, src/rrd_graph_helper.c,
+         src/rrd_info.c, src/rrd_nan_inf.c, src/rrd_not_thread_safe.c,
+         src/rrd_open.c, src/rrd_parsetime.c, src/rrd_parsetime.h,
+         src/rrd_resize.c, src/rrd_thread_safe.c, src/rrd_thread_safe_nt.c,
+         src/rrd_tool.c, src/rrd_tool.h, src/rrd_update.c, src/rrd_xport.c,
+         win32/rrd.dsp, win32/rrd.vcproj: From: Sebastian Harl sh
+         tokkee.org Date: Sun, 8 Jun 2008 15:01:05 +0200 Subject: [PATCH]
+         Cleanup the symbols exported by librrd. Up to know librrd exported
+         a lot of symbols, most of which are to be regarded as private
+         symbols. This somewhat pollutes the API as the symbols could, in
+         theory, be used by external software and, more importantly, makes
+         symbol based dependencies (as recently introduced in e.g. Debian)
+         somewhat harder to implement. This patch does a somewhat
+         large-scale cleanup of the exported symbols: * Introduced a
+         librrd.sym file which contains all symbols that are to be
+         exported. This file is then passed to libtool using the
+         -export-symbols option which tells the linker to export the given
+         symbols only (note: according to the libtool manual, this has no
+         effect on some architectures - however, I assume that most
+         architectures in use today do support it). librrd.sym contains all
+         symbols originally defined in rrd.h sans LockRRD() (which has been
+         moved to rrd_tool.h). The following functions have been added to
+         rrd.h and the list of exported symbols (some of them have been
+         renamed, see below): - rrd_info() - rrd_info_free() -
+         rrd_info_print() - rrd_info_push() - rrd_lastupdate() -
+         rrd_update_v() - rrd_strerror() * Prefixed all public functions
+         and types with "rrd_" to avoid name clashes with other libraries.
+         Also, while I was at it, I introduced typedefs for all custom
+         types and prefixed the time names with "_t" to improve
+         consistency: - enum info_type -> rrd_info_type_t - enum timetype
+         -> rrd_timetype_t - union infoval -> rrd_infoval_t - struct info_t
+         -> rrd_info_t - struct rrd_context -> rrd_context_t - struct
+         rrd_time_value -> rrd_time_value_t - info_free() ->
+         rrd_info_free() - info_free() -> rrd_info_free() - info_print() ->
+         rrd_info_print() - info_push() -> rrd_info_push() - LockRRD() ->
+         rrd_lock() (not public though) - parsetime() -> rrd_parsetime()
+         (and: src/parsetime.c -> src/rrd_parsetime.c) - proc_start_end()
+         -> rrd_proc_start_end() - set_to_DINF() -> rrd_set_to_DINF() -
+         set_to_DNAN() -> rrd_set_to_DNAN() * Moved readfile() from
+         rrd_open.c to rrd_cgi.c and declared it static. This function is
+         used in rrd_cgi.c only. * rrd_lock() (f.k.a. LockRRD()) now
+         accepts a rrd_file_t pointer instead of an integer to increase
+         encapsulation.
+
+2008-06-07 14:35  oetiker
+
+       * src/rrd_open.c: don't bother with don't need when there is neither
+         madvise not fadvise calls
+
+2008-06-06 16:38  oetiker
+
+       * branches/1.2/program/src/rrd_graph.c, src/rrd_graph.c: fix for
+         --font bug (font names wer not being picked up at all). Bug
+         reported by Dmitry B. Bigunayk
+
+2008-06-05 20:56  oetiker
+
+       * NEWS: added pango markup name
+
+2008-06-05 19:59  oetiker
+
+       * src/rrd.h, src/rrd_error.c, src/rrd_format.h, src/rrd_gfx.c,
+         src/rrd_info.c, src/rrd_open.c, src/rrd_update.c: fixed indenting
+
+2008-06-05 19:59  oetiker
+
+       * src/rrd_graph.c: disable pango markup by default. added
+         --pango-markup option for explicit enablement.
+
+2008-06-05 19:58  oetiker
+
+       * doc/rrdgraph.pod, src/rrd_graph.h: disable pango markup by
+         default. added --pango-markup option for explicit enablement.
+
+2008-06-05 19:57  oetiker
+
+       * bindings/python/rrdtoolmodule.c: fixed indenting
+
+2008-06-04 16:18  oetiker
+
+       * bindings/tcl/Makefile.am, configure.ac: enable new building for
+         newer tcl versions
+
+2008-06-02 06:46  oetiker
+
+       * configure.ac: updated documentation of library versioning system
+
+2008-06-02 06:43  oetiker
+
+       * configure.ac: Had to reset the interface version number due to the
+         change in the rrd_context implementation.
+
+2008-06-02 06:21  oetiker
+
+       * src/rrd_restore.c: use DNAN instead of NAN since there seem to be
+         issues with gcc on solaris and the NAN experession (and we use
+         DNAN everywhere else anyway).
+
+2008-06-01 21:12  oetiker
+
+       * doc/rrdbuild.pod: integrated gentoo bits and spell fixes by Peter
+         Volkov
+
+2008-06-01 20:44  oetiker
+
+       * src/rrd.h, src/rrd_error.c, src/rrd_not_thread_safe.c,
+         src/rrd_thread_safe.c, src/rrd_thread_safe_nt.c: Patch for
+         rrd_context system by sebastian harl, making it simpler and less
+         error prone. Removing one buffer overflow in the process.
+
+2008-05-31 15:58  oetiker
+
+       * doc/rrdbuild.pod: prepare for the release of rrdtool-1.3rc7
+
+2008-05-31 15:57  oetiker
+
+       * bindings/perl-piped/RRDp.pm, bindings/perl-shared/RRDs.pm,
+         configure.ac, doc/rrdbuild.pod, rrdtool.spec, src/pngsize.c,
+         src/rrd.h, src/rrd_cgi.c, src/rrd_create.c, src/rrd_datalang.c,
+         src/rrd_diff.c, src/rrd_dump.c, src/rrd_error.c, src/rrd_fetch.c,
+         src/rrd_first.c, src/rrd_format.c, src/rrd_format.h,
+         src/rrd_gfx.c, src/rrd_graph.c, src/rrd_graph_helper.c,
+         src/rrd_hw.c, src/rrd_hw.h, src/rrd_i18n.h, src/rrd_info.c,
+         src/rrd_is_thread_safe.h, src/rrd_last.c, src/rrd_lastupdate.c,
+         src/rrd_not_thread_safe.c, src/rrd_open.c, src/rrd_resize.c,
+         src/rrd_restore.c, src/rrd_rpncalc.c, src/rrd_rpncalc.h,
+         src/rrd_thread_safe.c, src/rrd_thread_safe_nt.c, src/rrd_tool.c,
+         src/rrd_tool.h, src/rrd_tune.c, src/rrd_update.c,
+         src/rrd_version.c, src/rrd_xport.c, src/rrd_xport.h,
+         src/rrdupdate.c: prepare for the release of rrdtool-1.3rc7
+
+2008-05-31 15:56  oetiker
+
+       * doc/rrdbuild.pod: added pkgconfig build instructions
+
+2008-05-31 12:28  oetiker
+
+       * branches/1.2/program/src/rrd_graph.c, src/rrd_graph.c: make sure
+         vdef calcs only calc as far as originally requested.
+
+2008-05-27 22:24  oetiker
+
+       * src/rrd_info.c: fixed maxlength for sprintf_alloc 50 was not
+         enough ... 1024+strlen(fmt) is much better. This makes imginfo
+         work even when there are long image paths.
+
+2008-05-26 11:45  oetiker
+
+       * TODO: updated todo list
+
+2008-05-26 08:56  oetiker
+
+       * bindings/perl-piped/RRDp.pm, bindings/perl-shared/RRDs.pm,
+         configure.ac, doc/rrdbuild.pod, rrdtool.spec, src/pngsize.c,
+         src/rrd.h, src/rrd_cgi.c, src/rrd_create.c, src/rrd_datalang.c,
+         src/rrd_diff.c, src/rrd_dump.c, src/rrd_error.c, src/rrd_fetch.c,
+         src/rrd_first.c, src/rrd_format.c, src/rrd_format.h,
+         src/rrd_gfx.c, src/rrd_graph.c, src/rrd_graph_helper.c,
+         src/rrd_hw.c, src/rrd_hw.h, src/rrd_i18n.h, src/rrd_info.c,
+         src/rrd_is_thread_safe.h, src/rrd_last.c, src/rrd_lastupdate.c,
+         src/rrd_not_thread_safe.c, src/rrd_open.c, src/rrd_resize.c,
+         src/rrd_restore.c, src/rrd_rpncalc.c, src/rrd_rpncalc.h,
+         src/rrd_thread_safe.c, src/rrd_thread_safe_nt.c, src/rrd_tool.c,
+         src/rrd_tool.h, src/rrd_tune.c, src/rrd_update.c,
+         src/rrd_version.c, src/rrd_xport.c, src/rrd_xport.h,
+         src/rrdupdate.c: prepare for the release of rrdtool-1.3rc6
+
+2008-05-26 07:46  oetiker
+
+       * NEWS: added notes about new grid lines
+
+2008-05-26 07:45  oetiker
+
+       * src/rrd_graph.c: * make y-axis labels NOT run into each other
+         (classic and alt) * space horizontal grid lines and lables a bit
+         further apart for tight layouts. * let horizontal lines and y axis
+         labels run a little closer for classic grid
+
+2008-05-25 21:17  oetiker
+
+       * src/rrd_graph.c: fixed calculation of space at the bottom of the
+         graph
+
+2008-05-25 20:02  oetiker
+
+       * bindings/perl-piped/RRDp.pm, bindings/perl-shared/RRDs.pm,
+         configure.ac, doc/rrdbuild.pod, rrdtool.spec, src/pngsize.c,
+         src/rrd.h, src/rrd_cgi.c, src/rrd_create.c, src/rrd_datalang.c,
+         src/rrd_diff.c, src/rrd_dump.c, src/rrd_error.c, src/rrd_fetch.c,
+         src/rrd_first.c, src/rrd_format.c, src/rrd_format.h,
+         src/rrd_gfx.c, src/rrd_graph.c, src/rrd_graph_helper.c,
+         src/rrd_hw.c, src/rrd_hw.h, src/rrd_i18n.h, src/rrd_info.c,
+         src/rrd_is_thread_safe.h, src/rrd_last.c, src/rrd_lastupdate.c,
+         src/rrd_not_thread_safe.c, src/rrd_open.c, src/rrd_resize.c,
+         src/rrd_restore.c, src/rrd_rpncalc.c, src/rrd_rpncalc.h,
+         src/rrd_thread_safe.c, src/rrd_thread_safe_nt.c, src/rrd_tool.c,
+         src/rrd_tool.h, src/rrd_tune.c, src/rrd_update.c,
+         src/rrd_version.c, src/rrd_xport.c, src/rrd_xport.h,
+         src/rrdupdate.c: prepare for the release of rrdtool-1.3rc5
+
+2008-05-25 20:00  oetiker
+
+       * src/rrd_format.h, src/rrd_open.c, src/rrd_update.c: fix update
+         compatibility with rrd-1.0.x files
+
+2008-05-20 22:22  oetiker
+
+       * bindings/Makefile.am: droped rrd_extra.h from the distro with the
+         python update ... must remove it from the Makefile too
+
+2008-05-19 21:14  oetiker
+
+       * NEWS, bindings/python/README, bindings/python/rrd_extra.h,
+         bindings/python/rrdtoolmodule.c, doc/rrdpython.pod: fixed python
+         bindings: * info call isnnow aequivalent to rrdtool info (the same
+         as in the perl and ruby bindings) * graphv and updatev calls added
+
+2008-05-18 22:11  oetiker
+
+       * src/rrd_gfx.c, src/rrd_graph.c, src/rrd_tool.c: * document
+         tabwidth option * fix \t -> tab expansion
+
+2008-05-18 15:39  oetiker
+
+       * src/rrd_graph.c: ytr boundery checking ... this is from the GD
+         days ... we don't need this anymore
+
+2008-05-18 15:11  oetiker
+
+       * src/rrd_dump.c, src/rrd_tool.c: fix indenting
+
+2008-05-18 15:11  oetiker
+
+       * src/rrd_graph.c: pdf, svg and ps formats were not being created
+
+2008-05-18 13:06  oetiker
+
+       * bindings/perl-piped/RRDp.pm, bindings/perl-shared/RRDs.pm,
+         configure.ac, doc/rrdbuild.pod, rrdtool-1.3-release, rrdtool.spec,
+         src/pngsize.c, src/rrd.h, src/rrd_cgi.c, src/rrd_create.c,
+         src/rrd_datalang.c, src/rrd_diff.c, src/rrd_dump.c,
+         src/rrd_error.c, src/rrd_fetch.c, src/rrd_first.c,
+         src/rrd_format.c, src/rrd_format.h, src/rrd_gfx.c,
+         src/rrd_graph.c, src/rrd_graph_helper.c, src/rrd_hw.c,
+         src/rrd_hw.h, src/rrd_i18n.h, src/rrd_info.c,
+         src/rrd_is_thread_safe.h, src/rrd_last.c, src/rrd_lastupdate.c,
+         src/rrd_not_thread_safe.c, src/rrd_open.c, src/rrd_resize.c,
+         src/rrd_restore.c, src/rrd_rpncalc.c, src/rrd_rpncalc.h,
+         src/rrd_thread_safe.c, src/rrd_thread_safe_nt.c, src/rrd_tool.c,
+         src/rrd_tool.h, src/rrd_tune.c, src/rrd_update.c,
+         src/rrd_version.c, src/rrd_xport.c, src/rrd_xport.h,
+         src/rrdupdate.c: prepare for the release of rrdtool-1.3rc4
+
+2008-05-18 13:04  oetiker
+
+       * src/rrd_tool.c, src/rrdupdate.c: fix year
+
+2008-05-18 12:53  oetiker
+
+       * src/rrd_graph.c: PRINT returns from rrd_graph did not work due to
+         an off by one error
+
+2008-05-18 08:42  oetiker
+
+       * doc/rrdbuild.pod: updated build instructions to latest libraries
+
+2008-05-18 06:37  oetiker
+
+       * NEWS, configure.ac, src/rrd_i18n.h, src/rrd_tool.c: improved
+         handling of libintl issues
+
+2008-05-16 12:29  oetiker
+
+       * bindings/perl-piped/RRDp.pm, bindings/perl-shared/RRDs.pm,
+         configure.ac, doc/rrdbuild.pod, rrdtool.spec, src/pngsize.c,
+         src/rrd.h, src/rrd_cgi.c, src/rrd_create.c, src/rrd_datalang.c,
+         src/rrd_diff.c, src/rrd_dump.c, src/rrd_error.c, src/rrd_fetch.c,
+         src/rrd_first.c, src/rrd_format.c, src/rrd_format.h,
+         src/rrd_gfx.c, src/rrd_graph.c, src/rrd_graph_helper.c,
+         src/rrd_hw.c, src/rrd_hw.h, src/rrd_i18n.h, src/rrd_info.c,
+         src/rrd_is_thread_safe.h, src/rrd_last.c, src/rrd_lastupdate.c,
+         src/rrd_not_thread_safe.c, src/rrd_open.c, src/rrd_resize.c,
+         src/rrd_restore.c, src/rrd_rpncalc.c, src/rrd_rpncalc.h,
+         src/rrd_thread_safe.c, src/rrd_thread_safe_nt.c, src/rrd_tool.c,
+         src/rrd_tool.h, src/rrd_tune.c, src/rrd_update.c,
+         src/rrd_version.c, src/rrd_xport.c, src/rrd_xport.h,
+         src/rrdupdate.c: prepare for the release of rrdtool-1.3rc3
+
+2008-05-16 12:28  oetiker
+
+       * doc/rrddump.pod, src/rrd_dump.c: added --no-header to
+         documentation and fixed implementation
+
+2008-05-16 12:20  oetiker
+
+       * src/rrd_dump.c: fixed dump_opt implementation
+
+2008-05-16 12:18  oetiker
+
+       * NEWS, src/rrd_dump.c: added no-header option to rrd_dump
+
+2008-05-16 12:07  oetiker
+
+       * src/rrd_graph.c: fix handling of values <= zero for logarithmic
+         display
+
+2008-05-15 22:39  oetiker
+
+       * rrdtool-1.3-release: prepare for the release of rrdtool-1.3rc2
+
+2008-05-15 22:39  oetiker
+
+       * bindings/perl-piped/RRDp.pm, bindings/perl-shared/RRDs.pm,
+         configure.ac, doc/rrdbuild.pod, rrdtool.spec, src/pngsize.c,
+         src/rrd.h, src/rrd_cgi.c, src/rrd_create.c, src/rrd_datalang.c,
+         src/rrd_diff.c, src/rrd_dump.c, src/rrd_error.c, src/rrd_fetch.c,
+         src/rrd_first.c, src/rrd_format.c, src/rrd_format.h,
+         src/rrd_gfx.c, src/rrd_graph.c, src/rrd_graph_helper.c,
+         src/rrd_hw.c, src/rrd_hw.h, src/rrd_i18n.h, src/rrd_info.c,
+         src/rrd_is_thread_safe.h, src/rrd_last.c, src/rrd_lastupdate.c,
+         src/rrd_not_thread_safe.c, src/rrd_open.c, src/rrd_resize.c,
+         src/rrd_restore.c, src/rrd_rpncalc.c, src/rrd_rpncalc.h,
+         src/rrd_thread_safe.c, src/rrd_thread_safe_nt.c, src/rrd_tool.c,
+         src/rrd_tool.h, src/rrd_tune.c, src/rrd_update.c,
+         src/rrd_version.c, src/rrd_xport.c, src/rrd_xport.h,
+         src/rrdupdate.c: prepare for the release of rrdtool-1.3rc2
+
+2008-05-15 22:37  oetiker
+
+       * Makefile.am, configure.ac, rrdtool-1.3-release, src/Makefile.am:
+         fix portability to mac osx and freebsd -- tobi
+
+2008-05-12 23:10  oetiker
+
+       * configure.ac: add solaris pod2man location last
+
+2008-05-12 23:03  oetiker
+
+       * configure.ac, doc/Makefile.am, doc/rrdbuild.pod: some changes to
+         make things work on opensolaris 2008.05
+
+2008-05-12 22:42  oetiker
+
+       * bindings/tcl/Makefile.am: for some reason tclrrd.c does not get
+         picked up using $< at least on opensolaris
+
+2008-05-12 22:23  oetiker
+
+       * src/Makefile.am, src/rrd_graph.h, src/rrd_info.c,
+         src/rrd_rpncalc.c, src/rrd_rpncalc.h, src/rrd_tool.c: allow
+         rrd_rpncalc to build without cairo dependencies ... fix warnings
+
+2008-05-12 21:14  oetiker
+
+       * Makefile.am: add intltool*in files to dist
+
+2008-05-12 16:15  oetiker
+
+       * bindings/python/rrdtoolmodule.c, src/rrd_update.c: fixed indenting
+
+2008-05-12 16:15  oetiker
+
+       * src/rrd_graph.c, src/rrd_hw.c, src/rrd_open.c, src/rrd_rpncalc.c,
+         src/win32comp.c: removed c++ comments //
+
+2008-05-12 16:09  oetiker
+
+       * NEWS: added notes about rewrites in this release
+
+2008-05-12 16:08  oetiker
+
+       * configure.ac, src/Makefile.am: improved handling of library
+         versioning
+
+2008-05-12 15:35  oetiker
+
+       * src/rrd_update.c: should not leave debug enabled
+
+2008-05-12 15:33  oetiker
+
+       * branches/1.2/program/doc/rrdcreate.pod,
+         branches/1.2/program/src/rrd_update.c, doc/rrdcreate.pod,
+         src/rrd_update.c: Fixed handling of unknown data at PDP build
+         time. There was a long standing (even documented) missfeature in
+         rrdtool which caused uknown-data to be accepted as long as it was
+         less than the mrhb. This was never the intended behaviour and had
+         interesting side effects
+         (http://oss.oetiker.ch/rrdtool-trac/ticket/125): If you have a 60
+         Second step with 59s unknown data and 1 second of known data the
+         whole become known data as long as the mrhb was > step. The
+         intended behaviour was that a step should become unknown as soon
+         as it contains more than 50% of unknown data. The patch fixes both
+         the documentation and the code.
+
+2008-05-12 13:22  oetiker
+
+       * src/rrd_create.c: the last_ds value fuer unknown is 'U' and not
+         'UNKN'
+
+2008-05-04 18:59  oetiker
+
+       * src/rrd_getopt.c, src/rrd_getopt1.c: fix for sun sudio 11
+         incompatibility
+         http://www.netbsd.org/cgi-bin/query-pr-single.pl?number=38555
+
+2008-05-01 23:23  oetiker
+
+       * bindings/ruby/main.c, src/rrd.h, src/rrd_info.c, src/rrd_tool.c:
+         indenting fixes
+
+2008-05-01 23:23  oetiker
+
+       * src/rrd_graph.c: make sure properties are shown via graph_v even
+         in --graph-only mode
+
+2008-05-01 06:56  oetiker
+
+       * MakeMakefile: Make the MakeMakefile script a bit more robust
+
+2008-04-22 21:40  oetiker
+
+       * bindings/python/rrd_extra.h, bindings/python/rrdtoolmodule.c: fix
+         for #148
+
+2008-04-20 22:46  oetiker
+
+       * CONTRIBUTORS, NEWS, bindings/perl-shared/RRDs.pm,
+         bindings/perl-shared/RRDs.xs, bindings/ruby/main.c,
+         doc/rrdgraph.pod, src/rrd.h, src/rrd_graph.c, src/rrd_graph.h,
+         src/rrd_info.c, src/rrd_tool.c, src/rrd_tool.h: Introduced a
+         alternated interface to rrd_graph using rrd_info style return
+         values: rrd_graph_v The graph_v interface returnes additional
+         information about the graph including the location of the graphing
+         area within the image. When called with '-' as filename it will
+         even return the image data. The new interface is supported in the
+         rrdtool command line, RRDs perl and ruby bindings.
+
+2008-04-17 05:35  oetiker
+
+       * src/rrd_update.c: indent fix
+
+2008-04-17 05:35  oetiker
+
+       * src/rrd_tune.c: do not reset the last_ds store unless the data
+         source type is actually changed.
+
+2008-04-16 15:50  oetiker
+
+       * branches/1.2/program/doc/rrdgraph.pod, doc/rrdgraph.pod: fixed 2.
+         x-grid example ... since the lable is valid for the whole day, it
+         must be 86400 wide. --tobi
+
+2008-04-12 09:29  oetiker
+
+       * MakeMakefile, configure.ac: alter order of header inclusion for
+         FreeBSD 4.8 compatibility
+
+2008-04-12 09:21  oetiker
+
+       * branches/1.2/program/src/parsetime.c, src/parsetime.c: do not mess
+         with dst status after running localtime, the system gets confused
+         otherwhise when it comes to times during the switch over periode
+         as DST changes to non DST. -- tobi
+
+2008-03-25 23:02  oetiker
+
+       * src/rrd_dump.c: added missing " escapes to xml header in
+         rrd_tool.c
+
+2008-03-25 22:59  oetiker
+
+       * CONTRIBUTORS: added Florian octo Forster to contrib list
+
+2008-03-25 22:59  oetiker
+
+       * doc/rrdgraph_examples.pod: added missing =back for propper pod
+         syntax
+
+2008-03-25 22:58  oetiker
+
+       * src/rrd_dump.c: fix indent
+
+2008-03-25 22:58  oetiker
+
+       * src/rrd_restore.c: fix broken header comment section -- Florian
+         octo Forster
+
+2008-03-25 22:57  oetiker
+
+       * src/rrd_graph.c: cast size_t to int to avoid warning -- Florian
+         octo Forster
+
+2008-03-25 22:56  oetiker
+
+       * src/rrd_open.c: do not declare DEBUG functions unless compiled in
+         DEBUG mode -- Florian octo Forster
+
+2008-03-25 22:55  oetiker
+
+       * src/rrd_tool.c: make helptexts read only memory
+
+2008-03-25 22:55  oetiker
+
+       * src/rrd_update.c: stop complaints about unused variables if not
+         running DEBUG
+
+2008-03-25 22:49  oetiker
+
+       * MakeMakefile: Added check for intltool version. Use Makefile for
+         cleanup. -- Florian octo Forster
+
+2008-03-23 13:43  oetiker
+
+       * src/rrd_dump.c: added pointer to florian forsters dtd to the rrd
+         dumpt
+
+2008-03-19 23:36  oetiker
+
+       * configure.ac: fix pkgconfig file name
+
+2008-03-15 10:39  oetiker
+
+       * ., .indent.pro, 00README, CONTRIBUTORS, COPYING, COPYRIGHT,
+         MakeMakefile, Makefile.am, NEWS, PROJECTS, README, THREADS, TODO,
+         WIN32-BUILD-TIPS.txt, acinclude.m4, bindings,
+         bindings/Makefile.am, bindings/perl-piped,
+         bindings/perl-piped/MANIFEST, bindings/perl-piped/Makefile.PL,
+         bindings/perl-piped/README, bindings/perl-piped/RRDp.pm,
+         bindings/perl-piped/leaktest.pl, bindings/perl-piped/rrdpl.dsp,
+         bindings/perl-piped/rrdpl.dsw, bindings/perl-piped/t,
+         bindings/perl-piped/t/base.t, bindings/perl-shared,
+         bindings/perl-shared/MANIFEST, bindings/perl-shared/Makefile.PL,
+         bindings/perl-shared/README, bindings/perl-shared/RRDs.pm,
+         bindings/perl-shared/RRDs.ppd, bindings/perl-shared/RRDs.xs,
+         bindings/perl-shared/ntmake.pl, bindings/perl-shared/t,
+         bindings/perl-shared/t/base.t, bindings/python,
+         bindings/python/ACKNOWLEDGEMENT, bindings/python/AUTHORS,
+         bindings/python/COPYING, bindings/python/README,
+         bindings/python/rrd_extra.h, bindings/python/rrdtoolmodule.c,
+         bindings/python/setup.py, bindings/ruby, bindings/ruby/CHANGES,
+         bindings/ruby/README, bindings/ruby/extconf.rb,
+         bindings/ruby/main.c, bindings/ruby/test.rb, bindings/tcl,
+         bindings/tcl/Makefile.am, bindings/tcl/README,
+         bindings/tcl/ifOctets.tcl.in, bindings/tcl/tclrrd.c, configure.ac,
+         debian, debian/README.Debian, debian/build_freetype.sh,
+         debian/changelog, debian/control, debian/copyright,
+         debian/librrd0-dev.files, debian/librrd0.files,
+         debian/librrd0.postinst, debian/librrd0.postrm,
+         debian/librrd0.shlibs, debian/librrdp-perl.files,
+         debian/librrds-perl.files, debian/rrdtool-tcl.files,
+         debian/rrdtool.files, debian/rules, debian/watch, doc,
+         doc/Makefile.am, doc/bin_dec_hex.pod, doc/cdeftutorial.pod,
+         doc/name.inc, doc/rpntutorial.pod, doc/rrd-beginners.pod,
+         doc/rrdbuild.pod, doc/rrdcgi.pod, doc/rrdcreate.pod,
+         doc/rrddump.pod, doc/rrdfetch.pod, doc/rrdfirst.pod,
+         doc/rrdgraph-old.pod, doc/rrdgraph.pod, doc/rrdgraph_data.pod,
+         doc/rrdgraph_examples.pod, doc/rrdgraph_graph.pod,
+         doc/rrdgraph_rpn.pod, doc/rrdinfo.pod, doc/rrdlast.pod,
+         doc/rrdlastupdate.pod, doc/rrdpython.pod, doc/rrdresize.pod,
+         doc/rrdrestore.pod, doc/rrdruby.pod, doc/rrdthreads.pod,
+         doc/rrdtool-dump.dtd, doc/rrdtool-xport.dtd, doc/rrdtool.pod,
+         doc/rrdtune.pod, doc/rrdtutorial.es.pod, doc/rrdtutorial.pod,
+         doc/rrdupdate.pod, doc/rrdxport.pod, examples,
+         examples/4charts.pl.in, examples/Makefile.am,
+         examples/bigtops.pl.in, examples/cgi-demo.cgi.in,
+         examples/minmax.pl.in, examples/perftest.pl.in,
+         examples/piped-demo.pl.in, examples/shared-demo.pl.in,
+         examples/stripes.pl.in, favicon.ico, netware, netware/Makefile,
+         po, po/ChangeLog, po/LINGUAS, po/POTFILES.in, po/de.po,
+         rrdtool-1.2-release, rrdtool-1.3-release, rrdtool.spec, src,
+         src/Makefile.am, src/compile_afm.pl, src/fnv.h, src/get_ver.awk,
+         src/hash_32.c, src/parsetime.c, src/parsetime.h, src/pngsize.c,
+         src/rrd.h, src/rrd_cgi.c, src/rrd_create.c, src/rrd_datalang.c,
+         src/rrd_diff.c, src/rrd_dump.c, src/rrd_error.c, src/rrd_fetch.c,
+         src/rrd_first.c, src/rrd_format.c, src/rrd_format.h,
+         src/rrd_getopt.c, src/rrd_getopt.h, src/rrd_getopt1.c,
+         src/rrd_gfx.c, src/rrd_graph.c, src/rrd_graph.h,
+         src/rrd_graph_helper.c, src/rrd_hw.c, src/rrd_hw.h,
+         src/rrd_hw_math.c, src/rrd_hw_math.h, src/rrd_hw_update.c,
+         src/rrd_hw_update.h, src/rrd_i18n.h, src/rrd_info.c,
+         src/rrd_is_thread_safe.h, src/rrd_last.c, src/rrd_lastupdate.c,
+         src/rrd_nan_inf.c, src/rrd_not_thread_safe.c, src/rrd_open.c,
+         src/rrd_resize.c, src/rrd_restore.c, src/rrd_rpncalc.c,
+         src/rrd_rpncalc.h, src/rrd_thread_safe.c,
+         src/rrd_thread_safe_nt.c, src/rrd_tool.c, src/rrd_tool.h,
+         src/rrd_tune.c, src/rrd_update.c, src/rrd_version.c,
+         src/rrd_xport.c, src/rrd_xport.h, src/rrdupdate.c, src/strftime.c,
+         src/strftime.h, src/unused.h, src/win32comp.c, svn2cl.xsl, win32,
+         win32/Makefile, win32/config.h, win32/rrd.dsp, win32/rrd.vcproj,
+         win32/rrd_config.h.msvc, win32/rrdtool.dsp, win32/rrdtool.dsw,
+         win32/rrdtool.vcproj: reindent aded id keyword substitution
+
+2008-03-15 10:32  oetiker
+
+       * src/rrd_rpncalc.c: reat nan as FALSE in an IF CDEF
+
+2008-03-07 08:57  oetiker
+
+       * doc/rrdgraph_rpn.pod, src/rrd_rpncalc.c, src/rrd_rpncalc.h: a
+         nan-safe add operator (ADDNAN) into rrd. I used it to add several
+         incomplete graphs. NaN + NaN => NaN x + NaN => x NaN + y => y x +
+         y => x + y -- Timo Stripf tstripf gmx.de
+
+2008-03-02 15:38  oetiker
+
+       * src/rrd_graph.c: Fix error "cairo_restore without matching
+         cairo_save" when zero-time point is out of graph
+
+2008-02-25 07:11  oetiker
+
+       * branches/1.2/program/src/rrd_fetch.c, src/rrd_fetch.c: Ignore
+         RRA-end when comparing. coverage.
+
+2008-02-24 14:27  oetiker
+
+       * src/rrd_create.c, src/rrd_graph_helper.c, src/rrd_i18n.h,
+         src/rrd_info.c, src/rrd_restore.c, src/rrd_tool.c: fix indents
+         gone out of kileter by patching ...
+
+2008-02-24 14:26  oetiker
+
+       * src/rrd_dump.c, src/rrd_tool.c: get rid of a few type cast
+         warnings
+
+2008-02-24 14:26  oetiker
+
+       * src/rrd_restore.c: fix one segfault while trying to restore an
+         invalid xml file. -- tobi
+
+2008-02-21 07:20  oetiker
+
+       * configure.ac: make ruby obey destdir
+
+2008-02-21 07:18  oetiker
+
+       * po/ChangeLog: initial
+
+2008-02-21 07:12  oetiker
+
+       * MakeMakefile, configure.ac, po/LINGUAS, po/de.po, src/rrd_tool.c:
+         make inbternationalized version actually build
+
+2008-02-21 06:59  oetiker
+
+       * po, po/LINGUAS, po/POTFILES.in, src/rrd_i18n.h: added missing bits
+         from internationalization
+
+2008-02-19 12:56  oetiker
+
+       * branches/1.2/program/src/rrd_create.c,
+         branches/1.2/program/src/rrd_info.c,
+         branches/1.2/program/src/rrd_restore.c, src/rrd_create.c,
+         src/rrd_info.c, src/rrd_restore.c: Generate a random cur_row for
+         each RRA during create/restore operations. This effectively
+         randomizes the block crossings among RRDs created around the same
+         time. Previously, RRDs that were created/restored en masse would
+         cross block boundaries simultaneously, which is sub-optimal. Also,
+         this patch enables the user to see the RRA's cur_row pointer via
+         rrdinfo. This was useful during debugging. -- kevin brintnall
+         kbrint qwest.net
+
+2008-02-18 15:04  oetiker
+
+       * MakeMakefile, Makefile.am, configure.ac, rrdtool.spec,
+         src/Makefile.am, src/rrd_getopt.c, src/rrd_tool.c: Added I18N
+         support for messages printed by rrd_tool.c --
+         http://oss.oetiker.ch/rrdtool-trac/ticket/144
+
+2008-02-15 08:49  oetiker
+
+       * configure.ac: check for pdf as well
+
+2008-02-15 08:44  oetiker
+
+       * configure.ac: check for cairo-ps and cairo-svg explicitly
+
+2008-02-06 00:12  oetiker
+
+       * configure.ac: ready for beta 4
+
+2008-02-06 00:10  oetiker
+
+       * src/rrd_graph.c, src/rrd_graph_helper.c: * replaced strtok with
+         strtok_r for thread safety * fixed im initialization broken after
+         the introduction of dashes ...
+
+2008-02-04 22:34  oetiker
+
+       * src/rrd_create.c: in rrd_create we do not use mmaping and thus
+         need to free rrd struct members in any case ...
+
+2008-02-04 22:16  oetiker
+
+       * src/rrd_update.c: this should help with the memory leak
+
+2008-02-04 18:18  oetiker
+
+       * COPYRIGHT: added zpl 2.1 to floss exception
+
+2008-02-01 06:52  oetiker
+
+       * branches/1.2/program/src/rrd_graph.c, src/rrd_graph.c: fixed
+         parsing of fontnames with embeded spaces
+
+2008-01-14 17:11  oetiker
+
+       * configure.ac: remove c++ warnings flag .. this is not c++ after
+         all
+
+2008-01-14 16:52  oetiker
+
+       * src/rrd_cgi.c, src/rrd_create.c: fixed indenting
+
+2008-01-14 16:51  oetiker
+
+       * src/rrd_gfx.c: fix indents
+
+2008-01-14 16:50  oetiker
+
+       * bindings/tcl/tclrrd.c, configure.ac, src/parsetime.c,
+         src/rrd_cgi.c, src/rrd_create.c, src/rrd_nan_inf.c: * fixed
+         madvise/fadvise detection * fixed many compiler warnings -- Peter
+         Breitenlohner peb mppmu.mpg.de
+
+2008-01-12 18:37  oetiker
+
+       * src/rrd_graph.c: weekday and time are too tight
+
+2008-01-04 22:53  oetiker
+
+       * src/rrd_gfx.c, src/rrd_graph.c: fontmap resolution was not
+         matching scaled_font resolution ... this killed layouting ... much
+         better now
+
+2008-01-03 21:30  oetiker
+
+       * doc/rrdgraph_examples.pod, doc/rrdgraph_graph.pod,
+         src/rrd_graph_helper.c: get rid of DASHED, only use dashes syntax.
+         less redundancy -- thomas.gutzler gmail.com
+
+2008-01-02 22:11  oetiker
+
+       * CONTRIBUTORS, NEWS, doc/rrdgraph_examples.pod,
+         doc/rrdgraph_graph.pod, src/rrd_graph.c, src/rrd_graph.h,
+         src/rrd_graph_helper.c: support for dashed lines in graphs
+
+2008-01-02 22:06  oetiker
+
+       * src/pngsize.c, src/rrd_graph.c: fix indenting
+
+2008-01-02 22:06  oetiker
+
+       * doc/Makefile.am: ignore errors with txt doc building
+
+2007-12-11 23:41  oetiker
+
+       * Makefile.am, doc/rrdbuild.pod: building the docs depends on the
+         presence of pod2man ... which does not seem to be installed
+         necessarily
+
+2007-12-08 22:15  oetiker
+
+       * doc/rrdbuild.pod: added shared library locations into the docs
+
+2007-12-08 21:35  oetiker
+
+       * src/rrd_cgi.c: include stdlib since putenv is in there on solaris
+
+2007-12-08 16:57  oetiker
+
+       * configure.ac, doc/rrdbuild.pod, src/rrd_getopt.c: fixing solaris
+         portability * isinf and isnan definitions fixed * check if rt must
+         be linked * ordering must be read write in getopt * updated build
+         instructions
+
+2007-11-26 20:12  oetiker
+
+       * bindings/python/setup.py: fix libdir for python build
+
+2007-11-21 10:51  oetiker
+
+       * configure.ac: fixed NetBSD spelling
+
+2007-11-21 06:56  oetiker
+
+       * configure.ac: define bsd source to get access to chroot
+
+2007-11-21 06:47  oetiker
+
+       * bindings/perl-shared/Makefile.PL, configure.ac: make perlbuild
+         more portable
+
+2007-11-20 22:22  oetiker
+
+       * configure.ac: enable madvise defines in netbsd
+
+2007-11-20 00:08  oetiker
+
+       * src/rrd_format.h, src/rrd_graph.c, src/rrd_nan_inf.c: remove last
+         traces of rrd_nan_inf.h fix handling of min==max where min < 0
+
+2007-11-15 14:39  oetiker
+
+       * bindings/ruby/main.c, src/rrd.h, src/rrd_create.c, src/rrd_dump.c,
+         src/rrd_format.h, src/rrd_graph.c, src/rrd_hw.c, src/rrd_info.c,
+         src/rrd_open.c, src/rrd_restore.c, src/rrd_tune.c,
+         src/rrd_update.c, src/rrd_xport.c: re-indented files that have
+         gone out of indent-style over the last few weeks
+
+2007-11-15 14:36  oetiker
+
+       * src/Makefile.am, src/rrd.h, src/rrd_nan_inf.h: integrate
+         rrd_nan_inf header
+
+2007-11-15 14:35  oetiker
+
+       * src/rrd_open.c: Improve layout of documentation. -- Bernhard
+         Fischer
+
+2007-11-15 14:34  oetiker
+
+       * src/rrd_update.c: * rrd_update(): Unify error path. *
+         parse_template(): Likewise. * allocate_data_structures(): Make
+         error strings use consistent punctuation. -- bernhard fischer
+
+2007-11-15 14:32  oetiker
+
+       * src/pngsize.c: make sure this compiles with aix
+
+2007-11-08 10:16  oetiker
+
+       * NEWS, bindings/ruby/main.c, doc/rrdruby.pod: fixed start end time
+         in ruby fetch and added step size -- Mike Perham mperham gmail
+
+2007-11-06 21:27  oetiker
+
+       * doc/rrdbuild.pod: updated build instructions
+
+2007-11-04 21:56  oetiker
+
+       * bindings/perl-piped/RRDp.pm: handle errors properly ... in RRDp
+         read call
+
+2007-09-16 15:35  oetiker
+
+       * src/rrd_open.c: no reason to die when posixfadvise is not
+         sucessful
+
+2007-09-11 06:28  oetiker
+
+       * doc/rrdcreate.pod, doc/rrdtune.pod, src/rrd_create.c,
+         src/rrd_dump.c, src/rrd_format.h, src/rrd_hw.c, src/rrd_info.c,
+         src/rrd_restore.c, src/rrd_tune.c: Allow to the the smoothing
+         window size other thatn the default 5%. -- Evan Miller emiller
+         imvu.com
+
+2007-09-11 06:16  oetiker
+
+       * configure.ac, src/rrd_open.c: added msync before unmap
+
+2007-09-08 05:23  oetiker
+
+       * CONTRIBUTORS, doc/rrdgraph_rpn.pod, src/rrd_graph.c,
+         src/rrd_graph.h: added STDEV aggregation function for VDEF. --
+         Patrick J Cherry patrick bytemark.co.uk
+
+2007-09-07 22:53  oetiker
+
+       * Makefile.am, examples/Makefile.am, examples/perftest.pl.in: a few
+         leanups -- Bernhard Fischer
+
+2007-09-06 09:06  oetiker
+
+       * src/rrd_open.c: added missing ;
+
+2007-09-06 08:42  oetiker
+
+       * src/rrd_open.c: * mimic write() and read() even better -- Bernhard
+         Fischer
+
+2007-09-06 08:40  oetiker
+
+       * src/rrd_open.c: rrd_open.c (rrd_read): Mimicing read() behaviour
+         for EOF case and NULL buffer case. -- Bernhard Fischer
+
+2007-09-02 16:55  oetiker
+
+       * doc/rrdgraph_graph.pod: fixed speling of horizon
+
+2007-08-29 06:43  oetiker
+
+       * examples/perftest.pl.in: a better performance tester
+
+2007-08-16 07:31  oetiker
+
+       * doc/rrdgraph_examples.pod: added holt winters example back into
+         the examples documentation
+
+2007-08-14 21:59  oetiker
+
+       * src/rrd_update.c: Fix for HoltWinters phase-shift bug described
+         below. When one or more primary data point times were missed, the
+         SEASONAL and DEVSEASONAL archives were marked as being up-to-date,
+         so that they would not be written to. It was correct not to write
+         to these archives, but the code failed to advance the pointers
+         within the SEASONAL and DEVSEASONAL archives so that future
+         updates would go to the correct location in the archives. Rather
+         than mark these archives as up-to-date (by setting
+         rra_step_cnt[rra_idx] = 0), my patch allocates a new "skip_update"
+         array that is set to 1 for SEASONAL and DEVSEASONAL archives that
+         have missed one or more primary data points. When an RRA is
+         written to, the cur_row pointer advancement happens for all
+         archives, but the skip_update array is checked just before
+         actually writing out the changes. Please give it a whirl! -- Evan
+         Miller emiller imvu.com
+
+2007-08-13 20:06  oetiker
+
+       * src/rrd_update.c: Refactored rrd_update code in preparation of
+         finding the HW update problem -- Evan Miller
+
+2007-08-07 15:02  oetiker
+
+       * doc/rrdbuild.pod: updated build instructions for 1.3
+
+2007-08-03 19:46  oetiker
+
+       * svn2cl.xsl: prepare for the release of rrdtool-1.2.99907080300
+
+2007-08-03 19:45  oetiker
+
+       * libraries, src/DejaVuSansMono-Roman.ttf, src/VeraMono.ttf: remove
+         some things we do not need anymore in 1.3
+
+2007-08-03 19:43  oetiker
+
+       * bindings/perl-piped/RRDp.pm, bindings/perl-shared/RRDs.pm,
+         doc/rrdbuild.pod, rrdtool.spec, src/pngsize.c, src/rrd.h,
+         src/rrd_cgi.c, src/rrd_create.c, src/rrd_datalang.c,
+         src/rrd_diff.c, src/rrd_dump.c, src/rrd_error.c, src/rrd_fetch.c,
+         src/rrd_first.c, src/rrd_format.c, src/rrd_format.h,
+         src/rrd_gfx.c, src/rrd_graph.c, src/rrd_graph_helper.c,
+         src/rrd_hw.c, src/rrd_hw.h, src/rrd_info.c,
+         src/rrd_is_thread_safe.h, src/rrd_last.c, src/rrd_lastupdate.c,
+         src/rrd_not_thread_safe.c, src/rrd_open.c, src/rrd_resize.c,
+         src/rrd_restore.c, src/rrd_rpncalc.c, src/rrd_rpncalc.h,
+         src/rrd_thread_safe.c, src/rrd_thread_safe_nt.c, src/rrd_tool.c,
+         src/rrd_tool.h, src/rrd_tune.c, src/rrd_update.c,
+         src/rrd_version.c, src/rrd_xport.c, src/rrd_xport.h,
+         src/rrdupdate.c: prepare for the release of
+         rrdtool-1.2.99907080300
+
+2007-08-03 19:43  oetiker
+
+       * configure.ac, rrdtool-1.3-release: prepare for 1.3 beta 1
+
+2007-08-03 19:26  oetiker
+
+       * src/Makefile.am: continue with the revision numbering
+
+2007-08-03 19:17  oetiker
+
+       * doc/rrdgraph_graph.pod: added notes on pango inline formatting
+
+2007-08-01 15:29  oetiker
+
+       * src/rrd_graph.c: only release cairo stuff if we ever initialized
+         it.
+
+2007-08-01 15:28  oetiker
+
+       * src/rrd_xport.c: fix for 64bit portability problem ... unsigned
+         long is not int
+
+2007-07-31 04:53  oetiker
+
+       * bindings/ruby/main.c: reindented
+
+2007-07-25 20:38  oetiker
+
+       * src/rrd_create.c, src/rrd_dump.c, src/rrd_fetch.c,
+         src/rrd_format.h, src/rrd_graph.c, src/rrd_graph_helper.c,
+         src/rrd_open.c, src/rrd_restore.c, src/rrd_rpncalc.c,
+         src/rrd_tool.h, src/rrd_tune.c: fixed indenting
+
+2007-07-25 20:38  oetiker
+
+       * src/rrd_update.c: make sure we check input even when the previous
+         update was a 'U' ... and some indenting fixes
+
+2007-07-22 15:51  oetiker
+
+       * src/rrd_format.h: new consolidation functions must be added last
+         or this will break binary compatibility
+
+2007-07-22 15:50  oetiker
+
+       * src/rrd_update.c: don't force data out ... let cache management do
+         this
+
+2007-07-22 09:47  oetiker
+
+       * NEWS, src/rrd_create.c, src/rrd_dump.c, src/rrd_format.h,
+         src/rrd_restore.c: Only create version 4 rrd files if the new
+         holtwinters MHW.. CF is used.
+
+2007-07-21 19:55  oetiker
+
+       * src/rrd_open.c: * remove some experimental code from rrd_open *
+         rrd_dontneed will release all data except for header blocks and
+         RRA hot blocks which are going to be updated withing 10 minutes.
+
+2007-07-21 19:53  oetiker
+
+       * src/rrd_fetch.c: for now, do not release fetched data ... in the
+         future we may call rrd_dontneed and let the users decied with an
+         option if they want to keep the data in cache ...
+
+2007-07-21 19:52  oetiker
+
+       * src/Makefile.am: the fonts are now taken from the system. we do
+         not distribute them anympore
+
+2007-07-21 19:37  oetiker
+
+       * NEWS: not on update rrd version
+
+2007-07-20 22:20  oetiker
+
+       * src/rrd_format.h: we have a new holtwinders aggregation fucntion,
+         so we have a new version ...
+
+2007-07-20 22:19  oetiker
+
+       * configure.ac: check for fadvise all the time
+
+2007-07-20 22:16  oetiker
+
+       * doc/rrdcreate.pod: better docs on the aggregate functions
+
+2007-07-18 22:02  oetiker
+
+       * NEWS: added note on locale
+
+2007-07-18 21:59  oetiker
+
+       * src/rrd_graph_helper.c: some more piechart removed
+
+2007-07-18 21:47  oetiker
+
+       * src/rrd_create.c, src/rrd_graph.c, src/rrd_rpncalc.c,
+         src/rrd_tune.c, src/rrd_update.c: make sure all ascii to float
+         parsing uses LC_NUMERIC = C so that we do not stuble on locales
+         confusing the , with a .
+
+2007-07-18 00:30  oetiker
+
+       * src/rrd_create.c, src/rrd_open.c, src/rrd_tool.h,
+         src/rrd_update.c: * rrd_open: rrd_close does not purge file from
+         cache * rrd_open: new function rrd_dontneed for purging un-needed
+         pages from core * rrd_open: in linux at least only fadivse
+         DONTNEED has the power to purge pages from cache, so letst call
+         madvise as well as fadvise * rrd_create: uses open/write/close
+         now, flushes file to disk and keeps only hot pages in core *
+         rrd_update: keeps only hot pages in core * configure enables
+         FADVISE even when mmap is in use
+
+2007-07-17 21:46  oetiker
+
+       * src/rrd_open.c, src/rrd_resize.c: added comment on float cookie
+
+2007-07-16 06:37  oetiker
+
+       * bindings/ruby/main.c: fix for fetch in ruby bindings and support
+         for info added.
+
+2007-07-12 20:33  oetiker
+
+       * doc/rrdtutorial.pod: improve wording
+
+2007-07-12 20:33  oetiker
+
+       * configure.ac: fix tcl build settup
+
+2007-07-11 23:08  oetiker
+
+       * src/rrd_create.c: usr rrd_free for freeing the rrd structs ...
+         vito caputo
+
+2007-07-05 15:19  oetiker
+
+       * src/rrd_graph_helper.c: prevent potential segfaults on boxes where
+         time_t is not long
+
+2007-06-18 18:25  oetiker
+
+       * src/rrd_cgi.c, src/rrd_graph.c, src/rrd_tune.c, src/rrd_xport.c:
+         fix indentation
+
+2007-06-18 16:05  oetiker
+
+       * configure.ac, src/parsetime.c, src/rrd_cgi.c, src/rrd_create.c,
+         src/rrd_fetch.c, src/rrd_first.c, src/rrd_getopt.c,
+         src/rrd_getopt1.c, src/rrd_graph.c, src/rrd_open.c,
+         src/rrd_restore.c, src/rrd_thread_safe.c, src/rrd_tune.c,
+         src/rrd_update.c, src/rrd_xport.c: Bernhard Fischer: - move
+         several static struct option out of loops and makes them
+         non-static - moves some functions from old-style definitions into
+         new-style definitions
+
+2007-06-16 23:20  oetiker
+
+       * CONTRIBUTORS: Bernhard is not Benrard
+
+2007-06-15 21:49  oetiker
+
+       * NEWS: notes on evans contribs
+
+2007-06-15 21:41  oetiker
+
+       * rrdtool.spec: rrdtool.spec from Jarod "redhat" Wilson
+
+2007-06-15 08:09  oetiker
+
+       * CONTRIBUTORS: updated contributors
+
+2007-06-15 08:01  oetiker
+
+       * NEWS: added note on TEXTALIGN
+
+2007-06-15 07:59  oetiker
+
+       * doc/rrdcreate.pod, doc/rrdtune.pod, src/Makefile.am,
+         src/rrd_create.c, src/rrd_dump.c, src/rrd_format.c,
+         src/rrd_format.h, src/rrd_graph.c, src/rrd_hw.c,
+         src/rrd_hw_math.c, src/rrd_hw_math.h, src/rrd_hw_update.c,
+         src/rrd_hw_update.h, src/rrd_info.c, src/rrd_restore.c,
+         src/rrd_tune.c, src/rrd_update.c: There are two popular variants
+         of the Holt-Winters forecasting method; RRDtool supports the
+         "additive" method, which means that seasonal variation is simply
+         added to the baseline. For our application, it would be more
+         appropriate to use the "multiplicative" Holt-Winters method, where
+         seasonal variation is a coefficient multiplied by the baseline.
+         Quick example to illustrate the difference: if the average doubles
+         season-over-season, the additive method would predict the delta
+         between min and max to be constant, whereas the multiplicative
+         method would predict the delta to double as well. Attached is a
+         patch against trunk to support the multiplicative method. I've
+         done this with a new consolidation function, MHWPREDICT, which is
+         essentially interchangeable with HWPREDICT. There is a noticeable
+         improvement in prediction deviations for certain types of
+         functions; the attachments show HWPREDICT and MHWPREDICT
+         predictions for a function with an x*sin(x) component. Because
+         HWPREDICT and MHWPREDICT differ only in their equations, I've
+         factored out their math into rrd_hw_math.c. The appropriate
+         smoothing functions are passed to the update functions in a
+         container of function pointers, which are called where
+         appropriate. Thus the additive and multiplicative methods use the
+         same update functions, and the right equations are evaluated
+         without having flag checks everywhere. This approach, I think,
+         makes the algorithms quite clear, with minimal duplicate code. I
+         have moved update_hwpredict, update_seasonal, update_devpredict,
+         update_devseasonal, and update_failures into a separate file,
+         rrd_hw_update.c, with some slight refactoring related to
+         rrd_hw_math.c. I ran some regression tests against trunk to make
+         sure I didn't break anything with the existing HWPREDICT code.
+         MHWPREDICT uses the same deviation smoothing and failure detection
+         algorithms as HWPREDICT. Some helpful references on the
+         multiplicative Holt-Winters method:
+         http://www.it.iitb.ac.in/~praj/acads/seminar/04329008_ExponentialSmoothing.pdf
+         (a student's quick overview of additive vs. multiplicative HW)
+         http://ideas.repec.org/p/msh/ebswps/1999-1.html (paper on
+         variations to the multiplicative Holt-Winters, including variance
+         calculations; FYI, my implementation uses "Model 1") My employer
+         and the owner of this patch (IMVU, Inc.) is happy to license it
+         under the same terms as RRDtool, i.e. give it to the project. --
+         Evan Miller emiller imvu.com
+
+2007-06-15 06:43  oetiker
+
+       * src/rrd.h: oops missed to update the in memory output interface
+         here
+
+2007-06-15 06:28  oetiker
+
+       * src/rrd.h, src/rrd_graph.c, src/rrd_graph.h: added interface to
+         get rendered image via a pointer to allocated memory ... Evan
+         Miller emmiller gmail.com
+
+2007-06-15 06:12  oetiker
+
+       * configure.ac: improve fontnaming
+
+2007-06-14 20:30  oetiker
+
+       * bindings/ruby/main.c, src/rrd_graph.c, src/rrd_graph_helper.c,
+         src/rrd_rpncalc.c: fixed indentation
+
+2007-06-14 20:28  oetiker
+
+       * doc/rrdgraph_graph.pod, src/rrd_graph.c, src/rrd_graph.h,
+         src/rrd_graph_helper.c: added TEXTALIGN command to change the
+         default text alignment
+
+2007-06-13 16:53  oetiker
+
+       * bindings/tcl/Makefile.am, bindings/tcl/tclrrd.c: fixed tcl
+         includes
+
+2007-06-13 16:51  oetiker
+
+       * bindings/ruby/main.c: be more helpful when raising rb_eTypeError
+         in string_arr string_arr_new(VALUE rb_strings). This patch
+         indicates which index is in error as well as the type you are
+         erroneously passing. -- anonymous
+
+2007-06-12 20:36  oetiker
+
+       * src/rrd_update.c: Bernhard Fischer: - fix nulling the updvals -
+         cosmetic change to move the option struct out of the loop. - need
+         to operate on a copy of optarg
+
+2007-06-11 19:45  oetiker
+
+       * doc/rrdgraph_rpn.pod, src/rrd_rpncalc.c, src/rrd_rpncalc.h: added
+         TRENDNAN function -- Timo Stripf
+
+2007-06-11 19:45  oetiker
+
+       * src/rrd_graph.c: allow output to stdout -- Timo Stripf
+
+2007-06-11 16:49  oetiker
+
+       * NEWS: added more news
+
+2007-06-11 16:34  oetiker
+
+       * doc/rrdgraph.pod, src/rrd_graph.c: fixed indentation, added
+         documentation note on gridfitting.
+
+2007-06-11 16:33  oetiker
+
+       * src/rrd_graph.c: fix arrow locations
+
+2007-06-11 16:20  oetiker
+
+       * src/rrd_graph.c: disable gridfitting for vector formats
+
+2007-06-11 16:14  oetiker
+
+       * src/rrd_graph.c, src/rrd_graph.h: make pdf output work
+
+2007-06-11 15:32  oetiker
+
+       * NEWS: added detail
+
+2007-06-11 15:11  oetiker
+
+       * NEWS, configure.ac, doc/rrdgraph.pod, src/Makefile.am,
+         src/rrd_gfx.c, src/rrd_gfx.h, src/rrd_graph.c, src/rrd_graph.h,
+         src/rrd_graph_helper.c: --font-render-mode is back, and there is
+         also --graph-render-mode now. It allows to enable mono graphs that
+         look strikingly like rrdtool 1.0.x --tobi
+
+2007-06-11 13:36  oetiker
+
+       * NEWS, src/rrd_update.c: Bernhard Fischer: - NEWS mention the new
+         file accessors - rrd_update.c: remove unused some cruft
+
+2007-06-11 10:09  oetiker
+
+       * src/rrd_update.c: Bernhard Fischer: - fix maintaining our file-pos
+         when we have to wrap the rra_ptr in update(). - no need to update
+         the header-data a second time for the mmap case.
+
+2007-06-11 00:23  oetiker
+
+       * NEWS: updated news
+
+2007-06-11 00:22  oetiker
+
+       * configure.ac, doc/rrdgraph.pod, src/Makefile.am: * added some
+         documentation * updated version number
+
+2007-06-10 23:55  oetiker
+
+       * acinclude.m4, configure.ac, src/Makefile.am, src/art_rgba_svp.c,
+         src/art_rgba_svp.h, src/rrd_afm.c, src/rrd_afm.h,
+         src/rrd_afm_data.c, src/rrd_afm_data.h, src/rrd_gfx.c,
+         src/rrd_gfx.h, src/rrd_graph.c, src/rrd_graph.h,
+         src/rrd_graph_helper.c: switched graphics library from arts to
+         cairo+pango
+
+2007-06-04 11:15  oetiker
+
+       * configure.ac, src/Makefile.am: Bernhard Fischer: - new configure
+         option --enable-static-programs
+
+2007-06-01 19:11  oetiker
+
+       * src/rrd_open.c, src/rrd_resize.c: Bernhard: - implement resize
+         SHRINK for FD (mmap is to be done) - indent
+
+2007-06-01 17:59  oetiker
+
+       * src/rrd_graph.c: --full-size-mode with and without --no-legend
+         should work now -- Matthew Chambers
+
+2007-06-01 17:35  oetiker
+
+       * src/rrd_open.c, src/rrd_resize.c: Bernhard - fill the file with
+         DNAN and add the remaining data in after the fact ...
+
+2007-06-01 17:34  oetiker
+
+       * src/rrd_open.c, src/rrd_resize.c: Bernhard Fischer - implement
+         resize, growing part. truncation is to be done.
+
+2007-06-01 09:10  oetiker
+
+       * src/rrd_cgi.c, src/rrd_graph_helper.c, src/rrd_open.c: Bernhard
+         Fischer - use 'z' length modifier when printing size_t - add a
+         cast to __rrd_read and document why it is there - add RANDOM hint
+         for the header
+
+2007-05-31 18:47  oetiker
+
+       * src/rrd_open.c: Bernhard: - plug tiny mem-leak in error path of
+         rrd_close where freeing the rrd_file was forgotten. - improve two
+         error messages - use CHECK_MADVISE_OVERLAPS per default
 
-2008-09-08 22:14  oetiker
+2007-05-30 19:56  oetiker
 
-       * branches/1.3/website/navbar.inc: added forum
+       * src/rrd_open.c, src/rrd_update.c: fix rrd_write -- Bernhard
+         Fischer
 
-2008-09-08 22:14  oetiker
+2007-05-30 12:41  oetiker
 
-       * branches/1.3/website/award-white.png,
-         branches/1.3/website/bin/pod2wml.classic.sh,
-         branches/1.3/website/forum.wml,
-         branches/1.3/website/gallery/index.en.html,
-         branches/1.3/website/inc/favicon.ico,
-         branches/1.3/website/inc/happy-tobi.png,
-         branches/1.3/website/inc/rrdtool-gold.png,
-         branches/1.3/website/inc/template.inc,
-         branches/1.3/website/oscon-120x60.gif,
-         branches/1.3/website/stream-pop.png: added more bits
+       * src/rrd_fetch.c, src/rrd_first.c, src/rrd_graph.c,
+         src/rrd_graph.h, src/rrd_info.c, src/rrd_lastupdate.c,
+         src/rrd_open.c, src/rrd_resize.c: fix indenting ... again
 
-2008-09-08 22:08  oetiker
+2007-05-30 12:39  oetiker
 
-       * branches/1.3/website/.wmkrc, branches/1.3/website/.wmlrc: they
-         should be in svn I guess
+       * src/rrd_create.c, src/rrd_dump.c, src/rrd_fetch.c,
+         src/rrd_first.c, src/rrd_info.c, src/rrd_last.c,
+         src/rrd_lastupdate.c, src/rrd_open.c, src/rrd_resize.c,
+         src/rrd_tune.c, src/rrd_update.c: From Bernhard Fischer -
+         rrd_close(): call close on the file and use rrd_close consistently
+         - clean up some error paths. The fadvise error path is leaking
+         memory (see XXX in these spots).
 
-2008-09-08 22:04  oetiker
+2007-05-30 05:23  oetiker
 
-       * branches/1.3/website/download.wml,
-         branches/1.3/website/inc/template.inc: clean up mirror list
+       * CONTRIBUTORS, doc/rrdgraph.pod, src/rrd_graph.c, src/rrd_graph.h:
+         switch for rrd_graph to specify the outer-size of the graph and
+         not just the size of the canvas: --full-size-mode --
+         matthew.chambers vanderbilt.edu
 
-2008-09-07 10:23  oetiker
+2007-05-29 21:29  oetiker
 
-       * branches/1.3/program: branching for 1.3
+       * configure.ac, examples/perftest.pl.in, src/rrd_hw.c,
+         src/rrd_last.c, src/rrd_lastupdate.c, src/rrd_open.c,
+         src/rrd_resize.c, src/rrd_tool.c, src/rrd_tune.c,
+         src/rrd_update.c: More updates from Bernhard Fischer - flag
+         rrd_resize's old file with RRD_COPY - cleanup error-handling
+         pathes in rrd_update and fix a few typos in comments -
+         rrd_close(): implement printing mincore results for the rrd if
+         DEBUG=2 was defined - rrd_open(): madvise start addresses need to
+         be page-aligned; implement alternative path to the fine-grained
+         (i.e. exact) madvise by flagging just the first two pages as
+         needed (see TWO_PAGES). Implement alternative path that records
+         the last madvise()ed area to avoid redundant calls to madvise() on
+         identical areas (due to page-alignment constraints) -- see
+         CHECK_MADVISE_OVERLAPS. Implement path for USE_DIRECT_IO. -
+         configure: add check for O_DIRECT flag to open(2). Add option
+         --enable-direct-io. Add _GNU_SOURCE to CFLAGS to silence warnings
+         about chroot which is marked LEGACY since SUSv2 and is a non POSIX
+         extension. Make checks for posix_fadvise() dependant on
+         --disable-mmap, since we do not need fadvise for the mmap case.
 
-2008-09-07 10:22  oetiker
+2007-05-25 15:24  oetiker
 
-       * branches/1.3/website: branche website
+       * src/rrd_stat.c: tobis old cruft removal program ...
+
+2007-05-25 13:14  oetiker
+
+       * src/rrd_dump.c, src/rrd_fetch.c, src/rrd_open.c, src/rrd_resize.c,
+         src/rrd_update.c: updates from Bernhard Fischer rep dot nop gmail
+         com - add some more rrd_sterror calls to failure paths. - make
+         rrdtool updatev work like 1.2.23 (i.e. multiple values are still
+         broken, but at least updating a single value works; see
+         http://oss.oetiker.ch/rrdtool-trac/ticket/8) - indent touched
+         files.
 
-2008-09-07 10:21  oetiker
+2007-05-25 13:12  oetiker
 
-       * branches/1.3: prepare for branching
+       * .indent.pro, Makefile.am, configure.ac, examples/perftest.pl.in,
+         src/rrd_dump.c, src/rrd_fetch.c, src/rrd_open.c, src/rrd_resize.c,
+         src/rrd_tool.h, src/rrd_update.c: Updates from Bernhard Fischer
+         rep dot nop gmail com - fix typo in rrd_fetch where rrd_read
+         result was checked against an incorrect size. - in rrd_fetch, drop
+         rrd_head_size in favour of rrd_file->header_len - in rrd_fetch,
+         make the message "post fetch" unambiguous (now past vs. post). -
+         change usage of param rdwr of rrd_open: allow for RRD_READONLY,
+         RRD_READWRITE, RRD_CREAT, RRD_READAHEAD; adjust callers
+         accordingly: + rrd_resize needs CREAT + rrd_dump may want
+         READAHEAD - implement FD based I/O in rrd_open, rrd_read,
+         rrd_write, rrd_seek. - in rrd_update, unify write_RRA_row(). -
+         sort | uniq the -T in .indent.pro (info_t was duplicated) - add
+         stub of an option to use O_DIRECT to the configury - in
+         Makefile.am, simplify the "indent" invocation of find: My find may
+         not support "-o" resp. "-or" nor braces. Using -name "*.[ch]"
+         works everywhere, AFAIK.
+
+2007-05-24 08:26  oetiker
+
+       * configure.ac: use proper preprocessor directives for the
+         config-checks. -- tobi
+
+2007-05-24 07:21  oetiker
+
+       * configure.ac: fixed version number for development
+
+2007-05-24 06:16  oetiker
+
+       * .indent.pro, Makefile.am, bindings/python/rrd_extra.h,
+         bindings/python/rrdtoolmodule.c, bindings/ruby/main.c,
+         bindings/tcl/tclrrd.c, libraries/afm/test-afm.c, src/.indent.pro,
+         src/hash_32.c, src/parsetime.c, src/rrd.h, src/rrd_afm.c,
+         src/rrd_create.c, src/rrd_dump.c, src/rrd_fetch.c, src/rrd_gfx.c,
+         src/rrd_gfx.h, src/rrd_graph.c, src/rrd_graph_helper.c,
+         src/rrd_hw.c, src/rrd_hw.h, src/rrd_info.c, src/rrd_open.c,
+         src/rrd_rpncalc.c, src/rrd_rpncalc.h, src/rrd_tool.h,
+         src/rrd_update.c, src/rrd_xport.c, win32/config.h: indent all the
+         rest of the code, and add some typedefs to indent.pro there is now
+         a indent makefile target
+
+2007-05-23 21:40  oetiker
+
+       * src/gdpng.c: removed superfluouse code
+
+2007-05-23 21:39  oetiker
+
+       * src/.indent.pro: added more indenting rules
+
+2007-05-23 21:33  oetiker
+
+       * src/.indent.pro, src/art_rgba_svp.c, src/art_rgba_svp.h,
+         src/fnv.h, src/gdpng.c, src/hash_32.c, src/parsetime.c,
+         src/pngsize.c, src/rrd.h, src/rrd_afm.c, src/rrd_afm.h,
+         src/rrd_afm_data.c, src/rrd_afm_data.h, src/rrd_cgi.c,
+         src/rrd_create.c, src/rrd_diff.c, src/rrd_dump.c, src/rrd_error.c,
+         src/rrd_fetch.c, src/rrd_first.c, src/rrd_format.c,
+         src/rrd_format.h, src/rrd_getopt.c, src/rrd_getopt.h,
+         src/rrd_getopt1.c, src/rrd_gfx.c, src/rrd_gfx.h, src/rrd_graph.c,
+         src/rrd_graph.h, src/rrd_graph_helper.c, src/rrd_hw.c,
+         src/rrd_hw.h, src/rrd_info.c, src/rrd_is_thread_safe.h,
+         src/rrd_last.c, src/rrd_lastupdate.c, src/rrd_nan_inf.c,
+         src/rrd_nan_inf.h, src/rrd_not_thread_safe.c, src/rrd_open.c,
+         src/rrd_resize.c, src/rrd_restore.c, src/rrd_rpncalc.c,
+         src/rrd_rpncalc.h, src/rrd_stat.c, src/rrd_thread_safe.c,
+         src/rrd_thread_safe_nt.c, src/rrd_tool.c, src/rrd_tool.h,
+         src/rrd_tune.c, src/rrd_update.c, src/rrd_version.c,
+         src/rrd_xport.c, src/rrd_xport.h, src/rrdupdate.c, src/strftime.c,
+         src/strftime.h, src/win32comp.c: reindented everything according
+         to .indent.pro
+
+2007-05-23 20:57  oetiker
+
+       * .indent.pro, src/.indent.pro: profile must be in the source
+         directory to work
+
+2007-05-23 20:57  oetiker
+
+       * .indent.pro: tabs be gone!
+
+2007-05-23 20:42  oetiker
+
+       * configure.ac, src/Makefile.am, src/rrd.h, src/rrd_dump.c,
+         src/rrd_fetch.c, src/rrd_first.c, src/rrd_hw.c, src/rrd_hw.h,
+         src/rrd_info.c, src/rrd_last.c, src/rrd_lastupdate.c,
+         src/rrd_open.c, src/rrd_resize.c, src/rrd_restore.c,
+         src/rrd_stat.c, src/rrd_thread_safe.c, src/rrd_tool.h,
+         src/rrd_tune.c, src/rrd_update.c, src/unused.h: * progress in
+         moving all the fileaccess over to a wrapper system that can do fd
+         based and mmap based fileaccess transparently ... * small fixes
+         left and right to improve code quality and stability. -- Bernhard
+         Fischer rep dot nop gmail com
+
+2007-05-23 16:10  oetiker
+
+       * .indent.pro: we are going to use indent from now on to keep code
+         indenting consistent throughout the project
+
+2007-05-23 16:08  oetiker
+
+       * .: new trunk based on current 1.2