From tartarus-commits at lists.tartarus.org Sun Mar 1 12:27:42 2015 From: tartarus-commits at lists.tartarus.org (Commits to Tartarus CVS repository.) Date: Sun, 01 Mar 2015 12:27:42 +0000 Subject: simon-git: putty (master): Jacob Nevins Message-ID: TL;DR: 06d2fb5 Move kh2reg.py link from svn to git. Repository: git://git.tartarus.org/simon/putty.git On the web: http://tartarus.org/~simon-git/gitweb/?p=putty.git Branch updated: master Committer: Jacob Nevins Date: 2015-03-01 12:27:42 commit 06d2fb5b372ff076d5e339f5baa3d919cb48870f web diff http://tartarus.org/~simon-git/gitweb/?p=putty.git;a=commitdiff;h=06d2fb5b372ff076d5e339f5baa3d919cb48870f;hp=80bd6a01aae5348c3aa826661fb497afbeb4ffa7 Author: Jacob Nevins Date: Sun Mar 1 12:27:27 2015 +0000 Move kh2reg.py link from svn to git. doc/faq.but | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) From tartarus-commits at lists.tartarus.org Sun Mar 1 12:27:44 2015 From: tartarus-commits at lists.tartarus.org (Commits to Tartarus CVS repository.) Date: Sun, 01 Mar 2015 12:27:44 +0000 Subject: simon-git: putty-wishlist (master): Jacob Nevins Message-ID: TL;DR: a26144f Move kh2reg.py links from svn to git. Repository: git://git.tartarus.org/simon/putty-wishlist.git On the web: http://tartarus.org/~simon-git/gitweb/?p=putty-wishlist.git Branch updated: master Committer: Jacob Nevins Date: 2015-03-01 12:27:44 commit a26144f64dc73beeaeb310658c8ced0fb77b3801 web diff http://tartarus.org/~simon-git/gitweb/?p=putty-wishlist.git;a=commitdiff;h=a26144f64dc73beeaeb310658c8ced0fb77b3801;hp=2ec7b7d9a78914952adc3c5e4482bcdcd386b882 Author: Jacob Nevins Date: Sun Mar 1 12:26:58 2015 +0000 Move kh2reg.py links from svn to git. data/accept-host-keys | 2 +- data/unix-kex-packet | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) From tartarus-commits at lists.tartarus.org Sat Mar 7 17:15:23 2015 From: tartarus-commits at lists.tartarus.org (Commits to Tartarus CVS repository.) Date: Sat, 07 Mar 2015 17:15:23 +0000 Subject: simon-git: putty (master): Simon Tatham Message-ID: TL;DR: 7d97c2a Stop Windows PuTTY becoming unresponsive if server floods us. Repository: git://git.tartarus.org/simon/putty.git On the web: http://tartarus.org/~simon-git/gitweb/?p=putty.git Branch updated: master Committer: Simon Tatham Date: 2015-03-07 17:15:23 commit 7d97c2a8fdb745905fd61a9ce4abbf822e167cef web diff http://tartarus.org/~simon-git/gitweb/?p=putty.git;a=commitdiff;h=7d97c2a8fdb745905fd61a9ce4abbf822e167cef;hp=06d2fb5b372ff076d5e339f5baa3d919cb48870f Author: Simon Tatham Date: Sat Mar 7 17:10:36 2015 +0000 Stop Windows PuTTY becoming unresponsive if server floods us. This was an old bug, fixed around 0.59, which apparently regressed when I rewrote the main event loop using the toplevel_callback mechanism. Investigation just now suggests that it has to do with my faulty assumption that Windows PeekMessage would deliver messages in its message queue in FIFO order (i.e. that the thing calling itself a message queue is actually a _queue_). In fact my WM_NETEVENT seems to like to jump the queue, so that once a steady stream of them starts arriving, we never do anything else in the main event loop (except deal with handles). Worked around in a simple and slightly bodgy way, namely, we don't stop looping on PeekMessage and run our toplevel callbacks until we've either run out of messages completely or else seen at least one that _isn't_ a WM_NETEVENT. That way we should reliably interleave NETEVENT processing with processing of other stuff. windows/window.c | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) From tartarus-commits at lists.tartarus.org Sat Mar 7 17:20:45 2015 From: tartarus-commits at lists.tartarus.org (Commits to Tartarus CVS repository.) Date: Sat, 07 Mar 2015 17:20:45 +0000 Subject: simon-git: putty-wishlist (master): Simon Tatham Message-ID: TL;DR: 363d219 Document the reappearance and re-fixing of spew-lockup. Repository: git://git.tartarus.org/simon/putty-wishlist.git On the web: http://tartarus.org/~simon-git/gitweb/?p=putty-wishlist.git Branch updated: master Committer: Simon Tatham Date: 2015-03-07 17:20:45 commit 363d2195f587b4d6c896af3e875955fae29f805d web diff http://tartarus.org/~simon-git/gitweb/?p=putty-wishlist.git;a=commitdiff;h=363d2195f587b4d6c896af3e875955fae29f805d;hp=a26144f64dc73beeaeb310658c8ced0fb77b3801 Author: Simon Tatham Date: Sat Mar 7 17:20:00 2015 +0000 Document the reappearance and re-fixing of spew-lockup. data/spew-lockup-2 | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) From tartarus-commits at lists.tartarus.org Sat Mar 7 21:01:06 2015 From: tartarus-commits at lists.tartarus.org (Commits to Tartarus CVS repository.) Date: Sat, 07 Mar 2015 21:01:06 +0000 Subject: simon-git: putty (master): Simon Tatham Message-ID: TL;DR: 2422b18 Don't output negative numbers in the ESC[13t report. Repository: git://git.tartarus.org/simon/putty.git On the web: http://tartarus.org/~simon-git/gitweb/?p=putty.git Branch updated: master Committer: Simon Tatham Date: 2015-03-07 21:01:06 commit 2422b18a0f4d758f0660503b068dd19d92de4906 web diff http://tartarus.org/~simon-git/gitweb/?p=putty.git;a=commitdiff;h=2422b18a0f4d758f0660503b068dd19d92de4906;hp=7d97c2a8fdb745905fd61a9ce4abbf822e167cef Author: Simon Tatham Date: Sat Mar 7 20:57:26 2015 +0000 Don't output negative numbers in the ESC[13t report. A minus sign is illegal at that position in a control sequence, so if ESC[13t should report something like ESC[3;-123;234t then we won't accept it as input. Switch to printing the numbers as unsigned, so that negative window coordinates are output as their 32-bit two's complement; experimentation suggests that PuTTY does accept that on input. terminal.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) From tartarus-commits at lists.tartarus.org Sun Mar 8 08:29:05 2015 From: tartarus-commits at lists.tartarus.org (Commits to Tartarus CVS repository.) Date: Sun, 08 Mar 2015 08:29:05 +0000 Subject: simon-git: putty-wishlist (master): Simon Tatham Message-ID: TL;DR: e3de06b Stop misidentifying git commit hashes as PuTTY releases. 02af007 Reverse-order the release sections on the wishlist page. Repository: git://git.tartarus.org/simon/putty-wishlist.git On the web: http://tartarus.org/~simon-git/gitweb/?p=putty-wishlist.git Branch updated: master Committer: Simon Tatham Date: 2015-03-08 08:29:05 commit e3de06b29fa2caaa992e130d9cb0564476207113 web diff http://tartarus.org/~simon-git/gitweb/?p=putty-wishlist.git;a=commitdiff;h=e3de06b29fa2caaa992e130d9cb0564476207113;hp=363d2195f587b4d6c896af3e875955fae29f805d Author: Simon Tatham Date: Sun Mar 8 08:20:34 2015 +0000 Stop misidentifying git commit hashes as PuTTY releases. The Wishlist page currently contains a section with the heading 'Fixed in release 7d97c2a8fdb745905fd61a9ce4abbf822e167cef', because I entered that commit id in the Fixed-in header for spew-lockup-2. git commit hashes in Fixed-in should be informational only - they should show up in the individual bug pages, but play no part in the formatting of the main Wishlist page. control/bugs2html | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) commit 02af00781e2d99db8ddd2692e32aaaa4a20b72db web diff http://tartarus.org/~simon-git/gitweb/?p=putty-wishlist.git;a=commitdiff;h=02af00781e2d99db8ddd2692e32aaaa4a20b72db;hp=e3de06b29fa2caaa992e130d9cb0564476207113 Author: Simon Tatham Date: Sun Mar 8 08:26:05 2015 +0000 Reverse-order the release sections on the wishlist page. It's becoming far too silly to have the most important parts of the page - which bugs are fixed in the latest release, or still exist in the latest release but are fixed in the snapshots - be _half way down_ the page, between all the historical info about very old releases and the still-unfixed wishlist section. So I've reordered those sections to put the latest releases at the top and the old ones down at the bottom. This wasn't just a question of prefixing 'reverse' to the 'sort' in the main loop, because the 'Broken and fixed between' section was implemented by remembering the last thing we saw going round the loop, so I also had to move that around and swap $oldclass with $class in its code. control/bugs2html | 55 ++++++++++++++++++++++++++--------------------------- 1 file changed, 27 insertions(+), 28 deletions(-) From tartarus-commits at lists.tartarus.org Mon Mar 9 18:10:26 2015 From: tartarus-commits at lists.tartarus.org (Commits to Tartarus CVS repository.) Date: Mon, 09 Mar 2015 18:10:26 +0000 Subject: simon-git: puzzles (master): Simon Tatham Message-ID: TL;DR: ffe0aa6 Fix a build failure on x32 (time_t printfs). Repository: git://git.tartarus.org/simon/puzzles.git On the web: http://tartarus.org/~simon-git/gitweb/?p=puzzles.git Branch updated: master Committer: Simon Tatham Date: 2015-03-09 18:10:26 commit ffe0aa6a114e83649bb04ff8e09b8025be988de2 web diff http://tartarus.org/~simon-git/gitweb/?p=puzzles.git;a=commitdiff;h=ffe0aa6a114e83649bb04ff8e09b8025be988de2;hp=f1e68fb516b5a8e83a9a2c923424313d0098a728 Author: Adam Borowski Date: Mon Mar 9 07:58:10 2015 +0100 Fix a build failure on x32 (time_t printfs). As that architecture has 64-bit time_t but only 32-bit longs, printf format causes a warning. Enter -Werror... magnets.c | 2 +- signpost.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) From tartarus-commits at lists.tartarus.org Wed Mar 11 01:51:11 2015 From: tartarus-commits at lists.tartarus.org (Commits to Tartarus CVS repository.) Date: Wed, 11 Mar 2015 01:51:11 +0000 Subject: Tartarus CVS: survex-www: olly Message-ID: CVS Root: /usr/data/cvs Module: survex-www Changes by: olly Date: Wed Mar 11 2015 01:51:11 GMT Log message: Update list of supported languages Modified files: . : screenshots.hip Links: http://cvs.tartarus.org//survex-www/screenshots.hip.diff?r1=1.15&r2=1.16 From tartarus-commits at lists.tartarus.org Wed Mar 11 21:02:12 2015 From: tartarus-commits at lists.tartarus.org (Commits to Tartarus CVS repository.) Date: Wed, 11 Mar 2015 21:02:12 +0000 Subject: simon-git: doit (master): Simon Tatham Message-ID: TL;DR: e4343dc Add .gitignore entries for Windows dev builds. Repository: git://git.tartarus.org/simon/doit.git On the web: http://tartarus.org/~simon-git/gitweb/?p=doit.git Branch updated: master Committer: Simon Tatham Date: 2015-03-11 21:02:12 commit e4343dcbc003d333ca9385367c2d33afb9314bde web diff http://tartarus.org/~simon-git/gitweb/?p=doit.git;a=commitdiff;h=e4343dcbc003d333ca9385367c2d33afb9314bde;hp=eab9228c8d5e89a0c432149ebb1559f406a16314 Author: Simon Tatham Date: Wed Mar 11 21:01:51 2015 +0000 Add .gitignore entries for Windows dev builds. .gitignore | 3 +++ 1 file changed, 3 insertions(+) From tartarus-commits at lists.tartarus.org Sun Mar 15 08:51:26 2015 From: tartarus-commits at lists.tartarus.org (Commits to Tartarus CVS repository.) Date: Sun, 15 Mar 2015 08:51:26 +0000 Subject: simon-git: puzzles (master): Simon Tatham Message-ID: TL;DR: 05b533d Update README after the switch to autoconf. Repository: git://git.tartarus.org/simon/puzzles.git On the web: http://tartarus.org/~simon-git/gitweb/?p=puzzles.git Branch updated: master Committer: Simon Tatham Date: 2015-03-15 08:51:26 commit 05b533d1f899e448fae25e27614543147f9acffa web diff http://tartarus.org/~simon-git/gitweb/?p=puzzles.git;a=commitdiff;h=05b533d1f899e448fae25e27614543147f9acffa;hp=ffe0aa6a114e83649bb04ff8e09b8025be988de2 Author: Simon Tatham Date: Sun Mar 15 08:50:53 2015 +0000 Update README after the switch to autoconf. A user just pointed out that it still (and now falsely) claims that mkfiles.pl directly generates a usable Unix Makefile. README | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) From tartarus-commits at lists.tartarus.org Sun Mar 15 16:19:12 2015 From: tartarus-commits at lists.tartarus.org (Commits to Tartarus CVS repository.) Date: Sun, 15 Mar 2015 16:19:12 +0000 Subject: simon-git: putty-wishlist (master): Jacob Nevins Message-ID: TL;DR: 3f2971a Clarify history; mention Dropbear versions. Repository: git://git.tartarus.org/simon/putty-wishlist.git On the web: http://tartarus.org/~simon-git/gitweb/?p=putty-wishlist.git Branch updated: master Committer: Jacob Nevins Date: 2015-03-15 16:19:12 commit 3f2971a06b5364812be5a1f198a993c70285b297 web diff http://tartarus.org/~simon-git/gitweb/?p=putty-wishlist.git;a=commitdiff;h=3f2971a06b5364812be5a1f198a993c70285b297;hp=02af00781e2d99db8ddd2692e32aaaa4a20b72db Author: Jacob Nevins Date: Sun Mar 15 16:18:27 2015 +0000 Clarify history; mention Dropbear versions. data/ssh-close-vs-request | 50 ++++++++++++++++++++++++++++----------------- 1 file changed, 31 insertions(+), 19 deletions(-) From tartarus-commits at lists.tartarus.org Thu Mar 19 18:29:12 2015 From: tartarus-commits at lists.tartarus.org (Commits to Tartarus CVS repository.) Date: Thu, 19 Mar 2015 18:29:12 +0000 Subject: simon-git: halibut (master): Simon Tatham Message-ID: TL;DR: a8a18c1 New build script for testing purposes. 8e811a8 Make HTML Help files display a font-size change button on the toolbar. Repository: git://git.tartarus.org/simon/halibut.git On the web: http://tartarus.org/~simon-git/gitweb/?p=halibut.git Branch updated: master Committer: Simon Tatham Date: 2015-03-19 18:29:12 commit a8a18c1d1f9f46e46a0dcedc6caaabfaf2d9dd33 web diff http://tartarus.org/~simon-git/gitweb/?p=halibut.git;a=commitdiff;h=a8a18c1d1f9f46e46a0dcedc6caaabfaf2d9dd33;hp=0a72bbbdf4b9ff119587782009839440a4869dad Author: Simon Tatham Date: Thu Mar 19 18:25:25 2015 +0000 New build script for testing purposes. 'bob -s Buildscr.test' builds Halibut, runs it over inputs/test.but to produce all the supported output formats, and delivers them all into the output directory. Including Windows HTML Help, for which it has to do a special run of the HTML back end with extra options and then get a Windows box to run hhc (hence this having to be a Buildscr). Buildscr.test | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) commit 8e811a81e880ce78d0499a422e9fbc0dc8a5033f web diff http://tartarus.org/~simon-git/gitweb/?p=halibut.git;a=commitdiff;h=8e811a81e880ce78d0499a422e9fbc0dc8a5033f;hp=a8a18c1d1f9f46e46a0dcedc6caaabfaf2d9dd33 Author: Simon Tatham Date: Thu Mar 19 18:26:53 2015 +0000 Make HTML Help files display a font-size change button on the toolbar. I had no idea that was a thing HTML Help could do at all, let alone that .chm files could enable or disable it via a flag! But Tino Reichardt sent in a patch which sets one extra bit in a flags word in the .hhp file, and despite 'chmspec' not mentioning that bit at all, it does indeed seem to do something useful. bk_html.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) From tartarus-commits at lists.tartarus.org Thu Mar 19 18:30:04 2015 From: tartarus-commits at lists.tartarus.org (Commits to Tartarus CVS repository.) Date: Thu, 19 Mar 2015 18:30:04 +0000 Subject: simon-git: tweak (master): Simon Tatham Message-ID: TL;DR: 4248e81 Add Apple platform as a flavor of unix. 34004d5 build: add support for DESTDIR variable. 7296a07 build: make release, clean, install targets .PHONY. Repository: git://git.tartarus.org/simon/tweak.git On the web: http://tartarus.org/~simon-git/gitweb/?p=tweak.git Branch updated: master Committer: Simon Tatham Date: 2015-03-19 18:30:04 commit 4248e81a8ee54db91ee1b58b526485b9bb1567bd web diff http://tartarus.org/~simon-git/gitweb/?p=tweak.git;a=commitdiff;h=4248e81a8ee54db91ee1b58b526485b9bb1567bd;hp=2233ce10f5ffd47d5842d6b320427c45cf1e4f61 Author: Yousong Zhou Date: Thu Mar 19 10:39:41 2015 +0800 Add Apple platform as a flavor of unix. tweak.h | 4 ++++ 1 file changed, 4 insertions(+) commit 34004d5c44c15f4033fee60163848c93bce19fca web diff http://tartarus.org/~simon-git/gitweb/?p=tweak.git;a=commitdiff;h=34004d5c44c15f4033fee60163848c93bce19fca;hp=4248e81a8ee54db91ee1b58b526485b9bb1567bd Author: Yousong Zhou Date: Thu Mar 19 14:05:44 2015 +0800 build: add support for DESTDIR variable. Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 7296a07f0a936ed23fc2ea66fb648f1b67f2eddc web diff http://tartarus.org/~simon-git/gitweb/?p=tweak.git;a=commitdiff;h=7296a07f0a936ed23fc2ea66fb648f1b67f2eddc;hp=34004d5c44c15f4033fee60163848c93bce19fca Author: Yousong Zhou Date: Thu Mar 19 14:06:28 2015 +0800 build: make release, clean, install targets .PHONY. Makefile | 2 ++ 1 file changed, 2 insertions(+) From tartarus-commits at lists.tartarus.org Sat Mar 21 15:22:28 2015 From: tartarus-commits at lists.tartarus.org (Commits to Tartarus CVS repository.) Date: Sat, 21 Mar 2015 15:22:28 +0000 Subject: simon-git: spigot (master): Simon Tatham Message-ID: TL;DR: 2cd1a83 Get rid of the bool return value from sign_exp(). bcadf64 More sophisticated calculation of exponent in base output. c2b18a3 Fix identification of cross-exponent rounding boundaries. c2fcdc3 Add some tests of roundup to overflow. Repository: git://git.tartarus.org/simon/spigot.git On the web: http://tartarus.org/~simon-git/gitweb/?p=spigot.git Branch updated: master Committer: Simon Tatham Date: 2015-03-21 15:22:28 commit 2cd1a83dc8aeb6777c899f8b0fe5cdf530b105da web diff http://tartarus.org/~simon-git/gitweb/?p=spigot.git;a=commitdiff;h=2cd1a83dc8aeb6777c899f8b0fe5cdf530b105da;hp=c26c2ca41bf8b8c3ded106af3984b86df4274a9c Author: Simon Tatham Date: Sat Mar 21 15:20:16 2015 +0000 Get rid of the bool return value from sign_exp(). I've decided it wasn't the right way to handle IEEE overflow after all, because it set the 'done' flag in the BaseOutputGenerator main loop which then did unhelpful post-rounding processing on the resulting formatter. Instead, formatters in the overflow state now mark themselves as complete in a way that's _separate_ from that 'done' flag, and not checked by anything except the code that checks the final termination condition. I'd reused the same flag for %f formatting of exponents smaller than the precision, which was lazy; that's obviously better done with the same min_exp mechanism that BaseFormatter uses. Added some test cases that failed before. baseout.cpp | 55 +++++++++++++++++++++++++++++-------------------------- test.sh | 3 +++ 2 files changed, 32 insertions(+), 26 deletions(-) commit bcadf64be056da1ff0d95492c7cbeb861446c9b4 web diff http://tartarus.org/~simon-git/gitweb/?p=spigot.git;a=commitdiff;h=bcadf64be056da1ff0d95492c7cbeb861446c9b4;hp=2cd1a83dc8aeb6777c899f8b0fe5cdf530b105da Author: Simon Tatham Date: Sat Mar 21 15:21:08 2015 +0000 More sophisticated calculation of exponent in base output. The previous approach of just taking floor_log of the integer at the end of an interval was not quite robust, because some of those interval-end integers are implicitly 'plus or minus epsilon', and the minus-epsilon case can make a difference. Also, terminating the exponent-finding loop once the two ends of the interval differ by less than a factor of ebase turned out to be not quite robust: in cases where it's possible to round up to the next exponent and the rules for doing so can change depending on exponent, it was occasionally possible to find a case which finished the exponent loop with a range of three rather than two possible exponents. So instead, we now have a more rigorous function for computing an exponent from an integer plus an 'is this exact' flag, and we terminate the exponent loop once the two ends of the interval yield return values from that function differing by at most one. In the course of this, I've also factored out the translation of user-provided rounding modes into non-sign-dependent ones (e.g. 'round up' becomes either round toward zero or round toward infinity once the sign is known), since it now has to be called during the tentative exponent calculation as well as once the exponent loop actually terminates. baseout.cpp | 124 ++++++++++++++++++++++++++++++++++++++++++++++++----------- 1 file changed, 102 insertions(+), 22 deletions(-) commit c2b18a350865ad3126487bcee05061ed7cce411d web diff http://tartarus.org/~simon-git/gitweb/?p=spigot.git;a=commitdiff;h=c2b18a350865ad3126487bcee05061ed7cce411d;hp=bcadf64be056da1ff0d95492c7cbeb861446c9b4 Author: Simon Tatham Date: Sat Mar 21 15:21:27 2015 +0000 Fix identification of cross-exponent rounding boundaries. In cases near an exponent boundary, where we're simultaneously running two formatters with different exponents, the formatter for the higher exponent typically miscomputes the low end of its catchment interval. (Because that computation is based on _its_ idea of the distance between representable outputs, and in case of a disagreement the lower formatter's idea is right. IEEE round-up is an example of this.) So I've now arranged that we notice that situation, and when we see it, the upper formatter discards its own idea of the rounding boundary and defers to the lower's one. baseout.cpp | 120 +++++++++++++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 105 insertions(+), 15 deletions(-) commit c2fcdc3adad33fd54718d7b3ee7cc42c595e52ed web diff http://tartarus.org/~simon-git/gitweb/?p=spigot.git;a=commitdiff;h=c2fcdc3adad33fd54718d7b3ee7cc42c595e52ed;hp=c2b18a350865ad3126487bcee05061ed7cce411d Author: Simon Tatham Date: Sat Mar 21 15:21:41 2015 +0000 Add some tests of roundup to overflow. These tests pass as a result of the previous commits. test.sh | 8 ++++++++ 1 file changed, 8 insertions(+) From tartarus-commits at lists.tartarus.org Sun Mar 22 08:24:29 2015 From: tartarus-commits at lists.tartarus.org (Commits to Tartarus CVS repository.) Date: Sun, 22 Mar 2015 08:24:29 +0000 Subject: simon-git: spigot (master): Simon Tatham Message-ID: TL;DR: bf1c67f New feature: 'tentative output'. Repository: git://git.tartarus.org/simon/spigot.git On the web: http://tartarus.org/~simon-git/gitweb/?p=spigot.git Branch updated: master Committer: Simon Tatham Date: 2015-03-22 08:24:29 commit bf1c67f172e54f77a15632c7ef1d4d3e65d1d484 web diff http://tartarus.org/~simon-git/gitweb/?p=spigot.git;a=commitdiff;h=bf1c67f172e54f77a15632c7ef1d4d3e65d1d484;hp=c2fcdc3adad33fd54718d7b3ee7cc42c595e52ed Author: Simon Tatham Date: Sun Mar 22 08:12:35 2015 +0000 New feature: 'tentative output'. This mitigates at least some of the annoying situations in which spigot can't compute an answer due to it being _too easy_; the example I've used throughout the docs is sin(asin(0.12345)). Previously, we printed 0.1234 and then dithered forever failing to compute the 5; now we print the 5 in a way that clearly marks it as 'not completely sure of this but it looks likely', and retract it later if better information comes along. In the course of documenting this, I've completely rewritten the hazards section of the documentation, so that it categorises exactness hazards into various subtypes and explains which one tentative output applies to. Also I've done something disgusting in Makefile.am to pipe Halibut's HTML output through a Perl one-liner, in order to go beyond Halibut's limitations and get red text in a few of the example terminal session snippets. There's a new option --tentative to turn tentative output on and off (and, like colour ls, it has a default third state 'auto' which applies only when outputting to a terminal device), and also an undocumented --tentative-test option intended for use by the test suite. Makefile.am | 4 +- TODO.txt | 37 ------ baseout.cpp | 70 ++++++++++- baseout.h | 2 + configure.ac | 4 + main.cpp | 206 ++++++++++++++++++++++++++++++--- manual.but | 363 ++++++++++++++++++++++++++++++++++++++++++++-------------- test.sh | 19 +++ 8 files changed, 559 insertions(+), 146 deletions(-) From tartarus-commits at lists.tartarus.org Sun Mar 22 08:42:52 2015 From: tartarus-commits at lists.tartarus.org (Commits to Tartarus CVS repository.) Date: Sun, 22 Mar 2015 08:42:52 +0000 Subject: simon-git: spigot (master): Simon Tatham Message-ID: TL;DR: 4e76320 Docs typo. f15f806 Remove ugly trailing decimal point in tentative output. Repository: git://git.tartarus.org/simon/spigot.git On the web: http://tartarus.org/~simon-git/gitweb/?p=spigot.git Branch updated: master Committer: Simon Tatham Date: 2015-03-22 08:42:52 commit 4e76320d304069905ffcb657956aa974e495ccb9 web diff http://tartarus.org/~simon-git/gitweb/?p=spigot.git;a=commitdiff;h=4e76320d304069905ffcb657956aa974e495ccb9;hp=bf1c67f172e54f77a15632c7ef1d4d3e65d1d484 Author: Simon Tatham Date: Sun Mar 22 08:36:25 2015 +0000 Docs typo. manual.but | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit f15f8068abe5093320f7ea42ef879a6890f931c8 web diff http://tartarus.org/~simon-git/gitweb/?p=spigot.git;a=commitdiff;h=f15f8068abe5093320f7ea42ef879a6890f931c8;hp=4e76320d304069905ffcb657956aa974e495ccb9 Author: Simon Tatham Date: Sun Mar 22 08:40:52 2015 +0000 Remove ugly trailing decimal point in tentative output. Also added a few more tests checking the exact formatting of tentative output in that sort of case. baseout.cpp | 10 ++++++++++ test.sh | 5 +++++ 2 files changed, 15 insertions(+) From tartarus-commits at lists.tartarus.org Mon Mar 23 18:18:18 2015 From: tartarus-commits at lists.tartarus.org (Commits to Tartarus CVS repository.) Date: Mon, 23 Mar 2015 18:18:18 +0000 Subject: simon-git: spigot (master): Simon Tatham Message-ID: TL;DR: e08452d Don't print tentative output until it's at least 3 digits certain. 2da1327 Tweak a paragraph in the new docs section. 09c42ae Mention tentative output in the man page. a7f48a1 Print an error if tentative output is 'on' but can't be enabled. 15a5525 Handle the special case of exp(0) sensibly. Repository: git://git.tartarus.org/simon/spigot.git On the web: http://tartarus.org/~simon-git/gitweb/?p=spigot.git Branch updated: master Committer: Simon Tatham Date: 2015-03-23 18:18:18 commit e08452d8d1b964a49960cecb199da5070e909fc9 web diff http://tartarus.org/~simon-git/gitweb/?p=spigot.git;a=commitdiff;h=e08452d8d1b964a49960cecb199da5070e909fc9;hp=f15f8068abe5093320f7ea42ef879a6890f931c8 Author: Simon Tatham Date: Mon Mar 23 18:11:59 2015 +0000 Don't print tentative output until it's at least 3 digits certain. This avoids tentative output flickering on and off _all the time_ during computation of a perfectly sensible irrational number. main.cpp | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) commit 2da1327978cc56e4d614cf6754ec1a97d0a73910 web diff http://tartarus.org/~simon-git/gitweb/?p=spigot.git;a=commitdiff;h=2da1327978cc56e4d614cf6754ec1a97d0a73910;hp=e08452d8d1b964a49960cecb199da5070e909fc9 Author: Simon Tatham Date: Mon Mar 23 18:12:47 2015 +0000 Tweak a paragraph in the new docs section. The numbers quoted had a missing digit in them (they were either side of 0.1235, which should have been 0.12345), and while I'm at it, I've expanded the wording of the sentence containing those numbers. manual.but | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) commit 09c42ae50d3eca252abdf64c094354080c917186 web diff http://tartarus.org/~simon-git/gitweb/?p=spigot.git;a=commitdiff;h=09c42ae50d3eca252abdf64c094354080c917186;hp=2da1327978cc56e4d614cf6754ec1a97d0a73910 Author: Simon Tatham Date: Mon Mar 23 18:13:23 2015 +0000 Mention tentative output in the man page. I completely forgot, as usual, after carefully updating the main manual. manpage.but | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) commit a7f48a17d2a2b7dd56971f1a9ee73f69664f9c58 web diff http://tartarus.org/~simon-git/gitweb/?p=spigot.git;a=commitdiff;h=a7f48a17d2a2b7dd56971f1a9ee73f69664f9c58;hp=09c42ae50d3eca252abdf64c094354080c917186 Author: Simon Tatham Date: Mon Mar 23 18:13:58 2015 +0000 Print an error if tentative output is 'on' but can't be enabled. With tentative output set to auto, failing to retrieve one of the terminal control strings we need just causes it to be quietly turned off. But if the user specifically says they _definitely_ want it, and we don't manage to enable it, we should explain why we can't. The error isn't fatal; spigot will still continue without tentative output after printing it. main.cpp | 28 +++++++++++++++++++++++----- 1 file changed, 23 insertions(+), 5 deletions(-) commit 15a5525fd8af07fa3b38f9edb5af561edab7be4d web diff http://tartarus.org/~simon-git/gitweb/?p=spigot.git;a=commitdiff;h=15a5525fd8af07fa3b38f9edb5af561edab7be4d;hp=a7f48a17d2a2b7dd56971f1a9ee73f69664f9c58 Author: Simon Tatham Date: Mon Mar 23 18:15:49 2015 +0000 Handle the special case of exp(0) sensibly. Prior to this change, an input value of zero was getting all the way into the ExpRational class, which would then return all-zero spigot matrices forever, which is not a useful behaviour at all. This didn't cause any obvious problems with computing exp(0) itself, but other more complicated expressions would fail, such as 0*exp(0)-k for rational k. I initially noticed this bug by means of W(0.1234) failing an assertion, which turned out to be because xex_constructor() had built an expression of just that form. Added both of those as regression tests. exp.cpp | 6 ++++++ test.sh | 2 ++ 2 files changed, 8 insertions(+) From tartarus-commits at lists.tartarus.org Tue Mar 24 19:00:34 2015 From: tartarus-commits at lists.tartarus.org (Commits to Tartarus CVS repository.) Date: Tue, 24 Mar 2015 19:00:34 +0000 Subject: simon-git: spigot (master): Simon Tatham Message-ID: TL;DR: c0a832f Refactor the platform-dependent parts of tentative output. 59f3f0c Support tentative output on Windows. Repository: git://git.tartarus.org/simon/spigot.git On the web: http://tartarus.org/~simon-git/gitweb/?p=spigot.git Branch updated: master Committer: Simon Tatham Date: 2015-03-24 19:00:34 commit c0a832f0fece4e51f7e265134457bb934718e5d8 web diff http://tartarus.org/~simon-git/gitweb/?p=spigot.git;a=commitdiff;h=c0a832f0fece4e51f7e265134457bb934718e5d8;hp=15a5525fd8af07fa3b38f9edb5af561edab7be4d Author: Simon Tatham Date: Tue Mar 24 18:54:33 2015 +0000 Refactor the platform-dependent parts of tentative output. I've moved out into separate functions the actual mechanics of printing and erasing text in red, so that I can drop in other implementations of them not based on terminfo at all. main.cpp | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) commit 59f3f0c3f00b109c9e9ecd4acc3959eb4c0ca7f6 web diff http://tartarus.org/~simon-git/gitweb/?p=spigot.git;a=commitdiff;h=59f3f0c3f00b109c9e9ecd4acc3959eb4c0ca7f6;hp=c0a832f0fece4e51f7e265134457bb934718e5d8 Author: Simon Tatham Date: Tue Mar 24 18:58:52 2015 +0000 Support tentative output on Windows. This only works on proper Windows console devices, because it uses the Windows API call SetConsoleTextAttribute() to change the text colour. main.cpp | 99 ++++++++++++++++++++++++++++++++++++++++++++++++++++---------- 1 file changed, 84 insertions(+), 15 deletions(-) From tartarus-commits at lists.tartarus.org Tue Mar 24 19:27:50 2015 From: tartarus-commits at lists.tartarus.org (Commits to Tartarus CVS repository.) Date: Tue, 24 Mar 2015 19:27:50 +0000 Subject: simon-git: puzzles (master): Simon Tatham Message-ID: TL;DR: 195217a Fix a compile warning on ARM. Repository: git://git.tartarus.org/simon/puzzles.git On the web: http://tartarus.org/~simon-git/gitweb/?p=puzzles.git Branch updated: master Committer: Simon Tatham Date: 2015-03-24 19:27:50 commit 195217a48062c3ee64a47b1d0b5327e5838a105c web diff http://tartarus.org/~simon-git/gitweb/?p=puzzles.git;a=commitdiff;h=195217a48062c3ee64a47b1d0b5327e5838a105c;hp=05b533d1f899e448fae25e27614543147f9acffa Author: Simon Tatham Date: Tue Mar 24 19:20:03 2015 +0000 Fix a compile warning on ARM. Aapo Rantalainen points out that comparing 'char c' against zero gives rise to gcc's "comparison is always false" warning, which escalates to an error under -Werror. This is one of those situations where the warning is doing more harm than good, but here's a rephrasing which casts to unsigned so that both negative numbers and positive out-of-range ones can be caught by the same comparison. flood.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) From tartarus-commits at lists.tartarus.org Wed Mar 25 18:20:50 2015 From: tartarus-commits at lists.tartarus.org (Commits to Tartarus CVS repository.) Date: Wed, 25 Mar 2015 18:20:50 +0000 Subject: simon-git: spigot (master): Simon Tatham Message-ID: TL;DR: 6bf9809 Use tparm() if tiparm() isn't available. e437660 Fix clang warning from passing string literals to tigetstr. f973988 Fix a clang warning about switching on an enum. Repository: git://git.tartarus.org/simon/spigot.git On the web: http://tartarus.org/~simon-git/gitweb/?p=spigot.git Branch updated: master Committer: Simon Tatham Date: 2015-03-25 18:20:50 commit 6bf9809505a5142503c2cd121ff1ac0635d83f55 web diff http://tartarus.org/~simon-git/gitweb/?p=spigot.git;a=commitdiff;h=6bf9809505a5142503c2cd121ff1ac0635d83f55;hp=59f3f0c3f00b109c9e9ecd4acc3959eb4c0ca7f6 Author: Simon Tatham Date: Wed Mar 25 18:15:25 2015 +0000 Use tparm() if tiparm() isn't available. This fixes a build failure on OS X. configure.ac | 2 +- main.cpp | 7 +++++++ 2 files changed, 8 insertions(+), 1 deletion(-) commit e437660f4d877b4b0f87e279ce13fb75fbfa96ea web diff http://tartarus.org/~simon-git/gitweb/?p=spigot.git;a=commitdiff;h=e437660f4d877b4b0f87e279ce13fb75fbfa96ea;hp=6bf9809505a5142503c2cd121ff1ac0635d83f55 Author: Simon Tatham Date: Wed Mar 25 18:15:39 2015 +0000 Fix clang warning from passing string literals to tigetstr. Annoying to have to, since obviously tigetstr _should_ normally expect a string literal, but it's from the Dawn Of Time and hence declared to take a char * rather than a const char *, so what can you do. (Admittedly this is a somewhat overengineered fix, but.) main.cpp | 24 ++++++++++++++++++++---- 1 file changed, 20 insertions(+), 4 deletions(-) commit f973988fd70e16a3dc27dd884755be9f9fcca252 web diff http://tartarus.org/~simon-git/gitweb/?p=spigot.git;a=commitdiff;h=f973988fd70e16a3dc27dd884755be9f9fcca252;hp=e437660f4d877b4b0f87e279ce13fb75fbfa96ea Author: Simon Tatham Date: Wed Mar 25 18:16:53 2015 +0000 Fix a clang warning about switching on an enum. In this case, there's an obviously good reason why not all values of the enum appear as case labels in the switch, but clang didn't spot that. With this fix, spigot builds without warnings on OS X. main.cpp | 9 +++++++++ 1 file changed, 9 insertions(+) From tartarus-commits at lists.tartarus.org Wed Mar 25 18:33:38 2015 From: tartarus-commits at lists.tartarus.org (Commits to Tartarus CVS repository.) Date: Wed, 25 Mar 2015 18:33:38 +0000 Subject: simon-git: puzzles (master): Simon Tatham Message-ID: TL;DR: 10460d1 Add Tracks to the automake makefile's "install" target. Repository: git://git.tartarus.org/simon/puzzles.git On the web: http://tartarus.org/~simon-git/gitweb/?p=puzzles.git Branch updated: master Committer: Simon Tatham Date: 2015-03-25 18:33:38 commit 10460d1bc7dab94e84c5fbbde221c3d20f9e263b web diff http://tartarus.org/~simon-git/gitweb/?p=puzzles.git;a=commitdiff;h=10460d1bc7dab94e84c5fbbde221c3d20f9e263b;hp=195217a48062c3ee64a47b1d0b5327e5838a105c Author: Simon Tatham Date: Wed Mar 25 18:23:39 2015 +0000 Add Tracks to the automake makefile's "install" target. Each game's .R file should append the binary to $(GAMES) in both the 'am' and 'gtk' makefiles, but presumably due to copy-and-paste from an out-of-date version, tracks.R only did 'gtk'. Also clarified CHECKLST.txt in the hope that I won't miss that again. CHECKLST.txt | 3 ++- tracks.R | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) From tartarus-commits at lists.tartarus.org Wed Mar 25 19:53:53 2015 From: tartarus-commits at lists.tartarus.org (Commits to Tartarus CVS repository.) Date: Wed, 25 Mar 2015 19:53:53 +0000 Subject: simon-git: spigot (master): Simon Tatham Message-ID: TL;DR: 14eb4f6 Fix the Python spigot interface. Repository: git://git.tartarus.org/simon/spigot.git On the web: http://tartarus.org/~simon-git/gitweb/?p=spigot.git Branch updated: master Committer: Simon Tatham Date: 2015-03-25 19:53:53 commit 14eb4f6a2a938e6c22fe9894b4d25d22982ef49c web diff http://tartarus.org/~simon-git/gitweb/?p=spigot.git;a=commitdiff;h=14eb4f6a2a938e6c22fe9894b4d25d22982ef49c;hp=f973988fd70e16a3dc27dd884755be9f9fcca252 Author: Simon Tatham Date: Wed Mar 25 19:49:17 2015 +0000 Fix the Python spigot interface. I forgot to update it when I completely rewrote the base output system. This change makes it compile again, and run test.py successfully. baseout.cpp | 5 +++ baseout.h | 2 ++ python/pyspig.cpp | 89 +++++++++++++++++++---------------------------------- 3 files changed, 38 insertions(+), 58 deletions(-) From tartarus-commits at lists.tartarus.org Thu Mar 26 18:38:18 2015 From: tartarus-commits at lists.tartarus.org (Commits to Tartarus CVS repository.) Date: Thu, 26 Mar 2015 18:38:18 +0000 Subject: simon-git: spigot (master): Simon Tatham Message-ID: TL;DR: 8892280 Fix another assertion failure in BaseOutputGenerator. Repository: git://git.tartarus.org/simon/spigot.git On the web: http://tartarus.org/~simon-git/gitweb/?p=spigot.git Branch updated: master Committer: Simon Tatham Date: 2015-03-26 18:38:18 commit 8892280fb83b89de6bd89dc53a59a59425b03914 web diff http://tartarus.org/~simon-git/gitweb/?p=spigot.git;a=commitdiff;h=8892280fb83b89de6bd89dc53a59a59425b03914;hp=14eb4f6a2a938e6c22fe9894b4d25d22982ef49c Author: Simon Tatham Date: Thu Mar 26 18:37:00 2015 +0000 Fix another assertion failure in BaseOutputGenerator. A test case I stumbled on just now points out that it's possible to accidentally generate three parallel formatters, in the case where the lower of two exponents generates two and then the higher exponent (because it's ignoring its own lower bound) generates a third one. I think in that situation it's correct to just discard the spurious higher-exponent formatter. Added a special case for that, and a regression test. baseout.cpp | 26 ++++++++++++++++++++++++++ test.sh | 1 + 2 files changed, 27 insertions(+)