blob: 3e961c4daf95344f13713410a1c94981871b0d69 [file] [log] [blame]
<!--#include file="header.html" -->
<ul>
<li><b>25 June 2008 -- BusyBox 1.11.0 (unstable), BusyBox 1.10.4 (stable)</b>
<p><a href=http://busybox.net/downloads/busybox-1.11.0.tar.bz2>BusyBox 1.11.0</a>.
(<a href=http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_11_stable/>svn</a>,
<a href=http://busybox.net/downloads/fixes-1.11.0/>patches</a>,
<a href=http://busybox.net/fix.html>how to add a patch</a>)</p>
<p><a href=http://busybox.net/downloads/busybox-1.10.4.tar.bz2>BusyBox 1.10.4</a>.
(<a href=http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_10_stable/>svn</a>,
<a href=http://busybox.net/downloads/fixes-1.10.4/>patches</a>,
<a href=http://busybox.net/fix.html>how to add a patch</a>)</p>
<p>Sizes of busybox-1.10.4 and busybox-1.11.0 (with equivalent config, static uclibc build):<pre>
text data bss dec hex filename
800675 636 7080 808391 c55c7 busybox-1.10.4
798392 611 6900 805903 c4c0f busybox-1.11.0
</pre>
<p>New applets: inotify (Vladimir Dronnikov), man (Ivana Varekova),
fbsplash (Michele Sanges), depmod (Bernhard Fischer)
<p>Changes since previous release:
<ul>
<li>build system: reinstate CONFIG_CROSS_COMPILE_PREFIX
<li>ash: optional bash compatibility features added; other fixes
<li>hush: lots and lots of fixes
<li>msh: fix the case where the file has exec bit but can't be run directly (run "$SHELL $file" instead)
<li>msh: fix exit codes when command is not found or can't be execed
<li>udhcpc: added workaround for buggy kernels
<li>mount: fix mishandling of proto=tcp/udp
<li>diff: make it work on non-seekable streams
<li>openvt: made more compatible with "standard" one
<li>mdev: fix block/char device detection
<li>ping: add -w, -W support (James Simmons)
<li>crond: add handling of "MAILTO=user" lines
<li>start-stop-daemon: make --exec follow symlinks (Joakim Tjernlund)
<li>date: make it accept ISO date format
<li>echo: fix echo -e -n "msg\n\0" (David Pinedo)
<li>httpd: fix several bugs triggered by realtive path in -h DIR
<li>printf: fix printf -%s- foo, printf -- -%s- foo
<li>syslogd: do not error out on missing files to rotate
<li>ls: support Unicode in names
<li>ip: support for the LOWER_UP flag (Natanael Copa)
<li>mktemp: make argument optional (coreutil 6.12 compat)
<li>libiproute: fix option parsing, so that "ip -o link" works again
<li>other fixes and code size reductions in many applets
</ul>
</p>
<li><b>12 June 2008 -- Sponsors!</b>
<p>We want to thank the following companies which are providing support
for BusyBox project:
<ul>
<li>AOE media, a <a href=http://www.aoemedia.com/typo3-development.html>
TYPO3 development agency</a> contributes financially.
<p>
<li><a href=http://www.analog.com/en/>Analog Devices, Inc.</a> provided
a <a href=http://docs.blackfin.uclinux.org/doku.php?id=bf537_quick_start>
Blackfin development board</a> free of charge.
<a href=http://www.analog.com/blackfin>Blackfin<a>
is a NOMMU processor, and its availability for testing is invaluable.
If you are an embedded device developer,
please note that Analog Devices has entire Linux distribution available
for download for this board. Visit
<a href=http://blackfin.uclinux.org/>http://blackfin.uclinux.org/</a>
for more information.
</ul>
</p>
<li><b>5 June 2008 -- BusyBox 1.10.3 (stable)</b>
<p><a href=http://busybox.net/downloads/busybox-1.10.3.tar.bz2>BusyBox 1.10.3</a>.
(<a href=http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_10_stable/>svn</a>,
<a href=http://busybox.net/downloads/fixes-1.10.3/>patches</a>,
<a href=http://busybox.net/fix.html>how to add a patch</a>)</p>
<p>
Bugfix-only release for 1.10.x branch. It contains fixes for dnsd, fuser, hush,
ip, mdev and syslogd.
</p>
<li><b>8 May 2008 -- BusyBox 1.10.2 (stable)</b>
<p><a href=http://busybox.net/downloads/busybox-1.10.2.tar.bz2>BusyBox 1.10.2</a>.
(<a href=http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_10_stable/>svn</a>,
<a href=http://busybox.net/downloads/fixes-1.10.2/>patches</a>,
<a href=http://busybox.net/fix.html>how to add a patch</a>)</p>
<p>
Bugfix-only release for 1.10.x branch. It contains fixes for echo, httpd, pidof,
start-stop-daemon, tar, taskset, tab completion in shells, build system.
<p>Please note that mdev was backported from current svn trunk. Please
report if you encounter any problems with it.
</p>
<li><b>19 April 2008 -- BusyBox 1.10.1 (stable)</b>
<p><a href=http://busybox.net/downloads/busybox-1.10.1.tar.bz2>BusyBox 1.10.1</a>.
(<a href=http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_10_stable/>svn</a>,
<a href=http://busybox.net/downloads/fixes-1.10.1/>patches</a>,
<a href=http://busybox.net/fix.html>how to add a patch</a>)</p>
<p>
Bugfix-only release for 1.10.x branch. It contains fixes for
fuser, init, less, nameif, tail, taskset, tcpudp, top, udhcp.
<li><b>21 March 2008 -- BusyBox 1.10.0 (unstable)</b>
<p><a href=http://busybox.net/downloads/busybox-1.10.0.tar.bz2>BusyBox 1.10.0</a>.
(<a href=http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_10_stable/>svn</a>,
<a href=http://busybox.net/downloads/fixes-1.10.0/>patches</a>,
<a href=http://busybox.net/fix.html>how to add a patch</a>)</p>
<p>Sizes of busybox-1.9.2 and busybox-1.10.0 (with almost full config, static uclibc build):<pre>
text data bss dec hex filename
781405 679 7500 789584 c0c50 busybox-1.9.2
773551 640 7372 781563 becfb busybox-1.10.0
</pre>
<p>Top 10 stack users:<pre>
busybox-1.9.2: busybox-1.10.0:
echo_dg 4116 bb_full_fd_action 4112
bb_full_fd_action 4112 find_list_entry2 4096
discard_dg 4108 readlink_main 4096
discard_dg 4096 ipaddr_list_or_flush 3900
echo_stream 4096 iproute_list_or_flush 3680
discard_stream 4096 insmod_main 3152
find_list_entry2 4096 fallbackSort 2952
readlink_main 4096 do_iproute 2492
ipaddr_list_or_flush 3900 cal_main 2464
iproute_list_or_flush 3680 readhere 2308
</pre>
<p>New applets: brctl, chat (by Vladimir Dronnikov &lt;dronnikov AT gmail.com&gt;),
findfs, ifenslave (closes bug 115), lpd (by Vladimir Dronnikov &lt;dronnikov AT gmail.com&gt;),
lpr+lpq (by Walter Harms), script (by Pascal Bellard &lt;pascal.bellard AT ads-lu.com&gt;),
sendmail (Vladimir Dronnikov &lt;dronnikov AT gmail.com&gt;), tac, tftpd.
<p>Made NOMMU-compatible: crond, crontab, ifupdown, inetd, init, runsv, svlogd, tcpsvd, udpsvd.
<p>Changes since previous release:
<ul>
<li>globally: add -Wunused-parameter
<li>globally: add optimization barrier to all "G trick" locations
<li>adduser/addgroup: check username for invalid chars (by Tito &lt;farmatito AT tiscali.it&gt;)
<li>adduser: optional support for long options. Closes bug 2134
<li>ash: handle "A=1 A=2 B=$A; echo $B". Closes bug 947
<li>ash: make ash -c "if set -o barfoo 2&gt;/dev/null; then echo foo; else echo bar; fi" work. Closes bug 1142
<li>build system: don't use "gcc -o /dev/null", old gcc can delete /dev/null in this case
<li>build system: fixes for cross-compiling on an OS X host
<li>build system: make it do without "od -t"
<li>build system: pass CFLAGS to link stage too. Closes bug 1376
<li>build system: add CONFIG_NOMMU
<li>cp: add ENABLE_FEATURE_VERBOSE_CP_MESSAGE. Closes bug 1470
<li>crontab: almost complete rewrite
<li>dnsd: properly set _src_ IP:port on outgoing UDP packets
<li>dpkg: fix bug where existence check was reversed
<li>eject: add -s for SCSI- and USB-devices (Nico Erfurth)
<li>fdisk: fix a case where break was reached only for DOS labels
<li>fsck: don't kill pid -1! (Roy Marples &lt;roy at marples.name&gt;)
<li>fsck_minix: fix bug in map_block2: s/(blknr &gt;= 256 * 256)/(blknr &lt; 256 * 256)/
<li>fuser: substantial rewrite
<li>getopt: add support for "a+" specifier for nonnegative int parameters. By Vladimir Dronnikov &lt;dronnikov at gmail.com&gt;
<li>getty: don't try to detect parity on local lines (Joakim Tjernlund &lt;Joakim.Tjernlund at transmode.se&gt;)
<li>halt: write wtmp entry if wtmp support is enabled
<li>httpd: "HEAD" support. Closes bug 1530
<li>httpd: fix bug 2004: wrong argv when interpreter is invoked
<li>httpd: fix bug where we did chdir("") if CGI path had only one "/"
<li>httpd: fix for POST upload
<li>httpd: support for "I:index.xml" syntax (Peter Korsgaard &lt;jacmet AT uclibc.org&gt;)
<li>hush: fix a case where none of pipe members could be started because of fork failure
<li>hush: more correct handling of piping
<li>hush: reinstate `cmd` handling for NOMMU
<li>hush: report [v]fork failures
<li>hush: set CLOEXEC on script file being executed
<li>hush: try to add a bit more of vfork-friendliness
<li>inetd: make "udp nowait" work
<li>inetd: make inetd IPv6-capable
<li>init: add FEATURE_KILL_REMOVED (Eugene Bordenkircher &lt;eugebo AT gmail.com&gt;)
<li>init: allow last line of config file to be not terminated by "\n"
<li>init: do not die if "/dev/null" is missing
<li>init: fix bug 1111: restart actions were not splitting words
<li>init: wait for orphaned children too while waiting for sysinit-like processes (harald-tuxbox AT arcor.de)
<li>ip route: "ip route" was misbehaving (extra argv+1 ate 1st env var)
<li>last: do not go into endless loop on read error
<li>less,klogd,syslogd,nc,tcpudp: exit on signal by killing itself, not exit(1)
<li>less: "examine" command will not bomb out on bad file name now
<li>less: fix bug where backspace wasn't actually deleting chars
<li>less: make it a bit more resistant against status line corruption
<li>less: improve search when data is not supplied fast enough by stdin - now will try reading for 1-2 seconds before declaring that there is no match. This fixes a very common annoyance with long manpages
<li>less: update line input so that it doesn't interfere with screen update. Makes "man bash", [enter], [/], &lt;enter search pattern&gt;, [enter] more usable - manpage now draws even as you enter the pattern!
<li>libbb: filename completion matches dangling symlinks too
<li>libbb: fix getopt state corruption for NOFORK applets
<li>libbb: full_read/write now will report partial data counts prior to error
<li>libbb: intrduce and use safe_gethostname. By Tito &lt;farmatito AT tiscali.it&gt;
<li>libbb: introduce and use nonblock_safe_read(). Yay! Our shells are immune from this nasty O_NONBLOCK now!
<li>login,su: avoid clearing environment with some options, as was intended
<li>microcom: read more than 1 byte from device, if possible
<li>microcom: split -d (delay) option away from -t
<li>mktemp: support -p DIR (Timo Teras &lt;timo.teras at iki.fi&gt;)
<li>mount: #ifdef out MOUNT_LABEL code parts if it is not selected
<li>mount: add another mount helper call method
<li>mount: allow and ignore _netdev option
<li>mount: make -f work even without mtab support (Cristian Ionescu-Idbohrn &lt;cristian.ionescu-idbohrn at axis.com&gt;)
<li>mount: optional support for -vv verbosity
<li>mount: plug a hole where FEATURE_MOUNT_HELPERS could allow execution of arbitrary command
<li>mount: recognize "dirsync" (closes bug 835)
<li>mount: sanitize environment if called by non-root
<li>mount: support for mount by label. Closes bug 1143
<li>mount: with -vv -f, say what mount() calls we were going to make
<li>msh: create testsuite (based on hush one)
<li>msh: don't use floating point in "times" builtin
<li>msh: fix Ctrl-C handling with line editing
<li>msh: fix for bug 846 ("break" didn't work second time)
<li>msh: glob0/glob1/glob2/glob3 were just a sorting routine, removed
<li>msh: instead of fixing "ls | cd", "cd | ls" etc disallow builtins in pipes. They make no sense there anyway
<li>msh: stop trying to parse variables in "msh SCRIPT VAR=val param". They are passed as ordinary parameters
<li>netstat: print control chars as "^C" etc
<li>nmeter: fix bug where %[mf] behaves as %[mt]
<li>nohup: compat patch by Christoph Gysin &lt;mailinglist.cache at gmail.com&gt;
<li>od: handle /proc files (which have filesize 0) correctly
<li>patch: don't trash permissions of patched file
<li>ps: add conditional support for -o [e]time
<li>ps: fix COMMAND column adjustment; overflow in USER and VSZ columns
<li>reset: call "stty sane". Closes bug 1414
<li>rmdir: optional long options support for Debian users. By Roberto Gordo Saez &lt;roberto.gordo AT gmail.com&gt;
<li>run-parts: add --reverse
<li>script: correctly handle buffered "tail" of output
<li>sed: "n" command must reset "we had successful subst" flag. Closes bug 1214
<li>sort: -z outputs NUL terminated lines. Closes bug 1591
<li>stty: fix mishandling of control keywords (Ralf Friedl &lt;Ralf.Friedl AT online.de&gt;)
<li>switch_root: stop at first non-option. Closes bug 1425
<li>syslogd: avoid excessive time() system calls
<li>syslogd: don't die if remote host's IP cannot be resolved. Retry resolutions every two minutes instead
<li>syslogd: fix shmat error check
<li>syslogd: optional support for dropping dups. Closes bug 436
<li>syslogd: send "\n"-terminated messages over the network. Fully closes bug 1574
<li>syslogd: tighten up hostname handling
<li>tail: fix "tail -c 20 /dev/huge_disk" (was taking ages)
<li>tar: compat: handle tarballs with only one zero block at the end
<li>tar: autodetection of gz/bz2 compressed tarballs. Closes bug 992
<li>tar: real support for -p. By Natanael Copa &lt;natanael.copa at gmail.com&gt;
<li>tcpudp: narrow down time window where we have no wildcard socket
<li>telnetd: use login always, not "sometimes login, sometimes shell"
<li>test: fix mishandling of "test ! arg1 op arg2 more args"
<li>trylink: instead of build error, disable --gc-sections if GLIBC and STATIC are selected
<li>udhcp: make file paths configurable
<li>udhcp: optional support for non-standard DHCP ports
<li>udhcp: set correct op byte in the packet for DHCPDECLINE
<li>udhcpc: filter unwanted packets in kernel (Cristian Ionescu-Idbohrn &lt;cristian.ionescu-idbohrn AT axis.com&gt;)
<li>udhcpc: fix wrong options in decline and release packets (Jonas Danielsson &lt;jonas.danielsson AT axis.com&gt;)
<li>umount: do not complain several times about the same mountpoint
<li>umount: do not try to free loop device or erase mtab if remounted ro
<li>umount: instead of non-standard -D, use -d with opposite meaning. Closes bug 1604
<li>unlzma: shrink by Pascal Bellard &lt;pascal.bellard AT ads-lu.com&gt;
<li>unzip: do not try to read entire compressed stream at once (it can be huge)
<li>unzip: handle short reads correctly
<li>vi: many fixes
<li>zcip: don't chdir to root
<li>zcip: open ARP socket before openlog (else we can trash syslog socket)
</ul>
</p>
<li><b>21 March 2008 -- BusyBox old stable releases</b>
<p>
Bugfix-only releases for four past branches. Links to locations
for future hot patches are in parentheses.
<p>
<a href=http://busybox.net/downloads/busybox-1.9.2.tar.bz2>1.9.2</a>
(<a href=http://busybox.net/downloads/fixes-1.9.2/>patches</a>),
<a href=http://busybox.net/downloads/busybox-1.8.3.tar.bz2>1.8.3</a>
(<a href=http://busybox.net/downloads/fixes-1.8.3/>patches</a>),
<a href=http://busybox.net/downloads/busybox-1.7.5.tar.bz2>1.7.5</a>
(<a href=http://busybox.net/downloads/fixes-1.7.5/>patches</a>),
<a href=http://busybox.net/downloads/busybox-1.5.2.tar.bz2>1.5.2</a>
(<a href=http://busybox.net/downloads/fixes-1.5.2/>patches</a>).
<p>
<a href=http://busybox.net/fix.html>How to add a patch.</a>
<p>
<a href=http://busybox.net/~vda/HOWTO_bbox_with_uclibc.txt>How to build static busybox against uclibc</a>
<p>
The email address gpl@busybox.net is the recommended way to contact
the Software Freedom Law Center to report BusyBox license violations.
</p>
<li><b>Old News</b><p>
<a href="/oldnews.html">Click here to read older news</a>
</p>
</li>
</ul>
<!--#include file="footer.html" -->