Updated debdiff to include bug lp in changelog ** Description changed:
Binary package hint: bash [Impact] Bash-4.2 tries to leave completed directory names as the user typed them, without expanding them to a full pathname. One effect of this is that shell variables used in pathnames being completed (e.g., $HOME) are left unchanged, but the `$' is quoted by readline because it is a special character to the shell. [Test Case] - [Current test case showing expected behavior] Items to address so far: - - that $ is escaped less - - that direxpand does not expand as expected - - that direxpand option is available and if enabled, expands directories with variable names. + - that $ is escaped less + - that direxpand does not expand as expected + - that direxpand option is available and if enabled, expands directories with variable names. + + zef:~/Projects/precise-amd64$ mkdir -p /tmp/testd/finger/toe + zef:~/Projects/precise-amd64$ cd /tmp/testd/ + zef:/tmp/testd$ td=`pwd` + zef:/tmp/testd$ cd ../ + zef:/tmp$ ls \$td/finger + + zef:/tmp$ shopt -s direxpand + zef:/tmp$ ls $td/fing<TAB> + zef:/tmp$ ls /tmp/testd/finger/ + toe - [Previous Test Case showing non-working bash installation] - ~$ mkdir -p /tmp/testd/finger/toe /tmp$ cd /tmp/testd /tmp/testd$ td=`pwd` /tmp/testd$ cd ../ /tmp$ ls $td/fing Type a TAB character at this point, and bash completion makes the line: /tmp$ ls \$td/finger Note that while 'fing' has been expanded to 'finger ' (with a space at the end), the $td variable reference has had the $ character quoted with a backslash. This prevents further extension of the pathname, and in fact makes the command invalid; if I type a newline at this point, I get: ls: cannot access $td/finger: No such file or directory This is not useful behavior. I believe that in Ubuntu 10.10, the $td variable would have been expanded to '/tmp/testd', and subsequent completions starting from '/tmp/testd/finger' would have worked. [The version of /etc/bash_completion.d/acroread.sh that is installed starts with: # _filedir : to handle file and directories with spaces in their names. if ! type _filedir &> /dev/null ; then so I don't think that file is overriding /etc/bash_completion's _filedir ...] [Regression Potential] - ProblemType: Bug DistroRelease: Ubuntu 11.04 Package: bash 4.2-0ubuntu3 ProcVersionSignature: Ubuntu 2.6.38-8.42-generic 2.6.38.2 Uname: Linux 2.6.38-8-generic x86_64 Architecture: amd64 Date: Fri May 6 09:48:29 2011 InstallationMedia: Ubuntu 9.10 "Karmic Koala" - Release amd64 (20091027) ProcEnviron: SHELL=/bin/bash PATH=(custom, user) LANG=en_US.UTF-8 LANGUAGE=en_US:en SourcePackage: bash UpgradeStatus: Upgraded to natty on 2011-04-30 (6 days ago) ** Description changed: Binary package hint: bash [Impact] Bash-4.2 tries to leave completed directory names as the user typed them, without expanding them to a full pathname. One effect of this is that shell variables used in pathnames being completed (e.g., $HOME) are left unchanged, but the `$' is quoted by readline because it is a special character to the shell. [Test Case] - [Current test case showing expected behavior] Items to address so far: - that $ is escaped less - that direxpand does not expand as expected - that direxpand option is available and if enabled, expands directories with variable names. zef:~/Projects/precise-amd64$ mkdir -p /tmp/testd/finger/toe zef:~/Projects/precise-amd64$ cd /tmp/testd/ zef:/tmp/testd$ td=`pwd` zef:/tmp/testd$ cd ../ - zef:/tmp$ ls \$td/finger + zef:/tmp$ ls \$td/finger zef:/tmp$ shopt -s direxpand zef:/tmp$ ls $td/fing<TAB> zef:/tmp$ ls /tmp/testd/finger/ toe - [Previous Test Case showing non-working bash installation] ~$ mkdir -p /tmp/testd/finger/toe /tmp$ cd /tmp/testd /tmp/testd$ td=`pwd` /tmp/testd$ cd ../ /tmp$ ls $td/fing Type a TAB character at this point, and bash completion makes the line: /tmp$ ls \$td/finger Note that while 'fing' has been expanded to 'finger ' (with a space at the end), the $td variable reference has had the $ character quoted with a backslash. This prevents further extension of the pathname, and in fact makes the command invalid; if I type a newline at this point, I get: ls: cannot access $td/finger: No such file or directory This is not useful behavior. I believe that in Ubuntu 10.10, the $td variable would have been expanded to '/tmp/testd', and subsequent completions starting from '/tmp/testd/finger' would have worked. [The version of /etc/bash_completion.d/acroread.sh that is installed starts with: # _filedir : to handle file and directories with spaces in their names. if ! type _filedir &> /dev/null ; then so I don't think that file is overriding /etc/bash_completion's _filedir ...] [Regression Potential] + - (#32) low potential for regressions since this bug is related to the interactive command line and would not influence any scripts. ProblemType: Bug DistroRelease: Ubuntu 11.04 Package: bash 4.2-0ubuntu3 ProcVersionSignature: Ubuntu 2.6.38-8.42-generic 2.6.38.2 Uname: Linux 2.6.38-8-generic x86_64 Architecture: amd64 Date: Fri May 6 09:48:29 2011 InstallationMedia: Ubuntu 9.10 "Karmic Koala" - Release amd64 (20091027) ProcEnviron: SHELL=/bin/bash PATH=(custom, user) LANG=en_US.UTF-8 LANGUAGE=en_US:en SourcePackage: bash UpgradeStatus: Upgraded to natty on 2011-04-30 (6 days ago) ** Patch added: "bash_4.2-2ubuntu2.1.precise.debdiff" https://bugs.launchpad.net/ubuntu/+source/bash/+bug/778627/+attachment/3582176/+files/bash_4.2-2ubuntu2.1.precise.debdiff ** Attachment removed: "A debdiff that applies bash upstream patch 0029 to bash. I merely incremented the patch number (from 24 to 25) because I did not apply the intermediate patches. I'm unsure if this is kosher, but patch 29 applied cleanly without them." https://bugs.launchpad.net/ubuntu/+source/bash/+bug/778627/+attachment/3486845/+files/bash_4.2-2ubuntu2-gg1.debdiff.txt -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/778627 Title: In natty, bash completion now quotes shell variable references rather than expanding them To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/bash/+bug/778627/+subscriptions -- ubuntu-bugs mailing list [email protected] https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs
