From noreply at r-forge.r-project.org Wed Apr 2 07:34:40 2014 From: noreply at r-forge.r-project.org (noreply at r-forge.r-project.org) Date: Wed, 2 Apr 2014 07:34:40 +0200 (CEST) Subject: [Rprotobuf-commits] r892 - in pkg: . tests Message-ID: <20140402053440.CE037187069@r-forge.r-project.org> Author: murray Date: 2014-04-02 07:34:40 +0200 (Wed, 02 Apr 2014) New Revision: 892 Modified: pkg/ChangeLog pkg/tests/runUnitTests.R Log: Add check to ensure there are no errors, in addition to no failures, in the test driver to ensure R CMD CHECK fails. Rcpp 0.11.1 now doesn't want S4 objects to be R_NilValue which we previously depended on. RProtoBuf 0.4.1 has this bug and the unit test even gives a runtime error, but this driver wasn't reporting the failure. Modified: pkg/ChangeLog =================================================================== --- pkg/ChangeLog 2014-03-25 17:41:37 UTC (rev 891) +++ pkg/ChangeLog 2014-04-02 05:34:40 UTC (rev 892) @@ -1,3 +1,8 @@ +2014-04-01 Murray Stokely + + * tests/runUnitTests.R: Add improved checks to ensure R CMD CHECK + fails if there are any errors in the tests, not just failures. + 2014-03-25 Dirk Eddelbuettel * DESCRIPTION (Version): Release 0.4.1 Modified: pkg/tests/runUnitTests.R =================================================================== --- pkg/tests/runUnitTests.R 2014-03-25 17:41:37 UTC (rev 891) +++ pkg/tests/runUnitTests.R 2014-04-02 05:34:40 UTC (rev 892) @@ -32,5 +32,11 @@ ## Return success or failure to R CMD CHECK if (getErrors(tests)$nFail > 0) { - stop("TEST FAILED!") + stop("TEST FAILED!") } +if (getErrors(tests)$nErr > 0) { + stop("TEST HAD ERRORS!") +} +if (getErrors(tests)$nTestFunc < 1) { + stop("NO TEST FUNCTIONS RUN!") +} From noreply at r-forge.r-project.org Wed Apr 2 19:45:23 2014 From: noreply at r-forge.r-project.org (noreply at r-forge.r-project.org) Date: Wed, 2 Apr 2014 19:45:23 +0200 (CEST) Subject: [Rprotobuf-commits] r893 - pkg/src Message-ID: <20140402174523.C3981186BFF@r-forge.r-project.org> Author: murray Date: 2014-04-02 19:45:23 +0200 (Wed, 02 Apr 2014) New Revision: 893 Modified: pkg/src/S4_classes.h pkg/src/wrapper_EnumDescriptor.cpp Log: Two patches from Karl Millar : * src/S4_classes.h (rprotobuf): Change handling of S4_EnumDescriptor when passed a NULL pointer to just create empty object with empty name and full_name rather than setting to R_NilValue. * src/wrapper_EnumDescriptor.cpp (rprotobuf): Change return value of getValue* functions on EnumDescriptor and return an EnumValueDescriptor or R_NilValue on failure. Modified: pkg/src/S4_classes.h =================================================================== --- pkg/src/S4_classes.h 2014-04-02 05:34:40 UTC (rev 892) +++ pkg/src/S4_classes.h 2014-04-02 17:45:23 UTC (rev 893) @@ -43,14 +43,14 @@ class S4_EnumValueDescriptor : public Rcpp::S4 { public: S4_EnumValueDescriptor(const GPB::EnumValueDescriptor* d) : S4("EnumValueDescriptor") { - + slot("pointer") = Rcpp::XPtr( + const_cast(d), false); if (d) { - slot("pointer") = Rcpp::XPtr( - const_cast(d), false); slot("name") = d->name(); slot("full_name") = d->full_name(); } else { - SetSexp(R_NilValue); + slot("name") = Rcpp::StringVector(0); + slot("full_name") = Rcpp::StringVector(0); } } Modified: pkg/src/wrapper_EnumDescriptor.cpp =================================================================== --- pkg/src/wrapper_EnumDescriptor.cpp 2014-04-02 05:34:40 UTC (rev 892) +++ pkg/src/wrapper_EnumDescriptor.cpp 2014-04-02 17:45:23 UTC (rev 893) @@ -34,22 +34,29 @@ return S4_Descriptor(d->containing_type()); } -RPB_FUNCTION_2(S4_EnumValueDescriptor, METHOD(getValueByIndex), Rcpp::XPtr d, +RPB_FUNCTION_2(SEXP, METHOD(getValueByIndex), Rcpp::XPtr d, int index) { if ((index >= 0) && (index < d->value_count())) { return S4_EnumValueDescriptor(d->value(index)); } else { - return S4_EnumValueDescriptor(NULL); + return R_NilValue; } } -RPB_FUNCTION_2(S4_EnumValueDescriptor, METHOD(getValueByNumber), Rcpp::XPtr d, +RPB_FUNCTION_2(SEXP, METHOD(getValueByNumber), Rcpp::XPtr d, int i) { - return S4_EnumValueDescriptor(d->FindValueByNumber(i)); + const GPB::EnumValueDescriptor* descriptor = d->FindValueByNumber(i); + if (descriptor) + return S4_EnumValueDescriptor(descriptor); + return R_NilValue; } -RPB_FUNCTION_2(S4_EnumValueDescriptor, METHOD(getValueByName), Rcpp::XPtr d, + +RPB_FUNCTION_2(SEXP, METHOD(getValueByName), Rcpp::XPtr d, std::string name) { - return S4_EnumValueDescriptor(d->FindValueByName(name)); + const GPB::EnumValueDescriptor* descriptor = d->FindValueByName(name); + if (descriptor) + return S4_EnumValueDescriptor(descriptor); + return R_NilValue; } RPB_FUNCTION_1(S4_Message, METHOD(as_Message), Rcpp::XPtr d) { From noreply at r-forge.r-project.org Wed Apr 2 19:46:22 2014 From: noreply at r-forge.r-project.org (noreply at r-forge.r-project.org) Date: Wed, 2 Apr 2014 19:46:22 +0200 (CEST) Subject: [Rprotobuf-commits] r894 - pkg Message-ID: <20140402174622.C1CBD186E30@r-forge.r-project.org> Author: murray Date: 2014-04-02 19:46:22 +0200 (Wed, 02 Apr 2014) New Revision: 894 Modified: pkg/ChangeLog pkg/DESCRIPTION Log: Update version to 0.4.1.1 and update ChangeLog. Modified: pkg/ChangeLog =================================================================== --- pkg/ChangeLog 2014-04-02 17:45:23 UTC (rev 893) +++ pkg/ChangeLog 2014-04-02 17:46:22 UTC (rev 894) @@ -1,3 +1,14 @@ +2014-04-02 Murray Stokely + + Two patches from Karl Millar : + * src/S4_classes.h (rprotobuf): Change handling of + S4_EnumDescriptor when passed a NULL pointer to just create empty + object with empty name and full_name rather than setting to + R_NilValue. + * src/wrapper_EnumDescriptor.cpp (rprotobuf): Change return value + of getValue* functions on EnumDescriptor and return an + EnumValueDescriptor or R_NilValue on failure. + 2014-04-01 Murray Stokely * tests/runUnitTests.R: Add improved checks to ensure R CMD CHECK Modified: pkg/DESCRIPTION =================================================================== --- pkg/DESCRIPTION 2014-04-02 17:45:23 UTC (rev 893) +++ pkg/DESCRIPTION 2014-04-02 17:46:22 UTC (rev 894) @@ -1,5 +1,5 @@ Package: RProtoBuf -Version: 0.4.1 +Version: 0.4.1.1 Date: $Date$ Author: Romain Francois, Dirk Eddelbuettel, Murray Stokely and Jeroen Ooms Maintainer: Dirk Eddelbuettel