Release Notes: v3.1.0
Highlights
New: projark ls β list vault contents
projark ls 982
projark ls 982 --jsonLists all data objects archived under a project as a tree with human-readable sizes, depositor name (from registered_by_name), and deposit date (formatted YYMMDD). Accepts the same project number formats as deposit/retrieve. No Helix, tmux, or sync-gate checks required. Does not send email. See projark ls. (#62, @kopardev)
New: parkit ls β list any HPC-DME collection
parkit ls /CCBR_Archive/GRIDFTP
parkit ls /CCBR_Archive/GRIDFTP/Project_CCBR-982 --jsonLists any HPC-DME collection path using the same shared backend as projark ls. Renders a full recursive hierarchy at any depth. See parkit ls. (#62, @kopardev)
Bug Fixes
-
projark depositβ HTTP 400 errors fixed:_register_collectionnow sends all required HPC-DME metadata fields when creating collections. Project collections includeproject_title,project_description,origin,method,access,organism,summary_of_samples,project_start_date. Analysis/Rawdata sub-collections includeproject_start_date,method,number_of_cases.Rawdatadatatype now correctly maps to HPC-DMEcollection_typevalueAnalysis. (#53, @kopardev) -
Split-tar conflict detection:
projark deposittarname resolution now also checks for the first split-chunk suffix (*.tar_0001). Previously, a project whose tarball had been split on a prior deposit (ccbr982.tar_0001,ccbr982.tar_0002, β¦) was not detected as a conflict because the base nameccbr982.tarnever exists as a data object in the vault. (#61, @kopardev) -
Temp file isolation:
run_dm_cmdnow executes eachdm_*subprocess inside a per-calltempfile.TemporaryDirectory, so HPC-DME CLI response files (*.tmp) no longer accumulate in the user's working directory. This also prevents concurrent runs from overwriting each other's temp files. (#60, @kopardev)
Improvements
-
projark depositβ configuration display: After the host/session preflight checks, the active (non-comment) lines from$HPC_DM_UTILS/hpcdme.propertiesare printed so users can verify their HPC-DME configuration before transfer begins. (#56, @kopardev) -
projark depositβ proxy check: Deposits abort with a descriptive error ifhpc.server.proxy.urlorhpc.server.proxy.portare active (uncommented) inhpcdme.properties. Per HPC-DME team guidance, proxy lines must be commented out. (#57, @kopardev) -
projark depositβ dot-file exclusion: Hidden files (names starting with.) are automatically excluded fromdm_register_directoryvia a temp exclude file, preventing shell history and other hidden files from being registered to HPC-DME. (#58, @kopardev) -
projark depositβ pre-transfer conflict detection: Before callingdm_register_directory, staged files are checked against the destination vault. If a conflict is found, staged files are renamed by inserting a zero-padded counter before the first extension (e.g.ccbr1431.tarβccbr1431_001.tar) using the lowest available counter. (#59, @kopardev) -
projark retrieveβ batch existence check: The per-filename existence check now uses a singledm_query_dataobjectcall instead of N serialdm_get_dataobjectcalls. (#62, @kopardev) -
projark retrieveβ split-tar advisory: After fetching the object listing,retrieveautomatically detects split tar parts (*.tar_NNNN) in the collection and prints an advisory if--unsplitwas not passed. (#62, @kopardev)