The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
Changes 07
MANIFEST 32
MANIFEST.SKIP 02
META.json 22
META.yml 88
MYMETA.json 480
MYMETA.yml 260
README 11
lib/RRDTool/OO.pm 12
t/001Basic.t 05
t/008Mult.t 04
t/inc/round.t 010
12 files changed (This is a version diff) 8943
@@ -1,3 +1,10 @@
+0.35  (07/20/2014)
+    (ms) Fix for [rt.cpan.org #97322], now rounding results to cope with
+         floating point inaccuracies in rrdtool. Reported by Andreas König.
+
+0.34  (06/26/2014)
+    (ms) Added disable_rrdtool_tag option as suggested by Sun Guonian.
+
 0.33  (07/08/2013)
     (ms) Florian Eckert reported that graph() modified 2nd level
          entries of the options array passed to it. Used Storable::clone
@@ -6,9 +6,6 @@ lib/RRDTool/OO.pm
 Makefile.PL
 MANIFEST			This list of files
 MANIFEST.SKIP
-META.yml
-MYMETA.json
-MYMETA.yml
 README
 t/001Basic.t
 t/002Pod.t
@@ -23,4 +20,6 @@ t/010ABD.t
 t/011Bugs.t
 t/012Xport.t
 t/013Clone.t
+t/inc/round.t
+META.yml                                 Module YAML meta-data (added by MakeMaker)
 META.json                                Module JSON meta-data (added by MakeMaker)
@@ -7,3 +7,5 @@ docs
 MANIFEST.bak
 adm/release
 .git
+MYMETA.yml
+MYMETA.json
@@ -4,7 +4,7 @@
       "Mike Schilli <m@perlmeister.com>"
    ],
    "dynamic_config" : 1,
-   "generated_by" : "ExtUtils::MakeMaker version 6.62, CPAN::Meta::Converter version 2.120351",
+   "generated_by" : "ExtUtils::MakeMaker version 6.98, CPAN::Meta::Converter version 2.141170",
    "license" : [
       "unknown"
    ],
@@ -44,5 +44,5 @@
          "url" : "http://github.com/mschilli/rrdtool-oo-perl"
       }
    },
-   "version" : "0.33"
+   "version" : "0.35"
 }
@@ -3,24 +3,24 @@ abstract: 'Object-oriented interface to RRDTool'
 author:
   - 'Mike Schilli <m@perlmeister.com>'
 build_requires:
-  ExtUtils::MakeMaker: 0
+  ExtUtils::MakeMaker: '0'
 configure_requires:
-  ExtUtils::MakeMaker: 0
+  ExtUtils::MakeMaker: '0'
 dynamic_config: 1
-generated_by: 'ExtUtils::MakeMaker version 6.62, CPAN::Meta::Converter version 2.120351'
+generated_by: 'ExtUtils::MakeMaker version 6.98, CPAN::Meta::Converter version 2.141170'
 license: unknown
 meta-spec:
   url: http://module-build.sourceforge.net/META-spec-v1.4.html
-  version: 1.4
+  version: '1.4'
 name: RRDTool-OO
 no_index:
   directory:
     - t
     - inc
 requires:
-  Log::Log4perl: 0.40
-  RRDs: 0
-  Storable: 0
+  Log::Log4perl: '0.40'
+  RRDs: '0'
+  Storable: '0'
 resources:
   repository: http://github.com/mschilli/rrdtool-oo-perl
-version: 0.33
+version: '0.35'
@@ -1,48 +0,0 @@
-{
-   "abstract" : "Object-oriented interface to RRDTool",
-   "author" : [
-      "Mike Schilli <m@perlmeister.com>"
-   ],
-   "dynamic_config" : 0,
-   "generated_by" : "ExtUtils::MakeMaker version 6.62, CPAN::Meta::Converter version 2.120351",
-   "license" : [
-      "unknown"
-   ],
-   "meta-spec" : {
-      "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec",
-      "version" : "2"
-   },
-   "name" : "RRDTool-OO",
-   "no_index" : {
-      "directory" : [
-         "t",
-         "inc"
-      ]
-   },
-   "prereqs" : {
-      "build" : {
-         "requires" : {
-            "ExtUtils::MakeMaker" : "0"
-         }
-      },
-      "configure" : {
-         "requires" : {
-            "ExtUtils::MakeMaker" : "0"
-         }
-      },
-      "runtime" : {
-         "requires" : {
-            "Log::Log4perl" : "0.40",
-            "RRDs" : "0",
-            "Storable" : "0"
-         }
-      }
-   },
-   "release_status" : "stable",
-   "resources" : {
-      "repository" : {
-         "url" : "http://github.com/mschilli/rrdtool-oo-perl"
-      }
-   },
-   "version" : "0.33"
-}
@@ -1,26 +0,0 @@
----
-abstract: 'Object-oriented interface to RRDTool'
-author:
-  - 'Mike Schilli <m@perlmeister.com>'
-build_requires:
-  ExtUtils::MakeMaker: 0
-configure_requires:
-  ExtUtils::MakeMaker: 0
-dynamic_config: 0
-generated_by: 'ExtUtils::MakeMaker version 6.62, CPAN::Meta::Converter version 2.120351'
-license: unknown
-meta-spec:
-  url: http://module-build.sourceforge.net/META-spec-v1.4.html
-  version: 1.4
-name: RRDTool-OO
-no_index:
-  directory:
-    - t
-    - inc
-requires:
-  Log::Log4perl: 0.40
-  RRDs: 0
-  Storable: 0
-resources:
-  repository: http://github.com/mschilli/rrdtool-oo-perl
-version: 0.33
@@ -1,5 +1,5 @@
 ######################################################################
-    RRDTool::OO 0.33
+    RRDTool::OO 0.35
 ######################################################################
 
 NAME
@@ -9,7 +9,7 @@ use Storable;
 use Data::Dumper;
 use Log::Log4perl qw(:easy);
 
-our $VERSION = '0.33';
+our $VERSION = '0.35';
 
    # Define the mandatory and optional parameters for every method.
 our $OPTIONS = {
@@ -53,6 +53,7 @@ our $OPTIONS = {
                                      no_gridfit font_render_mode
                                      font_smoothing_threshold slope_mode
                                      tabwidth units watermark zoom
+                                     disable_rrdtool_tag
                                     )],
                     draw      => {
                       mandatory => [qw()],
@@ -2,6 +2,9 @@
 use Test::More qw(no_plan);
 use RRDTool::OO;
 use POSIX qw(setlocale LC_ALL);
+use FindBin qw( $Bin );
+
+require "$Bin/inc/round.t";
 
 use Log::Log4perl qw(:easy);
 #Log::Log4perl->easy_init({level => $INFO, layout => "%L: %m%n", 
@@ -103,6 +106,8 @@ $rrd->fetch_skip_undef();
 my $count = 0;
 while(my($time, $val) = $rrd->fetch_next()) {
     last unless defined $val;
+      # rrdtool has some inaccurracies [rt.cpan.org #97322]
+    $val = roundfloat( $val );
     is("$time:$val", shift @expected, "match expected value");
     $count++;
 }
@@ -2,6 +2,9 @@
 
 use Test::More qw(no_plan);
 use RRDTool::OO;
+use FindBin qw( $Bin );
+
+require "$Bin/inc/round.t";
 
 use Log::Log4perl qw(:easy);
 
@@ -67,6 +70,7 @@ $rrd->fetch_skip_undef();
 my $count = 0;
 while(my($time, $val1, $val2) = $rrd->fetch_next()) {
     last unless defined $val1;
+    $val1 = roundfloat( $val1 );
     is("$time:$val1", shift @expected_val1, "match expected value");
     is("$time:$val2", shift @expected_val2, "match expected value");
     $count++;
@@ -0,0 +1,10 @@
+
+###########################################
+sub roundfloat {
+###########################################
+    my( $float ) = @_;
+
+    return ( sprintf "%.3f", $float ) * 1.0;
+}
+
+1;