992aeef92fea7be25a2acd916578898649212a32
braney
  Mon Sep 7 11:31:07 2026 -0700
quickLift: gate the alignment lift behind an hg.conf flag, refs #38249

Add browser.quickLiftAlignments, default FALSE, so the alignment lift ships
dark and a machine turns it on with browser.quickLiftAlignments=on.  It sits
beside browser.quickLift, the gate on the rest of the feature.

quickLiftAlignmentsEnabled() in hg/lib/quickLift.c is the one read, and
validateOneTdb in hg/lib/trackHub.c is the one place that asks it, before an
alignment track may enter a quickLift hub.  That is the only door:
quickLiftUrl and quickLiftDb, the pair every lift path keys off, are written
by the quickLift hub writer and by nothing else, so with the flag off an
alignment track never gets them and the lifting, drawing and details code
behind them cannot be reached.  pslTrack.c, chainTrack.c, wigMafTrack.c,
bigBedTrack.c and hgc.c are unchanged.

With the flag off hgConvert lists psl, bigPsl, chain, bigChain, maf, bigMaf
and wigMaf tracks in its "type is not supported by QuickLift" table, which is
what it did before this work.  A hub built while the flag was on keeps working
after it is turned off, since its stanzas are already in the hub file in
trash, so this holds the feature back from people who have not used it rather
than switching off a session that has.

Read the hg.conf half with a literal cfgOptionBooleanDefault rather than
cartOrCfgOption so harvestHgConf.py can see it; a cart variable of the same
name still overrides it.  Register the flag in hgConfCatalog.py with
role="gate" so the sunset report tracks it, and turn it on in
confs/hgwdev.hg.conf.

diff --git confs/hgwdev.hg.conf confs/hgwdev.hg.conf
index 92b6ba0521d..23574343110 100644
--- confs/hgwdev.hg.conf
+++ confs/hgwdev.hg.conf
@@ -453,30 +453,33 @@
 # show the hubSpace UI
 storeUserFiles=true
 # location of files stored by tusd
 tusdDataDir=/tusd
 tusdMountPoint=/data/tusd
 # The tusd endpoint files are uploaded to
 hubSpaceTusdEndpoint=https://hgwdev-hubspace.gi.ucsc.edu/files
 # The web accessible location after tusd moves the files
 # when an upload is completed
 hubSpaceUrl=https://hgwdev.gi.ucsc.edu/hubspace
 # let users create an api key on the hub development tab to use hubSpace from the command line
 showHubApiKey=true
 
 # Enables the QuickLift checkbox on hgConvert
 browser.quickLift=on
+# Lets QuickLift lift alignment tracks too: psl, bigPsl, chain, bigChain, maf,
+# bigMaf and wigMaf.  Refs #38249.
+browser.quickLiftAlignments=on
 # Additional settings for QuickLift
 quickLift.lengthLimit=100000
 quickLift.insColor=64,127,0,64
 quickLift.delColor=0,0,127,64
 quickLift.doubleColor=127,127,127,64
 quickLift.mismatchColor=255,0,0,64
 
 # Increases the number of items that can be queried from a BAM file
 BAMMaxItems=60000
 
 # new flag for testing rm32751 turn on automatic creation of custom tracks from hgBlat results.
 autoBlatBigPsl=on
 # you can also comment it out and test that it behaves the old way as expected.
 
 # BLAT shows locus name of the match #35993