#bootsupport modules can be pulled in from within other areas of src or from the built module folders of the project #They must be already built, so generally shouldn't come directly from src/modules. #we want showdict - but it needs punk pipeline notation. #this requires pulling in punk - which brings in lots of other stuff #The original idea was that bootsupport could be a subset - but in practice we seem to need pretty much everything? #we still get the advantage that the bootsupport modules can be updated independently (less frequently - after testing) #each entry - base modulematch # base - path relative to projectroot containing built .tm modules (e.g src/vendormodules, or 'modules' for the project's built root modules) # modulematch - namespaced module name; :: qualifiers map to subfolders (e.g test::tomlish -> test/tomlish-*.tm). Surrounding ':' are trimmed. # plain name (no dash) - matches -*.tm # name with dash e.g name-0.1 - version-line pin, matches -0.1*.tm # Both of the above are 'non-glob' entries: make.tcl bootsupport copies only the LATEST matching version and prunes # punkcheck-recorded superseded older versions from the bootsupport folder (recorded as DELETE events in src/bootsupport/.punkcheck). # any glob chars * ? [ ] - ALL matching files are copied and nothing is pruned - use a glob entry to intentionally keep multiple versions. # Files without punkcheck install records are never pruned automatically. # (glob detection: [regexp {[*?\[\]]} $modulematch] in make.tcl bootsupport_localupdate; see also src/bootsupport/AGENTS.md) set bootsupport_modules [list\ src/vendormodules commandstack\ src/vendormodules cksum\ src/vendormodules cmdline\ src/vendormodules debug\ src/vendormodules dictutils\ src/vendormodules fauxlink\ src/vendormodules http\ src/vendormodules md5\ src/vendormodules metaface\ src/vendormodules modpod\ src/vendormodules packagetest\ src/vendormodules pattern\ src/vendormodules patterncmd\ src/vendormodules patternlib\ src/vendormodules patternpredator2\ src/vendormodules patterncipher\ src/vendormodules platform\ src/vendormodules promise\ src/vendormodules sha1\ src/vendormodules struct::set\ src/vendormodules tcltest\ src/vendormodules tomlish\ src/vendormodules test::tomlish\ src/vendormodules dictn\ src/vendormodules textutil\ src/vendormodules textutil::adjust\ src/vendormodules textutil::expander\ src/vendormodules textutil::patch\ src/vendormodules textutil::repeat\ src/vendormodules textutil::split\ src/vendormodules textutil::string\ src/vendormodules textutil::tabify\ src/vendormodules textutil::trim\ src/vendormodules textutil::wcswidth\ src/vendormodules voo\ src/vendormodules uuid\ modules argp\ modules flagfilter\ modules funcl\ modules punk\ modules punkboot::utils\ modules punk::pipe\ modules punkapp\ modules punkcheck\ modules punkcheck::cli\ modules punk::aliascore\ modules punk::ansi::colourmap\ modules punk::ansi\ modules punk::ansi::sauce\ modules punk::assertion\ modules punk::args\ modules punk::args::moduledoc::tclcore\ modules punk::auto_exec\ modules punk::cap\ modules punk::cap::handlers::caphandler\ modules punk::cap::handlers::scriptlibs\ modules punk::cap::handlers::templates\ modules punk::char\ modules punk::config\ modules punk::console\ modules punk::du\ modules punk::encmime\ modules punk::fileline\ modules punk::docgen\ modules punk::lib\ modules punk::libunknown\ modules punk::mix\ modules punk::mix::base\ modules punk::mix::cli\ modules punk::mix::util\ modules punk::mix::templates\ modules punk::mix::commandset::buildsuite\ modules punk::mix::commandset::debug\ modules punk::mix::commandset::doc\ modules punk::mix::commandset::layout\ modules punk::mix::commandset::loadedlib\ modules punk::mix::commandset::module\ modules punk::mix::commandset::project\ modules punk::mix::commandset::repo\ modules punk::mix::commandset::scriptwrap\ modules punk::mod\ modules punk::nav::fs\ modules punk::nav::ns\ modules punk::ns\ modules punk::overlay\ modules punk::path\ modules punk::platform\ modules punk::packagepreference\ modules punk::repl\ modules punk::repl::codethread\ modules punk::repo\ modules punk::tcltestrun\ modules punk::tdl\ modules punk::trie\ modules punk::unixywindows\ modules punk::zip\ modules punk::winpath\ modules punk::winlnk\ modules overtype\ modules shellfilter\ modules shellrun\ modules shellthread\ modules textblock\ modules natsort\ modules oolib\ modules opunk::console\ modules zipper\ modules zzzload\ ]