On 09/20/2013 05:50 PM, Assaf Gordon wrote: > Hello, > > Not sure if this is a bug or just unintended side-effect, but it caused some > scripts here to fail and took a while to troubleshoot: > It basically boils down to the interplay between the deprecated "-t" "-p" and > "$TMPDIR" and "--tmpdir". > > === > ## > ## Problem 1: "-t" and TMPDIR (if non-empty) overrides "--tmpdir" > ## > $ TMPDIR= mktemp -u --tmpdir=. -t XXXXXX > ./og9G5s > $ TMPDIR=/foo/ mktemp -u --tmpdir=. -t XXXXXX > /foo/AAWcOl
Yes this is confusing, and _not_ order dependent: $ TMPDIR=/foo/ mktemp -t -u --tmpdir=. XXXXXX /foo/AAWcOl > > ## > ## Problem 2: if TMPDIR is empty, "--tmpdir" overrides "-p", despite having > "-t" > ## > $ TMPDIR=/foo/ mktemp -u -p /bar/ --tmpdir=. -t XXXXXX > /foo/tHXcrq > $ TMPDIR= mktemp -u -p /bar/ --tmpdir=. -t XXXXXX > ./OfWXSS > ## I'd expect the above to use "/bar/OfWXSS", to be consistent with TMPDIR > overriding "--tmpdir". > === Also confusing, and order dependent too: $ mktemp -p /aaa -u --tmpdir=. asdf/XXXX ./asdf/wdIT $ mktemp -u --tmpdir=. -p /aaa asdf/XXXX /aaa/asdf/3Jc7 > I realize "-t" and "-p" are deprecated, and it's best not to meddle with them > - > but for consistency, perhaps consider having the new "--tmpdir" always take > precedence over "-t" and "-p" ? > or print a warning to STDERR when "-t" and "--tmpdir" are mixed? Yes I agree that --tmpdir should override -pt no matter what the order. In fact there is no reason to use -pt with --tmpdir and since the former are deprecated, I suggest we just disallow that combination with an error. Patch coming up. thanks! Pádraig.
