[R/boxplots.R:2:1:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L2) *style:* **Lines should not be more than 80 characters.**
```r
  utils::globalVariables(c(".", ":=", ".SD", "ageClass", "group", "proportionCC",
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/boxplots.R:11:1:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L11) *style:* **Variable or function name should be snake_case.**
```r
.doPlotBoxplot <- function(data, authStatus, fname = NULL, ageClasses,
^~~~~~~~~~~~~~
```
[R/boxplots.R:11:34:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L11) *style:* **Variable or function name should be snake_case.**
```r
.doPlotBoxplot <- function(data, authStatus, fname = NULL, ageClasses,
                                 ^~~~~~~~~~
```
[R/boxplots.R:11:60:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L11) *style:* **Variable or function name should be snake_case.**
```r
.doPlotBoxplot <- function(data, authStatus, fname = NULL, ageClasses,
                                                           ^~~~~~~~~~
```
[R/boxplots.R:12:41:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L12) *style:* **Variable or function name should be snake_case.**
```r
                           fout = NULL, vegCover, zone, ...) {
                                        ^~~~~~~~
```
[R/boxplots.R:16:3:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L16) *style:* **Variable or function name should be snake_case.**
```r
  boxplotData <- data.table(zone = rep(zone, 4),
  ^~~~~~~~~~~
```
[R/boxplots.R:32:1:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L32) *style:* **Lines should not be more than 80 characters.**
```r
    points(data$proportionCC[ids], factor(data$ageClass[1:4]), col = "red", pch = 20, cex = 3)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/boxplots.R:54:1:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L54) *style:* **Variable or function name should be snake_case.**
```r
runBoxPlotsVegCover <- function(map, functionName, analysisGroups, dPath) {
^~~~~~~~~~~~~~~~~~~
```
[R/boxplots.R:54:38:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L54) *style:* **Variable or function name should be snake_case.**
```r
runBoxPlotsVegCover <- function(map, functionName, analysisGroups, dPath) {
                                     ^~~~~~~~~~~~
```
[R/boxplots.R:54:52:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L54) *style:* **Variable or function name should be snake_case.**
```r
runBoxPlotsVegCover <- function(map, functionName, analysisGroups, dPath) {
                                                   ^~~~~~~~~~~~~~
```
[R/boxplots.R:54:68:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L54) *style:* **Variable or function name should be snake_case.**
```r
runBoxPlotsVegCover <- function(map, functionName, analysisGroups, dPath) {
                                                                   ^~~~~
```
[R/boxplots.R:55:3:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L55) *style:* **Variable or function name should be snake_case.**
```r
  ageClasses <- c("Young", "Immature", "Mature", "Old")
  ^~~~~~~~~~
```
[R/boxplots.R:56:3:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L56) *style:* **Variable or function name should be snake_case.**
```r
  allRepPolys <- na.omit(map@metadata[[analysisGroups]])
  ^~~~~~~~~~~
```
[R/boxplots.R:60:1:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L60) *style:* **Lines should not be more than 80 characters.**
```r
    allData <- map@analysesData[[functionName]][["LeadingVegTypeByAgeClass"]][[poly]]
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/boxplots.R:60:5:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L60) *style:* **Variable or function name should be snake_case.**
```r
    allData <- map@analysesData[[functionName]][["LeadingVegTypeByAgeClass"]][[poly]]
    ^~~~~~~
```
[R/boxplots.R:62:7:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L62) *style:* **Variable or function name should be snake_case.**
```r
      allData <- map@analysesData[[functionName]][[poly]] ## TODO: fix upstream
      ^~~~~~~
```
[R/boxplots.R:63:5:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L63) *style:* **Variable or function name should be snake_case.**
```r
    allData <- unique(allData) ## remove duplicates; with LandWeb#89
    ^~~~~~~
```
[R/boxplots.R:66:1:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L66) *style:* **Lines should not be more than 80 characters.**
```r
    allData[["vegCover"]] <- gsub(" leading", "", allData[["vegCover"]]) %>% ## no longer needed?
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/boxplots.R:69:1:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L69) *style:* **Lines should not be more than 80 characters.**
```r
    allData[vegCover == "Fir", vegCover := "Abie_sp"] ## so far, rep01 is the only one needing fixing
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/boxplots.R:69:13:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L69) *warning:* **no visible binding for global variable ‘vegCover’**
```r
    allData[vegCover == "Fir", vegCover := "Abie_sp"] ## so far, rep01 is the only one needing fixing
            ^~~~~~~~
```
[R/boxplots.R:69:13:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L69) *warning:* **no visible binding for global variable ‘vegCover’**
```r
    allData[vegCover == "Fir", vegCover := "Abie_sp"] ## so far, rep01 is the only one needing fixing
            ^~~~~~~~
```
[R/boxplots.R:69:32:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L69) *style:* **Variable or function name should be snake_case.**
```r
    allData[vegCover == "Fir", vegCover := "Abie_sp"] ## so far, rep01 is the only one needing fixing
                               ^~~~~~~~
```
[R/boxplots.R:69:41:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L69) *warning:* **no visible global function definition for ‘:=’, Did you mean ':'?**
```r
    allData[vegCover == "Fir", vegCover := "Abie_sp"] ## so far, rep01 is the only one needing fixing
                                        ^~
```
[R/boxplots.R:70:13:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L70) *warning:* **no visible binding for global variable ‘vegCover’**
```r
    allData[vegCover == "Wh Spruce", vegCover := "Pice_gla"]
            ^~~~~~~~
```
[R/boxplots.R:70:13:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L70) *warning:* **no visible binding for global variable ‘vegCover’**
```r
    allData[vegCover == "Wh Spruce", vegCover := "Pice_gla"]
            ^~~~~~~~
```
[R/boxplots.R:70:38:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L70) *style:* **Variable or function name should be snake_case.**
```r
    allData[vegCover == "Wh Spruce", vegCover := "Pice_gla"]
                                     ^~~~~~~~
```
[R/boxplots.R:70:47:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L70) *warning:* **no visible global function definition for ‘:=’, Did you mean ':'?**
```r
    allData[vegCover == "Wh Spruce", vegCover := "Pice_gla"]
                                              ^~
```
[R/boxplots.R:71:13:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L71) *warning:* **no visible binding for global variable ‘vegCover’**
```r
    allData[vegCover == "Bl Spruce", vegCover := "Pice_mar"]
            ^~~~~~~~
```
[R/boxplots.R:71:13:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L71) *warning:* **no visible binding for global variable ‘vegCover’**
```r
    allData[vegCover == "Bl Spruce", vegCover := "Pice_mar"]
            ^~~~~~~~
```
[R/boxplots.R:71:38:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L71) *style:* **Variable or function name should be snake_case.**
```r
    allData[vegCover == "Bl Spruce", vegCover := "Pice_mar"]
                                     ^~~~~~~~
```
[R/boxplots.R:71:47:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L71) *warning:* **no visible global function definition for ‘:=’, Did you mean ':'?**
```r
    allData[vegCover == "Bl Spruce", vegCover := "Pice_mar"]
                                              ^~
```
[R/boxplots.R:72:13:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L72) *warning:* **no visible binding for global variable ‘vegCover’**
```r
    allData[vegCover == "Pine", vegCover := "Pinu_sp"]
            ^~~~~~~~
```
[R/boxplots.R:72:13:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L72) *warning:* **no visible binding for global variable ‘vegCover’**
```r
    allData[vegCover == "Pine", vegCover := "Pinu_sp"]
            ^~~~~~~~
```
[R/boxplots.R:72:33:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L72) *style:* **Variable or function name should be snake_case.**
```r
    allData[vegCover == "Pine", vegCover := "Pinu_sp"]
                                ^~~~~~~~
```
[R/boxplots.R:72:42:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L72) *warning:* **no visible global function definition for ‘:=’, Did you mean ':'?**
```r
    allData[vegCover == "Pine", vegCover := "Pinu_sp"]
                                         ^~
```
[R/boxplots.R:73:13:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L73) *warning:* **no visible binding for global variable ‘vegCover’**
```r
    allData[vegCover == "Decid", vegCover := "Popu_sp"]
            ^~~~~~~~
```
[R/boxplots.R:73:13:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L73) *warning:* **no visible binding for global variable ‘vegCover’**
```r
    allData[vegCover == "Decid", vegCover := "Popu_sp"]
            ^~~~~~~~
```
[R/boxplots.R:73:34:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L73) *style:* **Variable or function name should be snake_case.**
```r
    allData[vegCover == "Decid", vegCover := "Popu_sp"]
                                 ^~~~~~~~
```
[R/boxplots.R:73:43:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L73) *warning:* **no visible global function definition for ‘:=’, Did you mean ':'?**
```r
    allData[vegCover == "Decid", vegCover := "Popu_sp"]
                                          ^~
```
[R/boxplots.R:75:13:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L75) *style:* **Variable or function name should be snake_case.**
```r
    allData$ageClass <- factor(allData$ageClass, ageClasses)
            ^~~~~~~~
```
[R/boxplots.R:77:34:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L77) *warning:* **no visible binding for global variable ‘group’, Did you mean 'drop'?**
```r
    data <- allData[!grepl("CC", group)]
                                 ^~~~~
```
[R/boxplots.R:79:5:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L79) *style:* **Variable or function name should be snake_case.**
```r
    dataCC <- allData[grepl("CC", group)]
    ^~~~~~
```
[R/boxplots.R:79:35:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L79) *warning:* **no visible binding for global variable ‘group’, Did you mean 'drop'?**
```r
    dataCC <- allData[grepl("CC", group)]
                                  ^~~~~
```
[R/boxplots.R:80:1:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L80) *style:* **Lines should not be more than 80 characters.**
```r
    setnames(dataCC, "proportion", "proportionCC") ## rename the column to proportionCC
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/boxplots.R:80:5:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L80) *warning:* **no visible global function definition for ‘setnames’, Did you mean 'setNames'?**
```r
    setnames(dataCC, "proportion", "proportionCC") ## rename the column to proportionCC
    ^~~~~~~~
```
[R/boxplots.R:81:5:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L81) *style:* **Variable or function name should be snake_case.**
```r
    dataCC <- dataCC[, c("group", "label", "NPixels") := list(NULL, NULL, NULL)]
    ^~~~~~
```
[R/boxplots.R:81:55:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L81) *warning:* **no visible global function definition for ‘:=’, Did you mean ':'?**
```r
    dataCC <- dataCC[, c("group", "label", "NPixels") := list(NULL, NULL, NULL)]
                                                      ^~
```
[R/boxplots.R:83:32:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L83) *warning:* **no visible global function definition for ‘.’, Did you mean 'C'?**
```r
    data2 <- dataCC[data, on = .(zone, vegCover, ageClass)]
                               ^
```
[R/boxplots.R:83:34:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L83) *warning:* **no visible binding for global variable ‘zone’, Did you mean 'line'?**
```r
    data2 <- dataCC[data, on = .(zone, vegCover, ageClass)]
                                 ^~~~
```
[R/boxplots.R:83:40:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L83) *warning:* **no visible binding for global variable ‘vegCover’**
```r
    data2 <- dataCC[data, on = .(zone, vegCover, ageClass)]
                                       ^~~~~~~~
```
[R/boxplots.R:83:50:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L83) *warning:* **no visible binding for global variable ‘ageClass’, Did you mean 'ageClasses'?**
```r
    data2 <- dataCC[data, on = .(zone, vegCover, ageClass)]
                                                 ^~~~~~~~
```
[R/boxplots.R:84:17:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L84) *warning:* **no visible binding for global variable ‘NPixels’**
```r
    data2[is.na(NPixels), NPixels := 0]
                ^~~~~~~
```
[R/boxplots.R:84:17:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L84) *warning:* **no visible binding for global variable ‘NPixels’**
```r
    data2[is.na(NPixels), NPixels := 0]
                ^~~~~~~
```
[R/boxplots.R:84:27:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L84) *style:* **Variable or function name should be snake_case.**
```r
    data2[is.na(NPixels), NPixels := 0]
                          ^~~~~~~
```
[R/boxplots.R:84:35:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L84) *warning:* **no visible global function definition for ‘:=’, Did you mean ':'?**
```r
    data2[is.na(NPixels), NPixels := 0]
                                  ^~
```
[R/boxplots.R:87:1:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L87) *style:* **Lines should not be more than 80 characters.**
```r
    ## NOTE: this is number of TREED pixels, which is likely smaller than the polygon area
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/boxplots.R:88:13:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L88) *style:* **Variable or function name should be snake_case.**
```r
    data2[, totalPixels := as.double(base::sum(NPixels, na.rm = TRUE)),
            ^~~~~~~~~~~
```
[R/boxplots.R:90:13:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L90) *style:* **Variable or function name should be snake_case.**
```r
    data2[, totalPixels2 := as.double(base::mean(totalPixels, na.rm = TRUE)),
            ^~~~~~~~~~~~
```
[R/boxplots.R:92:1:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L92) *style:* **Lines should not be more than 80 characters.**
```r
    try(write.csv(data2, file.path(dPath, paste0("leading_", gsub(" ", "_", poly), ".csv"))))
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/boxplots.R:99:1:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L99) *style:* **Lines should not be more than 80 characters.**
```r
    fout <- file.path(dPath, paste0("leading_boxplots_", gsub(" ", "_", poly), ".csv"))
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/boxplots.R:102:5:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L102) *style:* **Variable or function name should be snake_case.**
```r
    saveDir <- checkPath(file.path(dPath, poly), create = TRUE)
    ^~~~~~~
```
[R/boxplots.R:102:5:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L102) *warning:* **local variable ‘saveDir’ assigned but may not be used**
```r
    saveDir <- checkPath(file.path(dPath, poly), create = TRUE)
    ^~~~~~~
```
[R/boxplots.R:102:16:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L102) *warning:* **no visible global function definition for ‘checkPath’**
```r
    saveDir <- checkPath(file.path(dPath, poly), create = TRUE)
               ^~~~~~~~~
```
[R/boxplots.R:103:1:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L103) *style:* **Lines should not be more than 80 characters.**
```r
    savePng <- quote(file.path(saveDir, paste0(unique(paste(zone, vegCover, collapse = " ")), ".png")))
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/boxplots.R:103:5:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L103) *style:* **Variable or function name should be snake_case.**
```r
    savePng <- quote(file.path(saveDir, paste0(unique(paste(zone, vegCover, collapse = " ")), ".png")))
    ^~~~~~~
```
[R/boxplots.R:114:1:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L114) *style:* **Lines should not be more than 80 characters.**
```r
                                    main = unique(paste(zone, vegCover, collapse = "_")),
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/boxplots.R:115:1:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L115) *style:* **Lines should not be more than 80 characters.**
```r
                                    xlab = paste0("Proportion of forest area (total ",
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/boxplots.R:117:1:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L117) *style:* **Lines should not be more than 80 characters.**
```r
                                                           prod(res(rasterToMatch(map))) / 1e4,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/boxplots.R:123:1:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/boxplots.R#L123) *style:* **Lines should not be more than 80 characters.**
```r
          .SDcols = c("ageClass", "proportion", "proportionCC", "NPixels"), by = slices]
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/histograms.R:8:1:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L8) *style:* **Variable or function name should be snake_case.**
```r
.doPlotHistogram <- function(data, xlim, fname = NULL, ...) {
^~~~~~~~~~~~~~~~
```
[R/histograms.R:9:3:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L9) *style:* **Variable or function name should be snake_case.**
```r
  minNumBars <- 6
  ^~~~~~~~~~
```
[R/histograms.R:10:3:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L10) *style:* **Variable or function name should be snake_case.**
```r
  maxNumBars <- 30
  ^~~~~~~~~~
```
[R/histograms.R:11:3:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L11) *style:* **Variable or function name should be snake_case.**
```r
  rangeNClusters <- range(c(0, xlim, minNumBars)) ## TODO: verify
  ^~~~~~~~~~~~~~
```
[R/histograms.R:12:3:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L12) *style:* **Variable or function name should be snake_case.**
```r
  attemptedNumBars <- max(minNumBars, min(maxNumBars, diff(rangeNClusters)))
  ^~~~~~~~~~~~~~~~
```
[R/histograms.R:14:1:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L14) *style:* **Lines should not be more than 80 characters.**
```r
  breaksRaw <- seq(rangeNClusters[1], rangeNClusters[2], length.out = attemptedNumBars)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/histograms.R:14:3:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L14) *style:* **Variable or function name should be snake_case.**
```r
  breaksRaw <- seq(rangeNClusters[1], rangeNClusters[2], length.out = attemptedNumBars)
  ^~~~~~~~~
```
[R/histograms.R:15:1:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L15) *style:* **Lines should not be more than 80 characters.**
```r
  prettyBreaks <- pretty(breaksRaw, n = attemptedNumBars, min.n = min(attemptedNumBars, minNumBars))
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/histograms.R:15:3:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L15) *style:* **Variable or function name should be snake_case.**
```r
  prettyBreaks <- pretty(breaksRaw, n = attemptedNumBars, min.n = min(attemptedNumBars, minNumBars))
  ^~~~~~~~~~~~
```
[R/histograms.R:17:3:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L17) *style:* **Variable or function name should be snake_case.**
```r
  dataForBreaks <- dataForHistogram <- if (NROW(data) == 0) {
  ^~~~~~~~~~~~~
```
[R/histograms.R:17:20:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L17) *style:* **Variable or function name should be snake_case.**
```r
  dataForBreaks <- dataForHistogram <- if (NROW(data) == 0) {
                   ^~~~~~~~~~~~~~~~
```
[R/histograms.R:24:3:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L24) *style:* **Variable or function name should be snake_case.**
```r
  breaksLabels <- dataForBreaks$breaks
  ^~~~~~~~~~~~
```
[R/histograms.R:25:3:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L25) *style:* **Variable or function name should be snake_case.**
```r
  breaksInterval <- diff(breaksLabels)[1]
  ^~~~~~~~~~~~~~
```
[R/histograms.R:27:1:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L27) *style:* **Lines should not be more than 80 characters.**
```r
  histogramData <- dataForHistogram$counts / sum(dataForHistogram$counts) ## use proportion
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/histograms.R:27:3:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L27) *style:* **Variable or function name should be snake_case.**
```r
  histogramData <- dataForHistogram$counts / sum(dataForHistogram$counts) ## use proportion
  ^~~~~~~~~~~~~
```
[R/histograms.R:28:1:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L28) *style:* **Lines should not be more than 80 characters.**
```r
  histogramData[is.na(histogramData)] <- 0 # NA means that there were no large patches in dt
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/histograms.R:30:3:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L30) *style:* **Variable or function name should be snake_case.**
```r
  barplotBreaks <- seq_along(breaksLabels) - 0.5
  ^~~~~~~~~~~~~
```
[R/histograms.R:31:1:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L31) *style:* **Lines should not be more than 80 characters.**
```r
  addAxisParams <- list(side = 1, labels = breaksLabels, at = barplotBreaks - min(breaksLabels))
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/histograms.R:31:3:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L31) *style:* **Variable or function name should be snake_case.**
```r
  addAxisParams <- list(side = 1, labels = breaksLabels, at = barplotBreaks - min(breaksLabels))
  ^~~~~~~~~~~~~
```
[R/histograms.R:32:1:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L32) *style:* **Lines should not be more than 80 characters.**
```r
  verticalLineAtX <- unique(data$NCC)[1] / breaksInterval + 0.5 # The barplot xaxis is 1/2 a barwidth off
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/histograms.R:32:3:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L32) *style:* **Variable or function name should be snake_case.**
```r
  verticalLineAtX <- unique(data$NCC)[1] / breaksInterval + 0.5 # The barplot xaxis is 1/2 a barwidth off
  ^~~~~~~~~~~~~~~
```
[R/histograms.R:37:1:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L37) *style:* **Lines should not be more than 80 characters.**
```r
  if (!is.null(verticalLineAtX)) abline(v = verticalLineAtX, col = "red", lwd = 3)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/histograms.R:57:1:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L57) *style:* **Variable or function name should be snake_case.**
```r
runHistsLargePatches <- function(map, functionName, analysisGroups, dPath) {
^~~~~~~~~~~~~~~~~~~~
```
[R/histograms.R:57:39:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L57) *style:* **Variable or function name should be snake_case.**
```r
runHistsLargePatches <- function(map, functionName, analysisGroups, dPath) {
                                      ^~~~~~~~~~~~
```
[R/histograms.R:57:53:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L57) *style:* **Variable or function name should be snake_case.**
```r
runHistsLargePatches <- function(map, functionName, analysisGroups, dPath) {
                                                    ^~~~~~~~~~~~~~
```
[R/histograms.R:57:69:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L57) *style:* **Variable or function name should be snake_case.**
```r
runHistsLargePatches <- function(map, functionName, analysisGroups, dPath) {
                                                                    ^~~~~
```
[R/histograms.R:58:3:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L58) *style:* **Variable or function name should be snake_case.**
```r
  allRepPolys <- na.omit(map@metadata[[analysisGroups]])
  ^~~~~~~~~~~
```
[R/histograms.R:62:5:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L62) *style:* **Variable or function name should be snake_case.**
```r
    allData <- map@analysesData[[functionName]][["LargePatches"]][[poly]]
    ^~~~~~~
```
[R/histograms.R:64:7:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L64) *style:* **Variable or function name should be snake_case.**
```r
      allData <- map@analysesData[[functionName]][[poly]] ## TODO: fix upstream
      ^~~~~~~
```
[R/histograms.R:66:34:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L66) *warning:* **no visible binding for global variable ‘group’, Did you mean 'drop'?**
```r
    data <- allData[!grepl("CC", group)]
                                 ^~~~~
```
[R/histograms.R:67:5:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L67) *style:* **Variable or function name should be snake_case.**
```r
    dataCC <- allData[grepl("CC", group)]
    ^~~~~~
```
[R/histograms.R:67:35:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L67) *warning:* **no visible binding for global variable ‘group’, Did you mean 'drop'?**
```r
    dataCC <- allData[grepl("CC", group)]
                                  ^~~~~
```
[R/histograms.R:69:1:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L69) *style:* **Lines should not be more than 80 characters.**
```r
    data$rep <- as.numeric(factor(data$group)) ## TODO: workaround for incorrect rep values from LargePatches
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/histograms.R:72:5:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L72) *style:* **Variable or function name should be snake_case.**
```r
    slicesNoRep <- slices[slices != "rep"]
    ^~~~~~~~~~~
```
[R/histograms.R:74:19:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L74) *warning:* **no visible binding for global variable ‘ageClass’, Did you mean 'getClass'?**
```r
    data <- data[!ageClass == "NA" | !vegCover == "NA"]
                  ^~~~~~~~
```
[R/histograms.R:74:39:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L74) *warning:* **no visible binding for global variable ‘vegCover’**
```r
    data <- data[!ageClass == "NA" | !vegCover == "NA"]
                                      ^~~~~~~~
```
[R/histograms.R:75:5:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L75) *style:* **Variable or function name should be snake_case.**
```r
    emptyDT <- data.table(expand.grid(ageClass = unique(data$ageClass),
    ^~~~~~~
```
[R/histograms.R:80:5:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L80) *style:* **Variable or function name should be snake_case.**
```r
    patchSizes <- c(100, 500, 1000, 5000) ## minPatchSize <- 100
    ^~~~~~~~~~
```
[R/histograms.R:80:46:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L80) *style:* **Commented code should be removed.**
```r
    patchSizes <- c(100, 500, 1000, 5000) ## minPatchSize <- 100
                                             ^~~~~~~~~~~~~~~~~~~
```
[R/histograms.R:82:41:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L82) *style:* **Variable or function name should be snake_case.**
```r
    fout <- lapply(patchSizes, function(minPatchSize) {
                                        ^~~~~~~~~~~~
```
[R/histograms.R:83:7:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L83) *style:* **Variable or function name should be snake_case.**
```r
      nClustersDT <- data[sizeInHa >= minPatchSize, .N, by = slices]
      ^~~~~~~~~~~
```
[R/histograms.R:83:27:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L83) *warning:* **no visible binding for global variable ‘sizeInHa’**
```r
      nClustersDT <- data[sizeInHa >= minPatchSize, .N, by = slices]
                          ^~~~~~~~
```
[R/histograms.R:83:53:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L83) *warning:* **no visible binding for global variable ‘.N’, Did you mean 'ar'?**
```r
      nClustersDT <- data[sizeInHa >= minPatchSize, .N, by = slices]
                                                    ^~
```
[R/histograms.R:84:7:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L84) *style:* **Variable or function name should be snake_case.**
```r
      nClustersDT <- nClustersDT[emptyDT, on = slices, nomatch = NA]
      ^~~~~~~~~~~
```
[R/histograms.R:85:25:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L85) *warning:* **no visible binding for global variable ‘N’, Did you mean 'C'?**
```r
      nClustersDT[is.na(N), N := 0]
                        ^
```
[R/histograms.R:85:25:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L85) *warning:* **no visible binding for global variable ‘N’, Did you mean 'C'?**
```r
      nClustersDT[is.na(N), N := 0]
                        ^
```
[R/histograms.R:85:29:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L85) *style:* **Variable or function name should be snake_case.**
```r
      nClustersDT[is.na(N), N := 0]
                            ^
```
[R/histograms.R:85:31:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L85) *warning:* **no visible global function definition for ‘:=’, Did you mean ':'?**
```r
      nClustersDT[is.na(N), N := 0]
                              ^~
```
[R/histograms.R:87:7:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L87) *style:* **Variable or function name should be snake_case.**
```r
      nClustersDT_CC <- dataCC[sizeInHa >= minPatchSize, .N, by = slicesNoRep]
      ^~~~~~~~~~~~~~
```
[R/histograms.R:87:32:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L87) *warning:* **no visible binding for global variable ‘sizeInHa’**
```r
      nClustersDT_CC <- dataCC[sizeInHa >= minPatchSize, .N, by = slicesNoRep]
                               ^~~~~~~~
```
[R/histograms.R:87:58:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L87) *warning:* **no visible binding for global variable ‘.N’, Did you mean 'ar'?**
```r
      nClustersDT_CC <- dataCC[sizeInHa >= minPatchSize, .N, by = slicesNoRep]
                                                         ^~
```
[R/histograms.R:88:8:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L88) *style:* **Commented code should be removed.**
```r
      #nClustersDT_CC$rep <- as.numeric(nClustersDT_CC$rep)
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/histograms.R:89:7:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L89) *warning:* **no visible global function definition for ‘setnames’, Did you mean 'setNames'?**
```r
      setnames(nClustersDT_CC, "N", "NCC")
      ^~~~~~~~
```
[R/histograms.R:90:7:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L90) *style:* **Variable or function name should be snake_case.**
```r
      nClustersDT_CC <- nClustersDT_CC[emptyDT, on = slicesNoRep, nomatch = NA]
      ^~~~~~~~~~~~~~
```
[R/histograms.R:91:28:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L91) *warning:* **no visible binding for global variable ‘NCC’, Did you mean 'AIC'?**
```r
      nClustersDT_CC[is.na(NCC), NCC := 0]
                           ^~~
```
[R/histograms.R:91:28:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L91) *warning:* **no visible binding for global variable ‘NCC’, Did you mean 'AIC'?**
```r
      nClustersDT_CC[is.na(NCC), NCC := 0]
                           ^~~
```
[R/histograms.R:91:34:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L91) *style:* **Variable or function name should be snake_case.**
```r
      nClustersDT_CC[is.na(NCC), NCC := 0]
                                 ^~~
```
[R/histograms.R:91:38:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L91) *warning:* **no visible global function definition for ‘:=’, Did you mean ':'?**
```r
      nClustersDT_CC[is.na(NCC), NCC := 0]
                                     ^~
```
[R/histograms.R:93:7:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L93) *style:* **Variable or function name should be snake_case.**
```r
      nClustersDT <- nClustersDT[nClustersDT_CC, on = slices]
      ^~~~~~~~~~~
```
[R/histograms.R:97:1:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L97) *style:* **Lines should not be more than 80 characters.**
```r
                                                         "_", minPatchSize, ".csv"))))
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/histograms.R:99:1:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L99) *style:* **Lines should not be more than 80 characters.**
```r
      saveDir <- checkPath(file.path(dPath, poly, "largePatches", minPatchSize), create = TRUE)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/histograms.R:99:7:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L99) *style:* **Variable or function name should be snake_case.**
```r
      saveDir <- checkPath(file.path(dPath, poly, "largePatches", minPatchSize), create = TRUE)
      ^~~~~~~
```
[R/histograms.R:99:7:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L99) *warning:* **local variable ‘saveDir’ assigned but may not be used**
```r
      saveDir <- checkPath(file.path(dPath, poly, "largePatches", minPatchSize), create = TRUE)
      ^~~~~~~
```
[R/histograms.R:99:18:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L99) *warning:* **no visible global function definition for ‘checkPath’**
```r
      saveDir <- checkPath(file.path(dPath, poly, "largePatches", minPatchSize), create = TRUE)
                 ^~~~~~~~~
```
[R/histograms.R:100:7:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L100) *style:* **Variable or function name should be snake_case.**
```r
      savePng <- quote(file.path(saveDir, paste0(paste(unique(polygonName),
      ^~~~~~~
```
[R/histograms.R:103:1:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L103) *style:* **Lines should not be more than 80 characters.**
```r
                                                       collapse = " "), ".png")))
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/histograms.R:105:8:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L105) *style:* **Commented code should be removed.**
```r
      #browser()
       ^~~~~~~~~
```
[R/histograms.R:117:1:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L117) *style:* **Lines should not be more than 80 characters.**
```r
                                              xlab = paste0("Number of patches greater than ",
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/histograms.R:118:1:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/histograms.R#L118) *style:* **Lines should not be more than 80 characters.**
```r
                                                            minPatchSize, " ha"),
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/largePatches.R:25:1:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/largePatches.R#L25) *style:* **Lines should not be more than 80 characters.**
```r
LargePatches <- function(tsf, vtm, poly, labelColumn, id, ageClassCutOffs, ageClasses,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/largePatches.R:25:1:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/largePatches.R#L25) *style:* **Variable or function name should be snake_case.**
```r
LargePatches <- function(tsf, vtm, poly, labelColumn, id, ageClassCutOffs, ageClasses,
^~~~~~~~~~~~
```
[R/largePatches.R:25:42:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/largePatches.R#L25) *style:* **Variable or function name should be snake_case.**
```r
LargePatches <- function(tsf, vtm, poly, labelColumn, id, ageClassCutOffs, ageClasses,
                                         ^~~~~~~~~~~
```
[R/largePatches.R:25:59:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/largePatches.R#L25) *style:* **Variable or function name should be snake_case.**
```r
LargePatches <- function(tsf, vtm, poly, labelColumn, id, ageClassCutOffs, ageClasses,
                                                          ^~~~~~~~~~~~~~~
```
[R/largePatches.R:25:76:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/largePatches.R#L25) *style:* **Variable or function name should be snake_case.**
```r
LargePatches <- function(tsf, vtm, poly, labelColumn, id, ageClassCutOffs, ageClasses,
                                                                           ^~~~~~~~~~
```
[R/largePatches.R:26:26:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/largePatches.R#L26) *style:* **Variable or function name should be snake_case.**
```r
                         sppEquivCol, sppEquiv) {
                         ^~~~~~~~~~~
```
[R/largePatches.R:26:39:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/largePatches.R#L26) *style:* **Variable or function name should be snake_case.**
```r
                         sppEquivCol, sppEquiv) {
                                      ^~~~~~~~
```
[R/largePatches.R:32:3:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/largePatches.R#L32) *style:* **Variable or function name should be snake_case.**
```r
  timeSinceFireFilesRast <- Cache(.rasterToMemory, tsf[1])
  ^~~~~~~~~~~~~~~~~~~~~~
```
[R/largePatches.R:32:29:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/largePatches.R#L32) *warning:* **no visible global function definition for ‘Cache’**
```r
  timeSinceFireFilesRast <- Cache(.rasterToMemory, tsf[1])
                            ^~~~~
```
[R/largePatches.R:32:35:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/largePatches.R#L32) *warning:* **no visible binding for global variable ‘.rasterToMemory’**
```r
  timeSinceFireFilesRast <- Cache(.rasterToMemory, tsf[1])
                                  ^~~~~~~~~~~~~~~
```
[R/largePatches.R:41:3:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/largePatches.R#L41) *style:* **Variable or function name should be snake_case.**
```r
  rasRepPoly <- Cache(
  ^~~~~~~~~~
```
[R/largePatches.R:44:1:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/largePatches.R#L44) *style:* **Lines should not be more than 80 characters.**
```r
    emptyRaster = raster(timeSinceFireFilesRast), # doesn't need to the data -- makes Caching more effective
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/largePatches.R:49:3:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/largePatches.R#L49) *style:* **Variable or function name should be snake_case.**
```r
  rasVeg <- Cache(.rasterToMemory, vtm)
  ^~~~~~
```
[R/largePatches.R:49:13:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/largePatches.R#L49) *warning:* **no visible global function definition for ‘Cache’**
```r
  rasVeg <- Cache(.rasterToMemory, vtm)
            ^~~~~
```
[R/largePatches.R:49:19:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/largePatches.R#L49) *warning:* **no visible binding for global variable ‘.rasterToMemory’**
```r
  rasVeg <- Cache(.rasterToMemory, vtm)
                  ^~~~~~~~~~~~~~~
```
[R/largePatches.R:51:1:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/largePatches.R#L51) *style:* **Lines should not be more than 80 characters.**
```r
  splitVal <- paste0("_", 75757575, "_") # unlikely to occur for any other reason
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/largePatches.R:51:3:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/largePatches.R#L51) *style:* **Variable or function name should be snake_case.**
```r
  splitVal <- paste0("_", 75757575, "_") # unlikely to occur for any other reason
  ^~~~~~~~
```
[R/largePatches.R:55:35:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/largePatches.R#L55) *warning:* **no visible global function definition for ‘factorValues2’**
```r
  nas2 <- is.na(rasVeg[]) | is.na(factorValues2(rasVeg, rasVeg[], att = 1))
                                  ^~~~~~~~~~~~~
```
[R/largePatches.R:60:6:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/largePatches.R#L60) *style:* **Commented code should be removed.**
```r
    #name1a <- as.character(raster::levels(tsf)[[1]]$Factor)[tsf[][!nas]]
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/largePatches.R:61:27:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/largePatches.R#L61) *warning:* **no visible global function definition for ‘factorValues2’**
```r
    name1 <- as.character(factorValues2(tsf, tsf[], att = 2)[!nas])
                          ^~~~~~~~~~~~~
```
[R/largePatches.R:63:1:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/largePatches.R#L63) *style:* **Lines should not be more than 80 characters.**
```r
    colID <- which(colnames(raster::levels(rasVeg)[[1]]) %in% c("category", "Factor", "VALUE"))
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/largePatches.R:63:5:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/largePatches.R#L63) *style:* **Variable or function name should be snake_case.**
```r
    colID <- which(colnames(raster::levels(rasVeg)[[1]]) %in% c("category", "Factor", "VALUE"))
    ^~~~~
```
[R/largePatches.R:65:1:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/largePatches.R#L65) *style:* **Lines should not be more than 80 characters.**
```r
    #name2a <- as.character(raster::levels(rasVeg)[[1]][[colID]])[rasVeg[][!nas]]
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/largePatches.R:65:6:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/largePatches.R#L65) *style:* **Commented code should be removed.**
```r
    #name2a <- as.character(raster::levels(rasVeg)[[1]][[colID]])[rasVeg[][!nas]]
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/largePatches.R:66:27:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/largePatches.R#L66) *warning:* **no visible global function definition for ‘factorValues2’**
```r
    name2 <- as.character(factorValues2(rasVeg, rasVeg[], att = colID)[!nas])
                          ^~~~~~~~~~~~~
```
[R/largePatches.R:72:1:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/largePatches.R#L72) *style:* **Lines should not be more than 80 characters.**
```r
    if (!identical(length(name1), length(name2)) || !identical(length(name1), length(name3)))
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/largePatches.R:73:1:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/largePatches.R#L73) *style:* **Lines should not be more than 80 characters.**
```r
      stop("There is something wrong with tsf or rasVeg or rasRepPoly inside LargePatches")
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/largePatches.R:76:12:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/largePatches.R#L76) *warning:* **no visible global function definition for ‘raster’, Did you mean 'rasVeg'?**
```r
    ras <- raster(rasVeg)
           ^~~~~~
```
[R/largePatches.R:77:5:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/largePatches.R#L77) *style:* **Variable or function name should be snake_case.**
```r
    ffFactor <- factor(ff)
    ^~~~~~~~
```
[R/largePatches.R:78:1:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/largePatches.R#L78) *style:* **Lines should not be more than 80 characters.**
```r
    ras[!nas] <- ffFactor # 2 seconds ## note: sum(!nas, na.rm = TRUE) should equal length(ffFactor)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/largePatches.R:80:1:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/largePatches.R#L80) *style:* **Lines should not be more than 80 characters.**
```r
    areaAndPolyOut <- Cache(areaAndPolyValue, ras, length = Inf) # maybe lots of NAs on edge
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/largePatches.R:80:5:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/largePatches.R#L80) *style:* **Variable or function name should be snake_case.**
```r
    areaAndPolyOut <- Cache(areaAndPolyValue, ras, length = Inf) # maybe lots of NAs on edge
    ^~~~~~~~~~~~~~
```
[R/largePatches.R:80:23:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/largePatches.R#L80) *warning:* **no visible global function definition for ‘Cache’**
```r
    areaAndPolyOut <- Cache(areaAndPolyValue, ras, length = Inf) # maybe lots of NAs on edge
                      ^~~~~
```
[R/largePatches.R:80:29:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/largePatches.R#L80) *warning:* **no visible binding for global variable ‘areaAndPolyValue’**
```r
    areaAndPolyOut <- Cache(areaAndPolyValue, ras, length = Inf) # maybe lots of NAs on edge
                            ^~~~~~~~~~~~~~~~
```
[R/largePatches.R:81:1:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/largePatches.R#L81) *style:* **Lines should not be more than 80 characters.**
```r
    eTable <- data.frame(ID = seq_along(levels(ffFactor)), VALUE = levels(ffFactor))
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/largePatches.R:81:5:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/largePatches.R#L81) *style:* **Variable or function name should be snake_case.**
```r
    eTable <- data.frame(ID = seq_along(levels(ffFactor)), VALUE = levels(ffFactor))
    ^~~~~~
```
[R/largePatches.R:85:5:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/largePatches.R#L85) *style:* **Variable or function name should be snake_case.**
```r
    facPolygonID <- factor(types[areaAndPolyOut$polyID,3])
    ^~~~~~~~~~~~
```
[R/largePatches.R:85:56:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/largePatches.R#L85) *style:* **Commas should always have a space after.**
```r
    facPolygonID <- factor(types[areaAndPolyOut$polyID,3])
                                                       ^
```
[R/largePatches.R:86:5:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/largePatches.R#L86) *style:* **Variable or function name should be snake_case.**
```r
    outBySpecies <- data.table(polygonID = as.numeric(facPolygonID),
    ^~~~~~~~~~~~
```
[R/largePatches.R:96:12:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/largePatches.R#L96) *warning:* **no visible global function definition for ‘raster’, Did you mean 'rasVeg'?**
```r
    ras <- raster(rasVeg)
           ^~~~~~
```
[R/largePatches.R:97:5:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/largePatches.R#L97) *style:* **Variable or function name should be snake_case.**
```r
    ffFactor <- factor(ff)
    ^~~~~~~~
```
[R/largePatches.R:101:1:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/largePatches.R#L101) *style:* **Lines should not be more than 80 characters.**
```r
    areaAndPolyOut2 <- Cache(areaAndPolyValue, ras, length = Inf) # maybe lots of NAs on edge
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/largePatches.R:101:5:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/largePatches.R#L101) *style:* **Variable or function name should be snake_case.**
```r
    areaAndPolyOut2 <- Cache(areaAndPolyValue, ras, length = Inf) # maybe lots of NAs on edge
    ^~~~~~~~~~~~~~~
```
[R/largePatches.R:101:24:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/largePatches.R#L101) *warning:* **no visible global function definition for ‘Cache’**
```r
    areaAndPolyOut2 <- Cache(areaAndPolyValue, ras, length = Inf) # maybe lots of NAs on edge
                       ^~~~~
```
[R/largePatches.R:101:30:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/largePatches.R#L101) *warning:* **no visible binding for global variable ‘areaAndPolyValue’**
```r
    areaAndPolyOut2 <- Cache(areaAndPolyValue, ras, length = Inf) # maybe lots of NAs on edge
                             ^~~~~~~~~~~~~~~~
```
[R/largePatches.R:103:1:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/largePatches.R#L103) *style:* **Lines should not be more than 80 characters.**
```r
    eTable <- data.frame(ID = seq_along(levels(ffFactor)), VALUE = levels(ffFactor))
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/largePatches.R:103:5:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/largePatches.R#L103) *style:* **Variable or function name should be snake_case.**
```r
    eTable <- data.frame(ID = seq_along(levels(ffFactor)), VALUE = levels(ffFactor))
    ^~~~~~
```
[R/largePatches.R:107:5:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/largePatches.R#L107) *style:* **Variable or function name should be snake_case.**
```r
    facPolygonID <- factor(types[areaAndPolyOut2$polyID, 2])
    ^~~~~~~~~~~~
```
[R/largePatches.R:109:5:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/largePatches.R#L109) *style:* **Variable or function name should be snake_case.**
```r
    outAllSpecies <- data.table(polygonID = as.numeric(facPolygonID),
    ^~~~~~~~~~~~~
```
[R/largePatches.R:116:12:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/largePatches.R#L116) *warning:* **no visible global function definition for ‘rbindlist’**
```r
    out <- rbindlist(list(outBySpecies, outAllSpecies))
           ^~~~~~~~~
```
[R/largePatches.R:117:16:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/largePatches.R#L117) *warning:* **no visible binding for global variable ‘sizeInHa’**
```r
    out <- out[sizeInHa >= 100] # never will need patches smaller than 100 ha
               ^~~~~~~~
```
[R/largePatches.R:119:1:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/largePatches.R#L119) *style:* **Lines should not be more than 80 characters.**
```r
    out <- data.table(polygonID = character(), sizeInHa = numeric(), vegCover = character(),
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/largePatches.R:120:1:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/largePatches.R#L120) *style:* **Lines should not be more than 80 characters.**
```r
                      rep = numeric(), ageClass = numeric(), polygonName = numeric())
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/largePatches.R:124:7:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/largePatches.R#L124) *style:* **Variable or function name should be snake_case.**
```r
      vegCover := equivalentName(vegCover, sppEquiv, sppEquivCol)]
      ^~~~~~~~
```
[R/leading.R:11:1:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/leading.R#L11) *style:* **Lines should not be more than 80 characters.**
```r
#' It is also recursive of passed a vector of filenames for \code{tsf} and \code{vtm}.
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/leading.R:13:1:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/leading.R#L13) *style:* **Lines should not be more than 80 characters.**
```r
#' @param tsf A single filename, relative or absolute, pointing to a Time Since Fire raster.
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/leading.R:15:1:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/leading.R#L15) *style:* **Lines should not be more than 80 characters.**
```r
#' @param vtm A single filename, relative or absolute, pointing to a Vegetation Type Map raster.
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/leading.R:17:1:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/leading.R#L17) *style:* **Lines should not be more than 80 characters.**
```r
#' @param poly A single \code{SpatialPolygonsDataFrame} object or a factor \code{RasterLayer}.
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/leading.R:19:1:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/leading.R#L19) *style:* **Lines should not be more than 80 characters.**
```r
#' @param ageClasses A character vector with labels for age classes to bin the \code{tsf} times,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/leading.R:21:1:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/leading.R#L21) *style:* **Lines should not be more than 80 characters.**
```r
#' @param ageClassCutOffs A numeric vector with the endpoints for the \code{ageClasses}.
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/leading.R:28:1:](https://github.com/PredictiveEcology/LandWebUtils/blob/b9b2a0f80677898f1557d25957eb1297d5725964/R/leading.R#L28) *style:* **Lines should not be more than 80 characters.**
```r
#' @return A \code{data.table} with proportion of the pixels in each vegetation class,


ok, i will add the output result


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

Created multidev environment [pr-62](https://dashboard.pantheon.io/sites/533c69ec-70af-4cb2-af59-49d50e7d05f7#pr-62) for aledade.


interesting


퍼가요~


[R/ggscatterstats.R:71:1:](https://github.com/IndrajeetPatil/ggstatsplot/blob/9380a09beed97c115c6b3a44bf30ab9458f21aea/R/ggscatterstats.R#L71) *style:* **Lines should not be more than 100 characters.**
```r
#' \url{https://indrajeetpatil.github.io/ggstatsplot/articles/web_only/ggscatterstats.html#using-ggscatterstats-in-r-notebook-or-r-markdown}
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/helpers_gghistostats_graphics.R:49:5:](https://github.com/IndrajeetPatil/ggstatsplot/blob/9380a09beed97c115c6b3a44bf30ab9458f21aea/R/helpers_gghistostats_graphics.R#L49) *warning:* **local variable ‘label.value’ assigned but may not be used**
```r
    label.value <- x_pos
    ^~~~~~~~~~~
```
[tests/testthat/test-ggcoefstats.R:134:7:](https://github.com/IndrajeetPatil/ggstatsplot/blob/9380a09beed97c115c6b3a44bf30ab9458f21aea/tests/testthat/test-ggcoefstats.R#L134) *style:* **Commented code should be removed.**
```r
    # testthat::expect_equal(tidy_df$std.error, broom_df$std.error, tolerance = 1e-3)
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[tests/testthat/test-ggcoefstats.R:490:7:](https://github.com/IndrajeetPatil/ggstatsplot/blob/9380a09beed97c115c6b3a44bf30ab9458f21aea/tests/testthat/test-ggcoefstats.R#L490) *style:* **Commented code should be removed.**
```r
    # testthat::expect_equal(broom_df1$p.value, tidy_df1$p.value, tolerance = 0.001)
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```


Successfully aliased the URL <https://portfolio-5okndfa12.now.sh> to the following aliases:

* https://will-schulz.com
* https://portfolio.willschulz29.now.sh
* https://portfolio-git-master.willschulz29.now.sh


憑證識別碼改成和第e金網相同-->憑證編號


Successfully aliased the URL <https://malamuddev-hdexypah0.now.sh> to the following aliases:

* https://malamud.dev
* https://malamuddev.gusma.now.sh
* https://malamuddev-git-master.gusma.now.sh


오옹 신박하누


오키오키


그러게 이상한거 오지게 들어갔네


Fix_7396_QtIFW_Windows (jmarrec) - x86_64-Linux-Ubuntu-18.04-gcc-7.4-IntegrationCoverage-Debug: OK (667 of 667 tests passed, 0 test warnings)

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


this code is a junk


![](https://github.trello.services/images/mini-trello-icon.png) [Criação da classe Livro](https://trello.com/c/k7D1Qxyv/2-cria%C3%A7%C3%A3o-da-classe-livro)


4 spaces per tab is not our convention in almost projects. Normally, we use 2 spaces instead.


Fix_7136_PeakCoil (jmarrec) - x86_64-Linux-Ubuntu-18.04-gcc-7.4-UnitTestsCoverage-Debug: OK (1128 of 1128 tests passed, 0 test warnings)

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


u bad badd


![](https://github.trello.services/images/mini-trello-icon.png) [Listagem de Livros](https://trello.com/c/P0ad6ABb/1-listagem-de-livros)


Maybe a mistake? `renders AuthenticatedRoute have isAuthenticated false`?


🔥 Device tests completed (Failed) on TvOS-Beta on [Azure DevOps](https://dev.azure.com/devdiv/DevDiv/_build/index?buildId=2934047)(TvOS-Beta): [Html Report](http://xamarin-storage/jenkins/xamarin-macios/xcode11/38e1d05d68232e8286bf1961aa76d9e6cb91a5ee/2934047/device-tests/jenkins-results/tests/index.html) 🔥

# Test results

77 tests' device not found, 0 tests passed.


Fix_7396_QtIFW_Windows (jmarrec) - Win64-Windows-10-VisualStudio-16: OK (2446 of 2452 tests passed, 2 test warnings)

Messages:\n
 * 7 tests had: EIO diffs.
 * 1 test had: ESO small diffs.
 * 1 test had: BND diffs.
 * 3 tests had: AUD diffs.
 * 6 tests had: ESO big diffs.
 * 4 tests had: MTR big diffs.
 * 3 tests had: RDD diffs.
 * 6 tests had: Table big diffs.
 * 2 tests had: MTR small diffs.

Failures:\n

regression Test Summary
 * Passed: 656
 * Failed: 6

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


Nice - this seems like a good pattern for us to follow :)

Definitely easier to inject mocks into this type of approach


Delete?


These will go into our translations eventually, correct?


Currently, your test structure is quite long and have unnecessary things. Maybe we should organize it better a bit:
```
describe('AuthenticatedRoute'
   test('renders with authentication
   ...
   test('renders without authentication
```
so when the test prints out you can see the description better:
```
AuthenticatedRoute renders with authentication
AuthenticatedRoute renders without authentication
```


@JuliaRegistrator `register()`


Registration pull request created: [JuliaRegistries/General/2633](https://github.com/JuliaRegistries/General/pull/2633)

After the above pull request is merged, it is recommended that a tag is created on this repository for the registered package version.

This will be done automatically if [Julia TagBot](https://github.com/apps/julia-tagbot) is installed, or can be done manually through the github interface, or via:
```
git tag -a v0.2.0 -m "<description of version>" 5ef82da607581524f2af4d4133794d8e020634be
git push origin v0.2.0
```


PR_opened/Fix_7378_StorageTankTempLimit (jmarrec) - x86_64-Linux-Ubuntu-18.04-cppcheck: OK (0 of 0 tests passed, 0 test warnings)

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


PR_opened/Fix_7378_StorageTankTempLimit (jmarrec) - x86_64-Linux-Ubuntu-18.04-custom_check: OK (9 of 9 tests passed, 0 test warnings)

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


IBM Cloud [toolchain](https://cloud.ibm.com/devops/toolchains/3afe3af2-c7d2-4b47-94bd-885d23c3937a?env_id=ibm%3Ayp%3Aeu-de "springdoc-openapi-v3 -rest-test"): [Delivery Pipeline](https://cloud.ibm.com/devops/pipelines/737cd688-45b8-4311-a292-a111823c3fb8 "springdoc-openapi-v3-rest-test-pipeline") deployed [springdoc-openapi-demos](https://github.com/springdoc/springdoc-openapi-demos/releases/tag/deploy-ibm-yp-eu-de-BNPP_BDDF_IT-dev-20190812-022051 "deploy-ibm-yp-eu-de-BNPP_BDDF_IT-dev-20190812-022051") to [dev](https://console.bluemix.net/apps/ed6a1c5e-0796-49c7-895a-78108b3eb43a?env_id=ibm:yp:eu-de "ibm:yp:eu-de:BNPP_BDDF_IT:dev"), including this commit


Probably a good idea for accuracy also


Successfully aliased the URL <https://dexlist-8fxsk3rvt.now.sh> to the following aliases:

* https://dexlist.page
* https://dexlist.dingyi.now.sh
* https://dexlist-git-master.dingyi.now.sh


12.3.1 for iphone 6 64 what time verfied


IBM Cloud [toolchain](https://cloud.ibm.com/devops/toolchains/3afe3af2-c7d2-4b47-94bd-885d23c3937a?env_id=ibm%3Ayp%3Aeu-de "springdoc-openapi-v3 -rest-test"): [Delivery Pipeline](https://cloud.ibm.com/devops/pipelines/737cd688-45b8-4311-a292-a111823c3fb8 "springdoc-openapi-v3-rest-test-pipeline") deployed [springdoc-openapi-demos](https://github.com/springdoc/springdoc-openapi-demos/releases/tag/deploy-ibm-yp-eu-de-BNPP_BDDF_IT-dev-20190812-022658 "deploy-ibm-yp-eu-de-BNPP_BDDF_IT-dev-20190812-022658") to [dev](https://console.bluemix.net/apps/ed6a1c5e-0796-49c7-895a-78108b3eb43a?env_id=ibm:yp:eu-de "ibm:yp:eu-de:BNPP_BDDF_IT:dev"), including this commit


Successfully aliased the URL <https://vanillafunctions-4qybcflgy.now.sh> to the following aliases:

* https://hukamnama.amandeep.tech
* https://khalsa.tech
* https://www.khalsa.tech
* https://hukamnama.khalsa.tech
* https://vanillafunctions.khalsa.now.sh
* https://vanillafunctions-git-master.khalsa.now.sh


This code is so beautiful. By using hook style helps you get rid of HOC style. but one question. One pro that HOC provides is testability over a pure component. Take `TodoList ` component as an example. By using hook style like this. You can't just mock input params like if you want to see how its looks in loading state or if loaded todos are having quite long list, then do snapshot test to capture any bug that could happen when someone have to update this component.
What do you think?


`UNSAFE_componentWillUnmount` do not existed, see https://github.com/reactjs/react-lifecycles-compat/issues/47#issuecomment-520236234


这个功能不错 ，  解决备份功能没做的情况下，很多麻烦的事 ， 现在好了  有这个就省很多事了


Build version: __`3.2.0-master.648`__ :crossed_fingers: [`master`](https://github.com/streamich/md-mdast/tree/master) on [*CircleCI*](https://circleci.com/gh/streamich/md-mdast/648) :tada:


Successfully aliased the URL <https://rc-tree-r0u1z1ils.now.sh> to the following aliases:

* https://rc-tree.react-component.now.sh
* https://rc-tree-git-master.react-component.now.sh


@XINGRYFANG
学号：1901100229
班级：自学训练营学习18群


바꿔야돼~


Google services


created a PR: https://github.com/akiran/react-slick/pull/1615


PR_opened/Fix_7378_StorageTankTempLimit (jmarrec) - x86_64-Linux-Ubuntu-18.04-gcc-7.4: OK (2481 of 2489 tests passed, 4 test warnings)

Messages:\n
 * 8 tests had: EIO diffs.
 * 1 test had: ESO small diffs.
 * 2 tests had: BND diffs.
 * 3 tests had: AUD diffs.
 * 7 tests had: ESO big diffs.
 * 5 tests had: MTR big diffs.
 * 3 tests had: RDD diffs.
 * 7 tests had: Table big diffs.
 * 3 tests had: ERR diffs.
 * 1 test had: MTD diffs.
 * 2 tests had: MTR small diffs.

Failures:\n

EnergyPlusFixture Test Summary
 * Passed: 772
 * Failed: 1

regression Test Summary
 * Passed: 675
 * Failed: 7

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


[sad (3).zip](https://github.com/Chanti1431/Spring_Project/files/3490899/sad.3.zip)


Hey, i found a bug in the code. See, in the line 387. The program doesn't have a function to the var "Window".
Check it out. Spoted it while trying to open the script aswell.
![image](https://user-images.githubusercontent.com/54012758/62843780-eed9a980-bc92-11e9-82d6-ce96aebe2255.png)


Successfully aliased the URL <https://tech-blog-d1s50ula2.now.sh> to the following aliases:

* https://www.dhk.party
* https://dhk.party
* https://tech-blog.kimdhoe.now.sh
* https://tech-blog-git-master.kimdhoe.now.sh


dddddd


だんだんUI進んでいますね．気になったのはアイコンが一部表示されてないようです．


Successfully aliased the URL <https://jinzhe-blog-nyv25brmu.now.sh> to the following aliases:

* https://jinzhe-blog.njzjz.now.sh
* https://jinzhe-blog-git-hexo.njzjz.now.sh


ZEIT Now cannot deploy this project to production due to following domain related issues:

 * `snuggsi.com`(for alias `snuggsi.com`) is not found inside your account. [Add it](https://zeit.co/dashboard/domains?action=add&domain=snuggsi.com).


Please modify the  "RX BA win" and "dynamic  RX buffer " parameters in menuconfig as prompted.
" WIFI_RX_BA_WIN should not be larger than WIFI_DYNAMIC_RX_BUFFER_NUM"

menuconfig
    Component config
        Wi-Fi
            Max number of WiFi dynamic RX buffers
            WiFi AMPDU RX BA window size


赞👍


fix new line


I have to have that there, or else I cannot run the file, I have to define the whole class before running it, else the output terminal will be empty.


Successfully aliased the URL <https://effector-b0em0vaqc.now.sh> to the following aliases:

* https://effector.now.sh
* https://effector.zerobias.now.sh
* https://effector-git-master.zerobias.now.sh


Successfully aliased the URL <https://extract-css-d9xkxpny3.now.sh> to the following aliases:

* https://extract-css.now.sh
* https://extract-css.bartveneman.now.sh
* https://extract-css-git-master.bartveneman.now.sh


Successfully aliased the URL <https://flashcards-dqb46l877.now.sh> to the following aliases:

* https://flashcards.marlon360.now.sh
* https://flashcards-git-master.marlon360.now.sh


> no a comma xD

mb


Hash already updated but named `UserInfo` in Tanji:develop while
```
GetClubData = -1
ClubData = -1
```
remained without associated hash values.
I assume, `UserInfo` is a duplicate of `ClubData`.


Token compromised by commit. New token issued from Discord.


Successfully aliased the URL <https://awesome-templates-g0ufthxu0.now.sh> to the following aliases:

* https://pszx.tech
* https://awesome-templates.pszx.tech
* https://awesome-templates.pablosz.now.sh
* https://awesome-templates-git-master.pablosz.now.sh


Successfully aliased the URL <https://sindre-is-qb80obowm.now.sh> to the following aliases:

* https://sindre.is
* https://sindre-is.boyum.now.sh
* https://sindre-is-git-master.boyum.now.sh


<!-- ---------------------------------------------------------------------- -->
##  Test 1: Check that student client can establish connections at all
### Student Client ⇌ Reference Server
<!-- ---------------------------------------------------------------------- -->

###
                               -- test passed --

<!-- ---------------------------------------------------------------------- -->
##  Test 2: Client: Send a short printable ASCII message terminated by a newline
### Student Client ⇌ Reference Server
<!-- ---------------------------------------------------------------------- -->

###
                               -- test passed --

<!-- ---------------------------------------------------------------------- -->
##  Test 3: Client: Send a short printable ASCII message not terminated by a newline
### Student Client ⇌ Reference Server
<!-- ---------------------------------------------------------------------- -->

###
                               -- test passed --

<!-- ---------------------------------------------------------------------- -->
##  Test 4: Client: Send a multi-line printable ASCII message
### Student Client ⇌ Reference Server
<!-- ---------------------------------------------------------------------- -->

###
                               -- test passed --

<!-- ---------------------------------------------------------------------- -->
##  Test 5: Client: Send the entire text of Moby Dick
### Student Client ⇌ Reference Server
<!-- ---------------------------------------------------------------------- -->

###
                               -- test passed --

<!-- ---------------------------------------------------------------------- -->
##  Test 6: Client: Send random short printable ASCII messages
### Student Client ⇌ Reference Server
<!-- ---------------------------------------------------------------------- -->

>     Message: 1                                             ... ok
>     Message: 2                                             ... ok
>     Message: 3                                             ... ok
>     Message: 4                                             ... ok
>     Message: 5                                             ... ok
>     Message: 6                                             ... ok
>     Message: 7                                             ... ok
>     Message: 8                                             ... ok
>     Message: 9                                             ... ok
>     Message: 10                                            ... ok
###
                               -- test passed --

<!-- ---------------------------------------------------------------------- -->
##  Test 7: Client: Send random long printable ASCII messages
### Student Client ⇌ Reference Server
<!-- ---------------------------------------------------------------------- -->

>     Message: 1                                             ... ok
>     Message: 2                                             ... ok
>     Message: 3                                             ... ok
>     Message: 4                                             ... ok
>     Message: 5                                             ... ok
>     Message: 6                                             ... ok
>     Message: 7                                             ... ok
>     Message: 8                                             ... ok
>     Message: 9                                             ... ok
>     Message: 10                                            ... ok
###
                               -- test passed --

<!-- ---------------------------------------------------------------------- -->
##  Test 8: Client: Send a short binary message
### Student Client ⇌ Reference Server
<!-- ---------------------------------------------------------------------- -->

###
                               -- test passed --

<!-- ---------------------------------------------------------------------- -->
##  Test 9: Client: Send random short binary messages
### Student Client ⇌ Reference Server
<!-- ---------------------------------------------------------------------- -->

>     Message: 1                                             ... ok
>     Message: 2                                             ... ok
>     Message: 3                                             ... ok
>     Message: 4                                             ... ok
>     Message: 5                                             ... ok
>     Message: 6                                             ... ok
>     Message: 7                                             ... ok
>     Message: 8                                             ... ok
>     Message: 9                                             ... ok
>     Message: 10                                            ... ok
###
                               -- test passed --

<!-- ---------------------------------------------------------------------- -->
##  Test 10: Client: Send random long binary messages
### Student Client ⇌ Reference Server
<!-- ---------------------------------------------------------------------- -->

>     Message: 1                                             ... ok
>     Message: 2                                             ... ok
>     Message: 3                                             ... ok
>     Message: 4                                             ... ok
>     Message: 5                                             ... ok
>     Message: 6                                             ... ok
>     Message: 7                                             ... ok
>     Message: 8                                             ... ok
>     Message: 9                                             ... ok
>     Message: 10                                            ... ok
###
                               -- test passed --

<!-- ---------------------------------------------------------------------- -->
##  Test 11: Check that student server can accept connections at all
### Reference Client ⇌ Student Server
<!-- ---------------------------------------------------------------------- -->

###
                               -- test passed --

<!-- ---------------------------------------------------------------------- -->
##  Test 12: Server: Listen for connections on multiple different ports
### Reference Client ⇌ Student Server
<!-- ---------------------------------------------------------------------- -->

>     Port: 10316                                            ... ok
>     Port: 11316                                            ... ok
>     Port: 12316                                            ... ok
>     Port: 13316                                            ... ok
>     Port: 14316                                            ... ok
>     Port: 15316                                            ... ok
>     Port: 16316                                            ... ok
>     Port: 17316                                            ... ok
>     Port: 18316                                            ... ok
>     Port: 19316                                            ... ok
>     Port: 20316                                            ... ok
###
                               -- test passed --

<!-- ---------------------------------------------------------------------- -->
##  Test 13: Server: Accept multiple sequential connections
### Reference Client ⇌ Student Server
<!-- ---------------------------------------------------------------------- -->

###
                               -- test passed --

<!-- ---------------------------------------------------------------------- -->
##  Test 14: Server: Accept multiple concurrent connections
### Reference Client ⇌ Student Server
<!-- ---------------------------------------------------------------------- -->

###
                               -- test passed --

<!-- ---------------------------------------------------------------------- -->
##  Test 15: Server: Receive a short printable ASCII message terminated by a newline
### Reference Client ⇌ Student Server
<!-- ---------------------------------------------------------------------- -->

###
                               -- test passed --

<!-- ---------------------------------------------------------------------- -->
##  Test 16: Server: Receive a short printable ASCII message not terminated by a newline
### Reference Client ⇌ Student Server
<!-- ---------------------------------------------------------------------- -->

###
                               -- test passed --

<!-- ---------------------------------------------------------------------- -->
##  Test 17: Server: Receive a multi-line printable ASCII message
### Reference Client ⇌ Student Server
<!-- ---------------------------------------------------------------------- -->

    shared_test.go:406:

    *********** Test Failed ************
    Message sent does not match message received!

    -----------    Sent     ------------
    (12 lines, 241 chars, hash: 63272a6a)

    "
    And when Ruby went over the hill,
    Go came in for the kill.
    It seemed so fast,
    But oh at long last,
    We all got tired of err != nil.

    By Ryan McDermott

    Source: https://www.freecodecamp.org/news/
    programming-language-limericks-a8fb3416e0e4/
    (... 1 more lines)

    -----------  Received   ------------
    (11 lines, 241 chars, hash: 02b59ffa)

    "\vAnd when Ruby went over the hill,
    Go came in for the kill.
    It seemed so fast,
    But oh at long last,
    We all got tired of err != nil.

    By Ryan McDermott

    Source: https://www.freecodecamp.org/news/
    programming-language-limericks-a8fb3416e0e4/
    \t"

###
                               -- test failed (-1.0) --

<!-- ---------------------------------------------------------------------- -->
##  Test 18: Server: Receive the entire text of Moby Dick
### Reference Client ⇌ Student Server
<!-- ---------------------------------------------------------------------- -->

    shared_test.go:406:

    *********** Test Failed ************
    Message sent does not match message received!

    -----------    Sent     ------------
    (7998 lines, 417986 chars, hash: ed5d7c5e)

    "**The Project Gutenberg Etext of Moby Dick, by Herman   (...)
    #3 in our series by Herman Melville

    This Project Gutenberg version of Moby Dick is based on  (...)
    of the etext from the ERIS project at Virginia Tech and  (...)
    Project Gutenberg's archives, as compared to a public-d  (...)

    Copyright laws are changing all over the world, be sure  (...)
    the copyright laws for your country before posting thes  (...)

    Please take a look at the important information in this  (...)
    (... 7987 more lines)

    -----------  Received   ------------
    (7993 lines, 417986 chars, hash: 962c3911)

    "**The Project Gutenberg Etext of Moby Dick, by Herman   (...)
    #3 in our series by Herman Melville

    This Project Gutenberg version of Moby Dick is based on  (...)
    of the etext from the ERIS project at Virginia Tech and  (...)
    Project Gutenberg's archives, as compared to a public-d  (...)

    Copyright laws are changing all over the world, be sure  (...)
    the copyright laws for your country before posting thes  (...)

    Please take a look at the important information in this  (...)
    (... 7982 more lines)

###
                               -- test failed (-1.0) --

<!-- ---------------------------------------------------------------------- -->
##  Test 19: Server: Receive random short printable ASCII messages
### Reference Client ⇌ Student Server
<!-- ---------------------------------------------------------------------- -->

>     Message: 1                                             ... ok
>     Message: 2                                             ... ok
>     Message: 3                                             ... ok
>     Message: 4                                             ... ok
>     Message: 5                                             ... ok
>     Message: 6                                             ... ok
>     Message: 7                                             ... ok
>     Message: 8                                             ... ok
>     Message: 9                                             ... ok
>     Message: 10                                            ... ok
###
                               -- test passed --

<!-- ---------------------------------------------------------------------- -->
##  Test 20: Server: Receive random long printable ASCII messages
### Reference Client ⇌ Student Server
<!-- ---------------------------------------------------------------------- -->

>     Message: 1                                             ... ok
>     Message: 2                                             ... ok
>     Message: 3                                             ... ok
>     Message: 4                                             ... ok
>     Message: 5                                             ... ok
>     Message: 6                                             ... ok
>     Message: 7                                             ... ok
>     Message: 8                                             ... ok
>     Message: 9                                             ... ok
>     Message: 10                                            ... ok
###
                               -- test passed --

<!-- ---------------------------------------------------------------------- -->
##  Test 21: Server: Receive a short binary message
### Reference Client ⇌ Student Server
<!-- ---------------------------------------------------------------------- -->

    shared_test.go:406:

    *********** Test Failed ************
    Message sent does not match message received!

    -----------    Sent     ------------
    (2 lines, 20 chars, hash: 05670b9c)

    "\x01\x02\x03\x04\x05\x06\a\b\t
    \v\f\r\x0e\x0f\x10\x11\x12\x13\x14"

    -----------  Received   ------------
    (2 lines, 20 chars, hash: 3c7f095a)

    "\x02\x02\x03\x04\x05\x06\a\b\t
    \v\f\r\x0e\x0f\x10\x11\x12\x13\x14"

###
                               -- test failed (-1.0) --

<!-- ---------------------------------------------------------------------- -->
##  Test 22: Server: Receive random short binary messages
### Reference Client ⇌ Student Server
<!-- ---------------------------------------------------------------------- -->

>     Message: 1                                             ... ok
>     Message: 2                                             ... FAIL
    shared_test.go:406:

    *********** Test Failed ************
    Message sent does not match message received!

    -----------    Sent     ------------
    (2 lines, 64 chars, hash: 97c32f65)

    "\xf0|r9\x11\xeb|\xb5\xd3\x11\xdfD\xa2'\xce+Lx\x05m\xb0  (...)
    "

    -----------  Received   ------------
    (2 lines, 64 chars, hash: 0d914865)

    "\xf1|r9\x11\xeb|\xb5\xd3\x11\xdfD\xa2'\xce+Lx\x05m\xb0  (...)
    "

>     Message: 3                                             ... ok
>     Message: 4                                             ... FAIL
    shared_test.go:406:

    *********** Test Failed ************
    Message sent does not match message received!

    -----------    Sent     ------------
    (2 lines, 64 chars, hash: 702991f5)

    "\x9cŏDyz\x1b9\xfc\xfb訅\a\x8c}\xaa\x97Tl\x05\xc0\x82  (...)
    "

    -----------  Received   ------------
    (2 lines, 64 chars, hash: ff09b5d3)

    "\x9dŏDyz\x1b9\xfc\xfb訅\a\x8c}\xaa\x97Tl\x05\xc0\x82  (...)
    "

>     Message: 5                                             ... FAIL
    shared_test.go:406:

    *********** Test Failed ************
    Message sent does not match message received!

    -----------    Sent     ------------
    (2 lines, 64 chars, hash: 160d3f03)

    "\xba\x8e\xa7E.\xb9\xff\xae\xdc\x00\vrW\x96\xf9\xcdR\xd  (...)
    "

    -----------  Received   ------------
    (2 lines, 64 chars, hash: 3e4ec898)

    "\xbb\x8e\xa7E.\xb9\xff\xae\xdc\x00\vrW\x96\xf9\xcdR\xd  (...)
    "

>     Message: 6                                             ... ok
>     Message: 7                                             ... ok
>     Message: 8                                             ... FAIL
    Output from additional subtests was suppressed...
###
                               -- test failed (-1.0) --

<!-- ---------------------------------------------------------------------- -->
##  Test 23: Server: Receive random long binary messages
### Reference Client ⇌ Student Server
<!-- ---------------------------------------------------------------------- -->

>     Message: 1                                             ... FAIL
    shared_test.go:406:

    *********** Test Failed ************
    Message sent does not match message received!

    -----------    Sent     ------------
    (167 lines, 32832 chars, hash: d9e2bace)

    "Y\x9f\x85'.\xc3J\x8a^+\xc7\xe3\xd8\a\x9a\xd0\x1b)\xab=  (...)
    \x03D\xb59\a\xb76(Ur<iw풼-}$\xfb\x06\xf9\xa9\x87\xee\x  (...)
    \x98\x9c\xa1\xab\x1e\x1bTμ\xb9i(\xff\xa0:\xef{\xe7f\x8  (...)
    \x016ҩlՖ)\xf6\x14\xf3'\xfb\x84>\xa1\xf4\"\xc7\xf5\x1f  (...)
    Rި\x18\x9f\xe1\x1b\xc0T\xe6N\xd3\t\xe2\x91\x06&?+ǻWc\  (...)
    I\x19\x92a\xa1,-\xdc\xf9\xb0A<\xed\x11B\u007f\x9a\x84\x  (...)
    C\xc95\xf0\xc7f};|\x82\xa5\x9f\xa51*\x1b\xf7ϝ\xba2\x14  (...)
    \x1d\xb5\xc9\x028\x04\x8e\"$\xccc\x92\\q\xed\x14\xdc\xe  (...)
    3\xf4\xef\a^\xe5>x\x14/\a\xa1\x9e\u007f\xc7\x02\xbe\xb4  (...)
    \xd6MeH\xef\x92\xdfף\xd2}/\xd08b`H>\xa3\xd5\xcc8\x1f{P  (...)
    \x84\x89\x01=\x9aZ\xc0\xd2h\x9d\x1c\x9b\x82\xbaکq\xe5\  (...)
    (... 156 more lines)

    -----------  Received   ------------
    (167 lines, 32832 chars, hash: 819d0fb7)

    "Y\x9f\x85'.\xc3J\x8a^+\xc7\xe3\xd8\a\x9a\xd0\x1b)\xab=  (...)
    \x03D\xb59\a\xb76(Ur<iw풼-}$\xfb\x06\xf9\xa9\x87\xee\x  (...)
    \x98\x9c\xa1\xab\x1e\x1bTμ\xb9i(\xff\xa0:\xef{\xe7f\x8  (...)
    \x016ҩlՖ)\xf6\x14\xf3'\xfb\x84>\xa1\xf4\"\xc7\xf5\x1f  (...)
    Rި\x18\x9f\xe1\x1b\xc0T\xe6N\xd3\t\xe2\x91\x06&?+ǻWc\  (...)
    I\x19\x92a\xa1,-\xdc\xf9\xb0A<\xed\x11B\u007f\x9a\x84\x  (...)
    C\xc95\xf0\xc7f};|\x82\xa5\x9f\xa51*\x1b\xf7ϝ\xba2\x14  (...)
    \x1d\xb5\xc9\x028\x04\x8e\"$\xccc\x92\\q\xed\x14\xdc\xe  (...)
    3\xf4\xef\a^\xe5>x\x14/\a\xa1\x9e\u007f\xc7\x02\xbe\xb4  (...)
    \xd6MeH\xef\x92\xdfף\xd2}/\xd08b`H>\xa3\xd5\xcc8\x1f{P  (...)
    \x84\x89\x01=\x9aZ\xc0\xd2h\x9d\x1c\x9b\x82\xbaکq\xe5\  (...)
    (... 156 more lines)

>     Message: 2                                             ... FAIL
    shared_test.go:406:

    *********** Test Failed ************
    Message sent does not match message received!

    -----------    Sent     ------------
    (217 lines, 32832 chars, hash: 141ba8d6)

    "\xac\xe4\x12\xbb\xa5?x\x987\xcc0m\x9c\xb9\xc0\bܴ\x16J  (...)
    \xe1ͣ\x1dY\x88rG\x9a֮d\xec\x87\"\x88\xdbb\xf78\xca/\x  (...)
    ˲P\xb6\xc3.\xba\xc4b\x8c\b\xc2\xff?m6\xa9\xe8{\x8a\xcd  (...)
    \r\x85R\xa72af\xba\xec\x80*\xbc$\xb3\x84\x97\xacb\xe7P\  (...)
    \x87\x03\xd7*\xf7dK\r\xc6F\x19\xb5\xae\x8a\xecc\x83\xb1  (...)
    \xca\xc2v8\xb0\xa6\xe9\x19<\xe2RS@^\xf0\xefh\xbf\x818m\  (...)
    h\xbf:\xeczV
    S\xe7i\xab\x1a\xebL\xc7\xc0\x95\x88\x9d0\x17\"{}\x90\xc  (...)
    \xb8:\xe0\xe7\x8d\x04ԈZ\xf4\xa0O\xbbNZ\x10\xa6V\t\xf9\  (...)
    f\xb4\xe9\x19\xfd\x04!FP\x95=\xb6ЦXX8g\xee\xa4.\x88\xd  (...)
    \xe1\xa66\xc3D\x18\x18\xf1]\xc1\xdaw|\xe7\xcb\x0f\b\xe4  (...)
    (... 206 more lines)

    -----------  Received   ------------
    (217 lines, 32832 chars, hash: 8aa097b0)

    "\xad\xe4\x12\xbb\xa5?x\x987\xcc0m\x9c\xb9\xc0\bܴ\x16J  (...)
    \xe1ͣ\x1dY\x88rG\x9a֮d\xec\x87\"\x88\xdbb\xf78\xca/\x  (...)
    ˲P\xb6\xc3.\xba\xc4b\x8c\b\xc2\xff?m6\xa9\xe8{\x8a\xcd  (...)
    \r\x85R\xa72af\xba\xec\x80*\xbc$\xb3\x84\x97\xacb\xe7P\  (...)
    \x87\x03\xd7*\xf7dK\r\xc6F\x19\xb5\xae\x8a\xecc\x83\xb1  (...)
    \xca\xc2v8\xb0\xa6\xe9\x19<\xe2RS@^\xf0\xefh\xbf\x818m\  (...)
    h\xbf:\xeczV
    S\xe7i\xab\x1a\xebL\xc7\xc0\x95\x88\x9d0\x17\"{}\x90\xc  (...)
    \xb8:\xe0\xe7\x8d\x04ԈZ\xf4\xa0O\xbbNZ\x10\xa6V\t\xf9\  (...)
    f\xb4\xe9\x19\xfd\x04!FP\x95=\xb6ЦXX8g\xee\xa4.\x88\xd  (...)
    \xe1\xa66\xc3D\x18\x18\xf1]\xc1\xdaw|\xe7\xcb\x0f\b\xe4  (...)
    (... 206 more lines)

>     Message: 3                                             ... FAIL
    Output from additional subtests was suppressed...
###
                               -- test failed (-1.0) --

--------------------------------------------------------------
Results
--------------------------------------------------------------
>     ========================================================
>        Test summary:
>            Passed  18 / 23  tests     (5 failed)
>            Passed  76 / 91  subtests  (15 failed)
>
>        Score:
>            18.00 points of a possible 23.00  (78.26%)
>     ========================================================


Same approach can be used in HomeSlider module.
https://github.com/thirtybees/homeslider/issues/3


TeamCity Bvcms / Build [Build 1701](https://builds.tpsdb.com/viewLog.html?buildId=7701&buildTypeId=Bvcms_Build) is now running


TeamCity Bvcms / Build [Build 1700](https://builds.tpsdb.com/viewLog.html?buildId=7700&buildTypeId=Bvcms_Build) outcome was **SUCCESS**
Summary: Tests passed: 64 Build time: 00:17:34


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

https://meta.discourse.org/t/posts-are-hidden-after-a-single-flag/123366/25


Is JavaScript happy to construct a string with a UTF-16 code unit that represents an unpaired surrogate code point?