f2ef97844c0973a30cbbc1afcdd01b4096143a69 lrnassar Wed Jun 3 10:56:07 2026 -0700 Add date-based dataVersion to composite/superTrack otto containers. refs #36455 Composite and superTrack container pages do not display 'Data last updated at UCSC' (printUpdateTime returns early for them), so a dataVersion file is the only freshness signal a user sees there. Add one to the dbVar (dbVarSv), panelApp, clinGen (clinGenComp) and decipher (decipherContainer) containers. Each otto build script writes a per-assembly 'Last updated ' file when it actually updates the data, and the container stanza points to it via dataVersion. clinGen's container date is written by its three displayed feeds (makeDosage, makeGeneValidity, makeClinGenCspec); decipher writes hg38 only (hg19 is frozen). diff --git src/hg/utils/otto/panelApp/doPanelApp.py src/hg/utils/otto/panelApp/doPanelApp.py index 31eefe3b906..98794cade96 100755 --- src/hg/utils/otto/panelApp/doPanelApp.py +++ src/hg/utils/otto/panelApp/doPanelApp.py @@ -1000,18 +1000,25 @@ # Now update panelApp Australia # Genes track hg19Bed, hg38Bed = downloadGenes("https://panelapp-aus.org/api/v1/panels/?format=json") writeBb(hg19Bed, hg38Bed, "genesAus") # STRs track hg19Bed, hg38Bed = downloadTandReps("https://panelapp-aus.org/api/v1/strs/?format=json") writeBb(hg19Bed, hg38Bed, "tandRepAus") # CNVs track hg38Bed = downloadCnvs('https://panelapp-aus.org/api/v1/regions/?format=json') # no hg19 CNV data yet from PanelApp - still true as of 5/20/2025 writeBb(None, hg38Bed, "cnvAus") flipFiles('Australia') updateGbdbSymlinks('Australia') + # panelApp is a compositeTrack whose container page shows no "Data last updated"; + # write a dataVersion file (the build/run date) so the container shows a freshness date. + dateStr = date.today().strftime("%Y-%m-%d") + for db in ["hg19", "hg38"]: + with open("current/%s/version.txt" % db, "w") as vf: + vf.write("Last updated %s\n" % dateStr) + print("PanelApp otto update: OK") main()