Commit graph

32535 commits

Author SHA1 Message Date
Joey Hess
4f6c6114fb
avoid splitting repo tests into too small parts around -J16
The initTests have to be run once per part, and a point of diminishing
returns can be reached where more work is being done to set up for 1 or
2 tests than to run them.

This is better than a hard cap of -J8 or so, because it lets other
things than these particular tests still be parallelized at -J16.

Sponsored-by: Dartmouth College's Datalad project
2022-11-07 14:44:51 -04:00
Joey Hess
5e6cb47bd8
coment 2022-11-07 14:28:55 -04:00
Joey Hess
38e67e169d
followup 2022-11-07 12:26:04 -04:00
yarikoptic
7698e25f6f initial report on stalling test 2022-11-07 14:31:55 +00:00
xloem
8b5b078df3 2022-11-07 10:33:22 +00:00
Joey Hess
ad7dfdb37f
Merge branch 'master' of ssh://git-annex.branchable.com 2022-11-04 16:21:20 -04:00
Joey Hess
e03cf52504
done 2022-11-04 16:20:51 -04:00
Joey Hess
de1e8201a6
Merge branch 'master' into anons3 2022-11-04 15:08:29 -04:00
yarikoptic
99b40cd6a2 Added a comment 2022-11-04 12:41:47 +00:00
Joey Hess
95405c067f
add news item for git-annex 10.20221103 2022-11-03 14:08:29 -04:00
Joey Hess
9dc3acc95d
comment, update tip 2022-10-31 12:16:36 -04:00
xloem
bf27a02b07 Added a comment: ipfs 2022-10-31 13:36:51 +00:00
Stefan
813bc50cb3 Added a comment: This guide fails with "fatal: refusing to merge unrelated histories" 2022-10-29 10:28:19 +00:00
Joey Hess
14f7a386f0
Make git-annex enable-tor work when using the linux standalone build
Clean the standalone environment before running the su command
to run "sh". Otherwise, PATH leaked through, causing it to run
git-annex.linux/bin/sh, but GIT_ANNEX_DIR was not set,
which caused that script to not work:

[2022-10-26 15:07:02.145466106] (Utility.Process) process [938146] call: pkexec ["sh","-c","cd '/home/joey/tmp/git-annex.linux/r' && '/home/joey/tmp/git-annex.linux/git-annex' 'enable-tor' '1000'"]
/home/joey/tmp/git-annex.linux/bin/sh: 4: exec: /exe/sh: not found

Changed programPath to not use GIT_ANNEX_PROGRAMPATH,
but instead run the scripts at the top of GIT_ANNEX_DIR.
That works both when the standalone environment is set up, and when it's
not.

Sponsored-by: Kevin Mueller on Patreon
2022-10-26 15:45:08 -04:00
Joey Hess
a8ce8ac75d
comment 2022-10-26 14:54:38 -04:00
Joey Hess
731e806c96
use lookupKeyStaged in --batch code paths
Make --batch mode handle unstaged annexed files consistently whether the
file is unlocked or not. Before this, a unstaged locked file
would have the symlink on disk examined and operated on in --batch mode,
while an unstaged unlocked file would be skipped.

Note that, when not in batch mode, unstaged files are skipped over too.
That is actually somewhat new behavior; as late as 7.20191114 a
command like `git-annex whereis .` would operate on unstaged locked
files and skip over unstaged unlocked files. That changed during
optimisation of CmdLine.Seek with apparently little fanfare or notice.

Turns out that rmurl still behaved that way when given an unstaged file
on the command line. It was changed to use lookupKeyStaged to
handle its --batch mode. That also affected its non-batch mode, but
since that's just catching up to the change earlier made to most
other commands, I have not mentioed that in the changelog.

It may be that other uses of lookupKey should also change to
lookupKeyStaged. But it may also be that would slow down some things,
or lead to unwanted behavior changes, so I've kept the changes minimal
for now.

An example of a place where the use of lookupKey is better than
lookupKeyStaged is in Command.AddUrl, where it looks to see if the file
already exists, and adds the url to the file when so. It does not matter
there whether the file is staged or not (when it's locked). The use of
lookupKey in Command.Unused likewise seems good (and faster).

Sponsored-by: Nicholas Golder-Manning on Patreon
2022-10-26 14:43:06 -04:00
Joey Hess
1944549a38
comment 2022-10-26 12:58:10 -04:00
jwodder
0d853cef01 2022-10-25 16:18:09 +00:00
gyurmo.gyuri@8d622eb91a0312fcb7e63e4f47a6e191c417a0c8
5e52325147 2022-10-23 08:30:57 +00:00
AlexPraga
e4355a6f33 Added a comment 2022-10-22 15:12:26 +00:00
Joey Hess
cde2e61105
improve sqlite retrying behavior
Avoid hanging when a suspended git-annex process is keeping a sqlite
database locked.

Sponsored-by: Dartmouth College's Datalad project
2022-10-18 15:47:20 -04:00
Joey Hess
3149a1e2fe
More robust handling of ErrorBusy when writing to sqlite databases
While ErrorBusy and other exceptions were caught and the write retried for
up to 10 seconds, it was still possible for git-annex to eventually
give up and error out without writing to the database. Now it will retry
as long as necessary.

This does mean that, if one git-annex process is suspended just as sqlite
has locked the database for writing, another git-annex that tries to write
it it might get stuck retrying forever. But, that could already happen when
opening the sqlite database, which retries forever on ErrorBusy. This is an
area where git-annex is known to not behave well, there's a todo about the
general case of it.

Sponsored-by: Dartmouth College's Datalad project
2022-10-17 15:56:19 -04:00
Joey Hess
f8fe393052
comment 2022-10-17 12:37:57 -04:00
AlexPraga
7b9e3dc5fb 2022-10-14 09:32:44 +00:00
AlexPraga
2cad4b95f4 2022-10-14 09:28:38 +00:00
asakurareiko@f3d908c71c009580228b264f63f21c7274df7476
dbca1781d9 Update WSL1 tips 2022-10-13 15:29:12 +00:00
Joey Hess
22f9598dfb
Merge branch 'master' of ssh://git-annex.branchable.com 2022-10-12 15:54:12 -04:00
Joey Hess
d5cd1de280
update and open a todo about something I'm pondering 2022-10-12 15:53:56 -04:00
benjamin.poldrack@d09ccff6d42dd20277610b59867cf7462927b8e3
5bd79e717f Added a comment 2022-10-12 06:12:17 +00:00
Joey Hess
b312b2a30b
update 2022-10-11 15:07:52 -04:00
Joey Hess
c2ad84b423
all keys are still present on versioned remote after import of a tree
When importing from versioned remotes, fix tracking of the content of
deleted files.

Only S3 supports versioning so far, so only it was affected.

But, the draft import/export interface for external remotes also seemed to
need a change, so that versionedExport could be set.
2022-10-11 13:05:40 -04:00
benjamin.poldrack@d09ccff6d42dd20277610b59867cf7462927b8e3
e22c3b3d7c 2022-10-11 09:12:00 +00:00
Joey Hess
b4305315b2
S3: pass fileprefix into getBucket calls
S3: Speed up importing from a large bucket when fileprefix= is set by only
asking for files under the prefix.

getBucket still returns the files with the prefix included, so the rest of
the fileprefix stripping still works unchanged.

Sponsored-by: Dartmouth College's DANDI project
2022-10-10 17:37:26 -04:00
Joey Hess
ca91c3ba91
S3: Support signature=anonymous to access a S3 bucket anonymously
This can be used, for example, with importtree=yes to import from a public
bucket.

This needs a patch that has not yet landed in the aws library, and will
need to be adjusted to support compiling with old versions of the library,
so is not yet suitable for merging.
See https://github.com/aristidb/aws/pull/281

The stack.yaml changes are provided to show how to build against the aws
fork and will need to be reverted as well.

Sponsored-by: Dartmouth College's DANDI project
2022-10-10 17:02:45 -04:00
Joey Hess
4a42c69092
take lock in checkLogFile and calcLogFile
move: Fix openFile crash with -J

This does make them a bit slower, although usually the log file is not
very big, so even when it's being rewritten, they will not block for
long taking the lock. Still, little slowdowns may add up when moving a lot
file files.

A less expensive fix would be to use something lower level than openFile
that does not check if the file is already open for write by another
thread. But GHC does not seem to provide anything convenient; even mkFD
checks for a writing thread.

fullLines is no longer necessary since these functions no longer will
read the file while it's being written.

Sponsored-by: Dartmouth College's DANDI project
2022-10-07 13:19:17 -04:00
Joey Hess
85dbc21c1c
fix typo 2022-10-07 12:30:07 -04:00
Joey Hess
e9a1f3f351
Merge branch 'master' of ssh://git-annex.branchable.com 2022-10-07 12:29:32 -04:00
jkniiv
b7d189d6c0 Added a comment 2022-10-06 16:04:41 +00:00
yarikoptic
91c9a27c5a Added a comment 2022-10-06 12:50:01 +00:00
yarikoptic
77825cadfa removed 2022-10-06 12:47:48 +00:00
yarikoptic
04117f0e52 Added a comment 2022-10-06 12:47:17 +00:00
jkniiv
c9bf143fc8 Added a comment 2022-10-06 06:21:40 +00:00
yarikoptic
5761ea969f 2022-10-06 01:37:24 +00:00
yarikoptic
f0a2341e5c initial report on locking issue on move 2022-10-05 21:25:00 +00:00
Joey Hess
95517442d2
update 2022-10-05 13:01:12 -04:00
jules@a6ba859eba6f59bd980f294741b1ad9b7624552a
ee2442bbab Added a comment 2022-10-04 17:59:54 +00:00
Joey Hess
a679ef04ff
comments 2022-10-04 13:36:38 -04:00
Joey Hess
304ee15a42
comment 2022-10-04 13:06:55 -04:00
Joey Hess
15f9fcbcb1
avoid combining multiple words provided to trust/untrust/dead
* trust, untrust, semitrust, dead: Fix behavior when provided with
  multiple repositories to operate on.
* trust, untrust, semitrust, dead: When provided with no parameters,
  do not operate on a repository that has an empty name.

The man page and usage already indicated that multiple repos could be
provided to these commands, but they actually used unwords to combine
everything into string, and found a repo matching that string. This was
especially bad when no parameters resulted in the empty string and some
repo happened to have an empty description.

This does change the behavior, and it's possible someone relied on the
current behavior to eg, trust a repo by name with the name not quoted into
a single parameter. But fixing the empty string bug and matching the
documentation are worth breaking that usage.

Note that git-annex init/reinit do still unwords multiple parameters when
provided to them. That is inconsistent behavior, but it certianly seems
possible that something does run git-annex init with an unquoted
description, and I don't think it's worth breaking that just to make it more
consistent with these other commands.

Sponsored-by: Boyd Stephen Smith Jr. on Patreon
2022-10-03 13:48:40 -04:00
Joey Hess
e74c56ed78
add news item for git-annex 10.20221003 2022-10-03 13:24:33 -04:00
Joey Hess
9c9174329e
bug report 2022-10-03 13:00:29 -04:00
jkniiv
82dab0749c Added a comment 2022-10-01 08:23:43 +00:00
jkniiv
be0aca9fa0 Added a comment: restage.log was empty indeed 2022-10-01 05:14:17 +00:00
Joey Hess
620ec5ab3e
Merge branch 'master' of ssh://git-annex.branchable.com 2022-09-30 14:04:40 -04:00
Joey Hess
d91c3500ea
add comments 2022-09-30 14:04:33 -04:00
Joey Hess
1328be2013
applied a patch 2022-09-30 14:04:10 -04:00
asakurareiko@f3d908c71c009580228b264f63f21c7274df7476
31f2922e7e 2022-09-30 18:03:50 +00:00
Joey Hess
49ee07f93d
fix flush of a closed file handle
Avoids displaying warning about git-annex restage needing to be run in
situations where it does not.

Closing a handle flushes it anyway, so no need for an explict flush. The
handle does get closed twice, but that's fine, the second one does nothing.

Sponsored-by: Dartmouth College's DANDI project
2022-09-30 14:02:31 -04:00
Joey Hess
8d8f7ee884
comment 2022-09-30 13:42:30 -04:00
Joey Hess
9e847d4786
update in response to comment 2022-09-30 13:33:59 -04:00
Joey Hess
fedee03654
comment 2022-09-30 13:26:30 -04:00
asakurareiko@f3d908c71c009580228b264f63f21c7274df7476
3c1230a8c0 2022-09-30 15:41:51 +00:00
jkniiv
4e0eb2d124 reporting that we're now in some cases needlessly reminded to run restage 2022-09-30 13:40:01 +00:00
jules@a6ba859eba6f59bd980f294741b1ad9b7624552a
e4ff7014bd Added a comment: mess up commited to my branch 2022-09-29 09:26:06 +00:00
jules@a6ba859eba6f59bd980f294741b1ad9b7624552a
6cf8d066e3 2022-09-29 08:44:16 +00:00
kdm9
1ebce93be0 Added a comment 2022-09-28 12:55:49 +00:00
jeroen
43a1df8d5d Added a comment: DIRHASH ending in slash? 2022-09-28 11:58:57 +00:00
pat
7cfd816132 Added a comment 2022-09-28 08:40:11 +00:00
pat
210b25bf3a Added a comment 2022-09-28 07:43:28 +00:00
Joey Hess
e858315744
comment 2022-09-27 15:01:08 -04:00
Joey Hess
81e1cba6e1
Merge branch 'master' of ssh://git-annex.branchable.com 2022-09-27 14:58:02 -04:00
Joey Hess
61c5014ad1
comment 2022-09-27 14:57:56 -04:00
kdm9
49dd5e1b69 Added a comment 2022-09-27 18:40:40 +00:00
Joey Hess
eae89f73bb
comment 2022-09-27 14:31:06 -04:00
kdm9
518b89eb96 Added a comment 2022-09-27 17:49:53 +00:00
kdm9
27a9489ef3 v10nfs-bug 2022-09-27 17:48:02 +00:00
Joey Hess
6ef19544dc
add news item for git-annex 10.20220927 2022-09-27 13:32:09 -04:00
Joey Hess
fbf8c44f73
remove link to closed todo
Not that it was actually fixed, but ..
2022-09-27 13:30:39 -04:00
asakurareiko@f3d908c71c009580228b264f63f21c7274df7476
a925465876 2022-09-27 00:45:22 +00:00
Joey Hess
7059322a6c
Support "inbackend" in preferred content expressions
Well, actually, fix a typo that has always been in the implementation of
that. "inbacked" used to work, but let's not tell users about that; they
might try to use it and expect git-annex to keep supporting the typo..

Sponsored-by: Jack Hill on Patreon
2022-09-26 16:06:49 -04:00
Joey Hess
640e2646a1
add comment 2022-09-26 16:05:46 -04:00
Joey Hess
dcc2957d9c
improve documentation about backends
I noticed that, using just the man pages, there is no real description
of what backends are, or what ones are available. Except for some
examples.

Added a git-annex-backends man page, that is just a stub, but at least
describes what they basically are, and tells how to find the supported
ons, and links to the backends web page.

Sponsored-by: Brett Eisenberg on Patreon
2022-09-26 15:59:10 -04:00
Joey Hess
17129fed66
fix wormhole --appid option position
p2p: Pass wormhole the --appid option before the receive/send command, as
it does not accept that option after the command

I'm left wondering, did I get this wrong from the beginning, or did
wormhole change its option parser? I'm reminded of the change in 0.8.2
where it silently changed what FD the pairing code was output to.
But, looking at the wormhole source, it was at least putting --appid before
send in its test suite from the introduction of the option.

So I think probably this has always been broken. On 2021-12-31 the --appid
option was enabled, and it took until now for someone to try
git-annex p2p --pair and notice that flag day broke it..

Sponsored-by: Svenne Krap on Patreon
2022-09-26 15:11:38 -04:00
Joey Hess
1d47a7e7e6
Revert "fix comment"
This reverts commit c39b057b2d.
2022-09-26 13:39:10 -04:00
Joey Hess
c39b057b2d
fix comment 2022-09-26 13:37:47 -04:00
Joey Hess
fc9212e6ea
comment 2022-09-26 13:25:04 -04:00
Joey Hess
6e21bd54d4
comment 2022-09-26 13:23:04 -04:00
Joey Hess
79aadf63d4
changelog and close 2022-09-26 13:11:23 -04:00
Joey Hess
2e40eb07db
note that hooks are also run when on a crippled filesystem now 2022-09-26 13:10:47 -04:00
Joey Hess
e05dd70544
handle upgrading repositories initialized with --version=9
As was attempted earlier in the buggy commit 0d2e3058ee

Avoided the bug that had by making the upgrade log be updated after each
upgrade step. So, after upgrade from v8 to v9, the log is updated, and
so Upgrade.V9's timeOfUpgrade check will find that it was upgraded
recently and so won't let it skip ahead to v10.

Sponsored-by: k0ld on Patreon
2022-09-26 12:59:51 -04:00
Joey Hess
6b658a7f54
comment 2022-09-26 12:20:11 -04:00
Joey Hess
98eb5ff84f
fix windows build 2022-09-26 12:08:04 -04:00
yarikoptic
87b62210d7 report on windows FTBFS 2022-09-26 15:47:23 +00:00
asakurareiko@f3d908c71c009580228b264f63f21c7274df7476
d1762cc8e4 Added a comment 2022-09-25 19:43:31 +00:00
asakurareiko@f3d908c71c009580228b264f63f21c7274df7476
f105bed5d9 2022-09-25 19:39:22 +00:00
asakurareiko@f3d908c71c009580228b264f63f21c7274df7476
ba6eabd76b 2022-09-25 02:01:26 +00:00
asakurareiko@f3d908c71c009580228b264f63f21c7274df7476
cc9634ce12 2022-09-24 23:28:09 +00:00
asakurareiko@f3d908c71c009580228b264f63f21c7274df7476
5c6b875f10 Fix some markdown formatting problems 2022-09-24 23:27:17 +00:00
asakurareiko@f3d908c71c009580228b264f63f21c7274df7476
00843b296b Add patches for WSL1 2022-09-24 23:23:40 +00:00
asakurareiko@f3d908c71c009580228b264f63f21c7274df7476
095a7bf800 Fix WSL1 instructions 2022-09-24 22:31:54 +00:00
asakurareiko@f3d908c71c009580228b264f63f21c7274df7476
bc26c85745 close bug "git commit smudges unncessarily" 2022-09-24 20:37:56 +00:00
asakurareiko@f3d908c71c009580228b264f63f21c7274df7476
a7e3e9d0c9 Added a comment 2022-09-24 19:43:47 +00:00
dukeofcool199
a887de360b 2022-09-24 19:24:19 +00:00
dukeofcool199
3a3e17cee5 2022-09-24 19:21:09 +00:00
Joey Hess
2478e9e03a
restage: New git-annex command, handles restaging unlocked files
This is much easier and less failure-prone than having the user run
git update-index --refresh themselves.

Sponsored-by: Dartmouth College's DANDI project
2022-09-23 16:29:59 -04:00
nick.guenther@e418ed3c763dff37995c2ed5da4232a7c6cee0a9
4822121728 Added a comment 2022-09-23 01:40:56 +00:00
Joey Hess
f64eff9355
test: Added --test-with-git-config option
Sponsored-by: Dartmouth College's DANDI project
2022-09-22 15:58:45 -04:00
Joey Hess
d049228fd3
comment and todo 2022-09-22 14:48:32 -04:00
Joey Hess
0139a732fe
Merge branch 'master' of ssh://git-annex.branchable.com 2022-09-22 14:40:29 -04:00
Joey Hess
6e3c9bea2e
drain transferrer read handle when shutting it down
Fixes updating git index file after getting an unlocked file when
annex.stalldetection is set.

The transferrer may want to send additional protocol messages when it's
shut down. Closing the read handle prevented it from doing that, and caused
it to crash rather than cleanly shutting down.

Draining the handle without processing the protocol seemed ok to do,
because anything it outputs is going to be some side message displayed
at shutdown. Displaying those once per transferrer process that is running
seems unncessary.

Sponsored-by: Dartmouth College's DANDI project
2022-09-22 14:39:39 -04:00
yarikoptic
ea4a466b8b Added a comment 2022-09-22 18:14:15 +00:00
Joey Hess
f015f3e8e3
comment 2022-09-22 14:03:31 -04:00
Joey Hess
5ed774b701
comment 2022-09-22 13:40:13 -04:00
Joey Hess
72cdbd01f4
Merge branch 'master' of ssh://git-annex.branchable.com 2022-09-22 13:37:26 -04:00
Joey Hess
368ad64160
correct my comment 2022-09-22 13:37:01 -04:00
yarikoptic
2415c8f8b9 Added a comment 2022-09-22 17:34:35 +00:00
Joey Hess
3f2bbae4cb
reproduced this now 2022-09-22 13:25:02 -04:00
Joey Hess
a9355e74a3
Merge branch 'master' of ssh://git-annex.branchable.com 2022-09-22 12:59:53 -04:00
Joey Hess
66bd4f80b3
Improved handling of --time-limit when combined with -J
When concurrency is enabled, there can be worker threads still running
when the time limit is checked. Exiting right there does not
give those threads time to finish what they're doing. Instead, the seeking
is wrapped up, and git-annex then shuts down cleanly.

The whole point of --time-limit existing, rather than using timeout(1)
when running git-annex is to let git-annex finish the action(s) it is
working on when the time limit is reached, and shut down cleanly.

I noticed this problem when investigating why restagePointerFile might
not have run after get/drop of an unlocked file. With --time-limit -J,
a worker thread may have finished updating a work tree file, and be killed
by the time limit check before it can run restagePointerFile. So despite
--time-limit running the shutdown actions, the work tree file didn't get
restaged.

Sponsored-by: Dartmouth College's DANDI project
2022-09-22 12:54:52 -04:00
nobodyinperson
75adb198a1 Added a comment 2022-09-22 06:24:05 +00:00
rinomizu5@5ead4c82685c65d7717dbd5591b80425036ae9e3
c44df3fdf5 removed 2022-09-22 05:08:59 +00:00
jgoerzen
63f8b78e29 Added a comment 2022-09-22 03:40:04 +00:00
yarikoptic
79fa55ce88 Added a comment 2022-09-22 01:33:24 +00:00
yarikoptic
f75641f9f6 Added a comment 2022-09-22 01:03:18 +00:00
Gus
28e71d46e4 Added a comment 2022-09-21 22:30:20 +00:00
Joey Hess
6f0566d704
comment 2022-09-21 18:17:21 -04:00
Joey Hess
2731e3ab38
wording 2022-09-21 16:13:08 -04:00
Joey Hess
05592a2ddb
comment 2022-09-21 16:11:10 -04:00
Joey Hess
af9875765c
Merge branch 'master' of ssh://git-annex.branchable.com 2022-09-21 15:17:56 -04:00
Joey Hess
34e313f786
annex.diskreserve default increased from 1 mb to 100 mb
It's hard to know what's a good default for this. But 1 mb seems way too
small, because it's very easy for a git pull or some similar operation
that we don't think of as using much space to use up 1 mb of space.

Most people would want to free up some space if a filesystem only had 100
mb free. But on a small VPS, it's probably not uncommon to have only 1 gb
free. So 1 gb is too large for annex.diskreserve.

While old 1 gb USB keys are around, it's unlikely that anyone is
relying on them to shuttle annex data around; it would be worth anyone's
time to upgrade to a 32 gb or larger cheap modern USB key ($5).

Sponsored-by: Kevin Mueller on Patreon
2022-09-21 15:00:13 -04:00
yarikoptic
ad31c9fc19 Added a comment 2022-09-21 18:49:07 +00:00
yarikoptic
65cd69217c Added a comment 2022-09-21 18:46:50 +00:00
Joey Hess
94216c99a7
comment and todo 2022-09-21 14:32:42 -04:00
Joey Hess
d330c83e2c
comment 2022-09-21 13:42:20 -04:00
Joey Hess
2f16ff8cdc
comment 2022-09-21 13:17:21 -04:00
Joey Hess
90da0a5e59
comment 2022-09-21 13:04:47 -04:00
rinomizu5@5ead4c82685c65d7717dbd5591b80425036ae9e3
ef61e117aa Added a comment: "not inbackend=URL" is failed with parse error 2022-09-21 07:04:55 +00:00
rinomizu5@5ead4c82685c65d7717dbd5591b80425036ae9e3
cae26503f3 Added a comment: "not inbackend=URL" is failed with parse error 2022-09-21 07:04:35 +00:00
yarikoptic
f3a99db14b Added a comment 2022-09-20 22:50:46 +00:00
yarikoptic
f967316f31 initial report on odd "modified" status 2022-09-20 22:22:42 +00:00
nick.guenther@e418ed3c763dff37995c2ed5da4232a7c6cee0a9
675f9db76e 2022-09-20 22:16:55 +00:00
Gus
bccc441d9c Added a comment 2022-09-20 22:07:30 +00:00
nick.guenther@e418ed3c763dff37995c2ed5da4232a7c6cee0a9
0602d659af Added a comment 2022-09-20 21:30:51 +00:00
Joey Hess
8d26fdd670
skip checkRepoConfigInaccessible when git directory specified explicitly
Fix a reversion that prevented git-annex from working in a repository when
--git-dir or GIT_DIR is specified to relocate the git directory to
somewhere else. (Introduced in version 10.20220525)

checkRepoConfigInaccessible could still run git config --list, just passing
--git-dir. It seems not necessary, because I know that passing --git-dir
bypasses git's check for repo ownership. I suppose it might be that git
eventually changes to check something about the ownership of the working
tree, so passing --git-dir without --work-tree would still be worth doing.
But for now this is the simple fix.

Sponsored-by: Nicholas Golder-Manning on Patreon
2022-09-20 14:52:43 -04:00
Joey Hess
d1467a9b8e
bug report rescued from forum 2022-09-20 14:16:15 -04:00
Joey Hess
3826a553d7
comment 2022-09-20 14:06:09 -04:00
Joey Hess
3d51f866d3
comment 2022-09-20 14:02:09 -04:00
Joey Hess
f5a3a12360
wontfix 2022-09-20 13:54:34 -04:00
Joey Hess
7a1b7ce795
comment 2022-09-20 13:49:21 -04:00
Joey Hess
8479ac6a50
fixed 2022-09-20 13:35:47 -04:00
Joey Hess
3adf1f24e2
comment 2022-09-20 12:56:16 -04:00
Joey Hess
612d2a8056
comment 2022-09-20 12:39:40 -04:00
Joey Hess
223f03e84c
comment 2022-09-20 12:20:33 -04:00
nobodyinperson
845922024b 2022-09-20 12:11:03 +00:00
jgoerzen
a09a796118 Added a comment 2022-09-19 14:49:02 +00:00
jgoerzen
d3408ec63d Added a comment 2022-09-19 13:55:07 +00:00
Gus
00418e8c8f Added a comment 2022-09-19 13:49:15 +00:00
Lukey
95f9cb1340 Added a comment 2022-09-19 10:03:39 +00:00
Gus
9cca1fb2d2 2022-09-18 12:21:07 +00:00
Gus
8c203331bb 2022-09-18 12:20:16 +00:00
eph@6377f195575d4a04abc70f20e0b00dffcc597d00
d08ff11b97 Added a comment 2022-09-17 21:19:13 +00:00
Joey Hess
1fe9cf7043
deal with ignoreinode config setting
Improve handling of directory special remotes with importtree=yes whose
ignoreinode setting has been changed. (By either enableremote or by
upgrading to commit 3e2f1f73cbc5fc10475745b3c3133267bd1850a7.)

When getting a file from such a remote, accept the content that would have
been accepted with the previous ignoreinode setting.

After a change to ignoreinode, importing a tree from the remote will
re-import and generate new content identifiers using the new config. So
when ignoreinode has changed to no, the inodes will be learned, and after
that point, a change in an inode will be detected as a change. Before
re-importing, a change in an inode will be ignored, as it was before the
ignoreinode change. This seems acceptble, because the user can re-import
immediately if they urgently need to add inodes. And if not, they'll
do it sometime, presumably, and the change will take effect then.

Sponsored-by: Erik Bjäreholt on Patreon
2022-09-16 14:11:25 -04:00
Joey Hess
4a1030d51d
comments 2022-09-16 13:40:27 -04:00
Joey Hess
8307e0f63f
comment 2022-09-16 13:08:14 -04:00
Joey Hess
a0e8000f5f
comment 2022-09-16 12:48:48 -04:00
Joey Hess
0a4871cb65
comment 2022-09-16 12:39:43 -04:00
eph@6377f195575d4a04abc70f20e0b00dffcc597d00
43a1f34094 Added a comment 2022-09-16 09:30:44 +00:00
prancewit
f9417c9b20 Added a comment 2022-09-16 08:39:09 +00:00
Joey Hess
9ea5a38bc5
comment 2022-09-15 15:18:45 -04:00
Joey Hess
9164d9587c
general purpose design for this todo
Sponsored-by: Boyd Stephen Smith Jr. on Patreon
2022-09-15 14:26:18 -04:00
Joey Hess
9edaac65c9
belated response 2022-09-15 12:54:52 -04:00
Joey Hess
6f31bd4755
comment 2022-09-15 12:39:07 -04:00
Joey Hess
7a4006cc07
Merge branch 'master' of ssh://git-annex.branchable.com 2022-09-15 12:27:41 -04:00
Lukey
df3fe63cc8 Added a comment 2022-09-15 15:55:32 +00:00
Joey Hess
056754ca92
Merge branch 'master' of ssh://git-annex.branchable.com 2022-09-15 10:24:18 -04:00
eph@6377f195575d4a04abc70f20e0b00dffcc597d00
485e713a34 2022-09-15 11:55:56 +00:00
Lukey
0cba1debda Added a comment 2022-09-14 15:09:20 +00:00
Joey Hess
e3d19c7674
Merge branch 'master' of ssh://git-annex.branchable.com 2022-09-13 21:36:16 -04:00
nick.guenther@e418ed3c763dff37995c2ed5da4232a7c6cee0a9
50cdf369b9 closing 2022-09-13 23:32:49 +00:00
nick.guenther@e418ed3c763dff37995c2ed5da4232a7c6cee0a9
d21bac4d88 Added a comment 2022-09-13 23:32:01 +00:00
prancewit
bef6eb5d02 Added a comment 2022-09-13 21:36:38 +00:00
prancewit
9f5f960548 removed 2022-09-13 21:34:39 +00:00
prancewit
518105f89c Added a comment 2022-09-13 21:32:45 +00:00
pat
ca1d6b0c50 2022-09-13 21:15:33 +00:00
pat
97ce72210b Added a comment 2022-09-13 21:14:03 +00:00
prancewit
e0e16187a8 Added a comment: My current use case 2022-09-13 19:45:23 +00:00
Joey Hess
187c82be2e
mention that whereis --all skips dead keys
I looked at all man pages with --all, and this was the only one that
needs to add this disclaimer. Others like get and drop obviously
won't operate on dead keys anyway, because a dead key does not have any
content located anywhere.
2022-09-13 15:29:06 -04:00
Joey Hess
eb3582459c
improve wording 2022-09-13 15:28:57 -04:00
Joey Hess
f399974022
comment 2022-09-13 15:13:06 -04:00
Joey Hess
56bc032c19
update to work with modern git 2022-09-13 15:09:02 -04:00
Joey Hess
9d9e3d6d1a
comment 2022-09-13 15:07:58 -04:00
Joey Hess
939276b4df
comment 2022-09-13 14:58:45 -04:00
Joey Hess
eefc026370
fix reversion on skipping dead keys in --all/bare
Fix a reversion that made dead keys not be skipped when operating on all
keys via --all or in a bare repo. (Introduced in version 8.20200720)

Also, improved the documentation of git-annex-dead, it does not only apply
to fsck --all.

Also, made git-annex fsck, when run on a file whose key is dead, display
that. Before, it displayed that only when run with --all, but with this
fix, it skips dead keys with --all. But it can still be run on a file that
uses a dead key, and displaying "This key is dead" explains to the user
why it does not consider missing content for it to be a problem.

Sponsored-by: k0ld on Patreon
2022-09-13 14:38:13 -04:00
Joey Hess
b7f13181ad
comment 2022-09-13 14:17:01 -04:00
Joey Hess
97825216b2
Merge branch 'master' of ssh://git-annex.branchable.com 2022-09-13 14:13:31 -04:00
Joey Hess
d722681a10
comment 2022-09-13 14:13:19 -04:00
yarikoptic
57543f11a8 Added a comment 2022-09-13 18:02:35 +00:00
Ilya_Shlyakhter
8b85521b41 Added a comment: re: many small files 2022-09-13 17:28:29 +00:00
Ilya_Shlyakhter
bce66e1bc5 Added a comment: many small files 2022-09-13 17:20:45 +00:00
Joey Hess
a0379ac9af
Merge branch 'master' of ssh://git-annex.branchable.com 2022-09-13 13:19:24 -04:00
Joey Hess
ea6c733e45
comment 2022-09-13 13:19:18 -04:00
Ilya_Shlyakhter
4cbb3e5752 Added a comment: re: How to forget keys that get can't find 2022-09-13 17:16:52 +00:00
Joey Hess
4232eb1c1f
comment 2022-09-13 13:08:41 -04:00
Joey Hess
0648b6337b
comment 2022-09-13 12:49:49 -04:00
Joey Hess
e13444fb2b
comments 2022-09-13 12:46:05 -04:00
prancewit
733a74a7e8 Added a comment 2022-09-13 11:19:54 +00:00
Atemu
15a23ace3d Added a comment 2022-09-13 09:53:48 +00:00
prancewit
0b3da75e62 2022-09-12 19:06:11 +00:00
pat
07b7a2c668 Added a comment 2022-09-11 17:11:36 +00:00
Ilya_Shlyakhter
e7f0fa759f Added a comment: re: How to forget keys that get can't find? 2022-09-11 16:43:47 +00:00
pat
9d6feb42a6 2022-09-10 21:39:59 +00:00
pat
e52c4f69b4 2022-09-10 21:19:42 +00:00
pat
901c89b287 2022-09-10 21:07:30 +00:00
pat
cc97119880 2022-09-10 21:04:30 +00:00
pat
244827ebc6 2022-09-10 21:00:18 +00:00
pat
7edb7cd491 2022-09-10 20:59:30 +00:00
pat
12a8af17bf 2022-09-10 20:15:52 +00:00
pat
d104ac5a87 2022-09-10 20:14:51 +00:00
jgoerzen
e92dfbce72 Added a comment 2022-09-10 00:38:17 +00:00
jgoerzen
0d265841d4 Added a comment 2022-09-10 00:37:45 +00:00
jgoerzen
29a80ceed1 2022-09-10 00:37:09 +00:00
jgoerzen
aee5e0c6fc Added a comment 2022-09-10 00:32:57 +00:00
nick.guenther@e418ed3c763dff37995c2ed5da4232a7c6cee0a9
cc053c820e Added a comment 2022-09-09 20:46:31 +00:00
nick.guenther@e418ed3c763dff37995c2ed5da4232a7c6cee0a9
a2dd58e9d4 Added a comment 2022-09-09 20:45:13 +00:00
Joey Hess
483e85fe5f
Merge branch 'master' of ssh://git-annex.branchable.com 2022-09-09 16:08:13 -04:00
Joey Hess
d2c842e9a1
don't force use of conduit in withUrlOptionsPromptingCreds
Use curl for downloads from git remotes when annex.url-options and other
git configs are set.

If the url needs a password, curl will fail, and git credential will not be
used to prompt for it. But the user can set --netrc in url-options and
put the password in the netrc file.

This also means that url-options settings like -4 will take effect.
That was the case before commit 1883f7ef8f
forced conduit to be used.
2022-09-09 16:07:32 -04:00
HiDefender
914729d8e4 Added a comment: Using git-annex on NTFS with WSL2 2022-09-09 19:24:56 +00:00
Joey Hess
247c0e59cf
comment 2022-09-09 15:15:54 -04:00
Joey Hess
511e711bed
close 2022-09-09 14:53:26 -04:00
Joey Hess
c2184e2295
Merge branch 'master' of ssh://git-annex.branchable.com 2022-09-09 14:46:55 -04:00
Joey Hess
c62fe5e9a8
avoid redundant prompt for http password in git-annex get that does autoinit
autoEnableSpecialRemotes runs a subprocess, and if the uuid for a git
remote has not been probed yet, that will do a http get that will prompt
for a password. And then the parent process will subsequently prompt
for a password when getting annexed files from the remote.

So the solution is for autoEnableSpecialRemotes to run remoteList before
the subprocess, which will probe for the uuid for the git remote in the
same process that will later be used to get annexed files.

But, Remote.Git imports Annex.Init, and Remote.List imports Remote.Git,
so Annex.Init cannot import Remote.List. Had to pass remoteList into
functions in Annex.Init to get around this dependency loop.
2022-09-09 14:43:43 -04:00
Joey Hess
9621beabc4
cache credentials in memory when doing http basic auth to a git remote
When accessing a git remote over http needs a git credential prompt for a
password, cache it for the lifetime of the git-annex process, rather than
repeatedly prompting.

The git-lfs special remote already caches the credential when discovering
the endpoint. And presumably commands like git pull do as well, since they
may download multiple urls from a remote.

The TMVar CredentialCache is read, so two concurrent calls to
getBasicAuthFromCredential will both prompt for a credential.
There would already be two concurrent password prompts in such a case,
and existing uses of `prompt` probably avoid it. Anyway, it's no worse
than before.
2022-09-09 14:20:32 -04:00
jgoerzen
7e6b2de2c5 2022-09-09 17:28:06 +00:00
yarikoptic
9811a02b67 Added a comment 2022-09-09 16:51:47 +00:00
Joey Hess
adb2f5cc00
comment 2022-09-09 12:39:28 -04:00
Joey Hess
28fc8d491f
comment 2022-09-09 12:30:46 -04:00
yarikoptic
22a311ef46 reporting flaky tests on ndoli 2022-09-08 15:01:50 +00:00
nick.guenther@e418ed3c763dff37995c2ed5da4232a7c6cee0a9
2c4c56ea50 Added a comment: git-credential-netrc 2022-09-08 02:02:40 +00:00
nick.guenther@e418ed3c763dff37995c2ed5da4232a7c6cee0a9
4f3a33d824 2022-09-08 01:10:06 +00:00
nick.guenther@e418ed3c763dff37995c2ed5da4232a7c6cee0a9
d8c98399e1 Added a comment 2022-09-08 00:28:32 +00:00
nick.guenther@e418ed3c763dff37995c2ed5da4232a7c6cee0a9
e1984e2c67 Added a comment 2022-09-07 23:22:40 +00:00
yarikoptic
f895adbb05 initial todo on multiple passwords entry for get 2022-09-06 21:02:01 +00:00
jgoerzen
d23318ae4f Added a comment 2022-09-05 23:57:01 +00:00
jgoerzen
aa4ba3fc7c Added a comment 2022-09-05 22:01:24 +00:00
jgoerzen
403dca7c42 Added a comment 2022-09-05 18:44:01 +00:00
Joey Hess
4a1908f12c
Merge branch 'master' of ssh://git-annex.branchable.com 2022-09-05 14:36:32 -04:00
Joey Hess
99a17e6185
comment 2022-09-05 14:35:24 -04:00
jgoerzen
764fa6e230 Added a comment 2022-09-05 18:29:31 +00:00
Joey Hess
bd7b760cf0
comment 2022-09-05 14:00:50 -04:00
Joey Hess
8a4cfd4f2d
use getSymbolicLinkStatus not getFileStatus to avoid crash on broken symlink
Fix crash importing from a directory special remote that contains a broken
symlink.

The crash was in listImportableContentsM but some other places in
Remote.Directory also seemed like they could have the same problem.

Also audited for other places that have such a problem. Not all calls
to getFileStatus are bad, in some cases it's better to crash on something
unexpected. For example, `git-annex import path` when the path is a broken
symlink should crash, the same as when it does not exist. Many of the
getFileStatus calls are like that, particularly when they involve
.git/annex/objects which should never have a broken symlink in it.

Fixed a few other possible cases of the problem.

Sponsored-by: Lawrence Brogan on Patreon
2022-09-05 13:46:32 -04:00
Joey Hess
600d3f7141
Merge branch 'master' of ssh://git-annex.branchable.com 2022-09-05 13:20:44 -04:00
Joey Hess
ff0490c7c6
fix build 2022-09-05 13:20:23 -04:00
Joey Hess
61b60f9e46
update 2022-09-05 10:44:45 -04:00
Lukey
7dd6e38945 Added a comment 2022-09-05 09:35:18 +00:00
Lukey
6e99fbc2e5 Added a comment 2022-09-05 09:07:05 +00:00
jgoerzen
fa01f0bab9 Added a comment 2022-09-05 01:14:53 +00:00
jgoerzen
661f452dfa Added a comment 2022-09-05 01:01:59 +00:00
jgoerzen
3159a28f88 2022-09-05 00:59:39 +00:00
jgoerzen
e7de6fffc1 2022-09-05 00:17:03 +00:00
jgoerzen
47a5853da8 Added a comment 2022-09-04 22:31:14 +00:00
jgoerzen
95e4021c09 2022-09-04 13:12:55 +00:00
tomdhunt
241b275f63 2022-09-04 04:39:20 +00:00
jgoerzen
5fe6803375 2022-09-04 01:16:18 +00:00
jgoerzen
a4e9e656c9 Added a comment 2022-09-03 23:26:28 +00:00
jgoerzen
342336aad4 Added a comment 2022-09-03 22:45:42 +00:00
Lukey
217cfd91df Added a comment 2022-09-03 21:32:29 +00:00
jgoerzen
fee2445df0 2022-09-03 20:37:25 +00:00
jgoerzen
b36afc1367 2022-09-03 17:38:23 +00:00
jgoerzen
7785835363 2022-09-03 17:33:49 +00:00
jgoerzen
254c204da2 Added a comment: mtree can help 2022-09-03 17:30:58 +00:00
jgoerzen
3723922e49 2022-09-03 17:29:06 +00:00
Joey Hess
be2c8113b9
add NNCP special remote! 2022-09-02 16:55:36 -04:00
jkniiv
15e9feb1e9 Added a comment: I don't think there is one 2022-09-02 02:04:29 +00:00
yarikoptic
4241c64a8d question about external drive filesystem 2022-09-01 20:50:21 +00:00
yarikoptic
84eda42abe Added a comment: howto importfeed youtube playlists (not entire channels) 2022-09-01 19:26:20 +00:00
yarikoptic
4fd4865493 FTBFS report 2022-08-31 14:47:35 +00:00
yarikoptic
55252d1d4f Added a comment 2022-08-30 19:38:49 +00:00
Joey Hess
b7ff67d176
update 2022-08-30 15:22:06 -04:00
Joey Hess
e1dd689630
Merge branch 'master' of ssh://git-annex.branchable.com 2022-08-30 15:20:46 -04:00
Joey Hess
a93163d6f7
optimise linker in linux standalone tarballs
Trick the linker into not doing unncessary work searching for optimised
libraries that are not present, by symlinking the directories where
optimised libs would be to the main lib dir.

This reduces the ENOENT of git-annex init by about 1/2. The linker always
finds the files where it looks first time now. I have not looked at what
the wall clock speedup might be, it's probably rather small.

If a x86-64-v5 comes to be, the list will need to be extended. And there
may be other directories used on some machines that I have missed. Not done
for arm64 yet, or any uncommon architectures.

Sponsored-by: Dartmouth College's Datalad project
2022-08-30 15:20:04 -04:00
Joey Hess
345e60a623
comment 2022-08-30 13:36:53 -04:00
Joey Hess
22f492bea8
comment 2022-08-30 12:50:42 -04:00
DavidD
98e20eb579 Added a comment 2022-08-29 21:19:56 +00:00
yarikoptic
04689aa74d Added a comment 2022-08-29 20:46:12 +00:00
Joey Hess
78440ca37d
move assistant and webapp build-depends into main build-depends
For some reason, cabal 3.4.1.0 builds w/o the assistant and webapp,
even when the flag is explicitly turned on. Moving the build-depends from
inside the if flag section to the main build-depends somehow fixes this.

Since the webapp build deps are thus always available, there is no reason
not to build the webapp when building the assistant. So, got rid of the
webapp build flag. Kept the assistant build flag for now, since building
without it does at least still speed up the build.

Sponsored-by: Brock Spratlen on Patreon
2022-08-29 15:23:49 -04:00
Joey Hess
b99b1c530d
Merge branch 'master' of ssh://git-annex.branchable.com 2022-08-29 14:50:04 -04:00
Joey Hess
faefab5e65
add bug and update comment 2022-08-29 14:49:44 -04:00
Ilya_Shlyakhter
8df2e2dbd8 added suggestion for git-annex-import to import symlinks 2022-08-29 18:45:35 +00:00
Joey Hess
248cf6b151
Merge branch 'master' of ssh://git-annex.branchable.com 2022-08-29 14:25:39 -04:00
Joey Hess
4c080a20ac
comment 2022-08-29 14:25:30 -04:00
Ilya_Shlyakhter
a1efed2a9c Added a comment: testremote cleanup 2022-08-29 18:09:24 +00:00
Joey Hess
d4fd966396
avoid dup check of guardSafeToUseRepo
Speeds up init slightly, and reduces the number of syscalls by the
dynamic linker.

Sponsored-by: Dartmouth College's Datalad project
2022-08-29 13:52:58 -04:00
Joey Hess
f184dca7de
comment 2022-08-29 13:38:42 -04:00
Joey Hess
f8524d6ecb
comment 2022-08-29 12:45:58 -04:00
Ilya_Shlyakhter
86e0e8fce1 Added a comment: testremote cleanup 2022-08-28 20:15:39 +00:00
Atemu
3cd2a075b9 Added a comment 2022-08-28 17:56:20 +00:00
hoegiflo@befdf51af27be5af346451fe32863dadb1d37ad5
a2ee27851b Added a comment 2022-08-27 21:00:49 +00:00
yarikoptic
ab8ffb406c initial report on libpcre lookups 2022-08-27 00:53:22 +00:00
Ilya_Shlyakhter
609a82c653 Added a comment: copying to S3: partsize/chunking 2022-08-25 17:45:49 +00:00
Atemu
090489832c Added a comment 2022-08-25 16:18:39 +00:00