Optimal large package administration for Stata

Stata is quite simple to use for smaller ado-packages stored on user web pages. However, when the number of files in a package becomes large and the files need to be updated regularly, this task becomes cumbersome. Package updates could take a long time to complete. Here a method of storing packages as compressed archives on the host server is outlined, whereby the user sends a query to the update server to check for a new version. If a new version is available, the package archive is downloaded in its entirety and is then extracted and installed locally. This approach is far more efficient with respect to installation times (typically only 1/10 of the time needed) than downloading many text files individually. For large packages, the bottleneck is most often the download time. Currently this automated updating can be achieved with a Stata ado-file and the aid of additional binaries (such as tar, gzip, and zip). The usability of this technique would be enhanced dramatically if the functionality of an archiving format (such as tar, gzip, zip) were directly integrated into the Stata binary. Even encrpyted files could be distributed in this manner as well. Ado-files inside the package archive can be configured to make an automatic call to the host server to check for available updates.