Skip to content

Commit

Permalink
Merge pull request #14 from e-kotov/update-vignettes
Browse files Browse the repository at this point in the history
fix headings
  • Loading branch information
e-kotov authored Jun 27, 2024
2 parents 2d51899 + d2e2ff8 commit 572c784
Showing 1 changed file with 4 additions and 4 deletions.
8 changes: 4 additions & 4 deletions vignettes/why-rJavaEnv.Rmd
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ ggplot2_dlstats <- readr::read_csv2("data-for-vignettes/ggplot2_dlstats.csv")
cutoff_date <- "2024-05-31"
```

## Overall popularity of Java-dependent R packages
# Overall popularity of Java-dependent R packages

While not as popular as widely known and highly popular `ggplot2` and `data.table` packages, and `rJava`-dependent packages (`r length(unique(rJava_dependants_dlstats_cran$package))` on CRAN and another `r length(unique(rJava_dependants_dlstats_bioc$package))` on Bioconductor) (and consequently, `rJava` itself ) are widely used in the R community (see Fig. \@ref(fig:rJavaPopularity)). The `rJava` [@rjava] itself was downloaded `r rJava_dlstats |> filter(end == cutoff_date) |> pull(downloads) |> comma()` times in `r format(as.Date(cutoff_date), "%B, %Y")`. The total number of downloads for `rJava`-dependant packages was `r rJava_dependants_dlstats_cran |> filter(end == cutoff_date) |> summarise(total = sum(downloads, na.rm = T)) |> pull(total) |> comma()` on CRAN and `r rJava_dependants_dlstats_bioc |> filter(end == cutoff_date) |> summarise(total = sum(Nb_of_downloads, na.rm = T)) |> pull(total) |> comma()` on Bioconductor. To put this into context, `ggplot2` was downloaded `r ggplot2_dlstats |> filter(end == cutoff_date) |> pull(downloads) |> comma()` times and `data.table` was downloaded `r data_table_dlstats |> filter(end == cutoff_date) |> pull(downloads) |> comma()` times in `r format(as.Date(cutoff_date), "%B, %Y")`. So `rJava`-based packages collectively are `r round(ggplot2_dlstats |> filter(end == cutoff_date) |> pull(downloads) / rJava_dependants_dlstats_cran |> filter(end == cutoff_date) |> summarise(total = sum(downloads, na.rm = T)) |> pull(total), 1)` times less popular than `ggplot2`, but they have a noticeable number of users.

Expand Down Expand Up @@ -69,7 +69,7 @@ Note that the analysis above only covers packages that are available on CRAN and
Identifying packages such as `opentripplanner` is more complicated, as they do not have a direct dependency on the `rJava` package. We can assume that there are not as many of them compared to those that depend on `rJava.`


## Individual Java-dependent packages
# Individual Java-dependent packages

If we zoom in to the individual `rJava`-dependent packages, we will see (Fig. \@ref(fig:rJavaDepIndivAll)), that most donwloads are generated by `xlsx` and its "companion" `xlsxjars`.

Expand Down Expand Up @@ -102,10 +102,10 @@ Some other packages:

To summarize, regardless of the Java-dependent R package being used, users consistently encounter issues with having the correct Java runtime installed on their system. Additionally, they may be using various R packages that depend on different Java versions, complicating the management of Java environment variables. This task is particularly challenging for ordinary users who simply want to get their analysis running smoothly and efficiently.

## `rJavaEnv` R package as a solution
# `rJavaEnv` R package as a solution

`rJavaEnv` aims to assist users of all `Java`/`rJava`-dependent packages by providing functions to quickly install the required `Java` version and set environment variables. This ensures that the packages the user plans to use pick up the correct Java version with minimal intervention to the user's system. Compared to manually downloading `Java` from Oracle, Amazon, or another vendor and installing it using the installer, `rJavaEnv` downloads non-installer archives of `Java`, extracts them to a cache folder, and links them in the current project or working directory. This way, `rJavaEnv` does not contaminate the user's machine with unnecessary installations and configurations.

Furthermore, `rJavaEnv` streamlines the process, allowing users to focus on their analysis without worrying about complex `Java` setup issues. By automating these tasks, `rJavaEnv` reduces the potential for errors and ensures a smoother experience for users who need to manage multiple Java-dependent R packages.

## References
# References

0 comments on commit 572c784

Please sign in to comment.