website: return HOWTO link and GPL violations address to the top
[oweals/busybox.git] / docs / busybox.net / news.html
1 <!--#include file="header.html" -->
2
3 <ul>
4   <li><b>25 June 2008 -- BusyBox 1.11.0 (unstable), BusyBox 1.10.4 (stable)</b>
5     <p><a href=http://busybox.net/downloads/busybox-1.11.0.tar.bz2>BusyBox 1.11.0</a>.
6     (<a href=http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_11_stable/>svn</a>,
7     <a href=http://busybox.net/downloads/fixes-1.11.0/>patches</a>,
8     <a href=http://busybox.net/fix.html>how to add a patch</a>)</p>
9     <p><a href=http://busybox.net/downloads/busybox-1.10.4.tar.bz2>BusyBox 1.10.4</a>.
10     (<a href=http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_10_stable/>svn</a>,
11     <a href=http://busybox.net/downloads/fixes-1.10.4/>patches</a>,
12     <a href=http://busybox.net/fix.html>how to add a patch</a>)</p>
13     <p>Sizes of busybox-1.10.4 and busybox-1.11.0 (with equivalent config, static uclibc build):<pre>
14    text    data     bss     dec     hex filename
15  800675     636    7080  808391   c55c7 busybox-1.10.4
16  798392     611    6900  805903   c4c0f busybox-1.11.0
17 </pre>
18
19     <p>New applets: inotify (Vladimir Dronnikov), man (Ivana Varekova),
20     fbsplash (Michele Sanges), depmod (Bernhard Fischer)
21
22     <p>Changes since previous release:
23       <ul>
24         <li>build system: reinstate CONFIG_CROSS_COMPILE_PREFIX
25         <li>ash: optional bash compatibility features added; other fixes
26         <li>hush: lots and lots of fixes
27         <li>msh: fix the case where the file has exec bit but can't be run directly (runs "$SHELL file" instead)
28         <li>msh: fix exit codes when command is not found or can't be execed
29         <li>udhcpc: added workaround for buggy kernels
30         <li>mount: fix mishandling of proto=tcp/udp
31         <li>diff: make it work on non-seekable streams
32         <li>openvt: made more compatible with "standard" one
33         <li>mdev: fix block/char device detection
34         <li>ping: add -w, -W support (James Simmons)
35         <li>crond: add handling of "MAILTO=user" lines
36         <li>start-stop-daemon: make --exec follow symlinks (Joakim Tjernlund)
37         <li>date: make it accept ISO date format
38         <li>echo: fix echo -e -n "msg\n\0" (David Pinedo)
39         <li>httpd: fix several bugs triggered by relative path in -h DIR
40         <li>printf: fix printf -%s- foo, printf -- -%s- foo
41         <li>syslogd: do not error out on missing files to rotate
42         <li>ls: support Unicode in names
43         <li>ip: support for the LOWER_UP flag (Natanael Copa)
44         <li>mktemp: make argument optional (coreutil 6.12 compat)
45         <li>libiproute: fix option parsing, so that "ip -o link" works again
46         <li>other fixes and code size reductions in many applets
47       </ul>
48     <p>
49     <a href=http://busybox.net/~vda/HOWTO/i486-linux-uclibc/HOWTO.txt>
50     How to build static busybox for i486-linux-uclibc</a>
51     <p>
52     The email address gpl@busybox.net is the recommended way to contact
53     the Software Freedom Law Center to report BusyBox license violations.
54     </p>
55
56   <li><b>12 June 2008 -- Sponsors!</b>
57     <p>We want to thank the following companies which are providing support
58     for BusyBox project:
59       <ul>
60         <li>AOE media, a <a href=http://www.aoemedia.com/typo3-development.html>
61         TYPO3 development agency</a> contributes financially.
62         <p>
63         <li><a href=http://www.analog.com/en/>Analog Devices, Inc.</a> provided
64         a <a href=http://docs.blackfin.uclinux.org/doku.php?id=bf537_quick_start>
65         Blackfin development board</a> free of charge.
66         <a href=http://www.analog.com/blackfin>Blackfin<a>
67         is a NOMMU processor, and its availability for testing is invaluable.
68         If you are an embedded device developer,
69         please note that Analog Devices has entire Linux distribution available
70         for download for this board. Visit
71         <a href=http://blackfin.uclinux.org/>http://blackfin.uclinux.org/</a>
72         for more information.
73       </ul>
74     </p>
75
76   <li><b>5 June 2008 -- BusyBox 1.10.3 (stable)</b>
77     <p><a href=http://busybox.net/downloads/busybox-1.10.3.tar.bz2>BusyBox 1.10.3</a>.
78     (<a href=http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_10_stable/>svn</a>,
79     <a href=http://busybox.net/downloads/fixes-1.10.3/>patches</a>,
80     <a href=http://busybox.net/fix.html>how to add a patch</a>)</p>
81     <p>
82     Bugfix-only release for 1.10.x branch. It contains fixes for dnsd, fuser, hush,
83     ip, mdev and syslogd.
84     </p>
85
86   <li><b>8 May 2008 -- BusyBox 1.10.2 (stable)</b>
87     <p><a href=http://busybox.net/downloads/busybox-1.10.2.tar.bz2>BusyBox 1.10.2</a>.
88     (<a href=http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_10_stable/>svn</a>,
89     <a href=http://busybox.net/downloads/fixes-1.10.2/>patches</a>,
90     <a href=http://busybox.net/fix.html>how to add a patch</a>)</p>
91     <p>
92     Bugfix-only release for 1.10.x branch. It contains fixes for echo, httpd, pidof,
93     start-stop-daemon, tar, taskset, tab completion in shells, build system.
94     <p>Please note that mdev was backported from current svn trunk. Please
95     report if you encounter any problems with it.
96     </p>
97
98   <li><b>19 April 2008 -- BusyBox 1.10.1 (stable)</b>
99     <p><a href=http://busybox.net/downloads/busybox-1.10.1.tar.bz2>BusyBox 1.10.1</a>.
100     (<a href=http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_10_stable/>svn</a>,
101     <a href=http://busybox.net/downloads/fixes-1.10.1/>patches</a>,
102     <a href=http://busybox.net/fix.html>how to add a patch</a>)</p>
103     <p>
104     Bugfix-only release for 1.10.x branch. It contains fixes for
105     fuser, init, less, nameif, tail, taskset, tcpudp, top, udhcp.
106
107   <li><b>21 March 2008 -- BusyBox 1.10.0 (unstable)</b>
108     <p><a href=http://busybox.net/downloads/busybox-1.10.0.tar.bz2>BusyBox 1.10.0</a>.
109     (<a href=http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_10_stable/>svn</a>,
110     <a href=http://busybox.net/downloads/fixes-1.10.0/>patches</a>,
111     <a href=http://busybox.net/fix.html>how to add a patch</a>)</p>
112
113     <p>Sizes of busybox-1.9.2 and busybox-1.10.0 (with almost full config, static uclibc build):<pre>
114    text    data     bss     dec     hex filename
115  781405     679    7500  789584   c0c50 busybox-1.9.2
116  773551     640    7372  781563   becfb busybox-1.10.0
117 </pre>
118     <p>Top 10 stack users:<pre>
119 busybox-1.9.2:               busybox-1.10.0:
120 echo_dg                 4116 bb_full_fd_action       4112
121 bb_full_fd_action       4112 find_list_entry2        4096
122 discard_dg              4108 readlink_main           4096
123 discard_dg              4096 ipaddr_list_or_flush    3900
124 echo_stream             4096 iproute_list_or_flush   3680
125 discard_stream          4096 insmod_main             3152
126 find_list_entry2        4096 fallbackSort            2952
127 readlink_main           4096 do_iproute              2492
128 ipaddr_list_or_flush    3900 cal_main                2464
129 iproute_list_or_flush   3680 readhere                2308
130 </pre>
131
132     <p>New applets: brctl, chat (by Vladimir Dronnikov &lt;dronnikov AT gmail.com&gt;),
133         findfs, ifenslave (closes bug 115), lpd (by Vladimir Dronnikov &lt;dronnikov AT gmail.com&gt;),
134         lpr+lpq (by Walter Harms), script (by Pascal Bellard &lt;pascal.bellard AT ads-lu.com&gt;),
135         sendmail (Vladimir Dronnikov &lt;dronnikov AT gmail.com&gt;), tac, tftpd.
136
137     <p>Made NOMMU-compatible: crond, crontab, ifupdown, inetd, init, runsv, svlogd, tcpsvd, udpsvd.
138
139     <p>Changes since previous release:
140       <ul>
141         <li>globally: add -Wunused-parameter
142         <li>globally: add optimization barrier to all "G trick" locations
143         <li>adduser/addgroup: check username for invalid chars (by Tito &lt;farmatito AT tiscali.it&gt;)
144         <li>adduser: optional support for long options. Closes bug 2134
145         <li>ash: handle "A=1 A=2 B=$A; echo $B". Closes bug 947
146         <li>ash: make ash -c "if set -o barfoo 2&gt;/dev/null; then echo foo; else echo bar; fi" work. Closes bug 1142
147         <li>build system: don't use "gcc -o /dev/null", old gcc can delete /dev/null in this case
148         <li>build system: fixes for cross-compiling on an OS X host
149         <li>build system: make it do without "od -t"
150         <li>build system: pass CFLAGS to link stage too. Closes bug 1376
151         <li>build system: add CONFIG_NOMMU
152         <li>cp: add ENABLE_FEATURE_VERBOSE_CP_MESSAGE. Closes bug 1470
153         <li>crontab: almost complete rewrite
154         <li>dnsd: properly set _src_ IP:port on outgoing UDP packets
155         <li>dpkg: fix bug where existence check was reversed
156         <li>eject: add -s for SCSI- and USB-devices (Nico Erfurth)
157         <li>fdisk: fix a case where break was reached only for DOS labels
158         <li>fsck: don't kill pid -1! (Roy Marples &lt;roy at marples.name&gt;)
159         <li>fsck_minix: fix bug in map_block2: s/(blknr &gt;= 256 * 256)/(blknr &lt; 256 * 256)/
160         <li>fuser: substantial rewrite
161         <li>getopt: add support for "a+" specifier for nonnegative int parameters. By Vladimir Dronnikov &lt;dronnikov at gmail.com&gt;
162         <li>getty: don't try to detect parity on local lines (Joakim Tjernlund &lt;Joakim.Tjernlund at transmode.se&gt;)
163         <li>halt: write wtmp entry if wtmp support is enabled
164         <li>httpd: "HEAD" support. Closes bug 1530
165         <li>httpd: fix bug 2004: wrong argv when interpreter is invoked
166         <li>httpd: fix bug where we did chdir("") if CGI path had only one "/"
167         <li>httpd: fix for POST upload
168         <li>httpd: support for "I:index.xml" syntax (Peter Korsgaard &lt;jacmet AT uclibc.org&gt;)
169         <li>hush: fix a case where none of pipe members could be started because of fork failure
170         <li>hush: more correct handling of piping
171         <li>hush: reinstate `cmd` handling for NOMMU
172         <li>hush: report [v]fork failures
173         <li>hush: set CLOEXEC on script file being executed
174         <li>hush: try to add a bit more of vfork-friendliness
175         <li>inetd: make "udp nowait" work
176         <li>inetd: make inetd IPv6-capable
177         <li>init: add FEATURE_KILL_REMOVED (Eugene Bordenkircher &lt;eugebo AT gmail.com&gt;)
178         <li>init: allow last line of config file to be not terminated by "\n"
179         <li>init: do not die if "/dev/null" is missing
180         <li>init: fix bug 1111: restart actions were not splitting words
181         <li>init: wait for orphaned children too while waiting for sysinit-like processes (harald-tuxbox AT arcor.de)
182         <li>ip route: "ip route" was misbehaving (extra argv+1 ate 1st env var)
183         <li>last: do not go into endless loop on read error
184         <li>less,klogd,syslogd,nc,tcpudp: exit on signal by killing itself, not exit(1)
185         <li>less: "examine" command will not bomb out on bad file name now
186         <li>less: fix bug where backspace wasn't actually deleting chars
187         <li>less: make it a bit more resistant against status line corruption
188         <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
189         <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!
190         <li>libbb: filename completion matches dangling symlinks too
191         <li>libbb: fix getopt state corruption for NOFORK applets
192         <li>libbb: full_read/write now will report partial data counts prior to error
193         <li>libbb: intrduce and use safe_gethostname. By Tito &lt;farmatito AT tiscali.it&gt;
194         <li>libbb: introduce and use nonblock_safe_read(). Yay! Our shells are immune from this nasty O_NONBLOCK now!
195         <li>login,su: avoid clearing environment with some options, as was intended
196         <li>microcom: read more than 1 byte from device, if possible
197         <li>microcom: split -d (delay) option away from -t
198         <li>mktemp: support -p DIR (Timo Teras &lt;timo.teras at iki.fi&gt;)
199         <li>mount: #ifdef out MOUNT_LABEL code parts if it is not selected
200         <li>mount: add another mount helper call method
201         <li>mount: allow and ignore _netdev option
202         <li>mount: make -f work even without mtab support (Cristian Ionescu-Idbohrn &lt;cristian.ionescu-idbohrn at axis.com&gt;)
203         <li>mount: optional support for -vv verbosity
204         <li>mount: plug a hole where FEATURE_MOUNT_HELPERS could allow execution of arbitrary command
205         <li>mount: recognize "dirsync" (closes bug 835)
206         <li>mount: sanitize environment if called by non-root
207         <li>mount: support for mount by label. Closes bug 1143
208         <li>mount: with -vv -f, say what mount() calls we were going to make
209         <li>msh: create testsuite (based on hush one)
210         <li>msh: don't use floating point in "times" builtin
211         <li>msh: fix Ctrl-C handling with line editing
212         <li>msh: fix for bug 846 ("break" didn't work second time)
213         <li>msh: glob0/glob1/glob2/glob3 were just a sorting routine, removed
214         <li>msh: instead of fixing "ls | cd", "cd | ls" etc disallow builtins in pipes. They make no sense there anyway
215         <li>msh: stop trying to parse variables in "msh SCRIPT VAR=val param". They are passed as ordinary parameters
216         <li>netstat: print control chars as "^C" etc
217         <li>nmeter: fix bug where %[mf] behaves as %[mt]
218         <li>nohup: compat patch by Christoph Gysin &lt;mailinglist.cache at gmail.com&gt;
219         <li>od: handle /proc files (which have filesize 0) correctly
220         <li>patch: don't trash permissions of patched file
221         <li>ps: add conditional support for -o [e]time
222         <li>ps: fix COMMAND column adjustment; overflow in USER and VSZ columns
223         <li>reset: call "stty sane". Closes bug 1414
224         <li>rmdir: optional long options support for Debian users. By Roberto Gordo Saez &lt;roberto.gordo AT gmail.com&gt;
225         <li>run-parts: add --reverse
226         <li>script: correctly handle buffered "tail" of output
227         <li>sed: "n" command must reset "we had successful subst" flag. Closes bug 1214
228         <li>sort: -z outputs NUL terminated lines. Closes bug 1591
229         <li>stty: fix mishandling of control keywords (Ralf Friedl &lt;Ralf.Friedl AT online.de&gt;)
230         <li>switch_root: stop at first non-option. Closes bug 1425
231         <li>syslogd: avoid excessive time() system calls
232         <li>syslogd: don't die if remote host's IP cannot be resolved. Retry resolutions every two minutes instead
233         <li>syslogd: fix shmat error check
234         <li>syslogd: optional support for dropping dups. Closes bug 436
235         <li>syslogd: send "\n"-terminated messages over the network. Fully closes bug 1574
236         <li>syslogd: tighten up hostname handling
237         <li>tail: fix "tail -c 20 /dev/huge_disk" (was taking ages)
238         <li>tar: compat: handle tarballs with only one zero block at the end
239         <li>tar: autodetection of gz/bz2 compressed tarballs. Closes bug 992
240         <li>tar: real support for -p. By Natanael Copa &lt;natanael.copa at gmail.com&gt;
241         <li>tcpudp: narrow down time window where we have no wildcard socket
242         <li>telnetd: use login always, not "sometimes login, sometimes shell"
243         <li>test: fix mishandling of "test ! arg1 op arg2 more args"
244         <li>trylink: instead of build error, disable --gc-sections if GLIBC and STATIC are selected
245         <li>udhcp: make file paths configurable
246         <li>udhcp: optional support for non-standard DHCP ports
247         <li>udhcp: set correct op byte in the packet for DHCPDECLINE
248         <li>udhcpc: filter unwanted packets in kernel (Cristian Ionescu-Idbohrn &lt;cristian.ionescu-idbohrn AT axis.com&gt;)
249         <li>udhcpc: fix wrong options in decline and release packets (Jonas Danielsson &lt;jonas.danielsson AT axis.com&gt;)
250         <li>umount: do not complain several times about the same mountpoint
251         <li>umount: do not try to free loop device or erase mtab if remounted ro
252         <li>umount: instead of non-standard -D, use -d with opposite meaning. Closes bug 1604
253         <li>unlzma: shrink by Pascal Bellard &lt;pascal.bellard AT ads-lu.com&gt;
254         <li>unzip: do not try to read entire compressed stream at once (it can be huge)
255         <li>unzip: handle short reads correctly
256         <li>vi: many fixes
257         <li>zcip: don't chdir to root
258         <li>zcip: open ARP socket before openlog (else we can trash syslog socket)
259       </ul>
260     </p>
261
262   <li><b>21 March 2008 -- BusyBox old stable releases</b>
263     <p>
264     Bugfix-only releases for four past branches. Links to locations
265     for future hot patches are in parentheses.
266     <p>
267     <a href=http://busybox.net/downloads/busybox-1.9.2.tar.bz2>1.9.2</a>
268     (<a href=http://busybox.net/downloads/fixes-1.9.2/>patches</a>),
269     <a href=http://busybox.net/downloads/busybox-1.8.3.tar.bz2>1.8.3</a>
270     (<a href=http://busybox.net/downloads/fixes-1.8.3/>patches</a>),
271     <a href=http://busybox.net/downloads/busybox-1.7.5.tar.bz2>1.7.5</a>
272     (<a href=http://busybox.net/downloads/fixes-1.7.5/>patches</a>),
273     <a href=http://busybox.net/downloads/busybox-1.5.2.tar.bz2>1.5.2</a>
274     (<a href=http://busybox.net/downloads/fixes-1.5.2/>patches</a>).
275     <p>
276     <a href=http://busybox.net/fix.html>How to add a patch.</a>
277     </p>
278
279     <li><b>Old News</b><p>
280     <a href="/oldnews.html">Click here to read older news</a>
281     </p>
282     </li>
283
284
285 </ul>
286
287 <!--#include file="footer.html" -->
288