- Allow multiple EHR IDs in get_hipaa_disclosure_log_from_ehr_fhir_logs() (@pbchase, #173, #174)
- Include dependency setup in gh-action for tests (@saipavan10-git, #171)
- Improve logging for delete_project function (@saipavan10-git, #171)
- Use parameters in get_hipaa_disclosure_log_from_ehr_fhir_logs.R (@pbchase, @saipavan10-git #162)
- Add new production status (@saipavan10-git, #168, #170)
- Add log event tables 10,11,12 (@saipavan10-git, #168, #170)
- Use latest rstudio-ci in run-tests.yaml (@pbchase, #167)
- Address check errors (@pbchase, #167)
- remove log and output folder from study_template (@ljwoodley, #167)
- write log file to tempdir (@ljwoodley, #167)
- Update Dockerfile to rocker/verse:4.4.1 (@pbchase)
- Add report crash logging to render_report.R (@ljwoodley, #166)
- Update render_report.R to use render_report() function (@ljwoodley, #166)
- Add render_report() (@ljwoodley, #166)
- Add job failure alerts with run_etl.R and updates to send_mail() (@ljwoodley, #100, #165)
- Add Sai as author in DESCRIPTION (@pbchase)
- Filter out deleted projects in scrape_user_api_tokens() (@pbchase, #163, #164)
- Move Roxygen2 to 7.3.2 (@pbchase)
- Add get_hipaa_disclosure_log_from_ehr_fhir_logs() (@pbchase, #158)
- Update run-tests.yaml to use rstudio-ci:4.3.3 (@pbchase)
- Add project and instance to logging (@ljwoodley, @pbchase, #159, #160)
- Restore 'writexl' to Dockerfile (@pbchase)
- Update run-tests.yaml to use rstudio-ci:4.3.3 (@pbchase, #157)
- Switch send_mail() to use openxlsx (@ljwoodley, #152, #157)
- Implement hacky fix for tlmgr 2023 being unable to install packages (@ChemiKyle, #156)
- Fix bug that prevented email_body from being included in email (@ljwoodley, @ChemiKyle, #155)
- Add 'Scraping one user's API tokens' section to vignettes/credential-scraping.Rmd (@pbchase, @ChemiKyle, #154)
- Update scrape_user_api_tokens() to tidyselect 1.2 standards (@pbchase, #154)
- Add attachment management to send_email() allowing lists of files or dataframes to be attached to an email (@ljwoodley, #152, #153)
- Add get_redcap_credentials() (@ljwoodley, #149, #151)
- Revert "add redcap wrapper functions" (@ljwoodley, #149, #150)
- Add REDCapR wrapper functions (@ljwoodley, #147, #148)
- Update Dockerfile to verse:4.3.2 (@pbchase)
- Turn off code chunks in job_logging.Rmd to fix pkgdown::deploy_to_branch() errors (@pbchase)
- Fix 4 intermittent test failures caused by environment vars (@pbchase, #143)
- Fix error in test 'init_etl properly sets script name, script run time, and initializes log connection' (@pbchase, #143)
- Fix 11 warnings about dplyr::all_equal() in tests (@pbchase, #143)
- Address lots of pkgdown::build_site() complaints about garbage-collected connections (@pbchase, @ChemiKyle, #143)
- Address pkgdown::build_site() complaints about non-parsable code examples (@pbchase, @ChemiKyle, #104, #143)
- Update vignettes/job_logging.Rmd to fix build errors (@pbchase, #143)
- Update vignettes/job_logging.Rmd to fix build errors (@pbchase, #142)
- Fix build failures caused by vignettes/job_logging.Rmd (@pbchase)
- Add job_logging vignette (@pbchase, #113, #115)
- Add objects_to_include param to unnest_job_summary_data_json_object() (@pbchase, #112, #115)
- Add MySQL database comparison tools (@pbchase, @ChemiKyle, #140)
- Fix test data for get_redcap_email_revisions() (@pbchase)
- Add delete_project() (@ljwoodley, #139)
- Add dataframe_to_redcap_dictionary() (@ljwoodley, #136)
- Update etl/delete_erroneous_survey_reminders.R (@pbchase, #137)
- Fix build issues on Apple silicon (@pbchase, #133, #134)
- Add delete_erroneous_survey_reminders.R (@pbchase, #131, #132)
- update render_report to handle qmd files (@ljwoodley, #117, #129)
- Add LICENSE (@pbchase, #119, #124)
- Add project_purpose_other_research_labels.rda (@pbchase, #123)
- Add project_status_labels and project_purpose_labels (@pbchase, #122)
- Add conn parameter to write_summary_metrics() (@pbchase, #122)
- Add copy_entire_table_to_db() (@pbchase, #122)
- Update render_report.R to support quarto files (@pbchase, #118)
- Add unnest_job_summary_data_json_object() (@pbchase, #111)
- Fix Version in DESCRIPTION (@pbchase)
- Add description_base_name to get_project_life_cycle() output. (@pbchase, #110)
- Expand list of descriptions in project_life_cycle_descriptions to include more modern descriptions.(@pbchase, #110)
- Add project_life_cycle_descriptions (@pbchase, #106)
- Add get_project_life_cycle() (@pbchase, #106)
- Add quarto and tlmgr packages it needs for pdf generation (@pbchase, #107)
- Update NEWS.md and DESCRIPTION to comply with pkgdown (@pbchase, #103)
- Add a log database system for dev work (@pbchase, #110)
- Fix ORCIDs in DESCRIPTION (@pbchase)
- Add a pkgdown website (@pbchase, #102)
- Revise the package title away from REDCap and towards automation (@pbchase)
- Remove publication_date from .zenodo.json (@pbchase)
- Add randomization management functions and a sample ETL (@pbchase, #99)
- Add batch_size parm to dbx calls in sync_table_2 (@pbchase)
- Add batch_size parm to dbx calls in sync_table Prevents possible error: Expression tree is too large (maximum depth 1000) (@ChemiKyle, #96)
- Update testing image used at github (@pbchase)
- Eschew deprecated tidyselect features (@pbchase, #98)
- Modernize tests of sync_table_2 (@pbchase)
- Address fatal bug in sync_table caused when delete = T but there are no records to delete (@ChemiKyle, #97)
- Create write_summary_metrics function, corresponding schema and test (@ChemiKyle, #95)
- Add render_report to /report (@ljwoodley, #93)
- Port convert_schema_to_sqlite from rcc.billing, altering it to accept path to sql file as input (@ChemiKyle, #94)
- Port mutate_columns_to_posixct from rcc.billing (@ChemiKyle, #94)
- Ignore local credentials DBs (@pbchase)
- Install latex packages directly in Dockerfile (@ljwoodley, #91)
- Switch Dockerfile from tidyverse to verse (@ljwoodley, #90)
- Add render_report.R to render Rmds (@ljwoodley, #90)
- Specify package for na.exclude() (@pbchase)
- escape . to treat as literal character instead of wildcard in gsub statements (@ChemiKyle)
- Remove remants of the site concept (@pbchase)
- Add get_bad_emails_from_individual_emails function (@ChemiKyle)
- Modernize container and add dependencies (@pbchase)
- Move schema files into package space (@pbchase)
- Correct send_email using email_to for email_cc (@ChemiKyle)
- Add email_from and email_cc params to send_email function, default to env value (@ChemiKyle)
- Fix test for search results in get_bad_emails_from_listserv_digest (@pbchase)
- Add logging in Friday Call demo (@pbchase)
- Define username and tube count variables in friday call demo (@ChemiKyle)
- Move fake data section to setup file in Friday Call Demo (@pbchase)
- Move credential creation and scraping from main friday call to auxiliary setup file (@ChemiKyle)
- Add logging to suspend_users_with_no_primary_email (@pbchase)
- Add sync_table2 a merge of dataset_diff and sync_table (@pbchase)
- Add expire_user_project_rights (@pbchase)
- Use sync_table_2 in update_redcap_email_addresses (@pbchase)
- Refactor tests and test data related to cleanup_bad_email_addresses.R (@pbchase)
- Remove credentials for public image (@mbentz-uf)
- Fix deployment of cron file (@pbchase)
- Add common directories to template ignore files (@pbchase)
- Fix ADD of my.study (@pbchase)
- Add here package to Dockerfile (@pbchase)
- Add send_email function adapted from stp (@ChemiKyle)
- Add DOI badge to README (@pbchase)
- Fix typo in description (@pbchase)
- Add resources for publication (@pbchase)
- Add friday-call-demo.Rmd (@ChemiKyle, @pbchase)
- Update ignore files to respect new features (@pbchase)
- Replace reference to stp with rcc.billing (@ChemiKyle)
- Enlarge the job_summary_data field in rcc_job_log (@pbchase)
- Add new content to custom_rscript (@pbchase)
- Make docs study-centric (@pbchase)
- Update DESCRIPTION and init_etl.Rd to satisfy R 4.2.1 (@pbchase)
- Use *_PORT_DB in connect_to_db, defaulting to 3306 (@ChemiKyle)
- Move credentials DB (@pbchase)
- Reduce earliest_date in cleanup_bad_email_addresses.R (@pbchase)
- Use MariaDB as default driver in init_etl (@pbchase)
- Update username to my_username to avoid tautological filter in credential gathering (@ChemiKyle)
- Export email-fixing functions (@pbchase)
- Add first version of a demonstration script (@pbchase)
- Add sync_table (@ChemiKyle)
- Add dataset_diff (@pbchase)
- Add multi_instance.R (@ChemiKyle)
- Add sync_metadata using credentials (@ChemiKyle)
- Add scrape_user_api_tokens (@ChemiKyle)
- Add set_super_api_token (@ChemiKyle)
- Add set_project_api_token (@ChemiKyle)
- Add ETL job logging(@mbentz-uf)
- Add cleanup_bad_email_addresses (@ljwoodley)
- Ignore site_template in build (@pbchase)
- Ignore ./output/ (@pbchase)
- Fix build.sh deployment bugs (@pbchase)
- Remove host image concet and deploy from site project (@pbchase)
- Add mRpostman and writexl to the Dockerfile (@pbchase)
- Add suspend_users_with_no_primary_email (@ljwoodley)
- Add update_redcap_email_addresses (@ljwoodley)
- Fix get_redcap_email_revisions to match initial implementation allows it to create data that will result in user suspension (@ChemiKyle)
- Add get_redcap_email_revisions (@mbentz-uf)
- Add automated tests (@mbentz-uf)
- Add create_test_tables (@ChemiKyle)
- Add test tables (@ChemiKyle)
- Add get_bad_emails_from_listserv_digest (@pbchase)
- Add get_institutional_person_data (@pbchase)
- Add get_redcap_emails (@pbchase)
- Add create_test_table (@pbchase)
- Add site concept and docs (@pbchase)
- Add add_get_redcap_db_connection (@pbchase)
- Store rc_conn in env (@pbchase)
- Add add_connect_to_redcap_db (@pbchase)
- Add basic logging (@mbentz-uf)
- Initial commit of redcapcustodian
- Scripted image building.
- Scripted deployment.
- redcapcustodian R package
- testthat for redcapcustodian tests
- Host-specific customization of R scripts
- Host-specific customization of cron-files
- Host-specific customization of environment files