Commit graph

33124 commits

Author SHA1 Message Date
Joey Hess
7fc48fb348
comment 2023-05-03 15:25:17 -04:00
yarikoptic
2002108a55 plea for --json for unannex and other commands 2023-05-03 19:08:03 +00:00
nobodyinperson
bc1410100b Added a comment: adding all files or only in current directory? 2023-05-03 14:23:05 +00:00
dud225@35a1ee469f82f3a7eb1f2dce4ad453f5e47bdfd3
327bd6bad0 Added a comment: Groups comprised of archive drives of various size 2023-05-03 07:49:19 +00:00
Joey Hess
b90c2156a6
forwarded git bug 2023-05-02 13:27:04 -04:00
Joey Hess
72fb1262a3
comment 2023-05-01 17:10:31 -04:00
Joey Hess
460992d2a1
comment 2023-05-01 17:08:44 -04:00
Joey Hess
703014d989
beat my head against this bug for a couple hours 2023-05-01 17:05:51 -04:00
Joey Hess
d98a7f0afc
comment 2023-05-01 13:09:47 -04:00
Joey Hess
57c1b4f5e5
initremote: Avoid creating a remote that is not encrypted when gpg is broken
checksize was applied lazily, so the exception didn't happen until the
remote was set up.

Sponsored-by: k0ld on Patreon
2023-05-01 13:00:05 -04:00
Joey Hess
23719bc91b
comment 2023-05-01 12:30:25 -04:00
tom@b87e4336a0d0785eb7d5853e390835a18797402f
59f0ea3aeb Added a comment 2023-05-01 16:10:00 +00:00
Joey Hess
0bf983d3ab
fixed related issue 2023-05-01 12:07:20 -04:00
Joey Hess
66fe3b0908
comment 2023-05-01 11:57:49 -04:00
tom@b87e4336a0d0785eb7d5853e390835a18797402f
7cb870e008 Added a comment: output 2023-05-01 12:58:46 +00:00
nobodyinperson
def1eee573 Added a comment 2023-05-01 12:26:10 +00:00
tom@b87e4336a0d0785eb7d5853e390835a18797402f
c8176f899b 2023-05-01 12:05:34 +00:00
nobodyinperson
52c0fc97e3 Added a comment: git-annex relaying syncs across remotes 2023-05-01 08:50:10 +00:00
tom@b87e4336a0d0785eb7d5853e390835a18797402f
0ef32b50fe Added a comment: What is the underlying reason for needing a two-way SSH connection 2023-05-01 08:34:46 +00:00
nobodyinperson
7301308be6 Added a comment 2023-04-29 14:46:46 +00:00
tom@b87e4336a0d0785eb7d5853e390835a18797402f
1b9324ab65 2023-04-29 14:34:27 +00:00
nobodyinperson
a24a4cfbcd 2023-04-28 07:56:18 +00:00
Joey Hess
aff37fc208
avoid annexFileMode special case
This makes annexFileMode be just an application of setAnnexPerm',
which avoids having 2 functions that do different versions of the same
thing.

Fixes some buggy behavior for some combinations of core.sharedRepository
and umask.

Sponsored-by: Jack Hill on Patreon
2023-04-27 15:58:37 -04:00
Joey Hess
67f8268b3f
Support core.sharedRepository=0xxx at long last
Sponsored-by: Brett Eisenberg on Patreon
2023-04-26 17:03:29 -04:00
Joey Hess
7af75a59be
Warn about unsupported core.sharedRepository=0xxx when set
This spams the user with a lot of messages, but it seems like busywork to
avoid that and only warn once, since this warning will go away when it gets
implemented.

Also fix parsing of the octal value.

Sponsored-by: Kevin Mueller on Patreon
2023-04-26 13:25:29 -04:00
Joey Hess
4881bc5a53
rename errorid to message-id 2023-04-26 12:53:30 -04:00
yarikoptic
b43da83a67 Added a comment 2023-04-26 16:38:27 +00:00
yarikoptic
5a24daf500 Added a comment 2023-04-26 14:34:32 +00:00
Joey Hess
4d6c918eff
avoid quoting spaces in git-annex find output to terminal
That's too much quoting, the user expects the filename to be copy and
pasteable. It would be ok to slash-escape space ('\ ')
which is what gnu find does, but it doesn't seem necessary either.

${escaped_file} has always quoted spaces though, so keep on doing it
there.

Sponsored-by: Nicholas Golder-Manning on Patreon
2023-04-26 00:18:30 -04:00
Joey Hess
4358545a3e
note 2023-04-25 19:36:23 -04:00
Joey Hess
96cb6d2157
close and followup 2023-04-25 19:32:51 -04:00
Joey Hess
be36e208c2
json object for FileNotFound
When a nonexistant file is passed to a command and  --json-error-messages
is enabled, output a JSON object indicating the problem.

(But git ls-files --error-unmatch still displays errors about such files in
some situations.)

I don't like the duplication of the name of the command introduced by this,
but I can't see a great way around it. One way would be to pass the Command
instead.

When json is not enabled, the stderr is unchanged. This is necessary
because some commands like find have custom output. So dislaying
"find foo not found" would be wrong. So had to complicate things with
toplevelFileProblem having different output with and without json.

When not using --json-error-messages but still using --json, it displays
the error to stderr, but does display a json object without the error. It
does have an errorid though. Unsure how useful that behavior is.

Sponsored-by: Dartmouth College's Datalad project
2023-04-25 19:26:20 -04:00
Joey Hess
91ba0cc7fd
Revert "--json-exceptions"
This reverts commit a325524454.

Turns out this was predicated on an incorrect belief that json output
didn't already sometimes lack the "key" field. Since json output already
can when `giveup` was used, it seems unncessary to add a whole new
option for this.
2023-04-25 17:37:34 -04:00
Joey Hess
7c514d717b
Merge branch 'master' of ssh://git-annex.branchable.com 2023-04-25 17:08:52 -04:00
Joey Hess
a325524454
--json-exceptions
Added a --json-exceptions option, which makes some exceptions be output in json.

The distinction is that --json-error-messages is for messages relating
to a particular ActionItem, while --json-exceptions is for messages that
are not, eg ones for a file that does not exist.

It's unfortunate that we need two switches with such a fine distinction
between them, but I'm worried about maintaining backwards compatability
in the json output, to avoid breaking anything that parses it, and this was
the way to make sure I didn't.

toplevelWarning is generally used for the latter kind of message. And
the other calls to toplevelWarning could be converted to showException. The
only possible gotcha is that if toplevelWarning is ever called after
starting acting on a file, it will add to the --json-error-messages of the
json displayed for that file and converting to showException would be a
behavior change. That seems unlikely, but I didn't convery everything to
avoid needing to satisfy myself it was not a concern.

Sponsored-by: Dartmouth College's Datalad project
2023-04-25 17:05:33 -04:00
yarikoptic
38e9b0989e Added a comment 2023-04-25 18:45:58 +00:00
Joey Hess
a474c9c63b
upcase JSON 2023-04-25 14:35:18 -04:00
yarikoptic
def90e6fb0 Added a comment 2023-04-25 18:31:20 +00:00
Joey Hess
6b77c02be9
comment 2023-04-25 14:30:27 -04:00
Joey Hess
97d10f2f44
update 2023-04-25 13:49:19 -04:00
Joey Hess
cd05cfc035
comment 2023-04-25 13:19:28 -04:00
Joey Hess
26953ad3a6
comment 2023-04-25 13:18:01 -04:00
Joey Hess
00b29d17ad
update docs to account for exporttree 2023-04-25 12:15:14 -04:00
dud225@35a1ee469f82f3a7eb1f2dce4ad453f5e47bdfd3
722bb79dbf Added a comment: File visibility 2023-04-25 05:09:49 +00:00
BillyIII
38825e089d removed 2023-04-24 23:22:08 +00:00
BillyIII
c62ca36bf5 Added a comment 2023-04-24 23:18:48 +00:00
yarikoptic
5bc8052d9c Added a comment 2023-04-24 21:25:09 +00:00
Joey Hess
a127949e65
comment 2023-04-24 16:05:35 -04:00
yarikoptic
57ad9d8da4 Added a comment 2023-04-24 19:23:22 +00:00
Joey Hess
b002199366
comment 2023-04-24 11:53:14 -04:00
nobodyinperson
6b58846d93 2023-04-24 15:07:28 +00:00
aurtzy
51df5cb26e 2023-04-24 03:25:41 +00:00
aurtzy
c70677e31d 2023-04-24 03:16:12 +00:00
yarikoptic
589abdeb5c initial report on bad escaping 2023-04-22 05:06:01 +00:00
Joey Hess
3545c9f2c1
close 2023-04-21 12:34:20 -04:00
adina.wagner@2a4cac6443aada2bd2a329b8a33f4a7b87cc8eff
a32b0b8659 Added a comment 2023-04-21 07:08:35 +00:00
Joey Hess
e856ae0f35
idea 2023-04-20 14:21:22 -04:00
Joey Hess
2752360708
analysis and followup 2023-04-20 14:11:04 -04:00
DavidD
2de88e299f 2023-04-20 16:08:21 +00:00
DavidD
728a9ce995 2023-04-20 15:43:30 +00:00
DavidD
430bf010ad 2023-04-20 15:37:46 +00:00
Joey Hess
31e4b6dee1
catch chdir exception in --autostop
assistant --autostop: Avoid crashing when ~/.config/git-annex/autostart
lists a directory that it cannot chdir to.

Sponsored-by: k0ld on Patreon
2023-04-19 12:42:02 -04:00
Joey Hess
d223fa3b0a
response 2023-04-19 12:26:20 -04:00
Joey Hess
cf85d54a2f
comment and improve docs 2023-04-19 12:20:26 -04:00
dud225@35a1ee469f82f3a7eb1f2dce4ad453f5e47bdfd3
43271632af Added a comment: Sync to remote master? 2023-04-19 08:40:41 +00:00
kirrik96@419b50c9fb455c2f172184be932c5df3635a3cf4
3d1d77a1bb 2023-04-18 21:12:21 +00:00
Joey Hess
9155ed1072
configremote
New command, currently limited to changing autoenable= setting of a special remote.

It will probably never be used for more than that given the limitations on
it.

Sponsored-by: Brock Spratlen on Patreon
2023-04-18 15:30:49 -04:00
Joey Hess
8728695b9c
support enableremote of git repo changing eg autoenable=
enableremote: Support enableremote of a git remote (that was previously set
up with initremote) when additional parameters such as autoenable= are
passed.

The enableremote special case for regular git repos is intended to handle
ones that don't have a UUID probed, and the user wants git-annex to
re-probe. So, that special case is still needed. But, in that special
case, the user is not passing any extra parameters. So, when there are
parameters, instead run the special remote setup code. That requires there
to be a uuid known already, and it allows changing things like autoenable=

Remote.Git.enableRemote changed to be a no-op if a git remote with the name
already exists. Which it generally will in this case.

Sponsored-by: Jack Hill on Patreon
2023-04-18 14:00:24 -04:00
Joey Hess
3a402a907f
comment 2023-04-18 13:09:24 -04:00
nobodyinperson
b32ca4180d 2023-04-18 07:55:46 +00:00
mih
377679babc Added a comment: Confirm 2023-04-18 07:54:46 +00:00
Joey Hess
f02d3336b6
comment 2023-04-17 14:09:06 -04:00
Joey Hess
7702165d6a
response 2023-04-17 14:03:02 -04:00
Joey Hess
d727907795
comment 2023-04-17 13:48:23 -04:00
Joey Hess
fdd1f177b0
response 2023-04-17 13:39:34 -04:00
Joey Hess
2aba119161
already fixed 2023-04-17 13:35:23 -04:00
Joey Hess
f250379975
response 2023-04-17 13:32:50 -04:00
DavidD
c80994c86b Added a comment 2023-04-17 15:27:49 +00:00
yarikoptic
d1fbc8744f Added a comment 2023-04-17 13:01:03 +00:00
dud225@35a1ee469f82f3a7eb1f2dce4ad453f5e47bdfd3
11a498568d Added a comment: Groups comprised of archive drives of various size 2023-04-17 10:12:58 +00:00
nobodyinperson
0393245935 Added a comment: Too old? 2023-04-17 01:43:36 +00:00
adpce
9f8c5a0606 git annex forget bug 2023-04-16 19:58:22 +00:00
nobodyinperson
5780eaffe3 Added a comment 2023-04-16 17:49:51 +00:00
DavidD
8fcb91e75d Added a comment 2023-04-15 22:16:11 +00:00
dirtminer@d11db62478fa082f843be60f2c5a6e1dcf5b3566
80c2ec386c 2023-04-15 01:04:46 +00:00
mih
bef2b3f607 Initial report 2023-04-14 06:55:18 +00:00
Joey Hess
2a0a0fec8c
close ancient moreinfo bug 2023-04-12 17:18:05 -04:00
Joey Hess
317887c4d2
devblog 2023-04-12 15:03:01 -04:00
Joey Hess
fdac66ae10
sanitize control characters in main thread fatal exceptions
Sponsored-by: Noam Kremen on Patreon
2023-04-12 14:21:53 -04:00
Joey Hess
c50aa21d5f
init: Avoid autoenabling special remotes that have control characters in their names
I'm on the fence about this. Notice that pulling from a git remote can
pull branches that have escape sequences in their names. Git will
display those as-is. Arguably git should try harder to avoid that.

But, names of remotes are usually up to the local user, and autoenable
changes that, and so it makes sense that git chooses to display control
characters in names of remotes, and so autoenable needs to guard against
it.

Sponsored-by: Graham Spencer on Patreon
2023-04-12 12:37:12 -04:00
Joey Hess
708f4756d4
Merge branch 'master' of ssh://git-annex.branchable.com 2023-04-11 16:31:42 -04:00
Joey Hess
27915817b0
update 2023-04-11 16:31:31 -04:00
Joey Hess
afa5b883dc
find, findkeys, examinekey: escape output to terminal when --format is not used
Note that filenames are not quoted, only escaped. This is to match the
output of --format with escaping.

Sponsored-by: Lawrence Brogan on Patreon
2023-04-11 15:27:07 -04:00
xloem
59aa498876 Added a comment 2023-04-11 18:07:04 +00:00
Joey Hess
11e89c5a29
mention control characters 2023-04-11 14:06:46 -04:00
xloem
893cd20bee Added a comment 2023-04-11 18:03:26 +00:00
Joey Hess
8b6c7bdbcc
filter out control characters in all other Messages
This does, as a side effect, make long notes in json output not
be indented. The indentation is only needed to offset them
underneath the display of the file they apply to, so that's ok.

Sponsored-by: Brock Spratlen on Patreon
2023-04-11 12:58:01 -04:00
Joey Hess
a0e6fa18eb
eliminate showStart showStartOther
These were not handling control characters and are redundant.

Sponsored-by: Jack Hill on Patreon
2023-04-10 16:28:58 -04:00
Joey Hess
3290a09a70
filter out control characters in warning messages
Converted warning and similar to use StringContainingQuotedPath. Most
warnings are static strings, some do refer to filepaths that need to be
quoted, and others don't need quoting.

Note that, since quote filters out control characters of even
UnquotedString, this makes all warnings safe, even when an attacker
sneaks in a control character in some other way.

When json is being output, no quoting is done, since json gets its own
quoting.

This does, as a side effect, make warning messages in json output not
be indented. The indentation is only needed to offset warning messages
underneath the display of the file they apply to, so that's ok.

Sponsored-by: Brett Eisenberg on Patreon
2023-04-10 15:55:44 -04:00
Joey Hess
cd544e548b
filter out control characters in error messages
giveup changed to filter out control characters. (It is too low level to
make it use StringContainingQuotedPath.)

error still does not, but it should only be used for internal errors,
where the message is not attacker-controlled.

Changed a lot of existing error to giveup when it is not strictly an
internal error.

Of course, other exceptions can still be thrown, either by code in
git-annex, or a library, that include some attacker-controlled value.
This does not guard against those.

Sponsored-by: Noam Kremen on Patreon
2023-04-10 13:50:51 -04:00
Joey Hess
da83652c76
addurl --preserve-filename: reject control characters
As well as escape sequences, control characters seem unlikely to be desired when
doing addurl, and likely to trip someone up. So disallow them as well.

I did consider going the other way and allowing filenames with control characters
and escape sequences, since git-annex is in the process of escaping display
of all filenames. Might still be a better idea?

Also display the illegal filename git quoted when it rejects it.

Sponsored-by: Nicholas Golder-Manning on Patreon
2023-04-10 12:18:25 -04:00
Joey Hess
2ba1559a8e
git style quoting for ActionItemOther
Added StringContainingQuotedPath, which is used for ActionItemOther.

In the process, checked every ActionItemOther for those containing
filenames, and made them use quoting.

Sponsored-by: Graham Spencer on Patreon
2023-04-08 16:30:01 -04:00
Joey Hess
c5b017e55b
full emulation of git filename escaping
Not yet used, but the plan is to make git-annex use this when displaying
filenames similar to how git does.

Sponsored-by: Lawrence Brogan on Patreon
2023-04-07 17:17:31 -04:00
Joey Hess
f0b1034f8f
add news item for git-annex 10.20230407 2023-04-07 13:37:18 -04:00
Joey Hess
218cb6ab56
expand 2023-04-07 13:13:16 -04:00
Joey Hess
e6a4782b0c
response 2023-04-07 13:00:56 -04:00
Joey Hess
b4e5f2b8a4
response 2023-04-07 12:52:43 -04:00
Joey Hess
868eb44562
Merge branch 'master' of ssh://git-annex.branchable.com 2023-04-07 12:42:09 -04:00
jwodder
b8afb79ada 2023-04-07 15:19:04 +00:00
mih
c83a783f45 Added a comment: Status of the import/export protocol implementation 2023-04-07 09:17:22 +00:00
Joey Hess
c417336fbb
todo 2023-04-05 19:37:21 -04:00
Joey Hess
98a3ba0ea5
restore old registerurl location tracking behavior
registerurl: When an url is claimed by a special remote other than the web,
update location tracking for that special remote.

registerurl's behavior was changed in commit
451171b7c1, apparently accidentially to not
update location tracking except for the web.

This makes registerurl followed by unregisterurl not be a no-op, when the
url happens to be claimed by a remote other than the web. It is a noop when
the url is unclaimed except by the web. I don't like the inconsistency,
and wish that registerurl and unregisterurl never updated location
tracking, which would be more in keeping with them being plumbing.

But there is the fact that it used to behave this way, and also it was
inconsistent that it updated location tracking for the web but not for
other remotes, unlike addurl. And there's an argument that the user might
not know what remote to expect to claim an url, so would be considerably in
the dark when using registerurl. (Although they have to know what content
gets downloaded, since they specify a key..)

Sponsored-By: the NIH-funded NICEMAN (ReproNim TR&D3) project
2023-04-05 17:06:44 -04:00
Joey Hess
26a094ac1a
hm 2023-04-05 16:36:18 -04:00
Joey Hess
eecd02fd3d
Merge branch 'master' of ssh://git-annex.branchable.com 2023-04-05 15:56:31 -04:00
Joey Hess
2b940f7725
registerurl, unregisterurl: Added --remote option
This serves two purposes. --remote=web bypasses other special remotes that
claim the url, same as addurl --raw. And, specifying some other remote
allows making sure that an url is claimed by the remote you expect,
which makes then using setpresentkey not be fragile.

Sponsored-By: the NIH-funded NICEMAN (ReproNim TR&D3) project
2023-04-05 15:54:41 -04:00
yarikoptic
1751ddd759 Added a comment 2023-04-05 19:36:41 +00:00
Joey Hess
c39d72ac78
comments 2023-04-05 15:00:39 -04:00
Joey Hess
06c584a267
Merge branch 'master' of ssh://git-annex.branchable.com 2023-04-05 11:04:55 -04:00
Joey Hess
1780b657bc
update 2023-04-05 11:04:35 -04:00
jkniiv
247430a272 Added a comment 2023-04-05 09:42:12 +00:00
yarikoptic
e4c93a233e Added a comment 2023-04-05 01:03:38 +00:00
yarikoptic
25bdb45b72 Added a comment 2023-04-05 00:30:00 +00:00
yarikoptic
352a274f53 Added a comment 2023-04-04 20:15:59 +00:00
Joey Hess
d0e94b4302
fixed 2023-04-04 15:19:25 -04:00
Joey Hess
68a0491f83
comment 2023-04-04 14:43:33 -04:00
Joey Hess
4e64af0010
comment 2023-04-04 14:31:25 -04:00
Joey Hess
31ffb0f216
probably fixed but I didn't actually reproduce it 2023-04-04 14:25:55 -04:00
Joey Hess
e37b968383
comment 2023-04-04 14:09:02 -04:00
Joey Hess
bac1a990a6
comments 2023-04-04 13:52:23 -04:00
Joey Hess
c3eaecb244
comment 2023-04-04 13:34:32 -04:00
jkniiv
4a5b5bdd0d Added a comment: happens during sync too 2023-04-03 11:48:10 +00:00
gioele@678b7c03f524f2669b179b603f65352fcc16774e
dfb5826be2 2023-04-03 09:05:45 +00:00
gioele@678b7c03f524f2669b179b603f65352fcc16774e
f9d24e92a0 Added a comment 2023-04-01 11:09:49 +00:00
gioele@678b7c03f524f2669b179b603f65352fcc16774e
170c5edb44 Added a comment 2023-04-01 11:06:26 +00:00
wolf480@8ad1ccdd08efc303a88f7e88c4e629be6637a44e
71e0ec2901 Added a comment 2023-04-01 07:23:18 +00:00
yarikoptic
45eaf8e484 reporting an annoying registerurl issue not registering a URL 2023-03-31 22:36:02 +00:00
yarikoptic
d9549d4744 initial todo for adding --remote to registerurl 2023-03-31 22:15:26 +00:00
gioele@678b7c03f524f2669b179b603f65352fcc16774e
f74a3d1e59 Added a comment 2023-03-31 20:16:04 +00:00
Joey Hess
88ea10f606
Merge branch 'master' of ssh://git-annex.branchable.com 2023-03-31 15:16:28 -04:00
Joey Hess
cc36c8516a
Sped up sqlite inserts 2x when built with persistent 2.14.5.0
https://github.com/yesodweb/persistent/issues/1457

Sponsored-by: Dartmouth College's DANDI project
2023-03-31 14:38:25 -04:00
zhongruoyu@80ae9772857666624009364c29f07c70beed46ac
8119f22344 Added a comment 2023-03-31 18:32:29 +00:00
Joey Hess
a858099272
clarify 2023-03-31 14:18:50 -04:00
Joey Hess
8047df62cc
fix link 2023-03-31 14:18:36 -04:00
Joey Hess
f2914ab6a0
idea 2023-03-31 13:11:35 -04:00
Joey Hess
2b40fa51d3
git-annex.cabal: Prevent building with unix-compat 0.7
Which removed System.PosixCompat.User.
See https://github.com/haskell-pkg-janitors/unix-compat/issues/3

Sponsored-by: Noam Kremen on Patreon
2023-03-31 12:52:23 -04:00
wolf480@8ad1ccdd08efc303a88f7e88c4e629be6637a44e
eb51b385a0 Added a comment 2023-03-30 17:33:58 +00:00
wolf480@8ad1ccdd08efc303a88f7e88c4e629be6637a44e
43878157d3 Added a comment 2023-03-30 17:33:10 +00:00
zhongruoyu@80ae9772857666624009364c29f07c70beed46ac
51643bba3e 2023-03-29 22:44:08 +00:00
ptilopteri
e6a337e8e4 2023-03-29 22:32:06 +00:00
Joey Hess
db1b4ac173
add news item for git-annex 10.20230329 2023-03-29 16:09:15 -04:00
sawmke
30d7f9ad78 2023-03-29 11:47:13 +00:00
dpifke
772eaa21bf Added a comment 2023-03-29 03:13:50 +00:00
Joey Hess
992a65bd4d
fix whitespace 2023-03-28 17:13:04 -04:00
Joey Hess
be65476fd4
close 2023-03-28 17:01:25 -04:00
Joey Hess
18d326cb6f
external protocol VERSION 2
Support VERSION 2 in the external special remote protocol, which is
identical to VERSION 1, but avoids external remote programs neededing to
work around the above bug. External remote program that support
exporttree=yes are recommended to be updated to send VERSION 2.

Sponsored-by: Kevin Mueller on Patreon
2023-03-28 17:00:08 -04:00
Joey Hess
82c65b7951
comment 2023-03-28 16:08:46 -04:00
Joey Hess
e987725282
fixed 2023-03-28 15:26:26 -04:00
Joey Hess
390ed554e8
clarify EXPORT 2023-03-28 15:18:05 -04:00
Joey Hess
c1d698f1f2
comment 2023-03-28 14:31:00 -04:00
Joey Hess
75ac65435a
comment 2023-03-28 14:26:19 -04:00
Joey Hess
e8a749d63e
Merge branch 'master' of ssh://git-annex.branchable.com 2023-03-28 14:09:22 -04:00
Joey Hess
bddb3230a5
comment 2023-03-28 14:08:24 -04:00
jonahmail1@a6afaf85da848e3a3cf7fcec09326a982d4c1819
63c690ddc0 2023-03-28 17:27:46 +00:00
jonahmail1@a6afaf85da848e3a3cf7fcec09326a982d4c1819
668785f182 2023-03-28 17:27:33 +00:00
Joey Hess
4461223c8f
comment 2023-03-28 13:13:34 -04:00
Joey Hess
a5709dcc22
Copy with a reflink when exporting a tree to a directory special remote
Remote.Directory makes a temp file, then calls this, and since the temp
file exists, it prevented probing if CoW works.

Note that deleting the empty file does mean there's a small window for a
race. If another process is also exporting to the remote, that could let it
make the same temp file. However, the temp filename actually has the
processes's pid in it, which avoids that being a problem.

This may have been a reversion caused by commits around
63d508e885, but I haven't gone back and
tested to be sure. The directory special remote had supposedly supported
CoW for this going back to about half a year before that.

Sponsored-by: Graham Spencer on Patreon
2023-03-28 13:09:14 -04:00
Joey Hess
bb8c550d0d
comment 2023-03-28 12:14:23 -04:00
gerzoyayde@85d55f6dec266753698f42d1c8e06917ef6674a3
a91f8070e7 Added a comment: annex.bwlimit and jobs 2023-03-28 00:00:44 +00:00
Joey Hess
24ae4b291c
addurl, importfeed: Fix failure when annex.securehashesonly is set
The temporary URL key used for the download, before the real key is
generated, was blocked by annex.securehashesonly.

Fixed by passing the Backend that will be used for the final key into
runTransfer. When a Backend is provided, have preCheckSecureHashes
check that, rather than the key being transferred.

Sponsored-by: unqueued on Patreon
2023-03-27 15:10:46 -04:00
Joey Hess
f4a390b2a6
promote comment to bug 2023-03-27 14:10:32 -04:00
Joey Hess
c1d0f90081
verified fixed 2023-03-27 13:58:16 -04:00
Joey Hess
5fdc074fa7
Merge branch 'master' of ssh://git-annex.branchable.com 2023-03-27 13:38:13 -04:00
Joey Hess
3badde71ae
comment 2023-03-27 12:36:21 -04:00
jonas
b9965126a1 2023-03-26 20:04:22 +00:00
wolf480@8ad1ccdd08efc303a88f7e88c4e629be6637a44e
af24798abd 2023-03-26 19:00:42 +00:00
wolf480@8ad1ccdd08efc303a88f7e88c4e629be6637a44e
140edd65ac 2023-03-26 18:39:20 +00:00
gioele@678b7c03f524f2669b179b603f65352fcc16774e
4d198a6665 Added a comment 2023-03-25 08:47:01 +00:00
jt
02fe361055 Added a comment: securehashesonly conflicts with addurl 2023-03-25 03:22:50 +00:00
Joey Hess
2b5fa091e2
annex.maxextensionlength for view
view: Support annex.maxextensionlength when generating filenames for the
view branch.

Note that refining an existing view will reuse the extension length that was
configured when initially constructing the view. This is necessarily the case
because it reuses the filenames.

Also view files used to have all extensions at the end, no matter how
many there were. Since annex.maxextensionlength's documentation includes
that it's limited to 2 extensions, I made it consistent with that.

Sponsored-by: k0ld on Patreon
2023-03-24 14:01:38 -04:00
gioele@678b7c03f524f2669b179b603f65352fcc16774e
70a9e995b8 Added a comment 2023-03-24 08:13:00 +00:00
dpifke
3a63b35e89 Added a comment 2023-03-23 23:43:17 +00:00
dpifke
23aac1f8f0 Added a comment 2023-03-23 23:32:45 +00:00
Xyem
bf32e6137d Added a comment 2023-03-23 22:26:25 +00:00
Joey Hess
85702b2b38
comment 2023-03-23 16:45:03 -04:00
Joey Hess
038a2600f4
Avoid leaving repo with a detached head when there is a failure checking out an updated adjusted branch
I don't know of scenarios where that can happen (besides the bug
fixed by the parent commit), but there probably are some.

Sponsored-by: Boyd Stephen Smith Jr. on Patreon
2023-03-23 16:36:43 -04:00
Joey Hess
cb4d9f7b1f
run restagePointerFiles in adjustedBranchRefreshFull
Avoid failure to update adjusted branch --unlock-present after git-annex
drop when annex.adjustedbranchrefresh=1

At higher values, it did flush the queue, which ran restagePointerFiles.
But at 1, adjustedBranchRefreshFull gets added to the queue, and while
restagePointerFiles is also in the queue, it runs after that.

Sponsored-by: Brock Spratlen on Patreon
2023-03-23 16:25:45 -04:00
Joey Hess
d580ea2120
add comment 2023-03-23 15:29:53 -04:00
Joey Hess
3c5f4b89ca
update 2023-03-23 15:29:42 -04:00
Joey Hess
5b4ceda32e
comment 2023-03-23 15:28:27 -04:00
Joey Hess
ec14d95999
comment 2023-03-23 15:27:02 -04:00
Joey Hess
7f6ec7c5bb
response 2023-03-23 15:24:59 -04:00
Joey Hess
c77f2731e9
Merge branch 'master' of ssh://git-annex.branchable.com 2023-03-23 15:22:13 -04:00
Joey Hess
a0badc5069
sync: Fix parsing of gcrypt::rsync:// urls that use a relative path
Such an url is not valid; parseURI will fail on it. But git-annex doesn't
actually need to parse the url, because all it needs to do to support
syncing with it is know that it's not a local path, and use git pull and
push.

(Note that there is no good reason for the user to use such an url. An
absolute url is valid and I patched git-remote-gcrypt to support them
years ago. Still, users gonna do anything that tools allow, and
git-remote-gcrypt still supports them.)

Sponsored-by: Jack Hill on Patreon
2023-03-23 15:20:00 -04:00
Joey Hess
0e18bf029e
comment 2023-03-23 14:21:36 -04:00
Xyem
328e9672db Added a comment 2023-03-23 17:05:24 +00:00
john
2a0a209908 Added a comment 2023-03-23 11:37:53 +00:00
gaknuyardi@f7280525ccd44eafd8d1485ec087f27532efd2e9
0adb3c67f6 Added a comment: Understanding encrypted special remote folder structure 2023-03-22 19:26:56 +00:00
Joey Hess
3f75e9294c
remove appveyor badge, which does not work 2023-03-22 10:55:38 -04:00
gioele@678b7c03f524f2669b179b603f65352fcc16774e
2888a724f9 2023-03-22 10:13:04 +00:00
gioele@678b7c03f524f2669b179b603f65352fcc16774e
4a2dfc4893 2023-03-22 10:06:26 +00:00
jg123h12jh3y12g3y
fc581d0c20 2023-03-22 09:47:31 +00:00
hurlebouc
a40a36495f Added a comment 2023-03-22 05:47:16 +00:00
carlos@4c213b52601d57b650b22d9a246c59aea2c8f859
d29ef26a68 Added a comment 2023-03-21 21:34:01 +00:00
tastabirta@e5349d873c7906025d7db2cc5b86e2529798b640
806c5dc937 2023-03-21 21:28:21 +00:00
Joey Hess
e11776ae80
add news item for git-annex 10.20230321 2023-03-21 16:14:21 -04:00
Joey Hess
bf1bebef25
comment 2023-03-21 14:07:59 -04:00
Joey Hess
2a31f72677
comment 2023-03-21 14:02:43 -04:00
Joey Hess
b1aaebf48b
comment 2023-03-21 13:55:23 -04:00
Joey Hess
4c1156638d
not git-annex specific 2023-03-21 13:51:43 -04:00
Joey Hess
303b976dbc
Merge branch 'master' of ssh://git-annex.branchable.com 2023-03-21 13:49:26 -04:00
Joey Hess
5675499974
this comment section is not a BTS, part N+1 2023-03-21 13:48:34 -04:00
nobody314159@bfdeb297f68ed26fdff650d52fcdbb7746533591
696e75699d 2023-03-21 14:32:16 +00:00
carlos@4c213b52601d57b650b22d9a246c59aea2c8f859
8967f1a92d 2023-03-20 20:22:50 +00:00
carlos@4c213b52601d57b650b22d9a246c59aea2c8f859
8497023f0e 2023-03-20 20:14:19 +00:00
carlos@4c213b52601d57b650b22d9a246c59aea2c8f859
2473b83bc1 2023-03-20 20:13:46 +00:00
carlos@4c213b52601d57b650b22d9a246c59aea2c8f859
2c5e11360d 2023-03-20 20:13:03 +00:00
Lukey
4cfa979d36 Added a comment 2023-03-20 17:59:11 +00:00
Joey Hess
051aa3146d
Merge branch 'master' of ssh://git-annex.branchable.com 2023-03-19 15:39:50 -04:00
talmukoydu@ab15521191b4d02584d003f3f211d90f575d5ebb
b09405eeab Added a comment: RE: git annex sync not automatically syncing gcrypt remotes using relative paths 2023-03-19 19:27:46 +00:00
talmukoydu@ab15521191b4d02584d003f3f211d90f575d5ebb
18b9731131 Added a comment: git annex sync not automatically syncing gcrypt remotes using relative paths 2023-03-19 19:20:45 +00:00
talmukoydu@ab15521191b4d02584d003f3f211d90f575d5ebb
c006cfca56 removed 2023-03-19 19:08:48 +00:00
talmukoydu@ab15521191b4d02584d003f3f211d90f575d5ebb
c139a73b87 Added a comment: git annex sync not syncing automatically with gcrypt remotes 2023-03-19 19:08:14 +00:00
Joey Hess
4e2de98c80
add appveyor build badge 2023-03-18 18:02:39 -04:00
Joey Hess
7f652c5a22
rename an old closed bug to avoid filename too long on windows checkout 2023-03-18 12:24:58 -04:00
PossibleLoon
cd3c5afffd 2023-03-18 04:13:45 +00:00
Joey Hess
ffa4f2a995
Merge branch 'master' of ssh://git-annex.branchable.com 2023-03-17 16:49:48 -04:00
Yaroslav Halchenko
84b0a3707a
Apply codespell -w throughout 2023-03-17 15:14:58 -04:00
Yaroslav Halchenko
0ae5ff797f
Typo: sansative -> sensitive 2023-03-17 15:14:50 -04:00
jwiegley
63c1e1ed2c Added a comment 2023-03-16 12:52:54 +00:00
jwiegley
77be84102d Added a comment: An example of what I see 2023-03-16 12:24:45 +00:00
jwiegley
6f3624262d 2023-03-16 12:02:10 +00:00
Joey Hess
1f124103dc
reproduced 2023-03-14 13:36:40 -04:00
Joey Hess
47c010155f
todo that I decided not to do, recorded for posterity 2023-03-14 12:25:22 -04:00
Joey Hess
c76d44d7e1
comment 2023-03-13 15:40:18 -04:00
Joey Hess
f1b678face
copy --from --to location tracking update
copy: When --from and --to are combined and the content is already present
on the destination remote, update location tracking as necessary.

Sponsored-by: Dartmouth College's DANDI project
2023-03-13 14:51:09 -04:00
Joey Hess
38e9ea8497
one-way escaping of newlines in uuid.log
A repository can have a newline in its description due to being in a
directory containing a newline, or due to git-annex describe being
passed a string with a newline in it for some reason. Putting that
newline in uuid.log breaks its format.

So, escape the newline when it enters uuid.log, to \n

This is a one-way escaping, it is not converted back to a newline
when reading the log. If it were, commands like git-annex info and
whereis would display a multi-line description, which could be confusing
to read.

And, implementing roundtripping would necessarily cause problems if an
old version of git-annex were used to set a description that contained
whatever special character is used to escape the \n. Eg, a \ or if
it used the ! prefix before base64 data that is used in some other logs,
the ! character. Then the description set by the old git-annex would not
roundtrip.

There just doesn't seem to be any benefit of roundtripping newlines through,
so why bother? And, git often displays \n for newline when a filename
contains a newline, so git-annex doing it in this case seems sorta ok
by analogy to git.

(Some other git-annex logs can also have newlines put into them if the
user really wants to break git-annex. For example:
git-annex config annex.largefiles "foo
bar"
The full list is probably config.log, remote.log, group.log,
preferred-content.log, required-content.log,
group-preferred-content.log, schedule.log. Probably there is no
good reason to use a newline in any of these, and the breakage is
probably limited to the bad data the user put in not coming back out.
And users can write any garbage to log files themselves manually in any
case. So, I am not going to address all of those at this time. If a
problem such as this one with the newline in the repository path comes
up, it can be dealt with on a case by case basis.)

Sponsored-by: Dartmouth College's Datalad project
2023-03-13 14:19:32 -04:00
Joey Hess
0784c3e72a
tag datalad
It links to a datalad issue, so I suppose this is right?
2023-03-13 13:51:10 -04:00
Joey Hess
a6bebe3c0f
make hashFile support paths with newlines
git hash-object --stdin-paths is a newline protocol so it cannot
support them. It would help to not use absPath, when the problem
is that the repository itself is in a path with a newline. But,
there's a reason it used absPath, which is that
git hash-object --stdin-paths actually chdirs to the top of the
repository on startup! That is not documented, and I think is a bug
in git.

I considered making the path relative to the top of the repo, but
then what if this is a git bug and gets fixed? git-annex would break
horribly.

So instead, keep the absPath, but when the path contains a newline,
fall back to running git hash-object once per file, which avoids
the problem with newlines and --stdin-paths. It will be slower,
but this is an edge case. (Similar slow code paths are already used
elsewhere when dealing with filenames with newlines and other parts
of git that use line-based protocols.)

Sponsored-by: Dartmouth College's Datalad project
2023-03-13 13:43:40 -04:00
Daniel Höxtermann
231761146e Fix typos "=yet" -> "=yes" 2023-03-10 18:07:20 +01:00
Joey Hess
f1672fe171
fixed 2023-03-10 12:13:30 -04:00
Joey Hess
7b700d1f5e
fix oops
amdd64 vs arm64 confusion
2023-03-10 12:10:38 -04:00
Joey Hess
3e7a5f7577
typo 2023-03-10 12:05:17 -04:00
Joey Hess
59a0263587
fix links 2023-03-10 12:04:14 -04:00
Joey Hess
d8feda7a2f
added arm64-ancient build
Added arm64 build for ancient kernels, needed to support Android phones
whose kernels are too old to support kernels used by the current arm64
build.

Updated Android/git-annex-install to use it. (Also made it use i386-ancient
because that seems like a good idea.)

Sponsored-by: Noam Kremen on Patreon
2023-03-10 11:59:03 -04:00
Joey Hess
8c0051930e
comment 2023-03-10 11:48:37 -04:00
Joey Hess
f75d98450c
Merge branch 'master' of ssh://git-annex.branchable.com 2023-03-10 11:42:18 -04:00
Joey Hess
89c68f9a60
close 2023-03-10 10:33:20 -04:00
yarikoptic
db8d50dbeb Added a comment 2023-03-10 02:52:08 +00:00
yarikoptic
996868f552 original idea on some "native" support for ephemeral datalad clones. 2023-03-10 02:50:38 +00:00
Joey Hess
91129f508f
comment 2023-03-08 12:18:55 -04:00