Joey Hess
312ef4dfae
make --json-progress update meter when getting from git remote with rsync
2016-09-09 16:05:45 -04:00
Joey Hess
a108235565
better locking for json with -J
...
Avoid threads emitting json at the same time and scrambling, which was
still possible even with the buffering, just less likely.
Converted json IO actions to JSONChunk data too.
2016-09-09 15:51:34 -04:00
Joey Hess
05d4438383
addurl, get: Added --json-progress option, which adds progress objects to the json output.
...
This doesn't work right when used with -J yet, and there is some really
ugly hand-crafting of part of the json output.
2016-09-09 15:06:54 -04:00
Joey Hess
f421a7f001
Remove key:null from git-annex add --json output.
2016-09-09 14:26:34 -04:00
Joey Hess
4a09b4bbbd
make maybeShowJSON also add to the buffer
2016-09-09 14:21:06 -04:00
Joey Hess
089c592977
buffer json output until done when in concurrent mode
2016-09-09 13:21:38 -04:00
Joey Hess
8ef494a833
disentangle concurrency and message type
...
This makes -Jn work with --json and --quiet, where before
setting -Jn disabled those options.
Concurrent json output is currently a mess though since threads output
chunks over top of one-another.
2016-09-09 12:57:42 -04:00
Joey Hess
d4c9711844
still update othermeter when not displaying progress at console
...
See no reason not to do this; the othermeter will be updating a transfer
info file or the like.
2016-09-08 13:18:07 -04:00
Joey Hess
e0fae28c72
Rate limit console progress display updates to 10 per second. Was updating as frequently as changes were reported, up to hundreds of times per second, which used unncessary bandwidth when running git-annex over ssh etc.
2016-09-08 13:17:43 -04:00
Joey Hess
03b031554f
avoid build warnings when building w/o concurrent-output
2016-09-06 14:36:15 -04:00
Joey Hess
38fffc6406
fix build with old ghc
2016-08-08 10:49:49 -04:00
Joey Hess
5235fb1185
avoid using Strings for JSON output; keep it ByteString throughout
2016-07-26 21:43:05 -04:00
Joey Hess
928fbb162d
improved use of Aeson for JSONActionItem
2016-07-26 19:50:02 -04:00
Joey Hess
870873bdaa
Removed dependency on json library; all JSON is now handled by aeson.
...
I've eyeballed all --json commands, and the only difference should be
that some fields are re-ordered.
2016-07-26 19:15:34 -04:00
Joey Hess
880674020f
aeson parser for --json output lines
2016-07-26 14:10:29 -04:00
Joey Hess
a030d0a8b7
allow using Aeson for streaming JSON output
...
Keeping Text.JSON use for now, because it seems a better fit for most of
the commands, which don't use very structured JSON objects, but just output
whatever fields suites them. But this lets Aeson be used when a more
structured data type is available to serialize to JSON.
2016-07-26 13:30:07 -04:00
Joey Hess
acf74ae945
improve json when showStart' is given only a key
...
Before, the json contained file:key; change that to key:
If a file and a key are given, inclue both file: and key:
2016-03-06 12:57:24 -04:00
Joey Hess
6021538332
fix build w/o concurrent-output
2016-02-15 15:29:41 -04:00
Joey Hess
4034de2be6
quiet warning on windows
2016-02-15 15:06:54 -04:00
Joey Hess
0f18636c8a
Work around problem with concurrent-output when in a non-unicode locale by avoiding use of it in such a locale.
...
Instead -J will behave as if it was built without concurrent-output support
in this situation. Ie, it will be mostly quiet, except when there's an
error.
Note that it's not a problem for a filename to contain invalid utf-8 when
in a utf-8 locale. That is handled ok by concurrent-output. It's only
displaying unicode characters in a non-unicode locale that doesn't work.
2016-02-14 15:02:42 -04:00
Joey Hess
3449c0e8ec
avoid spawning file size polling thread when not in -J mode
2015-11-16 21:21:58 -04:00
Joey Hess
e97fce35a6
Display progress meter in -J mode when downloading from the web.
...
Including in addurl, and get --from web, but also in S3 and External
special remotes when a web url is known for content in those remotes.
2015-11-16 21:00:54 -04:00
Joey Hess
8a352c3378
fix build warning when built w/o concurrent-output
2015-11-10 13:42:39 -04:00
Joey Hess
416c7656a1
Concurrent progress bars are now displayed when using -J with a command that moves file contents around.
2015-11-06 13:44:57 -04:00
Joey Hess
17b173dec9
don't display console regions untill there is output in them
2015-11-05 20:18:27 -04:00
Joey Hess
ab6b1edfee
join back threads before ending concurrent output so display works
...
I didn't really want to put allowConcurrentOutput in CmdLine.Action,
but there were dep loops and that was the best place available.
2015-11-05 17:23:26 -04:00
Joey Hess
e620073936
don't display blank regions once done
2015-11-04 16:58:19 -04:00
Joey Hess
340208f86b
remove some debug prints
2015-11-04 16:30:55 -04:00
Joey Hess
c0c595345c
arrange for regional output manager to run when -J is enabled
...
Commands that want to use it have to run their seek action inside
allowConcurrentOutput. Which seems reasonable; perhaps some future command
will want to support the -J flag but not use regions.
The region state moved from Annex to MessageState. This makes sense
organizationally, and note that some uses of onLocal use a different Annex
state, but pass the MessageState into it, which is what is needed.
2015-11-04 16:22:43 -04:00
Joey Hess
a4dd8503b8
add regions to concurrent output
...
still no progress displays when getting files etc, but a big improvement
2015-11-04 14:52:07 -04:00
Joey Hess
4fd03ccd7b
concurrent-output, first pass
...
Output without -Jn should be unchanged from before. With -Jn,
concurrent-output is used for messages, but regions are not used yet, so
it's a mess.
2015-11-04 13:45:34 -04:00
Joey Hess
67f7f1b1cb
info: Added json output for "backend usage", "numcopies stats", "repositories containing these files", and "transfers in progress".
2015-06-16 13:50:28 -04:00
Joey Hess
505d540360
allow building without ascii-progress, since it is not ready yet
...
No progress bars with -J unless built with ascii-progress.
2015-05-12 13:54:16 -04:00
Joey Hess
5e9f0a3493
reuse strings
2015-04-14 16:46:06 -04:00
Joey Hess
a5d89633c3
scale progress bar to terminal size
2015-04-14 16:39:30 -04:00
Joey Hess
a2902cdaaf
add filename to progress bar, and display ok/failed at end
...
This needed plumbing an AssociatedFile through retrieveKeyFileCheap.
2015-04-14 16:35:10 -04:00
Joey Hess
f8e700ed06
use built-in progress meters for git when in parallel mode
2015-04-10 15:15:21 -04:00
Joey Hess
a06f9ff329
WIP use ascii-progress
...
A bit flickery due to
https://github.com/yamadapc/haskell-ascii-progress/issues/12
And, won't handle large files until ascii-progress is changed to use
Integers.
2015-04-04 15:58:38 -04:00
Joey Hess
30aa902174
relay external special remote stderr through progress suppression machinery (eep!)
...
It sounds worse than it is. ;)
Some external special remotes may run commands that display progress on
stderr. If git-annex is run with --quiet, this should filter out such
displays while letting the errors through.
2015-04-04 14:54:03 -04:00
Joey Hess
2343f99c85
well along the way to fully quiet --quiet
...
Came up with a generic way to filter out progress messages while keeping
errors, for commands that use stderr for both.
--json mode will disable command outputs too.
2015-04-04 14:34:03 -04:00
Joey Hess
ff2eeaf054
avoid progress bar for url download with --quiet
2015-04-03 20:38:56 -04:00
Joey Hess
6d79378346
dead code
2015-04-03 20:10:32 -04:00
Joey Hess
d7f66a90af
reall disable progress displays for --quiet
2015-04-03 20:08:25 -04:00
Joey Hess
45e97191c3
fix stderr handling
2015-04-03 19:48:56 -04:00
Joey Hess
20fb91a7ad
WIP on making --quiet silence progress, and infra for concurrent progress bars
2015-04-03 16:48:30 -04:00
Joey Hess
afc5153157
update my email address and homepage url
2015-01-21 12:50:09 -04:00
Joey Hess
8a5b397ac4
hlint
2013-04-03 03:52:41 -04:00
Joey Hess
2172cc586e
where indenting
2012-11-11 00:51:07 -04:00
Joey Hess
fdf02986cf
find --json
2011-12-23 01:08:19 -04:00
Joey Hess
bfe38f8ff1
status --json --fast for esc
...
* status: Fix --json mode (only the repository lists are currently
displayed)
* status: --fast is back
2011-11-14 19:27:22 -04:00