Chris Koeritz [Sun, 9 Oct 2016 17:16:31 +0000 (13:16 -0400)]
variety of fixes and a new script
unpack gets to know a txz extension that is being erroneously created by chrome. i can either resist the tide or just add this as a type of compressed (or maybe even uncompressed) tar, so i added it.
aliases for less, mo, more, etc get fixated to an actual function now. otherwise the machinery being added gets too cumbersome.
new script is lesser which just runs less. it supports a code option as -c if you want source highlighting.
variables get LESSOPEN taken away because not every file can be highlighted as source. oh well.
Chris Koeritz [Sat, 8 Oct 2016 22:04:53 +0000 (18:04 -0400)]
a couple of handy parts for unit testing.
verify_correct_input reports if the input sent to it differs from an answer file.
run_test_and_verify runs a test app (providing it with a known input file), gathers the test's output, then verifies that the output is what was expected in an answer file (leverages verify_correct_input).
Chris Koeritz [Tue, 4 Oct 2016 00:55:11 +0000 (20:55 -0400)]
solved all known make clean issues
ha, much nicer now. everything is cleaning right, and the code looks good. moved the too knowledgeable pieces out of the base clam code and into cpp. nice.
Chris Koeritz [Mon, 3 Oct 2016 20:02:59 +0000 (16:02 -0400)]
may have fixed annoying make clean bugs
discovered that i was reinvoking the make for any cleaning process, just in order to set the CLEAN flag. that's really terribly broken. luckily found the eval command which i can run inside a target to change the value of an existing environment variable. perfect. now in the base clam rules and not getting weird problems from using OTHER_CLEANS
Chris Koeritz [Sat, 1 Oct 2016 23:52:28 +0000 (19:52 -0400)]
fixed alias issues for subshells!
also fixed the variable, alias and function names used for sentinels to line up nicely, including a user customization sentinel.
Chris Koeritz [Sun, 25 Sep 2016 18:03:31 +0000 (14:03 -0400)]
more updates, with a fix for windows finally in. it turned out to be a
strange failure in cygwin due to some of the apps being built with a WinMain,
leading them to seemingly exit immediately, which messed with the status
being returned pretty badly. perhaps cygwin was also killing the process
prematurely because it had no console? in any case, adding a pipe to cat
has forced cygwin to track the process across its entire lifetime and now
we are correctly trapping the results of all the test aps. whew. this was
a really ugly mess and popped up in some really strangely unrelated ways.
Chris Koeritz [Sun, 25 Sep 2016 02:59:05 +0000 (22:59 -0400)]
tracking down insane socket tester bugs on windoze, where the main culprit so far is an innocuous method that passes an object as a return value. bad news if that's no longer allowed, but making the caller pass in a struct has fixed things for the moment. also enabling debugging on the broadcast and ucast tests seems to have helped, which is more of the insane. again, none of these absurdities were problems on linux.
Chris Koeritz [Fri, 23 Sep 2016 16:05:04 +0000 (12:05 -0400)]
a bunch of cleaning to get wayward unit tests passing on windows. not there yet.
also a nice change in tree, to support the 40,000 deep symbol tree test that was barfing.
this was totally due to having a recursive destructor with a crazy deep tree; we blew out the stack on windows,
which we never even noticed on linux. replacement algorithm does an iterative spider instead of beautiful
recursion, but it also handles arbitrarily large trees with no additional stack frames.
Chris Koeritz [Thu, 22 Sep 2016 04:29:29 +0000 (00:29 -0400)]
had to bring back curl 3rdparty for windows too, since cygwin wasn't
actually standing in for this either. not sure why i thought it was,
but it seemed like it had made it through the whole build.
Chris Koeritz [Sun, 18 Sep 2016 00:44:13 +0000 (20:44 -0400)]
wow, more nice new scripts. time tracker lets different activities be tracked for duration, keeping them separate by name. the test for it just tries a random time duration and prints it out. other tests got cleaned or renamed too.
Chris Koeritz [Sun, 18 Sep 2016 00:07:05 +0000 (20:07 -0400)]
a few new scripts. grid land lister does a dump of the uuids and such for land on my simulator; not very generic yet. list old linux packs shows linux-image and linux-header that are in rc state, so not installed but also not clean. rounder is a nice script or test runner that will keep going until a failure occurs; it keeps all the logs from each run in a directory under TMP.
Chris Koeritz [Sat, 17 Sep 2016 22:57:51 +0000 (18:57 -0400)]
updated for a couple paths that weren't doing the right thing.
strangely, *.bak can be removed from the archive properly, but
etc/alternatives/* was failing. not sure how things are working.
updated for a couple paths that weren't doing the right thing.
strangely, *.bak can be removed from the archive properly, but
etc/alternatives/* was failing. not sure how things are working.
Chris Koeritz [Sat, 17 Sep 2016 22:26:08 +0000 (18:26 -0400)]
stuffed the recustomize function back in, since if it is a separate shell script it is executed in a bash subshell instead of directly in the current shell, which defeats the whole purpose of the macro being able to recustomize the current environment on the fly.
Chris Koeritz [Wed, 14 Sep 2016 23:39:56 +0000 (19:39 -0400)]
added removal of temporary dir used in test dir tree, but it exposed a long-standing weakness in that we have no recursive delete method.
this is not rocket science, plus it's needed by places in the code, so it should be implemented.
Chris Koeritz [Thu, 8 Sep 2016 03:46:22 +0000 (23:46 -0400)]
numerous minor changes to either use the sep function instead of old name of 'line', or to change usages of 'line' as a variable since it's a shell builtin and i generally like to avoid even the appearance of name conflicts.