Irrtumist : jemand, der an Fehlern festhält und diese verbreitet
– Merriam Webster
Das Ziel von errorist
ist die automatische Suche nach Fehlern und Warnungen, sobald sie auftreten.
Das errorist
ist sowohl auf CRAN als auch auf GitHub verfügbar. Die CRAN-Version gilt als stabil, während sich die GitHub-Version in der Entwicklung befindet und möglicherweise kaputt geht. Sie können die stabile Version des errorist
installieren mit:
install.packages( " errorist " )
Für die Entwicklungsversion können Sie sich für Folgendes entscheiden:
if ( ! requireNamespace( " remotes " )) { install.packages( " remotes " ) }
remotes :: install_github( " coatless-rpkg/errorist " )
library( errorist )
Wenn das errorist
geladen wird, werden automatisch zwei Handler eingerichtet, um die Fehler- und Warnmeldungen abzufangen, die während der Codeausführung auftreten. Die abgefangenen Nachrichten werden dann mithilfe des bevorzugten System-Webbrowsers des Benutzers an vorab festgelegte Suchmaschinen im Internet weitergeleitet. Standardmäßig wird für die Suche nach Nachrichten Google als Suchmaschine verwendet.
Sie können einen anderen Suchmaschinen-Handler angeben, indem Sie Standardwerte festlegen:
errorist.warning
: Warnendes Suchmaschinenportal. Der Standardwert ist searcher::search_google
.errorist.error
: Fehler im Suchmaschinenportal. Der Standardwert ist searcher::search_google
.errorist.autoload
: Fehler automatisch suchen. Der Standardwert ist TRUE
. Wenn das Paket häufig verwendet wird, sollten Sie erwägen, die verschiedenen Suchhandler als Option in Ihrem .Rprofile
hinzuzufügen:
# Add custom options
.First <- function () {
options(
errorist.warning = searcher :: search_google ,
errorist.error = searcher :: search_google
)
}
# Load the package if in RStudio or R GUI
if (interactive()) {
suppressMessages(require( errorist ))
}
Die Idee zu errorist
entstand aus einem Gespräch zwischen Dirk Eddelbuettel, Barry Rowlingson und mir, bei dem wir darüber nachdachten, dass Compiler einen Link bereitstellen sollten, der erklärt, was der Fehler bedeutete und wie man ihn beheben kann. Diese Konversation entstand aufgrund des Mausübertexts von XKCD Comic 1185: Inefficient Sorts.
StackSort stellt eine Verbindung zu StackOverflow her, sucht nach „Liste sortieren“ und lädt Codefragmente herunter und führt sie aus, bis die Liste sortiert ist.
Diese Art der Codesuche wurde implementiert von:
https://gkoberger.github.io/stacksort/
Die Idee wandelte sich von der Auswertung zufälliger Codeblöcke zur Bereitstellung von Suchunterstützung für zur Laufzeit aufgetretene Fehler.
addTaskCallback()
als Möglichkeit zum Erstellen eines Warnungshandlers und für eine kurze Diskussion über „Aufruf“-Objekte.last.warning
Objekts, das R mit Warnmeldungen füllt.GPL (>= 2)