Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
108 commits
Select commit Hold shift + click to select a range
b14c8ef
Updated OAuth2 authentication process and token management
parmatys Oct 24, 2025
7ac22e0
Refactor API interaction: add new helper functions, remove deprecated…
parmatys Oct 31, 2025
1f6cf4d
Added and adjsuted functions for downloading folder/session assets, C…
parmatys Nov 12, 2025
b4e3e3d
fix(api): update get_db_stats to match new API response structure
michalhuryn-montrose Dec 8, 2025
82366c6
feat: add get_funder_by_id() for direct funder lookup by ID
michalhuryn-montrose Dec 10, 2025
79355a8
feat: add get_tag_by_id() for direct tag lookup by ID
michalhuryn-montrose Dec 10, 2025
9a9bec5
feat: add get_category_by_id() function with tests
michalhuryn-montrose Dec 10, 2025
4f10d6f
feat: add list_categories() function with tests
michalhuryn-montrose Dec 10, 2025
92ab118
feat: add list_volume_records() function with tests
michalhuryn-montrose Dec 10, 2025
6d6c0cd
feat: add get_volume_record_by_id() function with tests
michalhuryn-montrose Dec 10, 2025
d0ef941
feat: add get_volume_collaborator_by_id() function with tests
michalhuryn-montrose Dec 10, 2025
905368c
feat: add get_institution_avatar() function with tests
michalhuryn-montrose Dec 10, 2025
8b7d9f1
feat: add list_institutions() function with tests
michalhuryn-montrose Dec 10, 2025
16d8800
feat: add get_user_avatar() function with tests
michalhuryn-montrose Dec 10, 2025
d8ceda2
feat: add get_session_file function with tests
michalhuryn-montrose Dec 12, 2025
2d1737d
chore: remove get_file_duration
michalhuryn-montrose Dec 12, 2025
be72a51
feat: add get_folder_file function with tests
michalhuryn-montrose Dec 12, 2025
44a324e
Merge pull request #1 from NYU-Databrary/feature/DAT-1493
michalhuryn-montrose Dec 15, 2025
68c47f8
Merge pull request #2 from NYU-Databrary/feature/DAT-1494
michalhuryn-montrose Dec 15, 2025
22fc276
Merge pull request #3 from NYU-Databrary/feature/DAT-1495
michalhuryn-montrose Dec 15, 2025
c8cc694
chore: format changed files
michalhuryn-montrose Dec 16, 2025
09e2238
fix(doc): fix documentation for get_folder_file.
michalhuryn-montrose Dec 16, 2025
b9356e9
Merge pull request #4 from NYU-Databrary/fix/DAT-1494
parmatys Dec 16, 2025
00340d2
Test push to github with trivial change to CONSTANTS.
rogilmore Feb 2, 2026
7dcbe6b
Add doc strings to header for `vb` parameter for all documented funct…
rogilmore Feb 2, 2026
4574f6f
Merge branch 'uat-rog' of https://github.com/NYU-Databrary/databraryr…
rogilmore Feb 2, 2026
f1865ba
Change parameter documentation to include more useful default values;…
rogilmore Feb 2, 2026
5428d05
Minor edit to function documentation; Add verbose message.
rogilmore Feb 3, 2026
f5465a0
fix: fix pipe and token management to download_signed_file function
parmatys Feb 5, 2026
abee779
Merge pull request #5 from NYU-Databrary/feature/DAT-1558
OlhaHn Feb 5, 2026
cb7e318
Further mods to function docs; minor change to verbose messaging.
rogilmore Feb 6, 2026
1ef7701
Use validate_flag() throughout.
rogilmore Feb 6, 2026
5a61dc4
Bump version; add Pawel as author; add NSF HNDS-I grant to DESCRIPTION.
rogilmore Feb 6, 2026
fc6ac6c
Fix typo in DESCRIPTION.
rogilmore Feb 6, 2026
7f5724c
feat: add functions for managing records in Databrary volume
parmatys Feb 10, 2026
c4b7637
chore: update workflows and configuration files for linting and coverage
parmatys Feb 12, 2026
df2486d
chore: update GitHub workflows for pkgdown and test coverage to impro…
parmatys Feb 12, 2026
a3ac4ba
Merge branch 'uat-rog' into feature/DAT-1480
parmatys Feb 12, 2026
b3a0770
chore: fixed whitespcaes and docs
parmatys Feb 12, 2026
912c21b
refactor: standardize error handling and improve messaging in API fun…
parmatys Feb 12, 2026
ce3a52e
refactor: enhance lintr configuration and add global variables
parmatys Feb 12, 2026
6f4e18d
chore: update documentation to include `rq` parameter in relevant fun…
parmatys Feb 12, 2026
d0a8fcb
chore: update documentation examples to use \dontrun instead of \dont…
parmatys Feb 12, 2026
fcf0ac2
chore: remove unnecessary namespace prefixes in constants and update …
parmatys Feb 12, 2026
9e311b1
chore: temporarily disable coverage threshold enforcement and update …
parmatys Feb 12, 2026
f61e67e
feat: enhance validation and testing documentation for Databrary API …
parmatys Feb 20, 2026
b8903f8
fix(test): add login_test_account() where missing
michalhuryn-montrose Feb 20, 2026
4b91f1e
feat: add functions for enabling and disabling categories in Databrar…
parmatys Mar 3, 2026
b4e4a55
Merge branch 'development' into uat-rog
parmatys Mar 5, 2026
503b60f
Merge pull request #9 from NYU-Databrary/uat-rog
parmatys Mar 5, 2026
aa125c7
Merge pull request #7 from NYU-Databrary/feature/DAT-1480
parmatys Mar 5, 2026
dae6734
Merge branch 'development' into feature/DAT-1561
parmatys Mar 5, 2026
4cce8bf
Merge branch 'feature/DAT-1561' into feature/DAT-1561-fix
parmatys Mar 5, 2026
1a9dfed
refactor: rename get_volume_record_name_metric_id to get_name_metric_…
parmatys Mar 5, 2026
45f40ba
Merge branch 'feature/DAT-1561' into feature/DAT-1561-fix
parmatys Mar 5, 2026
3826064
chore: update .Rbuildignore to exclude .Renviron.stg and fix indentat…
parmatys Mar 5, 2026
1e33f36
Merge pull request #10 from NYU-Databrary/development
parmatys Mar 5, 2026
5e1b62f
Merge pull request #8 from NYU-Databrary/feature/DAT-1561-fix
parmatys Mar 10, 2026
5974239
Merge pull request #6 from NYU-Databrary/feature/DAT-1561
parmatys Mar 10, 2026
fe0353b
Enhanced error handling and validation in API utility functions
parmatys Mar 26, 2026
11360dd
feat: add cover for user and institution statistics endpoints
michalhuryn-montrose Apr 20, 2026
5a66349
fix: lint
michalhuryn-montrose Apr 21, 2026
e06ddeb
feat: introduce record_as_client_list function to normalize API recor…
parmatys Apr 28, 2026
24164c4
Merge pull request #11 from NYU-Databrary/feature/DAT-1679
parmatys Apr 28, 2026
0ee6100
feat(api): add session sub-action paths and PUT helper
michalhuryn-montrose May 8, 2026
0fefedf
feat: add delete_session()
michalhuryn-montrose May 8, 2026
612280c
feat: add create_session()
michalhuryn-montrose May 8, 2026
744d09b
feat: add patch_session()
michalhuryn-montrose May 8, 2026
f95cea7
feat: add update_session()
michalhuryn-montrose May 8, 2026
b40c616
feat: add add_default_record_to_session()
michalhuryn-montrose May 8, 2026
032f45e
feat: add remove_default_record_from_session()
michalhuryn-montrose May 8, 2026
14917b9
feat: add check_duplicate_files_in_session()
michalhuryn-montrose May 8, 2026
9bffb37
doc: regenerate man directory and update NAMESPACE
michalhuryn-montrose May 11, 2026
f0d177f
chore: exclude from linting
michalhuryn-montrose May 11, 2026
266b961
feat: add file upload pipeline (initiate, status, complete, upload_file)
michalhuryn-montrose May 11, 2026
8a25c76
chore: fix checks
michalhuryn-montrose May 12, 2026
2ee0a7b
feat: add update/patch/delete_session_file() for file metadata manage…
michalhuryn-montrose May 12, 2026
8810b82
feat: add folders CRUD (create/update/patch/delete + check-duplicate-…
michalhuryn-montrose May 12, 2026
748738a
test: add tests for folders CRUD and check-duplicate-files
michalhuryn-montrose May 12, 2026
c461ef7
Merge pull request #13 from NYU-Databrary/feature/DAT-1726
parmatys May 13, 2026
87a4f09
refactor: rename age field from is_partial to is_estimated in API uti…
parmatys May 12, 2026
4e0eb10
Merge branch 'development' into feature/DAT-1727
parmatys May 13, 2026
348f61c
feat: enhance session and record management in tests
parmatys May 13, 2026
41164f2
Merge pull request #14 from NYU-Databrary/feature/DAT-1727
parmatys May 13, 2026
5d86206
Merge remote-tracking branch 'origin/development' into feature/DAT-1725
michalhuryn-montrose May 13, 2026
eb3443b
Merge remote-tracking branch 'origin/development' into feature/DAT-1728
michalhuryn-montrose May 13, 2026
29f048f
fix: update documentation and tests for check_duplicate_files_in_fold…
parmatys May 14, 2026
c86ca4b
Merge pull request #15 from NYU-Databrary/feature/DAT-1725
parmatys May 14, 2026
ae87cb1
Merge branch 'development' into feature/DAT-1728
parmatys May 14, 2026
1935b0b
Merge pull request #16 from NYU-Databrary/feature/DAT-1728
parmatys May 14, 2026
cc2d494
refactor: remove list_session_activity function and update related do…
parmatys May 14, 2026
127fb59
chore: update documentation
parmatys May 14, 2026
7483550
refactor: replace hardcoded IDs with constants in tests for improved …
parmatys May 14, 2026
ac3ad3a
docs: update parameter descriptions in download functions
parmatys May 14, 2026
751bc98
Merge pull request #18 from NYU-Databrary/feature/improvements
parmatys May 14, 2026
af4fff8
refactor: enhance list_volume_funding and get_supported_file_types fu…
parmatys May 15, 2026
72a06f6
refactor: update environment variable handling for Databrary API URLs
parmatys May 15, 2026
31bbc5f
feat: add bulk operations for managing records, folders, and sessions…
parmatys May 18, 2026
3246a33
docs: expand README and Rmd to include detailed documentation on bulk…
parmatys May 18, 2026
6bc7fcd
docs: enhance README with looping fix-and-resume example for bulk ope…
parmatys May 18, 2026
316cd0e
Merge pull request #17 from NYU-Databrary/feature/DAT-1729
michalhuryn-montrose May 19, 2026
af41f31
chore: update GitHub Actions workflows to use actions/checkout@v6
parmatys May 19, 2026
00b9f61
chore: update codecov action to version 6 in test coverage workflow
parmatys May 19, 2026
57a7197
Merge pull request #12 from NYU-Databrary/development
parmatys May 19, 2026
fdd2845
feat: add file_count_value function and update volume folder/session …
parmatys May 29, 2026
b3322ac
Merge pull request #20 from NYU-Databrary/feature/fix-duplicate-counts
OlhaHn May 29, 2026
ac2e4b7
Merge branch 'development' into staging
parmatys May 29, 2026
beb2c02
Merge pull request #19 from NYU-Databrary/staging
parmatys Jul 13, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
5 changes: 5 additions & 0 deletions .Rbuildignore
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,12 @@
^_notes$
^tmp$
^_wip
^\.lintr$
^\.github$
^cran-comments\.md$
^CRAN-SUBMISSION$
^README.Rmd$
^\.Renviron\.stg$
^\.Renviron$
^\.vscode$
^\.Rprofile$
6 changes: 3 additions & 3 deletions .github/workflows/R-CMD-check.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@
# Need help debugging build failures? Start at https://github.com/r-lib/actions#where-to-find-help
on:
push:
branches: [main, master]
branches: [main, master, staging]
pull_request:
branches: [main, master]
branches: [main, master, staging, development]

name: R-CMD-check

Expand All @@ -29,7 +29,7 @@ jobs:
R_KEEP_PKG_SOURCE: yes

steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6

- uses: r-lib/actions/setup-pandoc@v2

Expand Down
36 changes: 36 additions & 0 deletions .github/workflows/lint.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
# Workflow derived from https://github.com/r-lib/actions/tree/v2/examples
# Need help debugging build failures? Start at https://github.com/r-lib/actions#where-to-find-help
on:
push:
branches: [main, master, staging]
pull_request:
branches: [main, master, staging, development]

name: lint

permissions: read-all

jobs:
lint:
runs-on: ubuntu-latest
env:
GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }}
steps:
- uses: actions/checkout@v6

- uses: r-lib/actions/setup-r@v2
with:
use-public-rspm: true

- uses: r-lib/actions/setup-r-dependencies@v2
with:
extra-packages: lintr@3.2.0, any::pkgload, local::.
needs: lint

- name: Lint
run: |
pkgload::load_all()
lintr::lint_package()
shell: Rscript {0}
env:
LINTR_ERROR_ON_LINT: true
16 changes: 11 additions & 5 deletions .github/workflows/pkgdown.yaml
Original file line number Diff line number Diff line change
@@ -1,9 +1,10 @@
# Workflow derived from https://github.com/r-lib/actions/tree/v2/examples
# Need help debugging build failures? Start at https://github.com/r-lib/actions#where-to-find-help
# Runs after R-CMD-check succeeds on main/master, or on release, or manually
on:
push:
branches: [main, master]
pull_request:
workflow_run:
workflows: [R-CMD-check]
types: [completed]
branches: [main, master]
release:
types: [published]
Expand All @@ -14,15 +15,20 @@ name: pkgdown
jobs:
pkgdown:
runs-on: ubuntu-latest
# Only run when R-CMD-check succeeded (for workflow_run), or for release/manual
if: github.event_name != 'workflow_run' || github.event.workflow_run.conclusion == 'success'
# Only restrict concurrency for non-PR jobs
concurrency:
group: pkgdown-${{ github.event_name != 'pull_request' || github.run_id }}
group: pkgdown-${{ github.event_name != 'workflow_run' || github.run_id }}
env:
GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }}
permissions:
contents: write
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
with:
# When triggered by workflow_run, checkout the commit that was checked
ref: ${{ github.event_name == 'workflow_run' && github.event.workflow_run.head_sha || github.ref }}

- uses: r-lib/actions/setup-pandoc@v2

Expand Down
71 changes: 71 additions & 0 deletions .github/workflows/test-coverage.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
# Workflow derived from https://github.com/r-lib/actions/tree/v2/examples
# Need help debugging build failures? Start at https://github.com/r-lib/actions#where-to-find-help
on:
pull_request:
branches: [main, master, staging, development]

name: test-coverage

permissions: read-all

jobs:
test-coverage:
runs-on: ubuntu-latest
env:
GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }}

steps:
- uses: actions/checkout@v6

- uses: r-lib/actions/setup-r@v2
with:
use-public-rspm: true

- uses: r-lib/actions/setup-r-dependencies@v2
with:
extra-packages: any::covr, any::xml2
needs: coverage

- name: Test coverage
run: |
cov <- covr::package_coverage(
quiet = FALSE,
clean = FALSE,
install_path = file.path(normalizePath(Sys.getenv("RUNNER_TEMP"), winslash = "/"), "package")
)
print(cov)
covr::to_cobertura(cov)
pct <- covr::percent_coverage(cov)
cat("Coverage:", pct, "%\n")
# TODO: Re-enable coverage threshold once target is met
# if (pct < 80) stop("Coverage is below 80% (", pct, "%)")
if (pct < 80) {
warning("Coverage is below 80% (", pct, "%) - threshold temporarily disabled")
} else if (pct < 90) {
message("Coverage is below 90% (", pct, "%)")
} else {
message("Coverage is above 90% (", pct, "%)")
}
shell: Rscript {0}

- uses: codecov/codecov-action@v6
with:
fail_ci_if_error: ${{ github.event_name != 'pull_request' || secrets.CODECOV_TOKEN }}
files: ./cobertura.xml
plugins: noop
disable_search: true
token: ${{ secrets.CODECOV_TOKEN }}

- name: Show testthat output
if: always()
run: |
## --------------------------------------------------------------------
find '${{ runner.temp }}/package' -name 'testthat.Rout*' -exec cat '{}' \; || true
shell: bash

- name: Upload test results
if: failure()
uses: actions/upload-artifact@v4
with:
name: coverage-test-failures
path: ${{ runner.temp }}/package
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
.env
.env.*
Meta
doc
.Rproj.user
Expand All @@ -20,4 +22,5 @@ tmp
docs
/doc/
/Meta/
.Renviron*

2 changes: 2 additions & 0 deletions .lintr
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
linters: linters_with_defaults(line_length_linter = line_length_linter(120))
exclusions: list("_wip", "tests/testthat", "vignettes", "R/CONSTANTS.R" = list(object_name_linter = Inf, object_length_linter = Inf), "R/aaa.R" = list(object_name_linter = Inf), "R/auth_utils.R" = list(object_name_linter = Inf), "R/utils.R" = list(object_name_linter = Inf))
18 changes: 11 additions & 7 deletions DESCRIPTION
Original file line number Diff line number Diff line change
@@ -1,12 +1,14 @@
Type: Package
Package: databraryr
Title: Interact with the 'Databrary.org' API
Version: 0.6.6.9002
Version: 1.0.0.9000
Authors@R: c(
person("Rick", "O. Gilmore", , "rog1@psu.edu", role = c("aut", "cre", "cph")),
person("Jeffrey", "Spies", , "cran@jeffspies.com", role = "aut"),
person("Pawel", "Armatys", "pawel.armatys@montrosesoftware.com", role="aut"),
person("National Science Foundation OAC-2032713", role = "fnd"),
person("National Institutes of Health R01HD094830", role = "fnd")
person("National Institutes of Health R01HD094830", role = "fnd"),
person("National Science Foundation BCS 2444730, 2444731", role="fnd")
)
Maintainer: Rick O. Gilmore <rog1@psu.edu>
Description: 'Databrary.org' is a restricted access repository for
Expand All @@ -23,27 +25,29 @@ Imports:
httr2 (>= 1.0.0),
keyring (>= 1.3.2),
lifecycle (>= 1.0.4),
magick (>= 2.8.2),
magrittr,
methods (>= 4.3.2),
options (>= 0.2.0),
purrr (>= 1.0.2),
stringr (>= 1.5.1),
stats,
tibble (>= 3.2.1),
xfun (>= 0.41)
tibble (>= 3.2.1)
Suggests:
av (>= 0.9.0),
covr (>= 3.6.0),
ggplot2,
knitr,
lintr (>= 3.0.0),
openssl,
readr,
rmarkdown (>= 2.26),
testthat (>= 3.0.0)
testthat (>= 3.0.0),
withr (>= 2.5.0),
xml2 (>= 1.3.0)
VignetteBuilder:
knitr
Config/testthat/edition: 3
Encoding: UTF-8
LazyData: true
Roxygen: list(markdown = TRUE)
RoxygenNote: 7.3.1
RoxygenNote: 7.3.3
96 changes: 80 additions & 16 deletions NAMESPACE
Original file line number Diff line number Diff line change
@@ -1,54 +1,118 @@
# Generated by roxygen2: do not edit by hand

export("%>%")
export(HHMMSSmmm_to_ms)
export(add_default_record_to_session)
export(assign_constants)
export(assign_record_to_file)
export(bulk_assign_records)
export(bulk_create_folders)
export(bulk_create_records)
export(bulk_create_sessions)
export(bulk_delete_files)
export(bulk_delete_folders)
export(bulk_delete_records)
export(bulk_delete_sessions)
export(bulk_rename_files)
export(bulk_rename_folders)
export(bulk_rename_sessions)
export(bulk_unassign_records)
export(bulk_upload_files)
export(check_duplicate_files_in_folder)
export(check_duplicate_files_in_session)
export(check_ssl_certs)
export(download_party_avatar)
export(complete_upload)
export(create_folder)
export(create_session)
export(create_volume_record)
export(delete_folder)
export(delete_record_measure)
export(delete_session)
export(delete_session_file)
export(delete_volume_record)
export(disable_volume_category)
export(download_folder_asset)
export(download_folder_asset_from_df)
export(download_folder_assets_fr_df)
export(download_folder_zip)
export(download_session_asset)
export(download_session_asset_from_df)
export(download_session_assets_fr_df)
export(download_session_csv)
export(download_session_zip)
export(download_single_session_asset_fr_df)
export(download_video)
export(download_volume_zip)
export(get_asset_segment_range)
export(enable_volume_category)
export(get_category_by_id)
export(get_db_stats)
export(get_file_duration)
export(get_party_by_id)
export(get_folder_by_id)
export(get_folder_file)
export(get_funder_by_id)
export(get_institution_avatar)
export(get_institution_by_id)
export(get_institution_statistics)
export(get_permission_levels)
export(get_release_levels)
export(get_session_by_id)
export(get_session_by_name)
export(get_session_file)
export(get_supported_file_types)
export(get_tag_by_id)
export(get_upload_status)
export(get_user_avatar)
export(get_user_by_id)
export(get_user_statistics)
export(get_volume_by_id)
export(is_institution)
export(is_person)
export(get_volume_collaborator_by_id)
export(get_volume_enabled_categories)
export(get_volume_record_by_id)
export(initiate_upload)
export(list_asset_formats)
export(list_authorized_investigators)
export(list_party_affiliates)
export(list_party_sponsors)
export(list_party_volumes)
export(list_session_activity)
export(list_categories)
export(list_folder_assets)
export(list_institution_affiliates)
export(list_institutions)
export(list_session_assets)
export(list_sponsors)
export(list_user_affiliates)
export(list_user_history)
export(list_user_sponsors)
export(list_user_volumes)
export(list_users)
export(list_volume_activity)
export(list_volume_assets)
export(list_volume_excerpts)
export(list_volume_collaborators)
export(list_volume_folders)
export(list_volume_funding)
export(list_volume_info)
export(list_volume_links)
export(list_volume_owners)
export(list_volume_records)
export(list_volume_session_assets)
export(list_volume_sessions)
export(list_volume_tags)
export(list_volumes)
export(login_db)
export(logout_db)
export(make_default_request)
export(make_login_client)
export(patch_folder)
export(patch_session)
export(patch_session_file)
export(remove_default_record_from_session)
export(resume_bulk)
export(search_for_funder)
export(search_for_keywords)
export(search_for_tags)
export(search_institutions)
export(search_users)
export(search_volumes)
export(set_record_measure)
export(set_volume_enabled_categories)
export(unassign_record_from_file)
export(update_folder)
export(update_session)
export(update_session_file)
export(update_volume_record)
export(upload_file)
export(whoami)
importFrom(lifecycle,deprecated)
importFrom(magrittr,"%>%")
importFrom(methods,is)
6 changes: 5 additions & 1 deletion NEWS.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,8 @@
# databraryr (development version)
# databraryr 1.0.0

## Major changes

- Adapted all package functions to Databrary 2.0 API.

# databraryr 0.6.6

Expand Down
Loading
Loading