[R/calc_fit.R:14:4:](https://github.com/thijsjanzen/enviDiv/blob/97116db9bc42ad3b56b0606afb31476fd3f3789c/R/calc_fit.R#L14) *style:* **Commented code should be removed.**
```r
  #diff <- diff * diff
   ^~~~~~~~~~~~~~~~~~~
```
[R/calc_fit.R:17:4:](https://github.com/thijsjanzen/enviDiv/blob/97116db9bc42ad3b56b0606afb31476fd3f3789c/R/calc_fit.R#L17) *style:* **Commented code should be removed.**
```r
  #standard_deviations <- c(0.05, 2.66, 0.173, 40, 3.5, 191, 408, 0.646)
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/calc_fit.R:19:4:](https://github.com/thijsjanzen/enviDiv/blob/97116db9bc42ad3b56b0606afb31476fd3f3789c/R/calc_fit.R#L19) *style:* **Commented code should be removed.**
```r
  #diff <- diff / standard_deviations
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/calc_sum_stats.R:48:14:](https://github.com/thijsjanzen/enviDiv/blob/97116db9bc42ad3b56b0606afb31476fd3f3789c/R/calc_sum_stats.R#L48) *style:* **Remove spaces before the left parenthesis in a function call.**
```r
      return (b)
             ^
```
[R/calc_sum_stats.R:52:12:](https://github.com/thijsjanzen/enviDiv/blob/97116db9bc42ad3b56b0606afb31476fd3f3789c/R/calc_sum_stats.R#L52) *style:* **Remove spaces before the left parenthesis in a function call.**
```r
    return (b)
           ^
```
[R/calculate_weight.R:23:6:](https://github.com/thijsjanzen/enviDiv/blob/97116db9bc42ad3b56b0606afb31476fd3f3789c/R/calculate_weight.R#L23) *style:* **Commented code should be removed.**
```r
    #cat("weights normalized because sum was ", sum(weights), "\n")
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/calculate_weight.R:34:53:](https://github.com/thijsjanzen/enviDiv/blob/97116db9bc42ad3b56b0606afb31476fd3f3789c/R/calculate_weight.R#L34) *style:* **Do not place spaces around code in parentheses or square brackets.**
```r
  final_weight <- 1.0 / (sum(model_prob) * sum(vals) )
                                                    ^
```
[R/generate_naive.R:18:4:](https://github.com/thijsjanzen/enviDiv/blob/97116db9bc42ad3b56b0606afb31476fd3f3789c/R/generate_naive.R#L18) *style:* **Commented code should be removed.**
```r
  #oplan <- future::plan()
   ^~~~~~~~~~~~~~~~~~~~~~~
```
[R/generate_naive.R:19:4:](https://github.com/thijsjanzen/enviDiv/blob/97116db9bc42ad3b56b0606afb31476fd3f3789c/R/generate_naive.R#L19) *style:* **Commented code should be removed.**
```r
  #on.exit(future::plan(oplan), add = TRUE)
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/generate_naive.R:21:4:](https://github.com/thijsjanzen/enviDiv/blob/97116db9bc42ad3b56b0606afb31476fd3f3789c/R/generate_naive.R#L21) *style:* **Commented code should be removed.**
```r
  #future::plan(future::multiprocess)
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/generate_naive.R:41:9:](https://github.com/thijsjanzen/enviDiv/blob/97116db9bc42ad3b56b0606afb31476fd3f3789c/R/generate_naive.R#L41) *style:* **Place a space before left parenthesis, except in a function call.**
```r
      if(is.null(found_tree)) {
        ^
```
[R/generate_naive.R:45:16:](https://github.com/thijsjanzen/enviDiv/blob/97116db9bc42ad3b56b0606afb31476fd3f3789c/R/generate_naive.R#L45) *style:* **Use <-, not =, for assignment.**
```r
      num_tips = found_tree$Nnode + 1
               ^
```
[R/generate_naive.R:47:9:](https://github.com/thijsjanzen/enviDiv/blob/97116db9bc42ad3b56b0606afb31476fd3f3789c/R/generate_naive.R#L47) *style:* **Place a space before left parenthesis, except in a function call.**
```r
      if(num_tips >= min_tips && num_tips <= max_tips) {
        ^
```
[R/generate_naive.R:79:1:](https://github.com/thijsjanzen/enviDiv/blob/97116db9bc42ad3b56b0606afb31476fd3f3789c/R/generate_naive.R#L79) *style:* **Trailing blank lines are superfluous.**
```r

^
```
[R/generate_water.R:48:26:](https://github.com/thijsjanzen/enviDiv/blob/97116db9bc42ad3b56b0606afb31476fd3f3789c/R/generate_water.R#L48) *style:* **Do not place spaces around code in parentheses or square brackets.**
```r
      output2 <- output2[ -length(output2)] #water level has to be high
                         ^
```
[R/infer_params_par.R:23:16:](https://github.com/thijsjanzen/enviDiv/blob/97116db9bc42ad3b56b0606afb31476fd3f3789c/R/infer_params_par.R#L23) *warning:* **no visible global function definition for ‘calc_sum_stats’**
```r
  emp_stats <- calc_sum_stats(emp_tree, emp_tree)
               ^~~~~~~~~~~~~~
```
[R/infer_params_par.R:27:44:](https://github.com/thijsjanzen/enviDiv/blob/97116db9bc42ad3b56b0606afb31476fd3f3789c/R/infer_params_par.R#L27) *warning:* **no visible binding for global variable ‘param_from_prior’**
```r
  previous_par <- t(apply(param_matrix, 1, param_from_prior))
                                           ^~~~~~~~~~~~~~~~
```
[R/infer_params_par.R:33:40:](https://github.com/thijsjanzen/enviDiv/blob/97116db9bc42ad3b56b0606afb31476fd3f3789c/R/infer_params_par.R#L33) *style:* **Put spaces around all infix operators.**
```r
    local_eps <- 500 * exp(-0.5 * (iter-2))
                                      ~^~
```
[R/infer_params_par.R:73:42:](https://github.com/thijsjanzen/enviDiv/blob/97116db9bc42ad3b56b0606afb31476fd3f3789c/R/infer_params_par.R#L73) *warning:* **no visible binding for global variable ‘calc_fit’**
```r
      local_fit <- apply(stat_matrix, 1, calc_fit, emp_stats)
                                         ^~~~~~~~
```
[R/infer_params.R:7:1:](https://github.com/thijsjanzen/enviDiv/blob/97116db9bc42ad3b56b0606afb31476fd3f3789c/R/infer_params.R#L7) *style:* **Lines should not be more than 80 characters.**
```r
#' @param write_to_file (boolean) if true, intermediate output is written to file
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/infer_params.R:19:16:](https://github.com/thijsjanzen/enviDiv/blob/97116db9bc42ad3b56b0606afb31476fd3f3789c/R/infer_params.R#L19) *warning:* **no visible global function definition for ‘calc_sum_stats’**
```r
  emp_stats <- calc_sum_stats(emp_tree, emp_tree)
               ^~~~~~~~~~~~~~
```
[R/infer_params.R:23:44:](https://github.com/thijsjanzen/enviDiv/blob/97116db9bc42ad3b56b0606afb31476fd3f3789c/R/infer_params.R#L23) *warning:* **no visible binding for global variable ‘param_from_prior’**
```r
  previous_par <- t(apply(param_matrix, 1, param_from_prior))
                                           ^~~~~~~~~~~~~~~~
```
[R/infer_params.R:29:40:](https://github.com/thijsjanzen/enviDiv/blob/97116db9bc42ad3b56b0606afb31476fd3f3789c/R/infer_params.R#L29) *style:* **Put spaces around all infix operators.**
```r
    local_eps <- 500 * exp(-0.5 * (iter-2))
                                      ~^~
```
[R/infer_params.R:58:31:](https://github.com/thijsjanzen/enviDiv/blob/97116db9bc42ad3b56b0606afb31476fd3f3789c/R/infer_params.R#L58) *warning:* **no visible global function definition for ‘calc_sum_stats’**
```r
          stat_matrix[i, ] <- calc_sum_stats(found_trees[[i]], emp_tree)[1:8]
                              ^~~~~~~~~~~~~~
```
[R/infer_params.R:68:44:](https://github.com/thijsjanzen/enviDiv/blob/97116db9bc42ad3b56b0606afb31476fd3f3789c/R/infer_params.R#L68) *warning:* **no visible binding for global variable ‘calc_fit’**
```r
        local_fit <- apply(stat_matrix, 1, calc_fit, emp_stats)
                                           ^~~~~~~~
```
[R/param_from_prior.R:3:1:](https://github.com/thijsjanzen/enviDiv/blob/97116db9bc42ad3b56b0606afb31476fd3f3789c/R/param_from_prior.R#L3) *style:* **Lines should not be more than 80 characters.**
```r
#' @return vector with 7 entries: extinction, sympatric speciation at high water, sympatric speciation at low water, allopatric speciation, amount of perturbation, the chosen water model and the abc-weight
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/RcppExports.R:6:1:](https://github.com/thijsjanzen/enviDiv/blob/97116db9bc42ad3b56b0606afb31476fd3f3789c/R/RcppExports.R#L6) *style:* **Lines should not be more than 80 characters.**
```r
#' @param waterlevel_changes a vector that indicates the time points of water level changes
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/RcppExports.R:12:1:](https://github.com/thijsjanzen/enviDiv/blob/97116db9bc42ad3b56b0606afb31476fd3f3789c/R/RcppExports.R#L12) *style:* **Lines should not be more than 80 characters.**
```r
    .Call('_enviDiv_create_tree_cpp', PACKAGE = 'enviDiv', parameters, waterlevel_changes, seed, crown_age)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/RcppExports.R:12:11:](https://github.com/thijsjanzen/enviDiv/blob/97116db9bc42ad3b56b0606afb31476fd3f3789c/R/RcppExports.R#L12) *style:* **Only use double-quotes.**
```r
    .Call('_enviDiv_create_tree_cpp', PACKAGE = 'enviDiv', parameters, waterlevel_changes, seed, crown_age)
          ^~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/RcppExports.R:12:49:](https://github.com/thijsjanzen/enviDiv/blob/97116db9bc42ad3b56b0606afb31476fd3f3789c/R/RcppExports.R#L12) *style:* **Only use double-quotes.**
```r
    .Call('_enviDiv_create_tree_cpp', PACKAGE = 'enviDiv', parameters, waterlevel_changes, seed, crown_age)
                                                ^~~~~~~~~
```
[R/RcppExports.R:14:1:](https://github.com/thijsjanzen/enviDiv/blob/97116db9bc42ad3b56b0606afb31476fd3f3789c/R/RcppExports.R#L14) *style:* **Trailing blank lines are superfluous.**
```r

^
```
[R/sim_envidiv_tree.R:35:20:](https://github.com/thijsjanzen/enviDiv/blob/97116db9bc42ad3b56b0606afb31476fd3f3789c/R/sim_envidiv_tree.R#L35) *warning:* **no visible global function definition for ‘generate_water’**
```r
  water_changes <- generate_water(params[6], crown_age)
                   ^~~~~~~~~~~~~~
```
[R/sim_envidiv_tree.R:72:7:](https://github.com/thijsjanzen/enviDiv/blob/97116db9bc42ad3b56b0606afb31476fd3f3789c/R/sim_envidiv_tree.R#L72) *style:* **Do not place spaces around code in parentheses or square brackets.**
```r
  if ( length(ape::is.binary(phy_tree)) > 1) {
      ^
```
[tests/testthat/test-calc_fit.R:10:4:](https://github.com/thijsjanzen/enviDiv/blob/97116db9bc42ad3b56b0606afb31476fd3f3789c/tests/testthat/test-calc_fit.R#L10) *style:* **Commented code should be removed.**
```r
  #temp_tree <-  sim_envidiv_tree(params, crown_age = 5)
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[tests/testthat/test-calc_fit.R:14:4:](https://github.com/thijsjanzen/enviDiv/blob/97116db9bc42ad3b56b0606afb31476fd3f3789c/tests/testthat/test-calc_fit.R#L14) *style:* **Commented code should be removed.**
```r
 # v2 <- calc_sum_stats(temp_tree, emp_tree)
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[tests/testthat/test-get_from_prior.R:14:23:](https://github.com/thijsjanzen/enviDiv/blob/97116db9bc42ad3b56b0606afb31476fd3f3789c/tests/testthat/test-get_from_prior.R#L14) *style:* **Do not place spaces around code in parentheses or square brackets.**
```r
  testthat::expect_gt( max(v1), 0)
                      ^
```
[tests/testthat/test-infer_params.R:4:4:](https://github.com/thijsjanzen/enviDiv/blob/97116db9bc42ad3b56b0606afb31476fd3f3789c/tests/testthat/test-infer_params.R#L4) *style:* **Commented code should be removed.**
```r
  #skip_on_cran()
   ^~~~~~~~~~~~~~
```
[tests/testthat/test-infer_params.R:16:4:](https://github.com/thijsjanzen/enviDiv/blob/97116db9bc42ad3b56b0606afb31476fd3f3789c/tests/testthat/test-infer_params.R#L16) *style:* **Commented code should be removed.**
```r
  #v <- mean(do_smc$sym_high)
   ^~~~~~~~~~~~~~~~~~~~~~~~~~
```
[tests/testthat/test-infer_params.R:17:4:](https://github.com/thijsjanzen/enviDiv/blob/97116db9bc42ad3b56b0606afb31476fd3f3789c/tests/testthat/test-infer_params.R#L17) *style:* **Commented code should be removed.**
```r
  #v2 <- table(do_smc$model)
   ^~~~~~~~~~~~~~~~~~~~~~~~~
```
[tests/testthat/test-infer_params.R:18:4:](https://github.com/thijsjanzen/enviDiv/blob/97116db9bc42ad3b56b0606afb31476fd3f3789c/tests/testthat/test-infer_params.R#L18) *style:* **Commented code should be removed.**
```r
  #testthat::expect_true(which.max(v2) == 1)
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[tests/testthat/test-infer_params.R:19:4:](https://github.com/thijsjanzen/enviDiv/blob/97116db9bc42ad3b56b0606afb31476fd3f3789c/tests/testthat/test-infer_params.R#L19) *style:* **Commented code should be removed.**
```r
  #q1 <- quantile(do_smc$sym_high, c(0.025, 0.975))
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[tests/testthat/test-infer_params.R:20:4:](https://github.com/thijsjanzen/enviDiv/blob/97116db9bc42ad3b56b0606afb31476fd3f3789c/tests/testthat/test-infer_params.R#L20) *style:* **Commented code should be removed.**
```r
  #testthat::expect_true(q1[[1]] < 0.5 && q1[[2]] > 0.5)
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```


You should always make sure if an object has a property(considering nested properties) especially if data coming from out of the app.


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

* https://website.keplersj.now.sh
* https://website-git-source.keplersj.now.sh


Это немного не корректно передавайте std::string по ссылке не как по указателю. Выглядит немного не привычно)


ghjg


Successfully aliased the URL <https://caiogondimcom-5342sbcfn.now.sh> to the following aliases:

* https://caiogondim.com
* https://caiogondimcom.caiogondim.now.sh
* https://caiogondimcom-git-master.caiogondim.now.sh


You still want to set CXX_STANDARD_REQUIRED to 11 then. Some C++ compilers default to C++98 :)


Well I hold my horses at the moment, because with a nested model (e.g. as created in test_bug686) is the retriangulation to be done on each of the meshes. If so, same number for each boundary, or should cfg.numvertices now be a vector?


Если вы юзаете объект у которого есть методы, и вы его используете через указатель, то лучше писать
```
InputArrayPtr->resize
```
так будет на порядок читаемо


I think this is something I discussed with @ohm314
If I remember correctly, only the first line of `$(1)` should be grepped. So `head -n $(1) | grep -q $(2)` would be much more efficient.
Do you confirm @ohm314 ?


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

* https://caiogondim.com
* https://caiogondimcom.caiogondim.now.sh
* https://caiogondimcom-git-master.caiogondim.now.sh


Unless Reef wishes differently, I guess we can go as is and change both later for a better design.
Otherwise, we'd have to agree on the change beforehand and wait for it being merged prior to further examining the custom tables, blocking a feature you expect shortly for a 7+ years old fixme.


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

* https://blog.edisonjwa.now.sh
* https://blog-git-master.edisonjwa.now.sh


Sure


A [translation update](https://gramps-project.org/wiki/index.php/What_to_do_for_a_release#Translation_update) is part of the release procedure.  A new template file should have been generated.  Perhaps we should generate it a week before and make an announcement on the mailing list.


Correcting syntax errors and using black


done


[R/calc_K.R:2:1:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/calc_K.R#L2) *style:* **Lines should not be more than 80 characters.**
```r
#' @description Calculate the average number of junctions after an infinite number of generations, provided information on the initial heterozygosity, population size and the number of generations.
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/calc_K.R:6:1:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/calc_K.R#L6) *style:* **Lines should not be more than 80 characters.**
```r
#' @param C Mean number of crossovers per meiosis (e.g. size in Morgan of the chromosome)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/calc_K.R:11:20:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/calc_K.R#L11) *style:* **Variable or function name should be snake_case.**
```r
calc_k <- function(N = Inf,
                   ^
```
[R/calc_K.R:12:20:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/calc_K.R#L12) *style:* **Variable or function name should be snake_case.**
```r
                   R = Inf,
                   ^
```
[R/calc_K.R:13:20:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/calc_K.R#L13) *style:* **Variable or function name should be snake_case.**
```r
                   H_0 = 0.5,
                   ^~~
```
[R/calc_K.R:16:3:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/calc_K.R#L16) *style:* **Variable or function name should be snake_case.**
```r
  K <- H_0 * C * 2 * N * R / (2 * N * C + R)
  ^
```
[R/calc_K.R:19:5:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/calc_K.R#L19) *style:* **Variable or function name should be snake_case.**
```r
    K <- H_0 * R
    ^
```
[R/calc_K.R:23:5:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/calc_K.R#L23) *style:* **Variable or function name should be snake_case.**
```r
    K <- H_0 * C * 2 * N
    ^
```
[R/calc_K.R:27:5:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/calc_K.R#L27) *style:* **Variable or function name should be snake_case.**
```r
    K <- Inf
    ^
```
[R/calculate_error.R:2:1:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/calculate_error.R#L2) *style:* **Lines should not be more than 80 characters.**
```r
#' @description Calculate the error in the estimate of the onset of hybridisation, following Equations 3 & 4 in the Supplementary information of Janzen et al. 2018.
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/calculate_error.R:7:1:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/calculate_error.R#L7) *style:* **Lines should not be more than 80 characters.**
```r
#' @param C Mean number of crossovers per meiosis (e.g. size in Morgan of the chromosome)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/calculate_error.R:9:1:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/calculate_error.R#L9) *style:* **Lines should not be more than 80 characters.**
```r
#' @param relative Boolean flag, if TRUE: return the relative error, if FALSE: return error in generations
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/calculate_error.R:15:24:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/calculate_error.R#L15) *style:* **Variable or function name should be snake_case.**
```r
time_error <- function(J = NA,
                       ^
```
[R/calculate_error.R:16:24:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/calculate_error.R#L16) *style:* **Variable or function name should be snake_case.**
```r
                       N = Inf,
                       ^
```
[R/calculate_error.R:17:24:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/calculate_error.R#L17) *style:* **Variable or function name should be snake_case.**
```r
                       R = Inf,
                       ^
```
[R/calculate_error.R:18:24:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/calculate_error.R#L18) *style:* **Variable or function name should be snake_case.**
```r
                       H_0 = 0.5,
                       ^~~
```
[R/calculate_error.R:24:3:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/calculate_error.R#L24) *style:* **Variable or function name should be snake_case.**
```r
  K <- junctions::calc_k(N, R, H_0, C)
  ^
```
[R/calculate_error.R:30:7:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/calculate_error.R#L30) *style:* **Do not place spaces around code in parentheses or square brackets.**
```r
  if ( relative) return(  error)
      ^
```
[R/calculate_error.R:30:25:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/calculate_error.R#L30) *style:* **Do not place spaces around code in parentheses or square brackets.**
```r
  if ( relative) return(  error)
                        ^
```
[R/calculate_MAT.R:2:1:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/calculate_MAT.R#L2) *style:* **Lines should not be more than 80 characters.**
```r
#' @description Function that calculates the maximum time after hybridization after which the number of junctions can still be reliably used to estimate the onset of hybridization. This is following equation 15 in Janzen et al. 2018.
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/calculate_MAT.R:6:1:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/calculate_MAT.R#L6) *style:* **Lines should not be more than 80 characters.**
```r
#' @param C Mean number of crossovers per meiosis (e.g. size in Morgan of the chromosome)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/calculate_MAT.R:12:27:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/calculate_MAT.R#L12) *style:* **Variable or function name should be snake_case.**
```r
calculate_mat <- function(N = Inf,
                          ^
```
[R/calculate_MAT.R:13:27:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/calculate_MAT.R#L13) *style:* **Variable or function name should be snake_case.**
```r
                          R = Inf,
                          ^
```
[R/calculate_MAT.R:14:27:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/calculate_MAT.R#L14) *style:* **Variable or function name should be snake_case.**
```r
                          H_0 = 0.5,
                          ^~~
```
[R/calculate_MAT.R:20:3:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/calculate_MAT.R#L20) *style:* **Variable or function name should be snake_case.**
```r
  K <- junctions::calc_k(N, R, H_0, C)
  ^
```
[R/calculate_time.R:1:1:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/calculate_time.R#L1) *style:* **Lines should not be more than 80 characters.**
```r
#' Estimate the time since the onset of hybridization, using the number of junctions
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/calculate_time.R:2:1:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/calculate_time.R#L2) *style:* **Lines should not be more than 80 characters.**
```r
#' @description Estimate the time since the onset of hybridization, following equation 14 in Janzen et al. 2018
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/calculate_time.R:7:1:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/calculate_time.R#L7) *style:* **Lines should not be more than 80 characters.**
```r
#' @param C Mean number of crossovers per meiosis (e.g. size in Morgan of the chromosome)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/calculate_time.R:11:1:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/calculate_time.R#L11) *style:* **Lines should not be more than 80 characters.**
```r
#' estimate_time(J = J, N = 100, R = 1000, H_0 = 0.5, C = 1)  # should be 200 again
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/calculate_time.R:13:27:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/calculate_time.R#L13) *style:* **Variable or function name should be snake_case.**
```r
estimate_time <- function(J = NA,
                          ^
```
[R/calculate_time.R:14:27:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/calculate_time.R#L14) *style:* **Variable or function name should be snake_case.**
```r
                          N = Inf,
                          ^
```
[R/calculate_time.R:15:27:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/calculate_time.R#L15) *style:* **Variable or function name should be snake_case.**
```r
                          R = Inf,
                          ^
```
[R/calculate_time.R:16:27:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/calculate_time.R#L16) *style:* **Variable or function name should be snake_case.**
```r
                          H_0 = 0.5,
                          ^~~
```
[R/calculate_time.R:28:3:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/calculate_time.R#L28) *style:* **Variable or function name should be snake_case.**
```r
  K <- junctions::calc_k(N, R, H_0, C)
  ^
```
[R/estimate_time_markers.R:1:1:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/estimate_time_markers.R#L1) *style:* **Lines should not be more than 80 characters.**
```r
#' Estimate the time since the onset of hybridization, using the observed number of junctions, taking into account the distribution of markers
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/estimate_time_markers.R:2:1:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/estimate_time_markers.R#L2) *style:* **Lines should not be more than 80 characters.**
```r
#' @description Estimate the time since the onset of hybridization, following equation 1 in Janzen et al. unpublished
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/estimate_time_markers.R:6:1:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/estimate_time_markers.R#L6) *style:* **Lines should not be more than 80 characters.**
```r
#' @param marker_distribution A vector containing the position of all markers in Morgan.
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/estimate_time_markers.R:7:1:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/estimate_time_markers.R#L7) *style:* **Lines should not be more than 80 characters.**
```r
#' @param lower_lim lower limit of the optimization algorithm. Increase if the expected admixture time is relatively ancient
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/estimate_time_markers.R:8:1:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/estimate_time_markers.R#L8) *style:* **Lines should not be more than 80 characters.**
```r
#' @param upper_lim upper limit of hte optimization algorithm. If set too large, recent admixture events can be overlooked - best to set as low as possible.
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/estimate_time_markers.R:12:1:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/estimate_time_markers.R#L12) *style:* **Lines should not be more than 80 characters.**
```r
#' J <- number_of_junctions_markers(N = 100, H_0 = 0.5, t = 200, marker_distribution = markers)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/estimate_time_markers.R:18:35:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/estimate_time_markers.R#L18) *style:* **Variable or function name should be snake_case.**
```r
estimate_time_markers <- function(J = NA,
                                  ^
```
[R/estimate_time_markers.R:19:35:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/estimate_time_markers.R#L19) *style:* **Variable or function name should be snake_case.**
```r
                                  N = Inf,
                                  ^
```
[R/estimate_time_markers.R:20:35:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/estimate_time_markers.R#L20) *style:* **Variable or function name should be snake_case.**
```r
                                  H_0 = 0.5,
                                  ^~~
```
[R/estimate_time_markers.R:34:71:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/estimate_time_markers.R#L34) *style:* **Do not place spaces around code in parentheses or square brackets.**
```r
  fitted <- stats::optimize(to_fit, interval = c(lower_lim, upper_lim) )
                                                                      ^
```
[R/estimate_time_phased.R:2:57:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/estimate_time_phased.R#L2) *style:* **Variable or function name should be snake_case.**
```r
get_prob_from_matrix_phased <- function(left, right, p, P) {
                                                        ^
```
[R/estimate_time_phased.R:108:19:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/estimate_time_phased.R#L108) *warning:* **no visible global function definition for ‘single_state’**
```r
  seven_states <- single_state(local_time, N = pop_size, d = di)
                  ^~~~~~~~~~~~
```
[R/estimate_time_phased.R:135:23:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/estimate_time_phased.R#L135) *style:* **Do not place spaces around code in parentheses or square brackets.**
```r
    final_prob <- log( rel_prob )
                      ^
```
[R/estimate_time_phased.R:135:32:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/estimate_time_phased.R#L135) *style:* **Do not place spaces around code in parentheses or square brackets.**
```r
    final_prob <- log( rel_prob )
                               ^
```
[R/estimate_time_phased.R:138:10:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/estimate_time_phased.R#L138) *style:* **Do not place spaces around code in parentheses or square brackets.**
```r
  return( log(focal_prob))
         ^
```
[R/estimate_time_phased.R:142:1:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/estimate_time_phased.R#L142) *style:* **Lines should not be more than 80 characters.**
```r
#' @description Calculates the time since admixture, given unphased ancestry data.
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/estimate_time_phased.R:143:1:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/estimate_time_phased.R#L143) *style:* **Lines should not be more than 80 characters.**
```r
#' @param local_anc_matrix Local_anc can be provided as either matrix with two columns, where the first column represents ancestry on chromosome 1, and the second column represents ancestry on chromosome 2. Ancestry labels used should be [0, 1], where 0 indicates the first ancestor, and 1 indicates the second ancestor. Alternatively, the user can provide a vector using labels indicating whether at the specific marker, the focal individual is homozygous for the first ancestor (label = 1), homozygous for the second ancestor (label = 2), heterozygous [0,1] (label = 3) or heterozygous [1, 0] (label = 4).
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/estimate_time_phased.R:147:1:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/estimate_time_phased.R#L147) *style:* **Lines should not be more than 80 characters.**
```r
#' @param lower_lim lower limit of the optimization algorithm. Increase if the expected admixture time is relatively ancient
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/estimate_time_phased.R:148:1:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/estimate_time_phased.R#L148) *style:* **Lines should not be more than 80 characters.**
```r
#' @param upper_lim upper limit of hte optimization algorithm. If set too large, recent admixture events can be overlooked - best to set as low as possible.
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/estimate_time_phased.R:149:1:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/estimate_time_phased.R#L149) *style:* **Lines should not be more than 80 characters.**
```r
#' @param optim_pop_size If TRUE, population size is also optimized. Starting point of the optimizaton will then be on the given population size, and half the maximum time.
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/estimate_time_phased.R:184:11:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/estimate_time_phased.R#L184) *style:* **Do not place spaces around code in parentheses or square brackets.**
```r
  if (sum( labels %in% 1:4) != length(labels)) {
          ^
```
[R/estimate_time_phased.R:191:58:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/estimate_time_phased.R#L191) *style:* **Do not place spaces around code in parentheses or square brackets.**
```r
                      local_anc[2:length(local_anc)]      )
                                                         ^
```
[R/estimate_time_unphased.R:2:50:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/estimate_time_unphased.R#L2) *style:* **Variable or function name should be snake_case.**
```r
get_prob_from_matrix <- function(left, right, p, P) {
                                                 ^
```
[R/estimate_time_unphased.R:12:24:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/estimate_time_unphased.R#L12) *style:* **Do not place spaces around code in parentheses or square brackets.**
```r
    prob <- (p ^ 2) * ( P[1] + P[4] + P[7] ) +
                       ^
```
[R/estimate_time_unphased.R:12:43:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/estimate_time_unphased.R#L12) *style:* **Do not place spaces around code in parentheses or square brackets.**
```r
    prob <- (p ^ 2) * ( P[1] + P[4] + P[7] ) +
                                          ^
```
[R/estimate_time_unphased.R:18:22:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/estimate_time_unphased.R#L18) *style:* **Do not place spaces around code in parentheses or square brackets.**
```r
    prob <- p * q * ( p * q * P[3] +
                     ^
```
[R/estimate_time_unphased.R:35:24:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/estimate_time_unphased.R#L35) *style:* **Do not place spaces around code in parentheses or square brackets.**
```r
    prob <- (q ^ 2) * ( P[1] + P[4] + P[7]) +
                       ^
```
[R/estimate_time_unphased.R:88:19:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/estimate_time_unphased.R#L88) *warning:* **no visible global function definition for ‘single_state’**
```r
  seven_states <- single_state(local_time, N = pop_size, d = di)
                  ^~~~~~~~~~~~
```
[R/estimate_time_unphased.R:115:23:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/estimate_time_unphased.R#L115) *style:* **Do not place spaces around code in parentheses or square brackets.**
```r
    final_prob <- log( rel_prob )
                      ^
```
[R/estimate_time_unphased.R:115:32:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/estimate_time_unphased.R#L115) *style:* **Do not place spaces around code in parentheses or square brackets.**
```r
    final_prob <- log( rel_prob )
                               ^
```
[R/estimate_time_unphased.R:118:12:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/estimate_time_unphased.R#L118) *style:* **Do not place spaces around code in parentheses or square brackets.**
```r
    return( log(focal_prob))
           ^
```
[R/estimate_time_unphased.R:175:11:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/estimate_time_unphased.R#L175) *style:* **Do not place spaces around code in parentheses or square brackets.**
```r
  if (sum( labels %in% 1:3) != length(labels)) {
          ^
```
[R/estimate_time_unphased.R:182:58:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/estimate_time_unphased.R#L182) *style:* **Do not place spaces around code in parentheses or square brackets.**
```r
                      local_anc[2:length(local_anc)]      )
                                                         ^
```
[R/number_of_junctions_backcross.R:2:1:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/number_of_junctions_backcross.R#L2) *style:* **Lines should not be more than 80 characters.**
```r
#' @description Calculate the expected number of junctions after t generations, in a backcrossing mating scheme.
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/number_of_junctions_backcross.R:4:1:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/number_of_junctions_backcross.R#L4) *style:* **Lines should not be more than 80 characters.**
```r
#' @param C Mean number of crossovers per meiosis (e.g. size in Morgan of the chromosome)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/number_of_junctions_backcross.R:10:43:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/number_of_junctions_backcross.R#L10) *style:* **Variable or function name should be snake_case.**
```r
number_of_junctions_backcross <- function(H_0 = 0.5,
                                          ^~~
```
[R/number_of_junctions_di.R:2:1:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/number_of_junctions_di.R#L2) *style:* **Lines should not be more than 80 characters.**
```r
#' Calculate the expected number of junctions between two markers separated by a given amount of recombination
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/number_of_junctions_di.R:3:1:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/number_of_junctions_di.R#L3) *style:* **Lines should not be more than 80 characters.**
```r
#' @description Calculate the expected number of junctions after t generations, provided information on the initial heterozygosity, population size, the number of generations since the onset of admixture and the distance between two markers.
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/number_of_junctions_di.R:12:36:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/number_of_junctions_di.R#L12) *style:* **Variable or function name should be snake_case.**
```r
number_of_junctions_di <- function(N = Inf,
                                   ^
```
[R/number_of_junctions_di.R:13:36:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/number_of_junctions_di.R#L13) *style:* **Variable or function name should be snake_case.**
```r
                                   H_0 = 0.5,
                                   ^~~
```
[R/number_of_junctions_markers.R:1:1:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/number_of_junctions_markers.R#L1) *style:* **Lines should not be more than 80 characters.**
```r
#' Calculate the expected total number of junctions in a chromosome, given the distribution of markers
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/number_of_junctions_markers.R:2:1:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/number_of_junctions_markers.R#L2) *style:* **Lines should not be more than 80 characters.**
```r
#' @description Calculate the expected number of junctions after t generations, provided information on the initial heterozygosity, population size, the number of generations since the onset of admixture and the distribution of markers.
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/number_of_junctions_markers.R:6:1:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/number_of_junctions_markers.R#L6) *style:* **Lines should not be more than 80 characters.**
```r
#' @param marker_distribution A vector containing the position of all markers in Morgan.
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/number_of_junctions_markers.R:20:41:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/number_of_junctions_markers.R#L20) *style:* **Variable or function name should be snake_case.**
```r
number_of_junctions_markers <- function(N = Inf,
                                        ^
```
[R/number_of_junctions_markers.R:21:41:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/number_of_junctions_markers.R#L21) *style:* **Variable or function name should be snake_case.**
```r
                                        H_0 = 0.5,
                                        ^~~
```
[R/number_of_junctions_markers.R:32:27:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/number_of_junctions_markers.R#L32) *warning:* **no visible global function definition for ‘number_of_junctions_di’**
```r
    expected_junctions <- number_of_junctions_di(N, H_0, t, di)
                          ^~~~~~~~~~~~~~~~~~~~~~
```
[R/number_of_junctions.R:2:1:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/number_of_junctions.R#L2) *style:* **Lines should not be more than 80 characters.**
```r
#' @description Calculate the average number of junctions after t generations, provided information on the initial heterozygosity, population size and the number of generations.
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/number_of_junctions.R:6:1:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/number_of_junctions.R#L6) *style:* **Lines should not be more than 80 characters.**
```r
#' @param C Mean number of crossovers per meiosis (e.g. size in Morgan of the chromosome)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/number_of_junctions.R:13:33:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/number_of_junctions.R#L13) *style:* **Variable or function name should be snake_case.**
```r
number_of_junctions <- function(N = Inf,
                                ^
```
[R/number_of_junctions.R:14:33:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/number_of_junctions.R#L14) *style:* **Variable or function name should be snake_case.**
```r
                                R = Inf,
                                ^
```
[R/number_of_junctions.R:15:33:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/number_of_junctions.R#L15) *style:* **Variable or function name should be snake_case.**
```r
                                H_0 = 0.5,
                                ^~~
```
[R/number_of_junctions.R:28:3:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/number_of_junctions.R#L28) *style:* **Variable or function name should be snake_case.**
```r
  K <- junctions::calc_k(N, R, H_0, C)
  ^
```
[R/optim_limits.R:5:1:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/optim_limits.R#L5) *style:* **Lines should not be more than 80 characters.**
```r
#' @param calc_func function to calculate the time, should accept two arguments: upper, lower and should return a stats::optimize object with two properties: $minimum and $objective
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/optim_limits.R:6:1:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/optim_limits.R#L6) *style:* **Lines should not be more than 80 characters.**
```r
#' @param iterations number of times the boundaries should be adjusted to obtain an estimate that is not close to the boundaries. After this number of iterations is exceeded, NA is returned
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/phased_log_likelihood.R:2:1:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/phased_log_likelihood.R#L2) *style:* **Lines should not be more than 80 characters.**
```r
#' @description Calculates the log likelihood of observing the phased data, given the population size, initial heterozygosity and time since admixture
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/phased_log_likelihood.R:3:1:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/phased_log_likelihood.R#L3) *style:* **Lines should not be more than 80 characters.**
```r
#' @param local_anc_matrix Local_anc can be provided as either matrix with two columns, where the first column represents ancestry on chromosome 1, and the second column represents ancestry on chromosome 2. Ancestry labels used should be [0, 1], where 0 indicates the first ancestor, and 1 indicates the second ancestor. Alternatively, the user can provide a vector indicating whether at the specific marker, the focal individual is homozygous for the first ancestor (0), homozygous for the second ancestor (1) or heterozygous (2).
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/phased_log_likelihood.R:38:11:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/phased_log_likelihood.R#L38) *style:* **Do not place spaces around code in parentheses or square brackets.**
```r
  if (sum( labels %in% 1:4) != length(labels)) {
          ^
```
[R/phased_log_likelihood.R:45:58:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/phased_log_likelihood.R#L45) *style:* **Do not place spaces around code in parentheses or square brackets.**
```r
                      local_anc[2:length(local_anc)]      )
                                                         ^
```
[R/sim_backcrossing.R:7:1:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/sim_backcrossing.R#L7) *style:* **Lines should not be more than 80 characters.**
```r
#' @param size_in_morgan Mean number of crossovers per meiosis (e.g. size in Morgan of the chromosome)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/sim_backcrossing.R:11:1:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/sim_backcrossing.R#L11) *style:* **Lines should not be more than 80 characters.**
```r
#' recorded to be returned at the end of the simulation. If left at -1, ancestry is recorded at every generation (computationally heavy).
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/sim_backcrossing.R:12:1:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/sim_backcrossing.R#L12) *style:* **Lines should not be more than 80 characters.**
```r
#' @return List with five entries: average_junctions: average number of junctions over time, detected_junctions: average number of detected junctions, given the markers. markers: vector with the locations of the molecular markers, junction_distribution: distribution of junctions per time step average_heterozygosity: average heterozygosity.
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/sim_fin_chrom.R:2:1:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/sim_fin_chrom.R#L2) *style:* **Lines should not be more than 80 characters.**
```r
#' @description Individual based simulation of the accumulation of junctions for a chromosome with regularly distributed markers.
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/sim_fin_chrom.R:5:1:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/sim_fin_chrom.R#L5) *style:* **Lines should not be more than 80 characters.**
```r
#' @param morgan Mean number of crossovers per meiosis (e.g. size in Morgan of the chromosome)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/sim_fin_chrom.R:9:1:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/sim_fin_chrom.R#L9) *style:* **Lines should not be more than 80 characters.**
```r
#' @return \item{avgJunctions}{vector of the average number of junctions at time = [0, total_runtime]}
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/sim_fin_chrom.R:17:27:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/sim_fin_chrom.R#L17) *style:* **Remove spaces before the left parenthesis in a function call.**
```r
sim_fin_chrom <- function (pop_size = 100,
                          ^
```
[R/sim_fin_chrom.R:22:28:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/sim_fin_chrom.R#L22) *style:* **Variable or function name should be snake_case.**
```r
                           R = 100) {
                           ^
```
[R/sim_inf_chrom.R:2:1:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/sim_inf_chrom.R#L2) *style:* **Lines should not be more than 80 characters.**
```r
#' @description Individual based simulation of the accumulation of junctions for a chromosome with an infinite number of recombination sites.
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/sim_inf_chrom.R:6:1:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/sim_inf_chrom.R#L6) *style:* **Lines should not be more than 80 characters.**
```r
#' @param morgan Mean number of crossovers per meiosis (e.g. size in Morgan of the chromosome)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/sim_inf_chrom.R:7:1:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/sim_inf_chrom.R#L7) *style:* **Lines should not be more than 80 characters.**
```r
#' @param markers The number of genetic markers superimposed on the chromosome. If markers is set to -1, no markers are superimposed (faster simulation)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/sim_inf_chrom.R:9:1:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/sim_inf_chrom.R#L9) *style:* **Lines should not be more than 80 characters.**
```r
#' @return \item{avgJunctions}{vector of the average number of junctions at time = [0, total_runtime]}
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/sim_phased_unphased.R:2:1:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/sim_phased_unphased.R#L2) *style:* **Lines should not be more than 80 characters.**
```r
#' @description Individual based simulation of the accumulation of junctions, returning phased and unphased data. Ancestry on both chromosomes of 10 randomly sampled individuals per generations is returned.
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/sim_phased_unphased.R:6:1:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/sim_phased_unphased.R#L6) *style:* **Lines should not be more than 80 characters.**
```r
#' @param size_in_morgan Mean number of crossovers per meiosis (e.g. size in Morgan of the chromosome)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/sim_phased_unphased.R:7:1:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/sim_phased_unphased.R#L7) *style:* **Lines should not be more than 80 characters.**
```r
#' @param number_of_markers The number of genetic markers superimposed on the chromosome.
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/sim_phased_unphased.R:8:1:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/sim_phased_unphased.R#L8) *style:* **Lines should not be more than 80 characters.**
```r
#' @param time_points vector with time points at which local ancestry has to be recorded to be returned at the end of the simulation. If left at -1, ancestry is recorded at every generation (computationally heavy).
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/sim_phased_unphased.R:11:1:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/sim_phased_unphased.R#L11) *style:* **Lines should not be more than 80 characters.**
```r
#' @return a tibble with five columns: [time, individual, marker location, ancestry chromosome 1, ancestry chromosome 2]
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/unphased_log_likelihood.R:2:1:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/unphased_log_likelihood.R#L2) *style:* **Lines should not be more than 80 characters.**
```r
#' @description Calculates the log likelihood of observing the unphased data, given the population size, initial heterozygosity and time since admixture
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/unphased_log_likelihood.R:3:1:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/unphased_log_likelihood.R#L3) *style:* **Lines should not be more than 80 characters.**
```r
#' @param local_anc_matrix Local_anc can be provided as either matrix with two columns, where the first column represents ancestry on chromosome 1, and the second column represents ancestry on chromosome 2. Ancestry labels used should be [0, 1], where 0 indicates the first ancestor, and 1 indicates the second ancestor. Alternatively, the user can provide a vector indicating whether at the specific marker, the focal individual is homozygous for the first ancestor (0), homozygous for the second ancestor (1) or heterozygous (2).
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/unphased_log_likelihood.R:34:11:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/unphased_log_likelihood.R#L34) *style:* **Do not place spaces around code in parentheses or square brackets.**
```r
  if (sum( labels %in% 1:3) != length(labels)) {
          ^
```
[R/unphased_log_likelihood.R:41:58:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/unphased_log_likelihood.R#L41) *style:* **Do not place spaces around code in parentheses or square brackets.**
```r
                      local_anc[2:length(local_anc)]      )
                                                         ^
```
[R/util.R:22:10:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/util.R#L22) *style:* **Do not place spaces around code in parentheses or square brackets.**
```r
  return( get_states_vector(local_anc))
         ^
```
[R/util.R:22:11:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/util.R#L22) *warning:* **no visible global function definition for ‘get_states_vector’**
```r
  return( get_states_vector(local_anc))
          ^~~~~~~~~~~~~~~~~
```
[R/util.R:56:42:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/util.R#L56) *style:* **Do not place spaces around code in parentheses or square brackets.**
```r
                    (local_anc_matrix[, 1 ] == local_anc_matrix[, 2]))
                                         ^
```
[R/util.R:108:1:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/util.R#L108) *style:* **Variable or function name should be snake_case.**
```r
get_expectation_O_state <- function(P, p, focal_state) {
^~~~~~~~~~~~~~~~~~~~~~~
```
[R/util.R:108:37:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/util.R#L108) *style:* **Variable or function name should be snake_case.**
```r
get_expectation_O_state <- function(P, p, focal_state) {
                                    ^
```
[R/util.R:116:49:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/util.R#L116) *style:* **Do not place spaces around code in parentheses or square brackets.**
```r
  if (focal_state == 3) cond_prob <- (q ^ 2) * ( P[1] + P[4] + P[7]) +
                                                ^
```
[R/util.R:122:49:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/util.R#L122) *style:* **Do not place spaces around code in parentheses or square brackets.**
```r
  if (focal_state == 4) cond_prob <- (p ^ 2) * ( P[1] + P[4] + P[7]) +
                                                ^
```
[R/util.R:146:1:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/util.R#L146) *style:* **Variable or function name should be snake_case.**
```r
get_expectation_O_state_phased <- function(P, p, focal_state) {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/util.R:146:44:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/util.R#L146) *style:* **Variable or function name should be snake_case.**
```r
get_expectation_O_state_phased <- function(P, p, focal_state) {
                                           ^
```
[R/util.R:151:18:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/R/util.R#L151) *warning:* **no visible global function definition for ‘get_expectation_O_state’**
```r
    cond_prob <- get_expectation_O_state(P, p, focal_state)
                 ^~~~~~~~~~~~~~~~~~~~~~~
```
[tests/testthat/test-equations.R:11:3:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/tests/testthat/test-equations.R#L11) *style:* **Variable or function name should be snake_case.**
```r
  A <- is.infinite(v3)
  ^
```
[tests/testthat/test-equations.R:18:3:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/tests/testthat/test-equations.R#L18) *style:* **Variable or function name should be snake_case.**
```r
  J <- junctions::number_of_junctions(N = 100, R = 1000,
  ^
```
[tests/testthat/test-marker_dist.R:4:3:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/tests/testthat/test-marker_dist.R#L4) *style:* **Variable or function name should be snake_case.**
```r
  R <- 1000
  ^
```
[tests/testthat/test-marker_dist.R:16:3:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/tests/testthat/test-marker_dist.R#L16) *style:* **Variable or function name should be snake_case.**
```r
  N <- 1e3
  ^
```
[tests/testthat/test-marker_dist.R:17:3:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/tests/testthat/test-marker_dist.R#L17) *style:* **Variable or function name should be snake_case.**
```r
  R <- 1000
  ^
```
[tests/testthat/test-marker_dist.R:60:3:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/tests/testthat/test-marker_dist.R#L60) *style:* **Variable or function name should be snake_case.**
```r
  N <- 1e3
  ^
```
[tests/testthat/test-marker_dist.R:61:3:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/tests/testthat/test-marker_dist.R#L61) *style:* **Variable or function name should be snake_case.**
```r
  R <- 1000
  ^
```
[tests/testthat/test-sims.R:4:3:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/tests/testthat/test-sims.R#L4) *style:* **Variable or function name should be snake_case.**
```r
  R <- 100 #chromosome size
  ^
```
[tests/testthat/test-sims.R:5:3:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/tests/testthat/test-sims.R#L5) *style:* **Variable or function name should be snake_case.**
```r
  N <- 100 #population size
  ^
```
[tests/testthat/test-sims.R:6:3:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/tests/testthat/test-sims.R#L6) *style:* **Variable or function name should be snake_case.**
```r
  H_0 <- 0.5 #initial heterozygosity
  ^~~
```
[tests/testthat/test-sims.R:29:3:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/tests/testthat/test-sims.R#L29) *style:* **Variable or function name should be snake_case.**
```r
  N <- 50 #population size
  ^
```
[tests/testthat/test-sims.R:30:3:](https://github.com/thijsjanzen/junctions/blob/0f6e260da45978fc0050cef055790f7c11fb7b96/tests/testthat/test-sims.R#L30) *style:* **Variable or function name should be snake_case.**
```r
  H_0 <- 0.5 #initial heterozygosity
  ^~~
```


It seems that this will not work with bash 3 and set -eu. @jsmeix see our discussion in https://github.com/rear/rear/commit/c19647fcd#r32911995 .


seen


also disabled delay for automatic quest accept / turnin since this was requested multiple times


Потёмкин гей


TeamCity Identity and Access Management / Identity - ManagementPortal [Build 454-IDAM-260-Mock-api](https://teamcity.nice.org.uk/viewLog.html?buildId=57423&buildTypeId=IdentityandAccessManagement_BuildRoleManagementPortal) outcome was **FAILURE**
Summary:
       "/etc/teamcity/work/fb824473f3038a96/NICE.Identity.Management.sln" (default target) (1) ->
       (Restore target) ->
         /usr/share/dotnet/sdk/2.2.401/NuGet.targets(123,5): error : Problem starting the plugin '/etc/teamcity/plugins/nuge... Build time: 00:02:22


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

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


ОК!


@JuliaRegistrator register


Hi Tjibbe,
1) I'm not totally sure that doing new_base = base will change anything to the issue you raised, you're essentially just putting the reference in another variable:
`toto = data.table(a = 1:5, b = LETTERS[1:5])`
`toto`
   a b
1: 1 A
2: 2 B
3: 3 C
4: 4 D
5: 5 E
`titi = toto`
`titi[, b := LETTERS[6:10]]`
`toto`
   a b
1: 1 F
2: 2 G
3: 3 H
4: 4 I
5: 5 J
To get the behavior you want (not changing the original input), you would need to do:
`new_base = copy(base)`
2) Considering that the *base* is going to be rather large, I'm not sure it's a good idea to have it copied multiple times. To me _data.table_ working by reference is rather a necessary feature than an issue.

Could you give us the case where it will be an issue ?

Maybe we just need to copy it once at the beginning of the _checkBase_ script, don't you think ?

Best
P


А зачем тут выделять память? Почему просто не заюзать std::string и у него не использовать метод  resize. Т.е мне кажется что если ваш код будет немного монотоней в плане например если вы юзаете std::string то и  используйте везде std::string


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

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

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


ssdsdd


Successfully aliased the URL <https://kstar-6z65dd5ar.now.sh> to the following aliases:

* https://kstar.hanterokun.now.sh
* https://kstar-git-master.hanterokun.now.sh


Sure, I think going as is is fine.


The problem is that there are comments at the beginning of most of the files we check. In that case `head` would be ineffective.


# Specs execution successful
:scroll: [View logs](http://bamboo.comnull)
### Plans updated

Bamboo specs have been successfully imported and the following plans have been updated.

Project | Plan | Build
---|---|---
[Test](http://bamboo.com/browse/TEST) | [Comment test](http://bamboo.com/browse/TEST-CTEST)  | :white_check_mark: [\#1](http://bamboo.com/browse/TEST-CTEST-1)
[New project](http://bamboo.com/browse/NEW) | [Disabled plan](http://bamboo.com/browse/NEW-DISABLED) **disabled** | :white_check_mark: [\#1](http://bamboo.com/browse/NEW-DISABLED-1)

### Deployments updated

Bamboo specs have been successfully imported and the following deployment projects have been updated.

|Deployment project |
----|
[Deployment test](http://bamboo.com/deploy/viewDeploymentProjectVersions.action?id=2162689)|


Successfully aliased the URL <https://web-palvelinohjelmointi-s19-material-qwayr8h1u.now.sh> to the following aliases:

* https://web-palvelinohjelmointi-s19.mooc.fi
* https://web-palvelinohjelmointi-s19-material.mooc.now.sh
* https://web-palvelinohjelmointi-s19-material-git-master.mooc.now.sh


`C://` only works on windows..


develop (Myoldmopar) - Win64-Windows-10-VisualStudio-16: OK (1848 of 1848 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)


[R/calculate_allele_frequencies.R:34:17:](https://github.com/thijsjanzen/GenomeAdmixR/blob/31672b4c6b78209a31cbf25096906caeb3bd8dcb/R/calculate_allele_frequencies.R#L34) *warning:* **no visible global function definition for ‘check_input_pop’**
```r
  source_pop <- check_input_pop(source_pop)
                ^~~~~~~~~~~~~~~
```
[R/calculate_allele_frequencies.R:36:18:](https://github.com/thijsjanzen/GenomeAdmixR/blob/31672b4c6b78209a31cbf25096906caeb3bd8dcb/R/calculate_allele_frequencies.R#L36) *warning:* **no visible global function definition for ‘population_to_vector’**
```r
  pop_for_cpp <- population_to_vector(source_pop)
                 ^~~~~~~~~~~~~~~~~~~~
```
[R/calculate_fst.R:41:11:](https://github.com/thijsjanzen/GenomeAdmixR/blob/31672b4c6b78209a31cbf25096906caeb3bd8dcb/R/calculate_fst.R#L41) *warning:* **no visible global function definition for ‘check_input_pop’**
```r
  pop1 <- check_input_pop(pop1)
          ^~~~~~~~~~~~~~~
```
[R/calculate_fst.R:43:11:](https://github.com/thijsjanzen/GenomeAdmixR/blob/31672b4c6b78209a31cbf25096906caeb3bd8dcb/R/calculate_fst.R#L43) *warning:* **no visible global function definition for ‘check_input_pop’**
```r
  pop2 <- check_input_pop(pop2)
          ^~~~~~~~~~~~~~~
```
[R/calculate_fst.R:72:16:](https://github.com/thijsjanzen/GenomeAdmixR/blob/31672b4c6b78209a31cbf25096906caeb3bd8dcb/R/calculate_fst.R#L72) *warning:* **no visible global function definition for ‘create_random_markers’**
```r
    markers <- create_random_markers(number_of_markers)
               ^~~~~~~~~~~~~~~~~~~~~
```
[R/calculate_fst.R:78:24:](https://github.com/thijsjanzen/GenomeAdmixR/blob/31672b4c6b78209a31cbf25096906caeb3bd8dcb/R/calculate_fst.R#L78) *warning:* **no visible global function definition for ‘findtype’**
```r
      allele_1 <- 10 + findtype(pop1[[i]]$chromosome1, focal_marker)
                       ^~~~~~~~
```
[R/calculate_fst.R:79:24:](https://github.com/thijsjanzen/GenomeAdmixR/blob/31672b4c6b78209a31cbf25096906caeb3bd8dcb/R/calculate_fst.R#L79) *warning:* **no visible global function definition for ‘findtype’**
```r
      allele_2 <- 10 + findtype(pop1[[i]]$chromosome2, focal_marker)
                       ^~~~~~~~
```
[R/calculate_fst.R:85:24:](https://github.com/thijsjanzen/GenomeAdmixR/blob/31672b4c6b78209a31cbf25096906caeb3bd8dcb/R/calculate_fst.R#L85) *warning:* **no visible global function definition for ‘findtype’**
```r
      allele_1 <- 10 + findtype(pop2[[i]]$chromosome1, focal_marker)
                       ^~~~~~~~
```
[R/calculate_fst.R:86:24:](https://github.com/thijsjanzen/GenomeAdmixR/blob/31672b4c6b78209a31cbf25096906caeb3bd8dcb/R/calculate_fst.R#L86) *warning:* **no visible global function definition for ‘findtype’**
```r
      allele_2 <- 10 + findtype(pop2[[i]]$chromosome2, focal_marker)
                       ^~~~~~~~
```
[R/calculate_ld.R:39:10:](https://github.com/thijsjanzen/GenomeAdmixR/blob/31672b4c6b78209a31cbf25096906caeb3bd8dcb/R/calculate_ld.R#L39) *warning:* **no visible global function definition for ‘check_input_pop’**
```r
  pop <- check_input_pop(pop)
         ^~~~~~~~~~~~~~~
```
[R/calculate_ld.R:45:16:](https://github.com/thijsjanzen/GenomeAdmixR/blob/31672b4c6b78209a31cbf25096906caeb3bd8dcb/R/calculate_ld.R#L45) *warning:* **no visible global function definition for ‘create_random_markers’**
```r
    markers <- create_random_markers(number_of_markers)
               ^~~~~~~~~~~~~~~~~~~~~
```
[R/calculate_ld.R:51:23:](https://github.com/thijsjanzen/GenomeAdmixR/blob/31672b4c6b78209a31cbf25096906caeb3bd8dcb/R/calculate_ld.R#L51) *warning:* **no visible global function definition for ‘findtype’**
```r
      allele_1 <- 1 + findtype(pop[[i]]$chromosome1, focal_marker)
                      ^~~~~~~~
```
[R/calculate_ld.R:52:23:](https://github.com/thijsjanzen/GenomeAdmixR/blob/31672b4c6b78209a31cbf25096906caeb3bd8dcb/R/calculate_ld.R#L52) *warning:* **no visible global function definition for ‘findtype’**
```r
      allele_2 <- 1 + findtype(pop[[i]]$chromosome2, focal_marker)
                      ^~~~~~~~
```
[R/calculate_ld.R:73:15:](https://github.com/thijsjanzen/GenomeAdmixR/blob/31672b4c6b78209a31cbf25096906caeb3bd8dcb/R/calculate_ld.R#L73) *warning:* **no visible global function definition for ‘calculate_average_ld’**
```r
        ld <- calculate_average_ld(g1, g2)
              ^~~~~~~~~~~~~~~~~~~~
```
[R/calculate_marker_frequency.R:31:10:](https://github.com/thijsjanzen/GenomeAdmixR/blob/31672b4c6b78209a31cbf25096906caeb3bd8dcb/R/calculate_marker_frequency.R#L31) *warning:* **no visible global function definition for ‘check_input_pop’**
```r
  pop <- check_input_pop(pop)
         ^~~~~~~~~~~~~~~
```
[R/calculate_tajima_d.R:28:10:](https://github.com/thijsjanzen/GenomeAdmixR/blob/31672b4c6b78209a31cbf25096906caeb3bd8dcb/R/calculate_tajima_d.R#L28) *warning:* **no visible global function definition for ‘check_input_pop’**
```r
  pop <- check_input_pop(pop)
         ^~~~~~~~~~~~~~~
```
[R/iso_female.R:44:17:](https://github.com/thijsjanzen/GenomeAdmixR/blob/31672b4c6b78209a31cbf25096906caeb3bd8dcb/R/iso_female.R#L44) *warning:* **no visible global function definition for ‘check_input_pop’**
```r
  source_pop <- check_input_pop(source_pop)
                ^~~~~~~~~~~~~~~
```
[R/junctions.R:25:12:](https://github.com/thijsjanzen/GenomeAdmixR/blob/31672b4c6b78209a31cbf25096906caeb3bd8dcb/R/junctions.R#L25) *warning:* **no visible global function definition for ‘calculate_dist_junctions’**
```r
  junct <- calculate_dist_junctions(pop)
           ^~~~~~~~~~~~~~~~~~~~~~~~
```
[R/simulate_admixture_migration.R:105:29:](https://github.com/thijsjanzen/GenomeAdmixR/blob/31672b4c6b78209a31cbf25096906caeb3bd8dcb/R/simulate_admixture_migration.R#L105) *warning:* **no visible global function definition for ‘population_to_vector’**
```r
      input_population_1 <- population_to_vector(input_population_1)
                            ^~~~~~~~~~~~~~~~~~~~
```
[R/simulate_admixture_migration.R:130:29:](https://github.com/thijsjanzen/GenomeAdmixR/blob/31672b4c6b78209a31cbf25096906caeb3bd8dcb/R/simulate_admixture_migration.R#L130) *warning:* **no visible global function definition for ‘population_to_vector’**
```r
      input_population_2 <- population_to_vector(input_population_2)
                            ^~~~~~~~~~~~~~~~~~~~
```
[R/simulate_admixture_migration.R:202:27:](https://github.com/thijsjanzen/GenomeAdmixR/blob/31672b4c6b78209a31cbf25096906caeb3bd8dcb/R/simulate_admixture_migration.R#L202) *warning:* **no visible global function definition for ‘create_pop_class’**
```r
  selected_popstruct_1 <- create_pop_class(selected_pop$population_1)
                          ^~~~~~~~~~~~~~~~
```
[R/simulate_admixture_migration.R:203:27:](https://github.com/thijsjanzen/GenomeAdmixR/blob/31672b4c6b78209a31cbf25096906caeb3bd8dcb/R/simulate_admixture_migration.R#L203) *warning:* **no visible global function definition for ‘create_pop_class’**
```r
  selected_popstruct_2 <- create_pop_class(selected_pop$population_2)
                          ^~~~~~~~~~~~~~~~
```
[R/simulate_admixture.R:81:27:](https://github.com/thijsjanzen/GenomeAdmixR/blob/31672b4c6b78209a31cbf25096906caeb3bd8dcb/R/simulate_admixture.R#L81) *warning:* **no visible global function definition for ‘population_to_vector’**
```r
      input_population <- population_to_vector(input_population)
                          ^~~~~~~~~~~~~~~~~~~~
```
[R/simulate_admixture.R:142:25:](https://github.com/thijsjanzen/GenomeAdmixR/blob/31672b4c6b78209a31cbf25096906caeb3bd8dcb/R/simulate_admixture.R#L142) *warning:* **no visible global function definition for ‘create_pop_class’**
```r
  selected_popstruct <- create_pop_class(selected_pop$population)
                        ^~~~~~~~~~~~~~~~
```
[R/utilities.R:275:27:](https://github.com/thijsjanzen/GenomeAdmixR/blob/31672b4c6b78209a31cbf25096906caeb3bd8dcb/R/utilities.R#L275) *warning:* **no visible binding for global variable ‘verify_individual’**
```r
  v <- unlist(lapply(pop, verify_individual))
                          ^~~~~~~~~~~~~~~~~
```


ok


From what I understood, comment or not, only the first line should be looked after. @ohm314 might confirm that.


Successfully aliased the URL <https://website-9zr3q6ks8.now.sh> to the following aliases:

* https://website.keplersj.now.sh
* https://website-git-source.keplersj.now.sh


That is not the line i meant in #452
You have to add this line in `luaGlobalEventInterval`
And revert the change you made here


Created multidev environment [aerian-headless-lightning#ci-7](https://dashboard.pantheon.io/sites/9892ec2a-2cd1-4061-8838-1d9f72d611cf#ci-7).

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


 Если есть желание я бы вместо циклов посмотрел бы в сторону методов для std::string
https://ru.cppreference.com/w/cpp/string/basic_string
Ну это так в свободное время. Т.е. идея в том что например для класса std::string используют больше методы вместо циклов


create a button to move to the login page


we use the browser push function of react-router to fores the web page to ('/')
this is the route for the login page.
//this get called in the button on-click method


TeamCity Identity and Access Management / Identity - ManagementPortal [Build 455-IDAM-260-Mock-api](https://teamcity.nice.org.uk/viewLog.html?buildId=57424&buildTypeId=IdentityandAccessManagement_BuildRoleManagementPortal) outcome was **SUCCESS**
Summary: Running Build time: 00:02:46


@ohm314 just confirmed that we can't just check the first line in most of the cases.


Can't one use
```
MISSING_PROGS=()
...
MISSING_PROGS+=( "$f" )
```
?
+= seems to be safe with empty arrays even with bash 3.


Deployment failed with the following error:

~~~
Your `package.json` file is missing a `build` property inside the `script` property.
~~~


There is `1.0.0` release, so probably need to update font files too


TeamCity Identity and Access Management / Identity - ManagementPortal [Build 456-IDAM-260-Mock-api](https://teamcity.nice.org.uk/viewLog.html?buildId=57425&buildTypeId=IdentityandAccessManagement_BuildRoleManagementPortal) outcome was **SUCCESS**
Summary: Running Build time: 00:01:56


looks pretty good


@edisonljh why did it happen?


can you check now?


Hello @kjbracey-arm,
I was not sure about a negative index so I skipped it and did just pointer arithmetic.

None of the compiler threw a warning about the use of the null pointer.
What in my opinion is really bad is that ARMCLANG silently replaces the code with an 'undefined' instruction.
The compiler should give a warning about the 'undefined' instruction.


we use the history lib to move fast between the pages, the history lib uses the api behind the seems


Deployment failed with the following error:

~~~
You defined 1 build that did not match any source files (please ensure they are NOT defined in .nowignore):
~~~


javaPuzzle


no debug?


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

* https://setcookies.wiesson.now.sh
* https://setcookies-git-master.wiesson.now.sh


Вы немного не верно юзаете рандом)

Смотрите вам для рандомайзера надо запустить скажем грубо движок srand, а потом юзать rand но генерирующие некий диапазон
http://www.cplusplus.com/reference/cstdlib/srand/
Прочтите как это правильно надо использовать


what's this option?


ok. never mind


```
array1[i] = array1[i] = random_val;
```


Successfully aliased the URL <https://hw-household-account-book-next-lw4jjbrd1.now.sh> to the following aliases:

* https://hw-household-account-book-next.holywaterj0410.now.sh
* https://hw-household-account-book-next-git-dev.holywaterj0410.now.sh


I would not mind at all, but I guess the simplest would be to at least provide them with an example Python implementation.
The current liblouis implementation regarding plug-able table resolvers is notably mis-designed and should anyhow undergo some refactoring: The client code is responsible for freeing the result of the callback, but the library lacks a way to inform it when to do so.

References:
 - liblouis/liblouis#778
 - liblouis/liblouis#315
 - https://www.freelists.org/post/liblouis-liblouisxml/Potential-memory-leak-around-using-table-resolvers


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

I updated the Github team because of this commit.

- @jacobtomlinson was added to this feedstock maintenance team.

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

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

NOTE: Please make sure to not push to the repository directly.
      Use branches in your fork for any changes and send a PR.
      More details [here](https://conda-forge.org/docs/maintainer/updating_pkgs.html#forking-and-pull-requests)


Тогда не будет подсветки с описанием метода,при наведении на него мышью в IDE же?


just a basic html codes with a title and stylesheet link


Maybe also pass increaseYear and decreaseYear to the render function?


I like `and` :disappointed:


Верно-верно. Уже глянул :)
Сначала написал, а потом подумал насколько же бесполезен тег и загуглил :))

Моя ошибочка.


Me too :(


Preferably minimized to tray. Added to docs.


I've seen the 1.0.0 on maven central but it's actually from another developer. The github repo does not detail which advantages it has over the original one. Should we switch?


Feel free to disable the lint in that case :slightly_smiling_face:


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

* https://dev-blog.dennismorello.now.sh
* https://dev-blog-git-master.dennismorello.now.sh


Successfully aliased the URL <https://setcookies-3ljozfp3x.now.sh> to the following aliases:

* https://setcookies.wiesson.now.sh
* https://setcookies-git-master.wiesson.now.sh


Thanks!


The idea was to encapsulate logging of particular event. So you create `object Analytics` and then method `logAddContestToGoogleCalendarEvent`, which inside deals with all Firebase stuff. In such a way to change analytics tool, you need to change only `Analytics` class.


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

* https://bapa.drepram.now.sh
* https://bapa-git-master.drepram.now.sh


Yes, I don't object to the "optimisation". But doing it without a warning like clang does seems pretty unforgiveable.

I guess the point is that sometimes that optimisation will be done in a dead code path, and part of the point of the optimisation is to eliminate dead code (with the reasoning that any path that goes through the dereference must be dead, because to execute it would be undefined behaviour).

But in this case where it can definitely see that you have a path from function entry through such a dead/undefined block, it should warn, just as it does with accesses to uninitialised variables. I don't see any inherent reason why it should have more false positives than those sorts of checks.


Created multidev environment [aerian-headless-lightning#ci-10](https://dashboard.pantheon.io/sites/9892ec2a-2cd1-4061-8838-1d9f72d611cf#ci-10).

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


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

* https://blog.541832074.now.sh
* https://blog-git-master.541832074.now.sh


IBM Cloud [toolchain](https://cloud.ibm.com/devops/toolchains/6a2ad1ef-9147-4d89-9c28-12cb8886679e?env_id=ibm%3Ayp%3Aeu-de "cloud-native-toolchain-tutorial-20190509142331404"): [Delivery Pipeline](https://cloud.ibm.com/devops/pipelines/aad33168-3beb-4422-bd8c-6baf2f3a3b93 "sample-cloud-native-toolchain-tutorial-20190509142331404") deployed [sample-cloud-native-toolchain-tutorial-20190509142331404](https://github.com/ejodet/sample-cloud-native-toolchain-tutorial-20190509142331404/releases/tag/deploy-ibm-yp-eu-de-TEST_FRA-TEST-20190822-123716 "deploy-ibm-yp-eu-de-TEST_FRA-TEST-20190822-123716") to [TEST](https://console.bluemix.net/apps/418ba87d-7081-44f1-a9d1-df4b871edb1f?env_id=ibm:yp:eu-de "ibm:yp:eu-de:TEST_FRA:TEST"), including this commit


Successfully aliased the URL <https://hw-household-account-book-next-adqmcn3bd.now.sh> to the following aliases:

* https://hw-household-account-book-next.holywaterj0410.now.sh
* https://hw-household-account-book-next-git-dev.holywaterj0410.now.sh


Hi Pascal,

First of all, I agree that copying the whole database is not desirable, so
we might stick with the standard "base".

The issue came up when I ran the script twice on the same data base. The
second time it gave an error (due to the date being formatted as date_time,
not date... I fixed this first). The input the first time thus changed,
although I didn't assign the return value to anything (just had a printout
of the results).

This might form an issue when people run the script, it stops to give them
directions on input, they re-run it, and it comes up with another issue
because the input actually changed.

if I run the previous version (without my introduced new_base), I get the
following behaviour:

########################################
> str(countryData)
Classes ‘data.table’ and 'data.frame': 15 obs. of  4 variables:
 $ PatientID : chr  "P1" "P1" "P2" "P2" ...
 $ HospitalID: chr  "H1" "H2" "H1" "H2" ...
 $ Admission : Factor w/ 15 levels "02-04-2018","02-05-2018",..: 3 9 4 11 5
7 13 1 6 10 ...
 $ Discharge : Factor w/ 15 levels "09-03-2018","10-01-2018",..: 3 2 4 10
11 1 5 12 8 6 ...
 - attr(*, ".internal.selfref")=<externalptr>
> countryData2<-checkDates(countryData,
+            deleteMissing = "patient",
+            deleteErrors = "patient",
+            convertDates = TRUE,
+            dateFormat = "%d-%m-%y",
+            patientID = "PatientID",
+            hospitalID = "HospitalID",
+            disDate = "Discharge",
+            admDate = "Admission",
+            verbose = FALSE)
> str(countryData)
Classes ‘data.table’ and 'data.frame': 15 obs. of  4 variables:
 $ PatientID : chr  "P1" "P1" "P2" "P2" ...
 $ HospitalID: chr  "H1" "H2" "H1" "H2" ...
 $ Admission : Date, format: "2018-01-05" "2018-01-08" "2018-02-05"
"2018-02-10" ...
 $ Discharge : Date, format: "2018-01-15" "2018-01-10" "2018-02-15"
"2018-02-20" ...
 - attr(*, ".internal.selfref")=<externalptr>
>
########################################

Note the change in Admission and Discharge in countryData, while result was
assigned to countryData2.

However, I am happy to revert to the previous version. Although now I'm a
bit puzzled why the other version doesn't give the same result, when all I
do is copy the reference.

Op do 22 aug. 2019 om 14:09 schreef PascalCrepey <notifications@github.com>:

> Hi Tjibbe,
>
>    1. I'm not totally sure that doing new_base = base will change
>    anything to the issue you raised, you're essentially just putting the
>    reference in another variable:
>    toto = data.table(a = 1:5, b = LETTERS[1:5])
>    toto
>    a b
>    1: 1 A
>    2: 2 B
>    3: 3 C
>    4: 4 D
>    5: 5 E
>    titi = toto
>    titi[, b := LETTERS[6:10]]
>    toto
>    a b
>    1: 1 F
>    2: 2 G
>    3: 3 H
>    4: 4 I
>    5: 5 J
>    To get the behavior you want (not changing the original input), you
>    would need to do:
>    new_base = copy(base)
>    2. Considering that the *base* is going to be rather large, I'm not
>    sure it's a good idea to have it copied multiple times. To me
>    *data.table* working by reference is rather a necessary feature than
>    an issue.
>
> Could you give us the case where it will be an issue ?
>
> Maybe we just need to copy it once at the beginning of the *checkBase*
> script, don't you think ?
>
> Best
> P
>
> —
> You are receiving this because you authored the thread.
> Reply to this email directly, view it on GitHub
> <https://github.com/PascalCrepey/HospitalNetwork/commit/a2d6aa7fdd04f4523194237d01898129488c8c39?email_source=notifications&email_token=AMUT65YUUSW5YI6JSM44ZELQFZ6WBA5CNFSM4IOUHVRKYY3PNVWWK3TUL52HS4DFVVBW63LNNF2EG33NNVSW45FKMNXW23LFNZ2F62LEZYBBFYZM#commitcomment-34792236>,
> or mute the thread
> <https://github.com/notifications/unsubscribe-auth/AMUT652GKRN2VWZGEEAAVFLQFZ6WBANCNFSM4IOUHVRA>
> .
>


I am pretty sure that there is a reason for this, please add it to the commit message


please delete the veteran repository


Now could not deploy this pull request since it contains the following references to invalid secrets in the `env` sections of the `now.json` file:

* `MDINER_MONGO_CONNECTION_STRING` (in env: `MDINER_MONGO_CONNECTION_STRING)`

Add those secrets or remove them from the `env` maps in the `now.json` file.


ATÉ AGORA N ENTENDI


Successfully aliased the URL <https://hw-household-account-book-next-o7nkbxt3i.now.sh> to the following aliases:

* https://hw-household-account-book-next.holywaterj0410.now.sh
* https://hw-household-account-book-next-git-dev.holywaterj0410.now.sh


awwww, shucks! You're too kind :D


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

* https://oneapi.now.sh
* https://oneapi.bazzite-opensource.now.sh
* https://oneapi-git-develop.bazzite-opensource.now.sh


Gutten Tag


fix: https://github.com/SSSD/sssd/pull/872


wow


oh yea, didn't pay attention to that. checked it both and seems 0.0.8 is bit more active


Close #72


Looks good


Do you mean to integrate the table definitions into the add-on manifest ?
Do-able, but not that easy considering the current structure of the add-on template.
Furthermore, not to loose sight of the scratchpad directory use case, one should be able to provide such definitions _on their own_, with no code nor inclusion within an existing manifest.


do not need it with the current .R code.


Checkmarx scan results 22 Aug 2019 15:51 UTC +03:00

High
Medium
Low
Info

New
0
0
0
0

Recurrent
0
0
0
0

Fixed
0
0
0
0

 Open Viewer
Included commits

Commit ID	Owner

1e71c4b085217e0cab2013734fb62a6c80309419	@web-flow


renders the stat to the screen instead of a prop


constructor run when app runs, allow the passing in of props
used to set the state


![prop state](https://user-images.githubusercontent.com/54173222/63516026-72459700-c4ec-11e9-8db2-ed338b7b3baa.PNG)


Thanks a lot! Hours wasted yesterday trying to connect. With this update it works like a charm. :-)


added profile image


This line 140 will throw NullPointerException because line 134 "axwayUserClient.getUser(email)" will return null for new users.


Ah, thanks. That field was just copied from OBSE's own class definition; I'll have it updated in the next commit.

Sounds quite similar to OBND and the Recalc Bounds tool in Skyrim's Creation Kit, though that uses an axis-aligned bounding box. Interesting.


- the props get passed into the react component that renders it to the screen.
- React comp cant change props
- but it can change stats working upon user interaction.


Please avoid commented code


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

* https://weatherapp.sergeyromanovsky.now.sh
* https://weatherapp-git-master.sergeyromanovsky.now.sh


「發現上面和下面都有attributes，就猜測是上方先被搜尋到，若沒有上面，就會跑去找下面的」，之後 debug 要多注意上下有沒有重複名詞的問題。


Зачем?

чем не подошел this.dateService.getDate().toISOString() ?


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

# Test results

<details>
<summary>12 tests failed, 101 tests passed.</summary>

## Failed tests

 * mscorlib/tvOS - device/Debug: Failed
 * monotouch-test/tvOS - device/Debug (interpreter): Failed
 * monotouch-test/tvOS - device/Debug (interpreter -mscorlib): Failed
 * monotouch-test/tvOS - device/Release (interpreter -mscorlib): Failed
 * mscorlib/tvOS - device/AssemblyBuildTarget: dylib (debug): TimedOut
 * mscorlib/tvOS - device/AssemblyBuildTarget: SDK framework (debug): Failed
 * mscorlib/tvOS - device/AssemblyBuildTarget: dylib (debug, profiling): Failed
 * mscorlib/tvOS - device/AssemblyBuildTarget: SDK framework (debug, profiling): Failed
 * mscorlib/tvOS - device/Release: Failed (MT1032: This application executable might be too large (976 MB) to execute on device. If bitcode was enabled you might want to disable it for development, it is only required to submit applications to Apple.)
 * mscorlib/tvOS - device/AssemblyBuildTarget: SDK framework (release): Failed (MT1032: This application executable might be too large (554 MB) to execute on device. If bitcode was enabled you might want to disable it for development, it is only required to submit applications to Apple.)
 * mscorlib/tvOS - device/Debug: SGenConc: TimedOut
 * [xUnit] Mono BCL tests group 6/tvOS - device/AssemblyBuildTarget: dylib (debug): TimedOut
</details>


'enter' repeated multiple time. const would be better.


Successfully aliased the URL <https://marver-api-database-2yr06czfj.now.sh> to the following aliases:

* https://marver-api-database.helloeva.now.sh
* https://marver-api-database-git-master.helloeva.now.sh


вчера пришли к соглашению избавлятся от new Date()
что изменилось?


Are we using fixtures?


Deployment failed with the following error:

~~~
Your `package.json` file is missing a `build` property inside the `script` property.
~~~


Empty test file!


Done: https://issues.jboss.org/browse/KEYCLOAK-11171


Why do we need the `setTimeout`s?


写的不错，nice！！


It also breaks when doing a new fresh install:

`helm install --name velero --namespace velero -f values.yaml stable/velero --version 2.1.2 --timeout 300 --wait --debug`

```
[debug] Created tunnel using local port: '54794'

[debug] SERVER: "127.0.0.1:54794"

[debug] Original chart version: "2.1.2"
[debug] Fetched stable/velero to /Users/liviudm/.helm/cache/archive/velero-2.1.2.tgz

[debug] CHART PATH: /Users/liviudm/.helm/cache/archive/velero-2.1.2.tgz

Error: release velero failed: Deployment.apps "velero" is invalid: [spec.template.spec.containers[0].volumeMounts[1].name: Not found: "VELERO_NAMESPACE", spec.template.spec.containers[0].volumeMounts[1].mountPath: Required value]
````


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

* https://7ty.tech
* https://seventy.planetoftheweb.now.sh
* https://seventy-git-master.planetoftheweb.now.sh