summaryrefslogtreecommitdiff
path: root/Assistant/Threads/WebApp.hs
Commit message (Collapse)AuthorAge
* close tmp file handleGravatar Joey Hess2013-12-07
| | | | May fix permission problem on windows
* upgrade alertsGravatar Joey Hess2013-11-21
| | | | | | | | | | | | | | | | | | The webapp will check twice a day, when the network is connected, to see if it can download a distributon upgrade file. If a newer version is found, display an upgrade alert. This will need the autobuilders to set UPGRADE_LOCATION to the url it can be downloaded from when building git-annex. Only builds with that set need automatic upgrade alerts. Currently, the upgrade page just requests the user manually download and upgrade it. But, all the info is provided to do automated upgrades in the future. Note that urls used will need to all be https. This commit was sponsored by Dirk Kraft.
* webapp: Check annex.version.Gravatar Joey Hess2013-11-17
|
* add git fsck to cronner, and UI for repository repair (not yet wired up)Gravatar Joey Hess2013-10-22
|
* add config page for fsck, and alert with button when a fsck is runningGravatar Joey Hess2013-10-10
|
* assistant: Detect stale git lock files at startup time, and remove them.Gravatar Joey Hess2013-10-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Extends the index.lock handling to other git lock files. I surveyed all lock files used by git, and found more than I expected. All are handled the same in git; it leaves them open while doing the operation, possibly writing the new file content to the lock file, and then closes them when done. The gc.pid file is excluded because it won't affect the normal operation of the assistant, and waiting for a gc to finish on startup wouldn't be good. All threads except the webapp thread wait on the new startup sanity checker thread to complete, so they won't try to do things with git that fail due to stale lock files. The webapp thread mostly avoids doing that kind of thing itself. A few configurators might fail on lock files, but only if the user is explicitly trying to run them. The webapp needs to start immediately when the user has opened it, even if there are stale lock files. Arranging for the threads to wait on the startup sanity checker was a bit of a bear. Have to get all the NotificationHandles set up before the startup sanity checker runs, or they won't see its signal. Perhaps the NotificationBroadcaster is not the best interface to have used for this. Oh well, it works. This commit was sponsored by Michael Jakl
* Android: Make the "Open webapp" menu item open the just created repository ↵Gravatar Joey Hess2013-06-10
| | | | when a new repo is made.
* remove unnecessary haskell extensionsGravatar Joey Hess2013-06-04
|
* rename moduleGravatar Joey Hess2013-05-12
|
* --listen is not supported on AndroidGravatar Joey Hess2013-05-02
|
* Internet Archive!Gravatar Joey Hess2013-04-25
| | | | | | | * Add public repository group. * webapp: Can now set up Internet Archive repositories. TODO: Enabling IA repositories.
* fix warningGravatar Joey Hess2013-04-20
|
* refactor static route definition -- android webapp build fixGravatar Joey Hess2013-04-17
| | | | | | Incidentially should work around the last problem that prevented the webapp building on Android. (Except for a few places I need to clean up after hand-fixing the spliced TH code.)
* webapp: New --listen= option allows running the webapp on one computer and ↵Gravatar Joey Hess2013-04-08
| | | | | | | connecting to it from another. Does not yet use HTTPS. I'd need to generate a certificate, and I'm not sure what's the best way to do that.
* webapp: Added UI to delete repositories. Closes: #689847Gravatar Joey Hess2013-03-31
|
* no longer need webapp state storage! excellentGravatar Joey Hess2013-03-15
|
* gratuitous rename HomeR -> DashboardRGravatar Joey Hess2013-03-12
|
* split repolist out of configuration, into its own tab (temporarily)Gravatar Joey Hess2013-03-12
|
* webapp: New preferences page allows enabling/disabling debug logging at ↵Gravatar Joey Hess2013-03-03
| | | | runtime, as well as configuring numcopies and diskreserve.
* webapp: Now allows restarting any threads that crash.Gravatar Joey Hess2013-01-26
|
* webapp: Use IP address, rather than localhostGravatar Joey Hess2013-01-09
| | | | | | | | | since some systems may have configuration problems or other issues that prevent web browsers from connecting to the right localhost IP for the webapp. Tested on both ipv4 and ipv6 localhost. Url for the latter looks like: http://[::1]:50676
* restart UIGravatar Joey Hess2013-01-03
| | | | | Browser behavior is not ideal; a new tab is opened on restart. Browsers won't let me redirect to a file:// so I cannot use the old tab.
* webapp: Add UI to stop assistant.Gravatar Joey Hess2013-01-03
| | | | | | | Would like to also have restart UI, but that's rather harder to do, seems it'd need to start another copy of the webapp, and redirect the browser to its new url, but running two assistants in the same repo at the same time isn't good.
* allow building webapp w/o webdavGravatar Joey Hess2012-11-25
|
* webapp and assistant glacier supportGravatar Joey Hess2012-11-24
|
* webapp: support box.comGravatar Joey Hess2012-11-17
|
* moved ThreadedMonad to TypesGravatar Joey Hess2012-10-29
|
* tweakGravatar Joey Hess2012-10-29
|
* Assistant monad, stage 2.5Gravatar Joey Hess2012-10-29
| | | | | | | | | | Converted several threads to run in the monad. Added a lot of useful combinators for working with the monad. Now the monad includes the name of the thread. Some debugging messages are disabled pending converting other threads.
* Assistant monad, stage 1Gravatar Joey Hess2012-10-29
| | | | | This adds the Assistant monad, and an AssistantData structure. So far, none of the assistant's threads run in the monad yet.
* ensure that git-annex branch is pushed after a successful transferGravatar Joey Hess2012-10-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | I now have this topology working: assistant ---> {bare repo, special remote} <--- assistant And, I think, also this one: +----------- bare repo --------+ v v assistant ---> special remote <--- assistant While before with assistant <---> assistant connections, both sides got location info updated after a transfer, in this topology, the bare repo *might* get its location info updated, but the other assistant has no way to know that it did. And a special remote doesn't record location info, so transfers to it won't propigate out location log changes at all. So, for these to work, after a transfer succeeds, the git-annex branch needs to be pushed. This is done by recording a synthetic commit has occurred, which lets the pusher handle pushing out the change (which will include actually committing any still journalled changes to the git-annex branch). Of course, this means rather a lot more syncing action than happened before. At least the pusher bundles together very close together pushes, somewhat. Currently it just waits 2 seconds between each push.
* (re)start XMPP when it's configured in the webappGravatar Joey Hess2012-10-27
|
* XMPP configuration formGravatar Joey Hess2012-10-26
| | | | | | Currently relies on SRV being set, or the JID's hostname being the server hostname and the port being default. Future work: Allow manual configuration of user name, hostname, and port.
* import S3 only when enabledGravatar Nicolas Pouillard2012-10-18
|
* add "configure" link to each repository in the webapp's repo listGravatar Joey Hess2012-10-09
|
* add a configurator for S3Gravatar Joey Hess2012-09-26
|
* make other repositories list list all autostarted reposGravatar Joey Hess2012-09-18
| | | | And add a form to add another, unrelated repository
* hlintGravatar Joey Hess2012-09-13
|
* render webapp staitc file url using yesodGravatar Joey Hess2012-09-08
|
* first pass at alert buttonsGravatar Joey Hess2012-09-08
| | | | | | | | | They work fine. But I had to go to a lot of trouble to get Yesod to render routes in a pure function. It may instead make more sense to have each alert have an assocated IO action, and a single route that runs the IO action of a given alert id. I just wish I'd realized that before the past several hours of struggling with something Yesod really doesn't want to allow.
* yesod skelton and routes for pairingGravatar Joey Hess2012-09-08
| | | | yet more changes to pairing message data types
* display errors when any named thread crashesGravatar Joey Hess2012-09-06
|
* add ssh confirmation pageGravatar Joey Hess2012-09-02
| | | | also broke out webapp types into a separate module
* split out local repo configuratorsGravatar Joey Hess2012-08-31
|
* implement resuming of paused transfersGravatar Joey Hess2012-08-12
| | | | | Currently waits for a new transfer slot to open up, which probably needs to change..
* wire up scan and transfer to newly added removable driveGravatar Joey Hess2012-08-04
| | | | remote setup still todo
* better ~/ handlingGravatar Joey Hess2012-08-02
|
* don't use hamlet for htmlshimGravatar Joey Hess2012-08-01
| | | | | | This allows me to not build-depend on blaze-markup, which was causing me some trouble when tring to build with cabal on debian. Seems debian ships Text.Blaze.Renderer.String in two packages.
* implemented firstrun repository creation and redirection to full webappGravatar Joey Hess2012-08-01
| | | | Some of the trickiest code I've possibly ever written.
* webapp now starts up when run not in a git repoGravatar Joey Hess2012-07-31
|