Julian Noble
|
55c426be68
|
repl shutdown/eof fixes, PUNK_PIPE_EOF policy, console query guards, opunk::console voo class, test framework fixes
punk::repl (0.1.4):
- cancel the deferred (after idle) stdin reader registration when the repl finishes - a stale
registration could re-attach a reader to a completed repl (piped stdin racing shutdown produced
'error2 in repl_process_data: invalid thread handle ""')
- repl_process_data drops input arriving after codethread teardown instead of erroring
- repl::init constructs the process-default console object (anchored opunk::console instance
'default') and settles can_respond 1 for interactive stdin
app-punkshell:
- eof on the input channel now follows env(PUNK_PIPE_EOF): exit | interactive | unset=heuristic
(reopen console if available, else terminate) - replaces the unconditional CONIN$/dev-tty repl
restart that hung automated callers forever; documented in punk::config punk_env_vars_config
('help env')
punk::console (0.1.4):
- input_at_eof (certainty, with non-blocking probe read for deferred pipe eof) and
is_input_console_or_tty (heuristic incl. mintty-without-winpty env hints)
- get_size skips ANSI cursor-report mechanisms for non-terminal input (tput then 80x24 default)
- removed erroneous repl-restart attempts from get_ansi_response_payload eof handling (re-entrancy,
bypassed eof policy; one call was a typo repl::reopen)
- console_spec_resolve: -console (and legacy positional inoutchannels) accepts a channel pair, an
anchored opunk::console instance name, or an ::opunk::Console object value; settled can_respond 0
refuses query emission and supplies the object's default size; default_console proc + auto-attach
of the anchored 'default' instance for matching channel pairs
opunk::console (new, 0.1.0):
- voo-based -virtual class ::opunk::Console: console as an in/out channel pair with settled
capability facts; canonical instances anchored at ::opunk::console::instances::<name> with
value semantics as snapshots; subclass dispatch via slot-0 tag for future channel-environment
consoles (ssh, tk-widget terminals); added to bootsupport (with voo) for boot-level use
tests:
- src/tests/shell/testsuites/punkexe: hang-proof punk_run/punk_run_expect_alive harness; termination
guards, exitcode propagation, help-env render with piped stdin, default-console smoke test,
PUNK_TEST_GOALS-gated interactive drop-in goal tests
- src/tests/modules/punk/console: probe helper and console-spec/integration suites
- src/tests/modules/opunk/console: Console class suite incl. virtual dispatch
- runtests.tcl testinterp: 'package prefer latest' (dev 999999 alpha modules no longer shadowed by
stable bootsupport copies) and src/vendormodules on the module path (voo etc resolvable)
AGENTS: punk::args usage policy, -console migration contract, bootsupport update workflow
correction, opunk voo conventions, testinterp contracts
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
1 month ago |
Julian Noble
|
e796135b2c
|
executable stdin handline, + various
|
1 month ago |
Julian Noble
|
2b5cef9d36
|
fifo2 & startup interim fixes. sqids lib. vfs tidy
|
2 months ago |
Julian Noble
|
36cb87b0dd
|
punk::lib - tclscript_info tclscript_showparse, remove line continuations for better cmdtrace support
|
3 months ago |
Julian Noble
|
d6d6ea8de5
|
overtype,punk::winlnk,punk::args,punk::console etc fixes.
|
4 months ago |
Julian Noble
|
d97971b045
|
punk::winlnk,punk::du,punk::auto_exec,punk::args,punk::nav::fs + tests,inspect,tstr,gohome & ~ & newdir & newns, documentation
|
4 months ago |
Julian Noble
|
2f787109d8
|
main.tcl dev-os-internal pkIndex and tm package ordering, punk::args tests/fixes, docs and misc
|
1 year ago |
Julian Noble
|
ae2acc3d5f
|
punk::args fixes and more tclcore documentation
|
1 year ago |
Julian Noble
|
9201234c4f
|
add previous updates to bootsupport and project_layouts and common vfs
|
1 year ago |
Julian Noble
|
801a80bc5d
|
update vfs tomlish
|
1 year ago |
Julian Noble
|
24d6f6e149
|
update bootsupport,vfs,project_layouts
|
1 year ago |
Julian Noble
|
5336b12bd5
|
table and interactive documentation fixes
|
2 years ago |
Julian Noble
|
de8c5ff7ad
|
punk::args and punk::ns improvements, command help with 'i'
|
2 years ago |
Julian Noble
|
f753a4ac75
|
update vfs & project layotu
|
2 years ago |
Julian Noble
|
7b2dd56666
|
update src/vfs_vfscommon modules
|
2 years ago |
Julian Noble
|
3fd56394a3
|
vfs update for last changes
|
2 years ago |
Julian Noble
|
dbb7360568
|
ansi fixes + tomlish
|
2 years ago |
Julian Noble
|
f8b44d6306
|
far too big a checkin. vfs folders that will need to be optimised later etc
|
2 years ago |
Julian Noble
|
4838319af5
|
make.tcl updates support for modules_tclX where X is tcl major version
|
2 years ago |
Julian Noble
|
2edad23c8d
|
pdict/showdict, textblock performance
|
2 years ago |
Julian Noble
|
cbc49f02d7
|
shellfilter better ansiwrap, textblock::table performance
|
2 years ago |
Julian Noble
|
8b32256c74
|
performance refactoring, punk::args fixes
|
2 years ago |
Julian Noble
|
ac5a496f92
|
safe interp fixes
|
2 years ago |
Julian Noble
|
27ca9cf38d
|
punk::ns use info cmdtype on 8.7+, major refactor of punk::repl and punk::args
|
2 years ago |
Julian Noble
|
cab6dc2e0c
|
ansi and raw repl modes - ansi testfiles
|
2 years ago |
Julian Noble
|
facd6a6f23
|
initial trun command for raw windows commandline execution (non-capturing alternative to exec craziness)
|
3 years ago |
Julian Noble
|
acf2f1e479
|
unicode and ansi fixes/mods
|
3 years ago |
Julian Noble
|
86c612704b
|
A late checkin of much functionality. Tcl du cmd, Multishell cross-platform shell script and pmix wrap, make.tcl fixes & changes
|
3 years ago |
Julian Noble
|
d4191188c2
|
reorg repl, implement punk mix system with project and module templates, change make.tcl layout and make generic
|
3 years ago |
Julian Noble
|
072d547992
|
partially complete punk modules - required for previous checkin to function
|
3 years ago |