summaryrefslogtreecommitdiff
path: root/lib/thandy
AgeCommit message (Collapse)Author
2009-08-25Add the ability to download files via BitTorrentSebastian Hahn
The Client has learned a new option, --download-method, too specify whether we're downloading directly or via BitTorrent. This implementation has a few remaining issues, the biggest one is that seeding isn't implemented at all (when the download stops, Thandy stops sharing). Failure to download due to no available peers also doesn't work.
2009-08-25Add ability to create .torrent metadata when making a packageSebastian Hahn
Also update the spec with the information where the .torrent metadata file will be stored.
2009-08-25Allow tracking all bundles in the repository with thandy-clientSebastian Hahn
thandy-client now allows passing ** instead of a path for bundles. This is treated as a special case, other wild card or regular expression matching is not included.
2009-08-25If we have more than we want, we have too much, not the other way.Sebastian Hahn
2009-08-25All current versions of Thandy have length fieldsSebastian Hahn
2009-08-25Spelling fixes and import cleanupSebastian Hahn
2009-06-01fix "make test"Sebastian Hahn
2009-03-19Actually enforce file lengths when downloading.Nick Mathewson
Most of the code was already written for this, but we didn't actually pass the length fields we'd parsed to the downloading logic.
2009-03-19Add lengths to the timestamp file.Nick Mathewson
This might break old clients, but AFAICT there are no clients running versions prior to 15 Dec. It's necessary to avoid some DOS attacks.
2009-01-22Fix multiple pychecker-spotted typos.Nick Mathewson
These are mostly typos in methods that don't get used in the current Thandy, error in error-handling paths, modules we imported unnecessarily, etc.
2009-01-05Correct syntax for name-to-length dictionary assignment.Martin Peck
git-svn-id: file:///home/or/svnrepo/updater/trunk@17904 55e972cd-5a19-0410-ae62-a4d7a52db4cd
2008-12-21packageLen was meant to be a name-to-length dictionary, not an int.Nick Mathewson
git-svn-id: file:///home/or/svnrepo/updater/trunk@17715 55e972cd-5a19-0410-ae62-a4d7a52db4cd
2008-12-21fix a "NameError: global name 'os' is not defined" complaint whenRoger Dingledine
making new packages or bundles. i think. git-svn-id: file:///home/or/svnrepo/updater/trunk@17713 55e972cd-5a19-0410-ae62-a4d7a52db4cd
2008-12-15Implement lengths in thandy objects, mostly:Nick Mathewson
Accept them, and when they're present, don't fetch more bytes than specified, since that would be dangerous. Include lengths in every generated object type except for the timestamp, since that would break exising code. git-svn-id: file:///home/or/svnrepo/updater/trunk@17629 55e972cd-5a19-0410-ae62-a4d7a52db4cd
2008-12-08Make encrypted data format handle unicode.Nick Mathewson
git-svn-id: file:///home/or/svnrepo/updater/trunk@17523 55e972cd-5a19-0410-ae62-a4d7a52db4cd
2008-12-08Oops: actually commit the patch from this morning where I made Thandy not ↵Nick Mathewson
break. Maybe I _am_ still sick. git-svn-id: file:///home/or/svnrepo/updater/trunk@17516 55e972cd-5a19-0410-ae62-a4d7a52db4cd
2008-12-03add missing PackageItem.getRelativePath()Nick Mathewson
git-svn-id: file:///home/or/svnrepo/updater/trunk@17467 55e972cd-5a19-0410-ae62-a4d7a52db4cd
2008-12-01More pydocNick Mathewson
git-svn-id: file:///home/or/svnrepo/updater/trunk@17433 55e972cd-5a19-0410-ae62-a4d7a52db4cd
2008-12-01Make controller logging work better on python 2.4 (where the "extra" feature ↵Nick Mathewson
of logger.log does not exist.) git-svn-id: file:///home/or/svnrepo/updater/trunk@17431 55e972cd-5a19-0410-ae62-a4d7a52db4cd
2008-12-01Yes, I did mean get.Nick Mathewson
git-svn-id: file:///home/or/svnrepo/updater/trunk@17429 55e972cd-5a19-0410-ae62-a4d7a52db4cd
2008-12-01And now omit the cmd_remove entirely so certain pedantic python versions are ↵Martin Peck
happy. git-svn-id: file:///home/or/svnrepo/updater/trunk@17428 55e972cd-5a19-0410-ae62-a4d7a52db4cd
2008-12-01Correct reference to cmd_remove extras passed to CommandInstaller.Martin Peck
git-svn-id: file:///home/or/svnrepo/updater/trunk@17427 55e972cd-5a19-0410-ae62-a4d7a52db4cd
2008-12-01coderman's hack to make it not traceback on etch. nick should do aRoger Dingledine
cleaner one if he likes. git-svn-id: file:///home/or/svnrepo/updater/trunk@17425 55e972cd-5a19-0410-ae62-a4d7a52db4cd
2008-12-01Kludge harder, but properly.Nick Mathewson
git-svn-id: file:///home/or/svnrepo/updater/trunk@17424 55e972cd-5a19-0410-ae62-a4d7a52db4cd
2008-12-01Kludge harder.Nick Mathewson
git-svn-id: file:///home/or/svnrepo/updater/trunk@17423 55e972cd-5a19-0410-ae62-a4d7a52db4cd
2008-12-01Add a possible workaround for coderman's Ubuntu's simplejson snafus. 1) ↵Nick Mathewson
Only use json instead of simplejson if json actually works. Apparently there is sometimes a json module that is not the kind of json module you get with python2.6. 2) Check to see if json thinks you should escape /, and try to override that "helpful" choice. git-svn-id: file:///home/or/svnrepo/updater/trunk@17422 55e972cd-5a19-0410-ae62-a4d7a52db4cd
2008-11-30Generate new command formats, I believe.Nick Mathewson
git-svn-id: file:///home/or/svnrepo/updater/trunk@17416 55e972cd-5a19-0410-ae62-a4d7a52db4cd
2008-11-30Big thandy installation refactoring. Things should be saner now: we ↵Nick Mathewson
recognize that checking an item is sometimes orthogonal to installing it; we do not carry around big bits of unimplemented machinery; we actually document what stuff does in thandy-spec.txt; we do more OO in the places that make sense and less in the places that do not; and almost as an afterthought, we support the command installer type internally. Now all we need is a frontend to make command installers. git-svn-id: file:///home/or/svnrepo/updater/trunk@17414 55e972cd-5a19-0410-ae62-a4d7a52db4cd
2008-11-24Document Thandy controller interface better.Nick Mathewson
git-svn-id: file:///home/or/svnrepo/updater/trunk@17385 55e972cd-5a19-0410-ae62-a4d7a52db4cd
2008-11-22Fix a bug in userFilename that left us with a directory in ./~/. Add a ↵Nick Mathewson
facility for controller-readable log messages with --controller-log-format git-svn-id: file:///home/or/svnrepo/updater/trunk@17367 55e972cd-5a19-0410-ae62-a4d7a52db4cd
2008-11-22Add a quick and dirty thandy-client json2xml command. I am going to regret ↵Nick Mathewson
this someday. git-svn-id: file:///home/or/svnrepo/updater/trunk@17366 55e972cd-5a19-0410-ae62-a4d7a52db4cd
2008-11-22PackageDB was supposed to use shelve, not anydbm. What was I thinking?Nick Mathewson
git-svn-id: file:///home/or/svnrepo/updater/trunk@17365 55e972cd-5a19-0410-ae62-a4d7a52db4cd
2008-11-22more docs and testsNick Mathewson
git-svn-id: file:///home/or/svnrepo/updater/trunk@17364 55e972cd-5a19-0410-ae62-a4d7a52db4cd
2008-11-22call setVersion() by the right name.Nick Mathewson
git-svn-id: file:///home/or/svnrepo/updater/trunk@17363 55e972cd-5a19-0410-ae62-a4d7a52db4cd
2008-11-21fix/document issues noted by arma in todo.Nick Mathewson
git-svn-id: file:///home/or/svnrepo/updater/trunk@17350 55e972cd-5a19-0410-ae62-a4d7a52db4cd
2008-11-20a little more documentation.Nick Mathewson
git-svn-id: file:///home/or/svnrepo/updater/trunk@17346 55e972cd-5a19-0410-ae62-a4d7a52db4cd
2008-11-20If a registry entry exists, treat it as authoritative.Nick Mathewson
git-svn-id: file:///home/or/svnrepo/updater/trunk@17341 55e972cd-5a19-0410-ae62-a4d7a52db4cd
2008-11-20Fall back to using built-in db rather than registry when some clever person ↵Nick Mathewson
decides to try installing a win32 binary on their linux box. git-svn-id: file:///home/or/svnrepo/updater/trunk@17340 55e972cd-5a19-0410-ae62-a4d7a52db4cd
2008-11-20Teach thandy downloader how to back off on failure, ignore failing mirrors ↵Nick Mathewson
for a while, etc. still needs to be taught to persist this info, if that seems smart. git-svn-id: file:///home/or/svnrepo/updater/trunk@17339 55e972cd-5a19-0410-ae62-a4d7a52db4cd
2008-11-20do not crash on exe_registry_entNick Mathewson
git-svn-id: file:///home/or/svnrepo/updater/trunk@17338 55e972cd-5a19-0410-ae62-a4d7a52db4cd
2008-11-20Unlike everything else in Python, registry keys want Close() not close().Nick Mathewson
git-svn-id: file:///home/or/svnrepo/updater/trunk@17337 55e972cd-5a19-0410-ae62-a4d7a52db4cd
2008-11-20Make downloaded files in binary mode.Nick Mathewson
git-svn-id: file:///home/or/svnrepo/updater/trunk@17336 55e972cd-5a19-0410-ae62-a4d7a52db4cd
2008-11-20Normalize paths to avoid bugging win32 folks with harmless (i believe) slashes.Nick Mathewson
git-svn-id: file:///home/or/svnrepo/updater/trunk@17335 55e972cd-5a19-0410-ae62-a4d7a52db4cd
2008-11-20fix a couple more types in ExePackages.py.Nick Mathewson
git-svn-id: file:///home/or/svnrepo/updater/trunk@17334 55e972cd-5a19-0410-ae62-a4d7a52db4cd
2008-11-20various fixes. now thandy will loop infinitely because the exe file gives a ↵Nick Mathewson
404. git-svn-id: file:///home/or/svnrepo/updater/trunk@17332 55e972cd-5a19-0410-ae62-a4d7a52db4cd
2008-11-20actually look at the firmat line.Nick Mathewson
git-svn-id: file:///home/or/svnrepo/updater/trunk@17331 55e972cd-5a19-0410-ae62-a4d7a52db4cd
2008-11-20maybe if i remove these letters it'll be a recognized variable...Roger Dingledine
git-svn-id: file:///home/or/svnrepo/updater/trunk@17330 55e972cd-5a19-0410-ae62-a4d7a52db4cd
2008-11-20what the heck kind of language doesn't have basic function checking?Roger Dingledine
git-svn-id: file:///home/or/svnrepo/updater/trunk@17329 55e972cd-5a19-0410-ae62-a4d7a52db4cd
2008-11-20fix syntax errorRoger Dingledine
git-svn-id: file:///home/or/svnrepo/updater/trunk@17322 55e972cd-5a19-0410-ae62-a4d7a52db4cd
2008-11-17Add win32 registry support to thandy. untested.Nick Mathewson
git-svn-id: file:///home/or/svnrepo/updater/trunk@17319 55e972cd-5a19-0410-ae62-a4d7a52db4cd