[education/rkward] rkward/rbackend: Merge branch 'master' into work/cache_based_modification_detection

Thomas Friedrichsmeier null at kde.org
Thu May 26 10:06:45 BST 2022


Git commit 0e40f5d75aa11493c276a3e6abc08dc90ca80f8a by Thomas Friedrichsmeier.
Committed on 18/05/2022 at 20:17.
Pushed by tfry into branch 'master'.

Merge branch 'master' into work/cache_based_modification_detection

M  +132  -81   rkward/rbackend/rkrbackend.cpp
M  +37   -16   rkward/rbackend/rkrsupport.cpp
M  +8    -16   rkward/rbackend/rkrsupport.h
M  +9    -35   rkward/rbackend/rpackages/rkward/R/internal.R

https://invent.kde.org/education/rkward/commit/0e40f5d75aa11493c276a3e6abc08dc90ca80f8a

diff --cc rkward/rbackend/rkrbackend.cpp
index d9b2420c,1f819bf7..7cc7b7c2
--- a/rkward/rbackend/rkrbackend.cpp
+++ b/rkward/rbackend/rkrbackend.cpp
@@@ -921,13 -911,19 +911,11 @@@ void doError (const QString &callstring
  			}
  		}
  	} else if (RKRBackend::repl_status.user_command_status != RKRBackend::RKReplStatus::ReplIterationKilled) {
- 		QString string = RKRSupport::SEXPToString (call);
- 		RKRBackend::this_pointer->handleOutput (string, string.length (), ROutput::Error);
- 		RK_DEBUG (RBACKEND, DL_DEBUG, "error '%s'", qPrintable (string));
+ 		RKRBackend::this_pointer->handleOutput (callstring, callstring.length (), ROutput::Error);
+ 		RK_DEBUG (RBACKEND, DL_DEBUG, "error '%s'", qPrintable (callstring));
  	}
- 	return R_NilValue;
  }
  
 -SEXP doWs (SEXP name) {
 -	if ((!RKRBackend::this_pointer->current_command) || (RKRBackend::this_pointer->current_command->type & RCommand::ObjectListUpdate) || (!(RKRBackend::this_pointer->current_command->type & RCommand::Sync))) {		// ignore Sync commands that are not flagged as ObjectListUpdate
 -		QString sym = RKRSupport::SEXPToString(name);
 -		if (!RKRBackend::this_pointer->changed_symbol_names.contains (sym)) RKRBackend::this_pointer->changed_symbol_names.append (sym);  // schedule symbol update for later
 -	}
 -	return R_NilValue;
 -}
 -
  SEXP doSubstackCall (SEXP call) {
  	RK_TRACE (RBACKEND);
  
@@@ -1034,13 -1062,10 +1054,13 @@@ SEXP doCaptureOutput (SEXP mode, SEXP c
  }
  
  SEXP RKStartGraphicsDevice (SEXP width, SEXP height, SEXP pointsize, SEXP family, SEXP bg, SEXP title, SEXP antialias);
- SEXP RKD_AdjustSize (SEXP devnum);
+ SEXP RKD_AdjustSize (SEXP devnum, SEXP id);
 -SEXP doWs (SEXP name);
  void doPendingPriorityCommands ();
  
 +SEXP checkEnv(SEXP a) {
 +	return RKRSupport::StringListToSEXP(RKRShadowEnvironment::environmentFor(a)->diffAndUpdate());
 +}
 +
  bool RKRBackend::startR () {
  	RK_TRACE (RBACKEND);
  
@@@ -1114,8 -1139,8 +1134,8 @@@
  // register our functions
  	R_CallMethodDef callMethods [] = {
  		// NOTE: Intermediate cast to void* to avoid compiler warning
 -		{ "ws", (DL_FUNC) (void*) &doWs, 1 },
 +		{ "rk.check.env", (DL_FUNC) (void*) &checkEnv, 1 },
- 		{ "rk.do.error", (DL_FUNC) (void*) &doError, 1 },
+ 		{ "rk.simple", (DL_FUNC) (void*) &doSimpleBackendCall, 1},
  		{ "rk.do.command", (DL_FUNC) (void*) &doSubstackCall, 1 },
  		{ "rk.do.generic.request", (DL_FUNC) (void*) &doPlainGenericRequest, 2 },
  		{ "rk.get.structure", (DL_FUNC) (void*) &doGetStructure, 4 },



More information about the rkward-tracker mailing list