git-annex/Assistant/WebApp
Joey Hess 99cb3e75f1
add LISTCONFIGS to external special remote protocol
Special remote programs that use GETCONFIG/SETCONFIG are recommended
to implement it.

The description is not yet used, but will be useful later when adding a way
to make initremote list all accepted configs.

configParser now takes a RemoteConfig parameter. Normally, that's not
needed, because configParser returns a parter, it does not parse it
itself. But, it's needed to look at externaltype and work out what
external remote program to run for LISTCONFIGS.

Note that, while externalUUID is changed to a Maybe UUID, checkExportSupported
used to use NoUUID. The code that now checks for Nothing used to behave
in some undefined way if the external program made requests that
triggered it.

Also, note that in externalSetup, once it generates external,
it parses the RemoteConfig strictly. That generates a
ParsedRemoteConfig, which is thrown away. The reason it's ok to throw
that away, is that, if the strict parse succeeded, the result must be
the same as the earlier, lenient parse.

initremote of an external special remote now runs the program three
times. First for LISTCONFIGS, then EXPORTSUPPORTED, and again
LISTCONFIGS+INITREMOTE. It would not be hard to eliminate at least
one of those, and it should be possible to only run the program once.
2020-01-17 16:07:17 -04:00
..
Configurators add LISTCONFIGS to external special remote protocol 2020-01-17 16:07:17 -04:00
Common.hs generalize catchHardwareFault to catchIOErrorType 2015-12-06 16:26:38 -04:00
Configurators.hs webapp: full wormhole pairing UI (untested) 2016-12-27 16:41:35 -04:00
Control.hs Always use filesystem encoding for all file and handle reads and writes. 2016-12-24 14:46:31 -04:00
DashBoard.hs convert TopFilePath to use RawFilePath 2019-12-09 15:07:21 -04:00
Documentation.hs split BuildInfo and BuildFlags 2018-01-02 13:47:51 -04:00
Form.hs remove many old version ifdefs 2019-07-05 15:09:37 -04:00
Gpg.hs get rid of hardcoded "name" lookups 2019-10-10 13:25:10 -04:00
MakeRemote.hs change Remote.repo to Remote.getRepo 2018-06-04 15:30:26 -04:00
Notifications.hs Merge branch 'master' into no-xmpp 2016-12-24 15:01:55 -04:00
OtherRepos.hs
Page.hs removed the old Android app 2018-10-13 01:41:11 -04:00
Pairing.hs avoid insertWith' depreaction warning 2018-04-22 13:28:31 -04:00
Repair.hs
RepoId.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
RepoList.hs be stricter about rejecting invalid configurations for remotes 2020-01-10 14:52:48 -04:00
routes webapp: remove configurators for obsolste cloud storage services 2019-01-22 11:48:35 -04:00
SideBar.hs another FlexibleContexts fix 2015-05-10 15:46:59 -04:00
Types.hs remove many old version ifdefs 2019-07-05 15:09:37 -04:00