Introduction

This post is meant to be a reference for the work I’ve done in the Community Bonding Period and the first coding period’s first week.

Weeks 1-3 (Community Bonding Period)

I spent this three weeks of Community Bonding Period interacting with my mentors, familiarizing myself with the tools and working on high priority tasks.

Using this blog as a way to familiarize myself with the tools, I started working with DeepState, showing some basic examples and moving step by step with more complex one. Then I gave a brief introduction to Valgrind and showed how it might be used in conjunction with DeepState to produce a sophisticated fuzz testing toolbox. When these three powerful tools —Valgrind, DeepState, and Rcpp— were integrated, I introduced Rcpp and finally RcppDeepState.

Reference

Blog posts:

Pull requests:

Issues:

External issues:

Week 4

I have spent the most of this first week focusing on some important tasks that I discovered during the Community Bonding Period. Everything specifically began when I discovered that debug symbols were not present by default on some systems. This led to the creation of the Makevars file inside the src directory of each package, before R CMD INSTALL is run. Based on this I created a custom workflow to check if debug symbols are included by default or not on the system. I discovered several bugs in the RcppDeepState library while developing this workflow and was able to effectively fix them.

A detailed description of the changes and problems I encountered in this first week can be found in pull request #6. I report some of them here:

  1. solved the problem that on some platforms debug symbols are not included by default;
  2. solved some problems with RInside. In detail I moved the definition of RInside outside of the TEST function in order to preserve the seeds and to avoid the R is already initialized error;
  3. implemented the possibility to add a seed argument to the deepstate_harness_compile_run function;
  4. solved the problem of the Segmentation fault that prevented DeepState to create the output files;

Reference

Blog posts:

Pull requests:

Issues: