I guess it is kind of a catch-22, between preserving the upstream source name and standardizing on either dash or underscore. I have harped on preserving upstream source names, which in general I think is a good idea. But maybe we can perserve the upstream names except for using dash instead of underscore for the ease of standardization.
My preference would be to deviate from source names to use dash instead of underscore, which would make it easier for remembering extension names. If the dep file had these extensions in it a dash makes creating the dep file simpler and less prone to typos:
wpa-supplicant.tcz
gcc-lib.tcz
smallbasic-cli.tcz
docbook-xsl.tcz
gtk2-locale.tcz
gs-common-8.70.tcz
As opposed to:
wpa_supplicant.tcz
gcc_lib.tcz
bash-locale.tcz
gtk2_locale.tcz
docbook_xsl.tcz
gc_common-8.70.tcz
gtk-engines.tcz
gtk2_prefs.tcz
I made up some names in the latter to make a point, but using dash in all cases would further simplify the naming structure.
The naming structure has been a work in progress since the beginning, and we have been living and learning along the way. When the repo consisted of about 100 extensions, and there was no updating functions, or boot time dep processing, we didn't need to be very particular over the deatails that make a difference now. But the dash vs underscore has to be one of the last details left to work out.
When we move extensions to the 3.0 repo, the exsiting ones can be brought into compliance.