diff -Nru adaptivetau-2.2-2/debian/changelog adaptivetau-2.2-3/debian/changelog --- adaptivetau-2.2-2/debian/changelog 2019-03-23 22:30:13.000000000 +0000 +++ adaptivetau-2.2-3/debian/changelog 2019-03-23 22:30:13.000000000 +0000 @@ -1,15 +1,22 @@ -adaptivetau (2.2-2-1cran1ppabionic0) bionic; urgency=medium +adaptivetau (2.2-3-1cran1ppabionic0) bionic; urgency=medium * Compilation for Ubuntu 18.04.2 LTS * Build for c2d4u for R 3.5.0 - -- Michael Rutter Sun, 17 Mar 2019 02:35:23 +0000 + -- Michael Rutter Sat, 23 Mar 2019 22:28:09 +0000 + +adaptivetau (2.2-3-1cran1) testing; urgency=low + + * cran2deb svn: 362M with DB version 1. + + -- cran2deb4ubuntu Sat, 23 Mar 2019 08:28:20 -0400 + adaptivetau (2.2-2-1cran1) testing; urgency=low * cran2deb svn: 362M with DB version 1. - -- cran2deb4ubuntu Sat, 16 Mar 2019 11:21:02 -0400 + -- cran2deb4ubuntu Sat, 16 Mar 2019 11:21:09 -0400 adaptivetau (2.2-1-1cran1) testing; urgency=low diff -Nru adaptivetau-2.2-2/DESCRIPTION adaptivetau-2.2-3/DESCRIPTION --- adaptivetau-2.2-2/DESCRIPTION 2019-03-12 09:57:14.000000000 +0000 +++ adaptivetau-2.2-3/DESCRIPTION 2019-03-19 22:53:31.000000000 +0000 @@ -1,8 +1,8 @@ Package: adaptivetau Type: Package Title: Tau-Leaping Stochastic Simulation -Version: 2.2-2 -Date: 2019-3-4 +Version: 2.2-3 +Date: 2019-3-19 Author: Philip Johnson Maintainer: Philip Johnson Depends: R (>= 2.10.1) @@ -16,6 +16,6 @@ Johnson and NIH R01-AI049334 to Rustom Antia. License: GPL (>= 3) NeedsCompilation: yes -Packaged: 2019-03-09 04:20:55 UTC; pjohnson +Packaged: 2019-03-19 19:49:54 UTC; pjohnson Repository: CRAN -Date/Publication: 2019-03-12 09:57:14 UTC +Date/Publication: 2019-03-19 22:53:31 UTC Binary files /tmp/tmphZfn1Q/lqNlPxLPdM/adaptivetau-2.2-2/inst/doc/adaptivetau.pdf and /tmp/tmphZfn1Q/Dh9F0Pybvj/adaptivetau-2.2-3/inst/doc/adaptivetau.pdf differ diff -Nru adaptivetau-2.2-2/MD5 adaptivetau-2.2-3/MD5 --- adaptivetau-2.2-2/MD5 2019-03-12 09:57:14.000000000 +0000 +++ adaptivetau-2.2-3/MD5 2019-03-19 22:53:31.000000000 +0000 @@ -1,16 +1,16 @@ -fdac0c1197740c0e63e21f7dc6d32cc6 *DESCRIPTION +31cac61dc35656c89948c086cab984ce *DESCRIPTION 2bd0651369b7404d27ae65905a6a84b0 *NAMESPACE -bdb2ba8a65bde7ad7ef7703c6062fbe5 *NEWS +ab52110363568201ff7541485a5f0e17 *NEWS c573f5bc605d3a945658cd70a537d029 *R/ssa.adaptivetau.R 5efc6f9208249037baf94d5329f0b6d7 *build/vignette.rds 4daeccd7391327a9cfbe025eda53ac51 *inst/doc/adaptivetau.R c5ec673c68dfce70027ef05a328347d6 *inst/doc/adaptivetau.Rnw -318ea7f1bbdd0c9c878c03d5c1c3fd65 *inst/doc/adaptivetau.pdf +c609f9e92ba4ce3ea31f042063a774ba *inst/doc/adaptivetau.pdf 65076f68f31935bc59033f831cd361a8 *man/ssa.adaptivetau.Rd 62a608472df9db9b95c60de91ebb2326 *man/ssa.exact.Rd ac31f3172a96e33eb3bee9c68d52b235 *man/ssa.maketrans.Rd 2a6f9e9e044a78154d3cfda5936d6f48 *src/Makevars -c910146f23e13e9077f9deb6701f2a2a *src/Rwrappers.h -8a29ea42ab078ac4920cfe4de505cd14 *src/adaptivetau.cpp +a32aa7b509b8720c7e6cd6e9f7dd958b *src/Rwrappers.h +57f78a6c5eb267b5a8b672fc0691c4a6 *src/adaptivetau.cpp c5ec673c68dfce70027ef05a328347d6 *vignettes/adaptivetau.Rnw 43d178a6c7c890cb1ba92d36d0e7638b *vignettes/refs.bib diff -Nru adaptivetau-2.2-2/NEWS adaptivetau-2.2-3/NEWS --- adaptivetau-2.2-2/NEWS 2019-03-04 16:41:53.000000000 +0000 +++ adaptivetau-2.2-3/NEWS 2019-03-19 19:49:42.000000000 +0000 @@ -1,4 +1,9 @@ ---------------------------- +Version 2.2-3 - 19 March 2019 +---------------------------- + - fix clang compiler error + +---------------------------- Version 2.2-2 - 4 March 2019 ---------------------------- - add "Gillespie stochastic simulation algorithm" keyword phrase to diff -Nru adaptivetau-2.2-2/src/adaptivetau.cpp adaptivetau-2.2-3/src/adaptivetau.cpp --- adaptivetau-2.2-2/src/adaptivetau.cpp 2019-03-09 04:20:55.000000000 +0000 +++ adaptivetau-2.2-3/src/adaptivetau.cpp 2019-03-19 19:49:54.000000000 +0000 @@ -1,4 +1,4 @@ -/* $Id: adaptivetau.cpp 328 2016-09-19 15:31:39Z pjohnson $ +/* $Id: adaptivetau.cpp 348 2019-03-19 19:49:49Z pjohnson $ -------------------------------------------------------------------------- C++ implementation of the "adaptive tau-leaping" algorithm described by Cao Y, Gillespie DT, Petzold LR. The Journal of Chemical Physics (2007). @@ -87,13 +87,13 @@ // allows easy calling of R function to calculate rates) m_NumStates = length(initVal); SEXP x; - PROTECT(x = allocVector(REALSXP, m_NumStates)); + x = PROTECT(allocVector(REALSXP, m_NumStates));//protected until ~CStochasticEqns copyVector(x, coerceVector(initVal,REALSXP)); if (isNull(getAttrib(initVal, R_NamesSymbol))) { m_VarNames = NULL; } else { SEXP namesO = PROTECT(getAttrib(initVal, R_NamesSymbol)); - PROTECT(m_VarNames = allocVector(STRSXP, length(namesO))); + m_VarNames = PROTECT(allocVector(STRSXP, length(namesO))); copyVector(m_VarNames, namesO); setAttrib(x, R_NamesSymbol, m_VarNames); UNPROTECT(2); @@ -104,7 +104,6 @@ // copy Nu matrix into my own sparse matrix data structure if (isMatrix(nu)) { //old matrix data structure CRMatrix mat(PROTECT(coerceVector(nu,INTSXP))); - UNPROTECT(1); m_Nu.resize(mat.ncol()); for (int i = 0; i < mat.nrow(); ++i) { for (int j = 0; j < mat.ncol(); ++j) { @@ -115,6 +114,7 @@ } } } + UNPROTECT(1); } else { //list (newer, sparse data structure) CRList list(nu); m_Nu.resize(list.size()); @@ -180,14 +180,14 @@ // prepare R function for evaluation by setting up arguments // (current X values, parameters, current time) SEXP s_time; - PROTECT(s_time = allocVector(REALSXP, 1)); + s_time = PROTECT(allocVector(REALSXP, 1));//protected until ~CStochasticEqns m_T = REAL(s_time); - PROTECT(m_RateFunc = lang4(rateFunc, x, params, s_time)); + m_RateFunc = PROTECT(lang4(rateFunc, x, params, s_time));//protected until ~CStochasticEqns if (!rateJacobianFunc || isNull(rateJacobianFunc)) { m_RateJacobianFunc = NULL; } else { PROTECT(m_RateJacobianFunc = lang4(rateJacobianFunc, x, - params, s_time)); + params, s_time)); //protected until ~CStochasticEqns } m_Rates = NULL; @@ -211,7 +211,7 @@ if (!maxTauFunc || isNull(maxTauFunc)) { m_MaxTauFunc = NULL; } else { - PROTECT(m_MaxTauFunc = lang4(maxTauFunc, x, params, s_time)); + PROTECT(m_MaxTauFunc = lang4(maxTauFunc, x, params, s_time));//protected until ~CStochasticEqns } //check initial conditions to make sure legit @@ -239,7 +239,7 @@ GetRNGstate(); } ~CStochasticEqns(void) { - int cnt = 3; + int cnt = 4; if (m_RateJacobianFunc != NULL) { ++cnt; } @@ -249,9 +249,6 @@ if (m_MaxTauFunc != NULL) { ++cnt; } - if (m_VarNames != NULL) { - ++cnt; - } UNPROTECT(cnt); } void SetTLParams(SEXP list) { @@ -356,13 +353,12 @@ CRList res(2); PROTECT(res); res.SetSEXP(0, PROTECT(GetTimeSeriesSEXP()), "dynamics"); - UNPROTECT(1); CRVector lastTrans(1); lastTrans[0] = (m_LastTransition < 0 || m_TransCats[m_LastTransition] != eHalting) ? NA_INTEGER : m_LastTransition+1; res.SetSEXP(1, lastTrans, "haltingTransition"); - UNPROTECT(1); + UNPROTECT(2); return res; } } @@ -471,9 +467,9 @@ // make sure our rates are protected! if (m_Rates != NULL) { UNPROTECT(1); + m_Rates = NULL; } - SEXP res = eval(m_RateFunc, R_EmptyEnv); - PROTECT(res); + SEXP res = PROTECT(eval(m_RateFunc, R_EmptyEnv)); m_Rates = REAL(res); if ((unsigned int) length(res) != m_Nu.size()) { diff -Nru adaptivetau-2.2-2/src/Rwrappers.h adaptivetau-2.2-3/src/Rwrappers.h --- adaptivetau-2.2-2/src/Rwrappers.h 2019-03-09 04:20:55.000000000 +0000 +++ adaptivetau-2.2-3/src/Rwrappers.h 2019-03-19 19:49:54.000000000 +0000 @@ -32,9 +32,11 @@ protected: //data must correspond to SEXP! CRVectorBase(SEXP v, Timpl* fconverter (SEXP x)) { + PROTECT(v); m_N = Rf_length(v); m_Data = fconverter(v); m_Sexp = v; + UNPROTECT(1); } public: int GetN(void) const {return m_N;} @@ -237,7 +239,7 @@ void SetColName(int j, const char* name) { if (Rf_isNull(Rf_getAttrib(m_Sexp, R_DimNamesSymbol))) { - CRList dims(2, false); + CRList dims(2); Rf_setAttrib(m_Sexp, R_DimNamesSymbol, dims); } if (Rf_isNull(VECTOR_ELT(Rf_getAttrib(m_Sexp, R_DimNamesSymbol), 1))) {