Bash 3.0 Released
qazwsx789 writes "The first public release of bash-3.0 is now available via ftp and from the usual GNU mirror sites. For the official release notes by the author, Chet Ramey, check his usenet post."
← Back to Stories (view on slashdot.org)
Several bug fixes for POSIX compliance came in from Apple; their assistance is appreciated.
It looks like Apple is giving back to the community, and to a fundamental tool.
To the parent: I'm in the same boat. I thought bash 3?? What is there to add?? Looks like multibyte char support (sorry, I'm are a dum Amer'kin).
-truth
I had a steady B+ in my AI class until I failed the Turing test...
According to the changelog, all the messages are internationalized now, so if you spoke a language other than English, you can get error messages and such in your native language.
The main difference is full internationalisation support, which deserves a full version upgrade :)
:)
Unless you have scripts which used the old slightly dubious (but still not bad) internationalisation then you should notice no differences at all. There are a couple of really, really stupid looking scripts which now produce something different, but in almost every single case the new answer is I'm sure what everyone expected to appear before
Combination - fun iPhone puzzling
There's been an interesting little problem caused for people like Gentoo with the updates in bash 3.0.
http://bugs.gentoo.org/show_bug.cgi?id=58703
Just a simple move towards compliance breaks most of their scripts, so they've had to patch it out.
Lovely.
"How fine you look when dressed in rage."
Everything else, I do in emacs...
Athletic Scholarships to universities make as much sense as academic scholarships to sports teams.
Globs are more powerful: **/*.c will recursively search for .c files: much quicker to type than find.
You can match file types: e.g. *(@) will get you symlinks. *(U) gets files owned by you.
Syntax for alternation is a lot easier. No @(this|that) or !(*.f). Instead, it is (this|that) and ^*.f
Next point is completion. It includes a vast range of definitions so completion works well for lots of commands. The completion system handles completing parts of words so it better handles user@host completion. You get descriptions with completion match listings. Completion also has a really powerful context sensitive configuration system so you can make it work the way you like.
It has modules. For running a simple shell script it will actually use less space than bash because it doesn't need to load the line editor and other interactive related code into memory.
There is much much more. It takes a while to learn everything but if you just enable the completion functions (autoload -U compinit; compinit) you'll find it better than bash or tcsh from day 1.
-truth
I had a steady B+ in my AI class until I failed the Turing test...
Bash can now store timestamps in the history and save them to the history file. This alone is worth the upgrade for me. The option to erase duplicates is pretty nice too.
Zsh is still the best.
Bash developers have different priorities.
Bash became the default primarily because it is GNU.
Zsh has some ugly but powerful features like nested expansions. The two areas where bash is better than zsh is multibyte support and POSIX compliance. Much of that was contributed by IBM and Apple respectively. But if you use the shell a lot, you'll find zsh does a lot of things better. The completion is amazing. And when it isn't emulating sh/posix, it fixes some of the broken design decisions (like word splitting of variables) which saves you from doing stupid things.
The FSF actually does development in a very closed manner when it can (the gcc egcs split was partly because of this). Bash is a good example of this. That perhaps a good thing because it is probably good that bash doesn't get some of zsh's nasty (but powerful) features. And if zsh didn't exist, bash might have been forked by now. If you care about your shell, you'll find much more of a community on the zsh lists than the spam filled bug-bash list. You can't even get at alpha releases of bash without being one of the chosen few.