Version 17 of Tcl Repository Wish List

Updated 2005-04-12 10:44:59 by lwv

While discussing the need for a repository of tcl packages and code, and after SC had mentioned the availability of cantcl, LV said:

Is there a technical description of the functionality provided? Do people have ideas on what features is needed?

For instance, I'd like to have the ability to:

  • get a report on what extensions are in the repository but not installed
  • get a report on what extensions from the repository are installed
  • get a report on what extensions from the repository are newer than what I've installed
  • be able to full text search the docs from the extensions in the repository
  • be able to download source from the repository
  • be able to download binary from the repository if available
  • be able to support someone contributing binaries (recording info about options selected, who contributed it, staging area where binaries can be checked before releasing, etc.)
  • be able to support someone contributing new source code (recording info about options available, depedendecies, who contributed it, licensing issues, staging area where source can be checked before releasing, etc.)
  • private or public mirroring (perhaps with the CPAN redirection to nearest location for the user
  • new and updated contributions notification (email, interactive, other)
  • ability to express dependencies in a way that one could, if so desired, say build for me the source for BLT 2.6 and any missing dependencies and get back the proper versions that version of BLT requires that I am missing.

Some of the above wishes come from interacting with Perl's CPAN repository, some come from a partial understanding of ActiveState's Perl extension manager, and some come from listening to what the users have requested on clt.


MPJ A nice example of a working repository is the plugin extensions for the text editor jEdit [L1 ]. The Plugin Manager lists the currently installed plugins. It has a button to updates all the installed plugin. Another button to install new plugins.

When you go to the install new plugin page it download the list from the server and displays them as a checkbox list. When a plugin is selected the following information is avaliable: Name, Author, Latest Version, Last Upadated, Description. It also has some options as where to put the plugin (user directory, system directory). Finally, the source code can be downloaded and stored in the plugin directory (if box is checked).

I think we could learn (copy/steal) a lot from how jEdit handles these extensions to the base package. Just my $.02 worth...


SC there are other auto-plugin downloaders, xemacs [L2 ] can retrieve package lists and tell you what you have installed and what's new that's available. None of this is new or even difficult, it just needs designing and doing!

LV And of course Firefox at http://mozilla.org/ has such capability for plugins, extensions, and themes. It also supposedly supports a check for me on some regular interval whether this is the latest, and if not, notify the user type functionality.

schlenk And especially for Firefox this feature was so buggy at first (they had XML/RDF descriptions of the updates but parsed them with some PHP regexps instead of a real XML parser), that we could easily do at least that good.


MG April 9th 2005 - Is there any kind of repository for Tcl code, at present? If not, would there by any interest in me trying to set one up? It certainly wouldn't have all the features mentioned above at first, and might never get some of 'em, but it might at least help to stop some of the broken links, to code/packages that aren't stored on the Wiki... RS: The closest I can think of at the moment is sdarchive. LV CANTCL is a nice start - but the creator might very well be wanting some help, or perhaps someone with whom he would share the code to get you started. Also take a look at the tcl modules tip.

MG will read up on all the TIPs mentioned through those pages over the next couple of days.

SC All of the CANTCL code is on Sourceforge, you're free to get it and work with it. I'll add anyone as a developer on that project. I don't have any time to spend on CANTCL at the moment but I'd still like to see a working repository.


Category Suggestions Category Distribution