Skip to content
  • Fraser Tweedale's avatar
    95f48ad7
    Fix parsing of password-command option (#6268) · 95f48ad7
    Fraser Tweedale authored
    The password-command option does not parse its value correctly.
    Quotes are ignored, making many kinds of commands impossible to
    express (e.g.  `sh -c "foo | bar"`).  Also, `cabal user-config`
    treats the argument list as a *list of option values*, rather than a
    *value that is a list*.  As a consequence, `cabal user-config
    update` corrupts the value in the config file.
    
    Fix these issues by parsing the command as a space separated list of
    tokens, and changing the getter to `unwords` the value and return a
    *singleton* list.  Also update the argument placeholder from
    `PASSWORD` to `COMMAND`.
    
    Fixes: https://github.com/haskell/cabal/issues/6268
    95f48ad7
    Fix parsing of password-command option (#6268)
    Fraser Tweedale authored
    The password-command option does not parse its value correctly.
    Quotes are ignored, making many kinds of commands impossible to
    express (e.g.  `sh -c "foo | bar"`).  Also, `cabal user-config`
    treats the argument list as a *list of option values*, rather than a
    *value that is a list*.  As a consequence, `cabal user-config
    update` corrupts the value in the config file.
    
    Fix these issues by parsing the command as a space separated list of
    tokens, and changing the getter to `unwords` the value and return a
    *singleton* list.  Also update the argument placeholder from
    `PASSWORD` to `COMMAND`.
    
    Fixes: https://github.com/haskell/cabal/issues/6268
Loading