Draft
Conversation
…PI consistency - Define %||% operator in R/utils.R for R < 4.4.0 compatibility - Remove duplicate Output function definitions (dateOutput.R, datetimeOutput.R, timeOutput.R) - Add importFrom roxygen tags to all R files; regenerate NAMESPACE - Add .onLoad() to zzz.R for auto resource path registration - Fix DESCRIPTION: URL/BugReports, LazyData, License, Suggests, version -> 0.2.0 - Add formatter parameter to renderDate(); add formatter+locale to renderTime() - Add @Seealso cross-references to all exported functions - Create CI/CD workflows: R-CMD-check, test-coverage, pkgdown - Add copilot-setup-steps.yml - Create vignettes: getting-started.Rmd, advanced-usage.Rmd - Update NEWS.md with v0.1.1, v0.1.2, v0.2.0 entries - Fix README: add badges, useShinyTZ() in Quick Start, correct license - Add cran-comments.md - Add tests: test-utils.R, test-useShinyTZ.R, test-render-server.R - Update test-renderTime.R and test-renderDate.R for new parameters - Update .Rbuildignore Agent-Logs-Url: https://github.com/Warnes-Innovations/shinyTZ/sessions/4fa4fd1c-5a8f-45e2-846b-f3b40445b399 Co-authored-by: warnes <6144863+warnes@users.noreply.github.com>
- Rename ambiguous 'base' variable in advanced-usage vignette - Add explicit permissions blocks to R-CMD-check and test-coverage workflows - Improve test-render-server.R comment explaining test approach Agent-Logs-Url: https://github.com/Warnes-Innovations/shinyTZ/sessions/4fa4fd1c-5a8f-45e2-846b-f3b40445b399 Co-authored-by: warnes <6144863+warnes@users.noreply.github.com>
Copilot created this pull request from a session on behalf of
warnes
April 9, 2026 22:34
View session
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This PR prepares the shinyTZ package for CRAN submission by fixing critical bugs, completing the API, adding CI/CD infrastructure, vignettes, and improving test coverage. A detailed implementation plan and decision log is recorded in
inst/docs/cran-prep-plan.md.Critical Bug Fixes
datetime-outputs.RAND individual.Rfiles (duplicate exports)R/dateOutput.R,R/datetimeOutput.R,R/timeOutput.RNAMESPACEmissing allimportFromstatements@importFromroxygen tags to all R files; NAMESPACE regeneratedzzz.Rmissing.onLoad()(resource path not auto-registered on package load).onLoad()toR/zzz.RDESCRIPTION / Package Metadata
URLandBugReports(now point toWarnes-Innovations/shinyTZ)LazyData: true(no data files → was a CRAN NOTE)DBIanddplyrfromSuggestsshinytest2toSuggestsConfig/testthat/edition: 30.2.0API Consistency
renderDate(): addedformatterparameter (was missing vs.renderDatetime())renderTime(): addedformatterandlocaleparameters (was missing both)(expr, format, formatter, tz, locale, show_tz, env, quoted)signatures@seealsocross-references on all exported functionsCI/CD (all new)
.github/workflows/R-CMD-check.yaml.github/workflows/test-coverage.yamlcovr+ Codecov upload.github/workflows/pkgdown.yamlgh-pages.github/copilot-setup-steps.ymlDocumentation
useShinyTZ()missing from Quick Start; corrected license reference (GPL-2, not MIT); updated install URLvignettes/getting-started.Rmdandvignettes/advanced-usage.RmdTests
tests/testthat/test-utils.Rtests/testthat/test-useShinyTZ.RuseShinyTZ()returns correct tag structure with JS srctests/testthat/test-render-server.Rtzoverride (format strings, timezone conversion, show_tz, custom formatters, invalid timezone fallback)test-renderDate.Rformatterparameter testtest-renderTime.Rformatterandlocaleparameter testsAreas for Detailed Review
NAMESPACE(manually updated) — Sincedevtools::document()could not run in the agent environment, the NAMESPACE was updated by hand. Please verify it is complete and correct by runningdevtools::document()locally and checking for drift.renderTime()signature change — Addingformatterandlocalebeforetzchanges the positional argument order. Any existing code using positional args fortzorshow_tzwould silently break. The NEWS.md entry documents this as a breaking change — please confirm this is acceptable for a pre-1.0 package..onLoad()resource registration — Thezzz.R.onLoad()now callsshiny::addResourcePath()at package load time. This means the resource path is registered even ifuseShinyTZ()is never called. Please verify this is the desired behavior (no side-effects in non-Shiny contexts).Test coverage — The
test-render-server.Rtests call render functions directly without a full Shiny session. They work for explicittzoverrides but do not exercise the browser-timezone detection path. Fullshiny::testServer()integration tests would require Shiny ≥ 1.7 to be available in the test environment.Vignette examples — All vignette code blocks use
rfences but are not evaluated (eval = FALSEis the default for Shiny app examples). Consider whether any examples should be run to generate output for the pkgdown site.