Commit graph

32656 commits

Author SHA1 Message Date
Joey Hess
21e8d201f3
link to related todo 2023-02-08 12:35:29 -04:00
Joey Hess
6f59d2e8eb
comment 2023-02-08 12:24:35 -04:00
Joey Hess
f3d9221131
Merge branch 'master' of ssh://git-annex.branchable.com 2023-02-08 12:22:42 -04:00
Joey Hess
ece8f393f8
fix spelling 2023-02-08 12:21:53 -04:00
Joey Hess
f19ee2c479
thought 2023-02-08 12:21:33 -04:00
anarcat
277ad51876 Added a comment 2023-02-08 15:38:03 +00:00
Joey Hess
9a8f6e8d67
todo 2023-02-08 09:40:07 -04:00
nobodyinperson
4f733c25ba Added a comment 2023-02-07 20:54:48 +00:00
Joey Hess
aa0350ff49
add directory to views for files that lack specified metadata
* view: New field?=glob and ?tag syntax that includes a directory "_"
  in the view for files that do not have the specified metadata set.
* Added annex.viewunsetdirectory git config to change the name of the
  "_" directory in a view.

When in a view using the new syntax, old git-annex will fail to parse the
view log. It errors with "Not in a view.", which is not ideal. But that
only affects view commands.

annex.viewunsetdirectory is included in the View for a couple of reasons.
One is to avoid needing to warn the user that it should not be changed when
in a view, since that would confuse git-annex. Another reason is that it
helped with plumbing the value through to some pure functions.

annex.viewunsetdirectory is actually mangled the same as any other view
directory. So if it's configured to something like "N/A", there won't be
multiple levels of directories, which would also confuse git-annex.

Sponsored-By: Jack Hill on Patreon
2023-02-07 16:28:46 -04:00
Joey Hess
fb30ad7846
comment 2023-02-07 13:31:45 -04:00
Joey Hess
5e7aa16d06
improve docs of view exclude values 2023-02-07 12:46:19 -04:00
Joey Hess
115f72766b
correct docs on view exclude values to not say globs work
globs have never worked in field!=
see commit c2e8c21ca6 when the feature was
added, which discussed why
2023-02-07 12:42:26 -04:00
Joey Hess
4b330203fc
comment 2023-02-07 12:35:01 -04:00
anarcat
a7ece3af99 2023-02-06 21:15:40 +00:00
MatusGoljer1
43a66d9396 Added a comment 2023-02-06 19:30:02 +00:00
Joey Hess
04ec726d3b
S3 region=
S3: Support a region= configuration useful for some non-Amazon S3
implementations. This feature needs git-annex to be built with aws-0.24.

datacenter= sets both the AWS hostname and region in one setting, which is
easy when using AWS, but not useful for other hosts. So kept datacenter
as-is, but added this additional config.

Sponsored-By: Brett Eisenberg on Patreon
2023-02-06 14:08:45 -04:00
Joey Hess
5aacc8eb59
comment 2023-02-06 13:05:27 -04:00
Joey Hess
29f4ec248f
comment 2023-02-06 12:50:34 -04:00
mike@2d6d71f56ce2a992244350475251df87c26fe351
0bf650432d Added a comment 2023-02-05 22:41:28 +00:00
nobodyinperson
3965919100 2023-02-03 13:40:41 +00:00
nobodyinperson
6de19ba619 Added a comment: 👍 +1 for updating the view when committing 2023-02-03 13:25:22 +00:00
jpds
209dd1f6c9 Added a comment 2023-02-02 15:53:34 +00:00
jwodder
16fab4676b 2023-02-01 19:55:29 +00:00
hurlebouc
35083c490a Added a comment 2023-02-01 12:26:05 +00:00
markus.l2ll@17cbf3ea36ca05f481e573fd58be50dce9bf8ef9
6aab372119 Added a comment: same error, same fix 2023-02-01 06:44:22 +00:00
jpds
048e77a04c Added a comment 2023-01-31 22:28:16 +00:00
Joey Hess
bc6e606014
analysis 2023-01-31 15:58:21 -04:00
Joey Hess
afd3cf4433
comment 2023-01-31 13:29:57 -04:00
hurlebouc
582dd16e63 2023-01-29 06:54:07 +00:00
jpds
dd923afc56 Added a comment 2023-01-28 00:00:13 +00:00
mih
363412f691 Added a comment: file:/// must be forced to file:// on windows 2023-01-27 09:19:10 +00:00
Joey Hess
da74f05a1e
add news item for git-annex 10.20230126 2023-01-26 15:27:44 -04:00
Joey Hess
8552b4e1a0
new linux autobuilder 2023-01-26 15:25:54 -04:00
aca
ac824ff96b Added a comment: thanks 2023-01-25 14:01:08 +00:00
nobodyinperson
d8d5564e69 Added a comment: Thank you!! 2023-01-24 21:15:50 +00:00
Joey Hess
b7c9d907e5
Merge branch 'master' of ssh://git-annex.branchable.com 2023-01-24 14:08:40 -04:00
Joey Hess
579d9b60c1
improve concurrency of move/copy --from --to
Use separate stages for download and upload. In the common case where
it downloads the file from one remote and then uploads to the other,
those are by far the most expensive operations, and there's a decent
chance the two remotes bottleneck on different resources.

Suppose it's being run with -J2 and a bunch of 10 mb files. Two threads
will be started both downloading from the src remote. They will probably
finish at the same time. Then two threads will be started uploading to
the dst remote. They will probably take the same time as well. Before
this change, it would alternate back and forth, bottlenecking on src and dst.
With this change, as soon as the two threads start uploading to dst, two
more threads are able to start, downloading from src. So bandwidth to
both remotes is saturated more often.

Other commands that use transferStages only send in one direction at a
time. So the worker threads for the other direction will sit idle, and
there will be no change in their behavior.

Sponsored-by: Dartmouth College's DANDI project
2023-01-24 13:59:39 -04:00
jpds
50af8467e3 Added a comment 2023-01-24 15:55:36 +00:00
nobodyinperson
4edae1430a Added a comment 2023-01-23 22:55:11 +00:00
nobodyinperson
c2c405d45a Added a comment 2023-01-23 22:38:28 +00:00
Joey Hess
57987ed2cd
update 2023-01-23 18:08:55 -04:00
Joey Hess
62f8a26dd9
Merge branch 'fromto' 2023-01-23 18:01:57 -04:00
Joey Hess
2a9999f5f1
Merge branch 'master' of ssh://git-annex.branchable.com 2023-01-23 18:01:12 -04:00
Joey Hess
1ee72de32e
done 2023-01-23 17:57:15 -04:00
Joey Hess
77266e46dd
fix behavior of copy --from --to
Sponsored-by: Dartmouth College's DANDI project
2023-01-23 17:55:16 -04:00
Joey Hess
3585481470
Merge branch 'master' into fromto 2023-01-23 17:44:44 -04:00
Joey Hess
acc3f6211f
finishing up move --from --to
Lock the local content for drop after getting it from src, to prevent another
process from using the local content as a copy and dropping it from src,
which would prevent dropping the local content after sending it to dest.

Support resuming an interrupted move that downloaded the content from
src, leaving the local content populated. In this case, the location log
has not been updated to say the content is present locally, so we can
assume that it's resuming and go ahead and drop the local content after
sending it to dest.

Note that if a `git-annex get` is being ran at the same time as a
`git-annex move --from --to`, it may get a file just before the move
processes it. So the location log has not been updated yet, and the move
thinks it's resuming. Resulting in local copy being dropped after it's
sent to the dest. This race is something we'll just have to live with,
it seems.

I also gave up on the idea of checking if the location log had been updated
by a `git-annex get` that is ran at the same time. That wouldn't work, because
the location log is precached in the seek stage, so reading it again after
sending the content to dest would not notice changes made to it, unless the cache
were invalidated, which would slow it down a lot. That idea anyway was subject
to races where it would not detect the concurrent `git-annex get`.

So concurrent `git-annex get` will have results that may be surprising.
To make that less surprising, updated the documentation of this feature to
be explicit that it downloads content to the local repository
temporarily.

Sponsored-by: Dartmouth College's DANDI project
2023-01-23 17:43:48 -04:00
Joey Hess
05b2ae30f0
update 2023-01-23 12:45:01 -04:00
meribold
aad9581d11 Fix typo in heading that seems to result in git-annex-drop not showing up in man -k output 2023-01-22 15:25:35 +00:00
Joey Hess
45c338204f
Merge branch 'master' of ssh://git-annex.branchable.com 2023-01-20 11:23:24 -04:00
Joey Hess
5645017a03
comment 2023-01-20 11:23:04 -04:00
Joey Hess
6f95f821cb
remove --fast from man page
git-annex move does not actually behave any differently with --fast than
without it. (git-annex copy does)

(cherry picked from commit f74904ee2c)
2023-01-20 11:11:31 -04:00
nobodyinperson
f14346bf07 2023-01-20 10:29:33 +00:00
jpds
73cc3fcd12 Added a comment 2023-01-19 16:28:19 +00:00
jpds
dce215e11a Added a comment 2023-01-19 15:09:01 +00:00
jpds
c071ea267d Added a comment 2023-01-18 22:57:58 +00:00
jpds
da6504ee13 2023-01-18 22:45:06 +00:00
Joey Hess
f74904ee2c
remove --fast from man page
git-annex move does not actually behave any differently with --fast than
without it. (git-annex copy does)
2023-01-18 15:15:41 -04:00
Joey Hess
a6c1d9752b
move/copy: option parsing for --from with --to
Allowing --from and --to as an alternative to --from or --to
is hard to do with optparse-applicative!

The obvious approach of (pfrom <|> pto <|> pfromandto) does not work
when pfromandto uses the same option names as pfrom and pto do.
It compiles but the generated parser does not work for all desired
combinations.

Instead, have to parse optionally from and optionally to. When neither
is provided, the parser succeeds, but it's a result that can't be
handled. So, have to giveup after option parsing. There does not seem to
be a way to make an optparse-applicative Parser give up internally
either.

Also, need seek' because I first tried making fto be a where binding,
but that resulted in a hang when git-annex move was run without --from
or --to. I think because startConcurrency was not expecting the stages
value to contain an exception and so ended up blocking.

Sponsored-by: Dartmouth College's DANDI project
2023-01-18 14:42:39 -04:00
yarikoptic
ea44f2416c Added a comment 2023-01-18 17:55:50 +00:00
Joey Hess
2a92f5cc2c
comment 2023-01-18 13:05:47 -04:00
Joey Hess
f8bc208e89
findkeys: New command, very similar to git-annex find but operating on keys
I've long been asked for `git-annex find --all` or something like that,
but pushed back on it because I feel that the command is analagous to
find(1) and so it would be surprising for it to list keys rather than
files. So instead, add a new findkeys subcommand.

Note that the use of withKeyOptions is rather strange because usually
that is used to fall back to --all rather than listing files, but here
it's made to default to --all like behavior and never list files.

A performance thing that could be improved is that withKeyOptions
always reads and caches location logs. But findkeys with no options does
not need them, so it could be made faster. That caching does speed up
options like --in though. This is really just a subset of a more general
performance thing that --all reads location logs sometimes unncessarily.
Anyway, it needs to read the location log in order to checkDead,
and it seems good that findkeys does skip dead keys.

Also, cleaned up comments on git-annex-find man page asking for --all
option.

Sponsored-by: Dartmouth College's DANDI project
2023-01-17 14:51:57 -04:00
Joey Hess
ce241f9aa9
comment 2023-01-17 13:10:28 -04:00
Joey Hess
eb5b072e2e
comment 2023-01-17 13:08:49 -04:00
daven.quinn@d0ed4e0e5e4462d9a74a5d5a8fbd1b17f85db13e
be6aec3100 Added a comment: comment 1 response 2023-01-16 21:45:35 +00:00
yarikoptic
e42ac8844e Added a comment 2023-01-16 21:43:40 +00:00
yarikoptic
fdca11e815 Added a comment 2023-01-16 21:32:09 +00:00
yarikoptic
4890c70a1b Added a comment 2023-01-16 21:27:12 +00:00
Joey Hess
fdd0b4bae0
comment 2023-01-16 16:12:16 -04:00
Joey Hess
c172855a7f
Merge branch 'master' of ssh://git-annex.branchable.com 2023-01-16 15:53:14 -04:00
Joey Hess
e97da33773
comment 2023-01-16 15:52:52 -04:00
yarikoptic
35435cd955 initial report on difficulty moving frozen file 2023-01-16 19:36:07 +00:00
Joey Hess
527e70fc69
comment 2023-01-16 15:26:21 -04:00
Joey Hess
cae12e0ccd
comment 2023-01-16 15:15:21 -04:00
Joey Hess
8bb078e0df
response 2023-01-16 15:13:00 -04:00
Joey Hess
9be56daf07
comment 2023-01-16 15:07:46 -04:00
Joey Hess
ec0107098d
close wontfix with submitter agreement 2023-01-16 14:40:30 -04:00
Joey Hess
321850a67d
close as dup 2023-01-16 14:37:44 -04:00
Joey Hess
62dd19e391
comment 2023-01-16 14:28:46 -04:00
Joey Hess
086cb30eb1
comment 2023-01-16 14:16:13 -04:00
Joey Hess
f87c74566a
close wontfix 2023-01-16 14:08:37 -04:00
Joey Hess
7f39037e57
close 2023-01-16 14:02:10 -04:00
Joey Hess
4229e6761e
close 2023-01-16 13:57:54 -04:00
Joey Hess
817b06b439
close wontfix 2023-01-16 13:53:54 -04:00
Joey Hess
90e21c59a1
comment 2023-01-16 13:51:19 -04:00
Joey Hess
6156fe625d
close this old todo 2023-01-16 13:45:24 -04:00
Joey Hess
dcebf6851a
comment 2023-01-16 13:36:08 -04:00
Joey Hess
df5a3a6ca4
respond and wontfix 2023-01-16 13:35:14 -04:00
Joey Hess
8955a9c7d2
comment 2023-01-16 13:16:02 -04:00
Joey Hess
156842cff6
comment 2023-01-16 12:58:32 -04:00
yarikoptic
3b769d91dd Added a comment 2023-01-12 20:48:48 +00:00
Joey Hess
cfaae7e931
added an optional cost= configuration to all special remotes
Note that when this is specified and an older git-annex is used to
enableremote such a special remote, it will simply ignore the cost= field
and use whatever the default cost is.

In passing, fixed adb to support the remote.name.cost and
remote.name.cost-command configs.

Sponsored-by: Dartmouth College's DANDI project
2023-01-12 13:42:28 -04:00
nobodyinperson
8da345b1fb 2023-01-12 10:10:37 +00:00
Joey Hess
8a305e5fa3
respect urlinclude/urlexclude of other web special remotes
When a web special remote does not have urlinclude/urlexclude
configured, make it respect the configuration of other web special
remotes and avoid using urls that match the config of another.

Note that the other web special remote does not have to be enabled.
That seems ok, it would have been extra work to check for only ones that
are enabled.

The implementation does mean that the web special remote re-parses
its own config once at startup, as well as re-parsing the configs of any
other web special remotes. This should be a very small slowdown
unless there are lots of web special remotes.

Sponsored-by: Dartmouth College's DANDI project
2023-01-10 14:58:53 -04:00
Joey Hess
0fc476f16e
comments 2023-01-10 11:52:11 -04:00
yarikoptic
79be0eea2f Added a comment: Concern 2023-01-10 13:17:30 +00:00
nobodyinperson
4a13131ce7 Added a comment: {copy,move} with both --to and --from would be great! 2023-01-10 09:38:39 +00:00
yarikoptic
dfaccf0b21 Added a comment 2023-01-09 22:04:11 +00:00
yarikoptic
f33dda3e7a initial report on copy --from --to 2023-01-09 21:51:18 +00:00
yarikoptic
8ec6d4490f Added a comment: could be of help to DANDI 2023-01-09 21:36:44 +00:00
Joey Hess
6fa166e1fc
web: Add urlinclude and urlexclude configuration settings
Sponsored-by: Dartmouth College's DANDI project
2023-01-09 17:16:53 -04:00
Joey Hess
8d06930c88
web special remote is no longer a singleton
Allow initremote of additional special remotes with type=web, in addition
to the default web special remote.

When --sameas=web is used, these provide additional names for the web
special remote, and may also have their own additional configuration
(once there is any for the web special remote) and cost.

Sponsored-by: Dartmouth College's DANDI project
2023-01-09 15:49:20 -04:00
Joey Hess
5e8070bc3c
Merge branch 'master' of ssh://git-annex.branchable.com 2023-01-07 13:56:29 -04:00
Joey Hess
ea8728eca0
update 2023-01-07 13:56:23 -04:00
Joey Hess
3d8c52e76a
update 2023-01-07 13:56:06 -04:00
sb-beryllium@6e2c477eac63b823bd315ef8aaf5f93173c1f15b
31f500bab6 Added a comment 2023-01-07 13:05:24 +00:00
satra
a5d3328a6f Added a comment: use list order for cost 2023-01-06 19:36:07 +00:00
yarikoptic
c7aa99808c initial todo on prioritization of URLs 2023-01-06 17:27:34 +00:00
yarikoptic
975cb5edf1 Added a comment: importtree readonly remote folder? 2023-01-06 14:21:36 +00:00
Joey Hess
4d90053e17
remove old closed bugs and todo items to speed up wiki updates and reduce size
Remove closed bugs and todos that were last edited or commented before 2022.

Except for ones tagged projects/* since projects like datalad want to keep
around records of old deleted bugs longer.

Command line used:

	for f in $(grep -l '|done\]\]' -- ./*.mdwn); do if ! grep -q "projects/" "$f"; then d="$(echo "$f" | sed 's/.mdwn$//')"; if [ -z "$(git log --since=01-01-2022 --pretty=oneline -- "$f")" -a -z "$(git log --since=01-01-2022 --pretty=oneline -- "$d")" ]; then git rm -- "./$f" ; git rm -rf "./$d"; fi; fi; done
	for f in $(grep -l '\[\[done\]\]' -- ./*.mdwn); do if ! grep -q "projects/" "$f"; then d="$(echo "$f" | sed 's/.mdwn$//')"; if [ -z "$(git log --since=01-01-2022 --pretty=oneline -- "$f")" -a -z "$(git log --since=01-01-2022 --pretty=oneline -- "$d")" ]; then git rm -- "./$f" ; git rm -rf "./$d"; fi; fi; done
2023-01-05 15:09:30 -04:00
Joey Hess
acdd5fbab6
move old closed bugs to datalad's bugs
These were not tagged datalad, but they did pay to get them fixed, and
it impacted them as seen in the bug reports..
2023-01-05 15:06:56 -04:00
Joey Hess
aab79dded8
remove calendar
Noticed that ikiwiki -refresh is building devblog every time, and the
sidebar calendar seems a likely reason for that.
2023-01-05 14:50:26 -04:00
Joey Hess
8e1b78b71b
fix dandi and repronim bug lists after the move
see 47f5e50d4f
2023-01-05 14:48:11 -04:00
Joey Hess
47f5e50d4f
fix the datalad bug list after bug move
The moved bugs that link to [[done]] were not matching because it wanted
that to link to bugs/done, but it was a broken link after rename. Adding
a stub datalad/done page to avoid the broken link, and adjusting the
pagespec so those are listed.
2023-01-05 13:35:26 -04:00
Joey Hess
cba7a2477c
Merge branch 'master' of ssh://git-annex.branchable.com 2023-01-05 13:30:24 -04:00
Joey Hess
bcc69f07e8
move old fixed datalad/dandi/repronim bugs to the project pages
This is to cut down on the number of files in bugs/, which makes it slow
to file new bug reports or update active bug reports. These old bugs
were about 1/3rd of the files in there. These projects want lists of
their old bugs to still be accessible, and have the lists on their
project pages, which will still list the old bugs.

Commands used:

for f in $(git grep -l '\[\[!tag projects/dandi\]\]'); do if grep -q 'done\]\]' "$f"; then git mv "$f" ../projects/dandi/bugs-done; g=$(echo "$f" | sed 's/.mdwn//'); if [ -d "$g" ]; then git mv "$g" ../projects/dandi/bugs-done; fi; fi; done
for f in $(git grep -l '\[\[!tag projects/repronim\]\]'); do if grep -q 'done\]\]' "$f"; then git mv "$f" ../projects/repronim/bugs-done; g=$(echo "$f" | sed 's/.mdwn//'); if [ -d "$g" ]; then git mv "$g" ../projects/repronim/bugs-done; fi; fi; done
for f in $(git grep -l '\[\[!tag projects/datalad\]\]'); do if grep -q 'done\]\]' "$f"; then git mv "$f" ../projects/datalad/bugs-done; g=$(echo "$f" | sed 's/.mdwn//'); if [ -d "$g" ]; then git mv "$g" ../projects/datalad/bugs-done; fi; fi; done

That assumes that bugs are not tagged by multiple projects at the same
time. Of the ones I moved, I've checked and none are.

Could do the same with todo/ but there are only 370 files in there, and
less than 84 of them could be moved this way, which does not seem likely
to produce a sizeable speedup.

Sponsored-by: Dartmouth College's Datalad project
2023-01-05 13:16:15 -04:00
beryllium@5bc3c32eb8156390f96e363e4ba38976567425ec
45740d66cd Added a comment 2023-01-05 07:16:31 +00:00
beryllium@5bc3c32eb8156390f96e363e4ba38976567425ec
2f183e7b7c Added a comment 2023-01-05 06:49:00 +00:00
yarikoptic
cfaa57398d adjust project to be repronim 2023-01-04 15:12:58 +00:00
matthias.risze@9f2c8f7faed4cac1905d1bf1ee4524d708c13688
4822c7833e Added a comment: Limitations on allowed characters in and length of URLs 2023-01-04 11:56:35 +00:00
Ilya_Shlyakhter
f0e25cc412 Added a comment: re: Paths behind relative symlinks in repo 2023-01-03 18:28:23 +00:00
nobodyinperson
45e71edc17 Added a comment 2023-01-02 22:58:08 +00:00
nobodyinperson
6964b193f3 2023-01-02 22:48:19 +00:00
nobodyinperson
f5a536fe3b 2023-01-02 22:43:07 +00:00
nobodyinperson
6e2f35f77d Added a comment 2023-01-02 21:58:26 +00:00
Joey Hess
adb122adcf
todo 2023-01-02 15:58:47 -04:00
Joey Hess
1aaf702d66
comment 2023-01-02 15:27:36 -04:00
Joey Hess
c326e5100f
comment 2023-01-02 15:08:24 -04:00
Joey Hess
599758e0d3
comment 2023-01-02 15:01:52 -04:00
Joey Hess
9ce6309e4a
Merge branch 'master' of ssh://git-annex.branchable.com 2023-01-01 18:11:09 -04:00
Joey Hess
6016844372
update for https://pypi.org/project/thunar-plugins/ 2023-01-01 18:10:35 -04:00
acadx0@9d7ca00c5a85a700a7209ab4fc2505189ded1aa3
100d7eab67 Added a comment: hmm 2023-01-01 16:49:38 +00:00
strmd
7137f0571b Added a comment 2023-01-01 13:28:46 +00:00
acadx0@9d7ca00c5a85a700a7209ab4fc2505189ded1aa3
6e28e0ee5d removed 2023-01-01 04:01:41 +00:00
acadx0@9d7ca00c5a85a700a7209ab4fc2505189ded1aa3
111ae34009 Added a comment: try 2 2023-01-01 04:00:54 +00:00
acadx0@9d7ca00c5a85a700a7209ab4fc2505189ded1aa3
73fc402f4f Added a comment: try 2 2023-01-01 04:00:25 +00:00
acadx0@9d7ca00c5a85a700a7209ab4fc2505189ded1aa3
81d25083b9 2022-12-31 17:48:07 +00:00
nobodyinperson
2c40c30dd0 Added a comment 2022-12-29 10:49:27 +00:00
yarikoptic
e08d333560 reporting on need to create leading dir 2022-12-28 16:23:51 +00:00
tiny.bell9228@b8988087df4fe0446bb6874c40ae9f8bc87ce984
3289521e6c 2022-12-28 02:58:21 +00:00
Joey Hess
0b76a32629
comment 2022-12-27 17:03:47 -04:00
nobodyinperson
c14e15fd1a Added a comment: Maybe add a very slow KDF first? 2022-12-27 20:26:45 +00:00
Joey Hess
0be6cad7a8
idea 2022-12-27 13:48:53 -04:00
Joey Hess
79031223fd
moreinfo 2022-12-26 16:09:37 -04:00
Joey Hess
baec2ef928
moreinfo 2022-12-26 16:09:08 -04:00
Joey Hess
cf892f4256
use insert_ for speed improvement
persistent-2.14.4.1 makes insert_ faster than insert because it skips
getting the key back.

Sponsored-by: Dartmouth College's DANDI project
2022-12-26 15:59:41 -04:00
Joey Hess
aa041596f5
close 2022-12-26 15:05:48 -04:00
Joey Hess
c1821435ac
fix link 2022-12-26 15:03:14 -04:00
Joey Hess
65ddd13cf7
close 2022-12-26 13:31:09 -04:00
Joey Hess
1b08af821b
close 2022-12-26 13:29:13 -04:00