- Ability to change the rendering format of .info files in an easier way 
As for the format itself, any format (except XML, please) does the work. CSV, JSON (the GOAT), JSONC, YAML and TOML are a few options that I currently think would work fine.
idk about the other formats but if 
...they are text ( hint they are indeed text ) 
.... then awk can re-fry them i thunk
tcz-info2json.sh
[ $# -eq 0 ] && {
l="
Suggestion to embrace the yaml format for .info files
https://forum.tinycorelinux.net/index.php/topic,26661.0.html
http://tinycorelinux.net/14.x/x86_64/tcz/advcomp.tcz.info
http://tinycorelinux.net/14.x/x86_64/tcz/aterm.tcz.info
http://tinycorelinux.net/14.x/x86_64/tcz/brave-browser.tcz.info
http://tinycorelinux.net/14.x/x86_64/tcz/bash-completion.tcz.info
http://tinycorelinux.net/14.x/x86_64/tcz/alsa-modules-6.1.2-tinycore64.tcz.info
"
# get the info files 
echo "$l" | awk '/:\/\/.*\.info/{system("cd /tmp;mkdir tc; cd tc; wget -nH -x  "$0 )}'
}
#pass files as or get some tcz.info from string above 
awk '
function d(m){ print m >"/dev/stderr"}
function beginfile(bf) { d("begin-file:" bf) ;  }
function endfile(ef) { d("endfile:" ef ); 
	 addj(ef," } , ","]") 
	 }
FNR == 1 {
    if (_filename_ != "")
        endfile(_filename_)
    _filename_ = FILENAME
    beginfile(FILENAME)
}
END { endfile(_filename_) }
BEGIN{ count=0 }
# match feild ; starting with capital letter , ending in ":" 
/^[A-Z][a-z_-]*:/{
	count++;
	field_name=substr($0,1,index($0,":")-1 );
	# info-file / feild -name ( index by number )
	sect[count]=FILENAME"_"field_name;
	# info-file / feild -name array ( index by string )
	sect[sect[count]]=$0
	
	
	addj(FILENAME," ","],")
	j=$0
	field_text=substr(j,index(j,":")+1 );
	gsub("\t"," ",field_text)
	gsub("^[ ]*[ ]","",field_text)
	
	# add match line
	addj(FILENAME,"\42" tolower(field_name) "\42:" " [ \42"field_text"\42"," ")
	
}
# other lines
{
  j=""
  j=$0
  # not match field name 
  m=match(j,"^[A-Z][a-z_-]*:");
	gsub("\t"," ",j)
	gsub("^[ ]*[ ]","",j)
	# escape quotes
	gsub("\42","\\\42",j)
   if( m == 0 &&  j != "" )  
  { 
    sect[sect[count]] = sect[sect[count]] "\n" j
    
    addj(FILENAME,"\42"j"\42",", ")
  }  
  
}
#NR==FNR{max++; next } 
#FNR == max { print "Final line:",$0 }
END{
    print "{ \42a\42:["
    #
    os=""
    for( xj in json ) os= os " " json[xj] 
    #print xj, json[xj]
    
    # 
    print os " { \42_b_\42:\42\42 }" " ] }"
} 
# adjust string format / add json
function addj(k,v  ,sep,j) {
	# separator empty then default-sep or set from arg
	sep=(sep=="" ? ",":sep ) ;
	# add / append stings to array 
	json[k] = ( json[ k ] =="" ? "{ " v : json[k] sep  v);
	 }
'  ${@-/tmp/tc/14.x/x86_64/tcz/*} | tee json-tcz-info.txt
 # do stuff eg
# | jq  -s '.[].[].[].title'
* it works for those files **
if you have some tcz.info handy please test & report 
success failure
ect ...
**example json-tcz-info.txt of the json attached! 
... jq seams happy ... 
We live inside the simulation