diff --git a/appveyor.yml b/appveyor.yml index ae4dc78..a41524b 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -41,15 +41,6 @@ environment: RTOOLS_VERSION: 33 CRAN: http://cran.rstudio.com - - R_VERSION: 3.1.3 - RTOOLS_VERSION: 32 - CRAN: http://cran.rstudio.com - - - R_VERSION: 3.1.0 - RTOOLS_VERSION: 32 - CRAN: http://cran.rstudio.com - PKGTYPE: source - matrix: fast_finish: true diff --git a/docs/articles/analysis-projects.html b/docs/articles/analysis-projects.html index b42a068..9e5612c 100644 --- a/docs/articles/analysis-projects.html +++ b/docs/articles/analysis-projects.html @@ -78,7 +78,7 @@

Use Case: Project Planning & Stakeholder Updates (Posting & reporting custom plans)

Emily Riederer

-

2019-01-04

+

2019-01-05

Source: vignettes/analysis-projects.Rmd diff --git a/docs/articles/basic-usage.html b/docs/articles/basic-usage.html index bdfab3d..1d88453 100644 --- a/docs/articles/basic-usage.html +++ b/docs/articles/basic-usage.html @@ -78,7 +78,7 @@

Basic GitHub API Interaction

Emily Riederer

-

2019-01-04

+

2019-01-05

Source: vignettes/basic-usage.Rmd diff --git a/docs/articles/building-custom-plans.html b/docs/articles/building-custom-plans.html index c5f8abb..1cfdf75 100644 --- a/docs/articles/building-custom-plans.html +++ b/docs/articles/building-custom-plans.html @@ -5,12 +5,12 @@ -Building Custom Plans and To-Do Lists • ghtrackr +Generating Milestones & Issues from YAML • ghtrackr - + @@ -75,10 +75,10 @@
diff --git a/docs/articles/reporting.html b/docs/articles/reporting.html new file mode 100644 index 0000000..ee6008e --- /dev/null +++ b/docs/articles/reporting.html @@ -0,0 +1,245 @@ + + + + + + + +Reporting with RMarkdown • ghtrackr + + + + + + + + + + + +
+
+ + + +
+
+ + + + +

Communication is a critical part of project planning. For this, ghtrackr provides a family of report functions. These functions translate certain R objects like lists or dataframes into HTML code which will render nicely when knitted to HTML in an RMarkdown document.

+
+

+Plans & To-Do Lists

+

Recall that plans and to-do lists can be written in YAML. For example:

+
- title: Data cleaning and validation
+  description: >
+    We will conduct data quality checks,
+    resolve issues with data quality, and
+    document this process
+  due_on: 2018-12-31T12:59:59Z
+  issue:
+    - title: Define data quality standards
+      body: List out decision rules to check data quality
+      assignees: [emilyriederer]
+      labels: [a, b, c]
+    - title: Assess data quality
+      body: Use assertthat to test decision rules on dataset
+      labels: [low]
+    - title: Resolve data quality issues
+      body: Conduct needed research to resolve any issues
+
+- title: Exploratory data analysis
+  description: >
+    Create basic statistics and views to better
+    understand dataset and relationships
+  issue:
+    - title: Summary statistics
+      body: Calculate summary statistics
+    - title: Visualizations
+      body: Create univariate and bivariate plots
+

The report_plan() function converts plans into formatted HTML for inclusion in RMarkdown documents for more aesthetic reporting.

+
plan <- read_plan(plan_path)
+report_plan(plan)
+

+

+ Data cleaning and validation ( 0 % Complete - 0 / 3 Issues) +

+
    +
  • +☐ Define data quality standards +
  • +
  • +☐ Assess data quality +
  • +
  • +☐ Resolve data quality issues +
  • +
+

+ Exploratory data analysis ( 0 % Complete - 0 / 2 Issues) +

+
    +
  • +☐ Summary statistics +
  • +
  • +☐ Visualizations +
  • +
+

+

The report_todo() function works similarly.

+
+
+

+Issues & Milestones

+

Similarly, any issue-milestone data pulled back down from GitHub can be reported in a similar format with report_progress().

+ +

+ Data cleaning and validation ( 100 % Complete - 3 / 3 Issues) +
    +
  • +☑ Resolve data quality issues +
  • +
  • +☑ Assess data quality +
  • +
  • +☑ Define data quality standards +
  • +
+ Exploratory data analysis ( 50 % Complete - 1 / 2 Issues) +
    +
  • +☐ Visualizations +
  • +
  • +☑ Summary statistics +
  • +
+

+
+
+

+Discussions

+

Additionally, full issues discussions can be pulled from GitHub and reformatted to HTML for long-term documentation with the report_discussion() function.

+
issues <- get_issues(experigit, number = 163) %>% parse_issues()
+comments <- get_issue_comments(experigit, number = 163) %>% parse_issue_comments()
+
report_discussion(comments, issues)
+#> Warning in if (!is.na(issue)) {: the condition has length > 1 and only the
+#> first element will be used
+Issue: #163: A very important issue
Created by emilyriederer on 2018-12-30
Closed on NA
Visit on GitHub +

+Issue Description:
+This is the beginning of a conversation +
+

+

+
+ emilyriederer ( OWNER ) wrote at 2018-12-30 : +

+
+I’m just commenting to add more information. +
+

+

+
+ emilyriederer ( OWNER ) wrote at 2018-12-30 : +

+
+Actually, I disagree. My perspective is this. +
+

+
+
+ + + +
+ + +
+ +
+

Site built with pkgdown.

+
+ +
+
+ + + + + diff --git a/docs/pkgdown.yml b/docs/pkgdown.yml index c1f829a..4d23e83 100644 --- a/docs/pkgdown.yml +++ b/docs/pkgdown.yml @@ -11,6 +11,7 @@ articles: events-data: events-data.html git-github-introduction: git-github-introduction.html github-pat: github-pat.html + reporting: reporting.html reprex-clipr: reprex-clipr.html tracking-KPIs: tracking-KPIs.html visualization: visualization.html diff --git a/docs/reference/tidyeval.html b/docs/reference/tidyeval.html index 9a091ad..21a0267 100644 --- a/docs/reference/tidyeval.html +++ b/docs/reference/tidyeval.html @@ -138,26 +138,26 @@

Tidy eval helpers

    -
  • sym() creates a symbol from a string and -syms() creates a list of symbols from a +

  • sym() creates a symbol from a string and +syms() creates a list of symbols from a character vector.

  • -
  • expr() and quo() quote +

  • expr() and quo() quote one expression. quo() wraps the quoted expression in a quosure.

    -

    The plural variants rlang::exprs() and -quos() return a list of quoted expressions or +

    The plural variants rlang::exprs() and +quos() return a list of quoted expressions or quosures.

  • -
  • enexpr() and enquo() +

  • enexpr() and enquo() capture the expression supplied as argument by the user of the current function (enquo() wraps this expression in a quosure).

    -

    enexprs() and enquos() +

    enexprs() and enquos() capture multiple expressions supplied as arguments, including ....

exprs() is not exported to avoid conflicts with Biobase::exprs(), -therefore one should always use rlang::exprs().

+therefore one should always use rlang::exprs().

To learn more about tidy eval and how to use these tools, visit -http://rlang.r-lib.org and the Metaprogramming section of Advanced R.

+http://rlang.r-lib.org and the Metaprogramming section of Advanced R.

diff --git a/pkgdown/_pkgdown.yml b/pkgdown/_pkgdown.yml index c87e374..0b99953 100644 --- a/pkgdown/_pkgdown.yml +++ b/pkgdown/_pkgdown.yml @@ -26,9 +26,10 @@ articles: desc: A survey of features and codeflows contents: - basic-usage + - building-custom-plans + - reporting - visualization - events-data - - building-custom-plans - title: "Use Cases" desc: Demo of possible applications for personal projects, academia, and industry contents: diff --git a/vignettes/building-custom-plans.Rmd b/vignettes/building-custom-plans.Rmd index adef70b..fddd090 100644 --- a/vignettes/building-custom-plans.Rmd +++ b/vignettes/building-custom-plans.Rmd @@ -1,5 +1,5 @@ --- -title: "Building Custom Plans and To-Do Lists" +title: "Generating Milestones & Issues from YAML" author: "Emily Riederer" date: "`r Sys.Date()`" output: rmarkdown::html_vignette diff --git a/vignettes/reporting.Rmd b/vignettes/reporting.Rmd new file mode 100644 index 0000000..fa1cc54 --- /dev/null +++ b/vignettes/reporting.Rmd @@ -0,0 +1,71 @@ +--- +title: "Reporting with RMarkdown" +author: "Emily Riederer" +date: "`r Sys.Date()`" +output: rmarkdown::html_vignette +vignette: > + %\VignetteIndexEntry{Reporting with RMarkdown} + %\VignetteEngine{knitr::rmarkdown} + %\VignetteEncoding{UTF-8} +--- + +```{r setup, include = FALSE} +knitr::opts_chunk$set( + collapse = TRUE, + comment = "#>" +) + +library(ghtrackr) +``` + +Communication is a critical part of project planning. For this, `ghtrackr` provides a family of `report` functions. These functions translate certain R objects like lists or dataframes into HTML code which will render nicely when knitted to HTML in an RMarkdown document. + +## Plans & To-Do Lists + +Recall that plans and to-do lists can be written in YAML. For example: + +```{r comment='', echo = FALSE} +plan_path <- system.file("extdata", "plan.yml", package = "ghtrackr", mustWork = TRUE) +cat(readLines(plan_path), sep = '\n') +``` + +The `report_plan()` function converts plans into formatted HTML for inclusion in RMarkdown documents for more aesthetic reporting. + +```{r} +plan <- read_plan(plan_path) +report_plan(plan) +``` + +The `report_todo()` function works similarly. + +## Issues & Milestones + +Similarly, any issue-milestone data pulled back down from GitHub can be reported in a similar format with `report_progress()`. + +```{r echo = FALSE} +issues <- + readRDS(system.file("extdata", "anproj-issues.rds", package = "ghtrackr", mustWork = TRUE)) +``` + +```{r} +report_progress(issues) +``` + +## Discussions + +Additionally, full issues discussions can be pulled from GitHub and reformatted to HTML for long-term documentation with the `report_discussion()` function. + +```{r eval = FALSE} +issues <- get_issues(experigit, number = 163) %>% parse_issues() +comments <- get_issue_comments(experigit, number = 163) %>% parse_issue_comments() +``` + +```{r echo = FALSE} +issues <- readRDS(system.file("extdata", "disc-issues.rds", package = "ghtrackr", mustWork = TRUE)) +comments <- readRDS(system.file("extdata", "disc-comments.rds", package = "ghtrackr", mustWork = TRUE)) +``` + +```{r} +report_discussion(comments, issues) +``` +