// utf-8 vipsi completion file (reverse order) <-- release 0.9.2 --> 2005-07-10 BUG: fixed bogus setup of NameHash("") which failed to lock the NH for ""; e.g. => var HNIET === var @"" 2005-06-11 MOD: modified utf-8 encoding/decoding to support full 32 bit characters for lossless round-trip encoding of binary data <-- release 0.9.1 --> 2005-05-31 BUG: expression pruning did not properly skip list literals: { ... } MOD: add "/sw/bin:/sw/sbin" to $PATH if on Mac OSX ((hack to find Fink-installed packages)) <-- release 0.8.8 --> BUG: FullPath mangled error code -> prefs not found error at start-up MOD: cmd line option -t: fixed selection of test suite file MOD: now also supressing error EDOMAIN in exp, exp2, exp10, expe, logn, log2, loge, log10 BUG: wrong op.prio in log(n,m) arguments prevented expressions, fixed result nan for base=1 BUG: MacOSX: FullPath() returned broken paths for partial paths (getpwd() garbaged whole buffer) MOD: line editor: reworked screen size change detection IMP: line editor: implemented: edit ((preliminary: result is always text)) MOD: line editor: reworked history; pg_dn at end of history presents an empty line BUG: line editor: reworked cursor positioning, cursor wrap&scroll detection NEW: shuffle MOD: substr(text,n1[,n2]): 2nd index optional as in midstr() MOD: del var|proc now opt. 'var' or 'proc' allowed IMP: &&= and ||= : pruning NEW: token profiling in Value() and Execute() => sorting for cpu cache optimization already pretty good! BUG: pwd did not print trailing "/" for dir BUG: exists env.xyz didn't work BUG: file "xx" w/o initial content should only touch existing files, but truncated them to 0 byte BUG: new file "xx" and new link "xx" failed BUG: put env[1] --> asserts in NameHandle.cp ((introduced with name hashing)) DOC: log, {}, (), [] MOD: a starting "{" in the shell now defaults to list literals, except if instructions are detected inside MOD: renamed logarithm logn(n,m) to log(n,m) and added glue to shell to distinguish between them BUG: @"globals" and @"locals" did not find the list variables. MOD: num. literals: 1e400 ERANGE now suppressed MOD: now supressing error ERANGE in exp, exp2, exp10, expe, logn, log2, loge, log10, sinh, cosh BUG: a ? b?2:3 : c?4:5 failed DOC: documentation updated to version 0.8.7. MOD: trashed the "calc" tingy MOD: preferences files now lists for eval() MOD: Tokenize() now does some more syntax checking, based on expect_operator vs. require_value MOD: prefix and number sign "+" now discarded, number sign "-" no longer tokenized to prefix "-" NEW: %0010101 binary number literals BUG: fullpath() always re-encoded n.ex. path components to latin-1 IMP: islink(path) ((erronously already noted for 0.8.7)) MOD: find(list,value[startidx]) added MOD: use kio's malloc for new/delete - optional. actually slower than Linux new/delete NEW: spacestr( number[,fillpattern] ) BUG: in gcc: worked around a bug in gcc 3.3.3: temporary data on heap was not destroyed. BUMMER! BUG: fixed new behaviour of some filesystems, where "." and ".." are no longer the first entries in dir IMP: a = link "name" IMP: exists link "name" IMP: 'this', 'globals' and 'locals' in 'exists'; revised skipping of n.ex. references IMP: 'this', 'globals' and 'locals' in variable definitions: [new] var [this|globals|locals]. etc. BUG: fixed bug in 'exists' introduced by variable name hashing MOD: use of hashes for variable names => major speed bump IMP: procs as values: [new][var] = proc(..){..} and in lists: { [ =] proc(..){..} } <-- release 0.8.7 --> BUG: Makefile: no longer installed prefs files and test file BUG: pruning failed to skip over ++, --, +, and - prefix operators and hogged cpu BUG: exists file did set error again if did not exist BUG: [ to ] overwrote contents of !!! IMP: info exists: did not list syntax for exists file|dir|link IMP: info call: did not list instruction syntax for call MOD: FullPath(): internal improvement of matching with iso-latin-1 file names IMP: [new] proc a[1,2][3].b.c(){..} -> creation of nested sub-item now possible (as for 'var') IMP: [new] proc () { .. } -> 'new' possible NEW: rename link "path" = "newpath" -> rename link (not link target) IMP: del dir "path" -> now checks for file type "dir" IMP: del file "path" -> now checks for file type "file" NEW: del link "path" IMP: [new] dir "path" -> w/o 'new' now possible, with 'new' now checking for new IMP: [new] file "path" [ = "data" ] -> now checking for new, initial data optional NEW: [new] link "path" = "linktarget" -> create link IMP: new [var] name [ = value ] -> now actually checks for a new variable BUG: fixed bogus error msg after shell command "dir" with no path argument BUG: permissions for symbolic links in 'dir' were 'l---'; now display perms. of the target MOD: dir "path" now appends "/" to directories again MOD: dir "path" now derefs links (still flagged 'l') MOD: fullpath() now assures a trailing "/" for existing directories <-- release 0.8.6 --> MOD: configuring process now with make_config.vs NEW: GetCGIArguments(): parser for CONTENT_TYPE=multipart/form-data <-- release 0.8.5 --> BUG: String::ConvertedTo(): handle char(0) in conversion to UTF-8 BUG: convert from|to tabX: reset column at \n !! BUG: dir[i].bytesfree_su in dir "" always 0 NEW: function: 'info "token"' NEW: function: 'words' IMP: cstrings.cp: va_copy(...) for FreeBSD, Debian2.2 ((was fixed sometime in 0.8.4)) NEW: function: 'locals' to refer to local variables (instead of relying on the list's name) NEW: function: 'this' to explicitly refer to proc.parent (object, locals of enclosing proc) NEW: shell command: 'quit' / 'exit' / 'end' to quit vipsi NEW: shell command: 'env' to print beautified env data 2003-12-05 MOD: replaced instructions 'words', 'info', 'globals', 'pwd', 'dir' and 'cd' by shell commands BUG: variable names which contained a dot "." could not be found. BUG: syntax error detection in weird cases, cleaned up prefix operator priority handling MOD: locals|globals ##= liste|item was refused. error: var in use. now it's allowed. BUG: 'end' inside local context -> local contexts persisted after an 'include' BUG: 'end' inside local context -> script returned error "unexpected end of file" 2003-12-04 BUG: first word after a closing branch control word was skipped by the syntax checker MOD: == 0M: map to in line editor 2003-12-02 BUG: ramdom number seed was not randomized at program start <-- release 0.8.4 -->