Skip to content

Conversation

@laxamanaj
Copy link
Collaborator

@laxamanaj laxamanaj commented Oct 14, 2025

Thank you for your Pull Request!

We have developed a Pull Request template to aid you and our reviewers. Completing the below tasks helps to ensure our reviewers can maximize their time on your code as well as making sure the adrgOS codebase remains robust and consistent.

Checklist

Please check off each taskbox as an acknowledgment that you completed the task. This checklist is part of the Github Action workflows and the Pull Request will not be merged into the dev branch until you have checked off each task.

  • Code is formatted according to the tidyverse style guide
  • Updated relevant unit tests or have written new unit tests.
  • Creation/updates to relevant roxygen headers and examples.
  • Run devtools::document() so all .Rd files in the man folder and the NAMESPACE file in the project root are updated appropriately
  • Run pkgdown::build_site() and check that all affected examples are displayed correctly and that all new functions occur on the "Reference" page.
  • Update NEWS.md if the changes pertain to a user-facing function (i.e. it has an @export tag) or documentation aimed at users (rather than developers)
  • Address any updates needed for vignettes and/or templates
  • Run R CMD check locally and address all errors and warnings - devtools::check()
  • Link the issue so that it closes after successful merging.
  • Address all merge conflicts and resolve appropriately
  • Pat yourself on the back for a job well done! Much love to your accomplishment!

laxamanaj and others added 8 commits March 29, 2025 01:39
…ADSL variables

- Added extract_common_adsl_variables() main function with full documentation
- Added extract_variable_info_from_define() helper function for XML parsing
- Added custom print.common_adsl_vars() method for formatted output
- Added %||% null coalescing utility function
- Created comprehensive testthat test suite covering all functions
- Added tests for edge cases, error handling, and input validation
- Updated DESCRIPTION with testthat and xml2 dependencies
- All functions include proper roxygen2 documentation with examples
…ectories; add vignette for extracting common ADSL variables
Merge branch '6-core-variables' into 10---ADaM-progress

# Conflicts:
#	.Rbuildignore
#	.gitignore
@laxamanaj
Copy link
Collaborator Author

Hi, @Lovemore-Gakava .

These steps in the PR are great. I like that it's a checklist. At this time, I'm trying to run the devtools::document step, but I run into the error of not being able to install jsonlite. Do you know the fix by chance? I tried google with no resolution.

> renv::install("devtools")
# Downloading packages -------------------------------------------------------
- Downloading devtools from CRAN ...            OK [file is up to date]
- Downloading miniUI from CRAN ...              OK [file is up to date]
- Downloading shiny from CRAN ...               OK [file is up to date]
- Downloading jsonlite from CRAN ...            OK [file is up to date]
- Downloading xtable from CRAN ...              OK [file is up to date]
- Downloading fontawesome from CRAN ...         OK [file is up to date]
- Downloading sourcetools from CRAN ...         OK [file is up to date]
- Downloading bslib from CRAN ...               OK [file is up to date]
- Downloading sass from CRAN ...                OK [file is up to date]
- Downloading rappdirs from CRAN ...            OK [file is up to date]
- Downloading jquerylib from CRAN ...           OK [file is up to date]
- Downloading pkgbuild from CRAN ...            OK [file is up to date]
- Downloading callr from CRAN ...               OK [file is up to date]
- Downloading processx from CRAN ...            OK [file is up to date]
- Downloading ps from CRAN ...                  OK [file is up to date]
- Downloading pkgdown from CRAN ...             OK [file is up to date]
- Downloading downlit from CRAN ...             OK [file is up to date]
- Downloading brio from CRAN ...                OK [file is up to date]
- Downloading httr from CRAN ...                OK [file is up to date]
- Downloading curl from CRAN ...                OK [file is up to date]
- Downloading openssl from CRAN ...             OK [file is up to date]
- Downloading ragg from CRAN ...                OK [file is up to date]
- Downloading systemfonts from CRAN ...         OK [file is up to date]
- Downloading textshaping from CRAN ...         OK [file is up to date]
- Downloading rmarkdown from CRAN ...           OK [file is up to date]
- Downloading knitr from CRAN ...               OK [file is up to date]
- Downloading tinytex from CRAN ...             OK [file is up to date]
- Downloading whisker from CRAN ...             OK [file is up to date]
- Downloading pkgload from CRAN ...             OK [file is up to date]
- Downloading profvis from CRAN ...             OK [file is up to date]
- Downloading htmlwidgets from CRAN ...         OK [file is up to date]
- Downloading rcmdcheck from CRAN ...           OK [file is up to date]
- Downloading sessioninfo from CRAN ...         OK [file is up to date]
- Downloading xopen from CRAN ...               OK [file is up to date]
- Downloading remotes from CRAN ...             OK [file is up to date]
- Downloading roxygen2 from CRAN ...            OK [file is up to date]
- Downloading brew from CRAN ...                OK [file is up to date]
- Downloading rversions from CRAN ...           OK [file is up to date]
- Downloading testthat from CRAN ...            OK [file is up to date]
- Downloading praise from CRAN ...              OK [file is up to date]
- Downloading waldo from CRAN ...               OK [file is up to date]
- Downloading diffobj from CRAN ...             OK [file is up to date]
- Downloading rematch2 from CRAN ...            OK [file is up to date]
- Downloading urlchecker from CRAN ...          OK [file is up to date]
- Downloading usethis from CRAN ...             OK [file is up to date]
- Downloading gert from CRAN ...                OK [file is up to date]
- Downloading credentials from CRAN ...         OK [file is up to date]
- Downloading rstudioapi from CRAN ...          OK [file is up to date]
- Downloading zip from CRAN ...                 OK [file is up to date]
- Downloading gh from CRAN ...                  OK [file is up to date]
- Downloading gitcreds from CRAN ...            OK [file is up to date]
- Downloading httr2 from CRAN ...               OK [file is up to date]
- Downloading ini from CRAN ...                 OK [file is up to date]
Successfully downloaded 53 packages in 11 seconds.

The following package(s) will be installed:
- askpass     [1.1]
- brew        [1.0-8]
- brio        [1.1.3]
- bslib       [0.4.2]
- callr       [3.7.3]
- clipr       [0.8.0]
- crayon      [1.5.2]
- credentials [1.3.2]
- curl        [5.0.0]
- desc        [1.4.2]
- devtools    [2.4.5]
- diffobj     [0.3.5]
- downlit     [0.4.2]
- fontawesome [0.5.0]
- fs          [1.6.1]
- gert        [1.9.2]
- gh          [1.4.0]
- gitcreds    [0.1.2]
- htmlwidgets [1.6.1]
- httpuv      [1.6.9]
- httr        [1.4.5]
- httr2       [0.2.2]
- ini         [0.3.1]
- jquerylib   [0.1.4]
- jsonlite    [1.8.4]
- knitr       [1.42]
- later       [1.3.0]
- mime        [0.12]
- miniUI      [0.1.1.1]
- openssl     [2.0.6]
- pkgbuild    [1.4.0]
- pkgdown     [2.0.7]
- pkgload     [1.3.2]
- praise      [1.0.0]
- prettyunits [1.1.1]
- processx    [3.8.0]
- profvis     [0.3.7]
- promises    [1.2.0.1]
- ps          [1.7.2]
- ragg        [1.2.5]
- rappdirs    [0.3.3]
- rcmdcheck   [1.4.0]
- Rcpp        [1.0.10]
- rematch2    [2.1.2]
- remotes     [2.4.2]
- rmarkdown   [2.20]
- roxygen2    [7.2.3]
- rprojroot   [2.0.3]
- rstudioapi  [0.14]
- rversions   [2.1.2]
- sass        [0.4.5]
- sessioninfo [1.2.2]
- shiny       [1.7.4]
- sourcetools [0.1.7-1]
- sys         [3.4.1]
- systemfonts [1.0.4]
- testthat    [3.1.7]
- textshaping [0.3.6]
- tinytex     [0.44]
- urlchecker  [1.0.1]
- usethis     [2.1.6]
- waldo       [0.4.0]
- whisker     [0.4.1]
- xopen       [1.0.0]
- xtable      [1.8-4]
- zip         [2.2.2]
These packages will be installed into "/cloud/home/r1749251/.cache/R/renv/library/project-4b716941/linux-ubuntu-focal/R-4.4/x86_64-pc-linux-gnu".

Do you want to proceed? [Y/n]: yu
- Unrecognized response: please enter 'y' or 'n', or type Ctrl + C to cancel.
Do you want to proceed? [Y/n]: y

The following required system packages are not installed:
- libcurl4-openssl-dev  [required by curl]
- pandoc                [required by knitr, rmarkdown, pkgdown]
The R packages depending on these system packages may fail to install.

An administrator can install these packages with:
- sudo apt install libcurl4-openssl-dev pandoc

Do you want to proceed? [Y/n]: y

# Installing packages --------------------------------------------------------
- Installing rprojroot ...                      OK [linked from cache]
- Installing desc ...                           OK [linked from cache]
- Installing fs ...                             OK [linked from cache]
- Installing Rcpp ...                           OK [linked from cache]
- Installing later ...                          OK [linked from cache]
- Installing promises ...                       OK [linked from cache]
- Installing httpuv ...                         OK [linked from cache]
- Installing mime ...                           OK [linked from cache]
- Installing jsonlite ...                       FAILED
Error: Error installing package 'jsonlite':
====================================

* installing *source* package ‘jsonlite’ ...
** package ‘jsonlite’ successfully unpacked and MD5 sums checked
** using staged installation
** libs
using C compiler: ‘gcc (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0’
gcc -I"/opt/R/4.4.3/lib/R/include" -DNDEBUG -Iyajl/api  -I/usr/local/include   -fvisibility=hidden  -fpic  -g -O2  -c base64.c -o base64.o
gcc -I"/opt/R/4.4.3/lib/R/include" -DNDEBUG -Iyajl/api  -I/usr/local/include   -fvisibility=hidden  -fpic  -g -O2  -c collapse_array.c -o collapse_array.o
gcc -I"/opt/R/4.4.3/lib/R/include" -DNDEBUG -Iyajl/api  -I/usr/local/include   -fvisibility=hidden  -fpic  -g -O2  -c collapse_object.c -o collapse_object.o
gcc -I"/opt/R/4.4.3/lib/R/include" -DNDEBUG -Iyajl/api  -I/usr/local/include   -fvisibility=hidden  -fpic  -g -O2  -c collapse_pretty.c -o collapse_pretty.o
gcc -I"/opt/R/4.4.3/lib/R/include" -DNDEBUG -Iyajl/api  -I/usr/local/include   -fvisibility=hidden  -fpic  -g -O2  -c escape_chars.c -o escape_chars.o
gcc -I"/opt/R/4.4.3/lib/R/include" -DNDEBUG -Iyajl/api  -I/usr/local/include   -fvisibility=hidden  -fpic  -g -O2  -c integer64_to_na.c -o integer64_to_na.o
gcc -I"/opt/R/4.4.3/lib/R/include" -DNDEBUG -Iyajl/api  -I/usr/local/include   -fvisibility=hidden  -fpic  -g -O2  -c is_datelist.c -o is_datelist.o
gcc -I"/opt/R/4.4.3/lib/R/include" -DNDEBUG -Iyajl/api  -I/usr/local/include   -fvisibility=hidden  -fpic  -g -O2  -c is_recordlist.c -o is_recordlist.o
gcc -I"/opt/R/4.4.3/lib/R/include" -DNDEBUG -Iyajl/api  -I/usr/local/include   -fvisibility=hidden  -fpic  -g -O2  -c is_scalarlist.c -o is_scalarlist.o
gcc -I"/opt/R/4.4.3/lib/R/include" -DNDEBUG -Iyajl/api  -I/usr/local/include   -fvisibility=hidden  -fpic  -g -O2  -c modp_numtoa.c -o modp_numtoa.o
gcc -I"/opt/R/4.4.3/lib/R/include" -DNDEBUG -Iyajl/api  -I/usr/local/include   -fvisibility=hidden  -fpic  -g -O2  -c null_to_na.c -o null_to_na.o
gcc -I"/opt/R/4.4.3/lib/R/include" -DNDEBUG -Iyajl/api  -I/usr/local/include   -fvisibility=hidden  -fpic  -g -O2  -c num_to_char.c -o num_to_char.o
gcc -I"/opt/R/4.4.3/lib/R/include" -DNDEBUG -Iyajl/api  -I/usr/local/include   -fvisibility=hidden  -fpic  -g -O2  -c parse.c -o parse.o
parse.c: In function ‘R_parse’:
parse.c:38:32: warning: format not a string literal and no format arguments [-Wformat-security]
   38 |       Rf_errorcall(R_NilValue, errbuf);
      |                                ^~~~~~
gcc -I"/opt/R/4.4.3/lib/R/include" -DNDEBUG -Iyajl/api  -I/usr/local/include   -fvisibility=hidden  -fpic  -g -O2  -c prettify.c -o prettify.o
gcc -I"/opt/R/4.4.3/lib/R/include" -DNDEBUG -Iyajl/api  -I/usr/local/include   -fvisibility=hidden  -fpic  -g -O2  -c push_parser.c -o push_parser.o
push_parser.c: In function ‘R_parse_connection’:
push_parser.c:71:14: warning: format not a string literal and no format arguments [-Wformat-security]
   71 |     Rf_error(errbuf);
      |              ^~~~~~
gcc -I"/opt/R/4.4.3/lib/R/include" -DNDEBUG -Iyajl/api  -I/usr/local/include   -fvisibility=hidden  -fpic  -g -O2  -c r-base64.c -o r-base64.o
gcc -I"/opt/R/4.4.3/lib/R/include" -DNDEBUG -Iyajl/api  -I/usr/local/include   -fvisibility=hidden  -fpic  -g -O2  -c register.c -o register.o
gcc -I"/opt/R/4.4.3/lib/R/include" -DNDEBUG -Iyajl/api  -I/usr/local/include   -fvisibility=hidden  -fpic  -g -O2  -c row_collapse.c -o row_collapse.o
gcc -I"/opt/R/4.4.3/lib/R/include" -DNDEBUG -Iyajl/api  -I/usr/local/include   -fvisibility=hidden  -fpic  -g -O2  -c transpose_list.c -o transpose_list.o
gcc -I"/opt/R/4.4.3/lib/R/include" -DNDEBUG -Iyajl/api  -I/usr/local/include   -fvisibility=hidden  -fpic  -g -O2  -c validate.c -o validate.o
gcc -I"/opt/R/4.4.3/lib/R/include" -DNDEBUG -Iyajl/api  -I/usr/local/include   -fvisibility=hidden  -fpic  -g -O2  -c yajl/yajl.c -o yajl/yajl.o
gcc -I"/opt/R/4.4.3/lib/R/include" -DNDEBUG -Iyajl/api  -I/usr/local/include   -fvisibility=hidden  -fpic  -g -O2  -c yajl/yajl_alloc.c -o yajl/yajl_alloc.o
gcc -I"/opt/R/4.4.3/lib/R/include" -DNDEBUG -Iyajl/api  -I/usr/local/include   -fvisibility=hidden  -fpic  -g -O2  -c yajl/yajl_buf.c -o yajl/yajl_buf.o
gcc -I"/opt/R/4.4.3/lib/R/include" -DNDEBUG -Iyajl/api  -I/usr/local/include   -fvisibility=hidden  -fpic  -g -O2  -c yajl/yajl_encode.c -o yajl/yajl_encode.o
gcc -I"/opt/R/4.4.3/lib/R/include" -DNDEBUG -Iyajl/api  -I/usr/local/include   -fvisibility=hidden  -fpic  -g -O2  -c yajl/yajl_gen.c -o yajl/yajl_gen.o
gcc -I"/opt/R/4.4.3/lib/R/include" -DNDEBUG -Iyajl/api  -I/usr/local/include   -fvisibility=hidden  -fpic  -g -O2  -c yajl/yajl_lex.c -o yajl/yajl_lex.o
gcc -I"/opt/R/4.4.3/lib/R/include" -DNDEBUG -Iyajl/api  -I/usr/local/include   -fvisibility=hidden  -fpic  -g -O2  -c yajl/yajl_parser.c -o yajl/yajl_parser.o
gcc -I"/opt/R/4.4.3/lib/R/include" -DNDEBUG -Iyajl/api  -I/usr/local/include   -fvisibility=hidden  -fpic  -g -O2  -c yajl/yajl_tree.c -o yajl/yajl_tree.o
ar rcs yajl/libstatyajl.a yajl/yajl.o yajl/yajl_alloc.o yajl/yajl_buf.o yajl/yajl_encode.o yajl/yajl_gen.o yajl/yajl_lex.o yajl/yajl_parser.o yajl/yajl_tree.o
gcc -shared -L/opt/R/4.4.3/lib/R/lib -L/usr/local/lib -o jsonlite.so base64.o collapse_array.o collapse_object.o collapse_pretty.o escape_chars.o integer64_to_na.o is_datelist.o is_recordlist.o is_scalarlist.o modp_numtoa.o null_to_na.o num_to_char.o parse.o prettify.o push_parser.o r-base64.o register.o row_collapse.o transpose_list.o validate.o -Lyajl -lstatyajl -L/opt/R/4.4.3/lib/R/lib -lR
installing to /cloud/project/renv/staging/1/00LOCK-jsonlite/00new/jsonlite/libs
** R
** inst
** byte-compile and prepare package for lazy loading
Error in .make_numeric_version(x, strict, .standard_regexps()$valid_numeric_version) : 
  invalid non-character version specification 'x' (type: double)
Error: unable to load R code in package ‘jsonlite’
Execution halted
ERROR: lazy loading failed for package ‘jsonlite’
* removing ‘/cloud/project/renv/staging/1/jsonlite’
install of package 'jsonlite' failed [error code 1]

laxamanaj and others added 5 commits October 14, 2025 22:12
…ns in one cell as would be seen in the adrg.
- Setting R_INSTALL_STAGED: false, disabling this two-step process. Instead:

The package installs directly to the final location
No file locking is required
Installation happens in one step instead of two
…elop. We lock the files when we have the stable draft of the package.
@Lovemore-Gakava
Copy link
Collaborator

@laxamanaj we agreed to use the latest packages during development. I have removed the renv files for now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants