summaryrefslogtreecommitdiff
path: root/Remote/Web.hs
Commit message (Collapse)AuthorAge
* record transfer information on local git remotesGravatar Joey Hess2012-07-01
| | | | | | | | | | | | | | | In order to record a semi-useful filename associated with the key, this required plumbing the filename all the way through to the remotes' storeKey and retrieveKeyFile. Note that there is potential for deadlock here, narrowly avoided. Suppose the repos are A and B. A sends file foo to B, and at the same time, B gets file foo from A. So, A locks its upload transfer info file, and then locks B's download transfer info file. At the same time, B is taking the two locks in the opposite order. This is only not a deadlock because the lock code does not wait, and aborts. So one of A or B's transfers will be aborted and the other transfer will continue. Whew!
* Add annex.httpheaders and annex.httpheader-command config settingsGravatar Joey Hess2012-04-22
| | | | | | Allow custom headers to be sent with all HTTP requests. (Requested by the Internet Archive)
* whereis: Prints the urls of files that the web special remote knows about.Gravatar Joey Hess2012-02-14
|
* When checking that an url has a key, verify that the Content-Length, if ↵Gravatar Joey Hess2012-02-10
| | | | | | | | available, matches the size of the key. If there's no Content-Length, or the key has no size, this check is not done, but it should happen most of the time, and protect against web content that has changed.
* fsck --from remote --fastGravatar Joey Hess2012-01-20
| | | | | | | Avoids expensive file transfers, at the expense of checking file size and/or contents. Required some reworking of the remote code.
* add tmp flag parameter to retrieveKeyFileGravatar Joey Hess2012-01-19
|
* Added remote.name.annex-web-options configuration setting, which can be used ↵Gravatar Joey Hess2012-01-02
| | | | to provide parameters to whichever of wget or curl git-annex uses (depends on which is available, but most of their important options suitable for use here are the same).
* type alias cleanupGravatar Joey Hess2011-12-31
|
* better filtering out of special remotesGravatar Joey Hess2011-12-31
|
* split more stuff out of Git.hsGravatar Joey Hess2011-12-14
|
* split out three modules from GitGravatar Joey Hess2011-12-13
| | | | | Constructors and configuration make sense in separate modules. A separate Git.Types is needed to avoid cycles.
* refactorGravatar Joey Hess2011-12-03
|
* factor out untilTrueGravatar Joey Hess2011-12-02
|
* safer inannex checkingGravatar Joey Hess2011-11-09
| | | | | | | | git-annex-shell inannex now returns always 0, 1, or 100 (the last when it's unclear if content is currently in the index due to it currently being moved or dropped). (Actual locking code still not yet written.)
* reorder repo parameters lastGravatar Joey Hess2011-11-08
| | | | | | | | | | | | | Many functions took the repo as their first parameter. Changing it consistently to be the last parameter allows doing some useful things with currying, that reduce boilerplate. In particular, g <- gitRepo is almost never needed now, instead use inRepo to run an IO action in the repo, and fromRepo to get a value from the repo. This also provides more opportunities to use monadic and applicative combinators.
* broke up UtilityGravatar Joey Hess2011-10-16
|
* clean Annex stuff out of Utility/Gravatar Joey Hess2011-10-16
|
* break out non-log stuff to separate moduleGravatar Joey Hess2011-10-15
|
* migrate: Copy url logs for keys when migrating.Gravatar Joey Hess2011-10-15
|
* break web log handling into a separate moduleGravatar Joey Hess2011-10-15
|
* reorganize log modulesGravatar Joey Hess2011-10-15
| | | | no code changes
* A remote can have a annexUrl configured, that is used by git-annex instead ↵Gravatar Joey Hess2011-10-14
| | | | of its usual url. (Similar to pushUrl.)
* renameGravatar Joey Hess2011-10-05
|
* renameGravatar Joey Hess2011-10-04
|
* factor out common importsGravatar Joey Hess2011-10-03
| | | | no code changes
* rework annex-ignore handlingGravatar Joey Hess2011-09-18
| | | | | | | | Only one place need to filter the list of remotes for ignored remotes: keyPossibilities. Make the full list available to everything else. This allows getting rid of the special case handing for --from and --to to make ignored remotes not be ignored with those options.
* factor out firstM and anyMGravatar Joey Hess2011-08-28
| | | | Control.Monad.Loops has these, but has no Debian package yet.
* show a message if asked to get something from the web that is not thereGravatar Joey Hess2011-08-27
|
* moved files aroundGravatar Joey Hess2011-08-20
|
* split out generic url stuff into a helper library from Remote.WebGravatar Joey Hess2011-08-16
|
* fix file name for web remote log filesGravatar Joey Hess2011-08-06
| | | | | | The key name was not being sufficiently escaped, although it didn't break anything due to luck. Switch to properly escaped key names for the log filename, with a fallback to the buggy old name.
* unify elipsis handlingGravatar Joey Hess2011-07-19
| | | | | And add a simple dots-based progress display, currently only used in v2 upgrade.
* finished hlint passGravatar Joey Hess2011-07-15
|
* Drop the dependency on the haskell curl bindings, use regular haskell HTTP.Gravatar Joey Hess2011-07-04
|
* make curl follow redirsGravatar Joey Hess2011-07-01
|
* download urls via tmp file, and support resumingGravatar Joey Hess2011-07-01
|
* add hashing to web log filesGravatar Joey Hess2011-07-01
|
* add the addurl commandGravatar Joey Hess2011-07-01
|
* add web special remoteGravatar Joey Hess2011-07-01
Generalized LocationLog to PresenceLog, and use a presence log to record urls for the web special remote.