Commit graph

12136 commits

Author SHA1 Message Date
Joey Hess
8a3beabf35
use RawFilePath for opening sqlite databases
Fix a crash opening sqlite databases when run in a non-unicode locale,
with a remote that uses a non-unicode filepath. In that situation
converting to Text fails.

The fix needs git-annex to be built with persistent-sqlite 2.13.3.
Building against older versions still works, but that version is used when
building with stack.

Database.RawFilePath is a lot of code copied from persistent-sqlite and
lightly modified, since only 1 function in persistent-sqlite was made to
support RawFilePath. This is a bit of a pain, and I hope that
persistent-sqlite will eventually switch to using OsPath, allowing this
module to be removed from git-annex.

Sponsored-by: k0ld on Patreon
2023-12-26 18:31:52 -04:00
Atemu
2fe31d81d3 Added a comment 2023-12-25 13:03:50 +00:00
Joey Hess
3b888369d3
comment 2023-12-20 15:56:36 -04:00
Joey Hess
d7ca716759
response 2023-12-20 13:12:56 -04:00
jkniiv
6c0259018a close bug as notabug due to user error 2023-12-19 23:12:21 +00:00
jkniiv
191dde2857 Added a comment: my report was actually a User Failure on my part 2023-12-19 23:02:16 +00:00
lemondata
19edfc69a7 2023-12-19 00:17:00 +00:00
jkniiv
9189c41dde report on the 'Production' build flag not producing a binary that passes the test suite 2023-12-08 16:38:12 +00:00
nobodyinperson
df62843f64 Added a comment: Similar to initremote type=git 2023-12-07 08:31:09 +00:00
Joey Hess
1f811c340d
kinda a bug 2023-12-05 16:43:14 -04:00
Joey Hess
a6eb7d7339
prevent relatedTemplate from truncating a filename to end in "."
Avoid a problem with temp file names ending in "." on certian filesystems
that have problems with such filenames.

relatedTemplate is quite an ugly hack really; since it doesn't know the max
filename length of the filesystem it can only assume that the filename is
max allowed length. When given the input "lh.aparc.DKTatlas.annot", it
wants to reserve 20 characters for tempfile so it truncates to "lh.". That
ending period is apparently a problem on some filesystem (FAT eats it, but
does not throw EINVAL; ntfs does not seem bothered by it, I don't know what
FUSE filesystem the bug reporter was really using).

Sponsored-by: Brett Eisenberg on Patreon
2023-12-05 12:38:14 -04:00
cjmarkie
545f3873ca No change. Just subscribing to comments. 2023-12-05 16:04:46 +00:00
cjmarkie
f6f4ba3c6c 2023-12-05 14:54:11 +00:00
nobodyinperson
9906e8fd4c Added a comment: How about a --offline flag? 2023-12-04 17:52:44 +00:00
Joey Hess
0485dd3161
sync: Fix locking problems during merge when annex.pidlock is set
Presumably git merge sometimes needs to verifiy if a worktree file is
modified, and so will then run git-annex filter-process which would try to
take the pid lock. And for whatever reason, git-annex sync already had the
pidlock held. I have not replicated that, but it does make enough sense to
deploy the workaround.

Like I said back in commit 7bdb0cdc0d,

   Arguably, it would be better to have a way to make any process git-annex
   runs have the env var set. But then it would need to take the pid lock
   when running any and all processes, and that would be a problem when
   git-annex runs two processes concurrently. So, I'm left doing it ad-hoc
   in places where git-annex really does run a child process, directly
   or indirectly via a particular git command.

Sponsored-by: KDM on Patreon
2023-12-04 13:40:28 -04:00
Joey Hess
37ff9b6401
comment 2023-12-04 13:03:16 -04:00
Atemu
a0540498b4 Added a comment 2023-12-03 21:11:19 +00:00
kdm9
92f37d0d49 new pidlock bug 2023-12-03 10:16:43 +00:00
nobodyinperson
381e316e29 Added a comment: Another possibility to make --fast faster? 2023-12-01 11:50:25 +00:00
Atemu
398da4f6ab Added a comment 2023-12-01 10:21:10 +00:00
Joey Hess
1e31bf8122
copy/move --from-anywhere --to remote
Implementation was simple because it's equivilant to
--from=foo --to remote for each other remote, followed by
--to remote when there's a local copy.

(Or, in the edge case of --from-anywhere --to=here,
it's the same as --to=here.)

Note that, when the local repo does not have a copy,
fromToPerform gets it from a remote, sends it to the destination,
and drops the local copy. Another call to that for a second remote
will notice that the dest now has a copy, and simply drop from the
second remote, avoiding a second transfer.

Also note that, when numcopies doesn't allow dropping it from
everywhere, it will drop it from the cheapest remotes first
(maybe not ideal) up to more expensive remotes, and finally from the local
repo. So the local repo will generally end up holding a copy. Maybe not
ideal in all cases either, but it seems no worse to do that than to end up
with a copy undropped from a remote.

And I'm not entirely happy with the output, eg:

	copy bigfile (from r3...) ok
	copy bigfile ok

That makes sense if you think of the second line as being
the same as what is output by `git-annex copy bigfile --to bar`,
but it's less clear in this context. Maybe add "(from here...)"?
Also the --json output doesn't have a machine-readable field for
the "from" uuid, and maybe it should?

Sponsored-by: Dartmouth College's DANDI project
2023-11-30 16:34:30 -04:00
Joey Hess
e66a082b4e
close as fixed 2023-11-29 13:32:19 -04:00
Joey Hess
f3f864fc6d
findkeys: Support --largerthan and --smallerthan
Sponsored-by: Brett Eisenberg on Patreon
2023-11-28 11:51:43 -04:00
lell
6707534edb 2023-11-28 10:41:33 +00:00
lell
7d2300e74e 2023-11-28 10:41:15 +00:00
lell
110fa43ea3 2023-11-28 10:41:02 +00:00
lell
33119339aa 2023-11-28 10:39:30 +00:00
lell
bc6a16813d 2023-11-28 10:37:35 +00:00
lell
4d9751f95f 2023-11-28 10:35:34 +00:00
nobodyinperson
574196b887 Added a comment 2023-11-21 20:20:14 +00:00
Joey Hess
c3dd670609
comment 2023-11-21 16:16:27 -04:00
Joey Hess
e08f170b0e
followup and wontfix this 2023-11-21 16:11:10 -04:00
Joey Hess
96c269e087
comment 2023-11-21 16:02:21 -04:00
Joey Hess
a16ad2096b
close 2023-11-21 15:59:18 -04:00
Joey Hess
7ff40bc5be
move a comment that is a bug report 2023-11-21 15:57:10 -04:00
yarikoptic
dbf1f5d6d6 Added a comment 2023-11-18 01:35:35 +00:00
Joey Hess
6e3bcbf4dd
Make git-annex copy --from --to --fast actually fast
Eg when the destination is logged as containing a file, skip
actively checking that it does contain it.

Note that --fast does not prevent other verifications of content
location that are done in a copy --from --to. Perhaps it could, but this
change will already avoid the real unnecessary work of operating on
files that are already in the remote.

And avoiding other verifications
might cause it to fail if the location log thinks that --to does not
contain the content but does. Such complications with `git-annex copy
--to remote --fast` led to commit d006586cd0
which added a note that gets displayed when that fails, mentioning it
might be due to --fast being enabled.

copy --from --to is already complicated enough without needing to worry
about such edge cases, so continuing to doing some verification of
content location after the initial --fast filtering seems ok.

Sponsored-by: Dartmouth College's DANDI project
2023-11-17 17:37:58 -04:00
Joey Hess
9f6609d2b1
fixed 2023-11-17 16:46:43 -04:00
Joey Hess
7a8393ce7d
Fix bug in git-annex copy --from --to
Caused it to skip files that were locally present.

Sponsored-by: Dartmouth College's DANDI project
2023-11-17 16:30:20 -04:00
Joey Hess
f2f6dbe46b
comment 2023-11-17 16:17:44 -04:00
yarikoptic
27e705ea72 remove content of now independent issue https://git-annex.branchable.com/bugs/copy_--from_--to_does_not_copy_if_present_locally/ 2023-11-17 02:23:17 +00:00
yarikoptic
0bde6e8cf4 initial dedicated issue on copy --from --to not copying if present locally 2023-11-17 02:07:35 +00:00
yarikoptic
7205876d23 initial report on --fast of being no effect for copy --from --to 2023-11-16 17:54:49 +00:00
Ilya_Shlyakhter
a15446b458 added bug report for git init on a worktree checked out for a submodule. 2023-11-15 18:45:52 +00:00
grond66@79ca29ba964cd0d8e2f352871d54452e4a9dad88
a79d819b5b 2023-11-14 04:32:15 +00:00
aurelien@f0d0a0c7da69eff6badf0464898f0a859f69114d
eb846403c9 2023-11-06 01:48:43 +00:00
nobodyinperson
b0b54b678b report 2023-11-05 13:58:25 +00:00
Joey Hess
c41ca6c832
convert StorableCipher to ByteString
This allows getting rid of the ugly and error prone handling of
"bag of bytes" String in Remote.Helper.Encryptable.
Avoiding breakage like that dealt with by commit
9862d64bf9

And allows converting Utility.Gpg to use ByteString for IO, which is
a welcome change.

Tested the new git-annex interoperability with old, using all 3
encryption= types.

Sponsored-By: the NIH-funded NICEMAN (ReproNim TR&D3) project
2023-11-01 14:39:49 -04:00
Joey Hess
9862d64bf9
bring back "bag of bytes" handling for ciphers
Fixes test suite failure with LANG=C caused by commit
3742263c99

Sponsored-By: the NIH-funded NICEMAN (ReproNim TR&D3) project
2023-11-01 13:09:42 -04:00
Joey Hess
c927a38dc5
reproduced 2023-11-01 12:19:50 -04:00