Last updated on 2026-09-03 12:55:05 CEST.
| Flavor | Version | Tinstall | Tcheck | Ttotal | Status | Flags |
|---|---|---|---|---|---|---|
| r-devel-linux-x86_64-debian-gcc | 0.1.1 | 5.04 | 117.23 | 122.27 | ERROR | |
| r-devel-linux-x86_64-fedora-clang | 0.1.1 | 110.11 | OK | |||
| r-devel-linux-x86_64-fedora-gcc | 0.1.1 | 5.00 | 118.74 | 123.74 | OK | |
| r-patched-linux-x86_64 | 0.1.1 | 10.19 | 172.80 | 182.99 | ERROR | |
| r-release-macos-arm64 | 0.1.1 | 2.00 | 48.00 | 50.00 | OK | |
| r-release-macos-x86_64 | 0.1.1 | 6.00 | 191.00 | 197.00 | OK | |
| r-release-windows-x86_64 | 0.1.1 | 16.00 | 310.00 | 326.00 | OK | |
| r-oldrel-macos-arm64 | 0.1.1 | 2.00 | 52.00 | 54.00 | OK | |
| r-oldrel-macos-x86_64 | 0.1.1 | 6.00 | 185.00 | 191.00 | OK | |
| r-oldrel-windows-x86_64 | 0.1.1 | 13.00 | 287.00 | 300.00 | OK |
Version: 0.1.1
Check: tests
Result: ERROR
Running ‘testthat.R’ [52s/59s]
Running the tests in ‘tests/testthat.R’ failed.
Complete output:
> # This file is part of the standard setup for testthat.
> # It is recommended that you do not modify it.
> #
> # Where should you do additional test configuration?
> # Learn more about the roles of various files in:
> # * https://r-pkgs.org/testing-design.html#sec-tests-files-overview
> # * https://testthat.r-lib.org/articles/special-files.html
>
> library(testthat)
> library(datom)
>
> test_check("datom")
-- datom connection
* Project: "proj"
* Backend: "s3"
* Role: "reader"
* Data root: "b"
* Data region: "us-east-1"
* Governance: not attached
-- datom connection
* Project: "proj"
* Backend: "s3"
* Role: "reader"
* Data root: "b"
* Data region: "us-east-1"
* Governance: not attached
v Initialized datom repository "testproj" at '/home/hornik/tmp/scratch/RtmpP2yYth/file1b44114b6184cc'
v Initialized datom repository "testproj" at '/home/hornik/tmp/scratch/RtmpP2yYth/file1b441154e0eddb'
v Initialized datom repository "testproj" at '/home/hornik/tmp/scratch/RtmpP2yYth/file1b44113ca3395a'
v Initialized datom repository "testproj" at '/home/hornik/tmp/scratch/RtmpP2yYth/file1b44116879039e'
v Initialized datom repository "testproj" at '/home/hornik/tmp/scratch/RtmpP2yYth/file1b4411238db90a'
v Initialized datom repository "testproj" at '/home/hornik/tmp/scratch/RtmpP2yYth/file1b441123cf2ca3'
v Initialized datom repository "testproj" at '/home/hornik/tmp/scratch/RtmpP2yYth/file1b4411116ed58'
v Initialized datom repository "testproj" at '/home/hornik/tmp/scratch/RtmpP2yYth/file1b44113ee5b186'
v Initialized datom repository "testproj" at '/home/hornik/tmp/scratch/RtmpP2yYth/file1b44115b6fdd9c'
v Initialized datom repository "testproj" at '/home/hornik/tmp/scratch/RtmpP2yYth/file1b44115bf8400b'
v Initialized datom repository "testproj" at '/home/hornik/tmp/scratch/RtmpP2yYth/file1b441110d5484a'
v Initialized datom repository "testproj" at '/home/hornik/tmp/scratch/RtmpP2yYth/file1b44113c3273aa'
v Initialized datom repository "my-data" at '/home/hornik/tmp/scratch/RtmpP2yYth/file1b44112685f215'
v Initialized datom repository "testproj" at '/home/hornik/tmp/scratch/RtmpP2yYth/file1b44114851e221'
v Initialized datom repository "testproj" at '/home/hornik/tmp/scratch/RtmpP2yYth/file1b441116705d13'
v Initialized datom repository "testproj" at '/home/hornik/tmp/scratch/RtmpP2yYth/file1b4411793d7b3c'
v Initialized datom repository "testproj" at '/home/hornik/tmp/scratch/RtmpP2yYth/file1b4411727ff595'
v Initialized datom repository "testproj" at '/home/hornik/tmp/scratch/RtmpP2yYth/file1b4411201a92af'
v Initialized datom repository "testproj" at '/home/hornik/tmp/scratch/RtmpP2yYth/file1b441130ba0b3c'
v Initialized datom repository "testproj" at '/home/hornik/tmp/scratch/RtmpP2yYth/file1b441111bb12c8'
v Initialized datom repository "nogov-proj" at '/home/hornik/tmp/scratch/RtmpP2yYth/file1b4411210520ac'
v Initialized datom repository "nogov-proj" at '/home/hornik/tmp/scratch/RtmpP2yYth/file1b4411528329fb'
v Initialized datom repository "nogov-proj" at '/home/hornik/tmp/scratch/RtmpP2yYth/file1b44115a87bd29'
v Initialized datom repository "nogov-proj" at '/home/hornik/tmp/scratch/RtmpP2yYth/file1b441151d60af9'
v Initialized datom repository "nogov-proj" at '/home/hornik/tmp/scratch/RtmpP2yYth/file1b441155c5462a'
v Initialized datom repository "nogov-proj" at '/home/hornik/tmp/scratch/RtmpP2yYth/file1b44112b85a55e'
v Initialized datom repository "nogov-proj" at '/home/hornik/tmp/scratch/RtmpP2yYth/file1b4411234649c3'
v Initialized datom repository "testproj" at '/home/hornik/tmp/scratch/RtmpP2yYth/file1b44117883ebb1'
v Initialized datom repository "testproj" at '/home/hornik/tmp/scratch/RtmpP2yYth/file1b44114d5ffa60'
! Could not verify S3 namespace is free: S3 unavailable
v Initialized datom repository "testproj" at '/home/hornik/tmp/scratch/RtmpP2yYth/file1b441149ca593f'
v Initialized datom repository "testproj" at '/home/hornik/tmp/scratch/RtmpP2yYth/file1b4411239dd6d4'
v Initialized datom repository "testproj" at '/home/hornik/tmp/scratch/RtmpP2yYth/file1b441144ef161b'
! Could not verify S3 namespace is free: Network error
v Initialized datom repository "testproj" at '/home/hornik/tmp/scratch/RtmpP2yYth/file1b441112f2f864'
v Initialized datom repository "local_test" at '/home/hornik/tmp/scratch/RtmpP2yYth/file1b441121d09235'
v Initialized datom repository "local_conn_test" at '/home/hornik/tmp/scratch/RtmpP2yYth/file1b441150f9895'
v All 6 columns are hashable. This table is ready for `datom_write()`.
v All 1 column is hashable. This table is ready for `datom_write()`.
x 1 of 3 columns are not hashable.
x Column notes (<list>): List and blob columns are not hashable. Flatten to one
value per row with tidyr::unnest(), or serialize each element to character
(for example with jsonlite::toJSON() per element), before writing.
i Fix these before `datom_write()`, which refuses the whole table until they are resolved.
x Column z (<complex>): Complex columns are not hashable. Split into separate real and imaginary numeric columns, or convert to character, before writing.
i Fix these before `datom_write()`, which refuses the whole table until they are resolved.
x 1 of 2 columns are not hashable.
x Column bad (<POSIXlt/POSIXt>): POSIXlt columns are not hashable. Convert to POSIXct with as.POSIXct() before writing.
i Fix these before `datom_write()`, which refuses the whole table until they are resolved.
v All 2 columns are hashable. This table is ready for `datom_write()`.
x 1 of 2 columns are not hashable.
x Column bad (<list>): Nested data-frame (list) columns are not hashable. Model the inner table as its own datom table joined by a key with datom_parent() lineage, or flatten it with tidyr::unnest(), before writing.
i Fix these before `datom_write()`, which refuses the whole table until they are resolved.
v All 2 columns are hashable. This table is ready for `datom_write()`.
x 1 of 2 columns are not hashable.
x Column bad (<list>): List and blob columns are not hashable. Flatten to one value per row with tidyr::unnest(), or serialize each element to character (for example with jsonlite::toJSON() per element), before writing.
i Fix these before `datom_write()`, which refuses the whole table until they are resolved.
v All 2 columns are hashable. This table is ready for `datom_write()`.
x 1 of 2 columns are not hashable.
x Column bad (<units>): units columns are not hashable. Drop the unit with units::drop_units() and record the unit in the column name or a companion column (audit-friendly), before writing.
i Fix these before `datom_write()`, which refuses the whole table until they are resolved.
v All 2 columns are hashable. This table is ready for `datom_write()`.
x 1 of 2 columns are not hashable.
x Column bad (<sfc_POINT/sfc>): sf geometry (sfc) columns are not hashable. Convert to WKT text with sf::st_as_text() before writing.
i Fix these before `datom_write()`, which refuses the whole table until they are resolved.
v All 2 columns are hashable. This table is ready for `datom_write()`.
x 1 of 2 columns are not hashable.
x Column bad (<yearmon>): zoo::yearmon / yearqtr and chron columns are not hashable. Convert to Date/POSIXct or ISO-8601 text before writing.
i Fix these before `datom_write()`, which refuses the whole table until they are resolved.
v All 2 columns are hashable. This table is ready for `datom_write()`.
x 1 of 2 columns are not hashable.
x Column bad (<complex>): Complex columns are not hashable. Split into separate real and imaginary numeric columns, or convert to character, before writing.
i Fix these before `datom_write()`, which refuses the whole table until they are resolved.
v All 2 columns are hashable. This table is ready for `datom_write()`.
x 1 of 2 columns are not hashable.
x Column bad (<raw>): Raw columns are not hashable. Encode the bytes as character (for example base64) before writing.
i Fix these before `datom_write()`, which refuses the whole table until they are resolved.
v All 2 columns are hashable. This table is ready for `datom_write()`.
x 1 of 2 columns are not hashable.
x Column bad (<someExoticClass>): Columns of this class are not hashable. Convert to a supported type (logical, integer, double, character, factor, Date, POSIXct, difftime/hms, or bit64::integer64) before writing.
i Fix these before `datom_write()`, which refuses the whole table until they are resolved.
v All 2 columns are hashable. This table is ready for `datom_write()`.
x 3 of 4 columns are not hashable.
x Column blob (<list>): List and blob columns are not hashable. Flatten to one value per row with tidyr::unnest(), or serialize each element to character (for example with jsonlite::toJSON() per element), before writing.
x Column z (<complex>): Complex columns are not hashable. Split into separate real and imaginary numeric columns, or convert to character, before writing.
x Column bytes (<raw>): Raw columns are not hashable. Encode the bytes as character (for example base64) before writing.
i Fix these before `datom_write()`, which refuses the whole table until they are resolved.
Saving _problems/test-identity-contract-95.R
Saving _problems/test-identity-contract-129.R
Saving _problems/test-identity-contract-168.R
Saving _problems/test-identity-contract-212.R
Saving _problems/test-identity-contract-242.R
Saving _problems/test-identity-contract-287.R
Saving _problems/test-identity-contract-360.R
Saving _problems/test-identity-contract-389.R
Saving _problems/test-identity-contract-453.R
Saving _problems/test-identity-contract-491.R
Saving _problems/test-identity-contract-509.R
Saving _problems/test-identity-contract-531.R
Saving _problems/test-identity-contract-548.R
Saving _problems/test-identity-contract-602.R
-- datom status --
i Project: "test-project"
i Root: "test-bucket"
i Prefix: "proj"
i Role: "reader"
i Tables on S3: 2
-- datom status --
i Project: "test-project"
i Root: "test-bucket"
i Prefix: "proj"
i Role: "reader"
! Could not read S3 manifest.
-- datom status --
i Project: "test-project"
i Root: "test-bucket"
i Prefix: "proj"
i Role: "developer"
i Tables on S3: 0
! Git: 1 uncommitted change
'R/foo.R'
i Branch: "main"
-- datom status --
i Project: "test-project"
i Root: "test-bucket"
i Prefix: "proj"
i Role: "developer"
i Tables on S3: 0
v Git: clean (no uncommitted changes)
i Branch: "main"
-- datom status --
i Project: "test-project"
i Root: "test-bucket"
i Prefix: "proj"
i Role: "developer"
i Tables on S3: 0
v Git: clean (no uncommitted changes)
i Branch: "main"
! Input files: 1 new, 0 changed, 1 unchanged
-- datom status --
i Project: "test-project"
i Root: "test-bucket"
i Prefix: "proj"
i Role: "developer"
i Tables on S3: 0
v Git: clean (no uncommitted changes)
i Branch: "main"
-- datom status --
i Project: "test-project"
i Root: "test-bucket"
i Prefix: "proj"
i Role: "developer"
i Tables on S3: 0
v Git: clean (no uncommitted changes)
i Branch: "main"
! Input files: 0 new, 1 changed, 0 unchanged
-- datom status --
i Project: "test-project"
i Root: "test-bucket"
i Prefix: "proj"
i Role: "reader"
i Tables on S3: 0
-- datom status --
i Project: "test-project"
i Root: "test-bucket"
i Prefix: "proj"
i Role: "developer"
i Tables on S3: 0
v Git: clean (no uncommitted changes)
i Branch: "main"
i Input files: directory empty
v Wrote "derived_tbl" (full): "4f228026"
v Wrote "derived_tbl" (full): "0dc7904c"
v Wrote "tbl" (full): "7000d09b"
v Wrote "imported_tbl" (full): "87968959"
v Wrote "plain_tbl" (full): "0d0f5dd2"
v Wrote "raw_dm" (full): "2e0378b3"
v Wrote "plain_tbl" (full): "0d0f5dd2"
v Wrote "my_tbl" (full): "e2c7b694"
v Wrote "tbl" (full): "0d0f5dd2"
v Wrote "tbl" (full): "0d0f5dd2"
v Wrote "synced_tbl" (full): "7e6a459f"
v Wrote "derived_tbl" (full): "0d0f5dd2"
i No changes detected for "unchanged_tbl". Skipping write.
v Wrote "t" (full): "bd26d175"
v Wrote "w" (full): "a26428f4"
i No changes detected for "unchanged_tbl". Skipping write.
v Wrote "sales" (full): "3d2d26c8"
v Wrote "tbl" (metadata_only): "0d0f5dd2"
v Wrote "my_table" (full): "0d0f5dd2"
i No changes detected for "t1". Skipping write.
i No changes detected for "t2". Skipping write.
i No metadata changes for "tbl". Skipping sync.
v Synced metadata for "tbl" to S3.
v Synced metadata for "tbl" to S3.
v Synced metadata for "tbl" to S3.
v Synced metadata for "tbl" to S3.
i Ref location differs from store -- pulling git to sync.
i Ref location differs from store -- pulling git to sync.
v Updated '.datom/project.yaml' data store pointer for "TEST_PROJECT".
v Updated '.datom/project.yaml' data store pointer for "TEST_PROJECT".
v Updated '.datom/project.yaml' data store pointer for "TEST_PROJECT".
v Updated '.datom/project.yaml' data store pointer for "TEST_PROJECT".
v Updated '.datom/project.yaml' data store pointer for "TEST_PROJECT".
v Updated '.datom/project.yaml' data store pointer for "TEST_PROJECT".
i Deleting data repo for "TEST_PROJECT"...
x GitHub repo deletion step failed: Cannot delete GitHub repository: data_repo_url is not set on this conn. i Rebuild the conn with `datom_get_conn()` and retry.
i Continuing with remaining teardown steps...
i Removing local clone 'clone'...
v Removed local clone.
i Deleting data repo for "TEST_PROJECT"...
x GitHub repo deletion step failed: Cannot delete GitHub repository: data_repo_url is not set on this conn. i Rebuild the conn with `datom_get_conn()` and retry.
i Continuing with remaining teardown steps...
i Removing local clone 'clone'...
v Removed local clone.
i Deleting data repo for "TEST_PROJECT"...
x GitHub repo deletion step failed: Cannot delete GitHub repository: data_repo_url is not set on this conn. i Rebuild the conn with `datom_get_conn()` and retry.
i Continuing with remaining teardown steps...
i Deleting data repo for "TEST_PROJECT"...
i No GitHub remote found -- skipping repo deletion.
i Removing local clone 'clone'...
v Removed local clone.
i Deleting data repo for "TEST_PROJECT"...
! No GitHub PAT on conn. Delete "org/repo" manually.
i Removing local clone 'clone'...
v Removed local clone.
i Deleting data repo for "TEST_PROJECT"...
i Deleting GitHub repo "org/my-repo"...
v Deleted GitHub repo "org/my-repo".
i Removing local clone 'clone'...
v Removed local clone.
i Deleting data repo for "TEST_PROJECT"...
x GitHub repo deletion step failed: Cannot delete GitHub repository: data_repo_url is not set on this conn. i Rebuild the conn with `datom_get_conn()` and retry.
i Continuing with remaining teardown steps...
i Removing local clone 'clone'...
v Removed local clone.
i Deleting data repo for "TEST_PROJECT"...
x GitHub repo deletion step failed: Cannot delete GitHub repository: data_repo_url is not set on this conn. i Rebuild the conn with `datom_get_conn()` and retry.
i Continuing with remaining teardown steps...
v Wrote data-side governance record for "TEST_PROJECT".
v Wrote data-side governance record for "TEST_PROJECT".
v Wrote data-side governance record for "TEST_PROJECT".
v Wrote data-side governance record for "TEST_PROJECT".
i Source namespace is empty -- nothing to copy.
i Copying 2 objects ("local" -> "local")...
v Copied 2 objects (26 bytes total).
i Copying 1 object ("local" -> "S3")...
v Copied 1 object (15 bytes total).
i Copying 1 object ("S3" -> "local")...
v Copied 1 object (21 bytes total).
i Copying 1 object ("S3" -> "S3")...
v Copied 1 object (15 bytes total).
i Copying 2 objects ("S3" -> "S3")...
v Copied 2 objects (10 bytes total).
i Verifying 1 object -- "structural (size)" mode...
v All 1 object verified successfully.
i Verifying 1 object -- "structural (size)" mode...
! 1 of 1 object failed verification.
i Verifying 1 object -- "structural (size)" mode...
! 1 of 1 object failed verification.
i Verifying 1 object -- "structural (size)" mode...
v All 1 object verified successfully.
i Verifying 1 object -- "structural (size)" mode...
! 1 of 1 object failed verification.
i Verifying 1 object -- "content (hash)" mode...
v All 1 object verified successfully.
i Verifying 1 object -- "content (hash)" mode...
! 1 of 1 object failed verification.
i Verifying 1 object -- "content (hash)" mode...
v All 1 object verified successfully.
i Verifying 1 object -- "content (hash)" mode...
! 1 of 1 object failed verification.
i Verifying 2 objects -- "structural (size)" mode...
v All 2 objects verified successfully.
i Verifying 2 objects -- "structural (size)" mode...
v All 2 objects verified successfully.
i Verifying 1 object -- "structural (size)" mode...
v All 1 object verified successfully.
v Created GitHub repo "myorg/newrepo".
i Reusing empty GitHub repo "myorg/emptyrepo".
v Created GitHub repo "myuser/myrepo".
i Created store directory '/home/hornik/tmp/scratch/RtmpP2yYth/file1b4411511b41ce/new/nested'.
v Created GitHub repo "myorg/newrepo".
i No files found in '/home/hornik/tmp/scratch/RtmpP2yYth/file1b44116dab171f/input_files' matching "*".
i Scanned 2 files: 2 new, 0 changed, 0 unchanged.
i Scanned 1 file: 0 new, 0 changed, 1 unchanged.
i Scanned 1 file: 0 new, 1 changed, 0 unchanged.
i Scanned 3 files: 1 new, 1 changed, 1 unchanged.
i Scanned 2 files: 2 new, 0 changed, 0 unchanged.
i Scanned 1 file: 1 new, 0 changed, 0 unchanged.
i Scanned 1 file: 1 new, 0 changed, 0 unchanged.
i Scanned 1 file: 1 new, 0 changed, 0 unchanged.
i No files found in '/home/hornik/tmp/scratch/RtmpP2yYth/file1b441153221a12/input_files' matching "*.xlsx".
i No new or changed files. Nothing to sync.
i Syncing 1 table...
v "customers" synced (new).
i Sync complete: 1 succeeded, 0 failed, 0 skipped.
i Syncing 1 table...
v "changed_tbl" synced (changed).
i Sync complete: 1 succeeded, 0 failed, 1 skipped.
i Syncing 2 tables...
x Failed to sync "bad_tbl": Import failed for bad file
v "good_tbl" synced (new).
i Sync complete: 1 succeeded, 1 failed, 0 skipped.
i Syncing 2 tables...
i Syncing 1 table...
v "tbl" synced (new).
i Sync complete: 1 succeeded, 0 failed, 0 skipped.
i Syncing 1 table...
v "tbl" synced (new).
i Sync complete: 1 succeeded, 0 failed, 0 skipped.
i Scanned 2 files: 1 new, 0 changed, 0 unchanged.
! 1 file in an unsupported format: "bad".
x 1 file in an unsupported format, not synced: "bad".
i Syncing 1 table...
v "good" synced (new).
i Sync complete: 1 succeeded, 1 failed, 0 skipped.
v Synced 1 repo-level file.
i Metadata sync complete: 1 table synced, 0 errors.
v Synced 1 repo-level file.
i Metadata sync complete: 0 tables synced, 0 errors.
v Synced 1 repo-level file.
i Metadata sync complete: 0 tables synced, 0 errors.
v Synced 1 repo-level file.
x Failed to sync "bad_tbl": storage upload failed
i Metadata sync complete: 1 table synced, 1 error.
v Synced 1 repo-level file.
i Metadata sync complete: 1 table synced, 0 errors.
v Synced 1 repo-level file.
i Metadata sync complete: 0 tables synced, 0 errors.
v Synced 1 repo-level file.
i Metadata sync complete: 3 tables synced, 0 errors.
cloning into '/home/hornik/tmp/scratch/RtmpP2yYth/file1b441113177290'...
[updated] b3fd70fdc8..025efe8d45 refs/remotes/origin/main
cloning into '/home/hornik/tmp/scratch/RtmpP2yYth/file1b4411166c8512'...
[updated] b3fd70fdc8..b90421149f refs/remotes/origin/main
cloning into '/home/hornik/tmp/scratch/RtmpP2yYth/file1b44116a644239'...
[updated] c2c73e850b..40323cd856 refs/remotes/origin/main
cloning into '/home/hornik/tmp/scratch/RtmpP2yYth/file1b44113770ec7a'...
[updated] c2c73e850b..851a05559d refs/remotes/origin/main
cloning into '/home/hornik/tmp/scratch/RtmpP2yYth/file1b44117f40a083'...
[updated] ecbd0f7952..debdbaa0cc refs/remotes/origin/main
cloning into '/home/hornik/tmp/scratch/RtmpP2yYth/file1b441171703cd4'...
[updated] ecbd0f7952..f921b225c3 refs/remotes/origin/main
! Could not fetch from remote: simulated network failure
cloning into '/home/hornik/tmp/scratch/RtmpP2yYth/file1b44116faecdb0'...
cloning into '/home/hornik/tmp/scratch/RtmpP2yYth/file1b44116036efb3'...
cloning into '/home/hornik/tmp/scratch/RtmpP2yYth/file1b44111f37e51f'...
i Cloning gov repo to '/home/hornik/tmp/scratch/RtmpP2yYth/file1b441130b7316f/gov-clone'...
cloning into '/home/hornik/tmp/scratch/RtmpP2yYth/file1b441130b7316f/gov-clone'...
v Cloned gov repo to '/home/hornik/tmp/scratch/RtmpP2yYth/file1b441130b7316f/gov-clone'.
cloning into '/home/hornik/tmp/scratch/RtmpP2yYth/file1b44114b450d54'...
cloning into '/home/hornik/tmp/scratch/RtmpP2yYth/file1b44116ecf476c'...
cloning into '/home/hornik/tmp/scratch/RtmpP2yYth/file1b441152fcf12'...
i No governance attached -- skipping dispatch/ref/migration_history checks.
v All checks passed. Git and S3 are consistent.
i No governance attached -- skipping dispatch/ref/migration_history checks.
! Found 1 issue: 1 repo-level, 0 table-level.
i No governance attached -- skipping dispatch/ref/migration_history checks.
! Found 1 issue: 0 repo-level, 1 table-level.
i No governance attached -- skipping dispatch/ref/migration_history checks.
! Found 1 issue: 0 repo-level, 1 table-level.
i No governance attached -- skipping dispatch/ref/migration_history checks.
v All checks passed. Git and S3 are consistent.
i No governance attached -- skipping dispatch/ref/migration_history checks.
v All checks passed. Git and S3 are consistent.
i No governance attached -- skipping dispatch/ref/migration_history checks.
! Found 1 issue: 1 repo-level, 0 table-level.
i Attempting to fix by syncing metadata to S3...
v Fix applied. Re-run `datom_validate()` to verify.
i No governance attached -- skipping dispatch/ref/migration_history checks.
v All checks passed. Git and S3 are consistent.
i No governance attached -- skipping dispatch/ref/migration_history checks.
! Found 1 issue: 0 repo-level, 1 table-level.
i No governance attached -- skipping dispatch/ref/migration_history checks.
! Found 1 issue: 1 repo-level, 0 table-level.
i Attempting to fix by syncing metadata to S3...
x Fix failed: Sync failed
i No governance attached -- skipping dispatch/ref/migration_history checks.
v All checks passed. Git and S3 are consistent.
x Project name mismatch: manifest says "DIFFERENT_PROJECT" but connection says "MY_PROJECT".
i This may indicate a namespace collision. Check bucket/prefix configuration.
i No governance attached -- skipping dispatch/ref/migration_history checks.
! Found 0 issues: 0 repo-level, 0 table-level.
i No governance attached -- skipping dispatch/ref/migration_history checks.
v All checks passed. Git and S3 are consistent.
i No governance attached -- skipping dispatch/ref/migration_history checks.
v All checks passed. Git and S3 are consistent.
i No governance attached -- skipping dispatch/ref/migration_history checks.
v All checks passed. Git and S3 are consistent.
[ FAIL 26 | WARN 0 | SKIP 1 | PASS 2323 ]
══ Skipped tests (1) ═══════════════════════════════════════════════════════════
• reference script absent (e.g. CRAN, dev/ Rbuildignored) (1):
'test-utils-sha.R:915:3'
══ Failed tests ════════════════════════════════════════════════════════════════
── Error ('test-conn.R:2085:5'): datom_clone aborts if cloned repo is not a datom repo ──
Error in `git2r::push(work_repo, name = "origin", refspec = "refs/heads/master", set_upstream = TRUE)`: Error in 'git2r_push': src refspec 'refs/heads/master' does not match any existing object
Backtrace:
▆
1. ├─withr::with_tempdir(...) at test-conn.R:2074:3
2. │ └─withr::with_dir(tmp, code)
3. │ └─base::force(code)
4. └─git2r::push(...) at test-conn.R:2085:5
── Error ('test-conn.R:2131:5'): datom_clone clones and returns a datom_conn ───
Error in `git2r::push(work_repo, name = "origin", refspec = "refs/heads/master", set_upstream = TRUE)`: Error in 'git2r_push': src refspec 'refs/heads/master' does not match any existing object
Backtrace:
▆
1. ├─withr::with_tempdir(...) at test-conn.R:2100:3
2. │ └─withr::with_dir(tmp, code)
3. │ └─base::force(code)
4. └─git2r::push(...) at test-conn.R:2131:5
── Error ('test-conn.R:2183:5'): datom_clone sets a local git identity on the fresh clone (#74 E) ──
Error in `git2r::push(work_repo, name = "origin", refspec = "refs/heads/master", set_upstream = TRUE)`: Error in 'git2r_push': src refspec 'refs/heads/master' does not match any existing object
Backtrace:
▆
1. ├─withr::with_tempdir(...) at test-conn.R:2154:3
2. │ └─withr::with_dir(tmp, code)
3. │ └─base::force(code)
4. └─git2r::push(...) at test-conn.R:2183:5
── Error ('test-conn.R:2246:5'): datom_clone with gov_repo_url also clones gov repo ──
Error in `git2r::push(work_repo, "origin", "refs/heads/master", set_upstream = TRUE)`: Error in 'git2r_push': src refspec 'refs/heads/master' does not match any existing object
Backtrace:
▆
1. ├─withr::with_tempdir(...) at test-conn.R:2245:3
2. │ └─withr::with_dir(tmp, code)
3. │ └─base::force(code)
4. └─datom (local) .make_bare_datom_repo() at test-conn.R:2246:5
5. └─git2r::push(work_repo, "origin", "refs/heads/master", set_upstream = TRUE) at test-conn.R:2240:3
── Error ('test-conn.R:2273:5'): datom_clone reuses existing gov clone with matching URL ──
Error in `git2r::push(work_repo, "origin", "refs/heads/master", set_upstream = TRUE)`: Error in 'git2r_push': src refspec 'refs/heads/master' does not match any existing object
Backtrace:
▆
1. ├─withr::with_tempdir(...) at test-conn.R:2272:3
2. │ └─withr::with_dir(tmp, code)
3. │ └─base::force(code)
4. └─datom (local) .make_bare_datom_repo() at test-conn.R:2273:5
5. └─git2r::push(work_repo, "origin", "refs/heads/master", set_upstream = TRUE) at test-conn.R:2240:3
── Error ('test-conn.R:2301:5'): datom_clone aborts when existing gov clone has uncommitted changes ──
Error in `git2r::push(work_repo, "origin", "refs/heads/master", set_upstream = TRUE)`: Error in 'git2r_push': src refspec 'refs/heads/master' does not match any existing object
Backtrace:
▆
1. ├─withr::with_tempdir(...) at test-conn.R:2300:3
2. │ └─withr::with_dir(tmp, code)
3. │ └─base::force(code)
4. └─datom (local) .make_bare_datom_repo() at test-conn.R:2301:5
5. └─git2r::push(work_repo, "origin", "refs/heads/master", set_upstream = TRUE) at test-conn.R:2240:3
── Error ('test-conn.R:2331:5'): datom_clone aborts when existing gov clone has different remote URL ──
Error in `git2r::push(work_repo, "origin", "refs/heads/master", set_upstream = TRUE)`: Error in 'git2r_push': src refspec 'refs/heads/master' does not match any existing object
Backtrace:
▆
1. ├─withr::with_tempdir(...) at test-conn.R:2330:3
2. │ └─withr::with_dir(tmp, code)
3. │ └─base::force(code)
4. └─datom (local) .make_bare_datom_repo() at test-conn.R:2331:5
5. └─git2r::push(work_repo, "origin", "refs/heads/master", set_upstream = TRUE) at test-conn.R:2240:3
── Error ('test-identity-contract.R:95:3'): Feature: datom-cv1, S1 -- an unchanged input is skipped before parsing ──
Error in `git2r::push(repo, name = "origin", refspec = "refs/heads/master", set_upstream = TRUE)`: Error in 'git2r_push': src refspec 'refs/heads/master' does not match any existing object
Backtrace:
▆
1. └─datom (local) local_identity_project() at test-identity-contract.R:95:3
2. └─git2r::push(...) at test-identity-contract.R:43:3
── Error ('test-identity-contract.R:129:3'): Feature: datom-cv1, S1 -- an unchanged sibling is skipped while a changed one syncs ──
Error in `git2r::push(repo, name = "origin", refspec = "refs/heads/master", set_upstream = TRUE)`: Error in 'git2r_push': src refspec 'refs/heads/master' does not match any existing object
Backtrace:
▆
1. └─datom (local) local_identity_project() at test-identity-contract.R:129:3
2. └─git2r::push(...) at test-identity-contract.R:43:3
── Error ('test-identity-contract.R:168:3'): Feature: datom-cv1, S2 -- bytes and content both change: full write at the new data_sha ──
Error in `git2r::push(repo, name = "origin", refspec = "refs/heads/master", set_upstream = TRUE)`: Error in 'git2r_push': src refspec 'refs/heads/master' does not match any existing object
Backtrace:
▆
1. └─datom (local) local_identity_project() at test-identity-contract.R:168:3
2. └─git2r::push(...) at test-identity-contract.R:43:3
── Error ('test-identity-contract.R:212:3'): Feature: datom-cv1, S5 -- a derived first write is full, data_sha-addressed, with no original_file_sha ──
Error in `git2r::push(repo, name = "origin", refspec = "refs/heads/master", set_upstream = TRUE)`: Error in 'git2r_push': src refspec 'refs/heads/master' does not match any existing object
Backtrace:
▆
1. └─datom (local) local_identity_project() at test-identity-contract.R:212:3
2. └─git2r::push(...) at test-identity-contract.R:43:3
── Error ('test-identity-contract.R:242:3'): Feature: datom-cv1, S6 -- an identical re-derive is a no-op: no commit, upload, or history entry ──
Error in `git2r::push(repo, name = "origin", refspec = "refs/heads/master", set_upstream = TRUE)`: Error in 'git2r_push': src refspec 'refs/heads/master' does not match any existing object
Backtrace:
▆
1. └─datom (local) local_identity_project() at test-identity-contract.R:242:3
2. └─git2r::push(...) at test-identity-contract.R:43:3
── Error ('test-identity-contract.R:287:3'): Feature: datom-cv1, S3 -- a re-export with identical content is metadata_only, carries parquet_sha forward, and settles ──
Error in `git2r::push(repo, name = "origin", refspec = "refs/heads/master", set_upstream = TRUE)`: Error in 'git2r_push': src refspec 'refs/heads/master' does not match any existing object
Backtrace:
▆
1. └─datom (local) local_identity_project() at test-identity-contract.R:287:3
2. └─git2r::push(...) at test-identity-contract.R:43:3
── Error ('test-identity-contract.R:360:3'): Feature: datom-cv1, S3 -- the carried-forward parquet_sha still verifies on read ──
Error in `git2r::push(repo, name = "origin", refspec = "refs/heads/master", set_upstream = TRUE)`: Error in 'git2r_push': src refspec 'refs/heads/master' does not match any existing object
Backtrace:
▆
1. └─datom (local) local_identity_project() at test-identity-contract.R:360:3
2. └─git2r::push(...) at test-identity-contract.R:43:3
── Error ('test-identity-contract.R:389:3'): Feature: datom-cv1, S4 -- re-syncing an older content-matching file appends no duplicate version ──
Error in `git2r::push(repo, name = "origin", refspec = "refs/heads/master", set_upstream = TRUE)`: Error in 'git2r_push': src refspec 'refs/heads/master' does not match any existing object
Backtrace:
▆
1. └─datom (local) local_identity_project() at test-identity-contract.R:389:3
2. └─git2r::push(...) at test-identity-contract.R:43:3
── Error ('test-identity-contract.R:453:3'): Feature: datom-cv1, S4 -- the dedup guard scans the whole history, not just the latest entry ──
Error in `git2r::push(repo, name = "origin", refspec = "refs/heads/master", set_upstream = TRUE)`: Error in 'git2r_push': src refspec 'refs/heads/master' does not match any existing object
Backtrace:
▆
1. └─datom (local) local_identity_project() at test-identity-contract.R:453:3
2. └─git2r::push(...) at test-identity-contract.R:43:3
── Error ('test-identity-contract.R:491:3'): Feature: datom-cv1, read-time integrity -- a corrupted stored object aborts the read ──
Error in `git2r::push(repo, name = "origin", refspec = "refs/heads/master", set_upstream = TRUE)`: Error in 'git2r_push': src refspec 'refs/heads/master' does not match any existing object
Backtrace:
▆
1. └─datom (local) local_identity_project() at test-identity-contract.R:491:3
2. └─git2r::push(...) at test-identity-contract.R:43:3
── Error ('test-identity-contract.R:509:3'): Feature: datom-cv1, read-time integrity -- a swapped-in valid parquet is caught before parsing ──
Error in `git2r::push(repo, name = "origin", refspec = "refs/heads/master", set_upstream = TRUE)`: Error in 'git2r_push': src refspec 'refs/heads/master' does not match any existing object
Backtrace:
▆
1. └─datom (local) local_identity_project() at test-identity-contract.R:509:3
2. └─git2r::push(...) at test-identity-contract.R:43:3
── Error ('test-identity-contract.R:531:3'): Feature: datom-cv1, read-time integrity -- legacy metadata without parquet_sha still reads ──
Error in `git2r::push(repo, name = "origin", refspec = "refs/heads/master", set_upstream = TRUE)`: Error in 'git2r_push': src refspec 'refs/heads/master' does not match any existing object
Backtrace:
▆
1. └─datom (local) local_identity_project() at test-identity-contract.R:531:3
2. └─git2r::push(...) at test-identity-contract.R:43:3
── Error ('test-identity-contract.R:548:3'): Feature: datom-cv1, revert-to-older content reuses the history parquet_sha without overwriting the object ──
Error in `git2r::push(repo, name = "origin", refspec = "refs/heads/master", set_upstream = TRUE)`: Error in 'git2r_push': src refspec 'refs/heads/master' does not match any existing object
Backtrace:
▆
1. └─datom (local) local_identity_project() at test-identity-contract.R:548:3
2. └─git2r::push(...) at test-identity-contract.R:43:3
── Error ('test-identity-contract.R:602:3'): Feature: datom-cv1, provenance -- hash_algo and imported-path original_file_sha are recorded ──
Error in `git2r::push(repo, name = "origin", refspec = "refs/heads/master", set_upstream = TRUE)`: Error in 'git2r_push': src refspec 'refs/heads/master' does not match any existing object
Backtrace:
▆
1. └─datom (local) local_identity_project() at test-identity-contract.R:602:3
2. └─git2r::push(...) at test-identity-contract.R:43:3
── Error ('test-sync.R:1081:5'): datom_pull reports already up to date when nothing to pull ──
Error in `git2r::push(repo, name = "origin", refspec = "refs/heads/master", set_upstream = TRUE)`: Error in 'git2r_push': src refspec 'refs/heads/master' does not match any existing object
Backtrace:
▆
1. ├─withr::with_tempdir(...) at test-sync.R:1070:3
2. │ └─withr::with_dir(tmp, code)
3. │ └─base::force(code)
4. └─git2r::push(...) at test-sync.R:1081:5
── Error ('test-sync.R:1130:5'): datom_pull counts commits pulled from upstream ──
Error in `git2r::push(repo, name = "origin", refspec = "refs/heads/master", set_upstream = TRUE)`: Error in 'git2r_push': src refspec 'refs/heads/master' does not match any existing object
Backtrace:
▆
1. ├─withr::with_tempdir(...) at test-sync.R:1119:3
2. │ └─withr::with_dir(tmp, code)
3. │ └─base::force(code)
4. └─git2r::push(...) at test-sync.R:1130:5
── Error ('test-sync.R:1175:5'): datom_pull aborts on merge conflict ───────────
Error in `git2r::push(repo, name = "origin", refspec = "refs/heads/master", set_upstream = TRUE)`: Error in 'git2r_push': src refspec 'refs/heads/master' does not match any existing object
Backtrace:
▆
1. ├─withr::with_tempdir(...) at test-sync.R:1165:3
2. │ └─withr::with_dir(tmp, code)
3. │ └─base::force(code)
4. └─git2r::push(...) at test-sync.R:1175:5
── Error ('test-sync.R:1212:5'): datom_pull returns invisible result ───────────
Error in `git2r::push(repo, name = "origin", refspec = "refs/heads/master", set_upstream = TRUE)`: Error in 'git2r_push': src refspec 'refs/heads/master' does not match any existing object
Backtrace:
▆
1. ├─withr::with_tempdir(...) at test-sync.R:1202:3
2. │ └─withr::with_dir(tmp, code)
3. │ └─base::force(code)
4. └─git2r::push(...) at test-sync.R:1212:5
── Error ('test-sync.R:1235:5'): datom_pull is data-repo-only and does not touch the gov repo ──
Error in `git2r::push(repo, "origin", "refs/heads/master", set_upstream = TRUE)`: Error in 'git2r_push': src refspec 'refs/heads/master' does not match any existing object
Backtrace:
▆
1. ├─withr::with_tempdir(...) at test-sync.R:1226:3
2. │ └─withr::with_dir(tmp, code)
3. │ └─base::force(code)
4. └─git2r::push(repo, "origin", "refs/heads/master", set_upstream = TRUE) at test-sync.R:1235:5
[ FAIL 26 | WARN 0 | SKIP 1 | PASS 2323 ]
Error:
! Test failures.
Execution halted
Flavor: r-devel-linux-x86_64-debian-gcc
Version: 0.1.1
Check: tests
Result: ERROR
Running ‘testthat.R’ [84s/135s]
Running the tests in ‘tests/testthat.R’ failed.
Complete output:
> # This file is part of the standard setup for testthat.
> # It is recommended that you do not modify it.
> #
> # Where should you do additional test configuration?
> # Learn more about the roles of various files in:
> # * https://r-pkgs.org/testing-design.html#sec-tests-files-overview
> # * https://testthat.r-lib.org/articles/special-files.html
>
> library(testthat)
> library(datom)
>
> test_check("datom")
-- datom connection
* Project: "proj"
* Backend: "s3"
* Role: "reader"
* Data root: "b"
* Data region: "us-east-1"
* Governance: not attached
-- datom connection
* Project: "proj"
* Backend: "s3"
* Role: "reader"
* Data root: "b"
* Data region: "us-east-1"
* Governance: not attached
v Initialized datom repository "testproj" at '/home/hornik/tmp/scratch/RtmpuomNqq/file2cae7f3d1717f5'
v Initialized datom repository "testproj" at '/home/hornik/tmp/scratch/RtmpuomNqq/file2cae7f12fd943f'
v Initialized datom repository "testproj" at '/home/hornik/tmp/scratch/RtmpuomNqq/file2cae7f51229256'
v Initialized datom repository "testproj" at '/home/hornik/tmp/scratch/RtmpuomNqq/file2cae7f31b78125'
v Initialized datom repository "testproj" at '/home/hornik/tmp/scratch/RtmpuomNqq/file2cae7f60cb3ca3'
v Initialized datom repository "testproj" at '/home/hornik/tmp/scratch/RtmpuomNqq/file2cae7f5dfb0ea2'
v Initialized datom repository "testproj" at '/home/hornik/tmp/scratch/RtmpuomNqq/file2cae7f5872613c'
v Initialized datom repository "testproj" at '/home/hornik/tmp/scratch/RtmpuomNqq/file2cae7f1c2b9ab5'
v Initialized datom repository "testproj" at '/home/hornik/tmp/scratch/RtmpuomNqq/file2cae7f490708b1'
v Initialized datom repository "testproj" at '/home/hornik/tmp/scratch/RtmpuomNqq/file2cae7f10aa0777'
v Initialized datom repository "testproj" at '/home/hornik/tmp/scratch/RtmpuomNqq/file2cae7f3a19eab3'
v Initialized datom repository "testproj" at '/home/hornik/tmp/scratch/RtmpuomNqq/file2cae7f1e917b6d'
v Initialized datom repository "my-data" at '/home/hornik/tmp/scratch/RtmpuomNqq/file2cae7f768ca196'
v Initialized datom repository "testproj" at '/home/hornik/tmp/scratch/RtmpuomNqq/file2cae7f6b346f69'
v Initialized datom repository "testproj" at '/home/hornik/tmp/scratch/RtmpuomNqq/file2cae7f5f9c59ae'
v Initialized datom repository "testproj" at '/home/hornik/tmp/scratch/RtmpuomNqq/file2cae7f25b1c2bf'
v Initialized datom repository "testproj" at '/home/hornik/tmp/scratch/RtmpuomNqq/file2cae7f5848a8ac'
v Initialized datom repository "testproj" at '/home/hornik/tmp/scratch/RtmpuomNqq/file2cae7f25dcc305'
v Initialized datom repository "testproj" at '/home/hornik/tmp/scratch/RtmpuomNqq/file2cae7f48be2bee'
v Initialized datom repository "testproj" at '/home/hornik/tmp/scratch/RtmpuomNqq/file2cae7f6d9aabed'
v Initialized datom repository "nogov-proj" at '/home/hornik/tmp/scratch/RtmpuomNqq/file2cae7f6574af2b'
v Initialized datom repository "nogov-proj" at '/home/hornik/tmp/scratch/RtmpuomNqq/file2cae7f33303186'
v Initialized datom repository "nogov-proj" at '/home/hornik/tmp/scratch/RtmpuomNqq/file2cae7f749dd681'
v Initialized datom repository "nogov-proj" at '/home/hornik/tmp/scratch/RtmpuomNqq/file2cae7f11dd391e'
v Initialized datom repository "nogov-proj" at '/home/hornik/tmp/scratch/RtmpuomNqq/file2cae7f264e0714'
v Initialized datom repository "nogov-proj" at '/home/hornik/tmp/scratch/RtmpuomNqq/file2cae7f556c9610'
v Initialized datom repository "nogov-proj" at '/home/hornik/tmp/scratch/RtmpuomNqq/file2cae7f3fca3def'
v Initialized datom repository "testproj" at '/home/hornik/tmp/scratch/RtmpuomNqq/file2cae7f71f84fe3'
v Initialized datom repository "testproj" at '/home/hornik/tmp/scratch/RtmpuomNqq/file2cae7f30143292'
! Could not verify S3 namespace is free: S3 unavailable
v Initialized datom repository "testproj" at '/home/hornik/tmp/scratch/RtmpuomNqq/file2cae7f4e22f674'
v Initialized datom repository "testproj" at '/home/hornik/tmp/scratch/RtmpuomNqq/file2cae7f4845935b'
v Initialized datom repository "testproj" at '/home/hornik/tmp/scratch/RtmpuomNqq/file2cae7f7ea1db69'
! Could not verify S3 namespace is free: Network error
v Initialized datom repository "testproj" at '/home/hornik/tmp/scratch/RtmpuomNqq/file2cae7f1ec1906f'
v Initialized datom repository "local_test" at '/home/hornik/tmp/scratch/RtmpuomNqq/file2cae7f2ee402d9'
v Initialized datom repository "local_conn_test" at '/home/hornik/tmp/scratch/RtmpuomNqq/file2cae7f5e4be6f4'
v All 6 columns are hashable. This table is ready for `datom_write()`.
v All 1 column is hashable. This table is ready for `datom_write()`.
x 1 of 3 columns are not hashable.
x Column notes (<list>): List and blob columns are not hashable. Flatten to one
value per row with tidyr::unnest(), or serialize each element to character
(for example with jsonlite::toJSON() per element), before writing.
i Fix these before `datom_write()`, which refuses the whole table until they are resolved.
x Column z (<complex>): Complex columns are not hashable. Split into separate real and imaginary numeric columns, or convert to character, before writing.
i Fix these before `datom_write()`, which refuses the whole table until they are resolved.
x 1 of 2 columns are not hashable.
x Column bad (<POSIXlt/POSIXt>): POSIXlt columns are not hashable. Convert to POSIXct with as.POSIXct() before writing.
i Fix these before `datom_write()`, which refuses the whole table until they are resolved.
v All 2 columns are hashable. This table is ready for `datom_write()`.
x 1 of 2 columns are not hashable.
x Column bad (<list>): Nested data-frame (list) columns are not hashable. Model the inner table as its own datom table joined by a key with datom_parent() lineage, or flatten it with tidyr::unnest(), before writing.
i Fix these before `datom_write()`, which refuses the whole table until they are resolved.
v All 2 columns are hashable. This table is ready for `datom_write()`.
x 1 of 2 columns are not hashable.
x Column bad (<list>): List and blob columns are not hashable. Flatten to one value per row with tidyr::unnest(), or serialize each element to character (for example with jsonlite::toJSON() per element), before writing.
i Fix these before `datom_write()`, which refuses the whole table until they are resolved.
v All 2 columns are hashable. This table is ready for `datom_write()`.
x 1 of 2 columns are not hashable.
x Column bad (<units>): units columns are not hashable. Drop the unit with units::drop_units() and record the unit in the column name or a companion column (audit-friendly), before writing.
i Fix these before `datom_write()`, which refuses the whole table until they are resolved.
v All 2 columns are hashable. This table is ready for `datom_write()`.
x 1 of 2 columns are not hashable.
x Column bad (<sfc_POINT/sfc>): sf geometry (sfc) columns are not hashable. Convert to WKT text with sf::st_as_text() before writing.
i Fix these before `datom_write()`, which refuses the whole table until they are resolved.
v All 2 columns are hashable. This table is ready for `datom_write()`.
x 1 of 2 columns are not hashable.
x Column bad (<yearmon>): zoo::yearmon / yearqtr and chron columns are not hashable. Convert to Date/POSIXct or ISO-8601 text before writing.
i Fix these before `datom_write()`, which refuses the whole table until they are resolved.
v All 2 columns are hashable. This table is ready for `datom_write()`.
x 1 of 2 columns are not hashable.
x Column bad (<complex>): Complex columns are not hashable. Split into separate real and imaginary numeric columns, or convert to character, before writing.
i Fix these before `datom_write()`, which refuses the whole table until they are resolved.
v All 2 columns are hashable. This table is ready for `datom_write()`.
x 1 of 2 columns are not hashable.
x Column bad (<raw>): Raw columns are not hashable. Encode the bytes as character (for example base64) before writing.
i Fix these before `datom_write()`, which refuses the whole table until they are resolved.
v All 2 columns are hashable. This table is ready for `datom_write()`.
x 1 of 2 columns are not hashable.
x Column bad (<someExoticClass>): Columns of this class are not hashable. Convert to a supported type (logical, integer, double, character, factor, Date, POSIXct, difftime/hms, or bit64::integer64) before writing.
i Fix these before `datom_write()`, which refuses the whole table until they are resolved.
v All 2 columns are hashable. This table is ready for `datom_write()`.
x 3 of 4 columns are not hashable.
x Column blob (<list>): List and blob columns are not hashable. Flatten to one value per row with tidyr::unnest(), or serialize each element to character (for example with jsonlite::toJSON() per element), before writing.
x Column z (<complex>): Complex columns are not hashable. Split into separate real and imaginary numeric columns, or convert to character, before writing.
x Column bytes (<raw>): Raw columns are not hashable. Encode the bytes as character (for example base64) before writing.
i Fix these before `datom_write()`, which refuses the whole table until they are resolved.
Saving _problems/test-identity-contract-95.R
Saving _problems/test-identity-contract-129.R
Saving _problems/test-identity-contract-168.R
Saving _problems/test-identity-contract-212.R
Saving _problems/test-identity-contract-242.R
Saving _problems/test-identity-contract-287.R
Saving _problems/test-identity-contract-360.R
Saving _problems/test-identity-contract-389.R
Saving _problems/test-identity-contract-453.R
Saving _problems/test-identity-contract-491.R
Saving _problems/test-identity-contract-509.R
Saving _problems/test-identity-contract-531.R
Saving _problems/test-identity-contract-548.R
Saving _problems/test-identity-contract-602.R
-- datom status --
i Project: "test-project"
i Root: "test-bucket"
i Prefix: "proj"
i Role: "reader"
i Tables on S3: 2
-- datom status --
i Project: "test-project"
i Root: "test-bucket"
i Prefix: "proj"
i Role: "reader"
! Could not read S3 manifest.
-- datom status --
i Project: "test-project"
i Root: "test-bucket"
i Prefix: "proj"
i Role: "developer"
i Tables on S3: 0
! Git: 1 uncommitted change
'R/foo.R'
i Branch: "main"
-- datom status --
i Project: "test-project"
i Root: "test-bucket"
i Prefix: "proj"
i Role: "developer"
i Tables on S3: 0
v Git: clean (no uncommitted changes)
i Branch: "main"
-- datom status --
i Project: "test-project"
i Root: "test-bucket"
i Prefix: "proj"
i Role: "developer"
i Tables on S3: 0
v Git: clean (no uncommitted changes)
i Branch: "main"
! Input files: 1 new, 0 changed, 1 unchanged
-- datom status --
i Project: "test-project"
i Root: "test-bucket"
i Prefix: "proj"
i Role: "developer"
i Tables on S3: 0
v Git: clean (no uncommitted changes)
i Branch: "main"
-- datom status --
i Project: "test-project"
i Root: "test-bucket"
i Prefix: "proj"
i Role: "developer"
i Tables on S3: 0
v Git: clean (no uncommitted changes)
i Branch: "main"
! Input files: 0 new, 1 changed, 0 unchanged
-- datom status --
i Project: "test-project"
i Root: "test-bucket"
i Prefix: "proj"
i Role: "reader"
i Tables on S3: 0
-- datom status --
i Project: "test-project"
i Root: "test-bucket"
i Prefix: "proj"
i Role: "developer"
i Tables on S3: 0
v Git: clean (no uncommitted changes)
i Branch: "main"
i Input files: directory empty
v Wrote "derived_tbl" (full): "4f228026"
v Wrote "derived_tbl" (full): "0dc7904c"
v Wrote "tbl" (full): "7000d09b"
v Wrote "imported_tbl" (full): "87968959"
v Wrote "plain_tbl" (full): "0d0f5dd2"
v Wrote "raw_dm" (full): "2e0378b3"
v Wrote "plain_tbl" (full): "0d0f5dd2"
v Wrote "my_tbl" (full): "e2c7b694"
v Wrote "tbl" (full): "0d0f5dd2"
v Wrote "tbl" (full): "0d0f5dd2"
v Wrote "synced_tbl" (full): "7e6a459f"
v Wrote "derived_tbl" (full): "0d0f5dd2"
i No changes detected for "unchanged_tbl". Skipping write.
v Wrote "t" (full): "bd26d175"
v Wrote "w" (full): "a26428f4"
i No changes detected for "unchanged_tbl". Skipping write.
v Wrote "sales" (full): "3d2d26c8"
v Wrote "tbl" (metadata_only): "0d0f5dd2"
v Wrote "my_table" (full): "0d0f5dd2"
i No changes detected for "t1". Skipping write.
i No changes detected for "t2". Skipping write.
i No metadata changes for "tbl". Skipping sync.
v Synced metadata for "tbl" to S3.
v Synced metadata for "tbl" to S3.
v Synced metadata for "tbl" to S3.
v Synced metadata for "tbl" to S3.
i Ref location differs from store -- pulling git to sync.
i Ref location differs from store -- pulling git to sync.
v Updated '.datom/project.yaml' data store pointer for "TEST_PROJECT".
v Updated '.datom/project.yaml' data store pointer for "TEST_PROJECT".
v Updated '.datom/project.yaml' data store pointer for "TEST_PROJECT".
v Updated '.datom/project.yaml' data store pointer for "TEST_PROJECT".
v Updated '.datom/project.yaml' data store pointer for "TEST_PROJECT".
v Updated '.datom/project.yaml' data store pointer for "TEST_PROJECT".
i Deleting data repo for "TEST_PROJECT"...
x GitHub repo deletion step failed: Cannot delete GitHub repository: data_repo_url is not set on this conn. i Rebuild the conn with `datom_get_conn()` and retry.
i Continuing with remaining teardown steps...
i Removing local clone 'clone'...
v Removed local clone.
i Deleting data repo for "TEST_PROJECT"...
x GitHub repo deletion step failed: Cannot delete GitHub repository: data_repo_url is not set on this conn. i Rebuild the conn with `datom_get_conn()` and retry.
i Continuing with remaining teardown steps...
i Removing local clone 'clone'...
v Removed local clone.
i Deleting data repo for "TEST_PROJECT"...
x GitHub repo deletion step failed: Cannot delete GitHub repository: data_repo_url is not set on this conn. i Rebuild the conn with `datom_get_conn()` and retry.
i Continuing with remaining teardown steps...
i Deleting data repo for "TEST_PROJECT"...
i No GitHub remote found -- skipping repo deletion.
i Removing local clone 'clone'...
v Removed local clone.
i Deleting data repo for "TEST_PROJECT"...
! No GitHub PAT on conn. Delete "org/repo" manually.
i Removing local clone 'clone'...
v Removed local clone.
i Deleting data repo for "TEST_PROJECT"...
i Deleting GitHub repo "org/my-repo"...
v Deleted GitHub repo "org/my-repo".
i Removing local clone 'clone'...
v Removed local clone.
i Deleting data repo for "TEST_PROJECT"...
x GitHub repo deletion step failed: Cannot delete GitHub repository: data_repo_url is not set on this conn. i Rebuild the conn with `datom_get_conn()` and retry.
i Continuing with remaining teardown steps...
i Removing local clone 'clone'...
v Removed local clone.
i Deleting data repo for "TEST_PROJECT"...
x GitHub repo deletion step failed: Cannot delete GitHub repository: data_repo_url is not set on this conn. i Rebuild the conn with `datom_get_conn()` and retry.
i Continuing with remaining teardown steps...
v Wrote data-side governance record for "TEST_PROJECT".
v Wrote data-side governance record for "TEST_PROJECT".
v Wrote data-side governance record for "TEST_PROJECT".
v Wrote data-side governance record for "TEST_PROJECT".
i Source namespace is empty -- nothing to copy.
i Copying 2 objects ("local" -> "local")...
v Copied 2 objects (26 bytes total).
i Copying 1 object ("local" -> "S3")...
v Copied 1 object (15 bytes total).
i Copying 1 object ("S3" -> "local")...
v Copied 1 object (21 bytes total).
i Copying 1 object ("S3" -> "S3")...
v Copied 1 object (15 bytes total).
i Copying 2 objects ("S3" -> "S3")...
v Copied 2 objects (10 bytes total).
i Verifying 1 object -- "structural (size)" mode...
v All 1 object verified successfully.
i Verifying 1 object -- "structural (size)" mode...
! 1 of 1 object failed verification.
i Verifying 1 object -- "structural (size)" mode...
! 1 of 1 object failed verification.
i Verifying 1 object -- "structural (size)" mode...
v All 1 object verified successfully.
i Verifying 1 object -- "structural (size)" mode...
! 1 of 1 object failed verification.
i Verifying 1 object -- "content (hash)" mode...
v All 1 object verified successfully.
i Verifying 1 object -- "content (hash)" mode...
! 1 of 1 object failed verification.
i Verifying 1 object -- "content (hash)" mode...
v All 1 object verified successfully.
i Verifying 1 object -- "content (hash)" mode...
! 1 of 1 object failed verification.
i Verifying 2 objects -- "structural (size)" mode...
v All 2 objects verified successfully.
i Verifying 2 objects -- "structural (size)" mode...
v All 2 objects verified successfully.
i Verifying 1 object -- "structural (size)" mode...
v All 1 object verified successfully.
v Created GitHub repo "myorg/newrepo".
i Reusing empty GitHub repo "myorg/emptyrepo".
v Created GitHub repo "myuser/myrepo".
i Created store directory '/home/hornik/tmp/scratch/RtmpuomNqq/file2cae7ff83508a/new/nested'.
v Created GitHub repo "myorg/newrepo".
i No files found in '/home/hornik/tmp/scratch/RtmpuomNqq/file2cae7f67571198/input_files' matching "*".
i Scanned 2 files: 2 new, 0 changed, 0 unchanged.
i Scanned 1 file: 0 new, 0 changed, 1 unchanged.
i Scanned 1 file: 0 new, 1 changed, 0 unchanged.
i Scanned 3 files: 1 new, 1 changed, 1 unchanged.
i Scanned 2 files: 2 new, 0 changed, 0 unchanged.
i Scanned 1 file: 1 new, 0 changed, 0 unchanged.
i Scanned 1 file: 1 new, 0 changed, 0 unchanged.
i Scanned 1 file: 1 new, 0 changed, 0 unchanged.
i No files found in '/home/hornik/tmp/scratch/RtmpuomNqq/file2cae7f692960de/input_files' matching "*.xlsx".
i No new or changed files. Nothing to sync.
i Syncing 1 table...
v "customers" synced (new).
i Sync complete: 1 succeeded, 0 failed, 0 skipped.
i Syncing 1 table...
v "changed_tbl" synced (changed).
i Sync complete: 1 succeeded, 0 failed, 1 skipped.
i Syncing 2 tables...
x Failed to sync "bad_tbl": Import failed for bad file
v "good_tbl" synced (new).
i Sync complete: 1 succeeded, 1 failed, 0 skipped.
i Syncing 2 tables...
i Syncing 1 table...
v "tbl" synced (new).
i Sync complete: 1 succeeded, 0 failed, 0 skipped.
i Syncing 1 table...
v "tbl" synced (new).
i Sync complete: 1 succeeded, 0 failed, 0 skipped.
i Scanned 2 files: 1 new, 0 changed, 0 unchanged.
! 1 file in an unsupported format: "bad".
x 1 file in an unsupported format, not synced: "bad".
i Syncing 1 table...
v "good" synced (new).
i Sync complete: 1 succeeded, 1 failed, 0 skipped.
v Synced 1 repo-level file.
i Metadata sync complete: 1 table synced, 0 errors.
v Synced 1 repo-level file.
i Metadata sync complete: 0 tables synced, 0 errors.
v Synced 1 repo-level file.
i Metadata sync complete: 0 tables synced, 0 errors.
v Synced 1 repo-level file.
x Failed to sync "bad_tbl": storage upload failed
i Metadata sync complete: 1 table synced, 1 error.
v Synced 1 repo-level file.
i Metadata sync complete: 1 table synced, 0 errors.
v Synced 1 repo-level file.
i Metadata sync complete: 0 tables synced, 0 errors.
v Synced 1 repo-level file.
i Metadata sync complete: 3 tables synced, 0 errors.
cloning into '/home/hornik/tmp/scratch/RtmpuomNqq/file2cae7ffd07c48'...
[updated] c97d9a4e32..b15c8cd2a7 refs/remotes/origin/main
cloning into '/home/hornik/tmp/scratch/RtmpuomNqq/file2cae7f3f1e6d7f'...
[updated] c97d9a4e32..1ea60ad5d0 refs/remotes/origin/main
cloning into '/home/hornik/tmp/scratch/RtmpuomNqq/file2cae7f77262d30'...
[updated] ba9875cbb4..590ded82a3 refs/remotes/origin/main
cloning into '/home/hornik/tmp/scratch/RtmpuomNqq/file2cae7f5b7554da'...
[updated] 79b4419588..f995c13a6e refs/remotes/origin/main
cloning into '/home/hornik/tmp/scratch/RtmpuomNqq/file2cae7f57f4b85a'...
[updated] 0626a83f0a..b1b8a9be21 refs/remotes/origin/main
cloning into '/home/hornik/tmp/scratch/RtmpuomNqq/file2cae7f55c749e5'...
[updated] 54edfa77d8..fd914b0ab5 refs/remotes/origin/main
! Could not fetch from remote: simulated network failure
cloning into '/home/hornik/tmp/scratch/RtmpuomNqq/file2cae7f7e23d947'...
cloning into '/home/hornik/tmp/scratch/RtmpuomNqq/file2cae7f1e1d3a40'...
cloning into '/home/hornik/tmp/scratch/RtmpuomNqq/file2cae7f2030525c'...
i Cloning gov repo to '/home/hornik/tmp/scratch/RtmpuomNqq/file2cae7f6ea9db11/gov-clone'...
cloning into '/home/hornik/tmp/scratch/RtmpuomNqq/file2cae7f6ea9db11/gov-clone'...
v Cloned gov repo to '/home/hornik/tmp/scratch/RtmpuomNqq/file2cae7f6ea9db11/gov-clone'.
cloning into '/home/hornik/tmp/scratch/RtmpuomNqq/file2cae7f1c86f20e'...
cloning into '/home/hornik/tmp/scratch/RtmpuomNqq/file2cae7f2c551a66'...
cloning into '/home/hornik/tmp/scratch/RtmpuomNqq/file2cae7f4ba0823d'...
i No governance attached -- skipping dispatch/ref/migration_history checks.
v All checks passed. Git and S3 are consistent.
i No governance attached -- skipping dispatch/ref/migration_history checks.
! Found 1 issue: 1 repo-level, 0 table-level.
i No governance attached -- skipping dispatch/ref/migration_history checks.
! Found 1 issue: 0 repo-level, 1 table-level.
i No governance attached -- skipping dispatch/ref/migration_history checks.
! Found 1 issue: 0 repo-level, 1 table-level.
i No governance attached -- skipping dispatch/ref/migration_history checks.
v All checks passed. Git and S3 are consistent.
i No governance attached -- skipping dispatch/ref/migration_history checks.
v All checks passed. Git and S3 are consistent.
i No governance attached -- skipping dispatch/ref/migration_history checks.
! Found 1 issue: 1 repo-level, 0 table-level.
i Attempting to fix by syncing metadata to S3...
v Fix applied. Re-run `datom_validate()` to verify.
i No governance attached -- skipping dispatch/ref/migration_history checks.
v All checks passed. Git and S3 are consistent.
i No governance attached -- skipping dispatch/ref/migration_history checks.
! Found 1 issue: 0 repo-level, 1 table-level.
i No governance attached -- skipping dispatch/ref/migration_history checks.
! Found 1 issue: 1 repo-level, 0 table-level.
i Attempting to fix by syncing metadata to S3...
x Fix failed: Sync failed
i No governance attached -- skipping dispatch/ref/migration_history checks.
v All checks passed. Git and S3 are consistent.
x Project name mismatch: manifest says "DIFFERENT_PROJECT" but connection says "MY_PROJECT".
i This may indicate a namespace collision. Check bucket/prefix configuration.
i No governance attached -- skipping dispatch/ref/migration_history checks.
! Found 0 issues: 0 repo-level, 0 table-level.
i No governance attached -- skipping dispatch/ref/migration_history checks.
v All checks passed. Git and S3 are consistent.
i No governance attached -- skipping dispatch/ref/migration_history checks.
v All checks passed. Git and S3 are consistent.
i No governance attached -- skipping dispatch/ref/migration_history checks.
v All checks passed. Git and S3 are consistent.
[ FAIL 26 | WARN 0 | SKIP 1 | PASS 2323 ]
══ Skipped tests (1) ═══════════════════════════════════════════════════════════
• reference script absent (e.g. CRAN, dev/ Rbuildignored) (1):
'test-utils-sha.R:915:3'
══ Failed tests ════════════════════════════════════════════════════════════════
── Error ('test-conn.R:2085:5'): datom_clone aborts if cloned repo is not a datom repo ──
Error in `git2r::push(work_repo, name = "origin", refspec = "refs/heads/master", set_upstream = TRUE)`: Error in 'git2r_push': src refspec 'refs/heads/master' does not match any existing object
Backtrace:
▆
1. ├─withr::with_tempdir(...) at test-conn.R:2074:3
2. │ └─withr::with_dir(tmp, code)
3. │ └─base::force(code)
4. └─git2r::push(...) at test-conn.R:2085:5
── Error ('test-conn.R:2131:5'): datom_clone clones and returns a datom_conn ───
Error in `git2r::push(work_repo, name = "origin", refspec = "refs/heads/master", set_upstream = TRUE)`: Error in 'git2r_push': src refspec 'refs/heads/master' does not match any existing object
Backtrace:
▆
1. ├─withr::with_tempdir(...) at test-conn.R:2100:3
2. │ └─withr::with_dir(tmp, code)
3. │ └─base::force(code)
4. └─git2r::push(...) at test-conn.R:2131:5
── Error ('test-conn.R:2183:5'): datom_clone sets a local git identity on the fresh clone (#74 E) ──
Error in `git2r::push(work_repo, name = "origin", refspec = "refs/heads/master", set_upstream = TRUE)`: Error in 'git2r_push': src refspec 'refs/heads/master' does not match any existing object
Backtrace:
▆
1. ├─withr::with_tempdir(...) at test-conn.R:2154:3
2. │ └─withr::with_dir(tmp, code)
3. │ └─base::force(code)
4. └─git2r::push(...) at test-conn.R:2183:5
── Error ('test-conn.R:2246:5'): datom_clone with gov_repo_url also clones gov repo ──
Error in `git2r::push(work_repo, "origin", "refs/heads/master", set_upstream = TRUE)`: Error in 'git2r_push': src refspec 'refs/heads/master' does not match any existing object
Backtrace:
▆
1. ├─withr::with_tempdir(...) at test-conn.R:2245:3
2. │ └─withr::with_dir(tmp, code)
3. │ └─base::force(code)
4. └─datom (local) .make_bare_datom_repo() at test-conn.R:2246:5
5. └─git2r::push(work_repo, "origin", "refs/heads/master", set_upstream = TRUE) at test-conn.R:2240:3
── Error ('test-conn.R:2273:5'): datom_clone reuses existing gov clone with matching URL ──
Error in `git2r::push(work_repo, "origin", "refs/heads/master", set_upstream = TRUE)`: Error in 'git2r_push': src refspec 'refs/heads/master' does not match any existing object
Backtrace:
▆
1. ├─withr::with_tempdir(...) at test-conn.R:2272:3
2. │ └─withr::with_dir(tmp, code)
3. │ └─base::force(code)
4. └─datom (local) .make_bare_datom_repo() at test-conn.R:2273:5
5. └─git2r::push(work_repo, "origin", "refs/heads/master", set_upstream = TRUE) at test-conn.R:2240:3
── Error ('test-conn.R:2301:5'): datom_clone aborts when existing gov clone has uncommitted changes ──
Error in `git2r::push(work_repo, "origin", "refs/heads/master", set_upstream = TRUE)`: Error in 'git2r_push': src refspec 'refs/heads/master' does not match any existing object
Backtrace:
▆
1. ├─withr::with_tempdir(...) at test-conn.R:2300:3
2. │ └─withr::with_dir(tmp, code)
3. │ └─base::force(code)
4. └─datom (local) .make_bare_datom_repo() at test-conn.R:2301:5
5. └─git2r::push(work_repo, "origin", "refs/heads/master", set_upstream = TRUE) at test-conn.R:2240:3
── Error ('test-conn.R:2331:5'): datom_clone aborts when existing gov clone has different remote URL ──
Error in `git2r::push(work_repo, "origin", "refs/heads/master", set_upstream = TRUE)`: Error in 'git2r_push': src refspec 'refs/heads/master' does not match any existing object
Backtrace:
▆
1. ├─withr::with_tempdir(...) at test-conn.R:2330:3
2. │ └─withr::with_dir(tmp, code)
3. │ └─base::force(code)
4. └─datom (local) .make_bare_datom_repo() at test-conn.R:2331:5
5. └─git2r::push(work_repo, "origin", "refs/heads/master", set_upstream = TRUE) at test-conn.R:2240:3
── Error ('test-identity-contract.R:95:3'): Feature: datom-cv1, S1 -- an unchanged input is skipped before parsing ──
Error in `git2r::push(repo, name = "origin", refspec = "refs/heads/master", set_upstream = TRUE)`: Error in 'git2r_push': src refspec 'refs/heads/master' does not match any existing object
Backtrace:
▆
1. └─datom (local) local_identity_project() at test-identity-contract.R:95:3
2. └─git2r::push(...) at test-identity-contract.R:43:3
── Error ('test-identity-contract.R:129:3'): Feature: datom-cv1, S1 -- an unchanged sibling is skipped while a changed one syncs ──
Error in `git2r::push(repo, name = "origin", refspec = "refs/heads/master", set_upstream = TRUE)`: Error in 'git2r_push': src refspec 'refs/heads/master' does not match any existing object
Backtrace:
▆
1. └─datom (local) local_identity_project() at test-identity-contract.R:129:3
2. └─git2r::push(...) at test-identity-contract.R:43:3
── Error ('test-identity-contract.R:168:3'): Feature: datom-cv1, S2 -- bytes and content both change: full write at the new data_sha ──
Error in `git2r::push(repo, name = "origin", refspec = "refs/heads/master", set_upstream = TRUE)`: Error in 'git2r_push': src refspec 'refs/heads/master' does not match any existing object
Backtrace:
▆
1. └─datom (local) local_identity_project() at test-identity-contract.R:168:3
2. └─git2r::push(...) at test-identity-contract.R:43:3
── Error ('test-identity-contract.R:212:3'): Feature: datom-cv1, S5 -- a derived first write is full, data_sha-addressed, with no original_file_sha ──
Error in `git2r::push(repo, name = "origin", refspec = "refs/heads/master", set_upstream = TRUE)`: Error in 'git2r_push': src refspec 'refs/heads/master' does not match any existing object
Backtrace:
▆
1. └─datom (local) local_identity_project() at test-identity-contract.R:212:3
2. └─git2r::push(...) at test-identity-contract.R:43:3
── Error ('test-identity-contract.R:242:3'): Feature: datom-cv1, S6 -- an identical re-derive is a no-op: no commit, upload, or history entry ──
Error in `git2r::push(repo, name = "origin", refspec = "refs/heads/master", set_upstream = TRUE)`: Error in 'git2r_push': src refspec 'refs/heads/master' does not match any existing object
Backtrace:
▆
1. └─datom (local) local_identity_project() at test-identity-contract.R:242:3
2. └─git2r::push(...) at test-identity-contract.R:43:3
── Error ('test-identity-contract.R:287:3'): Feature: datom-cv1, S3 -- a re-export with identical content is metadata_only, carries parquet_sha forward, and settles ──
Error in `git2r::push(repo, name = "origin", refspec = "refs/heads/master", set_upstream = TRUE)`: Error in 'git2r_push': src refspec 'refs/heads/master' does not match any existing object
Backtrace:
▆
1. └─datom (local) local_identity_project() at test-identity-contract.R:287:3
2. └─git2r::push(...) at test-identity-contract.R:43:3
── Error ('test-identity-contract.R:360:3'): Feature: datom-cv1, S3 -- the carried-forward parquet_sha still verifies on read ──
Error in `git2r::push(repo, name = "origin", refspec = "refs/heads/master", set_upstream = TRUE)`: Error in 'git2r_push': src refspec 'refs/heads/master' does not match any existing object
Backtrace:
▆
1. └─datom (local) local_identity_project() at test-identity-contract.R:360:3
2. └─git2r::push(...) at test-identity-contract.R:43:3
── Error ('test-identity-contract.R:389:3'): Feature: datom-cv1, S4 -- re-syncing an older content-matching file appends no duplicate version ──
Error in `git2r::push(repo, name = "origin", refspec = "refs/heads/master", set_upstream = TRUE)`: Error in 'git2r_push': src refspec 'refs/heads/master' does not match any existing object
Backtrace:
▆
1. └─datom (local) local_identity_project() at test-identity-contract.R:389:3
2. └─git2r::push(...) at test-identity-contract.R:43:3
── Error ('test-identity-contract.R:453:3'): Feature: datom-cv1, S4 -- the dedup guard scans the whole history, not just the latest entry ──
Error in `git2r::push(repo, name = "origin", refspec = "refs/heads/master", set_upstream = TRUE)`: Error in 'git2r_push': src refspec 'refs/heads/master' does not match any existing object
Backtrace:
▆
1. └─datom (local) local_identity_project() at test-identity-contract.R:453:3
2. └─git2r::push(...) at test-identity-contract.R:43:3
── Error ('test-identity-contract.R:491:3'): Feature: datom-cv1, read-time integrity -- a corrupted stored object aborts the read ──
Error in `git2r::push(repo, name = "origin", refspec = "refs/heads/master", set_upstream = TRUE)`: Error in 'git2r_push': src refspec 'refs/heads/master' does not match any existing object
Backtrace:
▆
1. └─datom (local) local_identity_project() at test-identity-contract.R:491:3
2. └─git2r::push(...) at test-identity-contract.R:43:3
── Error ('test-identity-contract.R:509:3'): Feature: datom-cv1, read-time integrity -- a swapped-in valid parquet is caught before parsing ──
Error in `git2r::push(repo, name = "origin", refspec = "refs/heads/master", set_upstream = TRUE)`: Error in 'git2r_push': src refspec 'refs/heads/master' does not match any existing object
Backtrace:
▆
1. └─datom (local) local_identity_project() at test-identity-contract.R:509:3
2. └─git2r::push(...) at test-identity-contract.R:43:3
── Error ('test-identity-contract.R:531:3'): Feature: datom-cv1, read-time integrity -- legacy metadata without parquet_sha still reads ──
Error in `git2r::push(repo, name = "origin", refspec = "refs/heads/master", set_upstream = TRUE)`: Error in 'git2r_push': src refspec 'refs/heads/master' does not match any existing object
Backtrace:
▆
1. └─datom (local) local_identity_project() at test-identity-contract.R:531:3
2. └─git2r::push(...) at test-identity-contract.R:43:3
── Error ('test-identity-contract.R:548:3'): Feature: datom-cv1, revert-to-older content reuses the history parquet_sha without overwriting the object ──
Error in `git2r::push(repo, name = "origin", refspec = "refs/heads/master", set_upstream = TRUE)`: Error in 'git2r_push': src refspec 'refs/heads/master' does not match any existing object
Backtrace:
▆
1. └─datom (local) local_identity_project() at test-identity-contract.R:548:3
2. └─git2r::push(...) at test-identity-contract.R:43:3
── Error ('test-identity-contract.R:602:3'): Feature: datom-cv1, provenance -- hash_algo and imported-path original_file_sha are recorded ──
Error in `git2r::push(repo, name = "origin", refspec = "refs/heads/master", set_upstream = TRUE)`: Error in 'git2r_push': src refspec 'refs/heads/master' does not match any existing object
Backtrace:
▆
1. └─datom (local) local_identity_project() at test-identity-contract.R:602:3
2. └─git2r::push(...) at test-identity-contract.R:43:3
── Error ('test-sync.R:1081:5'): datom_pull reports already up to date when nothing to pull ──
Error in `git2r::push(repo, name = "origin", refspec = "refs/heads/master", set_upstream = TRUE)`: Error in 'git2r_push': src refspec 'refs/heads/master' does not match any existing object
Backtrace:
▆
1. ├─withr::with_tempdir(...) at test-sync.R:1070:3
2. │ └─withr::with_dir(tmp, code)
3. │ └─base::force(code)
4. └─git2r::push(...) at test-sync.R:1081:5
── Error ('test-sync.R:1130:5'): datom_pull counts commits pulled from upstream ──
Error in `git2r::push(repo, name = "origin", refspec = "refs/heads/master", set_upstream = TRUE)`: Error in 'git2r_push': src refspec 'refs/heads/master' does not match any existing object
Backtrace:
▆
1. ├─withr::with_tempdir(...) at test-sync.R:1119:3
2. │ └─withr::with_dir(tmp, code)
3. │ └─base::force(code)
4. └─git2r::push(...) at test-sync.R:1130:5
── Error ('test-sync.R:1175:5'): datom_pull aborts on merge conflict ───────────
Error in `git2r::push(repo, name = "origin", refspec = "refs/heads/master", set_upstream = TRUE)`: Error in 'git2r_push': src refspec 'refs/heads/master' does not match any existing object
Backtrace:
▆
1. ├─withr::with_tempdir(...) at test-sync.R:1165:3
2. │ └─withr::with_dir(tmp, code)
3. │ └─base::force(code)
4. └─git2r::push(...) at test-sync.R:1175:5
── Error ('test-sync.R:1212:5'): datom_pull returns invisible result ───────────
Error in `git2r::push(repo, name = "origin", refspec = "refs/heads/master", set_upstream = TRUE)`: Error in 'git2r_push': src refspec 'refs/heads/master' does not match any existing object
Backtrace:
▆
1. ├─withr::with_tempdir(...) at test-sync.R:1202:3
2. │ └─withr::with_dir(tmp, code)
3. │ └─base::force(code)
4. └─git2r::push(...) at test-sync.R:1212:5
── Error ('test-sync.R:1235:5'): datom_pull is data-repo-only and does not touch the gov repo ──
Error in `git2r::push(repo, "origin", "refs/heads/master", set_upstream = TRUE)`: Error in 'git2r_push': src refspec 'refs/heads/master' does not match any existing object
Backtrace:
▆
1. ├─withr::with_tempdir(...) at test-sync.R:1226:3
2. │ └─withr::with_dir(tmp, code)
3. │ └─base::force(code)
4. └─git2r::push(repo, "origin", "refs/heads/master", set_upstream = TRUE) at test-sync.R:1235:5
[ FAIL 26 | WARN 0 | SKIP 1 | PASS 2323 ]
Error:
! Test failures.
Execution halted
Flavor: r-patched-linux-x86_64