[petsc-dev] configure usability
    Jed Brown 
    jed at 59A2.org
       
    Wed Sep  1 05:55:25 CDT 2010
    
    
  
Two thoughts:
1. Systematic deprecation system:
  --with-shared doesn't give any errors today, but the option goes
  unused (because it's now spelled --with-shared-libraries).  I'd like
  to see either (a) recognize the old spelling but warn of deprecation,
  or (b) error giving the new spelling.  This seems easy to do by
  updating help.addArgument.
2. It's common to misspell options, difflib is part of the standard library
  (from 2.3)
    http://docs.python.org/library/difflib.html#difflib.get_close_matches
  and would enable a warning like
  The option "--with-shard-libaries" was not used, maybe you meant "--with-shared-libraries".
  Configure is imperative (as opposed to declarative, or with all
  options identified and available very early) so I don't think it's
  feasible to provide comprehensive misspelled options help immediately,
  but at least the unused options could be listed at the end.  This
  ought to just be a matter of having argDB log accesses, then at the
  end, take all entries that were never accessed and compute Levenshtein
  distance to the options that were accessed used to give suggestions.
  I'm not sure what to do if configure errors out early, it might be
  hitting an error _because_ of an unused option, but there may be lots
  of unused options at this stage (that are valid and really will be
  used later).
Jed
    
    
More information about the petsc-dev
mailing list