[R/Analytics.R:2:3:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L2) *style:* **Trailing whitespace is superfluous.**
```r
#'
  ^
```
[R/Analytics.R:3:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L3) *style:* **Lines should not be more than 80 characters.**
```r
#' \code{Analytics} plays a short sound which is useful if you want to get notified,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/Analytics.R:3:85:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L3) *style:* **Trailing whitespace is superfluous.**
```r
#' \code{Analytics} plays a short sound which is useful if you want to get notified,
                                                                                ^
```
[R/Analytics.R:7:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L7) *style:* **Lines should not be more than 80 characters.**
```r
#' If \code{Analytics} is not able to play the sound a warning is issued rather than
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/Analytics.R:7:85:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L7) *style:* **Trailing whitespace is superfluous.**
```r
#' If \code{Analytics} is not able to play the sound a warning is issued rather than
                                                                                ^
```
[R/Analytics.R:11:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L11) *style:* **Lines should not be more than 80 characters.**
```r
#' @param sound character string or number specifying what sound to be played by
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/Analytics.R:11:81:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L11) *style:* **Trailing whitespace is superfluous.**
```r
#' @param sound character string or number specifying what sound to be played by
                                                                                ^
```
[R/Analytics.R:12:80:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L12) *style:* **Trailing whitespace is superfluous.**
```r
#'   either specifying one of the built in sounds, specifying the path to a wav
                                                                               ^
```
[R/Analytics.R:16:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L16) *style:* **Lines should not be more than 80 characters.**
```r
#'   or url, a random sound will be played. Currently \code{Analytics} can only handle
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/Analytics.R:25:3:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L25) *style:* **Trailing whitespace is superfluous.**
```r
#'
  ^
```
[R/Analytics.R:31:3:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L31) *style:* **Trailing whitespace is superfluous.**
```r
#'
  ^
```
[R/Analytics.R:34:3:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L34) *style:* **Trailing whitespace is superfluous.**
```r
#'
  ^
```
[R/Analytics.R:43:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L43) *style:* **Variable or function name should be snake_case.**
```r
Analytics <- function(sound = 1, expr = NULL) {
^~~~~~~~~
```
[R/Analytics.R:44:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L44) *style:* **Trailing whitespace is superfluous.**
```r

^~
```
[R/Analytics.R:49:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L49) *style:* **Trailing whitespace is superfluous.**
```r

^~
```
[R/Analytics.R:51:5:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L51) *style:* **Place a space before left parenthesis, except in a function call.**
```r
  if(is.na(sounds[sound]) || length(sounds[sound]) != 1) {
    ^
```
[R/Analytics.R:52:7:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L52) *style:* **Place a space before left parenthesis, except in a function call.**
```r
    if(is.character(sound)) {
      ^
```
[R/Analytics.R:54:9:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L54) *style:* **Place a space before left parenthesis, except in a function call.**
```r
      if(file.exists(sound)) {
        ^
```
[R/Analytics.R:56:16:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L56) *style:* **Place a space before left parenthesis, except in a function call.**
```r
      } else if(grepl("^https://", sound)) {
               ^
```
[R/Analytics.R:58:16:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L58) *style:* **Place a space before left parenthesis, except in a function call.**
```r
      } else if(grepl("^https://", sound)) {
               ^
```
[R/Analytics.R:59:38:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L59) *style:* **Put spaces around all infix operators.**
```r
        temp_file <- tempfile(pattern="")
                                    ~^~
```
[R/Analytics.R:60:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L60) *style:* **Lines should not be more than 80 characters.**
```r
        if(download.file(sound, destfile = temp_file, quiet = TRUE) == 0) { # The file was successfully downloaded
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/Analytics.R:60:11:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L60) *style:* **Place a space before left parenthesis, except in a function call.**
```r
        if(download.file(sound, destfile = temp_file, quiet = TRUE) == 0) { # The file was successfully downloaded
          ^
```
[R/Analytics.R:60:75:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L60) *style:* **Opening curly braces should never go on their own line and should always be followed by a new line.**
```r
        if(download.file(sound, destfile = temp_file, quiet = TRUE) == 0) { # The file was successfully downloaded
                                                                          ^
```
[R/Analytics.R:66:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L66) *style:* **Lines should not be more than 80 characters.**
```r
        warning(paste('"', sound, '" is not a valid sound nor path, playing a random sound instead.', sep = ""))
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/Analytics.R:70:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L70) *style:* **Lines should not be more than 80 characters.**
```r
    sound_path <- system.file(paste("sounds/AFMS/", sounds[sound], sep=""), package="geekr")
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/Analytics.R:70:71:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L70) *style:* **Put spaces around all infix operators.**
```r
    sound_path <- system.file(paste("sounds/AFMS/", sounds[sound], sep=""), package="geekr")
                                                                     ~^~
```
[R/Analytics.R:70:84:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L70) *style:* **Put spaces around all infix operators.**
```r
    sound_path <- system.file(paste("sounds/AFMS/", sounds[sound], sep=""), package="geekr")
                                                                                ~^~
```
[R/Analytics.R:72:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L72) *style:* **Trailing whitespace is superfluous.**
```r

^~
```
[R/Analytics.R:73:5:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L73) *style:* **Place a space before left parenthesis, except in a function call.**
```r
  if(is.null(sound_path)) { # play a random sound
    ^
```
[R/Analytics.R:73:27:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L73) *style:* **Opening curly braces should never go on their own line and should always be followed by a new line.**
```r
  if(is.null(sound_path)) { # play a random sound
                          ^
```
[R/Analytics.R:74:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L74) *style:* **Lines should not be more than 80 characters.**
```r
    sound_path <- system.file(paste("sounds/AFMS/", sample(sounds, size=1), sep=""), package="geekr")
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/Analytics.R:74:72:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L74) *style:* **Put spaces around all infix operators.**
```r
    sound_path <- system.file(paste("sounds/AFMS/", sample(sounds, size=1), sep=""), package="geekr")
                                                                      ~^~
```
[R/Analytics.R:74:80:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L74) *style:* **Put spaces around all infix operators.**
```r
    sound_path <- system.file(paste("sounds/AFMS/", sample(sounds, size=1), sep=""), package="geekr")
                                                                              ~^~
```
[R/Analytics.R:74:93:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L74) *style:* **Put spaces around all infix operators.**
```r
    sound_path <- system.file(paste("sounds/AFMS/", sample(sounds, size=1), sep=""), package="geekr")
                                                                                ~^~
```
[R/Analytics.R:76:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L76) *style:* **Trailing whitespace is superfluous.**
```r

^~
```
[R/Analytics.R:78:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L78) *style:* **Lines should not be more than 80 characters.**
```r
    warning("Analytics() could not play the sound due to the following error:\n", ex)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/Analytics.R:83:3:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L83) *warning:* **no visible global function definition for ‘str_detect’**
```r
  str_detect(fname, "\\.wav$")
  ^~~~~~~~~~
```
[R/Analytics.R:87:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L87) *style:* **Lines should not be more than 80 characters.**
```r
  system(paste("vlc -Idummy --no-loop --no-repeat --playlist-autostart --no-media-library --play-and-exit", fname),
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/Analytics.R:87:116:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L87) *style:* **Trailing whitespace is superfluous.**
```r
  system(paste("vlc -Idummy --no-loop --no-repeat --playlist-autostart --no-media-library --play-and-exit", fname),
                                                                                ^
```
[R/Analytics.R:88:45:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L88) *style:* **Put spaces around all infix operators.**
```r
         ignore.stdout = TRUE, ignore.stderr=TRUE,wait = FALSE)
                                           ~^~
```
[R/Analytics.R:88:51:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L88) *style:* **Commas should always have a space after.**
```r
         ignore.stdout = TRUE, ignore.stderr=TRUE,wait = FALSE)
                                                  ^
```
[R/Analytics.R:93:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L93) *style:* **Lines should not be more than 80 characters.**
```r
  system(paste("paplay ", fname), ignore.stdout = TRUE, ignore.stderr=TRUE,wait = FALSE)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/Analytics.R:93:70:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L93) *style:* **Put spaces around all infix operators.**
```r
  system(paste("paplay ", fname), ignore.stdout = TRUE, ignore.stderr=TRUE,wait = FALSE)
                                                                    ~^~
```
[R/Analytics.R:93:76:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L93) *style:* **Commas should always have a space after.**
```r
  system(paste("paplay ", fname), ignore.stdout = TRUE, ignore.stderr=TRUE,wait = FALSE)
                                                                           ^
```
[R/Analytics.R:98:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L98) *style:* **Lines should not be more than 80 characters.**
```r
  system(paste("aplay --buffer-time=48000 -N -q", fname), ignore.stdout = TRUE, ignore.stderr=TRUE,wait = FALSE)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/Analytics.R:98:94:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L98) *style:* **Put spaces around all infix operators.**
```r
  system(paste("aplay --buffer-time=48000 -N -q", fname), ignore.stdout = TRUE, ignore.stderr=TRUE,wait = FALSE)
                                                                                ~^~
```
[R/Analytics.R:98:100:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L98) *style:* **Commas should always have a space after.**
```r
  system(paste("aplay --buffer-time=48000 -N -q", fname), ignore.stdout = TRUE, ignore.stderr=TRUE,wait = FALSE)
                                                                                ^
```
[R/Analytics.R:103:10:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L103) *warning:* **no visible global function definition for ‘load.wave’**
```r
  sfx <- load.wave(fname)
         ^~~~~~~~~
```
[R/Analytics.R:104:3:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L104) *warning:* **no visible global function definition for ‘play’, Did you mean 'lag'?**
```r
  play(sfx)
  ^~~~
```
[R/Analytics.R:108:5:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L108) *style:* **Place a space before left parenthesis, except in a function call.**
```r
  if(Sys.info()["sysname"] == "Linux") {
    ^
```
[R/Analytics.R:109:7:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L109) *style:* **Place a space before left parenthesis, except in a function call.**
```r
    if(is_wav_fname(fname) && nchar(Sys.which("paplay")) >= 1) {
      ^
```
[R/Analytics.R:110:7:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L110) *warning:* **no visible global function definition for ‘play_paplay’**
```r
      play_paplay(fname)
      ^~~~~~~~~~~
```
[R/Analytics.R:111:14:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L111) *style:* **Place a space before left parenthesis, except in a function call.**
```r
    } else if(is_wav_fname(fname) && nchar(Sys.which("aplay")) >= 1) {
             ^
```
[R/Analytics.R:112:7:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L112) *warning:* **no visible global function definition for ‘play_aplay’**
```r
      play_aplay(fname)
      ^~~~~~~~~~
```
[R/Analytics.R:113:14:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L113) *style:* **Place a space before left parenthesis, except in a function call.**
```r
    } else if(nchar(Sys.which("vlc")) >= 1) {
             ^
```
[R/Analytics.R:114:7:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L114) *warning:* **no visible global function definition for ‘play_vlc’**
```r
      play_vlc(fname)
      ^~~~~~~~
```
[R/Analytics.R:116:7:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L116) *warning:* **no visible global function definition for ‘play_audio’**
```r
      play_audio(fname)
      ^~~~~~~~~~
```
[R/Analytics.R:119:5:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Analytics.R#L119) *warning:* **no visible global function definition for ‘play_audio’**
```r
    play_audio(fname)
    ^~~~~~~~~~
```
[R/ChronoTrigger.R:2:3:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L2) *style:* **Trailing whitespace is superfluous.**
```r
#'
  ^
```
[R/ChronoTrigger.R:3:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L3) *style:* **Lines should not be more than 80 characters.**
```r
#' \code{ChronoTrigger} plays a short sound which is useful if you want to get notified,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/ChronoTrigger.R:3:89:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L3) *style:* **Trailing whitespace is superfluous.**
```r
#' \code{ChronoTrigger} plays a short sound which is useful if you want to get notified,
                                                                                ^
```
[R/ChronoTrigger.R:7:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L7) *style:* **Lines should not be more than 80 characters.**
```r
#' If \code{ChronoTrigger} is not able to play the sound a warning is issued rather than
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/ChronoTrigger.R:7:89:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L7) *style:* **Trailing whitespace is superfluous.**
```r
#' If \code{ChronoTrigger} is not able to play the sound a warning is issued rather than
                                                                                ^
```
[R/ChronoTrigger.R:11:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L11) *style:* **Lines should not be more than 80 characters.**
```r
#' @param sound character string or number specifying what sound to be played by
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/ChronoTrigger.R:11:81:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L11) *style:* **Trailing whitespace is superfluous.**
```r
#' @param sound character string or number specifying what sound to be played by
                                                                                ^
```
[R/ChronoTrigger.R:12:80:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L12) *style:* **Trailing whitespace is superfluous.**
```r
#'   either specifying one of the built in sounds, specifying the path to a wav
                                                                               ^
```
[R/ChronoTrigger.R:18:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L18) *style:* **Lines should not be more than 80 characters.**
```r
#'   \code{"black_tyrano"} \item \code{"continuum"} \item \code{"destruction"} \item
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/ChronoTrigger.R:22:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L22) *style:* **Lines should not be more than 80 characters.**
```r
#'   or url, a random sound will be played. Currently \code{ChronoTrigger} can only handle
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/ChronoTrigger.R:31:3:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L31) *style:* **Trailing whitespace is superfluous.**
```r
#'
  ^
```
[R/ChronoTrigger.R:37:3:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L37) *style:* **Trailing whitespace is superfluous.**
```r
#'
  ^
```
[R/ChronoTrigger.R:40:3:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L40) *style:* **Trailing whitespace is superfluous.**
```r
#'
  ^
```
[R/ChronoTrigger.R:49:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L49) *style:* **Variable or function name should be snake_case.**
```r
ChronoTrigger <- function(sound = 1, expr = NULL) {
^~~~~~~~~~~~~
```
[R/ChronoTrigger.R:50:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L50) *style:* **Trailing whitespace is superfluous.**
```r

^~
```
[R/ChronoTrigger.R:72:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L72) *style:* **Trailing whitespace is superfluous.**
```r

^~
```
[R/ChronoTrigger.R:74:5:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L74) *style:* **Place a space before left parenthesis, except in a function call.**
```r
  if(is.na(sounds[sound]) || length(sounds[sound]) != 1) {
    ^
```
[R/ChronoTrigger.R:75:7:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L75) *style:* **Place a space before left parenthesis, except in a function call.**
```r
    if(is.character(sound)) {
      ^
```
[R/ChronoTrigger.R:77:9:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L77) *style:* **Place a space before left parenthesis, except in a function call.**
```r
      if(file.exists(sound)) {
        ^
```
[R/ChronoTrigger.R:79:16:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L79) *style:* **Place a space before left parenthesis, except in a function call.**
```r
      } else if(grepl("^https://", sound)) {
               ^
```
[R/ChronoTrigger.R:81:16:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L81) *style:* **Place a space before left parenthesis, except in a function call.**
```r
      } else if(grepl("^https://", sound)) {
               ^
```
[R/ChronoTrigger.R:82:38:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L82) *style:* **Put spaces around all infix operators.**
```r
        temp_file <- tempfile(pattern="")
                                    ~^~
```
[R/ChronoTrigger.R:83:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L83) *style:* **Lines should not be more than 80 characters.**
```r
        if(download.file(sound, destfile = temp_file, quiet = TRUE) == 0) { # The file was successfully downloaded
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/ChronoTrigger.R:83:11:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L83) *style:* **Place a space before left parenthesis, except in a function call.**
```r
        if(download.file(sound, destfile = temp_file, quiet = TRUE) == 0) { # The file was successfully downloaded
          ^
```
[R/ChronoTrigger.R:83:75:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L83) *style:* **Opening curly braces should never go on their own line and should always be followed by a new line.**
```r
        if(download.file(sound, destfile = temp_file, quiet = TRUE) == 0) { # The file was successfully downloaded
                                                                          ^
```
[R/ChronoTrigger.R:89:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L89) *style:* **Lines should not be more than 80 characters.**
```r
        warning(paste('"', sound, '" is not a valid sound nor path, playing a random sound instead.', sep = ""))
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/ChronoTrigger.R:93:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L93) *style:* **Lines should not be more than 80 characters.**
```r
    sound_path <- system.file(paste("sounds/CT/", sounds[sound], sep=""), package="geekr")
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/ChronoTrigger.R:93:69:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L93) *style:* **Put spaces around all infix operators.**
```r
    sound_path <- system.file(paste("sounds/CT/", sounds[sound], sep=""), package="geekr")
                                                                   ~^~
```
[R/ChronoTrigger.R:93:82:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L93) *style:* **Put spaces around all infix operators.**
```r
    sound_path <- system.file(paste("sounds/CT/", sounds[sound], sep=""), package="geekr")
                                                                                ~^~
```
[R/ChronoTrigger.R:95:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L95) *style:* **Trailing whitespace is superfluous.**
```r

^~
```
[R/ChronoTrigger.R:96:5:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L96) *style:* **Place a space before left parenthesis, except in a function call.**
```r
  if(is.null(sound_path)) { # play a random sound
    ^
```
[R/ChronoTrigger.R:96:27:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L96) *style:* **Opening curly braces should never go on their own line and should always be followed by a new line.**
```r
  if(is.null(sound_path)) { # play a random sound
                          ^
```
[R/ChronoTrigger.R:97:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L97) *style:* **Lines should not be more than 80 characters.**
```r
    sound_path <- system.file(paste("sounds/CT/", sample(sounds, size=1), sep=""), package="geekr")
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/ChronoTrigger.R:97:70:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L97) *style:* **Put spaces around all infix operators.**
```r
    sound_path <- system.file(paste("sounds/CT/", sample(sounds, size=1), sep=""), package="geekr")
                                                                    ~^~
```
[R/ChronoTrigger.R:97:78:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L97) *style:* **Put spaces around all infix operators.**
```r
    sound_path <- system.file(paste("sounds/CT/", sample(sounds, size=1), sep=""), package="geekr")
                                                                            ~^~
```
[R/ChronoTrigger.R:97:91:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L97) *style:* **Put spaces around all infix operators.**
```r
    sound_path <- system.file(paste("sounds/CT/", sample(sounds, size=1), sep=""), package="geekr")
                                                                                ~^~
```
[R/ChronoTrigger.R:99:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L99) *style:* **Trailing whitespace is superfluous.**
```r

^~
```
[R/ChronoTrigger.R:101:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L101) *style:* **Lines should not be more than 80 characters.**
```r
    warning("ChronoTrigger() could not play the sound due to the following error:\n", ex)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/ChronoTrigger.R:106:3:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L106) *warning:* **no visible global function definition for ‘str_detect’**
```r
  str_detect(fname, "\\.wav$")
  ^~~~~~~~~~
```
[R/ChronoTrigger.R:110:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L110) *style:* **Lines should not be more than 80 characters.**
```r
  system(paste("vlc -Idummy --no-loop --no-repeat --playlist-autostart --no-media-library --play-and-exit", fname),
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/ChronoTrigger.R:110:116:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L110) *style:* **Trailing whitespace is superfluous.**
```r
  system(paste("vlc -Idummy --no-loop --no-repeat --playlist-autostart --no-media-library --play-and-exit", fname),
                                                                                ^
```
[R/ChronoTrigger.R:111:45:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L111) *style:* **Put spaces around all infix operators.**
```r
         ignore.stdout = TRUE, ignore.stderr=TRUE,wait = FALSE)
                                           ~^~
```
[R/ChronoTrigger.R:111:51:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L111) *style:* **Commas should always have a space after.**
```r
         ignore.stdout = TRUE, ignore.stderr=TRUE,wait = FALSE)
                                                  ^
```
[R/ChronoTrigger.R:116:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L116) *style:* **Lines should not be more than 80 characters.**
```r
  system(paste("paplay ", fname), ignore.stdout = TRUE, ignore.stderr=TRUE,wait = FALSE)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/ChronoTrigger.R:116:70:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L116) *style:* **Put spaces around all infix operators.**
```r
  system(paste("paplay ", fname), ignore.stdout = TRUE, ignore.stderr=TRUE,wait = FALSE)
                                                                    ~^~
```
[R/ChronoTrigger.R:116:76:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L116) *style:* **Commas should always have a space after.**
```r
  system(paste("paplay ", fname), ignore.stdout = TRUE, ignore.stderr=TRUE,wait = FALSE)
                                                                           ^
```
[R/ChronoTrigger.R:121:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L121) *style:* **Lines should not be more than 80 characters.**
```r
  system(paste("aplay --buffer-time=48000 -N -q", fname), ignore.stdout = TRUE, ignore.stderr=TRUE,wait = FALSE)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/ChronoTrigger.R:121:94:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L121) *style:* **Put spaces around all infix operators.**
```r
  system(paste("aplay --buffer-time=48000 -N -q", fname), ignore.stdout = TRUE, ignore.stderr=TRUE,wait = FALSE)
                                                                                ~^~
```
[R/ChronoTrigger.R:121:100:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L121) *style:* **Commas should always have a space after.**
```r
  system(paste("aplay --buffer-time=48000 -N -q", fname), ignore.stdout = TRUE, ignore.stderr=TRUE,wait = FALSE)
                                                                                ^
```
[R/ChronoTrigger.R:126:10:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L126) *warning:* **no visible global function definition for ‘load.wave’**
```r
  sfx <- load.wave(fname)
         ^~~~~~~~~
```
[R/ChronoTrigger.R:127:3:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L127) *warning:* **no visible global function definition for ‘play’, Did you mean 'lag'?**
```r
  play(sfx)
  ^~~~
```
[R/ChronoTrigger.R:131:5:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L131) *style:* **Place a space before left parenthesis, except in a function call.**
```r
  if(Sys.info()["sysname"] == "Linux") {
    ^
```
[R/ChronoTrigger.R:132:7:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L132) *style:* **Place a space before left parenthesis, except in a function call.**
```r
    if(is_wav_fname(fname) && nchar(Sys.which("paplay")) >= 1) {
      ^
```
[R/ChronoTrigger.R:133:7:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L133) *warning:* **no visible global function definition for ‘play_paplay’**
```r
      play_paplay(fname)
      ^~~~~~~~~~~
```
[R/ChronoTrigger.R:134:14:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L134) *style:* **Place a space before left parenthesis, except in a function call.**
```r
    } else if(is_wav_fname(fname) && nchar(Sys.which("aplay")) >= 1) {
             ^
```
[R/ChronoTrigger.R:135:7:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L135) *warning:* **no visible global function definition for ‘play_aplay’**
```r
      play_aplay(fname)
      ^~~~~~~~~~
```
[R/ChronoTrigger.R:136:14:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L136) *style:* **Place a space before left parenthesis, except in a function call.**
```r
    } else if(nchar(Sys.which("vlc")) >= 1) {
             ^
```
[R/ChronoTrigger.R:137:7:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L137) *warning:* **no visible global function definition for ‘play_vlc’**
```r
      play_vlc(fname)
      ^~~~~~~~
```
[R/ChronoTrigger.R:139:7:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L139) *warning:* **no visible global function definition for ‘play_audio’**
```r
      play_audio(fname)
      ^~~~~~~~~~
```
[R/ChronoTrigger.R:142:5:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/ChronoTrigger.R#L142) *warning:* **no visible global function definition for ‘play_audio’**
```r
    play_audio(fname)
    ^~~~~~~~~~
```
[R/SuperMario.R:2:3:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L2) *style:* **Trailing whitespace is superfluous.**
```r
#'
  ^
```
[R/SuperMario.R:3:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L3) *style:* **Lines should not be more than 80 characters.**
```r
#' \code{SuperMario} plays a short sound which is useful if you want to get notified,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/SuperMario.R:3:86:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L3) *style:* **Trailing whitespace is superfluous.**
```r
#' \code{SuperMario} plays a short sound which is useful if you want to get notified,
                                                                                ^
```
[R/SuperMario.R:7:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L7) *style:* **Lines should not be more than 80 characters.**
```r
#' If \code{SuperMario} is not able to play the sound a warning is issued rather than
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/SuperMario.R:7:86:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L7) *style:* **Trailing whitespace is superfluous.**
```r
#' If \code{SuperMario} is not able to play the sound a warning is issued rather than
                                                                                ^
```
[R/SuperMario.R:11:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L11) *style:* **Lines should not be more than 80 characters.**
```r
#' @param sound character string or number specifying what sound to be played by
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/SuperMario.R:11:81:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L11) *style:* **Trailing whitespace is superfluous.**
```r
#' @param sound character string or number specifying what sound to be played by
                                                                                ^
```
[R/SuperMario.R:12:80:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L12) *style:* **Trailing whitespace is superfluous.**
```r
#'   either specifying one of the built in sounds, specifying the path to a wav
                                                                               ^
```
[R/SuperMario.R:23:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L23) *style:* **Lines should not be more than 80 characters.**
```r
#'   or url, a random sound will be played. Currently \code{SuperMario} can only handle
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/SuperMario.R:32:3:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L32) *style:* **Trailing whitespace is superfluous.**
```r
#'
  ^
```
[R/SuperMario.R:38:3:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L38) *style:* **Trailing whitespace is superfluous.**
```r
#'
  ^
```
[R/SuperMario.R:41:3:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L41) *style:* **Trailing whitespace is superfluous.**
```r
#'
  ^
```
[R/SuperMario.R:50:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L50) *style:* **Variable or function name should be snake_case.**
```r
SuperMario <- function(sound = 1, expr = NULL) {
^~~~~~~~~~
```
[R/SuperMario.R:51:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L51) *style:* **Trailing whitespace is superfluous.**
```r

^~
```
[R/SuperMario.R:75:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L75) *style:* **Trailing whitespace is superfluous.**
```r

^~
```
[R/SuperMario.R:77:5:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L77) *style:* **Place a space before left parenthesis, except in a function call.**
```r
  if(is.na(sounds[sound]) || length(sounds[sound]) != 1) {
    ^
```
[R/SuperMario.R:78:7:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L78) *style:* **Place a space before left parenthesis, except in a function call.**
```r
    if(is.character(sound)) {
      ^
```
[R/SuperMario.R:80:9:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L80) *style:* **Place a space before left parenthesis, except in a function call.**
```r
      if(file.exists(sound)) {
        ^
```
[R/SuperMario.R:82:16:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L82) *style:* **Place a space before left parenthesis, except in a function call.**
```r
      } else if(grepl("^https://", sound)) {
               ^
```
[R/SuperMario.R:84:16:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L84) *style:* **Place a space before left parenthesis, except in a function call.**
```r
      } else if(grepl("^https://", sound)) {
               ^
```
[R/SuperMario.R:85:38:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L85) *style:* **Put spaces around all infix operators.**
```r
        temp_file <- tempfile(pattern="")
                                    ~^~
```
[R/SuperMario.R:86:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L86) *style:* **Lines should not be more than 80 characters.**
```r
        if(download.file(sound, destfile = temp_file, quiet = TRUE) == 0) { # The file was successfully downloaded
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/SuperMario.R:86:11:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L86) *style:* **Place a space before left parenthesis, except in a function call.**
```r
        if(download.file(sound, destfile = temp_file, quiet = TRUE) == 0) { # The file was successfully downloaded
          ^
```
[R/SuperMario.R:86:75:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L86) *style:* **Opening curly braces should never go on their own line and should always be followed by a new line.**
```r
        if(download.file(sound, destfile = temp_file, quiet = TRUE) == 0) { # The file was successfully downloaded
                                                                          ^
```
[R/SuperMario.R:92:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L92) *style:* **Lines should not be more than 80 characters.**
```r
        warning(paste('"', sound, '" is not a valid sound nor path, playing a random sound instead.', sep = ""))
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/SuperMario.R:96:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L96) *style:* **Lines should not be more than 80 characters.**
```r
    sound_path <- system.file(paste("sounds/SMB/", sounds[sound], sep=""), package="geekr")
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/SuperMario.R:96:70:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L96) *style:* **Put spaces around all infix operators.**
```r
    sound_path <- system.file(paste("sounds/SMB/", sounds[sound], sep=""), package="geekr")
                                                                    ~^~
```
[R/SuperMario.R:96:83:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L96) *style:* **Put spaces around all infix operators.**
```r
    sound_path <- system.file(paste("sounds/SMB/", sounds[sound], sep=""), package="geekr")
                                                                                ~^~
```
[R/SuperMario.R:98:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L98) *style:* **Trailing whitespace is superfluous.**
```r

^~
```
[R/SuperMario.R:99:5:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L99) *style:* **Place a space before left parenthesis, except in a function call.**
```r
  if(is.null(sound_path)) { # play a random sound
    ^
```
[R/SuperMario.R:99:27:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L99) *style:* **Opening curly braces should never go on their own line and should always be followed by a new line.**
```r
  if(is.null(sound_path)) { # play a random sound
                          ^
```
[R/SuperMario.R:100:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L100) *style:* **Lines should not be more than 80 characters.**
```r
    sound_path <- system.file(paste("sounds/SMB/", sample(sounds, size=1), sep=""), package="geekr")
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/SuperMario.R:100:71:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L100) *style:* **Put spaces around all infix operators.**
```r
    sound_path <- system.file(paste("sounds/SMB/", sample(sounds, size=1), sep=""), package="geekr")
                                                                     ~^~
```
[R/SuperMario.R:100:79:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L100) *style:* **Put spaces around all infix operators.**
```r
    sound_path <- system.file(paste("sounds/SMB/", sample(sounds, size=1), sep=""), package="geekr")
                                                                             ~^~
```
[R/SuperMario.R:100:92:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L100) *style:* **Put spaces around all infix operators.**
```r
    sound_path <- system.file(paste("sounds/SMB/", sample(sounds, size=1), sep=""), package="geekr")
                                                                                ~^~
```
[R/SuperMario.R:102:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L102) *style:* **Trailing whitespace is superfluous.**
```r

^~
```
[R/SuperMario.R:104:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L104) *style:* **Lines should not be more than 80 characters.**
```r
    warning("SuperMario() could not play the sound due to the following error:\n", ex)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/SuperMario.R:109:3:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L109) *warning:* **no visible global function definition for ‘str_detect’**
```r
  str_detect(fname, "\\.wav$")
  ^~~~~~~~~~
```
[R/SuperMario.R:113:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L113) *style:* **Lines should not be more than 80 characters.**
```r
  system(paste("vlc -Idummy --no-loop --no-repeat --playlist-autostart --no-media-library --play-and-exit", fname),
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/SuperMario.R:113:116:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L113) *style:* **Trailing whitespace is superfluous.**
```r
  system(paste("vlc -Idummy --no-loop --no-repeat --playlist-autostart --no-media-library --play-and-exit", fname),
                                                                                ^
```
[R/SuperMario.R:114:45:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L114) *style:* **Put spaces around all infix operators.**
```r
         ignore.stdout = TRUE, ignore.stderr=TRUE,wait = FALSE)
                                           ~^~
```
[R/SuperMario.R:114:51:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L114) *style:* **Commas should always have a space after.**
```r
         ignore.stdout = TRUE, ignore.stderr=TRUE,wait = FALSE)
                                                  ^
```
[R/SuperMario.R:119:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L119) *style:* **Lines should not be more than 80 characters.**
```r
  system(paste("paplay ", fname), ignore.stdout = TRUE, ignore.stderr=TRUE,wait = FALSE)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/SuperMario.R:119:70:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L119) *style:* **Put spaces around all infix operators.**
```r
  system(paste("paplay ", fname), ignore.stdout = TRUE, ignore.stderr=TRUE,wait = FALSE)
                                                                    ~^~
```
[R/SuperMario.R:119:76:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L119) *style:* **Commas should always have a space after.**
```r
  system(paste("paplay ", fname), ignore.stdout = TRUE, ignore.stderr=TRUE,wait = FALSE)
                                                                           ^
```
[R/SuperMario.R:124:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L124) *style:* **Lines should not be more than 80 characters.**
```r
  system(paste("aplay --buffer-time=48000 -N -q", fname), ignore.stdout = TRUE, ignore.stderr=TRUE,wait = FALSE)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/SuperMario.R:124:94:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L124) *style:* **Put spaces around all infix operators.**
```r
  system(paste("aplay --buffer-time=48000 -N -q", fname), ignore.stdout = TRUE, ignore.stderr=TRUE,wait = FALSE)
                                                                                ~^~
```
[R/SuperMario.R:124:100:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L124) *style:* **Commas should always have a space after.**
```r
  system(paste("aplay --buffer-time=48000 -N -q", fname), ignore.stdout = TRUE, ignore.stderr=TRUE,wait = FALSE)
                                                                                ^
```
[R/SuperMario.R:129:10:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L129) *warning:* **no visible global function definition for ‘load.wave’**
```r
  sfx <- load.wave(fname)
         ^~~~~~~~~
```
[R/SuperMario.R:130:3:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L130) *warning:* **no visible global function definition for ‘play’, Did you mean 'lag'?**
```r
  play(sfx)
  ^~~~
```
[R/SuperMario.R:134:5:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L134) *style:* **Place a space before left parenthesis, except in a function call.**
```r
  if(Sys.info()["sysname"] == "Linux") {
    ^
```
[R/SuperMario.R:135:7:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L135) *style:* **Place a space before left parenthesis, except in a function call.**
```r
    if(is_wav_fname(fname) && nchar(Sys.which("paplay")) >= 1) {
      ^
```
[R/SuperMario.R:136:7:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L136) *warning:* **no visible global function definition for ‘play_paplay’**
```r
      play_paplay(fname)
      ^~~~~~~~~~~
```
[R/SuperMario.R:137:14:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L137) *style:* **Place a space before left parenthesis, except in a function call.**
```r
    } else if(is_wav_fname(fname) && nchar(Sys.which("aplay")) >= 1) {
             ^
```
[R/SuperMario.R:138:7:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L138) *warning:* **no visible global function definition for ‘play_aplay’**
```r
      play_aplay(fname)
      ^~~~~~~~~~
```
[R/SuperMario.R:139:14:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L139) *style:* **Place a space before left parenthesis, except in a function call.**
```r
    } else if(nchar(Sys.which("vlc")) >= 1) {
             ^
```
[R/SuperMario.R:140:7:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L140) *warning:* **no visible global function definition for ‘play_vlc’**
```r
      play_vlc(fname)
      ^~~~~~~~
```
[R/SuperMario.R:142:7:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L142) *warning:* **no visible global function definition for ‘play_audio’**
```r
      play_audio(fname)
      ^~~~~~~~~~
```
[R/SuperMario.R:145:5:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/SuperMario.R#L145) *warning:* **no visible global function definition for ‘play_audio’**
```r
    play_audio(fname)
    ^~~~~~~~~~
```
[R/Warcraft.R:2:3:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Warcraft.R#L2) *style:* **Trailing whitespace is superfluous.**
```r
#'
  ^
```
[R/Warcraft.R:3:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Warcraft.R#L3) *style:* **Lines should not be more than 80 characters.**
```r
#' \code{Warcraft} plays a short sound which is useful if you want to get notified,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/Warcraft.R:3:84:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Warcraft.R#L3) *style:* **Trailing whitespace is superfluous.**
```r
#' \code{Warcraft} plays a short sound which is useful if you want to get notified,
                                                                                ^
```
[R/Warcraft.R:7:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Warcraft.R#L7) *style:* **Lines should not be more than 80 characters.**
```r
#' If \code{Warcraft} is not able to play the sound a warning is issued rather than
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/Warcraft.R:7:84:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Warcraft.R#L7) *style:* **Trailing whitespace is superfluous.**
```r
#' If \code{Warcraft} is not able to play the sound a warning is issued rather than
                                                                                ^
```
[R/Warcraft.R:11:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Warcraft.R#L11) *style:* **Lines should not be more than 80 characters.**
```r
#' @param sound character string or number specifying what sound to be played by
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/Warcraft.R:11:81:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Warcraft.R#L11) *style:* **Trailing whitespace is superfluous.**
```r
#' @param sound character string or number specifying what sound to be played by
                                                                                ^
```
[R/Warcraft.R:12:80:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Warcraft.R#L12) *style:* **Trailing whitespace is superfluous.**
```r
#'   either specifying one of the built in sounds, specifying the path to a wav
                                                                               ^
```
[R/Warcraft.R:19:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Warcraft.R#L19) *style:* **Lines should not be more than 80 characters.**
```r
#'   or url, a random sound will be played. Currently \code{Warcraft} can only handle
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/Warcraft.R:28:3:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Warcraft.R#L28) *style:* **Trailing whitespace is superfluous.**
```r
#'
  ^
```
[R/Warcraft.R:34:3:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Warcraft.R#L34) *style:* **Trailing whitespace is superfluous.**
```r
#'
  ^
```
[R/Warcraft.R:37:3:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Warcraft.R#L37) *style:* **Trailing whitespace is superfluous.**
```r
#'
  ^
```
[R/Warcraft.R:46:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Warcraft.R#L46) *style:* **Variable or function name should be snake_case.**
```r
Warcraft <- function(sound = 1, expr = NULL) {
^~~~~~~~
```
[R/Warcraft.R:47:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Warcraft.R#L47) *style:* **Trailing whitespace is superfluous.**
```r

^~
```
[R/Warcraft.R:61:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Warcraft.R#L61) *style:* **Trailing whitespace is superfluous.**
```r

^~
```
[R/Warcraft.R:63:5:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Warcraft.R#L63) *style:* **Place a space before left parenthesis, except in a function call.**
```r
  if(is.na(sounds[sound]) || length(sounds[sound]) != 1) {
    ^
```
[R/Warcraft.R:64:7:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Warcraft.R#L64) *style:* **Place a space before left parenthesis, except in a function call.**
```r
    if(is.character(sound)) {
      ^
```
[R/Warcraft.R:66:9:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Warcraft.R#L66) *style:* **Place a space before left parenthesis, except in a function call.**
```r
      if(file.exists(sound)) {
        ^
```
[R/Warcraft.R:68:16:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Warcraft.R#L68) *style:* **Place a space before left parenthesis, except in a function call.**
```r
      } else if(grepl("^https://", sound)) {
               ^
```
[R/Warcraft.R:70:16:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Warcraft.R#L70) *style:* **Place a space before left parenthesis, except in a function call.**
```r
      } else if(grepl("^https://", sound)) {
               ^
```
[R/Warcraft.R:71:38:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Warcraft.R#L71) *style:* **Put spaces around all infix operators.**
```r
        temp_file <- tempfile(pattern="")
                                    ~^~
```
[R/Warcraft.R:72:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Warcraft.R#L72) *style:* **Lines should not be more than 80 characters.**
```r
        if(download.file(sound, destfile = temp_file, quiet = TRUE) == 0) { # The file was successfully downloaded
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/Warcraft.R:72:11:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Warcraft.R#L72) *style:* **Place a space before left parenthesis, except in a function call.**
```r
        if(download.file(sound, destfile = temp_file, quiet = TRUE) == 0) { # The file was successfully downloaded
          ^
```
[R/Warcraft.R:72:75:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Warcraft.R#L72) *style:* **Opening curly braces should never go on their own line and should always be followed by a new line.**
```r
        if(download.file(sound, destfile = temp_file, quiet = TRUE) == 0) { # The file was successfully downloaded
                                                                          ^
```
[R/Warcraft.R:78:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Warcraft.R#L78) *style:* **Lines should not be more than 80 characters.**
```r
        warning(paste('"', sound, '" is not a valid sound nor path, playing a random sound instead.', sep = ""))
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/Warcraft.R:82:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Warcraft.R#L82) *style:* **Lines should not be more than 80 characters.**
```r
    sound_path <- system.file(paste("sounds/Warcraft/", sounds[sound], sep=""), package="geekr")
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/Warcraft.R:82:75:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Warcraft.R#L82) *style:* **Put spaces around all infix operators.**
```r
    sound_path <- system.file(paste("sounds/Warcraft/", sounds[sound], sep=""), package="geekr")
                                                                         ~^~
```
[R/Warcraft.R:82:88:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Warcraft.R#L82) *style:* **Put spaces around all infix operators.**
```r
    sound_path <- system.file(paste("sounds/Warcraft/", sounds[sound], sep=""), package="geekr")
                                                                                ~^~
```
[R/Warcraft.R:84:1:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Warcraft.R#L84) *style:* **Trailing whitespace is superfluous.**
```r

^~
```
[R/Warcraft.R:85:5:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Warcraft.R#L85) *style:* **Place a space before left parenthesis, except in a function call.**
```r
  if(is.null(sound_path)) { # play a random sound
    ^
```
[R/Warcraft.R:85:27:](https://github.com/mike-decarlo/geekr/blob/a03f28d8067ae2dc95d9f74e621f113c5ed7571f/R/Warcraft.R#L85) *style:* **Opening curly braces should never go on their own line and should always be followed by a new line.**
```r
  if(is.null(sound_path)) { # play a random sound
                          ^
```


add comma at the end of line 4 to make for valid json


just first step


你是谁


again, a non—elegant solution to #3


Also, the example loads `library(magrittr)` but does not need it.


@markwright repoman is complaining about the dependency `dev-haskell/colour` which isn't available for non-`x86` and `amd64` arches. Should we drop these others arches in `dev-haskell/ansi-terminal` to get CI passing again?


Cannot return null for non-nullable field mutation.CompletePhoneVerification."


Gracias isaac


Yes, I know.

My point here is that if you specify `-s USE_ZLIB` via `CXXFLAGS` when you run configure, then I would expect the existing configure checks to correctly determine that zlib is available without needing any extra libraries, which would avoid the need for any special handling of emscripten here.


ExtendWindowTests-6913 (mjwitte) - x86_64-Linux-Ubuntu-14.04-gcc-4.8: OK (3020 of 3021 tests passed, 0 test warnings)

Messages:

 * 1 test had: AUD diffs.
 * 1 test had: DXF diffs.
 * 1 test had: EIO diffs.
 * 1 test had: ESO small diffs.
 * 1 test had: MDD diffs.
 * 1 test had: MTD diffs.
 * 1 test had: RDD diffs.
 * 1 test had: SHD diffs.
 * 1 test had: Table big diffs.

Failures:

regression Test Summary
 * Passed: 648
 * Failed: 1

![Build Badge](http://img.shields.io/badge/build%20status-passing-green.png) ![Test Badge](http://img.shields.io/badge/tests%20passed-99.97%25-yellow.png)


Arabic translation


In line 52, the object name is not meaningful.


@markwright repoman is also complaining about this mask causing problems for `dev-haskell/skylighting-0.7.2`. Are we able to unmask this?


Human mistake. This should've been 2.5.0. 😓


This method should not be in the base repository. Many repositories will not handle the create method the same way as others. It should simply be removed from here and forced to be implemented in the repository itself. You could simply make it an abstract method `abstract public function create(array $data);`


Hello，

My name is DarcyYang, BD Manager of TRON Foundation. I am writing to inquire about a potential collaboration. Please first allow me to introduce TRON.

According to statistics from coinmarketcap (https://coinmarketcap.com), the market value of TRON (https://tron.network) ranks top ten among all cryptocurrencies. The Tron mainnet was successfully launched on May 31, after which its community saw rapid expansion. The TPS of TRON is almost 100 times as fast as that of Ethereum. Its transaction fee is also much more affordable and its TVM much safer.

You have an impressive background in dapp. I am reaching out because I am truly impressed by your dapp, which is really amazing and imaginative and I find it a fantastic fit for TRON to enhance its dapp community construction.  What we are seeking cooperation is you can develop dapp on TRON mainnet or make a migration of your existed dapp to be launched on TRON mainnet.

Here is my wechat：545979175 skype account: DarcyYang and my phone number: +86 15652825996 for further contact.

I totally understand If you’d rather not. I appreciate your reading this far.

Best Regards,

Darcy Yang,

BD Manager of TRON


WindowShadingControlOrder (JasonGlazer) - Win64-Windows-7-VisualStudio-14: OK (2963 of 2985 tests passed, 0 test warnings)

Messages:

 * 8 tests had: AUD diffs.
 * 8 tests had: EIO diffs.
 * 8 tests had: ESO big diffs.
 * 5 tests had: MTR big diffs.
 * 8 tests had: RDD diffs.
 * 5 tests had: Table big diffs.
 * 1 test had: ERR diffs.
 * 4 tests had: SSZ big diffs.
 * 4 tests had: ZSZ big diffs.

Failures:

integration Test Summary
 * Passed: 617
 * Failed: 14

regression Test Summary
 * Passed: 621
 * Failed: 8

![Build Badge](http://img.shields.io/badge/build%20status-passing-green.png) ![Test Badge](http://img.shields.io/badge/tests%20passed-99.26%25-yellow.png)


Need to remove this newline too ..


@arthurmelo88  The apk was generated successfully . Why the apk can not run .  It quit out when it just start up.


#标题
命名方式 年份-论文名称-笔记作者，例如2017-cost sensitive network-孙世豪
#内容
内容包含
1论文链接 代码链接 其他资料链接（如果有）
2 主要方法，最好带图
3 结果如何
4 自己的个人看法


Though 7d0a291961b8d6421cc81c2578e805379c86a6d5 seems like the better way to handle this particular game, I'll note that, of all the typical DSW settings in arcade games (that is, not counting anomalies like the pause switch on Pac-Man hardware), the flip screen switch seems to be the one most likely to bypass software control. (1970s video terminals, as I'm discovering, were far more nasty about hardwiring optional features through switches, jumpers and official wire modifications.)


This commit has been mentioned on **Discourse Meta**. There might be relevant details there:

https://meta.discourse.org/t/gravatar-issue-cant-save-changes/95076/5


Great idea @Albeos90... in fact this is already implemented in v2 🎉 as of today (although not in the design mocks) => https://github.com/CityOfZion/neon-wallet/pull/1376
![screen shot 2018-08-19 at 8 30 45 pm](https://user-images.githubusercontent.com/13072035/44317503-dc65c080-a3ee-11e8-83bc-aa2a109a3ff6.png)


Does putting `pub(crate)` let benchmarks access these functions? I tried it on my machine but it did not work because `benchmarks.rs` is using `yogcrypt` as an external library.

Benchmarking these utilities can be helpful to some extent IMO, but is not very necessary.


delete


how to configure this user and password ?in site_configuartion.json?


./ding -config=./ding.cfg -subdomain=xinyangyoumi.com:8080


Nothing is added, just reorganized. Long printed outputs shortened.


你好，

我是波场的BD Manager杨博衡，在此寻求与你们的商务合作。

根基据coinmarketcap (https://coinmarketcap.com)数据显示，波场的市值一直位于加密货币排行前10。自波场主网上线以来，我们的社区不断在扩大。TPS比以太坊快近100倍，交易费用更低且虚拟机更加安全。

波场虚拟机准备在月底上线，为此会有更多的dapp开发者参与进来。我们了解到你们在NEO上开发的dapp很不错，也深知你们对dapp的理解。所以波场希望与你们有更多的合作机会。

以下是我的联系方式：
微信：ybhgenius
QQ:545979175
电话：15652825996

希望你们能与波场建立联系，一起展开未来的深度合作。


WindowShadingControlOrder (JasonGlazer) - x86_64-Linux-Ubuntu-14.04-gcc-4.8: OK (3003 of 3025 tests passed, 0 test warnings)

Messages:

 * 5 tests had: AUD diffs.
 * 5 tests had: EIO diffs.
 * 5 tests had: ESO big diffs.
 * 5 tests had: RDD diffs.
 * 4 tests had: SSZ big diffs.
 * 4 tests had: ZSZ big diffs.
 * 1 test had: ERR diffs.
 * 2 tests had: MTR big diffs.
 * 2 tests had: Table big diffs.

Failures:

integration Test Summary
 * Passed: 617
 * Failed: 17

regression Test Summary
 * Passed: 644
 * Failed: 5

![Build Badge](http://img.shields.io/badge/build%20status-passing-green.png) ![Test Badge](http://img.shields.io/badge/tests%20passed-99.27%25-yellow.png)


thanks


@SamSaffron I think we need to refactor this because we're initializing the image_info twice because we call `extract_image_info!` later on


@jnothman How about using ``0.12.2`` instead of ``0.12`` here?


i hope it will be 0.12.3!


q


WindowShadingControlOrder (JasonGlazer) - x86_64-Linux-Ubuntu-14.04-cppcheck-1.61: OK (0 of 0 tests passed, 0 test warnings)

![Build Badge](http://img.shields.io/badge/build%20status-passing-green.png)


it's new-add line


Does this need an empty "properties" and empty "items" to support variable arrays? I'd pass through some data to the `_transform_object` and `_transform_array` with the `value` subschema here to be sure we can handle it.


:+1: :heart:


Nice! If you rename the "Vampire-moths-and-their-fruit-piercing-relatives.txt" back to "interaction.tsv", GloBI will pick up the interactions automatically. Also, GitHub will detect the "tsv" from it's extension and render a nice, searchable table.


Showing a change to the code


Nice!


Linking error:

> Undefined symbols for architecture x86_64:
>   "_TI99_GROMPORT8", referenced from:
>       ti99_8_state::ti99_8(machine_config&) in libti.a(ti99_8.o)

What's more, the `gromport8_device` constructor needs to pass that device type along to the base class.


@JacquesCarette Hello Dr. Carette, these changes produce this result:
![image](https://user-images.githubusercontent.com/35268928/44363276-c230ee80-a491-11e8-92a4-2b1b3d33bc9a.png)
In the MIS, specifically for the FunctADT and ContoursADT modules. Is this implementation acceptable?


Okay I think that's okay then if you remove the random draws stuff, I think having the basis functions there is useful!


Also, suggest to make the name of repository specific to the dataset. Perhaps "vampire-moths-and-their-fruit-piercing-relatives" ? The idea is to make the datasets modular. As always . . . am open to discussion!


The canonical way to expand environment variables is [`GetEnv()`](http://www.innosetup.com/ishelp/topic_isxfunc_getenv.htm). In this case, it is even easier: use [`ExpandConstant()`](http://www.innosetup.com/ishelp/topic_isxfunc_expandconstant.htm) with [`{sys}`](http://www.innosetup.com/ishelp/topic_consts.htm). (There are plenty of examples in `install.iss`.)

Also: rather than returning a `Boolean`, why not return a `String` that is empty if no native OpenSSH was found, and that contains the path to the `ssh.exe` otherwise?

One caveat here, though: the installer is always 32-bit. So if you are installing a 64-bit Git for Windows, the installer will find the "Sysnative" version, but the installed `git.exe` *won't*.

So I guess you will need some code invoking `IsWin64()` to see whether you're running on a 64-bit Windows. If this is the case, you will want to look for the "Sysnative" version of OpenSSH.

*And* you will want to have code guarded by `#if BITNESS=='32'` to see whether the installer wants to install a 32-bit Git for Windows, and if it does try to do that *and* `IsWin64()` returns `True`, you will want to set `core.sshCommand` to the "Sysnative" version of the path to `ssh.exe`, otherwise to the "System32" version.


**README**

This thread is getting really long and I sense we are starting to frustrate you. I will try to unfrustrate you and then perhaps some of the previous hints be more understandable.

- Yes, it does boil down to your approach to formulating the puzzle. Let's step away from the code and just think about the puzzle.
- We need Carol only to be able to withdraw funds, but only if she knows a pw from Bob, and it's important not to send it in the open.

We need Alice to be able to recall it later. That should not be too hard, because knows everything.

A minimal way to solve this:

- Bob has pw and Carol has an address
- We can make a hash (pseudo), the puzzle = `hash(bobPw, carolAddress)`
- If Carol wants to withdraw the funds, then it's `hash(password, msg.sender)` - She must pass in a password to show that she knows the solution to the puzzle.
- If Alice wants to recall the funds, she needs to know the hash she sent. It should be after the expiry time.

There are still non-obvious traps. Notice that Carol will send the password in the open when she goes to collect the funds.

What I would suggest is let's just keep it simple and unfold it one step at a time. Let's refactor on firm footing using this formulation of the puzzle. Then, we can start looking at the finer details in another commit.

Have a good rest :-)


Chikita Isaac


Lines 35-39 are affecting the page header (navigation). Any reason we can't namespace this with an ancestor specific to the page contents?


We decided a long time ago to only go with `UNICODE`. So theoretically, you could drop the non-`UNICODE` version. But since we have `GetEnv()`, you can even drop the whole `ExpandEnvironmentStrings()` function.


That's a big parameter list, it might become a little confusing with so many strings. It would be nice if you had a "NextcloudAccount" struct that you could pass instead.


Shouldn't you run this inside a transaction? what if any of those queries fail for any reason?


Copy of this build can be found at https://www.mewbuilds.com/build/8e40bb34d063b500f4208ebd158f5eb6c82950b2/index.html


For the record I'm seriously considering reversing this, the column limit it stupid 😂 Oh to be young


Убираем коменты перед сдачей


You need to wait for a newer driver, the current ones don't correctly export the required functions.


Why not ``(1/(1+exp(-decision))``?


TeamCity Bvcms / Build Application [Build 121](https://builds.tpsdb.com/viewLog.html?buildId=252&buildTypeId=Bvcms_BuildApplication) is now running


Hmm... may be somewhere in project other calls similar to this... (


@benjamin-martinez what is this "Submodule dataverse added at 518f70"?


Do you think we have any chance of upstreaming this in some fashion?


hmm.. Not sure what you mean here? Could you give me an example?


Ok.  Thanks for the quick response.


Yeah, that's a good suggestion - will do that


Why is the 1.4.6 bump setting the version to 4 instead of 6?


Can other rom hacks be tested? Awesome work btw


I think it would be safer to generate this list at `release.sh` time via something like

```sh
cat >remove-openssh.inc.iss <<EOF
[Code]
function RemoveOpenSSHExecutables:Boolean;
begin
    return $(pacman -Ql openssh | sed -n 's/.* \(.*\.exe\)$/DeleteFile(AppDir + '\''\1'\'') and/p')True;
end
EOF
```


oh wait this is the old thing


This one, I'm not a very big fan :) ICC memcopy could be much better ...


Sorry, I'm on Fedora now and I'm not using DMS anymore :(


Isn't it important to check the task succeeds, so as not to mess up the node state for the next task?


TeamCity Bvcms / Build Application [Build 121](https://builds.tpsdb.com/viewLog.html?buildId=252&buildTypeId=Bvcms_BuildApplication) outcome was **SUCCESS**
Summary: Running Build time: 00:08:25


Some linebreaks would be real nice here, whether at 80 characters or http://rhodesmill.org/brandon/2012/one-sentence-per-line/ :P


TeamCity Bvcms / GenerateDatabase [Build 121](https://builds.tpsdb.com/viewLog.html?buildId=254&buildTypeId=Bvcms_GenerateDatabase) is now running


Hi! This is the friendly automated conda-forge-webservice.

I updated the Github team because of this commit.

- @dbast was added to this feedstock maintenance team.

You should get push access to this feedstock and CI services.

Feel free to join the community [chat room](https://gitter.im/conda-forge/conda-forge.github.io).

NOTE: Please make sure to not push to the repository directly.
      Use branches in your fork for any changes and send a PR.
      More details [here](https://conda-forge.org/docs/conda-forge_gotchas.html#using-a-fork-vs-a-branch-when-updating-a-recipe)


@andreicristianpetcu Thank you for answering.
Perhaps you will be interested by the RPM build when i'll have implemented the daemon.
I don't think you ever tried DMS yet as we didn't made any release ;)


공통
: admit_container 위치,,

로그인 페이지
 : input- 밑 짝대기
 : remember me 냅둘지 말지, 냅둔다면 boolean checkbox 회색 줄 없애야함

회원가입 페이지
 : input- 위치 반응 약간 애매하게 먹음, 밑 짝대기
 : Go to next step- 폰트 bold 안먹음, 링크 만들어야함
 password 길이 임의로 14로 설정 (maxlength)


![](https://github.trello.services/images/mini-trello-icon.png) [Build layout - Home page desktop design](https://trello.com/c/r4oa1gok/1-build-layout-home-page-desktop-design)


TeamCity Bvcms / GenerateDatabase [Build 121](https://builds.tpsdb.com/viewLog.html?buildId=254&buildTypeId=Bvcms_GenerateDatabase) outcome was **SUCCESS**
Summary: Running Build time: 00:01:58


Some link as to why this step was taken would be nice here.


s/In order to/to/


bikeshedding: 'Customizing Ansible'


Thanks, appreciate that.


Have to discuss with Sam how to best handle it. Yes, at least it should be logged. But a potential error should not stop execution of the rest as all tasks are intended to be atomic and independent.


смотри еще нюанс: когда я говорил про поиск, то там действительно не нужно было дополнительных элементов с описанием, так как в скрытом спане ты и так уже говоришь, про поиск, доп инфа избыточна, но  когда мы говорим про корзину, или, к примеру, про личный кабинет, то у нас пропадает понимание что за 2 товара или вход куда, а так же почему здесь пусто и что пусто (главная страница, корзина). И происходит путаница
Можно добавить к контенту скрытый спан с поясняющим текстом, например: `<a class="user-block-btn btn-login" href="#">Вход<span class="visually-hidden">в личный кабинет</span></a>`

то есть, для пользователя обычного - никакого лишнего текста, и так все понятно
для пользователя со скринридером - понятный и человечный интерфейс


Well done...


FYI - not sure if you were done with the people grid (@leonardsmalls), but it looks like it's not as compact as needed. The people grid on the [library homepage](https://www-test.iwu.edu/library/) displays like:
<img width="848" alt="screen shot 2018-08-20 at 15 24 03" src="https://user-images.githubusercontent.com/313667/44364695-4af95b80-a48d-11e8-97fe-2233e6fb96cc.png">


обрати внимание на комменты, которые оставил на странице каталога


Automated Test Suite Message


With tasks that don't change state there's no need to check for success, only with state-changing tasks.


s/Obviously this/This/


How much memory does this consume? Gmres (1000) allocates 1000x RHS-sized vectors. I would be careful with making this default.


Created multidev environment [next50#ci-147](https://dashboard.pantheon.io/sites/8e7c33cd-c6bd-4dcf-a71d-f1ade4f2e791#ci-147).

[![Visit Site](https://raw.githubusercontent.com/pantheon-systems/ci-drops-8/0.1.0/data/img/visit-site-36.png)](https://ci-147-next50.pantheonsite.io/)


I believe this has broken OpenBSD systems.  `--strip-components` doesn't look to be available on my systems.


You mean like https://jira.reactos.org/browse/CORE-14932 ?


Thanks, fixed


for eating specific parts of a target, like fruit, I'd add two columns: targetBodyPartName and targetBodyPartId with values like name: fruit and id: http://purl.obolibrary.org/obo/PO_0009001 .


Queries can fail for various reasons. For example, the server could crash or lose power halfway. Or, if you host your database in a different machine, maybe the packets get lost. Or maybe somebody found a flaw in your data validation and sent a string where it was supposed to be an integer.

Sometimes when you run execute multiple SQL write statements you actually want them to be "one thing", that is, either all statements succeed, or all fail, but never something in between.

The way this function works right now, if the update account statement fails, I would still have a valid entry in the nextcloud table. This would be an inconsistent state, that could lead to weird bugs on other parts of the app. If it was run inside a transaction then if the update fails, the first insert gets discarded so that the database rolls back to the initial state, as if nothing here ever happened.

You can read more about transactions [here](https://www.postgresql.org/docs/8.3/static/tutorial-transactions.html)


@eladsal nice work! I’m confused where is this code? In a PR? Also were you going to write a unit test?


Apparently, different versions of clang have different ideas of what `-Wall` means. Compilation fails on TravisCI with clang-5, but was OK on my box with clang-6.


3rd option looks perfect


This shouldn't be set this high. Run_simulations does not consume a lot of memory. Neither is it compute intensive, so keeping it at 1 minute has minimal overheads, whereas doing it every 30 minutes could mean that we're wasting some time. Please revert.


Another one combo would be "blood" with http://purl.obolibrary.org/obo/UBERON_0000178 .


The taint check should stay surely for this boss encounter? I think the spell id here is wrong though, the WoWHead encounter guide seems to indicate it's `273677`?

**Links:**
https://www.wowhead.com/npc=133392/avatar-of-sethraliss#encounter
https://www.wowhead.com/spell=273677/taint


Nice catch!


Created multidev environment [rif-digital#ci-1](https://dashboard.pantheon.io/sites/e1b86e04-8faa-4d59-9ff9-65380fc53a0a#ci-1).

[![Visit Site](https://raw.githubusercontent.com/pantheon-systems/ci-drops-8/0.1.0/data/img/visit-site-36.png)](https://ci-1-rif-digital.pantheonsite.io/)


Created multidev environment [general-finishes-orders#ci-1](https://dashboard.pantheon.io/sites/0453fd7e-0b43-481b-82ae-456e1fc34f49#ci-1).

[![Visit Site](https://raw.githubusercontent.com/pantheon-systems/ci-drops-8/0.1.0/data/img/visit-site-36.png)](https://ci-1-general-finishes-orders.pantheonsite.io/)


This looks to have broken builds on my OpenBSD systems.  `--strip-components` doesn't look to be available on my OpenBSD boxes.  Reverting this change locally allows the configure to continue.


Hrm I created a few macros with /use 13 and I purposely used trinkets that I had just received and we're not cached, and I still got their proper icons


Adds .gitignore to prevent files used by Android Studio from being added to the repository.


Since this is a unit test can we just create the config object that we want instead of writing files on disk? The reading from disk is already being tested in the main_test and in the config_test.


My commit last week populated icons for non cached items. Do you get proper cooldown info for those trinkets?


Created multidev environment [riveralive-cms#ci-243](https://dashboard.pantheon.io/sites/ced938b0-bbbf-4ed2-ba1c-98b66d8ba2be#ci-243).

[![Visit Site](https://raw.githubusercontent.com/pantheon-systems/ci-drops-8/0.1.0/data/img/visit-site-36.png)](https://ci-243-riveralive-cms.pantheonsite.io/)


Automated Test Suite Message


Please fix indentation.


а почему ты заменила `label` на `button`. Все же было хорошо :(


Created multidev environment [lawhelp#ci-900](https://dashboard.pantheon.io/sites/9ec12d94-c804-44b7-968e-166a0b49fdc0#ci-900).

[![Visit Site](https://raw.githubusercontent.com/pantheon-systems/ci-drops-8/0.1.0/data/img/visit-site-36.png)](https://ci-900-lawhelp.pantheonsite.io/)


Tasks are always state changing. All r/o access of node is done directly with state.


back to one commit earlier


Per the README:

> The repository contains an open source version of the log package
used inside Google. The master copy of the source lives inside
Google, not here. The code in this repo is for export only and is not itself
under development. Feature requests will be ignored.

So unlikely.  Fortunately, for us, they haven't updated the code in 2 years, so I suspect the maintenance burden of our own fork will not be problematic.


How is it unneeded? It seems to be used below.


Well, this is not a list anymore 😅


close #1


output_processor_json (mbadams5) - Win64-Windows-7-VisualStudio-14: Tests Failed (2415 of 2992 tests passed, 0 test warnings)

Failures:

integration Test Summary
 * Passed: 631
 * Failed: 1

regression Test Summary
 * Passed: 54
 * Failed: 576

![Build Badge](http://img.shields.io/badge/build%20status-passing-green.png) ![Test Badge](http://img.shields.io/badge/tests%20passed-80.72%25-red.png)


So sorry @baxandrei, I did make the necessary changes to database generation but for some reason it wasn't included in the commit. I've fixed it in 069547287fd54dd3778d3fae59962f3a36ec1078


can u update to the last version, i like the downloads but i like more the minimap


Translation of ArcGIS REST API styling to OpenLayers styles using the style generator with some minor changes from https://github.com/boundlessgeo/ole/blob/master/src/StyleGenerator.js

Timefilter implementation not ready for ArcGIS REST services.


Ok, `coffeescript@2.3.1_2` works with Meteor `1.7.1-rc.4` now (and with any version 1.7.0.x or earlier, thanks to 41b2f76ef3e9f7e52e1bd3477d58949f0e59d8d9.


![](https://github.trello.services/images/mini-trello-icon.png) [Modify your front-end so that it uses your newly created Web API](https://trello.com/c/8s7DE5Sf/9-modify-your-front-end-so-that-it-uses-your-newly-created-web-api)


Created multidev environment [lawhelp#ci-902](https://dashboard.pantheon.io/sites/9ec12d94-c804-44b7-968e-166a0b49fdc0#ci-902).

[![Visit Site](https://raw.githubusercontent.com/pantheon-systems/ci-drops-8/0.1.0/data/img/visit-site-36.png)](https://ci-902-lawhelp.pantheonsite.io/)


@freekmurze Quick note on this change, the `--color` option made the output a little nicer (though perhaps not to everyone):

Before:

After:

Would you be open to an addition PR to optionally add this option?


You are not actually using `testArray` in your function.


again this file appears as changed, please reset if not so otherwise it's harder to review it


Can't review this change using  github functionality but looks good.


"and and"


between here looks to appear some code mis-formattings


In this function `a`, `b`, `c`, and mult2 are undefined. And your string is a little off.


It the option -> If the option


Powinno być wywołanie metody z serwisu, która usunie zadanie o danym id


Metoda powinna przyjmować argument


`place` instead of placed


Should `value = 2` be `value = 1` here? Same for the line above, wrong way around? L708 checks for mode == 2 to cast consecration - so is only going to cast on disabled/off?


This should rather just be a String


Yes something like that.


@eladsal your commits should not be pushed directly into dev. You should issue a PR instead.

If you don’t know how I would be happy to explain the process.

Also we are running a large testing deficit. Would really like to see a test on this.


fixing typo on commit: *draft, draft list, remove post option


Now could not deploy this pull request since the `type` in the `now.json` file is invalid. It should be one of the following:

* npm
* docker
* static

	Click here to see the contents of `now.json`

{
  "type": "static2",
  "alias": [
    "akurulk-simple-now-app.now.sh",
    "akurulk-1-simple-now-app.now.sh"
  ]
}

For more information on now.json visit https://zeit.co/docs/features/configuration#now.json.


Created multidev environment [rail-uga-stellar#ci-437](https://dashboard.pantheon.io/sites/05f5afa3-c1ec-448f-915a-9234103f2409#ci-437).

[![Visit Site](https://raw.githubusercontent.com/pantheon-systems/ci-drops-8/0.1.0/data/img/visit-site-36.png)](https://ci-437-rail-uga-stellar.pantheonsite.io/)


Created multidev environment [rail-uga-stellar#pr-58](https://dashboard.pantheon.io/sites/05f5afa3-c1ec-448f-915a-9234103f2409#pr-58).

[![Visit Site](https://raw.githubusercontent.com/pantheon-systems/ci-drops-8/0.1.0/data/img/visit-site-36.png)](https://pr-58-rail-uga-stellar.pantheonsite.io/)


Created multidev environment [general-finishes-orders#ci-4](https://dashboard.pantheon.io/sites/0453fd7e-0b43-481b-82ae-456e1fc34f49#ci-4).

[![Visit Site](https://raw.githubusercontent.com/pantheon-systems/ci-drops-8/0.1.0/data/img/visit-site-36.png)](https://ci-4-general-finishes-orders.pantheonsite.io/)


Created multidev environment [rail-uga-stellar#pr-59](https://dashboard.pantheon.io/sites/05f5afa3-c1ec-448f-915a-9234103f2409#pr-59).

[![Visit Site](https://raw.githubusercontent.com/pantheon-systems/ci-drops-8/0.1.0/data/img/visit-site-36.png)](https://pr-59-rail-uga-stellar.pantheonsite.io/)


it was "right" in that i didn't mix up the source and destination. rails scales like shit in general (come to think of it twitter was originally on rails and they ditched that shit pretty quickly, not sure why eugen went for that one honestly) and if this starts blowing up probably the first thing i'll do if it's maxing out an expensive linode is set it up anew on a non-dockerized setup, then separate the application and database server. i can't imagine it ever getting so big we'll need more than this though.


![](https://github.trello.services/images/mini-trello-icon.png) [MVP:](https://trello.com/c/Xg9iTnFG/1-mvp)


expanded-runperiod (jasondegraw) - x86_64-MacOS-10.9-clang: OK (2982 of 2983 tests passed, 15 test warnings)

Messages:

 * 1 test had: Table big diffs.
 * 15 tests had: Table small diffs.

Failures:

regression Test Summary
 * Passed: 628
 * Failed: 1

![Build Badge](http://img.shields.io/badge/build%20status-passing-green.png) ![Test Badge](http://img.shields.io/badge/tests%20passed-99.97%25-yellow.png)


odd - I tried from my work & two personal addresses & it was fine.

@lc512k can you chat to Christine tomorrow to see if the emails arrived?


Created multidev environment [next50#ci-151](https://dashboard.pantheon.io/sites/8e7c33cd-c6bd-4dcf-a71d-f1ade4f2e791#ci-151).

[![Visit Site](https://raw.githubusercontent.com/pantheon-systems/ci-drops-8/0.1.0/data/img/visit-site-36.png)](https://ci-151-next50.pantheonsite.io/)


<details>

<summary>Submitting the task to Taskcluster failed. Details</summary>

You do not have sufficient scopes. You are missing the following scopes:

```
{
  "AnyOf": [
    {
      "AnyOf": [
        "queue:create-task:highest:aws-provisioner-v1/wpt-docker-worker",
        "queue:create-task:very-high:aws-provisioner-v1/wpt-docker-worker",
        "queue:create-task:high:aws-provisioner-v1/wpt-docker-worker",
        "queue:create-task:medium:aws-provisioner-v1/wpt-docker-worker",
        "queue:create-task:low:aws-provisioner-v1/wpt-docker-worker",
        "queue:create-task:very-low:aws-provisioner-v1/wpt-docker-worker",
        "queue:create-task:lowest:aws-provisioner-v1/wpt-docker-worker"
      ]
    },
    {
      "AnyOf": [
        "queue:create-task:aws-provisioner-v1/wpt-docker-worker",
        {
          "AllOf": [
            "queue:define-task:aws-provisioner-v1/wpt-docker-worker",
            "queue:task-group-id:taskcluster-github/KfvyioSTQualv4D1JRp_Mg",
            "queue:schedule-task:taskcluster-github/KfvyioSTQualv4D1JRp_Mg/AMNeEj3tRTmBURLThdrLOQ"
          ]
        }
      ]
    }
  ]
}
```

You have the scopes:

```
[
  "assume:repo:github.com/bocoup/wpt:branch:master",
  "queue:create-task:aws-provisioner-v1/github-worker",
  "queue:create-task:aws-provisioner-v1/win2012r2",
  "queue:route:index.garbage.*",
  "queue:scheduler-id:taskcluster-github",
  "secrets:get:garbage/*",
  "secrets:set:garbage/*"
]
```

This request requires you to satisfy this scope expression:

```
{
  "AllOf": [
    {
      "AnyOf": [
        {
          "AllOf": [
            "queue:scheduler-id:taskcluster-github",
            {
              "AnyOf": [
                "queue:create-task:highest:aws-provisioner-v1/wpt-docker-worker",
                "queue:create-task:very-high:aws-provisioner-v1/wpt-docker-worker",
                "queue:create-task:high:aws-provisioner-v1/wpt-docker-worker",
                "queue:create-task:medium:aws-provisioner-v1/wpt-docker-worker",
                "queue:create-task:low:aws-provisioner-v1/wpt-docker-worker",
                "queue:create-task:very-low:aws-provisioner-v1/wpt-docker-worker",
                "queue:create-task:lowest:aws-provisioner-v1/wpt-docker-worker"
              ]
            }
          ]
        },
        {
          "AnyOf": [
            "queue:create-task:aws-provisioner-v1/wpt-docker-worker",
            {
              "AllOf": [
                "queue:define-task:aws-provisioner-v1/wpt-docker-worker",
                "queue:task-group-id:taskcluster-github/KfvyioSTQualv4D1JRp_Mg",
                "queue:schedule-task:taskcluster-github/KfvyioSTQualv4D1JRp_Mg/AMNeEj3tRTmBURLThdrLOQ"
              ]
            }
          ]
        }
      ]
    }
  ]
}
```

---

* method:     createTask
* errorCode:  InsufficientScopes
* statusCode: 403
* time:       2018-08-20T21:02:55.470Z

</details>


This throws an exception here, that deploy_path is not present in the configuration (defined in .hostrs.yml in my setup and added via inventory() in deploy.php) - if i remove this line everything works fine ...


<details>

<summary>Submitting the task to Taskcluster failed. Details</summary>

expected hexadecimal character at line 133, column 58:
     ... ffected | base64 -d | sed 's/\x0/\n/g';
                                         ^

</details>


this exercise gave me a headache, I'm done tho


Merged, All good!


As soon as I start editing Markdown, I forget all about line breaks 😅


that probably explains why the logic was inverted in the first place then.

you could slap a ROT180 on this, and assume it renders upside down by default on hardware, or you could revert the whole thing and assume that the bug is with the 'canvas' game code.


<details>

<summary>Submitting the task to Taskcluster failed. Details</summary>

expected hexadecimal character at line 133, column 58:
     ... ffected | base64 -d | sed 's/\x0/\\n/g';
                                         ^

</details>


maybe better `office_cve2017_11882_equation_exploit`


This commit breaks logic very badly, for example if i have 2 modems, and 2 interfaces inside system but without attached eth devices to them, this commit creates 2 more interfaces, and even after deleting them and assigning eth devices to proper interfaces they dont work.. zero traffic rt\tx


![](https://github.trello.services/images/mini-trello-icon.png) [Project setup and planning](https://trello.com/c/8WqCAeyd/3-project-setup-and-planning)


just felt the need to say something here


Created multidev environment [next50#ci-154](https://dashboard.pantheon.io/sites/8e7c33cd-c6bd-4dcf-a71d-f1ade4f2e791#ci-154).

[![Visit Site](https://raw.githubusercontent.com/pantheon-systems/ci-drops-8/0.1.0/data/img/visit-site-36.png)](https://ci-154-next50.pantheonsite.io/)


Created multidev environment [lawhelp#ci-904](https://dashboard.pantheon.io/sites/9ec12d94-c804-44b7-968e-166a0b49fdc0#ci-904).

[![Visit Site](https://raw.githubusercontent.com/pantheon-systems/ci-drops-8/0.1.0/data/img/visit-site-36.png)](https://ci-904-lawhelp.pantheonsite.io/)


It can be TypeKind.Error


Created multidev environment [next50#ci-156](https://dashboard.pantheon.io/sites/8e7c33cd-c6bd-4dcf-a71d-f1ade4f2e791#ci-156).

[![Visit Site](https://raw.githubusercontent.com/pantheon-systems/ci-drops-8/0.1.0/data/img/visit-site-36.png)](https://ci-156-next50.pantheonsite.io/)


Hi! This is the friendly automated conda-forge-webservice.

I updated the Github team because of this commit.

- @halldc was added to this feedstock maintenance team.

You should get push access to this feedstock and CI services.

Feel free to join the community [chat room](https://gitter.im/conda-forge/conda-forge.github.io).

NOTE: Please make sure to not push to the repository directly.
      Use branches in your fork for any changes and send a PR.
      More details [here](https://conda-forge.org/docs/conda-forge_gotchas.html#using-a-fork-vs-a-branch-when-updating-a-recipe)


how about static fields?


남세님 트위치 방송 잘 보고있습니다.
프로그래밍 관련 질문 하나만 받아주실수 있나요?
너무 막막해서 그렇습니다


Agree it's better to use `update!` but it can raise an exception so we need to rescue it somewhere
Also for code beauty we can skip curly brackets ```article.update!({title:params[:title], text:params[:text]})```


yes sid you are indeed a dumbo


expanded-runperiod (jasondegraw) - x86_64-Linux-Ubuntu-14.04-gcc-4.8: OK (3022 of 3023 tests passed, 15 test warnings)

Messages:

 * 1 test had: Table big diffs.
 * 15 tests had: Table small diffs.

Failures:

regression Test Summary
 * Passed: 648
 * Failed: 1

![Build Badge](http://img.shields.io/badge/build%20status-passing-green.png) ![Test Badge](http://img.shields.io/badge/tests%20passed-99.97%25-yellow.png)