Commit graph

3254 commits

Author SHA1 Message Date
Joey Hess
aeca7c2207
Sped up query commands that read the git-annex branch by around 5%
The only price paid is one additional MVar read per write to the journal.
Presumably writing a journal file dominiates over a MVar read time by
several orders of magnitude.

--batch does not get the speedup because then it needs to notice when
another process has made a change. Also made the assistant and other damon
modes bypass the optimisation, which would not help them anyway.
2020-04-09 13:54:43 -04:00
Joey Hess
c0cd07c36b
Ref ByteString conversion done
Test suite passes.
2020-04-07 17:41:09 -04:00
lykos@d125a37d89b1cfac20829f12911656c40cb70018
d27a94eec0 Added a comment 2020-03-26 20:36:28 +00:00
Joey Hess
a0d274fed6
Merge branch 'master' of ssh://git-annex.branchable.com 2020-03-25 13:05:47 -04:00
Joey Hess
357f783edf
add priority tags 2020-03-25 13:05:09 -04:00
spwhitton
79ba17946f Added a comment 2020-03-25 16:31:13 +00:00
Joey Hess
24255b3c96
confirmed, and open todo for something mentioned in this bug 2020-03-20 12:00:07 -04:00
thk
677e5f6e12 Added a comment: sponsoring? 2020-03-19 08:40:32 +00:00
Joey Hess
cb6604814c
close 2020-03-16 14:16:55 -04:00
Joey Hess
94e1f02e0c
comment 2020-03-16 14:15:00 -04:00
Joey Hess
c913f57d05
comment 2020-03-16 14:08:49 -04:00
Ilya_Shlyakhter
05df404212 Added a comment: gsasl dependency 2020-03-11 22:13:47 +00:00
spwhitton
e36d6ebe53 report bug 2020-03-11 21:41:21 +00:00
Joey Hess
b2c4ca6da1
comment 2020-03-09 12:33:35 -04:00
Joey Hess
6eb52cf5f1
Merge branch 'master' of ssh://git-annex.branchable.com 2020-03-09 12:07:03 -04:00
Ilya_Shlyakhter
5dedcc9953 added todo: add option to disable fsck upgradable key warnings 2020-03-07 21:01:41 +00:00
thk
98e7a6078b Added a comment: No clear error message for failing names on NTFS 2020-03-07 12:50:19 +00:00
Joey Hess
e87dc1341e
link to upstream bug report 2020-03-06 13:52:48 -04:00
thk
db9958bfc8 Added a comment: Also no clear error for permission problems 2020-03-06 17:51:20 +00:00
Joey Hess
093fde5abd
completed the createDirectoryIfMissing conversion
Remaining calls in the assistant and Annex.Ssh have been audited and are ok.
2020-03-06 12:55:03 -04:00
Joey Hess
6d58ca94d6
some easy createDirectoryUnder conversions 2020-03-05 15:20:10 -04:00
Joey Hess
5b022eea87
implemented createDirectoryUnder 2020-03-05 14:10:34 -04:00
Ilya_Shlyakhter
aa91792d41 Added a comment 2020-03-04 21:34:42 +00:00
Joey Hess
97a8ce0191
comment 2020-03-04 17:12:10 -04:00
Ilya_Shlyakhter
8f48ebd8c2 added todo: restore original environment when running external special remotes from standalone git-annex? 2020-03-04 17:39:02 +00:00
amerlyq+annex@12121d70a602f094228689a0a24d348d478a8af1
4da2a67bbe Added a comment: re: shorter symlinks 2020-03-04 00:48:02 +00:00
Joey Hess
dd89832700
comment 2020-03-02 15:02:22 -04:00
Joey Hess
701f8cb00b
comment 2020-03-02 14:52:02 -04:00
Ilya_Shlyakhter
54d77e94ba Added a comment: adding dotfiles 2020-02-29 21:35:06 +00:00
spwhitton
a025dc23af Added a comment 2020-02-29 16:34:16 +00:00
Ilya_Shlyakhter
4faf850106 added todo suggestion: trust presence info for specific remotes for specified time 2020-02-28 20:14:26 +00:00
Joey Hess
41cb7e90a6
comment 2020-02-28 15:32:50 -04:00
Ilya_Shlyakhter
02f3abb142 added todo request: restore --include-dotfiles as a no-op for backwards compatibility 2020-02-28 18:29:43 +00:00
Joey Hess
2203b0e910
comment 2020-02-28 14:18:09 -04:00
Ilya_Shlyakhter
957dc80c3f Added a comment: batch presence checking 2020-02-27 20:33:44 +00:00
lykos@d125a37d89b1cfac20829f12911656c40cb70018
2d3ef2c079 Added a comment 2020-02-27 13:12:28 +00:00
lykos@d125a37d89b1cfac20829f12911656c40cb70018
d31fd6cd42 2020-02-27 08:54:34 +00:00
Joey Hess
64639ff9b1
followup and close 2020-02-26 18:29:06 -04:00
Joey Hess
5de1abf3da
todo 2020-02-25 17:44:03 -04:00
Joey Hess
3497e9e510
comment 2020-02-25 16:16:18 -04:00
Joey Hess
9659f1c30f
annex.security.allowed-ip-addresses ports syntax
Extended annex.security.allowed-ip-addresses to let specific ports of an IP
address to be used, while denying use of other ports.
2020-02-25 15:45:52 -04:00
Joey Hess
4316d92b48
comment 2020-02-25 14:38:55 -04:00
Joey Hess
bd8481b23d
comment 2020-02-25 12:46:01 -04:00
Ilya_Shlyakhter
370ce884f3 added todo suggestion: create debug logs but erase them on success 2020-02-24 22:37:51 +00:00
Dan
93af53f0fc Added a comment: Interaction with config annex.synccontent 2020-02-24 21:34:53 +00:00
yarikoptic
00cbbe2789 original TODO for more flexible security.allowed-ip-addresses 2020-02-21 00:04:30 +00:00
admin
d1fe9d0d2a Merge branch 'master' of /home/b-git-annex/source 2020-02-20 20:48:37 +00:00
Ilya_Shlyakhter
1b0685eac1 Added a comment: running parallel commands with xargs 2020-02-20 20:48:36 +00:00
Joey Hess
7f96801642
improve 2020-02-20 16:01:38 -04:00
Joey Hess
f2a925a3f5
comment 2020-02-20 14:45:12 -04:00
Joey Hess
0f9bf2d434
comments 2020-02-20 12:40:34 -04:00
Joey Hess
de144d3867
clean up 2020-02-19 15:04:31 -04:00
Joey Hess
029c883713
Merge branch 'master' into v8 2020-02-19 14:32:11 -04:00
Ilya_Shlyakhter
0ae1a3335e Added a comment: thanks 2020-02-18 20:00:17 +00:00
Joey Hess
c4a1b04e8b
comment 2020-02-18 12:51:59 -04:00
Dan
216c2154ec Added a comment: An overdue and overlong reply 2020-02-17 22:59:22 +00:00
Joey Hess
a78eb6dd58
sync --only-annex and annex.synconlyannex
* Added sync --only-annex, which syncs the git-annex branch and annexed
  content but leaves managing the other git branches up to you.
* Added annex.synconlyannex git config setting, which can also be set with
  git-annex config to configure sync in all clones of the repo.

Use case is then the user has their own git workflow, and wants to use
git-annex without disrupting that, so they sync --only-annex to get the
git-annex stuff in sync in addition to their usual git workflow.

When annex.synconlyannex is set, --not-only-annex can be used to override
it.

It's not entirely clear what --only-annex --commit or --only-annex
--push should do, and I left that combination not documented because I
don't know if I might want to change the current behavior, which is that
such options do not override the --only-annex. My gut feeling is that
there is no good reasons to use such combinations; if you want to use
your own git workflow, you'll be doing your own committing and pulling
and pushing.

A subtle question is, how should import/export special remotes be handled?
Importing updates their remote tracking branch and merges it into master.
If --only-annex prevented that git branch stuff, then it would prevent
exporting to the special remote, in the case where it has changes that
were not imported yet, because there would be a unresolved conflict.

I decided that it's best to treat the fact that there's a remote tracking
branch for import/export as an implementation detail in this case. The more
important thing is that an import/export special remote is entirely annexed
content, and so it makes a lot of sense that --only-annex will still sync
with it.
2020-02-17 16:33:10 -04:00
Joey Hess
96eb008910
comment 2020-02-17 13:42:21 -04:00
Joey Hess
d04e6aac6c
comment 2020-02-17 12:26:09 -04:00
Joey Hess
d2e0996c04
comment 2020-02-17 12:04:54 -04:00
Joey Hess
ef3e203436
comment 2020-02-17 11:56:08 -04:00
yarikoptic
0af85edb58 Added a comment 2020-02-14 17:20:29 +00:00
yarikoptic
8214da5715 Initial TODO on making --whatelse machine readable 2020-02-14 17:18:37 +00:00
Dan
6d82045149 Added a comment: Still wanted (update with example) 2020-02-13 20:08:48 +00:00
chkno@50332f55d5ef2f4b7c6bec5253b853a8f2dc770e
9e7ce2076f Added a comment: Three union-mounting methods that *don't* work 2020-02-08 06:21:05 +00:00
Ilya_Shlyakhter
83fb031460 Added a comment: potential security issues? 2020-02-06 21:00:57 +00:00
lykos@d125a37d89b1cfac20829f12911656c40cb70018
227206c089 2020-02-06 06:56:41 +00:00
Ilya_Shlyakhter
5c57440482 Added a comment: example of where retries could help 2020-02-05 22:19:30 +00:00
Ilya_Shlyakhter
28dc7d01de Added a comment: retries due to locked index file 2020-02-05 16:59:44 +00:00
Ilya_Shlyakhter
8db097e081 Added a comment: aborting stuck operations so they can be retried 2020-02-05 16:39:40 +00:00
https://christian.amsuess.com/chrysn
1a306aea34 Added a comment: union mounting and hidemissing 2020-02-04 09:01:53 +00:00
chkno@50332f55d5ef2f4b7c6bec5253b853a8f2dc770e
3367266cdb Added a comment: Interim shell script 2020-02-04 07:26:11 +00:00
chkno@50332f55d5ef2f4b7c6bec5253b853a8f2dc770e
5996fc6df0 removed 2020-02-04 07:16:20 +00:00
chkno@50332f55d5ef2f4b7c6bec5253b853a8f2dc770e
36623e963e Added a comment: Interim shell scripts 2020-02-04 06:43:04 +00:00
annex2384@290036d126d86bcec28ee2f2ead549de1f59e90e
b44b35da63 Added a comment: Similar use case 2020-02-04 03:48:40 +00:00
Chel
2198ba76f7 Added a comment 2020-02-01 02:55:07 +00:00
Chel
b65d7f3d04 Added a comment 2020-02-01 02:32:02 +00:00
Ilya_Shlyakhter
8d3364265e Added a comment: simpler proposal 2020-01-31 21:46:58 +00:00
Ilya_Shlyakhter
36e298daff Added a comment 2020-01-31 20:32:01 +00:00
https://christian.amsuess.com/chrysn
8ae290623e Added a comment: Re: comment 1 2020-01-31 19:48:02 +00:00
Ilya_Shlyakhter
76a432dacc Added a comment: alternate keys 2020-01-31 19:23:38 +00:00
anarcat
21f58eeb3d link to the xxhash todo 2020-01-30 19:46:11 +00:00
Joey Hess
6f7a09c50f
fix quoting 2020-01-30 15:44:11 -04:00
Joey Hess
4131b7da04
fix inline 2020-01-30 15:40:46 -04:00
Joey Hess
a767622ad8
list of confirmed todos
aka, an actual todo list again
2020-01-30 15:37:21 -04:00
Joey Hess
b238f5e2a9
comment 2020-01-30 15:27:00 -04:00
Joey Hess
cffa2446e8
tagged the past 2 years of open todos and followed up to a few of them
also moved some that were really bug reports to bugs/ and closed a
couple
2020-01-30 15:22:05 -04:00
Joey Hess
c08d5612ee
correction 2020-01-30 13:04:53 -04:00
Joey Hess
962f1f2363
mention limitation of --known 2020-01-30 12:54:15 -04:00
Joey Hess
18efb40c85
comment 2020-01-30 12:49:00 -04:00
Joey Hess
103eb66fdb
comment 2020-01-30 12:43:31 -04:00
Joey Hess
be417c847c
Merge branch 'master' of ssh://git-annex.branchable.com 2020-01-30 12:41:17 -04:00
Joey Hess
e2ac9cf521
already fixed 2020-01-30 12:40:39 -04:00
Joey Hess
1427203226
comment 2020-01-30 11:42:36 -04:00
Ilya_Shlyakhter
9be407d49a Added a comment: use case to record chunked state 2020-01-29 17:48:43 +00:00
Joey Hess
f746a65877
more tagging 2020-01-29 11:34:14 -04:00
Joey Hess
1a0071f4d5
tagging todo items 2020-01-29 11:28:32 -04:00
Joey Hess
281bf13236
comment 2020-01-29 10:44:43 -04:00
https://christian.amsuess.com/chrysn
d2bc23487a Added a comment: Re: use of RAM disk 2020-01-29 07:49:12 +00:00
Ilya_Shlyakhter
8789697805 Added a comment: chunks and checksums 2020-01-28 18:20:36 +00:00
Ilya_Shlyakhter
486a0b236d Added a comment: use of RAM disk 2020-01-28 17:23:32 +00:00
https://christian.amsuess.com/chrysn
5f7be42858 Added a comment: Use of the RAM disk 2020-01-28 14:03:18 +00:00
Ilya_Shlyakhter
f2c13f73c9 added todo request: setpresentkey option to record chunked state 2020-01-27 20:28:46 +00:00
Ilya_Shlyakhter
2b1357bcc8 added suggestion: option to put temp files on a RAM disk 2020-01-27 18:24:44 +00:00
Ilya_Shlyakhter
9dd0de11eb added todo: let external remotes declare support for named pipes 2020-01-27 01:22:10 +00:00
Chel
99ead7bcf4 Added a comment 2020-01-26 22:48:09 +00:00
Joey Hess
5c6bf1be97
--whatelse is a better name than --describe-other-params
The use case is basically the user having forgotten, so --help would be
best, but it would be quite hard to include this in --help, since it may
even have to spin up an external special remote program.

I also considered --umm but typoed it the first time I tried it as
--uum, and while memorable, it's too cutesy. --whatelse is good because
it explicitly asks, what other params, besides the ones I've given?
2020-01-20 17:04:45 -04:00
Joey Hess
2be4122bfc
include passthrough params in --describe-other-params 2020-01-20 16:53:27 -04:00
Joey Hess
0b6fb506eb
Merge branch 'master' of ssh://git-annex.branchable.com 2020-01-17 17:30:09 -04:00
Joey Hess
b1c224dd48
done 2020-01-17 17:18:44 -04:00
yarikoptic
c1e2389e8e moving under datalad project, since I do not see explicit repronim-specific use case addressed 2020-01-17 17:32:08 +00:00
Joey Hess
8017f41476
Merge branch 'master' of ssh://git-annex.branchable.com 2020-01-15 14:16:27 -04:00
Joey Hess
ba518c625c
comment 2020-01-15 14:08:58 -04:00
kyle
76aa98ce83 Added a comment: re: what am I doing wrong? 2020-01-14 03:19:22 +00:00
yarikoptic
0fa983803f Added a comment: what am I doing wrong? 2020-01-13 20:05:40 +00:00
Joey Hess
4a135934ff
Merge branch 'master' of ssh://git-annex.branchable.com 2020-01-10 14:53:00 -04:00
Joey Hess
71ecfbfccf
be stricter about rejecting invalid configurations for remotes
This is a first step toward that goal, using the ProposedAccepted type
in RemoteConfig lets initremote/enableremote reject bad parameters that
were passed in a remote's configuration, while avoiding enableremote
rejecting bad parameters that have already been stored in remote.log

This does not eliminate every place where a remote config is parsed and a
default value is used if the parse false. But, I did fix several
things that expected foo=yes/no and so confusingly accepted foo=true but
treated it like foo=no. There are still some fields that are parsed with
yesNo but not not checked when initializing a remote, and there are other
fields that are parsed in other ways and not checked when initializing a
remote.

This also lays groundwork for rejecting unknown/typoed config keys.
2020-01-10 14:52:48 -04:00
https://christian.amsuess.com/chrysn
0207c44201 Added a comment: Summary; Application: shared thumbnails 2020-01-10 08:41:20 +00:00
Joey Hess
f735efc22c
comment 2020-01-09 16:54:11 -04:00
Joey Hess
e07a2d81d1
comment 2020-01-08 14:26:48 -04:00
Ilya_Shlyakhter
fdaa4e841a Added a comment: git-annex in docker on Windows 2020-01-08 16:16:32 +00:00
michael.hanke@c60e12358aa3fc6060531bdead1f530ac4d582ec
ac8139edc0 Added a comment: WSL 1/2 experience 2020-01-08 15:20:07 +00:00
Joey Hess
8aa6f60fc3
plan 2020-01-07 14:27:53 -04:00
spwhitton
6a47c66388 Added a comment 2020-01-07 12:29:49 +00:00
Joey Hess
b5fc1b97f7
Merge branch 'master' of ssh://git-annex.branchable.com 2020-01-06 15:40:48 -04:00
Joey Hess
6db883d6db
comment 2020-01-06 15:39:50 -04:00
Joey Hess
1bd7ec6f06
fix typo in close 2020-01-06 15:35:11 -04:00
Joey Hess
4bb3d76c8c
comment 2020-01-06 15:33:06 -04:00
Joey Hess
0cb3bcbcb5
comment 2020-01-06 15:29:51 -04:00
yarikoptic
aec7892a9f Added a comment 2020-01-06 19:27:23 +00:00
Joey Hess
128ecac047
close, redundant 2020-01-06 14:44:37 -04:00
Joey Hess
6456672feb
comment and close 2020-01-06 14:42:40 -04:00
Joey Hess
ba0150ebba
comments 2020-01-06 14:33:29 -04:00
Joey Hess
2de3dddfd2
reinject --known: Fix bug that prevented it from working in a bare repo.
ifAnnexed in a bare repo passes to git cat-file :./filename , which it
refuses to do since the repo is bare.

Note that, reinject somefile someannexedfile in a bare repo silently does
nothing, because someannexedfile is never actually an annexed worktree
file, because the repo is bare.
2020-01-06 14:22:22 -04:00
Joey Hess
d9ed94f15b
comment 2020-01-06 13:59:03 -04:00
Joey Hess
84960da522
comment 2020-01-06 13:24:39 -04:00
Joey Hess
a9086df1e7
update
Removed some encoding issues that I think are no longer a problem.
2020-01-06 13:06:10 -04:00
Joey Hess
0c904bdf5d
comment 2020-01-06 13:06:06 -04:00
Joey Hess
491a2fd72f
Merge branch 'master' of ssh://git-annex.branchable.com 2020-01-06 12:55:26 -04:00
Joey Hess
d19dbdb05e
comment 2020-01-06 12:52:59 -04:00
AdamSpiers
d5ab0ec1cc Added a comment: Would you accept a patch implementing an annex.autocommit gitattribute? 2020-01-06 16:12:54 +00:00
yarikoptic
d734068724 a new TODO for having windows build with MagicMime 2020-01-04 04:25:48 +00:00
Joey Hess
bc70a8b3f6
comments 2020-01-01 15:03:01 -04:00
Joey Hess
2cea674d1e
Merge branch 'master' into v8 2020-01-01 14:26:43 -04:00
Joey Hess
503788238c
add --force-annex/--force-git
options make it easier to override annex.largefiles configuration
(and potentially safer as it avoids bugs like the smudge bug fixed
in the last release)

Deleted some old comments that were posted to the man page discussing such
options.

Updated docs that used -c annex.largefiles to use the options.

Note that addSmallOverridden was needed to avoid the clean filter running
on the file. It would be possible to make addFile also update the index
directly, rather than going via git add. However, it was not necessary,
and I want to avoid breaking on some edge case, particularly if the code in
addSmallOverridden has some oversight.

Also, when annex.addunlocked is set and annex.largefiles does not match a file,
git annex add --force-large works, but git status will then show the file
as added, with a unstaged modification. The unstaged modification adds the
file to git. This is identical behavior to using -c annex.largefiles=nothing
when annex.addunlocked is set. This does not prevent committing what was
intended to be added. I have not gotten to the bottom of why git thinks
the file is modified and runs it through the clean filter in this case.
2020-01-01 14:03:06 -04:00
Ilya_Shlyakhter
98b5762963 Added a comment: named pipes and external remotes 2019-12-31 01:38:03 +00:00
Joey Hess
8ea9f1bc5c
comment 2019-12-30 14:36:04 -04:00
Joey Hess
ea3cb7d277
fix a case where file tracked by git unexpectedly becomes annex pointer file
smudge: When annex.largefiles=anything, files that were already stored in
git, and have not been modified could sometimes be converted to being
stored in the annex. Changes in 7.20191024 made this more of a problem.
This case is now detected and prevented.
2019-12-27 15:08:03 -04:00
Joey Hess
4176b335a6
implelented in v8 2019-12-26 16:39:27 -04:00
Joey Hess
3cd3757236
annex.dotfiles
The git add behavior changes could be avoided if it turns out to be
really annoying, but then it would need to behave the old way when
annex.dotfiles=false and the new way when annex.dotfiles=true. I'd
rather not have the config option result in such divergent behavior as
`git annex add .` skipping a dotfile (old) vs adding to annex (new).

Note that the assistant always adds dotfiles to the annex.
This is surprising, but not new behavior. Might be worth making it also
honor annex.dotfiles, but I wonder if perhaps some user somewhere uses
it and keeps large files in a directory that happens to begin with a
dot. Since dotfiles and dotdirs are a unix culture thing, and the
assistant users may not be part of that culture, it seems best to keep
its current behavior for now.
2019-12-26 16:33:39 -04:00
Joey Hess
2b821eb225
Merge branch 'master' into sqlite 2019-12-26 15:15:42 -04:00
spwhitton
d107ce1e77 Added a comment 2019-12-21 23:03:46 +00:00
spwhitton
01b8eb5e3d add workaround 2019-12-21 22:20:31 +00:00
spwhitton
72c5f9132c report bug 2019-12-21 22:11:38 +00:00
spwhitton
1a5e29c47c fix copy/paste mistake 2019-12-21 04:20:40 +00:00
spwhitton
501492a40a file bug 2019-12-21 04:19:56 +00:00
Joey Hess
37467a008f
annex.addunlocked expressions
* annex.addunlocked can be set to an expression with the same format used by
  annex.largefiles, in case you want to default to unlocking some files but
  not others.
* annex.addunlocked can be configured by git-annex config.

Added a git-annex-matching-expression man page, broken out from
tips/largefiles.

A tricky consequence of this is that git-annex add --relaxed
honors annex.addunlocked, but an expression might want to know the size
or content of an url, which it's not going to download. I decided it was
better not to fail, and just dummy up some plausible data in that case.

Performance impact should be negligible. The global config is already
loaded for annex.largefiles. The expression only has to be parsed once,
and in the simple true/false case, it should not do any additional work
matching it.
2019-12-20 15:56:25 -04:00
Joey Hess
7d50e98646
thought 2019-12-19 16:44:08 -04:00
Joey Hess
02e00fd7ab
Merge branch 'master' into sqlite 2019-12-19 16:33:42 -04:00
Joey Hess
e8651fbd09
comment 2019-12-19 13:39:08 -04:00
Joey Hess
37db1fa5a0
Merge branch 'bs' 2019-12-19 13:12:39 -04:00
Joey Hess
96a8b2d095
typo 2019-12-19 12:52:56 -04:00
Joey Hess
2e34516e6a
formatting 2019-12-19 12:52:12 -04:00
Joey Hess
09272507c1
comment 2019-12-19 12:50:34 -04:00
Joey Hess
67ae6ddecb
comment 2019-12-19 12:06:59 -04:00
Joey Hess
686791c4ed
more RawFilePath
Remove dup definitions and just use the RawFilePath one. </> etc are
enough faster that it's probably faster than building a String directly,
although I have not benchmarked.
2019-12-18 17:10:28 -04:00
Joey Hess
9e9def2dc0
todo 2019-12-18 16:11:18 -04:00
Joey Hess
7b7e0d8a86
wrap up 2019-12-18 15:19:19 -04:00
Joey Hess
f6c18f6940
Merge branch 'bs' into sqlite-bs 2019-12-18 15:14:44 -04:00
Joey Hess
7d9dff5b05
Merge branch 'master' into bs
and update changelog
2019-12-18 15:13:30 -04:00
Joey Hess
d5628a16b8
Merge branch 'bs' into sqlite-bs 2019-12-18 14:51:03 -04:00
Ilya_Shlyakhter
f2052f67fb Added a comment: named pipes as destination files 2019-12-18 18:41:57 +00:00
Joey Hess
7fd5376334
inprogress: Support --key 2019-12-18 14:14:16 -04:00
Joey Hess
92c566f1b2
comment 2019-12-18 13:52:43 -04:00
Joey Hess
c745fa2852
Merge branch 'master' into bs 2019-12-18 13:47:27 -04:00
Joey Hess
75c40279c1
use conversion functions from filepath-bytestring
Behavior should be the same, but I'd hope to eventually get rid of
most of Utility.FileSystemEncoding and this is a first step.
2019-12-18 13:42:43 -04:00
Joey Hess
0246ecbe94
update 2019-12-18 12:15:06 -04:00
Joey Hess
3d38ec9585
fix fileJournal
My ByteString rewrite oversimplified it, resulting in any _ in a journal
file turning into a / in the git-annex branch, which was often the wrong
filename, or sometimes (//) an invalid filename that git
refused to add.
2019-12-18 11:29:34 -04:00
spwhitton
53fdd34f79 add todo 2019-12-18 05:17:42 +00:00
https://christian.amsuess.com/chrysn
418890c5cb ask for --key on git-annex-inprogress 2019-12-17 09:21:52 +00:00
https://christian.amsuess.com/chrysn
1653957166 Added a comment: Would be useful 2019-12-17 09:08:09 +00:00
Joey Hess
8ed171c69f
more info for debugging 2019-12-11 17:12:13 -04:00
Joey Hess
7a41f94e84
add test case for bug 2019-12-11 17:09:50 -04:00
Joey Hess
2e4de42d55
bug in this branch 2019-12-11 17:08:26 -04:00
Joey Hess
c19211774f
use filepath-bytestring for annex object manipulations
git-annex find is now RawFilePath end to end, no string conversions.
So is git-annex get when it does not need to get anything.
So this is a major milestone on optimisation.

Benchmarks indicate around 30% speedup in both commands.

Probably many other performance improvements. All or nearly all places
where a file is statted use RawFilePath now.
2019-12-11 15:25:07 -04:00
Ilya_Shlyakhter
8b07ab553f Added a comment: annex-verify 2019-12-11 18:13:48 +00:00
yarikoptic
0c4bb02877 Added a comment 2019-12-10 22:01:13 +00:00
Joey Hess
2f9a80d803
merging sqlite and bs branches
Since the sqlite branch uses blobs extensively, there are some
performance benefits, ByteStrings now get stored and retrieved w/o
conversion in some cases like in Database.Export.
2019-12-06 15:30:45 -04:00
Joey Hess
3d936e4343
update re state of bs branch 2019-12-06 15:13:36 -04:00
Joey Hess
8051deb352
update re state of bs branch 2019-12-06 15:13:13 -04:00
Joey Hess
c7a4411e71
Merge branch 'master' into bs 2019-12-05 11:41:30 -04:00
Joey Hess
b88f89c1ef
get the most commonly used commands building again
A quick benchmark of whereis shows not much speed improvement, maybe a
few percent. Profiling it found a hotspot, adds to todo.
2019-12-04 13:45:18 -04:00
remyabel@65018526f3b5d4c0d36e4b970aacc540e590bf23
7475a647f3 removed 2019-11-30 21:41:23 +00:00
remyabel@65018526f3b5d4c0d36e4b970aacc540e590bf23
d4e5c8e677 2019-11-30 19:51:42 +00:00
yarikoptic
9b5240ce83 Added a comment: reference original bug report 2019-11-29 17:58:29 +00:00
Joey Hess
d7833def66
use ByteString for git config
The parser and looking up config keys in the map should both be faster
due to using ByteString.

I had hoped this would speed up startup time, but any improvement to
that was too small to measure. Seems worth keeping though.

Note that the parser breaks up the ByteString, but a config map ends up
pointing to the config as read, which is retained in memory until every
value from it is no longer used. This can change memory usage
patterns marginally, but won't affect git-annex.
2019-11-27 17:40:09 -04:00
Ilya_Shlyakhter
7d3750682b git-annex-cat 2019-11-27 18:16:35 +00:00
Joey Hess
d830386ab2
update based on profiling
While L.toStrict copies, profiling showed it was only around 0.3% of
git-annex find runtime. Does not seem worth optimising that, which would
probably involve either a major refactoring, or a use of
UnsafeInterleaveIO.

Also, it seems to me that the latter would need to read chunks, and
preappend the leftover part to the next chunk. But a strict ByteString
append itself is a copy, so I'm not convinced that would be faster than
L.toStrict.
2019-11-27 14:09:11 -04:00
Ilya_Shlyakhter
9f4b99a0e7 Added a comment: parallelization 2019-11-27 17:23:15 +00:00
Ilya_Shlyakhter
a27ffd3aec Added a comment: representing paths 2019-11-27 15:08:41 +00:00
Joey Hess
a2b566be29
Merge branch 'master' of ssh://git-annex.branchable.com 2019-11-26 16:12:53 -04:00
Joey Hess
3361edfb61
todo for bs branch 2019-11-26 16:11:55 -04:00
Ilya_Shlyakhter
dd58cfd8e1 Added a comment: use named pipes? 2019-11-25 16:45:27 +00:00
yarikoptic
70172712a5 initial idea on joint "get+checksum" 2019-11-25 03:26:23 +00:00
Ilya_Shlyakhter
1f035c0d66 Added a comment: even git mv -f seems to work correctly 2019-11-24 17:25:32 +00:00
Ilya_Shlyakhter
20da59f62f Added a comment: moving unlocked file onto locked file isn't possible 2019-11-24 16:36:24 +00:00
Joey Hess
4cc6985494
todo 2019-11-22 19:47:53 -04:00
Joey Hess
7263aafd2b
Merge branch 'master' into sqlite 2019-11-22 12:49:35 -04:00
Joey Hess
93789cbf40
close as dup 2019-11-22 12:11:04 -04:00
Joey Hess
cf2e23d39c
close not viable 2019-11-22 12:10:59 -04:00
Joey Hess
d4661959de
Merge branch 'master' into sqlite 2019-11-21 17:26:50 -04:00
Joey Hess
64e21f683c
Merge branch 'master' of ssh://git-annex.branchable.com 2019-11-19 14:13:22 -04:00
Joey Hess
c0117044ae
todo 2019-11-19 14:13:01 -04:00
Ilya_Shlyakhter
0822ee52dd Added a comment: import/export 2019-11-19 17:39:47 +00:00
Joey Hess
3b64e35694
comments 2019-11-19 13:19:45 -04:00
Joey Hess
581eb7a3de
comments 2019-11-19 13:07:54 -04:00
Joey Hess
49cf86cfc0
Merge branch 'master' of ssh://git-annex.branchable.com 2019-11-18 16:27:17 -04:00
Joey Hess
b207d944f3
sync, assistant: Pull and push from git-lfs remotes.
Oversight, forgot to add it to gitSyncableRemote
2019-11-18 16:13:21 -04:00
Joey Hess
5877de5e80
git-lfs: remember urls, and autoenable remotes using known urls
* git-lfs: The url provided to initremote/enableremote will now be
  stored in the git-annex branch, allowing enableremote to be used without
  an url. initremote --sameas can be used to add additional urls.
* git-lfs: When there's a git remote with an url that's known to be
  used for git-lfs, automatically enable the special remote.
2019-11-18 16:09:09 -04:00
Joey Hess
d06b5bcd7b
todo 2019-11-18 13:57:16 -04:00
stefan.huchler@5f110ab85a15aec7e2b38586eb7ec37b12e2e6aa
7fd870d78b 2019-11-16 05:53:02 +00:00
Ilya_Shlyakhter
4b5040818b added todo "change git-annex-import not to delete original files by default" 2019-11-15 18:53:16 +00:00
yarikoptic
58be3af084 Added a comment 2019-11-13 04:41:56 +00:00
Joey Hess
3129923867
comment 2019-11-12 16:37:24 -04:00
Ilya_Shlyakhter
41bb14a885 added todo about documenting sqlite database schemas 2019-11-10 23:27:57 +00:00
Ilya_Shlyakhter
b7a3ba9434 Added a comment: limiting clean/smudge filter to unlocked files 2019-11-08 19:48:11 +00:00
yarikoptic
ea7959353e Added a comment: RFC: how would it work for regular git remote + special remote 2019-11-08 19:19:19 +00:00
Joey Hess
446ce47038
Merge branch 'master' into sqlite 2019-11-07 13:26:45 -04:00
Joey Hess
8f276f33b7
update status of sqlite branch 2019-11-07 13:26:05 -04:00
Joey Hess
3553867b66
v7 to v8 auto-upgrade
bump version to 8

and update NEWS about it
2019-11-07 13:24:16 -04:00
Joey Hess
cefdea8073
results of more testing 2019-11-07 13:10:39 -04:00
Joey Hess
2f94b5419a
use new name for new format export dbs
Delete the old export dbs on upgrade.

Testing this an exporting to a directory with both exporttree=yes and
importtree=yes, it refused to let an interrupted export proceed after
upgrade, with "unsafe to overwrite file". An import resolved the
problem.
2019-11-06 17:34:15 -04:00
Joey Hess
3b820f08f7
use new name for new format content identifier db
It will be populated automatically by the next command that needs data
from it, the same way it gets populated in a fresh clone. That may be a
little expensive, but it's a one time cost, and no slower than in a
fresh clone.
2019-11-06 16:43:52 -04:00
Joey Hess
1b5f4b67b5
use new name for new format fsck db
The old db is cleaned up when a new incremental fsck is started.

The incremental fsck won't pick up where the old one left off, but I
consider this a minor enough thing that it can just be documented and
won't be a problem.
2019-11-06 16:27:25 -04:00
Joey Hess
89bdcffdfa
found a way to extract InodeCache from git index
This will allow a race-free database transition. It is somewhat hairy in
that it depends on an unspecified git output format.
2019-11-06 14:23:00 -04:00
Joey Hess
6147130e86
Merge branch 'master' into sqlite 2019-11-05 12:59:28 -04:00
Joey Hess
41825195ba
Merge branch 'master' of ssh://git-annex.branchable.com 2019-11-05 12:51:50 -04:00
Joey Hess
fccfcba89f
update to document current state of sqlite branch 2019-11-05 12:50:53 -04:00
Joey Hess
b1cf0869db
link to todo 2019-11-04 11:48:45 -04:00
Joey Hess
96c81fa4f1
comment 2019-11-04 11:47:21 -04:00
Ilya_Shlyakhter
59fa021c3d added todo re: git-annex-sync handling of linked worktrees 2019-11-03 23:06:39 +00:00
Ilya_Shlyakhter
72252e1be4 more notes on communicating breaking changes 2019-10-31 15:52:10 +00:00
Joey Hess
d3e4de0175
fix test suite
The test suite found a bug; select_ can fail now because a uniqueness
constrain has been added.

Now the test suite passes.

Also, I'm satisfied the changed PersistField instances work.
Looking over what changed, and what I've already tested, Key, FilePath,
and InodeCache are known working; ContentIdentifier is trivial
ByteString to blob; and SSha is trivial String to varchar. Both are
tested by the test suite. I've also tested the new FileSize and
EpochTime instances already, and they work.
2019-10-30 15:51:37 -04:00
Joey Hess
d7ecac66d2
notes 2019-10-30 15:31:16 -04:00
Joey Hess
4940a135af
eliminate raw sql LIKE query 2019-10-30 15:19:52 -04:00
Joey Hess
09c7cbbaa8
update for things already fixed in this branch 2019-10-30 13:57:22 -04:00
Joey Hess
9085a2cfec
make sure all sqlite selects have indexes
Bearing in mind that these indexes are really uniqueness constraints
that just happen to also make sqlite generate indexes.

In Database.ContentIndentifier, the ContentIndentifiersKeyRemoteCidIndex
is fine as a uniqueness constraint because it contains all rows from the
table. The ContentIndentifiersCidRemoteIndex is also ok because there
can only be one key for a given (cid, uuid) combination.

In Database.Export, the new ExportTreeFileKeyIndex is the same pair as
the old ExportTreeKeyFileIndex (previously ExportTreeIndex). And
in Database.Keys.SQL, the new InodeCacheKeyIndex is the same pair as the
old KeyInodeCacheIndex.
2019-10-30 13:46:52 -04:00
yarikoptic
cc62ba1da8 Added a comment: ACLs keep fighting back 2019-10-29 18:03:57 +00:00
Ilya_Shlyakhter
cd482f3cd6 added todo "warn of breaking changes same way git does" 2019-10-24 22:05:46 +00:00
Joey Hess
8fb1350a2c
Merge branch 'master' of ssh://git-annex.branchable.com 2019-10-23 15:30:55 -04:00
Joey Hess
bd197be3ad
annex.gitaddtoannex configuration
Added annex.gitaddtoannex configuration. Setting it to false prevents
git add from usually adding files to the annex.
(Unless the file was annexed before, or a renamed annexed file is detected.)

Currently left at true; some users are encouraging it be set to false.
2019-10-23 15:29:46 -04:00
Joey Hess
94efc400e9
horrible impementation of isInodeKnown
The only good thing about it is it does not require a major version bump
to improve the database. That will need to happen at some point though.

Potentially very very slow in a large repository.

Ugly use of raw sql.
2019-10-23 14:37:29 -04:00
Ilya_Shlyakhter
2d33c62965 Added a comment: configuring git add behavior 2019-10-23 17:57:03 +00:00
Ilya_Shlyakhter
bdf6d2eb48 Added a comment: preventing git add from annexing new files 2019-10-23 17:05:42 +00:00
Ilya_Shlyakhter
5f7036d0a7 Added a comment: searching by inode 2019-10-23 16:32:37 +00:00
spwhitton
f67285f079 Added a comment 2019-10-23 15:28:56 +00:00
Joey Hess
c4374e4aee
followup 2019-10-22 14:36:31 -04:00
Joey Hess
5581dc3318
comment 2019-10-22 13:30:04 -04:00
Joey Hess
913ac80d33
close a bug report redundant with an existing todo
copied over the dandi tag

updated the todo, as now that sameas is done it's unblocked
2019-10-21 15:23:04 -04:00
cds@be5df0987fc4e414401b86f980a60f7bf0288037
70702c63a8 Making a todo as requested on IRC. 2019-10-16 02:34:53 +00:00
Joey Hess
8ef5e79f79
sameas done and merged 2019-10-14 16:07:49 -04:00
Joey Hess
123d0d9add
Merge branch 'sameas' 2019-10-14 16:07:19 -04:00
Joey Hess
37f0abbca8
looked over all my old comments, current status of all concerns 2019-10-11 16:06:42 -04:00
Joey Hess
37f725a9f7
Merge branch 'master' into sameas 2019-10-11 15:56:00 -04:00
Joey Hess
debafcba2b
autoenable sameas remotes 2019-10-11 15:52:40 -04:00
Joey Hess
ec778888d2
got enableremote working for sameas
Also the assistant can enable sameas remotes, should work, but not
tested.
2019-10-11 15:11:08 -04:00
Joey Hess
35d7ffe128
initremote --sameas fully working
And using sameas remotes is working.

Moved annex-config-uuid setting out of Remote.Helper.Special.
EnableRemote will also have to set it.
2019-10-11 14:19:10 -04:00
Joey Hess
1b9c1d1737
fix sameas inherited key removal 2019-10-11 13:18:27 -04:00
Ilya_Shlyakhter
8432c3912f Added a comment: preventing inadvertently adding annexed files in unlocked form 2019-10-11 16:38:07 +00:00
Joey Hess
2bd6e81bb0
support annex-config-uuid when generating remote
This is used by a special remote with sameas-uuid=
The remote's uuid is the sameas-uuid, but it needs to get
its RemoteConfig from the annex-config-uuid.
2019-10-11 12:34:11 -04:00
Ilya_Shlyakhter
599d438fa6 Added a comment 2019-10-11 16:23:08 +00:00
Joey Hess
cb08cb0052
Merge branch 'master' of ssh://git-annex.branchable.com 2019-10-10 16:18:46 -04:00
Joey Hess
0dd5691951
update notes 2019-10-10 16:12:59 -04:00
Ilya_Shlyakhter
159ba92ea1 added todo for separate annex.largefiles.git-add and annex.largefiles.git-annex-add settings 2019-10-10 18:29:03 +00:00
Joey Hess
d1130ea04a
get rid of hardcoded "name" lookups
Support "sameas-name" being set instead.

In RenameRemote, rename which ever of the two is set.
2019-10-10 13:25:10 -04:00
Joey Hess
d9938b97c6
thought 2019-10-10 12:06:37 -04:00
jason.dixon.email@aa0e536a2ec2877d6f666108dbbc6e39bbe87ac0
7e692864de Added a comment: wanted content commands 2019-10-10 08:16:59 +00:00
Ilya_Shlyakhter
df42fc998c Added a comment 2019-10-08 20:23:07 +00:00
Joey Hess
30204cc493
comment 2019-10-08 14:36:21 -04:00
Joey Hess
7c91eb35f7
comment 2019-10-08 12:19:05 -04:00
Joey Hess
1ba99c31ca
comment 2019-10-08 12:11:19 -04:00
Joey Hess
560c873f50
Merge branch 'master' of ssh://git-annex.branchable.com 2019-10-08 12:09:26 -04:00
Ilya_Shlyakhter
2e8abdae5a Added a comment: automatic retries if index is locked 2019-10-08 16:01:52 +00:00
Joey Hess
08bf984921
more thoughts 2019-10-08 11:39:12 -04:00
Ilya_Shlyakhter
d2369894f0 Added a comment: automaticallly sync content on git push/pull 2019-10-08 06:43:33 +00:00
Ilya_Shlyakhter
a728b78ca2 added todo for operating on files touched by commits in a range 2019-10-08 05:13:23 +00:00
Ilya_Shlyakhter
3d677c0990 added suggestion for more fine-grained config of when files are added as locked vs unlocked 2019-10-07 18:08:44 +00:00
Joey Hess
350bb456c0
this looks messy 2019-10-07 13:10:04 -04:00
Joey Hess
ae86cfb5ef
couple clarifications 2019-10-07 12:20:49 -04:00
Ilya_Shlyakhter
79705f831b fix typo 2019-10-05 02:47:10 +00:00
Ilya_Shlyakhter
d4dafa0671 Added a comment: special remote that restores contents by running a command 2019-10-04 18:16:39 +00:00
Joey Hess
e4e4777a9b
Merge branch 'master' of ssh://git-annex.branchable.com 2019-10-03 09:54:24 -04:00
tobiasBora
d42b117f71 Added a comment 2019-10-03 00:48:23 +00:00
Ilya_Shlyakhter
7dce92bfca Added a comment 2019-10-03 00:36:54 +00:00
tobiasBora
1a2a0707a6 2019-10-02 21:21:01 +00:00
tobiasBora
71405c1c85 2019-10-02 21:20:36 +00:00
Joey Hess
4967f8f0ab
update 2019-10-02 11:24:30 -04:00
Ilya_Shlyakhter
f35b130f59 Added a comment: different repos with same uuid 2019-10-02 15:13:56 +00:00
Joey Hess
d7f4bb5462
Merge branch 'master' of ssh://git-annex.branchable.com 2019-10-01 16:05:15 -04:00
Joey Hess
3229cde14f
comments 2019-10-01 16:04:44 -04:00