Commit graph

32359 commits

Author SHA1 Message Date
Joey Hess
1272ccdf1e
git pkt-line format
Git uses pkt-line in the pack and http protocols, and for the long-running
filter processes protocol as well.

This should be a quite efficient parser and builder since it uses
attoparsec and bytestring-builder.

This adds a dependency on attoparsec, but it's a free dependency because
eg aeson depends on attoparsec and git-annex depends on aeson.

This commit was supported by the NSF-funded DataLad project.
2018-08-10 14:12:33 -04:00
Joey Hess
816e0e356b
devblog 2018-08-09 18:35:28 -04:00
Joey Hess
147a793f4b
one way to use this 2018-08-09 18:22:21 -04:00
Joey Hess
a96972015d
massive v6 add speed/memory improvement
v6 add: Take advantage of improved SIGPIPE handler in git 2.5 to speed up
the clean filter by not reading the file content from the pipe. This also
avoids git buffering the whole file content in memory.

When built with an older git, still consumes stdin. If built with a newer
git and used with an older one, it breaks, but that's acceptable --
checking the git version every time would make repeated smudge runs slow.

This commit was supported by the NSF-funded DataLad project.
2018-08-09 18:17:46 -04:00
Joey Hess
74551a430a
soften 2018-08-09 16:03:43 -04:00
Joey Hess
6de8bbaad9
followup 2018-08-09 16:01:48 -04:00
Joey Hess
63a81cd20a
response 2018-08-09 15:49:36 -04:00
Joey Hess
1f8e6d7e3a
hm 2018-08-09 15:44:01 -04:00
Joey Hess
0e04d9cfab
Merge branch 'master' of ssh://git-annex.branchable.com 2018-08-09 15:07:17 -04:00
Joey Hess
7b9762b6af
document converting from git to annex and back 2018-08-09 15:06:51 -04:00
yarikoptic
a18b9cb8be Added a comment: may be one more gitattribute to instruct on either conversion is desired for the file? 2018-08-09 18:59:56 +00:00
Joey Hess
adcca7ecd7
one more thought 2018-08-09 13:14:52 -04:00
Joey Hess
5b56ca32c6
typo 2018-08-09 13:10:31 -04:00
Joey Hess
42fcf59921
rethink and Q 2018-08-09 13:06:25 -04:00
Joey Hess
78ade9e6cf
a plan 2018-08-09 12:38:00 -04:00
Joey Hess
6eeeb2eea8
same root cause for this too 2018-08-09 12:15:38 -04:00
Joey Hess
29a52e1518
understand now 2018-08-09 12:08:30 -04:00
Joey Hess
7ed987f6ca
and 2018-08-09 12:05:51 -04:00
Joey Hess
fc2ffb414f
followup 2018-08-09 12:04:07 -04:00
Joey Hess
2719651c9c
Merge branch 'master' of ssh://git-annex.branchable.com 2018-08-09 11:08:50 -04:00
Yaroslav Halchenko
2cf30081bf
Use git describe output for defining sortable version for NeuroDebian snapshots
It largely reverts all the changes to the state of bfef0ba69f
to get a sortable version of git-annex-standalone package
2018-08-09 11:08:24 -04:00
yarikoptic
2a7484bdc6 initial report about failure to commit 2018-08-08 20:07:27 +00:00
Joey Hess
12460fcea6
make --batch honor matching options
When --batch is used with matching options like --in, --metadata, etc, only
operate on the provided files when they match those options. Otherwise, a
blank line is output in the batch protocol.

Affected commands: find, add, whereis, drop, copy, move, get

In the case of find, the documentation for --batch already said it honored
the matching options. The docs for the rest didn't, but it makes sense to
have them honor them. While this is a behavior change, why specify the
matching options with --batch if you didn't want them to apply?

Note that the batch output for all of the affected commands could
already output a blank line in other cases, so batch users should
already be prepared to deal with it.

git-annex metadata didn't seem worth making support the matching options,
since all it does is output metadata or set metadata, the use cases for
using it in combination with the martching options seem small. Made it
refuse to run when they're combined, leaving open the possibility for later
support if a use case develops.

This commit was sponsored by Brett Eisenberg on Patreon.
2018-08-08 12:07:06 -04:00
Joey Hess
54eb80e945
Merge branch 'master' of ssh://git-annex.branchable.com 2018-08-08 11:06:08 -04:00
Joey Hess
ec18b84bdb
moreinfo this 2018-08-08 11:05:05 -04:00
Joey Hess
0fd093485d
close 2018-08-08 11:03:43 -04:00
CandyAngel
56bce6a5cc 2018-08-07 23:18:09 +00:00
Joey Hess
93a0cee3ef
cleanupc 2018-08-07 16:29:21 -04:00
Joey Hess
3b2a3e8557
add news item for git-annex 6.20180807 2018-08-07 16:22:42 -04:00
Joey Hess
947599aad4
releasing package git-annex version 6.20180807 2018-08-07 16:22:16 -04:00
Joey Hess
218c76b789
avoid unused imports warning on non-linux 2018-08-07 15:06:33 -04:00
https://openid-provider.appspot.com/iakornfeld
48d11a5dfb Added a comment: Sorry 2018-08-07 14:12:20 +00:00
https://openid-provider.appspot.com/iakornfeld
797c3e14c4 removed 2018-08-07 14:08:12 +00:00
https://openid-provider.appspot.com/iakornfeld
0f70ee06db Added a comment: Yes 2018-08-07 14:07:56 +00:00
https://openid-provider.appspot.com/iakornfeld
1b80f89ef4 Added a comment: Yes 2018-08-07 14:07:38 +00:00
Joey Hess
2503cd63d0
prep release 2018-08-06 20:30:38 -04:00
Joey Hess
4c918437ab
Fix git-annex branch data loss that could occur after git-annex forget --drop-dead
Added getStaged, to get the versions of git-annex branch files staged in its
index, and use during transitions so the result of merging sibling branches
is used.

The catFileStop in performTransitionsLocked is absolutely necessary,
without that the bug still occurred, because git cat-file was already
running and was looking at the old index file.

Note that getLocal still has cat-file look at the git-annex branch, not the
index. It might be faster if it looked at the index, but probably only
marginally so, and I've not benchmarked it to see if it's faster at all. I
didn't want to change unrelated behavior as part of this bug fix. And as
the need for catFileStop shows, using the index file has added
complications.

Anyway, it still seems fine for getLocal to look at the git-annex branch,
because normally the index file is updated just before the git-annex branch
is committed, and so they'll contain the same information. It's only during
a transition that the two diverge.

This commit was sponsored by Paul Walmsley in honor of Mark Phillips.
2018-08-06 17:36:30 -04:00
Joey Hess
b221cc0434
Merge branch 'master' of ssh://git-annex.branchable.com 2018-08-06 15:49:00 -04:00
Joey Hess
4d4d238a08
add missing type signature 2018-08-06 15:41:44 -04:00
mbekkema97@66b135681014f005a3a14c4011d148fcb6655f81
2010e98ebf 2018-08-06 18:18:31 +00:00
Joey Hess
38ddd6072d
addurl: Include filename in --json-progress output when known. 2018-08-06 12:53:44 -04:00
Joey Hess
e5a8d5effa
close 2018-08-06 12:50:29 -04:00
Joey Hess
5c5259db7c
followup 2018-08-06 11:56:55 -04:00
Joey Hess
634aefebd4
comment 2018-08-06 11:54:03 -04:00
Joey Hess
df72b2584a
already implmeneted 2018-08-06 11:29:22 -04:00
Joey Hess
efd5c2704e
update 2018-08-05 21:37:16 -04:00
Joey Hess
f6b449eb3e
type signature 2018-08-04 14:21:30 -04:00
Joey Hess
e51510b819
Merge branch 'master' of ssh://git-annex.branchable.com 2018-08-04 10:24:09 -04:00
Joey Hess
9366fae13a
remove debian/cabal-wrapper
No longer used in either the upstream debian/ or debian's debian/
2018-08-04 10:22:55 -04:00
Yaroslav Halchenko
37a9d2572b
BF: debian/rules -- use BUILDER=./Setup to avoid network access
per Joey's recommendation
original cabal issue/reason: https://github.com/haskell/cabal/issues/5363

Seems to build ok now even on buster.
2018-08-04 10:18:58 -04:00