Joey Hess
a453be4195
disable client session cookie
2012-07-26 12:10:53 -04:00
Joey Hess
b89b801567
update
2012-07-26 05:20:52 -04:00
Joey Hess
9d6b59d0e2
use the secret token for authentication, and add to all dynamic urls
2012-07-26 04:50:09 -04:00
Joey Hess
b36804d648
generate random token and launch webapp using it
2012-07-26 03:38:20 -04:00
Joey Hess
3ac2cf09e5
added a custom defaultLayout, static site, and favicon
...
Broke hamlet out into standalone files.
I don't like the favicon display; it should be served from /favicon.ico,
but I could only get the static site to serve /static/favicon.ico, so
I had to use a <link rel=icon> to pull it in. I looked at
Yesod.Default.Handlers.getFaviconR, but it doesn't seem to embed
the favicon into the binary?
2012-07-26 02:45:01 -04:00
Joey Hess
6a8540c1a2
tweak
2012-07-26 00:39:25 -04:00
Joey Hess
805d50c69d
use hamlet at least for the static html
2012-07-25 23:50:29 -04:00
Joey Hess
1ffef3ad75
git annex webapp now opens a browser to the webapp
...
Also, starts the assistant if it wasn't already running.
2012-07-25 23:13:01 -04:00
Joey Hess
e6ce54de82
build fixes
2012-07-25 22:04:10 -04:00
Joey Hess
32d3cffc4c
run yesod, and launch webapp on startup
2012-07-25 21:26:13 -04:00
Joey Hess
95c80b6440
laziness fix
...
Now scanning runs fully interleaved with transferring.
2012-07-25 14:54:09 -04:00
Joey Hess
b665ffe36f
implement simple working copy based scan
...
Works.. could be more efficient.
2012-07-25 14:16:53 -04:00
Joey Hess
2b7f9c8442
fix including of remote in TransferInfo when queueing new transfers
2012-07-25 14:02:50 -04:00
Joey Hess
a9dbfdf28d
better transfer queue management
...
Allow transfers to be added with blocking until the queue is sufficiently
small.
Better control over which end of the queue to add a transfer to.
2012-07-25 13:12:34 -04:00
Joey Hess
6107328a6b
avoid spawning new transfer thread until a slot becomes available
2012-07-25 12:07:30 -04:00
Joey Hess
522f568450
add TransferScanner thread
...
Efficiently finding transfers that need to be done to get two repos back
in sync seems like an interesting problem.
2012-07-22 23:16:56 -04:00
Joey Hess
26e4e65307
filter out special remotes when pulling
2012-07-22 15:09:40 -04:00
Joey Hess
e4f714d1be
pull from newly mounted git remotes
2012-07-22 15:06:18 -04:00
Joey Hess
b48d7747a3
debugging improvements
...
add timestamps to debug messages
Add lots of debug output in the assistant's threads.
2012-07-20 19:29:59 -04:00
Joey Hess
42e73537d1
detect KDE automounting
...
Best dbus events I could find were setupDone from org.kde.Solid.Device.
There may be some spurious events, but that's ok, the code will only
check to see if new mounts are available.
It does not try to auto-start this service if it's not running.
2012-07-20 18:14:57 -04:00
Joey Hess
2fce3940b5
catch all errors
2012-07-20 02:16:09 -04:00
Joey Hess
d9f26115c3
use dbus to activate GduVolumeMonitor if it's not already running
2012-07-20 01:59:21 -04:00
Joey Hess
6b4fe507f6
only use dbus when there's a client connected we know will send mount events
2012-07-19 23:34:33 -04:00
Joey Hess
0496a3971d
store whole Mntents
...
This way, if a mount point was already mounted, but something else
gets mounted there, it'll be seen as a new mount.
2012-07-19 21:25:26 -04:00
Joey Hess
107a7b9388
try to make Utility.Mounts portable
...
This is an unholy mashup, but it just might work. It works on Linux,
that's all I've tested. :)
2012-07-19 20:38:58 -04:00
Joey Hess
f20a40f9d4
MountWatcher thread
...
Currently only prints mount points when mounts happen.
2012-07-19 13:04:33 -04:00
Joey Hess
cf47bb3f50
run file transfers in threads, not processes
...
This should fix OSX/BSD issues with not noticing transfer information
files with kqueue. Now that threads are used, the thread can manage the
transfer slot allocation and deallocation by itself; much cleaner.
2012-07-18 19:15:34 -04:00
Joey Hess
eea0a3616c
add thread id field to transferinfo
...
Also converted its timestand to posix seconds, like is used in the other
log files.
2012-07-18 18:42:41 -04:00
Joey Hess
f520a2c103
add missing imports
2012-07-18 18:29:33 -04:00
Joey Hess
c34d8ae088
avoid enqueing downloads from remotes that don't have the key
2012-07-17 12:17:01 -04:00
Joey Hess
b7d3cefde9
merge two shouldTransfer checks
2012-07-17 12:06:35 -04:00
Joey Hess
c8691d76aa
bugfix
2012-07-07 11:17:20 -06:00
Joey Hess
cd168c6cba
fix transferrer thread's use of transfer slots and transfer info files
...
Check first if a transfer needs to be done, using the location log only
(for speed), and avoid occupying a slot if not. Always write a transfer
info file, and keep it open throughout the tranfer process.
Now transfers to remotes seem reliable.
2012-07-07 10:50:20 -06:00
Joey Hess
cc6f660752
fix transfer slots blocking and refilling when transfers are stopped
...
There's a bug, if a transfer process notices it needs to do nothing,
it never starts the transfer, so the slot is never freed.
2012-07-06 21:59:45 -06:00
Joey Hess
d954a0ce59
fixed close-together transfer race
...
The issue involved forking and they trying to read from a MVar. Reading the
MVar 1st fixed it.
2012-07-06 18:48:51 -06:00
Joey Hess
62876502c5
wait on child transfer processes, and invalidate cache
...
There's still a bug; if the child updates its transfer info file,
then the data from it will superscede the TransferInfo, losing the
info that we should wait on this child.
2012-07-06 16:44:13 -06:00
Joey Hess
4a10795144
logic error
2012-07-06 15:07:42 -06:00
Joey Hess
3d30a45e72
simplified
...
background transferrs seem to work now
2012-07-06 14:54:07 -06:00
Joey Hess
430ad8ce85
it builds again
...
Currently nothing waits on transfer processes.
(Second drive of the day fried. Not concentrating very well.)
2012-07-06 16:41:37 -04:00
Joey Hess
8795a392c3
fix
2012-07-06 16:30:55 -04:00
Joey Hess
721748135b
fix build (almost)
2012-07-06 14:42:45 -04:00
Joey Hess
a92f5589fc
unfinished (and unbuildable) work toward separate transfer processes
2012-07-05 18:57:06 -06:00
Joey Hess
9eaba58dd9
run transfer with copy of annex state
...
This should have made it run concurrently with other annex actions,
but I'm still seeing it serialize. Perhaps I need to forkProcess?
2012-07-05 16:07:49 -06:00
Joey Hess
2136ee4adb
logic error
2012-07-05 14:45:21 -06:00
Joey Hess
71b5ad8398
wrote transfer thread
...
finally!
2012-07-05 14:34:20 -06:00
Joey Hess
6af319d8cd
enqueue Downloads when new symlinks appear to content we don't have
2012-07-05 10:58:49 -06:00
Joey Hess
c8135ea0a8
split logic for uploads and downloads
2012-07-05 10:44:07 -06:00
Joey Hess
83c66ccaf8
queue Uploads of newly added files to remotes
...
Added knownRemotes to DaemonStatus. This list is not entirely trivial to
calculate, and having it here should make it easier to add/remove remotes
on the fly later on. It did require plumbing the daemonstatus through to
some more threads.
2012-07-05 10:21:22 -06:00
Joey Hess
b4917bd18f
add transfer watching thread
...
Worked the 1st try!
2012-07-03 10:58:40 -04:00
Joey Hess
32e5e02e43
added currentTransfers
2012-07-02 16:12:55 -04:00