errorist : ผู้ที่ยึดมั่นและเผยแพร่ข้อผิดพลาด
— เมอร์เรียม เว็บสเตอร์
เป้าหมายของ errorist
คือการค้นหาข้อผิดพลาดและคำเตือนวินาทีที่เกิดขึ้นโดยอัตโนมัติ
แพ็คเกจ errorist
สามารถใช้ได้ทั้งบน CRAN และ GitHub เวอร์ชัน CRAN ถือว่าเสถียรในขณะที่เวอร์ชัน GitHub อยู่ในสถานะของการพัฒนาและอาจใช้งานไม่ได้ คุณสามารถติดตั้งแพ็คเกจ errorist
เวอร์ชันเสถียรได้ด้วย:
install.packages( " errorist " )
สำหรับเวอร์ชันการพัฒนา คุณสามารถเลือกได้:
if ( ! requireNamespace( " remotes " )) { install.packages( " remotes " ) }
remotes :: install_github( " coatless-rpkg/errorist " )
library( errorist )
เมื่อมีการโหลดแพ็คเกจ errorist
ตัวจัดการสองตัวจะถูกสร้างขึ้นโดยอัตโนมัติเพื่อดักจับข้อผิดพลาดและข้อความเตือนที่เกิดขึ้นระหว่างการเรียกใช้โค้ด ข้อความที่ถูกสกัดกั้นจะถูกส่งไปยังเครื่องมือค้นหาที่กำหนดไว้ล่วงหน้าบนอินเทอร์เน็ตโดยใช้เว็บเบราว์เซอร์ระบบที่ผู้ใช้ต้องการ ตามค่าเริ่มต้น เครื่องมือค้นหาที่ใช้ในการค้นหาข้อความคือ Google
คุณสามารถระบุตัวจัดการเครื่องมือค้นหาอื่นได้โดยการตั้งค่าเริ่มต้น:
errorist.warning
: พอร์ทัลเครื่องมือค้นหาคำเตือน ค่าเริ่มต้นคือ searcher::search_google
errorist.error
: ข้อผิดพลาดพอร์ทัลเครื่องมือค้นหา ค่าเริ่มต้นคือ searcher::search_google
errorist.autoload
: ค้นหาข้อผิดพลาดโดยอัตโนมัติ ค่าเริ่มต้นคือ TRUE
หากมีการใช้แพ็คเกจบ่อยครั้ง ให้พิจารณาเพิ่มตัวจัดการการค้นหาอื่นเป็นตัวเลือกใน .Rprofile
ของคุณ :
# 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 ))
}
แนวคิดสำหรับ errorist
มาจากการสนทนาระหว่าง Dirk Eddelbuettel, Barry Rowlingson และตัวฉันเองครุ่นคิดเกี่ยวกับการให้คอมไพเลอร์ให้ลิงก์ที่อธิบายว่าข้อผิดพลาดหมายถึงอะไรและวิธีแก้ไข บทสนทนานี้เกิดขึ้นเนื่องจากการที่เมาส์โอเวอร์เท็กซ์ของ XKCD Comic 1185: Inefficient Sorts
StackSort เชื่อมต่อกับ StackOverflow ค้นหา 'จัดเรียงรายการ' และดาวน์โหลดและเรียกใช้ข้อมูลโค้ดจนกว่ารายการจะถูกจัดเรียง
การค้นหาโค้ดประเภทนี้ดำเนินการโดย:
https://gkoberger.github.io/stacksort/
แนวคิดนี้ปรับเปลี่ยนจากการประเมินชิ้นโค้ดแบบสุ่มเป็นการให้การสนับสนุนการค้นหาข้อผิดพลาดที่เกิดขึ้นขณะรันไทม์
addTaskCallback()
เป็นวิธีการสร้างตัวจัดการคำเตือนและสำหรับการสนทนาสั้น ๆ เกี่ยวกับวัตถุ "การโทร"last.warning
ที่ R เติมด้วยข้อความเตือนGPL (>= 2)