diff --git a/doc/todo/remove_webapp.mdwn b/doc/todo/remove_webapp.mdwn new file mode 100644 index 0000000000..14223a1706 --- /dev/null +++ b/doc/todo/remove_webapp.mdwn @@ -0,0 +1,43 @@ +I am considering removing the `git-annex webapp`. Your feedback is +appreciated if you still use it. --[[Joey]] + +The assistant would be retained, so existing setups that were configured +with the webapp would keep working, although users of those would need to +replace any use of the webapp to control them with command-line use. + +The webapp has been only minimally maintained for about 10 years. There +have been no new features, and while it amazingly continues to work, it +doesn't addess many of the changes in git-annex. For example, there's no +way to configure exporttree special remotes in the webapp. + +I think the webapp is barely used by git-annex users. The point of it was +to make git-annex easy enough to set up to reach a larger user base. That +necessarily meant building something that aspired to be more like dropbox +than git. That never really happened. git-annex found its own user bases +that appreciate its actual strengths, and who have helped build it in the +directions where more and more people find it useful. + +Keeping the webapp in git-annex has a price. It has a complex and +annoying dependency chain. (See [[ditch_yesod]].) +It uses template haskell, which makes build times slow, and makes +building use a lot more memory. + +The webapp also has some security exposure that stock git-annex does not +have. Beyond the business of connecting to the webapp securely, the adhoc +network protocol used by the webapp's pairing interface is baked into the +assistant even when the webapp is not being used. And is not otherwise used +in git-annex, and has had at least one security issue in the past. + +The git-annex binary also ends up significantly larger due to containing +the webapp. And removing it deletes 28 thousand lines of code from +git-annex, including embedded code copies of bootstrap and jquery. + +---- + +The `removewebapp` branch has a working patch to remove the webapp. + +Documentation that mentions the webapp, including doc/git-annex-webapp.mdwn +still would need to be updated. + +Also annex.autoupgrade needs to be updated, one of the options was webapp +specific. Maybe upgrades are out of scope for the assistant too?