This teacup subcommand brings your locally-installed packages up to date, including fetching those packages that you don't have. Only fetches packages that can be used with Tcl installations it knows about.
Note that the current teacup has the following options that work with teacup update
DKF: If you cancel the update by pressing Control-C while it is running, you may need to use teacup regenerate to fix things before you can update again.
LV: I find that if I have a slow internet connection (less than 56k), large items seldom update in teacup update. I daily see errors such as:
Retrieving application base-tcl-thread 8.6.0.0.287710 solaris2.8-sparc ...@ http://teapot.activestate.com ... Error: Bad transfer: Size mismatch, expected '2776291', received '2179031'. MD5 mismatch, expected 'a5f4e8e0fadfd4292f7d99a1cdc77ebd', received '4c2e09516c57aba35f6d3879bf1d0f19'.
Most frustrating is when it is the cached INDEX that generates this error.
Mho frustration II:
C:\Dokumente und Einstellungen\Arbeit1>teacup update Retrieving package activestate::activetcl::demos 8.4 win32-ix86 ...@ http://teapot.activestate.com ... Error: Bad transf er: Size mismatch, expected '5681134', received '3960791'. MD5 mismatch, expected 'ed7f1d408ceb05295d45c8dadc63cf92', re ceived '677795078f56cfdeff044088eaf26921'. Installed 0 newer packages Installed 0 unknown packages C:\Dokumente und Einstellungen\Arbeit1>
Don't know how to work around this.
AK: What do you get as the result of 'teacup timeout' ? It seems as if only about 4 of 5 MB is transfered, and a timeout in the http package could cause that. MHo I already switched off timeout via teacup timeout -1...
LV I've seen similar situations for several years now.
AK Ok. Then I have no real idea what is happening. With timeout -1 the teacup itself will not abort a transfer on its own. MHo I suspect the reason is outside teacup. The same update from within a totally different environment works as expected... LV I again see the same thing as MHo. If I run the update on a machine whose connection to the internet is a PPP link, some packages update just fine, but larger ones fail, with the problem being that too few bytes were transferred, even though I switched off the timeout. If I ftp the same file using ncftp, the file gets across the link just fine. Sometimes, running teacup update multiple times eventually results in the file being received.
I wonder how hard it would be to modify the teacup update code so that it downloaded the files in chunks, saving the pieces until everything is there and passes an MD5 or other checksum verification? Perhaps then cases like this would be solved by just rerunning the update, so that the code could download any chunks which were interrupted for some reason.
MHo 2009-11-14: Still couldn't download activestate::activetcl::demos:
TorstenEdler 2009-12-17: I am facing the same difficulties
retrieves a couple of packages successfully, then all of sudden it stalls, no timeout no nothing ^C the only way out - which means no package is updated. Alternative way (takes a couple of hours because the "teapot" is rather lame):
and get each package individually
AK - 2009-12-17 17:50:57
Best I can do here right now (*) is ask you to file a bug report at http://bugs.activestate.com , with information like version number of teacup, a log generated by
teacup -debug update -v > LOG.txt
etc.
(*) I am about to walking into my winter vacation.
MHo 2011-08-20 Recently, I noticed the following:
d:\home\Arbeit1>teacup update-self Updating C:/Programme/Tcl/bin/teacup.exe ... Not found in the archive. d:\home\Arbeit1>teacup update Nothing to update.
MHo 2014-03-25: 8.6.1 32bit at home, no problem. 8.6.1 64bit at work seeing lots and lots of:
: Retrieving package xyz ...@ http://teapot-be.activestate.com ... Error: This operation needs a business edition license installed to succeed. Please visit http://www.activestate.com/business-edition to learn more about the ActiveTcl Business Edition offering. :
Why tries the program to retrieve something that shouldn't be retrieved and then complains about that?
MHo 2014-05-27: Could someone be so kind and please answer the above question? APN You might have better luck asking on comp.lang.tcl or one of the Tcl forums. There are so many pages on the wiki it is not possible for someone to track every change to a page, particularly since the wikignomes often edit pages right after someone else modifies them. I know when you ask TWAPI questions on the wiki page (despite the bold notice at the top!), I often do not notice a change for this reason.
MHo 2015-02-20: Just got this:
C:\Windows\system32>teacup update-self Updating D:/home/Hoffmann/Programme/Tcl/bin/teacup.exe ... Found newer version 8.5.17.0.298745 (win32-ix86) @ http://teapot.activestate.com Retrieving application teacup 8.5.17.0.298745 win32-ix86 ...@ http://teapot.activestate.com ... Ok Copying ... Ok C:\Windows\system32>teacup update conflicting versions provided for package "textutil::adjust": 0.7.2, then 0.7.1 while executing "package provide textutil::adjust 0.7.1" (file "D:/home/Hoffmann/Programme/Tcl/bin/teacup.exe/lib/P-tcl/textutil__adjust0.7.2/implementation.tcl" line 7 invoked from within "source D:/home/Hoffmann/Programme/Tcl/bin/teacup.exe/lib/P-tcl/textutil__adjust0.7.2/implementation.tcl" ("package ifneeded textutil::adjust 0.7.2" script) invoked from within "package require textutil::adjust" (file "D:/home/Hoffmann/Programme/Tcl/bin/teacup.exe/lib/P-tcl/textutil0.8/implementation.tcl" line 9) invoked from within "source D:/home/Hoffmann/Programme/Tcl/bin/teacup.exe/lib/P-tcl/textutil0.8/implementation.tcl" ("package ifneeded textutil 0.8" script) invoked from within "# Compiled -- no source code available error "called a copy of a compiled script"" invoked from within "tbcload::bceval { TclPro ByteCode 2 0 1.7 8.5 21 0 231 50 0 0 184 0 4 21 21 -1 -1 231 w0E<!-fSs!&-<<!,l4pv(0*!!(NA9v.EW<!w3E<!2`8s!0#>6#-BW<!4c8=!9Atp..." (file "D:/home/Hoffmann/Programme/Tcl/bin/teacup.exe/lib/P-tcl/teapot__metadata__write0.1.291646/implementation line 8) invoked from within "source D:/home/Hoffmann/Programme/Tcl/bin/teacup.exe/lib/P-tcl/teapot__metadata__write0.1.291646/implementation.tc ("package ifneeded teapot::metadata::write 0.1.291646" script) invoked from within "# Compiled -- no source code available error "called a copy of a compiled script"" invoked from within "tbcload::bceval { TclPro ByteCode 2 0 1.7 8.5 63 0 779 146 0 0 588 0 7 63 63 -1 -1 779 w0E<!-fSs!&-<<!,l4pv(0*!!(NA9v.EW<!w3E<!2`8s!0#>6#4;tl#/HW<!8oJ..." (file "D:/home/Hoffmann/Programme/Tcl/bin/teacup.exe/lib/P-tcl/teapot__metadata__container1.0.293642/implementa tcl" line 8) invoked from within "source D:/home/Hoffmann/Programme/Tcl/bin/teacup.exe/lib/P-tcl/teapot__metadata__container1.0.293642/implementatio " ("package ifneeded teapot::metadata::container 1.0.293642" script) invoked from within "# Compiled -- no source code available error "called a copy of a compiled script"" invoked from within "tbcload::bceval { TclPro ByteCode 2 0 1.7 8.5 32 0 342 71 0 0 276 0 4 32 32 -1 -1 342 w0E<!-fSs!&-<<!,l4pv(0*!!(NA9v.EW<!w3E<!2`8s!w0E<!1rSs!&-<<!0/Yp..." (file "D:/home/Hoffmann/Programme/Tcl/bin/teacup.exe/lib/P-tcl/teapot__metadata__read0.1.290609/implementation. line 8) invoked from within "source D:/home/Hoffmann/Programme/Tcl/bin/teacup.exe/lib/P-tcl/teapot__metadata__read0.1.290609/implementation.tcl ("package ifneeded teapot::metadata::read 0.1.290609" script) invoked from within "# Compiled -- no source code available error "called a copy of a compiled script"" invoked from within "tbcload::bceval { TclPro ByteCode 2 0 1.7 8.5 111 0 1393 223 0 0 888 0 7 111 111 -1 -1 1393 w0E<!-fSs!&-<<!,l4pv(0*!!(NA9v.EW<!w3E<!2`8s!w0E<!1rSs!&-<..." (file "D:/home/Hoffmann/Programme/Tcl/bin/teacup.exe/lib/P-tcl/repository__localma0.1.297006/implementation.tcl e 8) invoked from within "source D:/home/Hoffmann/Programme/Tcl/bin/teacup.exe/lib/P-tcl/repository__localma0.1.297006/implementation.tcl" ("package ifneeded repository::localma 0.1.297006" script) invoked from within "# Compiled -- no source code available error "called a copy of a compiled script"" invoked from within "tbcload::bceval { TclPro ByteCode 2 0 1.7 8.5 136 0 2030 325 0 0 1288 0 7 136 136 -1 -1 2030 w0E<!-fSs!&-<<!,l4pv(0*!!(NA9v.EW<!w3E<!2`8s!w0E<!1rSs!&-..." (file "D:/home/Hoffmann/Programme/Tcl/bin/teacup.exe/lib/app-teapot/client.tcl" line 7) invoked from within "source D:/home/Hoffmann/Programme/Tcl/bin/teacup.exe/lib/app-teapot/client.tcl" ("package ifneeded repository::client 0.1" script) invoked from within "# Compiled -- no source code available error "called a copy of a compiled script"" invoked from within "tbcload::bceval { TclPro ByteCode 2 0 1.7 8.5 135 0 1974 303 0 0 1348 0 7 135 135 -1 -1 1974 w0E<!-fSs!&-<<!,l4pv(0*!!(NA9v.EW<!w3E<!2`8s!w0E<!1rSs!&-..." (file "D:/home/Hoffmann/Programme/Tcl/bin/teacup.exe/lib/app-teapot/capp.tcl" line 7) invoked from within "source D:/home/Hoffmann/Programme/Tcl/bin/teacup.exe/lib/app-teapot/capp.tcl" ("package ifneeded repository::capp 0.1" script) invoked from within "# Compiled -- no source code available error "called a copy of a compiled script"" invoked from within "tbcload::bceval { TclPro ByteCode 2 0 1.7 8.5 42 0 446 59 0 0 236 0 5 42 42 -1 -1 446 6E2,!22fv!#0E<!@|u+!o7k&:x:.4.5v!!!.!!!!C?cW*8Q2,!8VG#!#0E<!'?W<..." (file "D:/home/Hoffmann/Programme/Tcl/bin/teacup.exe/teapot.tcl" line 7) invoked from within "# Compiled -- no source code available error "called a copy of a compiled script"" invoked from within "tbcload::bceval { TclPro ByteCode 2 0 1.7 8.5 15 0 154 23 0 0 64 0 5 15 15 -1 -1 154 w0E<!(H&s!BJe`BAB29+#3WW!<kEb4YZ*!!)WyTv.EW<!Plqo+0iys!5v!!!U!!!!..." (file "D:/home/Hoffmann/Programme/Tcl/bin/teacup.exe/entry.tcl" line 7) invoked from within "source $startup" (file "D:/home/Hoffmann/Programme/Tcl/bin/teacup.exe/main.tcl" line 38)