Mercurial > hg > toybox
annotate www/news.html @ 1776:7bf68329eb3b draft default tip
Repository switched to git at https://github.com/landley/toybox
author | Rob Landley <rob@landley.net> |
---|---|
date | Thu, 09 Apr 2015 02:28:32 -0500 |
parents | 8d6203ecfb88 |
children |
rev | line source |
---|---|
1180
94eb7b9127d2
Change header and pages so each page has its own title.
Rob Landley <rob@landley.net>
parents:
1125
diff
changeset
|
1 <html><head><title>toybox news</title> |
365
8f0b24cc7cd7
Minor web page updates (put header/footer back, add a few <hr> tags).
Rob Landley <rob@landley.net>
parents:
361
diff
changeset
|
2 <!--#include file="header.html" --> |
8f0b24cc7cd7
Minor web page updates (put header/footer back, add a few <hr> tags).
Rob Landley <rob@landley.net>
parents:
361
diff
changeset
|
3 |
1069
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
4 <p>Toybox combines common Linux command line utilities together |
927 | 5 into a single BSD-licensed executable that's simple, small, fast, |
6 reasonably standards-compliant, and powerful enough to turn Android into | |
966
f1fef0c18d8c
Link to Georgi's mirror on github.
Rob Landley <rob@landley.net>
parents:
944
diff
changeset
|
7 a development environment. See the links on the left for details.</p> |
f1fef0c18d8c
Link to Georgi's mirror on github.
Rob Landley <rob@landley.net>
parents:
944
diff
changeset
|
8 |
f1fef0c18d8c
Link to Georgi's mirror on github.
Rob Landley <rob@landley.net>
parents:
944
diff
changeset
|
9 <h2>News</h2> |
1264
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
10 |
1709 | 11 <hr><b>February 25, 2015</b> |
12 <blockquote><p>"A common mistake that people make when trying to design | |
13 something completely foolproof is to underestimate the ingenuity of | |
14 complete fools."</p><p>- The Hitchhiker's Guide to the Galaxy.</p></blockquote> | |
15 | |
16 <p><a href=downloads/toybox-0.5.2.tar.gz>Toybox 0.5.2</a> | |
17 (<a href=/hg/toybox/shortlog/1702>commit 1702</a>) is out.</p> | |
18 | |
19 <p>New promoted commands: sed (finally fixed enough it builds Linux From | |
20 Scratch), printf (cleaned up and promoted), shred and | |
21 base64 (the Tizen guys wanted them), getenforce, setenforce, and chcon (android), | |
22 mix (promoted with fixes from Isaac Dunham), nsenter (from | |
23 Andy Lutomirski, merged into unshare).</p> | |
24 | |
25 <p>Elliott Hughes submited a bunch of patches to support Android (to | |
26 both toybox and Bionic libc, which he maintains). On toybox's end this | |
27 involved a lot of fixups to portability.[ch] and fixes to over a dozen | |
28 commands, plus several new ones. Other portability fixes included working | |
29 with buildroot's uclibc fork and building for nommu targets.</p> | |
30 | |
31 <p>The new "make change" target builds each toybox command as a standalone | |
32 binary. Rather a lot of commands that didn't build by themselves (mv depending | |
33 on cp and so on) were hit with a large rock until they built standalone. | |
34 This involved rewriting bits of option parsing, more elaborate dependency | |
35 generation, making each command have its own config | |
36 symbol and main() function (even when it's just a wrapper calling another | |
37 command's main()), and so on. Also, some commands can't be built standalone | |
38 at a conceptual level: "help" describes other enabled commands and "sh" | |
39 has a number of bulitin commands (cd, exit, set) that require the | |
40 multiplexer infrastructure, so "make change" filters them out.</p> | |
41 | |
42 <p>The mailing list's web archive is still screwed up. Dreamhost has | |
43 been trying to fix it since approximately September. There are | |
44 <a href=http://www.mail-archive.com/toybox@lists.landley.net/>two</a> | |
45 <a href=http://news.gmane.org/gmane.linux.toybox>other</a> less broken | |
46 archives, but neither has quite the same UI as mailman.</p> | |
47 | |
48 <h3>Bugfixes and tweaks</h3> | |
49 | |
50 <p>Cynt Rynt sent in tests for ifconfig, | |
51 Robert Thompson taught factor to accept whitespace separated arguments, | |
52 Hyejin Kim pointed out that some of mktemp's longopts were attached to | |
53 the wrong short options, | |
54 Luis Felipe Strano Moraes fixed a wrong free() call in bootchartd in pending. | |
55 Patches from Ashwini Sharma to make "df /dev/node" work, prevent du from | |
56 looping endlessly following symlinks, and to make expr.c | |
57 (in pending) understand == and regex matches. (Speaking of expr, it gets | |
58 priority groupings wrong but the bug was actually in the posix spec's | |
59 HTML conversion. They fixed the posix spec upstream for us. Still need | |
60 to fix the expr code, but it's in pending for a reason...)</p> | |
61 | |
62 <p>Some commands grew new option flags, such as cp --remove-destination | |
63 and touch -h.</p> | |
64 | |
65 <p>The parallel build has better error reporting now. When toybox needs to | |
66 re-exec itself to regain suid root permissions and hasn't got the suid bit, | |
67 it now gives the right error message ("not root" instead of "no such command"). | |
68 | |
69 <p>Added a test to "mount" to not mount the same device/directory combination | |
70 over itself (the OS catches this for block devices, but not for tmpfs). | |
71 Make blkid distinguish ext3 from ext4. Added catv back into cat (because | |
72 the Android guys wanted it, and they have historical usage on their side, | |
73 so...). Handle nanoseconds in touch.</p> | |
74 | |
75 <p>Fixed a segfault when CP_MORE was disabled (the resulting option flag list | |
76 no longer defined -d but still had it in option groups at the end). | |
77 Workaround for glibc redefining dirname() and basename() to random non-posix | |
78 semantics because gnu. (They could have created dirname_r() but didn't want | |
79 to.)</p> | |
80 | |
81 <p>Fix an ifconfig test that was preventing assigning an ipv4 address to | |
82 interface aliases. Several cleanup passes on hwclock but not quite | |
83 promoted out of pending yet.<p> | |
84 | |
85 <p>Fixed a wrong error message in rm (if you had a chmod 000 directory and | |
86 did rm -r on it without -f, after the prompt it would complain it was a | |
87 directory, which was not the problem).</p> | |
88 | |
89 <p>The gzip compression code now does "store only" output to stdout, for | |
90 what that's worth.</p> | |
91 | |
92 <p>Cleanup mountpoint and expand, and remove them from toys/pending/README | |
93 (a list of commands that predate the toys/pending directory but needed | |
94 another pass).</p> | |
95 | |
96 <h3>Library and infrastructure:</h3> | |
97 | |
98 <p>Reworked the option parsing infrastructure so more commands build | |
99 standalone (via scripts/single.sh or "make change"). The option flag bit | |
100 values are no longer packed, it leaves spaces where currently disabled | |
101 flags go, and you can #define FORCE_FLAGS so disabled flags aren't zeroed. | |
102 This allows multiple commands to more easily share infrastructure, even if | |
103 your current flag context is for a disabled command (switched off in config), | |
104 you can force them to stay on and as long as the flags read the same right | |
105 to left they'll have the same values.</p> | |
106 | |
107 <p>We've started removing use of strncpy() because it's a hugely broken | |
108 standard C function: the length is the maximum length to _append_, not | |
109 the size of the destination buffer. It memsets the remaining space it didn't | |
110 copy ala "memset(dest+strlen(dest), 0, len);" so | |
111 if you think len is the size of dest you're guaranteed to stomp memory off the | |
112 end). And if it runs out of space it won't null terminate because reasons. | |
113 (Meanwhile sprintf("%*s", len, str) is counting wide characters in your current | |
114 locale, so if you set a locale other than "C" it will also go past your | |
115 allocated buffer size. Whoever is maintining the C library standards is really | |
116 bad at strings.) | |
117 Instead we have xstrncat() which will error_exit() if src+dest+1 doesn't | |
118 fit in the buffer. (Because randomly truncating input data isn't necessarily | |
119 an improvement.) And there's always xmprintf().</p> | |
120 | |
121 <p>Similarly, strtol() doesn't return an error indicator on overflow, | |
122 you have to clear and then check errno. So new xstrtol() that cares | |
123 about overflow.</p> | |
124 | |
125 <p>The bionic and musl guys agree faccessat(AT_SYMLINK_NOFOLLOW) is not | |
126 supported, so stop using it.</p> | |
127 | |
128 <p>Fixed toy_exec() to detect when argc is in optargs, so we don't | |
129 need a separate xexec_optargs().</p> | |
130 | |
131 <hr><b>February 18, 2015</b> | |
132 <p>Dreamhost continues to be unable to make mailing list archives work, so | |
133 here's <a href=http://www.mail-archive.com/toybox@lists.landley.net/>another | |
134 list archive</a> with a less awkward interface than gmane.</p> | |
135 | |
136 <p>(Neither gives you the convenient historical monthly views of mailman, | |
137 but I still have hopes dreamhost will someday figure out what they're doing | |
138 wrong. They've only been trying since October. Last month they did a | |
139 <a href=http://www.dreamhoststatus.com/2015/01/14/discussion-list-hardware-maintenance/>hardware upgrade to fix a software problem</a>, and the stale | |
140 data loads much faster now, so that's something.)</p> | |
141 | |
142 <p>Update (Feb 19): the archive started updating again, by discarding | |
143 all the pending data. So there are now _two_ giant holes in Dreamhost's | |
144 web archive, from Dec 15-Jan 3, and then another hole from Jan 16-Feb 18. | |
145 The relevant messages are in both of the other archives. Here's hoping | |
146 the chronic archive constipation problem won't happen a sixth time.</p> | |
147 | |
1631 | 148 <hr><b>December 30, 2014</b> |
149 <p>Due to Dreamhost's <a href=http://landley.net/dreamhost.txt>ongoing</a> | |
150 <a href=http://landley.net/dreamhost2.txt>inability</a> to make mailman | |
151 work reliably, I've added a link to a backup web archive at | |
152 <a href=http://news.gmane.org/gmane.linux.toybox>gmane</a> to the nav bar | |
153 on the left.</p> | |
154 | |
155 <p>You still subscribe to the list through | |
156 <a href=http://lists.landley.net/listinfo.cgi/toybox-landley.net>the first link</a>.</p> | |
157 | |
1709 | 158 <p>Update (January 27, 2015): they're <a href=https://twitter.com/landley/status/558428839462703104>still working on it</a>.</p> |
159 | |
1581
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
160 <hr><b>November 19, 2014</b> |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
161 |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
162 <blockquote><p>"This time it was right, it would work, and no one would have to get nailed to anything." - The Hitchhiker's Guide to the Galaxy.</p></blockquote> |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
163 |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
164 <p><a href=downloads/toybox-0.5.1.tar.bz2>Toybox 0.5.1</a> |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
165 (<a href=/hg/toybox/shortlog/1566>commit 1566</a>) is out.</p> |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
166 |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
167 <p>It's an interim release, mostly bugfixes. There are several new commands, |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
168 but they're all in pending.</p> |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
169 |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
170 <h3>Development</h3> |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
171 |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
172 <p>Finally implemented sed, which is still in pending because although |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
173 it's feature complete according to posix, and even passes the parts of |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
174 Busybox's sed test suite that aren't explicitly testing for gnu bugs we |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
175 don't want to copy, it's not yet good enough to build Linux From Scratch. |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
176 (The ./configure stages use very long sed scripts. 20 commits worth of |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
177 implementation and debugging, just under 1000 lines of code, and there's |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
178 still more to do. We're definitely up to some of the "fiddly" commands now. |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
179 Did you know "echo hello | sed p - -" segfaults gnu sed in Ubuntu 12.04? |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
180 Yeah...)</p> |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
181 |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
182 <p>Talked with the Tizen developers to follow up on their desire to |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
183 make toybox a part of the base Tizen system, and got a list of commands |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
184 to add to the roadmap. The tizen todo list is:</p> |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
185 |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
186 <blockquote><p> |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
187 wget, sha256*, gzip, gunzip, bunzip2, rsync, zdiff*, |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
188 less, ar, arch, base64, csplit, dir, fmt, join, |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
189 nproc, shred, shuf, stdbuf, stty, test, tr, unexpand, |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
190 users, vdir, diff3, sdiff, dosfsck (fsck.vfat), awk, fdisk |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
191 </p></blockquote> |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
192 |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
193 <p>(Most of which was already on the todo list, but it helps prioritize.)</p> |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
194 |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
195 <p>Fixed md5sum and sha1sum on big endian systems (reported by James McMechan). |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
196 Andy Lutomirski fixed unshare's help text and option parsing, |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
197 and submitted nsenter (a tool to use setns(2)) to pending. |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
198 Isaac Dunham implemented acpi -ctV options, and spotted the bug that ls -d |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
199 was inappropraitely following command line symlinks without -H or -L (it |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
200 should act like ls -l does), and ls -F handles symlinks wrong too. |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
201 Lukasz Szpakowski sent in two bugfixes to tail.c. Cynt Rynt spotted an |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
202 unnecessary assignment in lib/password.c.</p> |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
203 |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
204 <p>Ashwini Sharma's team was as busy as usual, submitting tr, crontab, and |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
205 ipcrm, and hwclock to pending, more features to the pending ip.c, and a |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
206 pile of bugfixes (to chgrp, killall, ifconfig, insmod, |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
207 losetup, comm, cp, id, xwrap, netcat, modprobe, nohup...) mostly found by |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
208 static analysis. (These fixes are mostly to seldom-used codepaths like the |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
209 TOYBOX_FREE config option, but test coverage is always appreciated.) Ashwini |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
210 also suggested upgrading ln -f to leave the original target alone if link |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
211 creation fails, and reported that mv -f and -i weren't implemented (now fixed).</p> |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
212 |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
213 <p>New config option: TOYBOX_NORECURSE prevents xexec() from making internal |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
214 function calls (for nommu systems with a finite stack).</p> |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
215 |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
216 <p>The "toybox" multiplexer command no longer adds a trailing space to each |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
217 line of command names, so things like "./toybox | tr ' \n' '|'" to create |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
218 a grep pattern snippet are easier to do. (Why you'd want to is your business, |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
219 but the output is tidier now.)</p> |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
220 |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
221 <h3>Infrastructure</h3> |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
222 |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
223 <p>Isaac Dunham added Android support to portability.h, including compile |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
224 probes for functions missing from bionic-libc, and annotated the commands that |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
225 use those functions. We haven't really tested building against bionic, |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
226 but in theory it's possible now.</p> |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
227 |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
228 <p>Running the test suite now color codes the PASS/SKIP/FAIL notifications |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
229 if output is to a tty. (And in case you missed it last time, VERBOSE=fail |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
230 to stop at the first failure is really useful.)</p> |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
231 |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
232 <p>In loopfiles_rw() use O_CLOEXEC instead of O_RDONLY to request the loop |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
233 function close filehandles for us. (Otherwise the callback function must |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
234 close each supplied filehandle itself.)</p> |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
235 |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
236 <p>The printf-style escape parsing ("\n" and friends) got factored out into |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
237 a new unescape() function.</p> |
22a910100df7
Check in most recent release notes.
Rob Landley <rob@landley.net>
parents:
1514
diff
changeset
|
238 |
1514 | 239 <hr><b>October 2, 2014</b> |
240 <blockquote><p>"There is an art, it says, or rather, a knack to flying. | |
241 The knack lies in learning how to throw yourself at the ground and miss... | |
242 Clearly, it is this second part, the missing, which presents the | |
243 difficulties." - The Hitchhiker's Guide to the Galaxy.<p></blockquote> | |
244 | |
245 <p><a href=downloads/toybox-0.5.0.tar.bz2>Toybox 0.5.0</a> | |
246 (<a href=/hg/toybox/shortlog/1512>commit 1512</a>) is out.</p> | |
247 | |
248 <h3>New commands</h3> | |
249 | |
250 <p>The new commands are find, install, factor, and mount. Promoted commands | |
251 (cleaned up and moved out of "pending") are lspci, inotifyd, and blockdev.</p> | |
252 | |
253 <p>cp now implements -HL and -F to force delete of pending files, cpio now | |
254 ignores -m and implements -p, ls -C now has utf8 support (using wcwidth | |
255 instead of strlen), and umount got a number of upgrades involving | |
256 looking things up in /proc/mounts. Other minor cleanups happend to | |
257 cut, touch, free, and id.</p> | |
258 | |
259 <p>In pending: Bradley Controy submitted mix (adjusts OSS sound volume). Ashwini | |
260 Sharma submitted diff, userdel, blockdev, ipcs, and crond, upgraded | |
261 fdisk, fsck, and ftpget, and ran a static analyzer on a lot of other code. | |
262 Partial cleanup was done to useradd, userdel, groupadd, and groupdel.</p> | |
263 | |
264 <h3>Build infrastructure</h3> | |
265 | |
266 <p><b>Parallel builds</b></p> | |
267 | |
268 <p>The build now takes advantage of SMP, autodetecting the number of | |
269 processors. (Export the environment variable CPUS to pick a specific number.) | |
270 Other build changes: split out $LDOPTIMIZE because old compilers complain | |
271 about linker options passed with -c, and the entire "generated" directory now | |
272 gets deleted by clean (the README that was in there got merged into code.html).</p> | |
273 | |
274 <p><b>Standalone builds</b></p> | |
275 | |
276 <p>The standalone build infrastructure (scripts/single.sh) got upgraded to | |
277 build more commands as standalone executables. In make.sh the source file | |
278 selection uses a regex to find the source files with the NEWTOY/OLDTOY macro | |
279 for the command. It enables each command's | |
280 sub-options (so CP has CP_MORE), enables I18N and FLOAT support to build | |
281 full-featured commands, and includes --help text (at least when | |
282 the command doesn't use another command's help). The OLDTOY() macro | |
283 now produces (redundant) function prototypes so you can build an OLDTOY | |
284 without the NEWTOY</p> | |
285 | |
286 <p>It doesn't quite have complete coverage yet, the defconfig entries that | |
287 aren't building standalone yet are:</p> | |
288 | |
289 <blockquote><p>chown, egrep, fgrep, fstype, halt, mv, nc, poweroff, unix2dos, | |
290 whoami</p></blockquote> | |
291 | |
292 <p>The main reason for standalone build failures is NEWTOY() or OLDTOY() | |
293 entries that don't have their own config symbol. Another problem is entries | |
294 that depend on another entry in kconfig, usually because common infrastructure | |
295 is using one command's flags (which the other commands copy): if that command | |
296 is disabled, the FLAG macros become 0 so dead code elimination can remove the | |
297 code. It's <a href=http://landley.net/hg/toybox/rev/1503>possible | |
298 to untangle</a> this, but a bit awkward. (It boils down to conflicting | |
299 design goals in the two contexts.)</p> | |
300 | |
301 <p>Standalone builds are used by the test suite when testing individual | |
302 commands. | |
303 | |
304 <p><b>Snapshot builds</b></p> | |
305 | |
306 <p>A new addition to the "generated" directory is generated/build.sh | |
307 containing a single compiler command line to build toybox in its current | |
308 configuration. Combined with the generated/*.{h,sh} files from an | |
309 exisiting build, this may let you build on a new system that hasn't quite | |
310 got enough OS bits working to run a full configureand make.</p> | |
311 | |
312 <h3>Internals</h3> | |
313 | |
314 <p>Library code: xcreate/xopen now O_CLOEXEC by default to avoid leaking | |
315 filehandles to child processes. DIRTREE_COMEAGAIN's second callback is now | |
316 done with the directory filehandle still open (new dir->again variable added | |
317 to distinguish first from second callback, and requesting DIRTREE_RECURSE now | |
318 requires passing in the specific macro value, not just a true/false). | |
319 Use daemon() out of libc instead of hand-rolled daemonize() in various | |
320 pending commands. string_to_mode() now passes through type bits so you can | |
321 use it to more easily modify a file's existing mode. | |
322 Split xpopen() into xpopen_both(), xopen(), and xrun() depending on whether | |
323 we want to redirect both, one, or neither of stdin/stdout.</p> | |
324 | |
325 <p>Bugfixes: Better error message when TOYBOX_SUID option can't drop priviliges | |
326 (which happens when you suid something _other_ than root). | |
327 The old pending version of nbd_client.c wasn't deleted when the | |
328 command was promoted (and the build would break if both were enabled), | |
329 toy_exec() sometimes needs to re-exec from $PATH rather than recurse | |
330 internally (to gain dropped root permissions or limit stack depth), | |
331 always call setlocale() when I18N is enabled to switch it back _off_ when | |
332 we run commands that expect sscanf("%n") to return bytes, | |
333 dirtree() had a memory leak in an error path, patch.c had some bugs in | |
334 error paths (didn't report problem clearly). Ashwini Sharma spotted an | |
335 option parsing bug where [-abc] would forget _all_ command line arguments | |
336 saved in the GLOBALS() block (not just the ones for options being switched | |
337 off), plus various minor fixes to nbd_client and cpio. | |
338 Lukasz Szpakowski fixed rm -f on a broken symlink (failed), and killall | |
339 with no arguments (segfaulted).</p> | |
340 | |
341 <p><b>Portability</b></p> | |
342 | |
343 <p>A somewhat fiddly fix to rm -rf (which needs to chmod directories to u+rwx | |
344 to descend into them) which hit a musl bug in faccessat() which the musl | |
345 maintainer refuses to fix. (He literally wants the man page changed | |
346 instead, despite other libcs working.) Added an #ifdef __MUSL__ section | |
347 to portability.h with a workaround, you may need CFLAGS=-D__MUSL__ in your | |
348 build if your musl build's features.h doesn't #define that. (I may do | |
349 a different workaround in future, but sometimes you've just got to make | |
350 it work so you can ship. Also, toybox grep with multiple patterns | |
351 requires <a href=http://landley.net/hg/aboriginal/rev/1692>a patch | |
352 to musl's regex engine</a>, which applies to 1.1.4 but not to the current | |
353 musl source control.)</p> | |
354 | |
355 <p>More portability.h fixes for uClibc too. (I don't expect that to ever have | |
356 another release, so locally patching around posix-2008 violations is silly).</p> | |
357 | |
358 <p><b>Change to username filtering</b></p> | |
359 | |
360 <p>Posix recommends the username creation logic filter usernames to a small | |
361 allowed set of characters (which even Red Hat breaks by explicitly allowing | |
362 "$" at the end), but this prevents UTF-8 usernames. Posix' stated logic | |
363 is to allow filesystems to create the user's home directory, but Linux | |
364 filesystems can accept any character but NUL and "/". The only characters | |
365 we actually _need_ to filter out are ":" (field separator in passwd), | |
366 newline (line separator in passwd), and "/" (directory separator in | |
367 filesystem).</p> | |
368 | |
369 <h3>Documentation</h3> | |
370 | |
371 <p>Web pages updated: cleanup.html documents more cleanup, code.html | |
372 documents more code, and about.html now capitalizes "toybox" consistently | |
373 (it's just a word, capitalize at start of sentence).</p> | |
374 | |
375 <p>The pending/README file now lists commands that needed review/cleanup | |
376 before the pending directory was added.</p> | |
377 | |
378 <h3>Test Suite</h3> | |
379 | |
380 <p>Moved out of scripts/test into top level "tests" directory, and the | |
381 testing.sh script is now in scripts rather than mixed into the *.test files.</p> | |
382 | |
383 <p>Johan Bergström requested VERBOSE=fail to make tests (telling it to | |
384 stop at the first failure), and spotted a build bug where using gnu | |
385 sort on the host broke in non-C locales.</p> | |
386 | |
387 <p>Divya Kothari submitted tests for chmod, link, tar, bzcat, xzcat, zcat, | |
388 and hostname. (And more, but that's all that's merged so far.)</p> | |
389 | |
1387 | 390 <hr><b>July 7, 2014</b> |
391 <blockquote><p>"This planet has - or rather had - a problem, which was this: | |
392 most of the people living on it were unhappy for pretty much of the time. Many | |
393 solutions were suggested for this problem, but most of these were largely | |
394 concerned with the movement of small green pieces of paper, which was odd | |
395 because on the whole it wasn't the small green pieces of paper that were | |
396 unhappy." - The Hitchhiker's Guide to the Galaxy.</p></blockquote> | |
397 | |
398 <p><a href=downloads/toybox-0.4.9.tar.bz2>Toybox 0.4.9</a> (<a href=/hg/toybox/shortlog/1385>commit 1385</a>) is out.</p> | |
399 | |
400 <p><b>New commands</b> added to pending include: | |
401 lsattr, chattr, inotifyd, rfkill, sulogin, strings, makedevs, | |
402 killall5, and tar from Ashwini Sharma, arp from Kyungwan Han, | |
403 sysctl by Bilal Qureshi, partprobe from Bertold Van den Bergh, | |
404 host from Rich felker, and I did nbd-client and the first 2/3 of mount.</p> | |
405 | |
406 <p>Finished cleanups (commands promoted out of pending): | |
407 sysctl, rfkill, strings, mkpasswd, makedevs, partprobe, killall5, | |
408 fallocate, and nbd-client.</p> | |
409 | |
410 <p>(Along the way partial cleanups got made to: last, fold, lspci, ps, | |
411 bootchartd, init, fsck, telnetd, telnet, vconfig, toysh, iconv, useradd, | |
412 login, host, openvt, deallocvt, getty, tftpd, and modprobe. But there's | |
413 still more to do on all of those.)</p> | |
414 | |
415 <p>This time around the <a href=bin>static binaries</a> are linked against | |
416 musl instead of uClibc. (That's why there's no sparc version, musl doesn't | |
417 support that target yet.)</p> | |
418 | |
419 <p><b>Documentation:</b></p> | |
420 | |
421 <p>The help text parser expects lower case "usage:" lines with | |
422 a blank line after them, so go through and regularize those. Expand the | |
423 "coding style" section in the docs and move it to design.html. (Not a show | |
424 stopper for incoming | |
425 contributions, just an explanation of some of the things I'll do to them | |
426 during cleanup.) The help text for the "toybox" command now includes | |
427 the shell script snippet to install symlinks to the toybox binary.</p> | |
428 | |
429 <p>The <a href=cleanup.html>cleanup page</a> now has descriptions for the | |
430 full ifconfig cleanup series, among others.</p> | |
431 | |
432 <p>The new toys/examples directory contains hello.c and skeleton.c. The first is | |
433 a simple hello world program in toybox style, the second is a much more | |
434 elaborate example program using showing how to use the command line option | |
435 parsing and how to provide multiple commands in the same C file.</p> | |
436 | |
437 <p><b>Fixes</b>:</p> | |
438 | |
439 <p>Fix od bug reported by Samuel Holland ("od -v -b" was appending the default | |
440 output type even though an output type was specified). Ashwini Sharma reported | |
441 bugs where readfile() was incorrectly freeing its buffer, and where toy_init() | |
442 was zeroing the wrong data because the field it was using to measure (rebound) | |
443 had moved (when I moved it back I added a comment why the field needs to be | |
444 there), fixed a segfault in the dhcp client, and made a 0 length read at | |
445 the start of password entry count as EOF. Make the "we are not root" test | |
446 in the init code show the help text. Posix implies that fflush() can return | |
447 success even when the stream's error bit is set, so call both fflush() and | |
448 ferror() from xprintf().</p> | |
449 | |
450 <p>Isaac Dunham pointed out that bloatcheck couldn't deal with diff | |
451 implementations that only implement "unified diff" format, and that some | |
452 diff implementations can't handle nonseekable input (I.E. reading from | |
453 a pipe). Bugfix so "help -a" works again. Option parsing on nohup now stops | |
454 at first nonoption argument. Fix segfault in "which" if PATH wasn't set, | |
455 which was actually a bug in lib function find_in_path(). Made rm -rf of | |
456 chmod 000 directories actually remove them.</p> | |
457 | |
458 <p>The build now passes the same $CFLAGS to the library probe as the final | |
459 build, because arch linux is so broken it provides different sets of | |
460 libraries for static and dynamic linking.</p> | |
461 | |
462 <p>It turns out sprintf("%.123s", str) is counting characters, not bytes, | |
463 so globally enabling locale support opens stack smashing vulnerabilities. | |
464 So there's a new TOYFLAGS_LOCALE you set in toyflags when you want the | |
465 setup code to setlocale().</p> | |
466 | |
467 <p><b>Upgrades:</b></p> | |
468 | |
469 <p>Isaac Dunham extended cpio to archive unreadable empty files, and I taught it | |
470 to set uid/gid and timestamp when extracting archives. Isaac also | |
471 added tests for cpio, link, and du, added lspci -i, made the pci database | |
472 parsing skip # comment lines, merged logname and whoami into id.</p> | |
473 | |
474 <p>Daniel Verkamp sped up md5sum about 30% with some loop unrolling, making | |
475 it actually smaller in the process. I added -b flags to md5sum and sha1sum | |
476 for "brief" output that's just the hash with no filename. (I'm aware other | |
477 implementations use that for MSDOS "binary" mode, and don't care.)</p> | |
478 | |
479 <p>When building standalone commands (scripts/singleconfig.sh commandname), | |
480 the build now switches on all the sub-options of the command so we get | |
481 a standalone version with all the bells and whistles enabled.</p> | |
482 | |
483 <p>Add -ds flags to date and document +FORMAT escapes. Add the shell NOP | |
484 command ":" as an alias for true (for toysh).</p> | |
485 | |
486 <p>Add uClibc probe for iconv() and fallocate. (The fact it didn't always | |
487 build against uClibc is why fallocate wasn't enabled in defconfig before.)</p> | |
488 | |
489 <p>The umount command now does an losetup -d on the device by default, so | |
490 we don't leak loopback devices. Bugfix to losetup so "losetup /dev/loop0 | |
491 filename" actually works again.</p> | |
492 | |
493 <p>Divya Kothari sent in test suite entries for ls, ln, rm, mv, printf, dd, | |
494 and renice. Then a second round for lsattr/chattr, mount, chmod, pgrep/pkill, | |
495 groupadd, groupdel, and useradd. Several of these uncovered bugs, still | |
496 working to fix them.</p> | |
497 | |
498 <p>There are now free() functions for the predefined llist types and a | |
499 dlist_terminate() function to break doubly linked lists. The new | |
500 generic_signal() handler either sets "toys.signal" or writes a byte | |
501 to toys.signalfd with the signal number if signalfd isn't -1 (which it's | |
502 initialized to in toy_init).</p> | |
503 | |
504 <p>The option parsing logic can now detect when a double fits in a long and | |
505 use the more precise type for floating point arguments (the FLOAT macro | |
506 contains the type used). The human_readable() function now just outputs | |
507 decimal kilo/mega/gigabytes (so when du -u says 5.0G it means 5.0 billion | |
508 bytes). The build infrastructure now notices duplicate commands (so if you | |
509 cp toys/pending/command.c toys/other/command.c and forget to delete the | |
510 first one, the build break is now more informative).</p> | |
511 | |
1264
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
512 <hr><b>April 20, 2014</b> |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
513 <blockquote><p>And to this end they built themselves a stupendous supercomputer |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
514 which was so amazingly intelligent that even before the data banks |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
515 had been connected up it had started from "I think therefore I am" and got as |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
516 far as the existence of rice pudding and income tax before anyone managed to |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
517 turn it off. - The Hitchhiker's Guide to the Galaxy.</p></blockquote> |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
518 |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
519 <p><a href=downloads/toybox-0.4.8.tar.bz2>Toybox 0.4.8</a> is based on |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
520 <a href=http://landley.net/hg/toybox/shortlog/1262>commit 1262</a>. And |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
521 about time too.</p> |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
522 |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
523 <p>The big news is that the build no longer needs python to generate help.h, |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
524 that's now done in C. The help text generation is also collating help text |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
525 from multiple options, merging command line option blocks and usage: lines. |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
526 There's even a new <a href=help.html>help web page</a>.</p> |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
527 |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
528 <p><b>New commands:</b> Ifconfig, cpio, and su were cleaned up the rest of the |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
529 way and promoted out of pending. That saga is mostly explained on the |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
530 <a href=cleanup.html>cleanup page</a>. Vivek Bhagat's freeramdisk, |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
531 Isaac Dunham's fsfreeze, and Felix Janda's iconv are also new.</p> |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
532 |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
533 <p><b>In pending:</b> |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
534 Ashwini Sharma's team submitted tcpsvd, udpsvd, telnet, telnetd, last, more, |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
535 groupdel/delgroup, arping, brctl, ftpget, ftpput, printf, reset, and added |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
536 ipv6 support to traceroute. Kyungwan Han's team submitted modprobe and getty. |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
537 Vivek Bhagat submitted openvt and deacllocvt. Samuel Holland submitted fold. |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
538 I wrote a new inflate (zip/zlib/gzip decompression) implementation in |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
539 compress.c, and still need to do a corresponding deflate (compression-side) |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
540 and plug them into gzip and zip and so on. (Right now it does zcat.)</p> |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
541 |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
542 <p>Several commands (vmstat, login, du, vconfig, mountpoint, free, chroot, |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
543 cut, touch, modinfo, expand) predate the "pending" directory, and are thus |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
544 in other directories but still need cleanup. Of these, vmstat got some |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
545 work this time (which would be much easier other vmstat implementations |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
546 documented what their output actually meant).</p> |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
547 |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
548 <p><b>Upgrades:</b> Ifconfig grew /prefix netmask support (ala 1.2.3.4/24). Grep now has -zZ to |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
549 handle null terminated data, cksum grew -H for hex output. Upgraded od so the |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
550 fields align better when producing multiple output types. Help has -a and -h |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
551 options (all commands, html output). |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
552 Bugfix to blkid building for a 32 bit target. The date command can actually |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
553 set dates now. The O_NOFOLLOW compile time probe didn't work with cross |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
554 compiling, so it's back to an #ifdef test in portability.h. Nathan McSween |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
555 sent in a bugfix to od and a portability fix in the common library code. |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
556 Ashwini Sharma spotted a bug in pidof -o, and added verbose (-v) options |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
557 to mkdir and ln, and suggested killall should have an -s option and |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
558 allow -l to take zero arguments. Ashwini Sharma and Felix Janda upgraded |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
559 tftpd. Fixed dumpleases still using toynet.h after |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
560 that was removed. Corrected killall return code and error reporting. |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
561 Isacc Dunham fixed bugs all over the tree, did cleanup on a bunch of |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
562 pending commands (getty, ftpget, init, openvt, modprobe...), and clarified |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
563 find's help text. Tom Sparrow ran three different static analyzers on |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
564 the code, which resulted in a few cleanups. The peek()/poke() functions |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
565 now use "volatile" to prevent broken compiler "optimizations" to do with |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
566 aliasing.</p> |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
567 |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
568 <p><b>Build stuff:</b> Each FOR_xxxx macro now has a complementary CLEANUP_xxxx macro, so you |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
569 can put multiple commands with different command line options in the same |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
570 .c file, so they can share infrastructure outside of lib. (This let the |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
571 bunzip logic move out of lib into bzcat.c.) See XXX for example. |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
572 i |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
573 <p>The headers #included in toys.h are now grouped by standard, and headers |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
574 not listed in Posix or LSB were moved to portability.h. The old xregcomp.h |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
575 was folded into lib.h because it's posix (and supporting oddball uClibc |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
576 configurations isn't as important as it once was).</p> |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
577 |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
578 <p>Regression tested against Ubuntu 8.04 to fix up bit-rot in defconfig |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
579 build on older systems. (We depend on Posix-2008, but not necessarily |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
580 the absolute latest build environment.)</p> |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
581 |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
582 <p><b>In lib</b>: lib/xwrap.c added xgetpwnam(), xchroot(), and lib/lib.c now has names_to_pid(). |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
583 xsetuid() was replaced with xsetuser() which takes a struct passwd |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
584 and sets both gid and uid, mkpathat() got factored out into a library command, |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
585 get_int_value() became atolx_range(), and |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
586 xmsprintf() is now just xmprintf(). The bunzip2 logic moved from lib into |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
587 bzcat.c.</p> |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
588 |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
589 <p><b>Documentation</b>: new <a href=help.html>help page</a> with the |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
590 help text for all the defconfig commands, using the new help -ah output. |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
591 The <a href=code.html>source code walkthrough</a> now says more about |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
592 #including header files, and how the generated/* directory works. The |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
593 <a href=design.html>design page</a> has some new paragraphs about trading |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
594 of different kinds of simplicity, and why comments aren't a substitute for |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
595 good code. The README no longer trails off into obvious unfinished confusion |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
596 at the end. Each page on the website should now have its own title.</p> |
4ac301cfb047
Release announcement for 0.4.8.
Rob Landley <rob@landley.net>
parents:
1213
diff
changeset
|
597 |
1124
42ef1d86797e
Release announcement for 0.4.7.
Rob Landley <rob@landley.net>
parents:
1077
diff
changeset
|
598 <hr><b>November 18, 2013</b> |
42ef1d86797e
Release announcement for 0.4.7.
Rob Landley <rob@landley.net>
parents:
1077
diff
changeset
|
599 <blockquote><p>"Space," it says, "is big. Really big. You just won't believe how vastly, hugely, mindbogglingly big it is. I mean, you may think it's a long way down the street to the chemist's, but that's just peanuts to space." - |
42ef1d86797e
Release announcement for 0.4.7.
Rob Landley <rob@landley.net>
parents:
1077
diff
changeset
|
600 The Hitchhiker's Guide to the Galaxy.</p></blockquote> |
42ef1d86797e
Release announcement for 0.4.7.
Rob Landley <rob@landley.net>
parents:
1077
diff
changeset
|
601 |
1213
5918424045a1
Broken URL that's been pointed out to me a couple times when I'm not at a machine I can fix it from, keep forgetting...
Rob Landley <rob@landley.net>
parents:
1180
diff
changeset
|
602 <p><a href=downloads/toybox-0.4.7.tar.bz2>Toybox 0.4.7</a> is based on |
1124
42ef1d86797e
Release announcement for 0.4.7.
Rob Landley <rob@landley.net>
parents:
1077
diff
changeset
|
603 <a href=http://landley.net/hg/toybox/shortlog/1122>commit 1122</a>.</p> |
42ef1d86797e
Release announcement for 0.4.7.
Rob Landley <rob@landley.net>
parents:
1077
diff
changeset
|
604 |
42ef1d86797e
Release announcement for 0.4.7.
Rob Landley <rob@landley.net>
parents:
1077
diff
changeset
|
605 <p>New commands: Brad Conroy submitted blkid. Elie De Brauwer submitted |
42ef1d86797e
Release announcement for 0.4.7.
Rob Landley <rob@landley.net>
parents:
1077
diff
changeset
|
606 reboot, halt, and poweroff. Strake's nl got cleaned up and promoted from |
42ef1d86797e
Release announcement for 0.4.7.
Rob Landley <rob@landley.net>
parents:
1077
diff
changeset
|
607 pending to posix. In addition, the existing chvt and vconfig got some |
42ef1d86797e
Release announcement for 0.4.7.
Rob Landley <rob@landley.net>
parents:
1077
diff
changeset
|
608 cleanup.</p> |
42ef1d86797e
Release announcement for 0.4.7.
Rob Landley <rob@landley.net>
parents:
1077
diff
changeset
|
609 |
42ef1d86797e
Release announcement for 0.4.7.
Rob Landley <rob@landley.net>
parents:
1077
diff
changeset
|
610 <p>That said, I haven't nearly kept up with the flood of new commands going |
42ef1d86797e
Release announcement for 0.4.7.
Rob Landley <rob@landley.net>
parents:
1077
diff
changeset
|
611 into pending: Ashwini Sharma's team submitted |
42ef1d86797e
Release announcement for 0.4.7.
Rob Landley <rob@landley.net>
parents:
1077
diff
changeset
|
612 dd, dumpleases, traceroute, top, useradd, groupadd, mkpasswd, tftpd, and |
42ef1d86797e
Release announcement for 0.4.7.
Rob Landley <rob@landley.net>
parents:
1077
diff
changeset
|
613 an fsck wrapper (with no filesystem drivers yet). Isaac Dunham sent in cpio.</p> |
42ef1d86797e
Release announcement for 0.4.7.
Rob Landley <rob@landley.net>
parents:
1077
diff
changeset
|
614 |
42ef1d86797e
Release announcement for 0.4.7.
Rob Landley <rob@landley.net>
parents:
1077
diff
changeset
|
615 <p>Bugfixes: Jeroen van Rijn added a user count to uptime. Elie De Brauwer |
42ef1d86797e
Release announcement for 0.4.7.
Rob Landley <rob@landley.net>
parents:
1077
diff
changeset
|
616 added -e to watch, removed a memory leak, and fixed a terminal size problem. |
42ef1d86797e
Release announcement for 0.4.7.
Rob Landley <rob@landley.net>
parents:
1077
diff
changeset
|
617 William Haddon made xargs call its command line once even with blank input |
42ef1d86797e
Release announcement for 0.4.7.
Rob Landley <rob@landley.net>
parents:
1077
diff
changeset
|
618 (the standard is vague, but builds expect it), and fixed an off by one bug |
42ef1d86797e
Release announcement for 0.4.7.
Rob Landley <rob@landley.net>
parents:
1077
diff
changeset
|
619 where grep didn't malloc enough space with -E (leading to a segfault). |
42ef1d86797e
Release announcement for 0.4.7.
Rob Landley <rob@landley.net>
parents:
1077
diff
changeset
|
620 I fixed a glitch in bunzip2 (same one as went into busybox since they're using |
42ef1d86797e
Release announcement for 0.4.7.
Rob Landley <rob@landley.net>
parents:
1077
diff
changeset
|
621 the code I wrote), in od to fix -t co, -J, and -c options. Add uname -o as a |
42ef1d86797e
Release announcement for 0.4.7.
Rob Landley <rob@landley.net>
parents:
1077
diff
changeset
|
622 synonym for -s. Build fix to never use $CC without prefixing it with |
42ef1d86797e
Release announcement for 0.4.7.
Rob Landley <rob@landley.net>
parents:
1077
diff
changeset
|
623 $CROSS_COMPILE (since $HOSTCC could be different). Anca Emanuel spotted |
42ef1d86797e
Release announcement for 0.4.7.
Rob Landley <rob@landley.net>
parents:
1077
diff
changeset
|
624 a typo in the web page.</p> |
42ef1d86797e
Release announcement for 0.4.7.
Rob Landley <rob@landley.net>
parents:
1077
diff
changeset
|
625 |
42ef1d86797e
Release announcement for 0.4.7.
Rob Landley <rob@landley.net>
parents:
1077
diff
changeset
|
626 <p>The compile-time command line option parsing got rewritten (ported from |
42ef1d86797e
Release announcement for 0.4.7.
Rob Landley <rob@landley.net>
parents:
1077
diff
changeset
|
627 bash to C), which should speed up builds a bit and allow code controlled by |
42ef1d86797e
Release announcement for 0.4.7.
Rob Landley <rob@landley.net>
parents:
1077
diff
changeset
|
628 --longopts to drop out properly when disabled in the configuration. Terminal |
42ef1d86797e
Release announcement for 0.4.7.
Rob Landley <rob@landley.net>
parents:
1077
diff
changeset
|
629 querying got refactored. Patch's -x option is now more informative (a |
42ef1d86797e
Release announcement for 0.4.7.
Rob Landley <rob@landley.net>
parents:
1077
diff
changeset
|
630 debug thing if you're trying to figure out why a patch didn't apply). |
42ef1d86797e
Release announcement for 0.4.7.
Rob Landley <rob@landley.net>
parents:
1077
diff
changeset
|
631 The "toynet.h" file got folded into toys.h since musl supports it and |
42ef1d86797e
Release announcement for 0.4.7.
Rob Landley <rob@landley.net>
parents:
1077
diff
changeset
|
632 micromanging uClibc options isn't very interesting anymore. The test suite |
42ef1d86797e
Release announcement for 0.4.7.
Rob Landley <rob@landley.net>
parents:
1077
diff
changeset
|
633 now uses scripts/single.sh when testing a single command.</p> |
42ef1d86797e
Release announcement for 0.4.7.
Rob Landley <rob@landley.net>
parents:
1077
diff
changeset
|
634 |
1069
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
635 <hr><b>September 17, 2013</b> |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
636 <blockquote><p>"Think of a number," said the computer, "any number." |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
637 Arthur told the computer the telephone number of King's Cross railway |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
638 station passenger inquiries, on the grounds that it must have some function, |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
639 and this might turn out to be it. - The Hitchhiker's Guide to the Galaxy</p> |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
640 </blockquote> |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
641 |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
642 <p><a href=downloads/toybox-0.4.6.tar.bz2>Toybox 0.4.6</a> is based on |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
643 <a href=http://landley.net/hg/toybox/shortlog/1068>commit 1068</a>.</p> |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
644 |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
645 <p>This release adds |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
646 several new commands: Felix Janda wrote paste and fallocate, Kyungwan Han |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
647 submitted eject, Strake contributed grep, Ashwini Sharma added pmap (and |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
648 a testsuite entry for grep), Lukasz Skalski sent pwdx, Isaac Dunham posted |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
649 acpi, and I did timeout and umount.</p> |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
650 |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
651 <p>The ls command now has a --color=auto option (suggested by Rich Felker). |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
652 The multiplexer now has a --help option so you can say "./toybox --help blah" |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
653 instead of using the built-in "help" command. (Which is a shell built-in. |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
654 Try it on your command line, it's like man for shell builtins. But a certain |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
655 other project has conditioned people to expect --help, so...) I forget who |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
656 heehooman at gmail is but they pointed out unshare needed PID and UID |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
657 namespace support.</p> |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
658 |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
659 <h3>Pending</h3> |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
660 |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
661 <p>A lot of new commands in toys/pending, to the point the next release should |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
662 probably just focus on cleanup and review of this backlog. We've got klogd, |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
663 dhcp, dhcpd, watch, route, and ps from |
1077 | 664 Ashwini Sharma (and an fsck wrapper but no fsck.fstype engines yet), |
1069
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
665 syslogd, pgrep, and pkill from Madhur Verma, netstat by Ranjan Kumar, |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
666 test by Felix Janda, lspci by Isaac Dunham, nl, su, and renice by strake (I.E. |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
667 M. Farkas-Dyck), and sysvinit by Kyungwan Han.</p> |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
668 |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
669 <p>Some cleanup work on existing pending commands that aren't |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
670 ready to promote yet: I did a few more rounds on ifconfig |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
671 and Isaac Dunham's did several cleanups to xzcat, Felix Janda cleaned up |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
672 logger and syslogd...</p> |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
673 |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
674 <p>Also some cleanup work on commands that predate the pending directory, |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
675 but weren't quite polished when they went in, most prominently du, |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
676 expand, and touch.</p> |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
677 |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
678 <h3>Infrastructure</h3> |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
679 |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
680 <p>The new scripts/single.sh builds a standalone command without the |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
681 multiplexer, although not all commands can be built that way yet (NEWTOY yes, |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
682 OLDTOY no) and the space savings aren't anything to write home about. (If a |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
683 command needs the option parsing logic at all, it needs all of it.) If |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
684 you're curious, you can do:</p> |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
685 |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
686 <blockquote><pre> |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
687 make defconfig |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
688 make |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
689 mkdir singles |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
690 for i in $(./toybox) |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
691 do |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
692 echo $i |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
693 PREFIX=singles/ scripts/single.sh $i || break |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
694 done |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
695 </pre> |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
696 <p>(And then wait a long time and watch almost half the builds fail.)</p> |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
697 </blockquote> |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
698 |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
699 <p>There is now libbuf analogous to toybuf, another global 4k buffer this |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
700 time for use by lib/ code instead of command code.</p> |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
701 |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
702 <p>The lib directory got split up a bit, lib/pending.c contains functions |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
703 not yet used by anything outside of toys/pending/*, and lib/xwrap.c contains |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
704 functions that wrap other functions and handle failures (via error_exit). |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
705 This leaves lib/lib.c containing actual new functions.</p> |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
706 |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
707 <p>General improvements and bug fixes to argument parsing. The [-abc] exclude |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
708 logic should now clear arguments slots when disabling options. Bare --longopts |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
709 should work now and be able to report errors using their name, the new ; |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
710 option allows optional arguments to longopts only suppliable with = (I.E. |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
711 --color and --color=auto but not --color auto).</p> |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
712 |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
713 <p>I'm gradually weaning the code off of itoa()/utoa() because sprintf |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
714 does this already. In this case "simple" probably means "let libc do it |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
715 for us".</p> |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
716 |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
717 <p>Rewrote for_each_pid_with_name_in() and renamed it to just names_to_pid(). |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
718 It shouldn't get confused trying to compare absolute and relative paths quite |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
719 so much anymore.</p> |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
720 |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
721 <p>lib/llist.c grew a new dlist_pop() function for removing a doubly |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
722 linked list entry while maintaining a circular list; tail and patch are |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
723 using it now.</p> |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
724 |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
725 <p>The musl guys suggested a new optimization flag |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
726 (-fno-asynchronous-unwind-tables) |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
727 that shaves about 10% off the binary size by removing a C++ism that crept |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
728 into gcc's idea of C. While I don't normally try to micromanage the compiler, |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
729 "-fstop-being-stupid" is a thing you have to hit gcc with from time to time.</p> |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
730 |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
731 <h3>Bugfixes</h3> |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
732 |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
733 <p>Felix Janda and I did a largeish rewrite of tail to |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
734 finally make it work right (we think). Still need to implement tail -f |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
735 someday (the tricky bit is making -f follow multiple files at once). |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
736 Felix also reported a bug in xpidfile.</p> |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
737 |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
738 <p>Juhani Haverinen pointed out that |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
739 python 3 doesn't work with config2help.py, so the detection logic looks |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
740 for python2 (until I get around to rewriting that in C). Elie De Brauwer |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
741 then fixed our first attempt at this, and also fixed uname's help string.</p> |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
742 |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
743 <p>Ashwini Sharma |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
744 pointed out the build was making a FLAG_ macro for " " which broke some |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
745 configurations. (That's a control character, not a command line option.)</p> |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
746 |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
747 <p>Jacek Bukarewicz pointed out a bug in chdir permission handling, and |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
748 a way to make env segfault. Both should be fixed now.</p> |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
749 |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
750 <p>The new function xexec_optargs() |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
751 replaces calls to xexec(toys.optargs) to avoid freeing and reusing optargs |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
752 during option parsing screwing stuff up (such as netcat's exec mode).</p> |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
753 |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
754 <p>The stat command's %a output was padded with leading zeroes, which |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
755 didn't match anybody else's behavior and thus made the test suite hiccup |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
756 between TEST_HOST and testing toybox. (If you go "TEST_HOST=1 scripts/test.sh |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
757 command" it sanity checks the tests against the host implementation.)</p> |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
758 |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
759 <p>Last release, "mkdir sub/sub && chmod 007 sub/sub && rm -rf sub" didn't |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
760 delete sub and didn't exit with an error either. Neither was correct, rm |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
761 should now be fixed.</p> |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
762 |
940dbcc1f8ed
Release announcement on web page.
Rob Landley <rob@landley.net>
parents:
966
diff
changeset
|
763 <p> |
966
f1fef0c18d8c
Link to Georgi's mirror on github.
Rob Landley <rob@landley.net>
parents:
944
diff
changeset
|
764 <hr><b>July 26, 2013</b> |
f1fef0c18d8c
Link to Georgi's mirror on github.
Rob Landley <rob@landley.net>
parents:
944
diff
changeset
|
765 <p>Georgi Chorbadzhiyski maintains a <a href=https://github.com/gfto/toybox>git |
f1fef0c18d8c
Link to Georgi's mirror on github.
Rob Landley <rob@landley.net>
parents:
944
diff
changeset
|
766 mirror</a> of the repository on github, automatically updated from the |
f1fef0c18d8c
Link to Georgi's mirror on github.
Rob Landley <rob@landley.net>
parents:
944
diff
changeset
|
767 mercurial every 6 hours. The mirror is read only, but you can generate patches |
f1fef0c18d8c
Link to Georgi's mirror on github.
Rob Landley <rob@landley.net>
parents:
944
diff
changeset
|
768 against it and post them to the list.</p> |
927 | 769 |
944
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
770 <hr><b>July 2, 2013</b> |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
771 <blockquote><p>"Time is an illusion. Lunchtime doubly so." "Very deep. You |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
772 should send that in to the Reader's Digest. They've got a page for people |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
773 like you." - |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
774 The Hitchhiker's Guide to the Galaxy.</p></blockquote> |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
775 |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
776 <p><a href=downloads/toybox-0.4.5.tar.bz2>Toybox 0.4.5</a> is based on |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
777 <a href=http://landley.net/hg/toybox/shortlog/941>commit 941</a>. It adds |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
778 uuencode and uudecode from Erich Plondke, and enables Luis Morales' "who" by |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
779 default. Felix Janda and I cleaned up last year's "stat" submission and |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
780 enabled it. Ivo van Poorten added "groups". |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
781 Andre Renaud added "lsusb". I implemented "split", "pivot_root", and "mv". |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
782 </p> |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
783 |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
784 <p>The "help" command is implemented differently now (lib/help.c) and |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
785 each command can now understand --help (including both "toybox --help" |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
786 and "toybox --help command" in the multiplexer).</p> |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
787 |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
788 <p>The "pending" directory has several commands (find, xzcat, nbd-client, |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
789 logger, expr) which work but are not enabled by default pending further cleanup. |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
790 Ifconfig is enabled, but still in pending because it's only 2/3 cleaned up. |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
791 (It's an awkward halfway state but I'm not holding up the release for it.)</p> |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
792 |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
793 <p>I'm <a href=cleanup.html>documenting the cleanups</a> to teach |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
794 more people to do it, but the writeups aren't caught up yet. The |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
795 <a href=roadmap.html>roadmap</a> also got updated a bit with further analysis |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
796 of other projects, and the README and about pages got updated.</p> |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
797 |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
798 <p>Fixed _another_ "ls -C" segfault when terminal size can't be detected, |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
799 condensed the ls help text to fit on one page, implented --color, and taught |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
800 -l to print the major, minor numbers when showing block/char devices. |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
801 Argument parsing now handles "--" properly (to end option checking), |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
802 and the infrastructure can now handle bare --longopts that have no |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
803 corresponding short option (both were implemented before but didn't work). |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
804 Fixed an old bug in "patch", chmod grew -f, who grew -a. Isaac Dunham |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
805 fixed "-" vs "_" handling in modinfo, added a "firmware" output |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
806 field, added -b and -k support, and taught it that the ".ko" extension means |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
807 to look for the file at the specified path instead of under /lib. Felix Janda |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
808 moved file permission display code to lib so ls and |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
809 stat could share it. Ashwini Sharma spotted a bug in xabspath when the |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
810 last path component exists but we haven't got permissions to open it |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
811 (ala readlink -f /dev/sda as a normal user). |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
812 </p> |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
813 |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
814 <p>In the build infrastructure, scripts/findglobals.sh finds leaked global |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
815 variables. (Leaked means they aren't part of the global union: Other than glibc |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
816 debris, toybox should define "this", "toy_list", "toybuf", and "toys", and |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
817 that's it; the rest add memory footprint to every command for the benefit of |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
818 just one command; use GLOBALS() to stick 'em in the union.) Static linking |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
819 against libraries other than the host's libc now applies to feature probes |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
820 for unshare and such. Neuter stupid internationalization support that makes |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
821 various host "sort" commands put things in an order other than alphabetical |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
822 (breaking the multiplexer's binary search on command names). |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
823 |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
824 <p>You should now be able to build from a source control snapshot on a build |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
825 system that hasn't got python: if you disable CONFIG_TOYBOX_HELP. (The |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
826 release tarballs ship generated/help.h, but it's not in source control. |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
827 Eventually I should rewrite that python script in C.)</p> |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
828 </p> |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
829 |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
830 <p><b>LICENSE TWEAK</b>: After <a href=http://lists.landley.net/pipermail/toybox-landley.net/2013-March/000794.html>discussion</a> on the mailing list the "2 clause |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
831 BSD" <a href=license.html>license</a> got slightly simplified so the first |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
832 paragraph now says:</p> |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
833 |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
834 <blockquote><p>Permission to use, copy, modify, and/or distribute this |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
835 software for any purpose with or without fee is hereby granted.</p></blockquote> |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
836 |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
837 <p>It used to continue "provided that the above copyright notice and this |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
838 permission notice appear in all copies", but A) what's the point? B) does "all |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
839 copies" mean binaries, or just source code, or what? C) lots of projects |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
840 that consider BSD and GPL compatible have <a href=https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/crypto/aes_generic.c>files with |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
841 both license notices</a> on them (sometimes at <a href=http://git.busybox.net/busybox/tree/shell/ash.c>opposite ends of the file</a> to make the conflict |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
842 less obvious) because "all copies must include this function" would violate |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
843 the GPL but "all copies must include this magic text blob" somehow don't?</p> |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
844 |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
845 <p>I don't want to have to care about this anymore. The tweaked version is more |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
846 or less public domain with a liability disclaimer, but we're still calling it |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
847 BSD (sometimes "0 clause BSD") to avoid explaining.</p> |
b4faf2ae39e8
This inlines CRC64, and nothing more.
Isaac Dunham <idunham@lavabit.com>
parents:
927
diff
changeset
|
848 |
826
457d4cdc937e
Update news page and link to ELC 2013 talk on toybox.
Rob Landley <rob@landley.net>
parents:
805
diff
changeset
|
849 <hr><b>March 21, 2013</b> |
457d4cdc937e
Update news page and link to ELC 2013 talk on toybox.
Rob Landley <rob@landley.net>
parents:
805
diff
changeset
|
850 <p>Video of my ELC talk |
927 | 851 "<a href=http://youtu.be/SGmtP5Lg_t0>Why is Toybox?</a>" |
826
457d4cdc937e
Update news page and link to ELC 2013 talk on toybox.
Rob Landley <rob@landley.net>
parents:
805
diff
changeset
|
852 is up on youtube. Related materials include the |
457d4cdc937e
Update news page and link to ELC 2013 talk on toybox.
Rob Landley <rob@landley.net>
parents:
805
diff
changeset
|
853 <a href=http://landley.net/talks/celf-2013.txt>talk outline</a> and an |
457d4cdc937e
Update news page and link to ELC 2013 talk on toybox.
Rob Landley <rob@landley.net>
parents:
805
diff
changeset
|
854 <a href=/aboriginal/about.html#selfhost>android self-hosting writeup</a>.</p> |
457d4cdc937e
Update news page and link to ELC 2013 talk on toybox.
Rob Landley <rob@landley.net>
parents:
805
diff
changeset
|
855 |
927 | 856 <p>[Updated June 4] The following links jump to specific topics in the video. (Sorry about |
857 the ads, it's The Linux Foundation.)</p> | |
858 | |
859 <ul> | |
860 <li>0m29s <a href=http://www.youtube.com/watch?v=SGmtP5Lg_t0#t=0m29s>The smartphone is replacing the PC</a></li> | |
861 <ul> | |
862 <li>4m22s <a href=http://www.youtube.com/watch?v=SGmtP5Lg_t0#t=4m22s>Software needed to become self-hosting</a></li> | |
863 <li>6m20s <a href=http://www.youtube.com/watch?v=SGmtP5Lg_t0#t=6m20s>Do we care if android or iphone wins?</a></li> | |
864 </ul> | |
865 <li>9m45s <a href=http://www.youtube.com/watch?v=SGmtP5Lg_t0#t=9m45s>Android not vanilla: oppose or accept?</a></li> | |
866 <ul> | |
867 <li>11m30s <a href=http://www.youtube.com/watch?v=SGmtP5Lg_t0#t=11m30s>Open source can't do User Interfaces</a></li> | |
868 </ul> | |
869 <li>15m09s <a href=http://www.youtube.com/watch?v=SGmtP5Lg_t0#t=15m09s>Android is not copyleft: oppose or accept?</a></li> | |
870 <li>18m23s <a href=http://www.youtube.com/watch?v=SGmtP5Lg_t0#t=18m23s>Security issues</a></li> | |
871 <li>21m15s <a href=http://www.youtube.com/watch?v=SGmtP5Lg_t0#t=21m15s>Solutions to the software problems</a></li> | |
872 <ul> | |
873 <li>22m55s <a href=http://www.youtube.com/watch?v=SGmtP5Lg_t0#t=22m55s>What toybox needs to be/do</a></li> | |
874 <li>28m17s <a href=http://www.youtube.com/watch?v=SGmtP5Lg_t0#t=28m17s>What is toybox?</a></li> | |
875 <ul> | |
876 <li>28m58s <a href=http://www.youtube.com/watch?v=SGmtP5Lg_t0#t=28m58s>Why toybox started...</a></li> | |
877 <li>37m50s <a href=http://www.youtube.com/watch?v=SGmtP5Lg_t0#t=37m50s>What does toybox actually implement?</a></li> | |
878 </ul> | |
879 </ul> | |
880 </ul> | |
881 </span> | |
882 | |
883 | |
826
457d4cdc937e
Update news page and link to ELC 2013 talk on toybox.
Rob Landley <rob@landley.net>
parents:
805
diff
changeset
|
884 <hr><b>March 14, 2013</b> |
457d4cdc937e
Update news page and link to ELC 2013 talk on toybox.
Rob Landley <rob@landley.net>
parents:
805
diff
changeset
|
885 <blockquote><p>"Ford, you're turning into a penguin. Stop it." - |
457d4cdc937e
Update news page and link to ELC 2013 talk on toybox.
Rob Landley <rob@landley.net>
parents:
805
diff
changeset
|
886 The Hitchhiker's Guide to the Galaxy.</p></blockquote> |
457d4cdc937e
Update news page and link to ELC 2013 talk on toybox.
Rob Landley <rob@landley.net>
parents:
805
diff
changeset
|
887 |
457d4cdc937e
Update news page and link to ELC 2013 talk on toybox.
Rob Landley <rob@landley.net>
parents:
805
diff
changeset
|
888 <p><a href=downloads/toybox-0.4.4.tar.bz2>Toybox 0.4.4</a> is based on |
457d4cdc937e
Update news page and link to ELC 2013 talk on toybox.
Rob Landley <rob@landley.net>
parents:
805
diff
changeset
|
889 <a href=http://landley.net/hg/toybox/shortlog/813>commit 813</a>, adding |
457d4cdc937e
Update news page and link to ELC 2013 talk on toybox.
Rob Landley <rob@landley.net>
parents:
805
diff
changeset
|
890 the "time" and "readahead" commands, plus some bugfixes.</p> |
457d4cdc937e
Update news page and link to ELC 2013 talk on toybox.
Rob Landley <rob@landley.net>
parents:
805
diff
changeset
|
891 |
457d4cdc937e
Update news page and link to ELC 2013 talk on toybox.
Rob Landley <rob@landley.net>
parents:
805
diff
changeset
|
892 <p>The "cp" command now implements the -s symlink option, plus bugfixes |
457d4cdc937e
Update news page and link to ELC 2013 talk on toybox.
Rob Landley <rob@landley.net>
parents:
805
diff
changeset
|
893 getting various corner cases right as used in actual package builds. |
457d4cdc937e
Update news page and link to ELC 2013 talk on toybox.
Rob Landley <rob@landley.net>
parents:
805
diff
changeset
|
894 "id -Gn root" should now print root's groups |
457d4cdc937e
Update news page and link to ELC 2013 talk on toybox.
Rob Landley <rob@landley.net>
parents:
805
diff
changeset
|
895 instead of the current user's. Several build fixes so toybox builds under |
457d4cdc937e
Update news page and link to ELC 2013 talk on toybox.
Rob Landley <rob@landley.net>
parents:
805
diff
changeset
|
896 Ubuntu 8.04 again (which is about as old a build environment as you |
457d4cdc937e
Update news page and link to ELC 2013 talk on toybox.
Rob Landley <rob@landley.net>
parents:
805
diff
changeset
|
897 can expect to find posix-2008 features in).</p> |
457d4cdc937e
Update news page and link to ELC 2013 talk on toybox.
Rob Landley <rob@landley.net>
parents:
805
diff
changeset
|
898 |
457d4cdc937e
Update news page and link to ELC 2013 talk on toybox.
Rob Landley <rob@landley.net>
parents:
805
diff
changeset
|
899 <p>Unfinished commands have generally been moved to "toys/pending". |
457d4cdc937e
Update news page and link to ELC 2013 talk on toybox.
Rob Landley <rob@landley.net>
parents:
805
diff
changeset
|
900 Everything else should "default y" to participate in make defconfig. |
457d4cdc937e
Update news page and link to ELC 2013 talk on toybox.
Rob Landley <rob@landley.net>
parents:
805
diff
changeset
|
901 Several of those pending commands got some basic cleanup so allyesconfig |
457d4cdc937e
Update news page and link to ELC 2013 talk on toybox.
Rob Landley <rob@landley.net>
parents:
805
diff
changeset
|
902 should at least compile (although defconfig is still what's useful).</p> |
457d4cdc937e
Update news page and link to ELC 2013 talk on toybox.
Rob Landley <rob@landley.net>
parents:
805
diff
changeset
|
903 |
457d4cdc937e
Update news page and link to ELC 2013 talk on toybox.
Rob Landley <rob@landley.net>
parents:
805
diff
changeset
|
904 <p>Significant roadmap updates, checking several other multicall binaries |
457d4cdc937e
Update news page and link to ELC 2013 talk on toybox.
Rob Landley <rob@landley.net>
parents:
805
diff
changeset
|
905 (klibc, sash, sbase, s6...) to see what commands they include.</p> |
457d4cdc937e
Update news page and link to ELC 2013 talk on toybox.
Rob Landley <rob@landley.net>
parents:
805
diff
changeset
|
906 |
805
0db28494d17d
Accumulated web page changes. (Release announcement for previous release, roadmap updates, etc.)
Rob Landley <rob@landley.net>
parents:
755
diff
changeset
|
907 <hr><b>January 18, 2013</b> |
0db28494d17d
Accumulated web page changes. (Release announcement for previous release, roadmap updates, etc.)
Rob Landley <rob@landley.net>
parents:
755
diff
changeset
|
908 <blockquote><p>This must be Thursday. I never could get the hang of Thursdays. - The Hitchhiker's Guide to the Galaxy.</p></blockquote> |
0db28494d17d
Accumulated web page changes. (Release announcement for previous release, roadmap updates, etc.)
Rob Landley <rob@landley.net>
parents:
755
diff
changeset
|
909 |
0db28494d17d
Accumulated web page changes. (Release announcement for previous release, roadmap updates, etc.)
Rob Landley <rob@landley.net>
parents:
755
diff
changeset
|
910 <p><a href=downloads/toybox-0.4.3.tar.bz2>Toybox 0.4.3</a> is based on |
0db28494d17d
Accumulated web page changes. (Release announcement for previous release, roadmap updates, etc.)
Rob Landley <rob@landley.net>
parents:
755
diff
changeset
|
911 <a href=http://landley.net/hg/toybox/shortlog/793>commit 793</a>. There |
0db28494d17d
Accumulated web page changes. (Release announcement for previous release, roadmap updates, etc.)
Rob Landley <rob@landley.net>
parents:
755
diff
changeset
|
912 are now exactly 100 commands in defconfig (of a little over 220 on the |
0db28494d17d
Accumulated web page changes. (Release announcement for previous release, roadmap updates, etc.)
Rob Landley <rob@landley.net>
parents:
755
diff
changeset
|
913 <a href=roadmap.html>todo list</a>).</p> |
0db28494d17d
Accumulated web page changes. (Release announcement for previous release, roadmap updates, etc.)
Rob Landley <rob@landley.net>
parents:
755
diff
changeset
|
914 |
0db28494d17d
Accumulated web page changes. (Release announcement for previous release, roadmap updates, etc.)
Rob Landley <rob@landley.net>
parents:
755
diff
changeset
|
915 <p>Elie De Brauwer added the rev command, cleaned up tac, implemented the -s |
0db28494d17d
Accumulated web page changes. (Release announcement for previous release, roadmap updates, etc.)
Rob Landley <rob@landley.net>
parents:
755
diff
changeset
|
916 and -f flags for seq, added -v and -i to killall (and fixed killall not to |
0db28494d17d
Accumulated web page changes. (Release announcement for previous release, roadmap updates, etc.)
Rob Landley <rob@landley.net>
parents:
755
diff
changeset
|
917 kill itself before finishing its pid list), and added to the test suite. |
0db28494d17d
Accumulated web page changes. (Release announcement for previous release, roadmap updates, etc.)
Rob Landley <rob@landley.net>
parents:
755
diff
changeset
|
918 Felix Janda added -m to mkdir, pwd -L and -P, and more test suite entries.</p> |
0db28494d17d
Accumulated web page changes. (Release announcement for previous release, roadmap updates, etc.)
Rob Landley <rob@landley.net>
parents:
755
diff
changeset
|
919 |
0db28494d17d
Accumulated web page changes. (Release announcement for previous release, roadmap updates, etc.)
Rob Landley <rob@landley.net>
parents:
755
diff
changeset
|
920 <p>Rob Landley added the losetup command, and fixed the existing ls, cp, and |
0db28494d17d
Accumulated web page changes. (Release announcement for previous release, roadmap updates, etc.)
Rob Landley <rob@landley.net>
parents:
755
diff
changeset
|
921 readlink commands. The segfault in ls |
0db28494d17d
Accumulated web page changes. (Release announcement for previous release, roadmap updates, etc.)
Rob Landley <rob@landley.net>
parents:
755
diff
changeset
|
922 happened when it couldn't determine the screen size (last release changed the |
0db28494d17d
Accumulated web page changes. (Release announcement for previous release, roadmap updates, etc.)
Rob Landley <rob@landley.net>
parents:
755
diff
changeset
|
923 default to -C and a screen size of 0 made column view unhappy), and cp got an |
0db28494d17d
Accumulated web page changes. (Release announcement for previous release, roadmap updates, etc.)
Rob Landley <rob@landley.net>
parents:
755
diff
changeset
|
924 extensive rewrite bringing it up to date with the dirtree changes and fixing |
0db28494d17d
Accumulated web page changes. (Release announcement for previous release, roadmap updates, etc.)
Rob Landley <rob@landley.net>
parents:
755
diff
changeset
|
925 a number of things it never did right in the first place. The xabspath() |
0db28494d17d
Accumulated web page changes. (Release announcement for previous release, roadmap updates, etc.)
Rob Landley <rob@landley.net>
parents:
755
diff
changeset
|
926 code in the library now handles a symlink after ".." properly (and the test |
0db28494d17d
Accumulated web page changes. (Release announcement for previous release, roadmap updates, etc.)
Rob Landley <rob@landley.net>
parents:
755
diff
changeset
|
927 suite checks for it).</p> |
0db28494d17d
Accumulated web page changes. (Release announcement for previous release, roadmap updates, etc.)
Rob Landley <rob@landley.net>
parents:
755
diff
changeset
|
928 |
0db28494d17d
Accumulated web page changes. (Release announcement for previous release, roadmap updates, etc.)
Rob Landley <rob@landley.net>
parents:
755
diff
changeset
|
929 <p>Infrastructure-wise the code is better about automatically setting the |
0db28494d17d
Accumulated web page changes. (Release announcement for previous release, roadmap updates, etc.)
Rob Landley <rob@landley.net>
parents:
755
diff
changeset
|
930 error return code properly. Now error_msg() sets the exit code to 1 if it's |
0db28494d17d
Accumulated web page changes. (Release announcement for previous release, roadmap updates, etc.)
Rob Landley <rob@landley.net>
parents:
755
diff
changeset
|
931 still defaulting to 0, and the global exit path does a fflush(NULL) with error |
0db28494d17d
Accumulated web page changes. (Release announcement for previous release, roadmap updates, etc.)
Rob Landley <rob@landley.net>
parents:
755
diff
changeset
|
932 bit check rather than trying to be quite so granular about flushing. (That |
0db28494d17d
Accumulated web page changes. (Release announcement for previous release, roadmap updates, etc.)
Rob Landley <rob@landley.net>
parents:
755
diff
changeset
|
933 means if we use printf() instead of xprintf() it still exits with the right |
0db28494d17d
Accumulated web page changes. (Release announcement for previous release, roadmap updates, etc.)
Rob Landley <rob@landley.net>
parents:
755
diff
changeset
|
934 error code, it just doesn't end the program early on an output error.) |
0db28494d17d
Accumulated web page changes. (Release announcement for previous release, roadmap updates, etc.)
Rob Landley <rob@landley.net>
parents:
755
diff
changeset
|
935 Minor bugfix so TOYBOX_DEBUG |
0db28494d17d
Accumulated web page changes. (Release announcement for previous release, roadmap updates, etc.)
Rob Landley <rob@landley.net>
parents:
755
diff
changeset
|
936 doesn't always warn about the lack of suid bit when toybox is built with |
0db28494d17d
Accumulated web page changes. (Release announcement for previous release, roadmap updates, etc.)
Rob Landley <rob@landley.net>
parents:
755
diff
changeset
|
937 at least one STAYROOT command. Bugfix for the option [grouping] logic |
0db28494d17d
Accumulated web page changes. (Release announcement for previous release, roadmap updates, etc.)
Rob Landley <rob@landley.net>
parents:
755
diff
changeset
|
938 (and then further fixes to the error reporting pointed out by Ashwini Sharma). |
0db28494d17d
Accumulated web page changes. (Release announcement for previous release, roadmap updates, etc.)
Rob Landley <rob@landley.net>
parents:
755
diff
changeset
|
939 dirtree_handle_callback() now has a prefix like the rest of the dirtree |
0db28494d17d
Accumulated web page changes. (Release announcement for previous release, roadmap updates, etc.)
Rob Landley <rob@landley.net>
parents:
755
diff
changeset
|
940 functions. A lot of stuff doing manual path handling was switched to using |
0db28494d17d
Accumulated web page changes. (Release announcement for previous release, roadmap updates, etc.)
Rob Landley <rob@landley.net>
parents:
755
diff
changeset
|
941 libc basename() (including, embarassingly, the basename command), which means |
0db28494d17d
Accumulated web page changes. (Release announcement for previous release, roadmap updates, etc.)
Rob Landley <rob@landley.net>
parents:
755
diff
changeset
|
942 it now correctly detects "/trailing/slash/" which the previous code didn't.</p> |
0db28494d17d
Accumulated web page changes. (Release announcement for previous release, roadmap updates, etc.)
Rob Landley <rob@landley.net>
parents:
755
diff
changeset
|
943 |
0db28494d17d
Accumulated web page changes. (Release announcement for previous release, roadmap updates, etc.)
Rob Landley <rob@landley.net>
parents:
755
diff
changeset
|
944 <p>Also, last release included some accidentally checked in debug code that |
0db28494d17d
Accumulated web page changes. (Release announcement for previous release, roadmap updates, etc.)
Rob Landley <rob@landley.net>
parents:
755
diff
changeset
|
945 disabled compiler optimization, so the binary size bloated a bit. It's back |
0db28494d17d
Accumulated web page changes. (Release announcement for previous release, roadmap updates, etc.)
Rob Landley <rob@landley.net>
parents:
755
diff
changeset
|
946 to -Os by default now.</p> |
0db28494d17d
Accumulated web page changes. (Release announcement for previous release, roadmap updates, etc.)
Rob Landley <rob@landley.net>
parents:
755
diff
changeset
|
947 |
755 | 948 <hr><b>December 15, 2012</b> |
949 <blockquote><p>"The major difference between a thing that might go wrong and a | |
950 thing that cannot possibly go wrong is that when a thing that cannot possibly | |
951 go wrong goes wrong it usually turns out to be impossible to get at or repair." | |
952 </p><p>- The Hitchhiker's Guide to the Galaxy.</p></blockquote> | |
953 | |
954 <p><a href=downloads/toybox-0.4.2.tar.bz2>Toybox 0.4.2</a> is based on | |
955 <a href=http://landley.net/hg/toybox/shortlog/749>commit 749</a> and is | |
956 just a resync. Linux 3.7 came out, meaning it's time to do an Aboriginal | |
957 Linux release, and that should use a stable version of toybox. So here's | |
958 a new stable version.</p> | |
959 | |
960 <p>The new commands are cut (from Jason Kyungwan Han), touch | |
961 (from Choubey Ji), expand (from Jonathan Clairembault, and he fixed a | |
962 bug in login), and rm (from Rob Landley). Felix Janda added UTF-8 | |
963 support infrastructure (for non-ascii character sets) with a config option. | |
964 Elie De Brauwer added tests for cat and sha1sum, and -so options to pidof. | |
965 The "ls" command defaults to -C (column view) now, and "readlink" now supports | |
966 -fenq.</p> | |
967 | |
968 <p>Portability work: toybox should now build against the musl C library, | |
969 and against older glibc versions (circa 2008, much before that and kernel | |
970 features we depend on start to drop out).</p> | |
971 | |
972 <p>The whole codebase got reindented from "one tab" to "two spaces" per | |
973 level. The option parsing logic now understands [groups] of commands (when more | |
974 than one in a group is selected it can switch the others off, or error out, | |
975 or other things). The error_exit() infrastructure can now longjmp back to an | |
976 earlier point instead of exiting. Each toys/* directory now has a README, | |
977 the first line of which is the fancy name menuconfig uses for the directory | |
978 (so no more hardwired directory list in scripts/genconfig.sh).</p> | |
979 | |
980 <p>Fixed a filehandle leak in getmountlist(). | |
981 Pass parent pointer to dirtree_add_node() so it can give error messages with | |
982 full path. The yesno() function now always reads from stdin and writes to | |
983 stderr (we can retry tty checking complexity once we've got commands needing | |
984 it).</p> | |
985 | |
986 <p>The open group broke their website so the | |
987 <a href=http://opengroup.org/onlinepubs/9699919799>old links</a> to POSIX 2008 | |
988 now <a href=http://pubs.opengroup.org/onlinepubs/9699919799>need to start with | |
989 pubs</a>. Some of the links in the tree have been updated, others haven't while | |
990 I wait to see if their webmaster notices and fixes it.</p> | |
991 | |
992 <p>(I note that the current rm implementation is not technically posix compliant | |
993 because the standard requires infinite recursion depth and the current | |
994 implementation uses one filehandle per level. I can add a config option | |
995 to do it Posix's way, which is more brittle and needs extra security checks, | |
996 but am waiting for somebody to complain first. The default "ulimit -n" is 1024 | |
997 filehandles, so drilling down over 1000 nested subdirectories).</p> | |
998 | |
693
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
999 <hr><b>November 13, 2012</b> |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1000 <blockquote><p>"Rule Six: The winning team shall be the first team that wins." |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1001 - The Hitchhiker's Guide to the Galaxy.</p></blockquote> |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1002 |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1003 <p><a href=downloads/toybox-0.4.1.tar.bz2>Toybox 0.4.1</a> is based on |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1004 <a href=http://landley.net/hg/toybox/shortlog/691>commit 691</a>.</p> |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1005 |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1006 <p>Elie De Brauwer contributed usleep, Ashwini Kumar contributed du, and |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1007 Kyungwan Han contributed vconfig. Other new commands include switch_root and |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1008 md5sum, and the remaining shell wrappers are now proper commands (dos2unix, |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1009 unix2dos).</p> |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1010 |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1011 <p>The patch command now supports -l, and gethostname is now enabled by |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1012 default. The df command follows symlinks to get the actual device name. |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1013 Felix Janda added -m support to wc (for utf8).</p> |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1014 |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1015 <p>On the infrastructure side, the commands have now been grouped into |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1016 "posix", "lsb", and "other" subdirectories (for things required by Posix-2008, |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1017 the Linux Standard Base 4.1, and commands in neither). This affects menuconfig |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1018 and the actual source layout (toys/cp.c is now toys/posix/cp.c, and so on). |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1019 An android directory is planned (see the updated |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1020 <a href=roadmap.html#android>android roadmap analysis</a>).</p> |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1021 |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1022 <p>The FLAG_ macros for command option parsing and TT alias for the command's |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1023 global block are now automatically generated, commands should |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1024 #define FOR_commandname before #including <toys.h> to get the macros for that |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1025 command.</p> |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1026 |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1027 <p>An upgrade to the build infrastructure now allows commands with _ and - |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1028 in them, such as switch_root.</p> |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1029 |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1030 <p>Bugfixes: Avery Pennarun spotted a case where ls showed uid twice instead of |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1031 uid and gid, and that nice was using the wrong range of numbers. |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1032 The ls command also recursed inappropriately last time (not quite |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1033 properly converted for the dirtree changes last release), and now it's |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1034 fixed. Roy Tam pointed out a glitch in sh, and fixed df's percentage |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1035 calculation to match the POSIX spec. The kernel build didn't like our mktemp |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1036 and it does now. The wc command wasn't quite posix compliant (trailing spaces |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1037 break stuff). The ls command recursed inappropriately last time (not quite |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1038 properly converted for the dirtree changes last release), and now it's |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1039 fixed. The catv command wasn't displaying byte 255 correctly. Some lib |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1040 fixes (thinko in xpidfile). Fixed uname -m when running a 32 bit x86 binary |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1041 on an x86-64 host (it lies and says the system is i686, i586, or i486 depending |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1042 on what the toolchain that built the binary supported. This makes builds in |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1043 a 32 bit chroot on a 64 bit kernel break less.) The df command was checking |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1044 partitions in the wrong order (displaying undermounts instead of overmounts: |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1045 this used to work but some library code changed out from under it and it |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1046 wasn't updated to match until now). Felix Janda filled out the test suite |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1047 some more. The patch file creation logic got tweaked several times to |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1048 successfully apply more patches. Support for older (pre 2.10) glibc |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1049 versions was added to portability.h.</p> |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1050 |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1051 <p>Miscelaneous cleanups all around (mknod, sha1sum, logname), including a |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1052 rewrite of taskset to be less dependent on libc getting the headers right. All |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1053 the command headers should now point to the current relevant standards |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1054 document, where applicable.</p> |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1055 |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1056 <p>This news page had old news entries from before the relaunch moved into |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1057 a separate <a href=oldnews.html>oldnews</a> page.</p> |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1058 |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1059 <p>I forgot to create <a href=bin>static binaries</a> last time, but they're |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1060 back now.</p> |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1061 </span> |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1062 |
651
ba40e1852ce8
Check in the updated news and status web pages.
Rob Landley <rob@landley.net>
parents:
610
diff
changeset
|
1063 <hr><b>July 23, 2012</b> |
ba40e1852ce8
Check in the updated news and status web pages.
Rob Landley <rob@landley.net>
parents:
610
diff
changeset
|
1064 <blockquote><p>"Ford", Arthur said. "There's an infinite number of monkeys |
ba40e1852ce8
Check in the updated news and status web pages.
Rob Landley <rob@landley.net>
parents:
610
diff
changeset
|
1065 out here who want to talk to us about this script for Hamlet they've worked |
ba40e1852ce8
Check in the updated news and status web pages.
Rob Landley <rob@landley.net>
parents:
610
diff
changeset
|
1066 out." - The Hitchhiker's Guide to the Galaxy.</p></blockquote> |
ba40e1852ce8
Check in the updated news and status web pages.
Rob Landley <rob@landley.net>
parents:
610
diff
changeset
|
1067 |
693
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1068 <p><a href=downloads/toybox-0.4.0.tar.bz2>Toybox 0.4.0</a> is based on |
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
657
diff
changeset
|
1069 <a href=http://landley.net/hg/toybox/shortlog/640>commit 640</a>.</p> |
651
ba40e1852ce8
Check in the updated news and status web pages.
Rob Landley <rob@landley.net>
parents:
610
diff
changeset
|
1070 |
ba40e1852ce8
Check in the updated news and status web pages.
Rob Landley <rob@landley.net>
parents:
610
diff
changeset
|
1071 <p>The new <a href=status.html>status page</a> is calculated from |
ba40e1852ce8
Check in the updated news and status web pages.
Rob Landley <rob@landley.net>
parents:
610
diff
changeset
|
1072 the roadmap info, and should be easier to keep up to date in future.</p> |
ba40e1852ce8
Check in the updated news and status web pages.
Rob Landley <rob@landley.net>
parents:
610
diff
changeset
|
1073 |
ba40e1852ce8
Check in the updated news and status web pages.
Rob Landley <rob@landley.net>
parents:
610
diff
changeset
|
1074 <p>Andre Renaud contributed od and modinfo. Elie De Brauwer contributed |
ba40e1852ce8
Check in the updated news and status web pages.
Rob Landley <rob@landley.net>
parents:
610
diff
changeset
|
1075 taskset, bugfixes to cmp and tail, and tests for sort and tail. Kyungwan Han |
ba40e1852ce8
Check in the updated news and status web pages.
Rob Landley <rob@landley.net>
parents:
610
diff
changeset
|
1076 contributed passwd. Gaurang Shastri contributed w. Ashwini Sharma spotted a |
ba40e1852ce8
Check in the updated news and status web pages.
Rob Landley <rob@landley.net>
parents:
610
diff
changeset
|
1077 case where dirtree was adding extra slashes to a path.</p> |
ba40e1852ce8
Check in the updated news and status web pages.
Rob Landley <rob@landley.net>
parents:
610
diff
changeset
|
1078 |
ba40e1852ce8
Check in the updated news and status web pages.
Rob Landley <rob@landley.net>
parents:
610
diff
changeset
|
1079 <p>I rewrote od, cleaned up comm, documented the |
ba40e1852ce8
Check in the updated news and status web pages.
Rob Landley <rob@landley.net>
parents:
610
diff
changeset
|
1080 <a href=code.html#lib_llist>llist</a> and |
ba40e1852ce8
Check in the updated news and status web pages.
Rob Landley <rob@landley.net>
parents:
610
diff
changeset
|
1081 <a href=code.html#lib_dirtree>dirtree</a> infrastructure, added an -r option |
ba40e1852ce8
Check in the updated news and status web pages.
Rob Landley <rob@landley.net>
parents:
610
diff
changeset
|
1082 to date (and fixed a bug where -u wouldn't override /etc/localtime), |
ba40e1852ce8
Check in the updated news and status web pages.
Rob Landley <rob@landley.net>
parents:
610
diff
changeset
|
1083 fixed bugs in chmod +stw, fixed ls to show suid bits properly when the |
ba40e1852ce8
Check in the updated news and status web pages.
Rob Landley <rob@landley.net>
parents:
610
diff
changeset
|
1084 corresponding executable bit wasn't set, and worked around a longstanding |
ba40e1852ce8
Check in the updated news and status web pages.
Rob Landley <rob@landley.net>
parents:
610
diff
changeset
|
1085 glibc bug where static linking prevents stdout from automatically flushing |
ba40e1852ce8
Check in the updated news and status web pages.
Rob Landley <rob@landley.net>
parents:
610
diff
changeset
|
1086 pending output on exit.</p> |
ba40e1852ce8
Check in the updated news and status web pages.
Rob Landley <rob@landley.net>
parents:
610
diff
changeset
|
1087 |
610
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1088 <hr><b>June 25, 2012</b> |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1089 <blockquote><p>"For a moment, nothing happened. Then, after a second or so, nothing continued to happen." - The Hitchhiker's Guide to the Galaxy.</p></blockquote> |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1090 |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1091 <p><a href=downloads/toybox-0.3.1.tar.bz2>Toybox 0.3.1</a> is based on commit |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1092 <a href=http://landley.net/hg/toybox/shortlog/607>commit 607</a>. It's |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1093 mostly a bugfix release for ls -l (which was unhappy on targets other than |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1094 x86-64), plus a new "date" from Andre Renaud and rewritten chgrp/chown which |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1095 now support the full set of posix flags, plus a little work on the test |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1096 suite and some more header tweaks towards eventual compatability with the |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1097 musl libc.</p> |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1098 |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1099 <p>The todo list runneth over, but "release early, release often", so here |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1100 it is. The roadmap and documentation are a bit behind, and I've got ~40 |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1101 pending submissions to review. I need to catch up...</p> |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1102 </span> |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1103 |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1104 <hr><b>June 12, 2012</b> |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1105 <blockquote><p>"For instance, on the planet Earth, man had always assumed that |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1106 he was more intelligent than dolphins because he had achieved so much - the |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1107 wheel, New York, wars and so on - whilst all the dolphins had ever done was |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1108 muck about in the water having a good time. But conversely, the dolphins had |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1109 always believed that they were far more intelligent than man - for precisely |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1110 the same reasons." - The Hitchhiker's Guide to the Galaxy.</p></blockquote> |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1111 |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1112 <p>It's well past time for <a href=downloads/toybox-0.3.0.tar.bz2>toybox 0.3.0</a>, |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1113 so here it is, based |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1114 on <a href=http://landley.net/hg/toybox/shortlog/595>commit 595</a>, and the |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1115 statically linked <a href=downloads/binaries>prebuilt binaries</a> should |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1116 actually be statically linked this time (thanks Ashwini Sharma for spotting |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1117 that).</p> |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1118 |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1119 <p>It's hard to figure out where to cut a release, because development |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1120 doesn't stop. "Long before now" is the obviuos answer, of course. |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1121 The project's maintainer also moved house during this development cycle, which |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1122 threw things off for a bit (so many boxes). Releases should hopefully be a bit |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1123 more frequent from here on.</p> |
418 | 1124 |
610
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1125 <p>The big things Rob worked on this time were the new dirtree (directory |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1126 tree traversal) infrastructure, and a complete rewrite of ls using that |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1127 which should now implement all 26 posix options.</p> |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1128 |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1129 <p>Georgi Chorbadzhiyski added printenv, whoami, mkdir, mkfifo, chmod, chown, |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1130 chgrp, and uniq. He also added fraction and extension support to sleep (so if |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1131 you need a quarter-second sleep, it can do that now), and fixed a build bug |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1132 on slackware.</p> |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1133 |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1134 <p>Daniel Walter contributed a string to mode_t parser (in use by chmod and |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1135 mkdir -m). Ilya Kuzmich contributed comm. Elie De Brauwer added mountpoint, |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1136 vmstat, logname, login, and mktemp. Kevin Chase did some portability cleanups. |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1137 Pere Orga fixed some documentation.</p> |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1138 |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1139 <p>The "tac" and "clear" commands are now normal commands instead of shell |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1140 wrappers, and the header #includes have been cleaned up a bit to remove |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1141 deprecated functions and attempt to increase compatability with the bionic and |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1142 musl C libraries, "tail" should now use lseek() for large files, and "id" got |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1143 some cleanups and bugfixes.</p> |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1144 |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1145 <p>The new TOYBOX_FLOAT configuration option selects whether or not |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1146 to include floating point support (for embedded targets where that's |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1147 problematic).</p> |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1148 |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1149 <p>Several random bugfixes: unshare() might actually build portably now, |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1150 yes 'n' | cp -i should no longer bypass stdin and prompt via the tty, the |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1151 SUID support no longer drops permissions going through the toybox |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1152 multiplexer command, and a bugfix to xargs -0 means it should no longer |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1153 segfault. (I have a pending bug report about xargs not doing the full |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1154 posix whitespace handling that -0 obsoleted, but I'll deal with that next |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1155 release.)</p> |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1156 |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1157 <p>The build infrastructure is now automatically generating FLAG_ macros |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1158 for the options, but currently with the wrong names. Some more macro glue |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1159 is necessary, which I haven't quite figured out how to do yet.</p> |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1160 |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1161 <p>A defconfig toybox at the start of the $PATH has successfully built |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1162 Linux From Scratch (in my Aboriginal Linux project). The commands that |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1163 'default n' in the config are often still broken, cleanup is ongoing. |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1164 (The new dirtree stuff broke several of them that haven't been converted |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1165 yet, but if I wait until everything works we won't have a release before |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1166 1.0, so here's a checkpoint.)</p> |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1167 |
ce60e407829f
Update news page for the past two releases.
Rob Landley <rob@landley.net>
parents:
529
diff
changeset
|
1168 |
529 | 1169 <hr><b>March 3, 2012</b> |
1170 | |
1171 <blockquote><p>"They went unnoticed at Goonhilly, passed over Cape Canaveral | |
1172 without a blip, and Woomera and Jodrell Bank looked straight through them. | |
1173 Which was a pity, because it was exactly the sort of thing they'd been looking | |
1174 for all these years."</p></p>- The Hitchhiker's Guide to the Galaxy.</p> | |
1175 </p></blockquote> | |
1176 | |
1177 <p>Here's <a href=downloads/toybox-0.2.1.tar.bz2>toybox 0.2.1</a> based | |
1178 on <a href=http://landley.net/hg/toybox/shortlog/512>commit 512</a>. This | |
1179 time around, there are statically linked <a href=downloads/binaries>prebuilt | |
1180 binaries</a> for various embedded targets.</p> | |
1181 | |
1182 <p>It's been a busy few weeks, almost entirely due to new contributors. (I | |
1183 have not quite been keeping up.)</p> | |
1184 | |
1185 <p>Elie De Brauwer contributed free, uptime, swapon, swapoff, lsmod, mknod, | |
1186 insmod, rmmod, and fixed a bug in basename. Andre Renaud contributed ls, ln, | |
1187 realpath, and hostname. Andres Heck contributed pidof and killall. Daniel | |
1188 Walter wrote kill and extended id. Timothy Elliott contributed tail and tests | |
1189 for cmp. Frank Bergmann sent a warning fix. Bryce Fricke added -i to cp. | |
1190 Nathan McSween pointed out an optimization. Georgi Chorbadzhiyski fixed | |
1191 cross compiling to work more reliably.</p> | |
1192 | |
1193 <p>(My own contribution this time around was just tightening up other people's | |
1194 code, a build fix to unshare, some random bugfixes, and so on. My only new | |
1195 code this time around was writing a bash replacement for the existing python | |
1196 bloat-o-meter.)</p> | |
1197 | |
1198 <p>Last time (the 0.2.0 release) included the first pass at an id command from | |
1199 Tim Bird, env and basename from Tryn Mirell, cmp and head from Timothy Elliott, | |
1200 more bugfixes from Nathan McSween and Elie De Brauwer, and Luis Felipe Strano | |
1201 Moraes did a first pass at the who command plus other bugfixes and | |
1202 optimizations.</p> | |
1203 | |
1204 <p>(For that release I did xargs, cal, truncate, unlink, nohup, tty, wc, link, | |
1205 dirname, unshare, and various infrastructure tweaks, but it took me 3 months | |
1206 and those guys did their stuff in a week or so.)</p> | |
1207 | |
297
6e65eefc37e9
Announce 0.0.6 release. (A bit early, so the next FWL release can use it.)
Rob Landley <rob@landley.net>
parents:
277
diff
changeset
|
1208 |
457
521d54da4d0c
Commit the web page change that announced the release.
Rob Landley <rob@landley.net>
parents:
418
diff
changeset
|
1209 <hr><b>February 12, 2012</b> |
521d54da4d0c
Commit the web page change that announced the release.
Rob Landley <rob@landley.net>
parents:
418
diff
changeset
|
1210 <blockquote><p> |
521d54da4d0c
Commit the web page change that announced the release.
Rob Landley <rob@landley.net>
parents:
418
diff
changeset
|
1211 "for though it has many omissions and contains much that is apocryphal, or at |
521d54da4d0c
Commit the web page change that announced the release.
Rob Landley <rob@landley.net>
parents:
418
diff
changeset
|
1212 least wildly inaccurate, it scores over the older, more pedestrian work in two |
521d54da4d0c
Commit the web page change that announced the release.
Rob Landley <rob@landley.net>
parents:
418
diff
changeset
|
1213 important respects..."</p> |
521d54da4d0c
Commit the web page change that announced the release.
Rob Landley <rob@landley.net>
parents:
418
diff
changeset
|
1214 <p> - The Hitchhiker's Guide to the Galaxy</p></blockquote> |
521d54da4d0c
Commit the web page change that announced the release.
Rob Landley <rob@landley.net>
parents:
418
diff
changeset
|
1215 |
521d54da4d0c
Commit the web page change that announced the release.
Rob Landley <rob@landley.net>
parents:
418
diff
changeset
|
1216 <p>Here's the first BSD licensed release, |
521d54da4d0c
Commit the web page change that announced the release.
Rob Landley <rob@landley.net>
parents:
418
diff
changeset
|
1217 <a href=downloads/toybox-0.2.0.tar.bz2>toybox-0.2.0</a>, more a synchronization |
521d54da4d0c
Commit the web page change that announced the release.
Rob Landley <rob@landley.net>
parents:
418
diff
changeset
|
1218 point than anything particularly useful. 47 commands in a reasonably |
521d54da4d0c
Commit the web page change that announced the release.
Rob Landley <rob@landley.net>
parents:
418
diff
changeset
|
1219 ready-to-use state (what "make defconfig" builds), another ten or so partially |
521d54da4d0c
Commit the web page change that announced the release.
Rob Landley <rob@landley.net>
parents:
418
diff
changeset
|
1220 finished stubs ("make allyesconfig"), and several |
521d54da4d0c
Commit the web page change that announced the release.
Rob Landley <rob@landley.net>
parents:
418
diff
changeset
|
1221 patches pending on the mailing list I need to review and merge.</p> |
521d54da4d0c
Commit the web page change that announced the release.
Rob Landley <rob@landley.net>
parents:
418
diff
changeset
|
1222 |
521d54da4d0c
Commit the web page change that announced the release.
Rob Landley <rob@landley.net>
parents:
418
diff
changeset
|
1223 <p>More to come...</p> |
521d54da4d0c
Commit the web page change that announced the release.
Rob Landley <rob@landley.net>
parents:
418
diff
changeset
|
1224 |
418 | 1225 <hr> |
1226 <p><b>November 15, 2011</b> - Back from the dead, Toybox is now under a 2 | |
1227 clause BSD license, and aiming to become the default command line | |
1228 implementation of Android systems everywhere.</p> | |
1229 | |
1230 <p>More to come...</p> | |
1231 | |
1232 <hr> | |
365
8f0b24cc7cd7
Minor web page updates (put header/footer back, add a few <hr> tags).
Rob Landley <rob@landley.net>
parents:
361
diff
changeset
|
1233 |
657
7f5db1d707c0
Split off pre-relaunch news entries into a separate oldnews.html page.
Rob Landley <rob@landley.net>
parents:
651
diff
changeset
|
1234 <p><a href=oldnews.html>Old news</a> from before the relaunch.</p> |
365
8f0b24cc7cd7
Minor web page updates (put header/footer back, add a few <hr> tags).
Rob Landley <rob@landley.net>
parents:
361
diff
changeset
|
1235 |
8f0b24cc7cd7
Minor web page updates (put header/footer back, add a few <hr> tags).
Rob Landley <rob@landley.net>
parents:
361
diff
changeset
|
1236 <!--#include file="footer.html" --> |