Such is not the case with a complex utility script that do things like install or remove packages, or format partitions, or stuff like that. These scripts have to be done just right or a lot of damage could be done with their use. Any of my such scripts of mine that I have posted to the repo have been discussed with the team and has their testing and approval of concept. I cannot and do not post any of my own scripted stuff without the team, and namely Robert's, blessing. In other words there is a QA and testing process that has to occur before a system changing utility script is posted to the repo for widespread use.
TC is being developed very quickly, which is fantastic, but a nightmare to keep up with it all. Tonight I decided to upgrade to the latest, but realised that I had no clue which of my tce and tcz extensions needed upgraded. With dialup (which is all I have) it is a major job having to re-download everything so some auto-checking upgrade script is an absolute essential in my opinion. Admittedly, I didn't use jpeters upgrade script on this occasion, but instead spent hours actually re-downloading everything by hand. But that was unsatisfactory - next time I want to use the script!
However, it is a relatively complex script, and I am scared to use it because even the best programmer can easily leave a bug or two, which could cause a major disaster! So, on one hand, I absolutely agree with JasonW that the TC core team need to carefully vet any such script, and its nature makes that quite a lot of work - but I do feel that it is really an essential utility for a distribution such as TC which comes in the form of a "mechano set" for building complex configurations out of many parts - you NEED an upgrade facility for such a distribution, surely?
I also think it is a great pity if the tce or tcz uninstall scripts are to be "retired" such that they are no longer available. What a waste of your work! I don't agree that such a script necessarily has to be able to deal with ALL tc modes of operation - nice if it can be so general purpose, but it's useful anyway, for whatever mode it works with. The users just need to be educated about when it can be used and for what modes, and when it shouldn't be. Surely all the wm menu-related issues will soon settle down and make it worth revising the uninstall scripts at this early stage in the development of TC.
I really do think that the only thing I'm not quite satisfied with when it comes to using TC is that, by default, appbrowser doesn't allow me to re-install an already installed extension (with an updated version). First the user needs to uninstall the old extension - so that IS a vital system facility that badly needs to be provided. That's my opinion anyway. I can assure you that jpeters isn't the only user who felt that a facility for upgrading existing extensions was needed. I also had that feeling and was glad to notice work was being done on it. But, yes, upgrade is a relatively complex script and, like all such system-level scripts, a potentially dangerous one - it thus NEEDS to be designed either by the TC core development team or under their tight control in terms of collaboration and testing. I also agree that it's not satisfactory, to leave symlinks hanging around, whether or not such stray links seem to have no adverse effects - such script behaviour is just inviting unforeseen potential trouble. Having said all that, jpeters work is to be applauded and encouraged - I didn't see anyone else trying to provided the functionality of "upgrade" and somebody needed to!
Summary... I vote strongly for an "upgrade of existing extensions" facility, which really should be provided with the TC core system in my opinion (and hence rigorously designed and tested at that level). I can' say one way or the other if jpeters utility is the best way to provide that facility or not, but "retiring" any such script (or hiding them away in the depths of the forum) is not the way to go for such an important omission in what TC core currently offers.