git-annex/Remote
Joey Hess bb18bbd426
consolidate calls to ensureInitialized
tryGitConfigRead may run ensureInitialized first, but when checkuuid = false,
that is skipped. So, make sure it's run before all onLocal actions.

ensureInitialized is inexpensive, so the extra call by tryGitConfigRead
is not a big deal. But since it was easy to do, I made it only be run
once by all calls to onLocal.

A few calls to onLocal didn't call ensureInitialized before. Notably,
the checkPresent action didn't, and does now.

That means that there's a guarantee that any necessary repo upgrades
will be run before the checkPresent action runs in the repo. Which is
important especially for the direct mode conversion, because without
that upgrade, the checkPresent action would need to support direct mode
still. Now I can remove the last bits of direct mode support in
Annex.Content without worrying that it will break accessing remotes
that have not been upgraded.

This does necessarily mean that checkPresent needs to write to the disk
when performing such a repo upgrade. The other remote actions already
did, so retrieval from a readonly remote that needed to be upgraded would
fail. Having checkPresent also fail doesn't seem like a large reversion,
especially since it already failed in the default case when checkuuid = true.
2019-08-27 12:18:01 -04:00
..
Directory update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
External make everything build again after ByteString Key changes 2019-01-11 16:39:46 -04:00
Helper improve error display when storing to an export/import remote fails 2019-08-13 12:05:00 -04:00
Rsync avoid rsync/gcrypt ssh startup delay with -J 2019-06-13 11:16:38 -04:00
WebDAV update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Adb.hs improve error display when storing to an export/import remote fails 2019-08-13 12:05:00 -04:00
BitTorrent.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Bup.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Ddar.hs Corrected some license statements 2019-07-28 14:27:33 -04:00
Directory.hs close handle so windows can stat the file 2019-08-13 13:26:25 -04:00
External.hs better indicate when special remotes do not support renameExport 2019-03-11 12:53:24 -04:00
GCrypt.hs support using gcrypt with git-lfs special remote 2019-08-05 13:43:45 -04:00
Git.hs consolidate calls to ensureInitialized 2019-08-27 12:18:01 -04:00
GitLFS.hs support using gcrypt with git-lfs special remote 2019-08-05 13:43:45 -04:00
Glacier.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Hook.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
List.hs skeleton git-lfs special remote 2019-08-01 15:30:12 -04:00
P2P.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Rsync.hs avoid rsync/gcrypt ssh startup delay with -J 2019-06-13 11:16:38 -04:00
S3.hs S3: Fix encoding when generating public urls of S3 objects. 2019-08-15 12:56:46 -04:00
Tahoe.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Web.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
WebDAV.hs remove many old version ifdefs 2019-07-05 15:09:37 -04:00