Warn when uploads omit unrecognized paths - #1915
Conversation
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #1915 +/- ##
==========================================
+ Coverage 77.35% 77.53% +0.18%
==========================================
Files 89 89
Lines 13325 13463 +138
==========================================
+ Hits 10307 10439 +132
- Misses 3018 3024 +6
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
|
Fixed the three Linux upload-test failures by placing the NWB fixture under a valid |
|
The rerun found one remaining assertion: the singular warning used “1 path were”. I fixed that in 95ac3d3 so one path reads “was” while plural counts keep “were”. Ruff checks pass; CI is running again. |
|
One macOS 3.13 job in the new matrix failed while cloning the external |
|
Added focused coverage for the upload omission discovery helper in 414df4e. The new tests cover missing paths, hidden/metadata entries, and rejecting paths outside the Dandiset root. The helper tests pass locally; this is test-only and leaves the warning behavior unchanged. CI can rerun when convenient. |
|
The new run on 414df4e completed. Lint, typing, docs, CodeQL, and the Windows/macOS matrix are green except the existing macOS Intel 3.13 and several Ubuntu test jobs; those jobs fail in their generic test step, while the new omission-helper tests pass locally. GitHub does not expose the runner log details in this environment, so I have not changed application code based on guesswork. The remaining check_labels failure is maintainer-only; I also confirmed this fork cannot add the required label. Could a maintainer inspect the failed job logs and apply the label when convenient? |
|
Also marked the four upload-warning regression tests with the repository-required ai_generated marker. Ruff and the focused discovery tests still pass; no behavior changed. |
1364151 to
bbec8c3
Compare
|
I corrected the omission warning so singular messages use “it was” and plural messages use “they were,” while preserving the original upload error. The diff is limited to |
|
The new run reached the test jobs, but the Ubuntu matrix is blocked before collection by the shared Docker setup: |
|
The full matrix now passes after switching the test stack's MinIO image from Docker Hub to All test environments, both Codecov checks, lint, typing, and documentation are green. The API suite includes the four upload-omission regressions (291 passed, 2 xfailed in the completed EMBER-DANDI job). Only |
Fixes #1493
dandi uploaddiscovers only recognized assets. Before this change, a requested directory could finish with files omitted from the upload without telling the user.This adds a discovery helper that reports omitted files individually when a requested tree contains recognized assets, or collapses a wholly unrecognized directory to one entry. It keeps Dandiset metadata, dot/VCS paths, common OS metadata, empty directories, Zarr contents, and directory symlinks out of the warning. Partial uploads stay scoped to the requested paths, and
--allow-any-pathremains an explicit opt-out.The warning is registered after the progress table is created, so it is emitted after the table closes and still appears when another asset upload fails.
Tests added:
--allow-any-pathsuppression, and warning-on-upload-error behaviorLocal validation:
ruff checkandpython -m py_compilepassed