[R/boxPlots.R:2:1:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/boxPlots.R#L2) *style:* **Lines should not be more than 80 characters.**
```r
  utils::globalVariables(c("ageClass", "group", "proportionCC", "totalPixels", "vegCover", "zone"))
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/boxPlots.R:8:1:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/boxPlots.R#L8) *style:* **Lines should not be more than 80 characters.**
```r
.doPlotBoxplot <- function(data, CCpnts = NULL, authStatus, fname = NULL, ageClasses, ...) {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/boxPlots.R:8:1:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/boxPlots.R#L8) *style:* **Variable or function name should be snake_case.**
```r
.doPlotBoxplot <- function(data, CCpnts = NULL, authStatus, fname = NULL, ageClasses, ...) {
^~~~~~~~~~~~~~
```
[R/boxPlots.R:8:34:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/boxPlots.R#L8) *style:* **Variable or function name should be snake_case.**
```r
.doPlotBoxplot <- function(data, CCpnts = NULL, authStatus, fname = NULL, ageClasses, ...) {
                                 ^~~~~~
```
[R/boxPlots.R:8:49:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/boxPlots.R#L8) *style:* **Variable or function name should be snake_case.**
```r
.doPlotBoxplot <- function(data, CCpnts = NULL, authStatus, fname = NULL, ageClasses, ...) {
                                                ^~~~~~~~~~
```
[R/boxPlots.R:8:75:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/boxPlots.R#L8) *style:* **Variable or function name should be snake_case.**
```r
.doPlotBoxplot <- function(data, CCpnts = NULL, authStatus, fname = NULL, ageClasses, ...) {
                                                                          ^~~~~~~~~~
```
[R/boxPlots.R:13:1:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/boxPlots.R#L13) *style:* **Lines should not be more than 80 characters.**
```r
    if (length(CCpnts) == 4) warning("length(CCpnts) != 4; only the first 4 will be used")
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/boxPlots.R:35:1:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/boxPlots.R#L35) *style:* **Variable or function name should be snake_case.**
```r
runBoxPlotsVegCover <- function(map, functionName, analysisGroups, dPath) {
^~~~~~~~~~~~~~~~~~~
```
[R/boxPlots.R:35:38:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/boxPlots.R#L35) *style:* **Variable or function name should be snake_case.**
```r
runBoxPlotsVegCover <- function(map, functionName, analysisGroups, dPath) {
                                     ^~~~~~~~~~~~
```
[R/boxPlots.R:35:52:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/boxPlots.R#L35) *style:* **Variable or function name should be snake_case.**
```r
runBoxPlotsVegCover <- function(map, functionName, analysisGroups, dPath) {
                                                   ^~~~~~~~~~~~~~
```
[R/boxPlots.R:35:68:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/boxPlots.R#L35) *style:* **Variable or function name should be snake_case.**
```r
runBoxPlotsVegCover <- function(map, functionName, analysisGroups, dPath) {
                                                                   ^~~~~
```
[R/boxPlots.R:36:3:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/boxPlots.R#L36) *style:* **Variable or function name should be snake_case.**
```r
  ageClasses <- c("Young", "Immature", "Mature", "Old")
  ^~~~~~~~~~
```
[R/boxPlots.R:37:3:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/boxPlots.R#L37) *style:* **Variable or function name should be snake_case.**
```r
  allRepPolys <- na.omit(map@metadata[[analysisGroups]])
  ^~~~~~~~~~~
```
[R/boxPlots.R:41:1:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/boxPlots.R#L41) *style:* **Lines should not be more than 80 characters.**
```r
    allData <- map@analysesData[[functionName]][["LeadingVegTypeByAgeClass"]][[poly]]
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/boxPlots.R:41:5:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/boxPlots.R#L41) *style:* **Variable or function name should be snake_case.**
```r
    allData <- map@analysesData[[functionName]][["LeadingVegTypeByAgeClass"]][[poly]]
    ^~~~~~~
```
[R/boxPlots.R:43:7:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/boxPlots.R#L43) *style:* **Variable or function name should be snake_case.**
```r
      allData <- map@analysesData[[functionName]][[poly]] ## TODO: fix upstream
      ^~~~~~~
```
[R/boxPlots.R:44:5:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/boxPlots.R#L44) *style:* **Variable or function name should be snake_case.**
```r
    allData <- unique(allData) ## remove duplicates; with LandWeb#89
    ^~~~~~~
```
[R/boxPlots.R:45:13:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/boxPlots.R#L45) *style:* **Variable or function name should be snake_case.**
```r
    allData$vegCover <- gsub(" leading", "", allData$vegCover) %>%
            ^~~~~~~~
```
[R/boxPlots.R:48:13:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/boxPlots.R#L48) *style:* **Variable or function name should be snake_case.**
```r
    allData$ageClass <- factor(allData$ageClass, ageClasses)
            ^~~~~~~~
```
[R/boxPlots.R:50:34:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/boxPlots.R#L50) *warning:* **no visible binding for global variable ‘group’, Did you mean 'drop'?**
```r
    data <- allData[!grepl("CC", group)]
                                 ^~~~~
```
[R/boxPlots.R:52:5:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/boxPlots.R#L52) *style:* **Variable or function name should be snake_case.**
```r
    dataCC <- allData[grepl("CC", group)]
    ^~~~~~
```
[R/boxPlots.R:52:35:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/boxPlots.R#L52) *warning:* **no visible binding for global variable ‘group’, Did you mean 'drop'?**
```r
    dataCC <- allData[grepl("CC", group)]
                                  ^~~~~
```
[R/boxPlots.R:53:1:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/boxPlots.R#L53) *style:* **Lines should not be more than 80 characters.**
```r
    setnames(dataCC, "proportion", "proportionCC") ## rename the column to proportionCC
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/boxPlots.R:53:5:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/boxPlots.R#L53) *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:54:5:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/boxPlots.R#L54) *style:* **Variable or function name should be snake_case.**
```r
    dataCC <- dataCC[, c("group", "label", "NPixels") := list(NULL, NULL, NULL)]
    ^~~~~~
```
[R/boxPlots.R:54:55:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/boxPlots.R#L54) *warning:* **no visible global function definition for ‘:=’, Did you mean ':'?**
```r
    dataCC <- dataCC[, c("group", "label", "NPixels") := list(NULL, NULL, NULL)]
                                                      ^~
```
[R/boxPlots.R:56:32:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/boxPlots.R#L56) *warning:* **no visible global function definition for ‘.’, Did you mean 'C'?**
```r
    data2 <- dataCC[data, on = .(zone, vegCover, ageClass)]
                               ^
```
[R/boxPlots.R:56:34:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/boxPlots.R#L56) *warning:* **no visible binding for global variable ‘zone’, Did you mean 'line'?**
```r
    data2 <- dataCC[data, on = .(zone, vegCover, ageClass)]
                                 ^~~~
```
[R/boxPlots.R:56:40:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/boxPlots.R#L56) *warning:* **no visible binding for global variable ‘vegCover’**
```r
    data2 <- dataCC[data, on = .(zone, vegCover, ageClass)]
                                       ^~~~~~~~
```
[R/boxPlots.R:56:50:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/boxPlots.R#L56) *warning:* **no visible binding for global variable ‘ageClass’, Did you mean 'ageClasses'?**
```r
    data2 <- dataCC[data, on = .(zone, vegCover, ageClass)]
                                                 ^~~~~~~~
```
[R/boxPlots.R:57:1:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/boxPlots.R#L57) *style:* **Lines should not be more than 80 characters.**
```r
    data2[, totalPixels := base::sum(.SD, na.rm = TRUE) / 2, .SDcols = c("NPixels"), by = c("zone")]
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/boxPlots.R:57:13:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/boxPlots.R#L57) *style:* **Variable or function name should be snake_case.**
```r
    data2[, totalPixels := base::sum(.SD, na.rm = TRUE) / 2, .SDcols = c("NPixels"), by = c("zone")]
            ^~~~~~~~~~~
```
[R/boxPlots.R:57:13:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/boxPlots.R#L57) *warning:* **no visible binding for global variable ‘totalPixels’**
```r
    data2[, totalPixels := base::sum(.SD, na.rm = TRUE) / 2, .SDcols = c("NPixels"), by = c("zone")]
            ^~~~~~~~~~~
```
[R/boxPlots.R:57:25:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/boxPlots.R#L57) *warning:* **no visible global function definition for ‘:=’, Did you mean ':'?**
```r
    data2[, totalPixels := base::sum(.SD, na.rm = TRUE) / 2, .SDcols = c("NPixels"), by = c("zone")]
                        ^~
```
[R/boxPlots.R:57:38:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/boxPlots.R#L57) *warning:* **no visible binding for global variable ‘.SD’, Did you mean 'SSD'?**
```r
    data2[, totalPixels := base::sum(.SD, na.rm = TRUE) / 2, .SDcols = c("NPixels"), by = c("zone")]
                                     ^~~
```
[R/boxPlots.R:59:1:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/boxPlots.R#L59) *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:60:5:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/boxPlots.R#L60) *style:* **Variable or function name should be snake_case.**
```r
    saveDir <- checkPath(file.path(dPath, poly), create = TRUE)
    ^~~~~~~
```
[R/boxPlots.R:60:5:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/boxPlots.R#L60) *warning:* **local variable ‘saveDir’ assigned but may not be used**
```r
    saveDir <- checkPath(file.path(dPath, poly), create = TRUE)
    ^~~~~~~
```
[R/boxPlots.R:60:16:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/boxPlots.R#L60) *warning:* **no visible global function definition for ‘checkPath’**
```r
    saveDir <- checkPath(file.path(dPath, poly), create = TRUE)
               ^~~~~~~~~
```
[R/boxPlots.R:61:1:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/boxPlots.R#L61) *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:61:5:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/boxPlots.R#L61) *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:70:1:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/boxPlots.R#L70) *style:* **Lines should not be more than 80 characters.**
```r
                                    main = unique(paste(zone, vegCover, collapse = "_")),
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/boxPlots.R:71:1:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/boxPlots.R#L71) *style:* **Lines should not be more than 80 characters.**
```r
                                    xlab = paste0("Proportion of of forest area (total ",
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/boxPlots.R:74:1:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/boxPlots.R#L74) *style:* **Lines should not be more than 80 characters.**
```r
                                                    res(rasterToMatch(map))[2] / 1e4,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/boxPlots.R:80:1:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/boxPlots.R#L80) *style:* **Lines should not be more than 80 characters.**
```r
      .SDcols = c("ageClass", "proportion", "proportionCC", "NPixels"), by = slices]
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/buildMetadata.R:16:1:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/buildMetadata.R#L16) *style:* **Lines should not be more than 80 characters.**
```r
buildMetadata <- function(metadata, isStudyArea, isRasterToMatch, layerName, obj,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/buildMetadata.R:16:1:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/buildMetadata.R#L16) *style:* **Variable or function name should be snake_case.**
```r
buildMetadata <- function(metadata, isStudyArea, isRasterToMatch, layerName, obj,
^~~~~~~~~~~~~
```
[R/buildMetadata.R:16:37:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/buildMetadata.R#L16) *style:* **Variable or function name should be snake_case.**
```r
buildMetadata <- function(metadata, isStudyArea, isRasterToMatch, layerName, obj,
                                    ^~~~~~~~~~~
```
[R/buildMetadata.R:16:50:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/buildMetadata.R#L16) *style:* **Variable or function name should be snake_case.**
```r
buildMetadata <- function(metadata, isStudyArea, isRasterToMatch, layerName, obj,
                                                 ^~~~~~~~~~~~~~~
```
[R/buildMetadata.R:16:67:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/buildMetadata.R#L16) *style:* **Variable or function name should be snake_case.**
```r
buildMetadata <- function(metadata, isStudyArea, isRasterToMatch, layerName, obj,
                                                                  ^~~~~~~~~
```
[R/buildMetadata.R:17:27:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/buildMetadata.R#L17) *style:* **Variable or function name should be snake_case.**
```r
                          columnNameForLabels, objHash, leaflet, envir, ...) {
                          ^~~~~~~~~~~~~~~~~~~
```
[R/buildMetadata.R:17:48:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/buildMetadata.R#L17) *style:* **Variable or function name should be snake_case.**
```r
                          columnNameForLabels, objHash, leaflet, envir, ...) {
                                               ^~~~~~~
```
[R/buildMetadata.R:19:8:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/buildMetadata.R#L19) *warning:* **no visible global function definition for ‘copy’, Did you mean 'coef'?**
```r
  b <- copy(.singleMetadataNAEntry)
       ^~~~
```
[R/buildMetadata.R:19:13:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/buildMetadata.R#L19) *warning:* **no visible binding for global variable ‘.singleMetadataNAEntry’**
```r
  b <- copy(.singleMetadataNAEntry)
            ^~~~~~~~~~~~~~~~~~~~~~
```
[R/buildMetadata.R:25:5:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/buildMetadata.R#L25) *style:* **Variable or function name should be snake_case.**
```r
    studyAreaNumber <- 1 + NROW(metadata[compareNA(studyArea, TRUE) |
    ^~~~~~~~~~~~~~~
```
[R/buildMetadata.R:26:1:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/buildMetadata.R#L26) *style:* **Lines should not be more than 80 characters.**
```r
                                               (is.numeric(studyArea) & studyArea > 0)])
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/buildMetadata.R:27:5:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/buildMetadata.R#L27) *warning:* **no visible global function definition for ‘set’, Did you mean 'det'?**
```r
    set(b, NULL, "studyArea", studyAreaNumber)
    ^~~
```
[R/buildMetadata.R:28:5:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/buildMetadata.R#L28) *warning:* **no visible global function definition for ‘set’, Did you mean 'det'?**
```r
    set(b, NULL, "area", area)
    ^~~
```
[R/buildMetadata.R:31:5:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/buildMetadata.R#L31) *style:* **Variable or function name should be snake_case.**
```r
    rasterToMatchNumber <- 1 + NROW(metadata[compareNA(rasterToMatch, TRUE) |
    ^~~~~~~~~~~~~~~~~~~
```
[R/buildMetadata.R:32:1:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/buildMetadata.R#L32) *style:* **Lines should not be more than 80 characters.**
```r
                                           (is.numeric(rasterToMatch) & rasterToMatch > 0)])
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/buildMetadata.R:33:5:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/buildMetadata.R#L33) *warning:* **no visible global function definition for ‘set’, Did you mean 'det'?**
```r
    set(b, NULL, "rasterToMatch", rasterToMatchNumber)
    ^~~
```
[R/buildMetadata.R:38:3:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/buildMetadata.R#L38) *warning:* **no visible global function definition for ‘set’, Did you mean 'det'?**
```r
  set(b, NULL, "layerName", layerName)
  ^~~
```
[R/buildMetadata.R:39:3:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/buildMetadata.R#L39) *warning:* **no visible global function definition for ‘set’, Did you mean 'det'?**
```r
  set(b, NULL, "layerType", class(obj))
  ^~~
```
[R/buildMetadata.R:42:7:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/buildMetadata.R#L42) *warning:* **no visible global function definition for ‘set’, Did you mean 'det'?**
```r
      set(b, NULL, "columnNameForLabels", columnNameForLabels)
      ^~~
```
[R/buildMetadata.R:45:3:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/buildMetadata.R#L45) *warning:* **no visible global function definition for ‘set’, Did you mean 'det'?**
```r
  set(b, NULL, "objectHash", objHash)
  ^~~
```
[R/buildMetadata.R:48:5:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/buildMetadata.R#L48) *warning:* **no visible global function definition for ‘set’, Did you mean 'det'?**
```r
    set(b, NULL, "leaflet", leaflet)
    ^~~
```
[R/buildMetadata.R:50:14:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/buildMetadata.R#L50) *warning:* **no visible global function definition for ‘.robustDigest’**
```r
      dig <- .robustDigest(obj)
             ^~~~~~~~~~~~~
```
[R/buildMetadata.R:51:1:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/buildMetadata.R#L51) *style:* **Lines should not be more than 80 characters.**
```r
      tilePath <- asPath(file.path(leaflet, paste0("tiles_", layerName, "_", substr(dig, 1,6))))
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/buildMetadata.R:51:7:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/buildMetadata.R#L51) *style:* **Variable or function name should be snake_case.**
```r
      tilePath <- asPath(file.path(leaflet, paste0("tiles_", layerName, "_", substr(dig, 1,6))))
      ^~~~~~~~
```
[R/buildMetadata.R:51:19:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/buildMetadata.R#L51) *warning:* **no visible global function definition for ‘asPath’**
```r
      tilePath <- asPath(file.path(leaflet, paste0("tiles_", layerName, "_", substr(dig, 1,6))))
                  ^~~~~~
```
[R/buildMetadata.R:51:92:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/buildMetadata.R#L51) *style:* **Commas should always have a space after.**
```r
      tilePath <- asPath(file.path(leaflet, paste0("tiles_", layerName, "_", substr(dig, 1,6))))
                                                                                ^
```
[R/buildMetadata.R:52:7:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/buildMetadata.R#L52) *warning:* **no visible global function definition for ‘set’, Did you mean 'det'?**
```r
      set(b, NULL, "leafletTiles", tilePath)
      ^~~
```
[R/buildMetadata.R:56:3:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/buildMetadata.R#L56) *warning:* **no visible global function definition for ‘set’, Did you mean 'det'?**
```r
  set(b, NULL, "envir", list(list(envir)))
  ^~~
```
[R/buildMetadata.R:60:1:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/buildMetadata.R#L60) *style:* **Lines should not be more than 80 characters.**
```r
    dots <- dots[!unlist(lapply(dots, is.null))] # remove NULL because that isn't added to data.table anyway
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/buildMetadata.R:73:3:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/buildMetadata.R#L73) *style:* **Variable or function name should be snake_case.**
```r
  columnsToAdd <- dots
  ^~~~~~~~~~~~
```
[R/buildMetadata.R:81:9:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/buildMetadata.R#L81) *style:* **Variable or function name should be snake_case.**
```r
        needToSet <- TRUE
        ^~~~~~~~~
```
[R/buildMetadata.R:84:11:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/buildMetadata.R#L84) *style:* **Variable or function name should be snake_case.**
```r
          needToSet <- tryCatch(set(b, NULL, nta, cta), silent = TRUE,
          ^~~~~~~~~
```
[R/largePatches.R:21:1:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L21) *style:* **Lines should not be more than 80 characters.**
```r
LargePatches <- function(tsf, vtm, poly, labelColumn, id, ageClassCutOffs, ageClasses) {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/largePatches.R:21:1:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L21) *style:* **Variable or function name should be snake_case.**
```r
LargePatches <- function(tsf, vtm, poly, labelColumn, id, ageClassCutOffs, ageClasses) {
^~~~~~~~~~~~
```
[R/largePatches.R:21:42:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L21) *style:* **Variable or function name should be snake_case.**
```r
LargePatches <- function(tsf, vtm, poly, labelColumn, id, ageClassCutOffs, ageClasses) {
                                         ^~~~~~~~~~~
```
[R/largePatches.R:21:59:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L21) *style:* **Variable or function name should be snake_case.**
```r
LargePatches <- function(tsf, vtm, poly, labelColumn, id, ageClassCutOffs, ageClasses) {
                                                          ^~~~~~~~~~~~~~~
```
[R/largePatches.R:21:76:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L21) *style:* **Variable or function name should be snake_case.**
```r
LargePatches <- function(tsf, vtm, poly, labelColumn, id, ageClassCutOffs, ageClasses) {
                                                                           ^~~~~~~~~~
```
[R/largePatches.R:27:3:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L27) *style:* **Variable or function name should be snake_case.**
```r
  timeSinceFireFilesRast <- Cache(.rasterToMemory, tsf[1])
  ^~~~~~~~~~~~~~~~~~~~~~
```
[R/largePatches.R:27:29:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L27) *warning:* **no visible global function definition for ‘Cache’**
```r
  timeSinceFireFilesRast <- Cache(.rasterToMemory, tsf[1])
                            ^~~~~
```
[R/largePatches.R:27:35:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L27) *warning:* **no visible binding for global variable ‘.rasterToMemory’**
```r
  timeSinceFireFilesRast <- Cache(.rasterToMemory, tsf[1])
                                  ^~~~~~~~~~~~~~~
```
[R/largePatches.R:36:3:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L36) *style:* **Variable or function name should be snake_case.**
```r
  rasRepPoly <- Cache(
  ^~~~~~~~~~
```
[R/largePatches.R:39:1:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L39) *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:44:3:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L44) *style:* **Variable or function name should be snake_case.**
```r
  rasVeg <- Cache(.rasterToMemory, vtm)
  ^~~~~~
```
[R/largePatches.R:44:13:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L44) *warning:* **no visible global function definition for ‘Cache’**
```r
  rasVeg <- Cache(.rasterToMemory, vtm)
            ^~~~~
```
[R/largePatches.R:44:19:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L44) *warning:* **no visible binding for global variable ‘.rasterToMemory’**
```r
  rasVeg <- Cache(.rasterToMemory, vtm)
                  ^~~~~~~~~~~~~~~
```
[R/largePatches.R:46:1:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L46) *style:* **Lines should not be more than 80 characters.**
```r
  splitVal <- paste0("_", 75757575, "_") # unlikely to occur for any other reason
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/largePatches.R:46:3:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L46) *style:* **Variable or function name should be snake_case.**
```r
  splitVal <- paste0("_", 75757575, "_") # unlikely to occur for any other reason
  ^~~~~~~~
```
[R/largePatches.R:57:1:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L57) *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:57:5:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L57) *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:64:1:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L64) *style:* **Lines should not be more than 80 characters.**
```r
    if (!identical(length(name1), length(name2)) || !identical(length(name1), length(name3)))
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/largePatches.R:65:1:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L65) *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:68:12:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L68) *warning:* **no visible global function definition for ‘raster’, Did you mean 'rasVeg'?**
```r
    ras <- raster(rasVeg)
           ^~~~~~
```
[R/largePatches.R:69:5:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L69) *style:* **Variable or function name should be snake_case.**
```r
    ffFactor <- factor(ff)
    ^~~~~~~~
```
[R/largePatches.R:72:1:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L72) *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:72:5:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L72) *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:72:23:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L72) *warning:* **no visible global function definition for ‘Cache’**
```r
    areaAndPolyOut <- Cache(areaAndPolyValue, ras, length = Inf) # maybe lots of NAs on edge
                      ^~~~~
```
[R/largePatches.R:72:29:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L72) *warning:* **no visible binding for global variable ‘areaAndPolyValue’**
```r
    areaAndPolyOut <- Cache(areaAndPolyValue, ras, length = Inf) # maybe lots of NAs on edge
                            ^~~~~~~~~~~~~~~~
```
[R/largePatches.R:73:1:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L73) *style:* **Lines should not be more than 80 characters.**
```r
    eTable <- data.frame(ID = seq_along(levels(ffFactor)), VALUE = levels(ffFactor))
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/largePatches.R:73:5:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L73) *style:* **Variable or function name should be snake_case.**
```r
    eTable <- data.frame(ID = seq_along(levels(ffFactor)), VALUE = levels(ffFactor))
    ^~~~~~
```
[R/largePatches.R:77:5:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L77) *style:* **Variable or function name should be snake_case.**
```r
    facPolygonID <- factor(types[areaAndPolyOut$polyID,3])
    ^~~~~~~~~~~~
```
[R/largePatches.R:77:56:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L77) *style:* **Commas should always have a space after.**
```r
    facPolygonID <- factor(types[areaAndPolyOut$polyID,3])
                                                       ^
```
[R/largePatches.R:79:5:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L79) *style:* **Variable or function name should be snake_case.**
```r
    outBySpecies <- data.table(polygonID = as.numeric(facPolygonID),
    ^~~~~~~~~~~~
```
[R/largePatches.R:89:12:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L89) *warning:* **no visible global function definition for ‘raster’, Did you mean 'rasVeg'?**
```r
    ras <- raster(rasVeg)
           ^~~~~~
```
[R/largePatches.R:90:5:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L90) *style:* **Variable or function name should be snake_case.**
```r
    ffFactor <- factor(ff)
    ^~~~~~~~
```
[R/largePatches.R:94:1:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L94) *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:94:5:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L94) *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:94:24:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L94) *warning:* **no visible global function definition for ‘Cache’**
```r
    areaAndPolyOut2 <- Cache(areaAndPolyValue, ras, length = Inf) # maybe lots of NAs on edge
                       ^~~~~
```
[R/largePatches.R:94:30:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L94) *warning:* **no visible binding for global variable ‘areaAndPolyValue’**
```r
    areaAndPolyOut2 <- Cache(areaAndPolyValue, ras, length = Inf) # maybe lots of NAs on edge
                             ^~~~~~~~~~~~~~~~
```
[R/largePatches.R:96:1:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L96) *style:* **Lines should not be more than 80 characters.**
```r
    eTable <- data.frame(ID = seq_along(levels(ffFactor)), VALUE = levels(ffFactor))
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/largePatches.R:96:5:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L96) *style:* **Variable or function name should be snake_case.**
```r
    eTable <- data.frame(ID = seq_along(levels(ffFactor)), VALUE = levels(ffFactor))
    ^~~~~~
```
[R/largePatches.R:100:5:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L100) *style:* **Variable or function name should be snake_case.**
```r
    facPolygonID <- factor(types[areaAndPolyOut2$polyID, 2])
    ^~~~~~~~~~~~
```
[R/largePatches.R:102:5:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L102) *style:* **Variable or function name should be snake_case.**
```r
    outAllSpecies <- data.table(polygonID = as.numeric(facPolygonID),
    ^~~~~~~~~~~~~
```
[R/largePatches.R:109:12:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L109) *warning:* **no visible global function definition for ‘rbindlist’**
```r
    out <- rbindlist(list(outBySpecies, outAllSpecies))
           ^~~~~~~~~
```
[R/largePatches.R:110:16:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L110) *warning:* **no visible binding for global variable ‘sizeInHa’**
```r
    out <- out[sizeInHa >= 100] # never will need patches smaller than 100 ha
               ^~~~~~~~
```
[R/largePatches.R:113:1:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L113) *style:* **Lines should not be more than 80 characters.**
```r
    #f <- file.path(Paths$outputPath, "boxplots", paste0("largePatches_", STUDYAREA, ".csv"))
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/largePatches.R:113:6:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L113) *style:* **Commented code should be removed.**
```r
    #f <- file.path(Paths$outputPath, "boxplots", paste0("largePatches_", STUDYAREA, ".csv"))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/largePatches.R:114:6:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L114) *style:* **Commented code should be removed.**
```r
    #write.csv(out, f)
     ^~~~~~~~~~~~~~~~~
```
[R/largePatches.R:116:1:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L116) *style:* **Lines should not be more than 80 characters.**
```r
    out <- data.table(polygonID = character(), sizeInHa = numeric(), vegCover = character(),
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/largePatches.R:117:1:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L117) *style:* **Lines should not be more than 80 characters.**
```r
                      rep = numeric(), ageClass = numeric(), polygonName = numeric())
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/largePatches.R:123:1:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L123) *style:* **Variable or function name should be snake_case.**
```r
areaAndPolyValue <- function(ras) {
^~~~~~~~~~~~~~~~
```
[R/largePatches.R:124:3:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L124) *style:* **Variable or function name should be snake_case.**
```r
  polyIndivSpecies <- gdal_polygonizeR(ras) # 99 seconds with full ras
  ^~~~~~~~~~~~~~~~
```
[R/largePatches.R:124:23:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L124) *warning:* **no visible global function definition for ‘gdal_polygonizeR’**
```r
  polyIndivSpecies <- gdal_polygonizeR(ras) # 99 seconds with full ras
                      ^~~~~~~~~~~~~~~~
```
[R/largePatches.R:125:3:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L125) *style:* **Variable or function name should be snake_case.**
```r
  pArea <- as.numeric(sf::st_area(polyIndivSpecies) / 1e4)
  ^~~~~
```
[R/largePatches.R:144:1:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L144) *style:* **Variable or function name should be snake_case.**
```r
gdal_polygonizeR <- function(x, outshape = NULL, gdalformat = "ESRI Shapefile",
^~~~~~~~~~~~~~~~
```
[R/largePatches.R:159:1:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L159) *style:* **Lines should not be more than 80 characters.**
```r
  if (!file.exists(pypath)) stop("Can't find gdal_polygonize.py on your system.")
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/largePatches.R:167:5:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L167) *style:* **Variable or function name should be snake_case.**
```r
    f.exists <- file.exists(paste(outshape, c("shp", "shx", "dbf"), sep = "."))
    ^~~~~~~~
```
[R/largePatches.R:170:1:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L170) *style:* **Lines should not be more than 80 characters.**
```r
                   toString(paste(outshape, c("shp", "shx", "dbf"), sep = ".")[f.exists])),
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/largePatches.R:176:5:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L176) *warning:* **no visible global function definition for ‘writeRaster’**
```r
    writeRaster(x, rastpath, datatype = assessDataType(x))
    ^~~~~~~~~~~
```
[R/largePatches.R:176:41:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L176) *warning:* **no visible global function definition for ‘assessDataType’**
```r
    writeRaster(x, rastpath, datatype = assessDataType(x))
                                        ^~~~~~~~~~~~~~
```
[R/largePatches.R:184:1:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L184) *style:* **Lines should not be more than 80 characters.**
```r
    shp <- sf::read_sf(dsn = dirname(outshape), layer = basename(file_path_sans_ext(outshape)))
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/largePatches.R:184:66:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L184) *warning:* **no visible global function definition for ‘file_path_sans_ext’**
```r
    shp <- sf::read_sf(dsn = dirname(outshape), layer = basename(file_path_sans_ext(outshape)))
                                                                 ^~~~~~~~~~~~~~~~~~
```
[R/largePatches.R:185:22:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L185) *warning:* **no visible global function definition for ‘extent’, Did you mean 'extends'?**
```r
    sf::st_bbox(shp, extent(x))
                     ^~~~~~
```
[R/largePatches.R:192:1:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L192) *style:* **Variable or function name should be snake_case.**
```r
.rasterToMemory <- function(x, ...) {
^~~~~~~~~~~~~~~
```
[R/largePatches.R:193:8:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/largePatches.R#L193) *warning:* **no visible global function definition for ‘raster’, Did you mean 'paste'?**
```r
  r <- raster(x, ...)
       ^~~~~~
```
[R/leading.R:32:1:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L32) *style:* **Lines should not be more than 80 characters.**
```r
LeadingVegTypeByAgeClass <- function(tsf, vtm, poly, ageClassCutOffs, ageClasses) {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/leading.R:32:1:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L32) *style:* **Variable or function name should be snake_case.**
```r
LeadingVegTypeByAgeClass <- function(tsf, vtm, poly, ageClassCutOffs, ageClasses) {
^~~~~~~~~~~~~~~~~~~~~~~~
```
[R/leading.R:32:54:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L32) *style:* **Variable or function name should be snake_case.**
```r
LeadingVegTypeByAgeClass <- function(tsf, vtm, poly, ageClassCutOffs, ageClasses) {
                                                     ^~~~~~~~~~~~~~~
```
[R/leading.R:32:71:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L32) *style:* **Variable or function name should be snake_case.**
```r
LeadingVegTypeByAgeClass <- function(tsf, vtm, poly, ageClassCutOffs, ageClasses) {
                                                                      ^~~~~~~~~~
```
[R/leading.R:34:3:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L34) *style:* **Variable or function name should be snake_case.**
```r
  startTime <- Sys.time()
  ^~~~~~~~~
```
[R/leading.R:36:5:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L36) *style:* **Variable or function name should be snake_case.**
```r
    ageClassCutOffs <- c(ageClassCutOffs, Inf)
    ^~~~~~~~~~~~~~~
```
[R/leading.R:42:3:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L42) *style:* **Variable or function name should be snake_case.**
```r
  timeSinceFireFilesRast <- raster(tsf[1])
  ^~~~~~~~~~~~~~~~~~~~~~
```
[R/leading.R:42:29:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L42) *warning:* **no visible global function definition for ‘raster’, Did you mean 'rasVeg'?**
```r
  timeSinceFireFilesRast <- raster(tsf[1])
                            ^~~~~~
```
[R/leading.R:46:4:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L46) *style:* **Commented code should be removed.**
```r
  #timeSinceFireFilesRast <- Cache(rasterToMemory, tsf[1])
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/leading.R:48:3:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L48) *style:* **Variable or function name should be snake_case.**
```r
  rasTsf <- reclassify(
  ^~~~~~
```
[R/leading.R:60:3:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L60) *style:* **Variable or function name should be snake_case.**
```r
  rasVeg <- raster(vtm[1])
  ^~~~~~
```
[R/leading.R:60:13:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L60) *warning:* **no visible global function definition for ‘raster’, Did you mean 'rasVeg'?**
```r
  rasVeg <- raster(vtm[1])
            ^~~~~~
```
[R/leading.R:63:1:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L63) *style:* **Lines should not be more than 80 characters.**
```r
  splitVal <- paste0("_", 75757575, "_") # unlikely to occur for any other reason
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/leading.R:63:3:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L63) *style:* **Variable or function name should be snake_case.**
```r
  splitVal <- paste0("_", 75757575, "_") # unlikely to occur for any other reason
  ^~~~~~~~
```
[R/leading.R:69:25:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L69) *warning:* **no visible global function definition for ‘factorValues’**
```r
  name1 <- as.character(factorValues(rasTsf, rasTsf[][!nas])[, 1])
                        ^~~~~~~~~~~~
```
[R/leading.R:70:4:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L70) *style:* **Commented code should be removed.**
```r
  #as.character(raster::levels(rasTsf)[[1]]$Factor)[rasTsf[][!nas]]
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/leading.R:71:25:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L71) *warning:* **no visible global function definition for ‘factorValues’**
```r
  name3 <- as.character(factorValues(rasVeg, rasVeg[][!nas])[, 1])
                        ^~~~~~~~~~~~
```
[R/leading.R:72:4:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L72) *style:* **Commented code should be removed.**
```r
  #as.character(raster::levels(rasVeg)[[1]]$Factor)[rasVeg[][!nas]]
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/leading.R:75:10:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L75) *warning:* **no visible global function definition for ‘raster’, Did you mean 'rasVeg'?**
```r
  ras <- raster(rasVeg)
         ^~~~~~
```
[R/leading.R:76:3:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L76) *style:* **Variable or function name should be snake_case.**
```r
  ffFactor <- factor(ff)
  ^~~~~~~~
```
[R/leading.R:79:1:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L79) *style:* **Lines should not be more than 80 characters.**
```r
  eTable <- data.frame(ID = seq_along(levels(ffFactor)), VALUE = levels(ffFactor))
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/leading.R:79:3:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L79) *style:* **Variable or function name should be snake_case.**
```r
  eTable <- data.frame(ID = seq_along(levels(ffFactor)), VALUE = levels(ffFactor))
  ^~~~~~
```
[R/leading.R:83:1:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L83) *style:* **Lines should not be more than 80 characters.**
```r
  levels(ras) <- data.frame(eTable, ageClass = types[, 1], vegCover = types[, 2])
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/leading.R:89:13:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L89) *warning:* **no visible global function definition for ‘Cache’**
```r
    poly <- Cache(fasterize2, rasTsf, poly, field = "polygonNum")
            ^~~~~
```
[R/leading.R:89:19:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L89) *warning:* **no visible binding for global variable ‘fasterize2’**
```r
    poly <- Cache(fasterize2, rasTsf, poly, field = "polygonNum")
                  ^~~~~~~~~~
```
[R/leading.R:95:11:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L95) *warning:* **no visible global function definition for ‘factorValues’**
```r
  levs <- factorValues(poly, levs$ID)
          ^~~~~~~~~~~~
```
[R/leading.R:96:3:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L96) *style:* **Variable or function name should be snake_case.**
```r
  facVals <- factorValues(
  ^~~~~~~
```
[R/leading.R:109:1:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L109) *style:* **Lines should not be more than 80 characters.**
```r
  bb[, c("ageClass", "vegCover") := factorValues(ras, ras[][bb$cell], att = c("ageClass", "vegCover"))]
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/leading.R:109:34:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L109) *warning:* **no visible global function definition for ‘:=’, Did you mean ':'?**
```r
  bb[, c("ageClass", "vegCover") := factorValues(ras, ras[][bb$cell], att = c("ageClass", "vegCover"))]
                                 ^~
```
[R/leading.R:109:37:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L109) *warning:* **no visible global function definition for ‘factorValues’**
```r
  bb[, c("ageClass", "vegCover") := factorValues(ras, ras[][bb$cell], att = c("ageClass", "vegCover"))]
                                    ^~~~~~~~~~~~
```
[R/leading.R:113:1:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L113) *style:* **Lines should not be more than 80 characters.**
```r
  #tabulated <- bb[, list(NPixels = .N), by = c("zone", "polygonID", "ageClass", "vegCover")] ## keeps polyID
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/leading.R:113:4:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L113) *style:* **Commented code should be removed.**
```r
  #tabulated <- bb[, list(NPixels = .N), by = c("zone", "polygonID", "ageClass", "vegCover")] ## keeps polyID
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/leading.R:114:1:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L114) *style:* **Lines should not be more than 80 characters.**
```r
  tabulated <- bb[, list(NPixels = .N), by = c("zone", "ageClass", "vegCover")] ## dedupes the zones
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/leading.R:114:36:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L114) *warning:* **no visible binding for global variable ‘.N’, Did you mean 'bb'?**
```r
  tabulated <- bb[, list(NPixels = .N), by = c("zone", "ageClass", "vegCover")] ## dedupes the zones
                                   ^~
```
[R/leading.R:115:1:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L115) *style:* **Lines should not be more than 80 characters.**
```r
  tabulated[, proportion := round(NPixels / sum(NPixels), 4), by = c("zone", "vegCover")]
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/leading.R:115:15:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L115) *warning:* **no visible binding for global variable ‘proportion’**
```r
  tabulated[, proportion := round(NPixels / sum(NPixels), 4), by = c("zone", "vegCover")]
              ^~~~~~~~~~
```
[R/leading.R:115:26:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L115) *warning:* **no visible global function definition for ‘:=’, Did you mean ':'?**
```r
  tabulated[, proportion := round(NPixels / sum(NPixels), 4), by = c("zone", "vegCover")]
                         ^~
```
[R/leading.R:115:35:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L115) *warning:* **no visible binding for global variable ‘NPixels’**
```r
  tabulated[, proportion := round(NPixels / sum(NPixels), 4), by = c("zone", "vegCover")]
                                  ^~~~~~~
```
[R/leading.R:115:35:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L115) *warning:* **no visible binding for global variable ‘NPixels’**
```r
  tabulated[, proportion := round(NPixels / sum(NPixels), 4), by = c("zone", "vegCover")]
                                  ^~~~~~~
```
[R/leading.R:118:1:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L118) *style:* **Lines should not be more than 80 characters.**
```r
  #tabulated2 <- bb[, list(NPixels = .N), by = c("zone", "polygonID", "ageClass")] ## keeps polyID
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/leading.R:118:4:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L118) *style:* **Commented code should be removed.**
```r
  #tabulated2 <- bb[, list(NPixels = .N), by = c("zone", "polygonID", "ageClass")] ## keeps polyID
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/leading.R:119:1:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L119) *style:* **Lines should not be more than 80 characters.**
```r
  tabulated2 <- bb[, list(NPixels = .N), by = c("zone", "ageClass")] ## dedupes the zones
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/leading.R:119:37:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L119) *warning:* **no visible binding for global variable ‘.N’, Did you mean 'bb'?**
```r
  tabulated2 <- bb[, list(NPixels = .N), by = c("zone", "ageClass")] ## dedupes the zones
                                    ^~
```
[R/leading.R:120:16:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L120) *warning:* **no visible binding for global variable ‘proportion’**
```r
  tabulated2[, proportion := round(NPixels / sum(NPixels), 4), by = c("zone")]
               ^~~~~~~~~~
```
[R/leading.R:120:27:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L120) *warning:* **no visible global function definition for ‘:=’, Did you mean ':'?**
```r
  tabulated2[, proportion := round(NPixels / sum(NPixels), 4), by = c("zone")]
                          ^~
```
[R/leading.R:120:36:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L120) *warning:* **no visible binding for global variable ‘NPixels’**
```r
  tabulated2[, proportion := round(NPixels / sum(NPixels), 4), by = c("zone")]
                                   ^~~~~~~
```
[R/leading.R:120:36:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L120) *warning:* **no visible binding for global variable ‘NPixels’**
```r
  tabulated2[, proportion := round(NPixels / sum(NPixels), 4), by = c("zone")]
                                   ^~~~~~~
```
[R/leading.R:121:3:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L121) *warning:* **no visible global function definition for ‘set’, Did you mean 'det'?**
```r
  set(tabulated2, NULL, "vegCover", "All species")
  ^~~
```
[R/leading.R:123:1:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L123) *style:* **Lines should not be more than 80 characters.**
```r
  tabulated <- rbindlist(list(tabulated, tabulated2), use.names = TRUE, fill = TRUE)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/leading.R:123:16:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L123) *warning:* **no visible global function definition for ‘rbindlist’**
```r
  tabulated <- rbindlist(list(tabulated, tabulated2), use.names = TRUE, fill = TRUE)
               ^~~~~~~~~
```
[R/leading.R:125:1:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L125) *style:* **Lines should not be more than 80 characters.**
```r
  ## column containing the factor names varies, so we need to search for the right one
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/leading.R:126:1:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L126) *style:* **Lines should not be more than 80 characters.**
```r
  colID <- which(colnames(raster::levels(rasVeg)[[1]]) %in% c("category", "Factor", "VALUE"))
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/leading.R:126:3:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L126) *style:* **Variable or function name should be snake_case.**
```r
  colID <- which(colnames(raster::levels(rasVeg)[[1]]) %in% c("category", "Factor", "VALUE"))
  ^~~~~
```
[R/leading.R:127:3:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L127) *style:* **Variable or function name should be snake_case.**
```r
  coverClasses <- raster::levels(rasVeg)[[1]][[colID]]
  ^~~~~~~~~~~~
```
[R/leading.R:129:5:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L129) *style:* **Variable or function name should be snake_case.**
```r
    coverClasses <- levels(coverClasses)
    ^~~~~~~~~~~~
```
[R/leading.R:131:3:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L131) *style:* **Variable or function name should be snake_case.**
```r
  coverClasses <- as.character(coverClasses)
  ^~~~~~~~~~~~
```
[R/leading.R:132:3:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L132) *style:* **Variable or function name should be snake_case.**
```r
  emptyID <- which(coverClasses == "")
  ^~~~~~~
```
[R/leading.R:134:5:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L134) *style:* **Variable or function name should be snake_case.**
```r
    coverClasses <- coverClasses[-emptyID]
    ^~~~~~~~~~~~
```
[R/leading.R:137:5:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L137) *style:* **Variable or function name should be snake_case.**
```r
    coverClasses <- c(coverClasses, "All species")
    ^~~~~~~~~~~~
```
[R/leading.R:139:3:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L139) *style:* **Variable or function name should be snake_case.**
```r
  allCombos <- expand.grid(
  ^~~~~~~~~
```
[R/leading.R:145:4:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L145) *style:* **Commented code should be removed.**
```r
  #allCombos$polygonID <- match(allCombos$zone, levs$shinyLabel)
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/leading.R:156:19:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L156) *warning:* **no visible binding for global variable ‘proportion’**
```r
  tabulated[is.na(proportion), proportion := 0]
                  ^~~~~~~~~~
```
[R/leading.R:156:19:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L156) *warning:* **no visible binding for global variable ‘proportion’**
```r
  tabulated[is.na(proportion), proportion := 0]
                  ^~~~~~~~~~
```
[R/leading.R:156:43:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L156) *warning:* **no visible global function definition for ‘:=’, Did you mean ':'?**
```r
  tabulated[is.na(proportion), proportion := 0]
                                          ^~
```
[R/leading.R:162:1:](https://github.com/PredictiveEcology/map/blob/754c27226f900e501f47ff3e7818076ad0f6876b/R/leading.R#L162) *style:* **Lines should not be more than 80 characters.**
```r
        paste(gsub(basename(dirname(tsf[1])), pattern = "\\.", replacement = ""),
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```


Fix for #10


Good to hear that it seems to be working much better.

So that is a good thing to know though, I should probably implement a max length check for the password with a sane default (maybe 72 characters to match the bcrypt max length) and truncate anything over that length while giving a notification that it exceeded the max length configured.

In my testing, the only issues I saw with extremely large passwords were where I passed in 2000+ characters, and that would take 4-5 seconds.

I'm going to open an issue to add that to Nbvcxz in the next release so this type of thing isn't an issue going forward.

Thanks for the feedback!


I wasn't able to retrieve PDD puzzles from the code base and submit them to GitHub. If you think that it's a bug on our side, please submit it to [yegor256/0pdd](https://github.com/yegor256/0pdd/issues):

> set -x && set -e && set -o pipefail && cd /tmp/0pdd20190210-4-1su4wbt/LarryHsiao/Vesta && pdd -v -f /tmp/20190210-4536-2usc80 [1]: bash: warning: setlocale: LC_ALL: cannot change locale (UTF-8) + set -e + set -o pipefail + cd /tmp/0pdd20190210-4-1su4wbt/LarryHsiao/Vesta + pdd -v -f...

Please, copy and paste this stack trace to GitHub:

```
UserError
set -x && set -e && set -o pipefail && cd /tmp/0pdd20190210-4-1su4wbt/LarryHsiao/Vesta && pdd -v -f /tmp/20190210-4536-2usc80 [1]:
bash: warning: setlocale: LC_ALL: cannot change locale (UTF-8)
+ set -e
+ set -o pipefail
+ cd /tmp/0pdd20190210-4-1su4wbt/LarryHsiao/Vesta
+ pdd -v -f /tmp/20190210-4536-2usc80

My version is 0.20.4
Ruby version is 2.6.0 at x86_64-linux
Reading /tmp/0pdd20190210-4-1su4wbt/LarryHsiao/Vesta
32 file(s) found, 56 excluded
/tmp/0pdd20190210-4-1su4wbt/LarryHsiao/Vesta/gradle/wrapper/gradle-wrapper.jar is a binary file (56172 bytes)
Reading gradlew...
Reading build.gradle...
Reading src/main/java/com/silverhetch/vesta/tag/Tag.sql...
Reading src/main/java/com/silverhetch/vesta/database/H2DB.kt...
Reading src/main/java/com/silverhetch/vesta/arch/database/Database.kt...
Reading src/main/java/com/silverhetch/vesta/target/Target.sql...
Reading src/main/java/com/silverhetch/vesta/target/DBTargets.kt...
Reading src/main/java/com/silverhetch/vesta/target/Targets.kt...
Reading src/main/java/com/silverhetch/vesta/target/DBTarget.kt...
Reading src/main/java/com/silverhetch/vesta/target/Target.kt...
Reading src/main/java/com/silverhetch/vesta/jfx/VestaApplication.kt...
Reading src/main/java/com/silverhetch/vesta/jfx/util/ExceptionDialog.java...
Reading src/test/java/com/silverhetch/edge/H2Test.java...
Reading src/test/java/com/silverhetch/vesta/target/DBTargetTest.kt...
Reading .travis.yml...
Reading settings.gradle...
Reading .idea/dataSources.local.xml...
Reading .idea/gradle.xml...
Reading .idea/encodings.xml...
Reading .idea/Vesta.iml...
Reading .idea/misc.xml...
Reading .idea/vcs.xml...
Reading .idea/uiDesigner.xml...
Reading .idea/modules.xml...
Reading .idea/workspace.xml...
ERROR: .idea/workspace.xml; puzzle at line #586; TODO must have a leading space to become a puzzle, as this page explains: https://github.com/yegor256/pdd#how-to-format
If you can't understand the cause of this issue or you don't know how to fix it, please submit a GitHub issue, we will try to help you: https://github.com/yegor256/pdd/issues. This tool is still in its beta version and we will appreciate your feedback. Here is where you can find more documentation: https://github.com/yegor256/pdd/blob/master/README.md.
Exit code is 1

/app/objects/git_repo.rb:66:in `rescue in block in xml'
/app/objects/git_repo.rb:63:in `block in xml'
/app/vendor/ruby-2.6.0/lib/ruby/2.6.0/tempfile.rb:295:in `open'
/app/objects/git_repo.rb:62:in `xml'
/app/objects/puzzles.rb:36:in `deploy'
/app/objects/job.rb:38:in `proceed'
/app/objects/job_starred.rb:33:in `proceed'
/app/objects/job_recorded.rb:32:in `proceed'
/app/objects/job_emailed.rb:35:in `proceed'
/app/objects/job_commiterrors.rb:36:in `proceed'
/app/objects/job_detached.rb:48:in `exclusive'
/app/objects/job_detached.rb:36:in `block in proceed'
/app/objects/job_detached.rb:36:in `fork'
/app/objects/job_detached.rb:36:in `proceed'
/app/0pdd.rb:354:in `block in <top (required)>'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:1635:in `call'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:1635:in `block in compile!'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:992:in `block (3 levels) in route!'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:1011:in `route_eval'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:992:in `block (2 levels) in route!'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:1040:in `block in process_route'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:1038:in `catch'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:1038:in `process_route'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:990:in `block in route!'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:989:in `each'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:989:in `route!'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:1097:in `block in dispatch!'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:1076:in `block in invoke'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:1076:in `catch'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:1076:in `invoke'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:1094:in `dispatch!'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:924:in `block in call!'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:1076:in `block in invoke'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:1076:in `catch'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:1076:in `invoke'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:924:in `call!'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:913:in `call'
/app/vendor/bundle/ruby/2.6.0/gems/rack-protection-2.0.4/lib/rack/protection/xss_header.rb:18:in `call'
/app/vendor/bundle/ruby/2.6.0/gems/rack-protection-2.0.4/lib/rack/protection/path_traversal.rb:16:in `call'
/app/vendor/bundle/ruby/2.6.0/gems/rack-protection-2.0.4/lib/rack/protection/json_csrf.rb:26:in `call'
/app/vendor/bundle/ruby/2.6.0/gems/rack-protection-2.0.4/lib/rack/protection/base.rb:50:in `call'
/app/vendor/bundle/ruby/2.6.0/gems/rack-protection-2.0.4/lib/rack/protection/base.rb:50:in `call'
/app/vendor/bundle/ruby/2.6.0/gems/rack-protection-2.0.4/lib/rack/protection/frame_options.rb:31:in `call'
/app/vendor/bundle/ruby/2.6.0/gems/rack-2.0.6/lib/rack/logger.rb:15:in `call'
/app/vendor/bundle/ruby/2.6.0/gems/rack-2.0.6/lib/rack/common_logger.rb:33:in `call'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:231:in `call'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:224:in `call'
/app/vendor/bundle/ruby/2.6.0/gems/rack-2.0.6/lib/rack/head.rb:12:in `call'
/app/vendor/bundle/ruby/2.6.0/gems/rack-2.0.6/lib/rack/method_override.rb:22:in `call'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:194:in `call'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:1957:in `call'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:1502:in `block in call'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:1729:in `synchronize'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:1502:in `call'
/app/vendor/bundle/ruby/2.6.0/gems/rack-2.0.6/lib/rack/handler/webrick.rb:86:in `service'
/app/vendor/ruby-2.6.0/lib/ruby/2.6.0/webrick/httpserver.rb:140:in `service'
/app/vendor/ruby-2.6.0/lib/ruby/2.6.0/webrick/httpserver.rb:96:in `run'
/app/vendor/ruby-2.6.0/lib/ruby/2.6.0/webrick/server.rb:307:in `block in start_thread'
```


![](https://github.trello.services/images/mini-trello-icon.png) [SPR5: Dashboard: star rating breakdown](https://trello.com/c/9cYMKdx0/16-spr5-dashboard-star-rating-breakdown)


I wasn't able to retrieve PDD puzzles from the code base and submit them to GitHub. If you think that it's a bug on our side, please submit it to [yegor256/0pdd](https://github.com/yegor256/0pdd/issues):

> set -x && set -e && set -o pipefail && cd /tmp/0pdd20190210-4-1su4wbt/LarryHsiao/Vesta && pdd -v -f /tmp/20190210-4619-7on89b [1]: bash: warning: setlocale: LC_ALL: cannot change locale (UTF-8) + set -e + set -o pipefail + cd /tmp/0pdd20190210-4-1su4wbt/LarryHsiao/Vesta + pdd -v -f...

Please, copy and paste this stack trace to GitHub:

```
UserError
set -x && set -e && set -o pipefail && cd /tmp/0pdd20190210-4-1su4wbt/LarryHsiao/Vesta && pdd -v -f /tmp/20190210-4619-7on89b [1]:
bash: warning: setlocale: LC_ALL: cannot change locale (UTF-8)
+ set -e
+ set -o pipefail
+ cd /tmp/0pdd20190210-4-1su4wbt/LarryHsiao/Vesta
+ pdd -v -f /tmp/20190210-4619-7on89b

My version is 0.20.4
Ruby version is 2.6.0 at x86_64-linux
Reading /tmp/0pdd20190210-4-1su4wbt/LarryHsiao/Vesta
33 file(s) found, 62 excluded
/tmp/0pdd20190210-4-1su4wbt/LarryHsiao/Vesta/gradle/wrapper/gradle-wrapper.jar is a binary file (56172 bytes)
Reading gradlew...
Reading build.gradle...
Reading src/main/java/com/silverhetch/vesta/tag/Tag.sql...
Reading src/main/java/com/silverhetch/vesta/database/H2DB.kt...
Reading src/main/java/com/silverhetch/vesta/arch/database/Database.kt...
Reading src/main/java/com/silverhetch/vesta/target/Target.sql...
Reading src/main/java/com/silverhetch/vesta/target/DBTargets.kt...
Reading src/main/java/com/silverhetch/vesta/target/Targets.kt...
Reading src/main/java/com/silverhetch/vesta/target/DBTarget.kt...
Reading src/main/java/com/silverhetch/vesta/target/Target.kt...
Reading src/main/java/com/silverhetch/vesta/jfx/VestaApplication.kt...
Reading src/main/java/com/silverhetch/vesta/jfx/util/ExceptionDialog.java...
Reading src/test/java/com/silverhetch/edge/H2Test.java...
Reading src/test/java/com/silverhetch/vesta/target/DBTargetTest.kt...
Reading .travis.yml...
Reading settings.gradle...
Reading LICENSE...
Reading .idea/dataSources.local.xml...
Reading .idea/gradle.xml...
Reading .idea/encodings.xml...
Reading .idea/Vesta.iml...
Reading .idea/misc.xml...
Reading .idea/vcs.xml...
Reading .idea/uiDesigner.xml...
Reading .idea/modules.xml...
Reading .idea/workspace.xml...
ERROR: .idea/workspace.xml; puzzle at line #586; TODO must have a leading space to become a puzzle, as this page explains: https://github.com/yegor256/pdd#how-to-format
If you can't understand the cause of this issue or you don't know how to fix it, please submit a GitHub issue, we will try to help you: https://github.com/yegor256/pdd/issues. This tool is still in its beta version and we will appreciate your feedback. Here is where you can find more documentation: https://github.com/yegor256/pdd/blob/master/README.md.
Exit code is 1

/app/objects/git_repo.rb:66:in `rescue in block in xml'
/app/objects/git_repo.rb:63:in `block in xml'
/app/vendor/ruby-2.6.0/lib/ruby/2.6.0/tempfile.rb:295:in `open'
/app/objects/git_repo.rb:62:in `xml'
/app/objects/puzzles.rb:36:in `deploy'
/app/objects/job.rb:38:in `proceed'
/app/objects/job_starred.rb:33:in `proceed'
/app/objects/job_recorded.rb:32:in `proceed'
/app/objects/job_emailed.rb:35:in `proceed'
/app/objects/job_commiterrors.rb:36:in `proceed'
/app/objects/job_detached.rb:48:in `exclusive'
/app/objects/job_detached.rb:36:in `block in proceed'
/app/objects/job_detached.rb:36:in `fork'
/app/objects/job_detached.rb:36:in `proceed'
/app/0pdd.rb:354:in `block in <top (required)>'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:1635:in `call'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:1635:in `block in compile!'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:992:in `block (3 levels) in route!'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:1011:in `route_eval'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:992:in `block (2 levels) in route!'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:1040:in `block in process_route'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:1038:in `catch'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:1038:in `process_route'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:990:in `block in route!'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:989:in `each'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:989:in `route!'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:1097:in `block in dispatch!'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:1076:in `block in invoke'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:1076:in `catch'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:1076:in `invoke'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:1094:in `dispatch!'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:924:in `block in call!'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:1076:in `block in invoke'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:1076:in `catch'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:1076:in `invoke'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:924:in `call!'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:913:in `call'
/app/vendor/bundle/ruby/2.6.0/gems/rack-protection-2.0.4/lib/rack/protection/xss_header.rb:18:in `call'
/app/vendor/bundle/ruby/2.6.0/gems/rack-protection-2.0.4/lib/rack/protection/path_traversal.rb:16:in `call'
/app/vendor/bundle/ruby/2.6.0/gems/rack-protection-2.0.4/lib/rack/protection/json_csrf.rb:26:in `call'
/app/vendor/bundle/ruby/2.6.0/gems/rack-protection-2.0.4/lib/rack/protection/base.rb:50:in `call'
/app/vendor/bundle/ruby/2.6.0/gems/rack-protection-2.0.4/lib/rack/protection/base.rb:50:in `call'
/app/vendor/bundle/ruby/2.6.0/gems/rack-protection-2.0.4/lib/rack/protection/frame_options.rb:31:in `call'
/app/vendor/bundle/ruby/2.6.0/gems/rack-2.0.6/lib/rack/logger.rb:15:in `call'
/app/vendor/bundle/ruby/2.6.0/gems/rack-2.0.6/lib/rack/common_logger.rb:33:in `call'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:231:in `call'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:224:in `call'
/app/vendor/bundle/ruby/2.6.0/gems/rack-2.0.6/lib/rack/head.rb:12:in `call'
/app/vendor/bundle/ruby/2.6.0/gems/rack-2.0.6/lib/rack/method_override.rb:22:in `call'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:194:in `call'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:1957:in `call'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:1502:in `block in call'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:1729:in `synchronize'
/app/vendor/bundle/ruby/2.6.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:1502:in `call'
/app/vendor/bundle/ruby/2.6.0/gems/rack-2.0.6/lib/rack/handler/webrick.rb:86:in `service'
/app/vendor/ruby-2.6.0/lib/ruby/2.6.0/webrick/httpserver.rb:140:in `service'
/app/vendor/ruby-2.6.0/lib/ruby/2.6.0/webrick/httpserver.rb:96:in `run'
/app/vendor/ruby-2.6.0/lib/ruby/2.6.0/webrick/server.rb:307:in `block in start_thread'
```


not failing with visual studio


just rename it yourself


You bet!


Right now this accepts any `exn:fail`, but what I really want is for this to only accept exceptions that are explicitly thrown by the type-checker upon finding a type mismatch, as other types of exceptions may be due to bugs in the checker. I'm considering introducing a new type exception that would be raised by the type checker to allow for this.


Might be worth to ensure that goal decomposes to invalid or throws cannotfulfillgoalexception in case tile is invalid


Successfully aliased the URL <https://nextjs-static-6tcdymlal.now.sh> to the following alias.

* https://star-wars-app.now.sh


# About this commit:
* Moved the Read Me and Code of Conduct back into the home folder. GitHub wanted me to make another Read Me because our's wasn't immediately readable hiding in the data folder. :unamused:
* Added `<medium type="">` to the schema for markup. This is mainly for timeline purposes. Banksy does more than just graffiti tags, and I wanted to include his prints and sculptures in the timeline. If you look at Issue #8 (Sources), there is a link to a database of his prints that we can use for this part of the project. The acceptable values for `@type` are spray_paint, painting, or sculpture. If you look at the schema, `@type` uses the list function. This means that if the work you are marking up uses more than one `@type` value, you can include both (or more) in the attribute value, just separate them with a `\s{1}`.
* Added `@alt` to need to be included in every `<img>`. Dr. B went over what this is in class, but it's for people who are not viewing the actual images up on the site. The internet is for everyone, so let's make our site accessible as well! For Girl with Balloon, I have two images of the tag. The `@alt` values I used are `@alt="Girl With Balloon London Location"` and `@alt="Girl With Balloon Waterloo Location"`
@James-f117 @abdual1100


Puzzle `42-a6cc90a9` disappeared from [`timeless/restaurants/locations/views.py`](https://github.com/timelesslounge/timelessis/blob/master/timeless/restaurants/locations/views.py), that's why I closed #133. Please, remember that the puzzle was not necessarily removed in this particular commit. Maybe it happened earlier, but we discovered this fact only now.


Puzzle `133-6fbe419f` discovered in   [`timeless/restaurants/locations/views.py`](  https://github.com/timelesslounge/timelessis/blob/master/timeless/restaurants/locations/views.py)   and submitted as #208. Please, remember that the puzzle was not   necessarily added in this particular commit. Maybe it was added earlier, but   we discovered it only now.


Хитро, но давай все-таки сделаем как ты реализовал в классе `Train`
Мало ли, удалять станции придется, или еще что.


heat-emission (XuanLuoLBL) - x86_64-MacOS-10.13-clang: Tests Failed (2546 of 3079 tests passed, 100 test warnings)

Messages:

 * 633 tests had: AUD diffs.
 * 633 tests had: EIO diffs.
 * 622 tests had: RDD diffs.
 * 533 tests had: Table big diffs.
 * 1 test had: BND diffs.
 * 2 tests had: ERR diffs.
 * 4 tests had: MTD diffs.

Failures:

regression Test Summary
 * Passed: 101
 * Failed: 533

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


There is something in `VisitObj::getAllPossibleSubgoals()` for that already, is that enough?
```
	const CGObjectInstance * obj = cb->getObjInstance(ObjectInstanceID(objid));
	if(!obj)
	{
		throw cannotFulfillGoalException("Object is missing - goal is invalid now!");
	}
```


Move everything except `.gitignore`. into a directory called `mancala`, and make it a Python package by creating a `__init__.py` file.


Nice code, im not sure that its working because im new one too


Theme setup


Давай хранить `station_index` в переменной объекта? А то получается что почти в каждом методе мы обращаемся к массиву станций, спрашиваем индекс... Небыстро это все, да и не нужно.


Yes it is enough.


Harry, this logic is gone in the current beta version


`None` is not a type, and there is not need to specify the return type of a function that returns nothing...


В одну строку лучше


i did not realize this before, thank u!


This does not seem correct. Default executor case, the task_info is not set?


@janmenjoyroy it seems better, thanks, I still think having the portraits was ok inside a ``team`` directory, so they are not mixed with the rest. So something like: ``assets/images/team/stefan_portrait.jpg``


А зачем аксессор на текущую станцию? Мы же меняем станции при помощи методов `move_forward` и `move_back`
Получится так, что вполне реально назначить поезду станцию, при этом сама станция о том что на нее прибыл поезд знать не будет


Здесь вызывать явно toString() не обязательно. Он вызывается автоматически если мы передаем объект в println()


test


easier in python tbh


ilk websitesi


The main logic of score calculation and pass choosing is better to separate into a function. It's just a style advice.


Fixes #58 for windows.


А давай без сокращения попробуем имена переменных? `qty_wagon` как-то не очень читается, незачем символы экономить


The same. The main logic of traceback is better to separate into a function. It's just a style advice.


2  discord


Shouldn't this point to "https://docs.rs/reductive"?


А почему у тебя здесь переменная routs, а аксессор сделан на переменную route? Чему верить?
(если что, я за route, так лучше)


Successfully aliased the URL <https://home-i8kfwcz7v.now.sh> to the following alias.

* https://kamrybowman.com


♻ Another **naming convention**: Capitalization in python is reserved for **classes**. Keep variables lowercase to avoid confusion.


Now could not deploy this pull request since the "files" configuration in `now.json` lists these files or directories which do not exist:

* `dist`

These paths may be missing from the GitHub repository because of a `.gitignore` file.
Consider committing them to GitHub or removing them from the "files" list and generating the paths on Now instead using a [build script for a Node.js deployment](https://zeit.co/docs/deployment-types/node), or within your `Dockerfile` for a [docker deployment](https://zeit.co/docs/deployment-types/docker).

For more information on the "files" configuration in now.json, visit [https://zeit.co/docs/features/configuration#files(array)](https://zeit.co/docs/features/configuration#files(array))


This build also applies the hypothetical mineral contents of regolith covered in NASA's Mars Water ISRU Planning Study 2016. In each reference Case B, C, and D, some % of grey water is derived. See further discussions in acquiring  water resource in https://github.com/mars-sim/mars-sim/issues/154.


## Great 👍

Good solution that applies looping and the `in` operator :)

## Challenge 🚀

Using all the same concepts that you use here - what's a different, potentially even more intuitive, _sequence_ you could use (instead of a list)?


Is this supported in latest build?


Sounds good, I'm checking it out.
Thank you!


this sounds a bit dangerous or confusing to me... Our styleguide is to always use `"` for example.

Perhaps allow passing a real `Regexp` if you want to match a regex, or a String if you do a simple match? Then the code can become even simpler, e.g.

```ruby
# this substitutes either a simple string or a regex, based on whatever is being passed
filename.gsub!(root, './')
```


You know, having a way to migrate through this change would have been nice


*日志切割	//常见面试题
-日志文件越来越大怎么办?单个文件10G?
把旧的日志重命名
[root@proxy nginx]# cd logs/
[root@proxy logs]# ls
access.log  error.log  nginx.pid
[root@proxy logs]# mv access.log access2.log
[root@proxy logs]# ls
access2.log  error.log  nginx.pid

kill USR1 PID(nginx的进程号)
[root@proxy logs]# kill -USR1 $(cat nginx.pid)

-怎么自动完成,周期性日志切割
*脚本与计划任务
每周5的03点03分自动执行脚本完成日志切割工作
[root@proxy ~]# vim /usr/local/nginx/logbak.sh
#!/bin/bash
date=`date +%Y%m%d`
logpath=/usr/local/nginx/logs
mv $logpath/access.log $logpath/access-$date.log
mv $logpath/error.log $logpath/error-$date.log
kill -USR1 $(cat $logpath/nginx.pid)
[root@proxy ~]# crontab -e
03 03 * * 5 /usr/local/nginx/logbak.sh


`roots << "#{current_root}/"`, right?


Successfully aliased the URL <https://home-mkx2e7zm3.now.sh> to the following alias.

* https://kamrybowman.com


Oui


Successfully aliased the URL <https://home-mr82ud55n.now.sh> to the following alias.

* https://kamrybowman.com


## Awesome 👍

Nice venture into **functional programming**! Here you are passing a **function** `len` as an argument to another function `max`.

`key` applies the `len` function to each element in the iterable `mylist`, and `max` picks out the largest one! :)


![image](https://user-images.githubusercontent.com/37661524/52528615-2ee0c380-2d26-11e9-870b-3695a5966d3c.png)

_20190209233413_model_cnn_01_31_dqn_var1_part11_20190209233413_ model_cnn_01_31_dqn_var1_part11_20190209233413_ lr=0.01, GAMMA=0.999

安定しない


# Awesome! 👍

Concisely applied **string slicing** and done all in one swoop, yet still readable! Nice code! :)


Cara, por favor passa teu email ou algum meio de contato.
Sei que parece estranho te pedir isso assim do nada, me desculpe, mas quero tua ajuda numa coisa.


In Prefix cython-0.29.4 did not fix things. I see the same 3 `MemoryError` locations listed above. And the `tableau` doctest always fails.


heat-emission (XuanLuoLBL) - x86_64-Linux-Ubuntu-18.04-gcc-7.3: Build Failed

Messages:

 * 637 tests had: AUD diffs.
 * 637 tests had: EIO diffs.
 * 626 tests had: RDD diffs.
 * 536 tests had: Table big diffs.
 * 1 test had: BND diffs.
 * 2 tests had: ERR diffs.
 * 4 tests had: MTD diffs.

Failures:

regression Test Summary
 * Passed: 118
 * Failed: 536

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


Lol, loving the conversational output here 😁


Successfully aliased the URL <https://mymusic-h8rzxny7j.now.sh> to the following alias.

* https://mymusic-fcmsoft.now.sh


heat-emission (XuanLuoLBL) - x86_64-Linux-Ubuntu-18.04-cppcheck-1.82: OK (0 of 0 tests passed, 0 test warnings)

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


Eu sou um programador extremamente inexperiente mas vou ajudar no que eu
puder.

Pode falar comigo pelo WhatsApp:

14991089474

On Sun, Feb 10, 2019, 00:27 guicl14 <notifications@github.com> wrote:

> Cara, por favor passa teu email ou algum meio de contato.
> Sei que parece estranho te pedir isso assim do nada, me desculpe, mas
> quero tua ajuda numa coisa.
>
> —
> You are receiving this because you authored the thread.
> Reply to this email directly, view it on GitHub
> <https://github.com/NatanDuarte/CursoEmVideoPt-Br/commit/b3915e590ed7991b8d4d82ae3adcf4f59f3e700b#commitcomment-32257954>,
> or mute the thread
> <https://github.com/notifications/unsubscribe-auth/Aqvv7OL5rmB2r7XjGIoWKTr3kMKoNQjEks5vL4N4gaJpZM4ay2aB>
> .
>


## Awesome 👍

Very clean code organization by compartmentalizing every action into a separate **function**! Also, the naming of your functions and variables is super descriptive! 👏 Makes your code logic easy to understand and easy to re-use.

## Challenge 🚀

Write a **wrapper-function** that uses all of your defined functions to allow an (US-American?) user (well, someone who actually uses miles... ;) to enter distance and time and get their SI-compliant output of `km/h` (or `m/s`, if you want to be that guy! Lol! 😜


OK I think it needs to be taken up to sage-devel.


## Challenge 🚀

Write a **wrapper-function** that uses all of your defined functions to allow an (US-American?) user (well, someone who actually uses miles... ;) to enter distance and time and get their SI-compliant output of `km/h` (or `m/s`, if you want to be that guy! Lol! 😜


Successfully aliased the URL <https://home-b1m9gt3z4.now.sh> to the following alias.

* https://kamrybowman.com


FYI, it's not this commit but rather this particular line where it throws when the validation fails: https://github.com/epoberezkin/ajv/commit/47c8fc90ad5737d2243de1b9986783f5fe51b703#diff-34ca6aa44a2d1974a7c8be61f277b6d3R65


Watch out to avoid naming variables in uppercase in python. Even something like `F` would be better served when named `fahrenheit`.


Wow, thanks for the performance analysis @jheer - that's definitely something we should resolve. I think previously we were invoking `Object.defineProperty` once per table, but we never created a benchmark for the proxies and somewhere in there I guess we had a regression.

I wrote up some jiras to [create a benchmark](https://issues.apache.org/jira/browse/ARROW-4523) and [use a shared prototype for the proxies](https://issues.apache.org/jira/browse/ARROW-4524). I'll work on those tomorrow.


Feels good to use those **f-strings**, no? :D


yes it failed. please fix!


## Question ❓

Hei Ming - I don't think I understand what you are trying to do here with this `if` statement. What are you trying to check for when you say `if s == 1`? When would that be the case?


Hehe... Nice commit message +1:


Starting the file


I'd have asked you to also update the Inter font. Next time


what happened here? why did we add the second one


## Awesome 👍

Great job with a clean code logic and very useful **code comments**! Reading them makes it easily understandable what you're doing here.

## Suggestion 🚀

In this case, you could improve your code by simply **using the "variable names" in your code comments as actual **variable names**! Check out this [great article on code comments vs. variable naming](https://blog.codinghorror.com/code-tells-you-how-comments-tell-you-why/) that goes into this topic in more detail.

How could you re-write this code in a quick way just through re-naming your variables to the names you're using in your comments? Post it here as a response!


## Lol! 🤣

Great game! Haha! What do I win with that multiplication? 😁


Check if this change is reasonable when specifying both full and relative paths.


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

* https://cook.zaratan.fr
* https://cooking.zaratan.fr


## Lol 🤣🐷

Lovely prompt, hehe... 😜


Check if `Any` allocates here - I think it used to and I think you can avoid the allocation.


This is hard to read, mixing inline `new`, constructor, properties, and `as T`. Too much going on in a single argument IMO.


(Note, if compiling is mysteriously broken and gives all sorts of library errors, we should probably remove this.)


Successfully aliased the URL <https://stripe-services-4muzop71x.now.sh> to the following alias.

* https://stripe-services.now.sh


This is actually intentional, as `///` signifies a one-line documentation comment.


3982683-EIRFormulatedWWHP (Myoldmopar) - x86_64-Linux-Ubuntu-18.04-gcc-7.3-UnitTestsCoverage-Debug: OK (1821 of 1821 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-41.62%25-green.png)


We could in theory throw a warning if SDK doesn't exists, but I would not worry about that.


Why didn't you use numpy lib? It is more comfortable to use np.zeros((m, n), int) for example for initialization matrix and further processing. But there are no much differences in context of this algorithm, just for a note.


Deployment failed with the following error:

~~~
You tried to create a Now 1.0 deployment. Please use Now 2.0 instead: https://zeit.co/upgrade
~~~


Racheli first commit
[doc.txt](https://github.com/rachely2311/Test/files/2849316/doc.txt)


sth


Are those PrivateFrameworks installed by default? If so, why don't you simply open a PR with these changes? (I didn't check what exactly was changed in the portgroup, maybe just lowered the minimum os number, but there's nothing offensive in the portfile.)


You can use list.reverse() instead of creating new list with join + slicing trick. It is better approach.


@frimik Are you planning to upstream this?


@ocean90, so was the SQL injection vulnerability in one of these post parameters?
/wp-admin/post.php?post=1&action=untrash&_wpnonce=62d5415fce

Thanks


I see, so that's excellent news :+1:
I was actually loooking for a new file with hundreds of LOC and completely missed `sound_nil` at the first reading :stuck_out_tongue:


Done


Hi Morpheus,

I have checked that the new code works fine with zip files, so I
imagine it will be OK with isos too.

Note that if you navigate into a folder (whether a directory, or
a zip file, or a folder within a zip file), and there are no
files matching the new file extension filter, and no subfolders,
then the plus will disappear once you have clicked on it (because
the item has no valid children).

This is perhaps not optimal UI design, but I am not sure what
would be a better alternative.

Regards,

Nikki

--
Nikki Locke, Trumphurst Ltd.  PC & Unix consultancy & programming
http://www.trumphurst.com/


A small typo:
%{_libdir}/libnvidia-opticalflow.so.1


Aliasing failed with the following error:

~~~
Error! You don't have permissions over domain hyper.is under zeit.
~~~


@mvincerx , you still have to use sudo because you are currently logged in as a normal user and running a command that requires root permissions.  wheelnopw group only suppresses the need to enter your password when you run the sudo command for a user who is a member of that group


comentário### ****


Hmm, fix for typo caused another one.  Next time I should read the entire sentence for the context :smiling_imp:


можно было явно тут ловить FailedToPlayException, чтоб потом не было приведения типов.


исправил


исправлено


Is sudo swupd udpate` necesssary even after the instruction states?

`usermod -G wheel -a <userid>`


Да) там просто в задании было создать исключение именно с этим классом) ну
я типо чтоб все по документации)

вс, 10 февр. 2019 г., 23:21 ronolya notifications@github.com:

> можно было явно тут ловить FailedToPlayException, чтоб потом не было
> приведения типов.
>
> —
> You are receiving this because you authored the thread.
> Reply to this email directly, view it on GitHub
> <https://github.com/YulianaP92/MusicPlayer_2/commit/12b3af40983249e0a443ce8f1f8cbbda2e541063#commitcomment-32261715>,
> or mute the thread
> <https://github.com/notifications/unsubscribe-auth/AqHkBgb1wvTlMcfFyENeLtRZFLRP3IFmks5vMH9OgaJpZM4azQE2>
> .
>


Successfully aliased the URL <https://mymusic-m5h5vcdhv.now.sh> to the following alias.

* https://mymusic-fcmsoft.now.sh


Will do ;>


Técnicamente aún no se puede. Falta configurar las reglas lógicas que solo permiten hacer apuestas por dos columnas contiguas.


## R function to create matrix and then cache its inverse, if not done already.