git-annex.git
3 years agofix build on windows
Joey Hess [Tue, 1 Aug 2023 21:38:59 +0000 (17:38 -0400)]
fix build on windows

3 years agorewrap
Joey Hess [Tue, 1 Aug 2023 19:47:05 +0000 (15:47 -0400)]
rewrap

3 years agosupport building with unix-compat 0.7
Joey Hess [Tue, 1 Aug 2023 19:17:43 +0000 (15:17 -0400)]
support building with unix-compat 0.7

It removed System.PosixCompat.User.

3 years agoMerge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Tue, 1 Aug 2023 19:17:07 +0000 (15:17 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com

3 years agoSetup.hs: Stop installing man pages, desktop files, and the git-annex-shell and git...
Joey Hess [Tue, 1 Aug 2023 19:08:56 +0000 (15:08 -0400)]
Setup.hs: Stop installing man pages, desktop files, and the git-annex-shell and git-remote-tor-annex symlinks

Anything still relying on that, eg via cabal v1-install will need to
change to using make install-home. Which was added back in 2019 in
6491b626140a9e5cc8e99fff4a1434d7c0e9bc39 because cabal new-build
(now the default) already didn't use Setup in a way that let its
installation of those things work.

Notably this means Setup does not need to depend on unix-compat, which is
useful because in 0.7 it removed System.PosixCompat.User, which Setup
needed to determine where to install the desktop files. See
https://github.com/haskell-pkg-janitors/unix-compat/issues/3

3 years ago(no commit message)
xvorsx@a3fc1a0cf228782f624e5eb21ba8a664227b6c60 [Tue, 1 Aug 2023 06:36:50 +0000 (06:36 +0000)]

3 years agoAdd missing formatting backtick
nobodyinperson [Tue, 1 Aug 2023 05:32:19 +0000 (05:32 +0000)]
Add missing formatting backtick

3 years agoonlyingroup
Joey Hess [Mon, 31 Jul 2023 18:43:58 +0000 (14:43 -0400)]
onlyingroup

* Support "onlyingroup=" in preferred content expressions.
* Support --onlyingroup= matching option.

Sponsored-by: Jack Hill on Patreon
3 years agofoo
Joey Hess [Mon, 31 Jul 2023 18:03:18 +0000 (14:03 -0400)]
foo

3 years agocomment
Joey Hess [Mon, 31 Jul 2023 18:01:33 +0000 (14:01 -0400)]
comment

3 years agocomment
Joey Hess [Mon, 31 Jul 2023 17:50:12 +0000 (13:50 -0400)]
comment

3 years agomention --explain
Joey Hess [Mon, 31 Jul 2023 17:28:02 +0000 (13:28 -0400)]
mention --explain

Sponsored-by: Dartmouth College's DANDI project
3 years agodisplay explanations in --debug too
Joey Hess [Mon, 31 Jul 2023 17:06:40 +0000 (13:06 -0400)]
display explanations in --debug too

When --explain is not enabled. This can be useful debugging information
as well.

Sponsored-by: Dartmouth College's DANDI project
3 years ago--explain for numcopies checks
Joey Hess [Mon, 31 Jul 2023 16:36:13 +0000 (12:36 -0400)]
--explain for numcopies checks

And closed the todo as completed.

Sponsored-by: Dartmouth College's DANDI project
3 years agoAdded a comment: onlyingroup also useful for offline backup drives
nobodyinperson [Mon, 31 Jul 2023 04:40:43 +0000 (04:40 +0000)]
Added a comment: onlyingroup also useful for offline backup drives

3 years agoAdded a comment
nobodyinperson [Sun, 30 Jul 2023 06:53:58 +0000 (06:53 +0000)]
Added a comment

3 years ago(no commit message)
branch [Sat, 29 Jul 2023 21:35:16 +0000 (21:35 +0000)]

3 years agoAdded a comment: No built-in way for dropping all old versions of a file AFAIK
nobodyinperson [Sat, 29 Jul 2023 17:43:41 +0000 (17:43 +0000)]
Added a comment: No built-in way for dropping all old versions of a file AFAIK

3 years agoSuggest that git annex diffdriver fetches content to diff
nobodyinperson [Sat, 29 Jul 2023 17:07:22 +0000 (17:07 +0000)]
Suggest that git annex diffdriver fetches content to diff

3 years agoAdded a comment: Dropping all older versions of a file
mario [Sat, 29 Jul 2023 12:57:03 +0000 (12:57 +0000)]
Added a comment: Dropping all older versions of a file

3 years agoAdded a comment
aragilar [Fri, 28 Jul 2023 02:47:42 +0000 (02:47 +0000)]
Added a comment

3 years agoAdded a comment: --explain is very helpful 👍
nobodyinperson [Thu, 27 Jul 2023 15:22:47 +0000 (15:22 +0000)]
Added a comment: --explain is very helpful 👍

3 years agoMerge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Wed, 26 Jul 2023 19:44:47 +0000 (15:44 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com

3 years agoimprove match explanations
Joey Hess [Wed, 26 Jul 2023 19:29:23 +0000 (15:29 -0400)]
improve match explanations

Using == and != proved too hard to read, so went with [TRUE] and [FALSE]
after the term. I would kind of liked to have used emojis for a green
check and red X, but probably that is too fancy to be a good idea.

Make --explain output be inside [ ] with whitespace around them, to
avoid it ending with eg "[FALSE]]" and to make it easier to visually
find the start of it.

Sponsored-by: Dartmouth College's DANDI project
3 years agoimprove match result display simplifier
Joey Hess [Wed, 26 Jul 2023 19:28:57 +0000 (15:28 -0400)]
improve match result display simplifier

Sponsored-by: Dartmouth College's DANDI project
3 years agofix bug in match result display simplifier
Joey Hess [Wed, 26 Jul 2023 19:07:29 +0000 (15:07 -0400)]
fix bug in match result display simplifier

Sponsored-by: Dartmouth College's DANDI project
3 years ago--explain for preferred/required content matching
Joey Hess [Wed, 26 Jul 2023 18:34:21 +0000 (14:34 -0400)]
--explain for preferred/required content matching

And annex.largefiles and annex.addunlocked.

Also git-annex matchexpression --explain explains why its input
expression matches or fails to match.

When there is no limit, avoid explaining why the lack of limit
matches. This is also done when no preferred content expression is set,
although in a few cases it defaults to a non-empty matcher, which will
be explained.

Sponsored-by: Dartmouth College's DANDI project
3 years agoAdded a comment: Workaround for listing dead remotes
nobodyinperson [Wed, 26 Jul 2023 17:40:56 +0000 (17:40 +0000)]
Added a comment: Workaround for listing dead remotes

3 years ago(no commit message)
aragilar [Wed, 26 Jul 2023 12:56:21 +0000 (12:56 +0000)]

3 years agoMerge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Tue, 25 Jul 2023 21:02:18 +0000 (17:02 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com

3 years agoinitial implementation of --explain
Joey Hess [Tue, 25 Jul 2023 20:11:06 +0000 (16:11 -0400)]
initial implementation of --explain

Currently it only displays explanations of options like --in and --copies.

In the future, it should explain preferred content expression evaluation
and other decisions.

The explanations of a few things could be better. In particular,
"standard" will just appear as-is (or as "!standard" if it doesn't
match), rather than explaining why the standard preferred content expression
for the group matches or not.

Currently as implemented, it goes to stdout, and so commands like
git-annex find that have custom output will not display --explain
information. Perhaps that should change, dunno.

Sponsored-by: Dartmouth College's DANDI project
3 years agoRevert "use existing debug machinery for explain"
Joey Hess [Tue, 25 Jul 2023 19:53:50 +0000 (15:53 -0400)]
Revert "use existing debug machinery for explain"

This reverts commit 409572c9e4c0c77814a5b448d26cf87054b07874.

3 years agouse existing debug machinery for explain
Joey Hess [Tue, 25 Jul 2023 19:47:58 +0000 (15:47 -0400)]
use existing debug machinery for explain

explain is a kind of debug message, but not formatted in the same way.
So it makes sense to reuse the debug machinery for it, since that is
already quite optimised.

Sponsored-by: Dartmouth College's DANDI project
3 years agoremove excess doubled parens in match description
Joey Hess [Tue, 25 Jul 2023 17:55:01 +0000 (13:55 -0400)]
remove excess doubled parens in match description

Sponsored-by: Dartmouth College's DANDI project
3 years agoparenthesize match description as needed to avoid ambiguity
Joey Hess [Tue, 25 Jul 2023 17:39:40 +0000 (13:39 -0400)]
parenthesize match description as needed to avoid ambiguity

While avoiding most unncessary parens.

Once case where unncessary parens are not avoided is:

not ( ( not foo and baz ) )

It would be good eventually to remove doubled parens like these.

Sponsored-by: Dartmouth College's DANDI project
3 years agolist some Utility/ modules that are AGPL
Joey Hess [Tue, 25 Jul 2023 16:54:44 +0000 (12:54 -0400)]
list some Utility/ modules that are AGPL

3 years agoaccumulate description while matching
Joey Hess [Tue, 25 Jul 2023 16:41:59 +0000 (12:41 -0400)]
accumulate description while matching

This is to be used to explain why something did or didn't match.

Note that this reimplements match in terms of matchMrun.
Implementing match' as a Writer and matchMrun' as a MonadWriter
resulted in nearly identical implementations, which collapsed into the
same thing thanks to Writer being WriterT Identity.

MAnd and MOr implement short circuiting. So an expression
like "not (foo and bar)" will be explained as [MatchedNot, MatchOperation "foo"]
when foo does not match; whether bar matches is irrelevant. Similarly
"foo or bar" will be explained as [MatchedOperation "foo"] when foo
matches. It seems like that will keep the explanations more
understandable. But also, matchMrun already did short circuiting, and it
could be considerably more work to check if bar matches in these cases.

Note that the type signature of matchMrun changed, but it was
over-generic before.

Note that these changes are licensed under the AGPL. Changed module
license accordingly.

Sponsored-by: Dartmouth College's DANDI project
3 years agotag option_to_explain dandi
Joey Hess [Tue, 25 Jul 2023 15:08:33 +0000 (11:08 -0400)]
tag option_to_explain dandi

See comment, this is a continuation of the other todo that was tagged
dandi and which I didn't fully address at the time.

3 years agoAdded a comment
hurlebouc [Mon, 24 Jul 2023 13:10:09 +0000 (13:10 +0000)]
Added a comment

3 years agogcrypt: Remove empty hash directories when dropping content
Joey Hess [Fri, 21 Jul 2023 20:04:11 +0000 (16:04 -0400)]
gcrypt: Remove empty hash directories when dropping content

As was recently done with the directory special remote.

Note that the top directory passed to removeDirGeneric was changed to
avoid deleting .git/annex or .git/annex/objects if they ended up empty.

Sponsored-by: Brett Eisenberg on Patreon
3 years agotypo
Joey Hess [Fri, 21 Jul 2023 19:36:01 +0000 (15:36 -0400)]
typo

3 years agocomment
Joey Hess [Fri, 21 Jul 2023 19:33:59 +0000 (15:33 -0400)]
comment

3 years agoremove spam
Joey Hess [Fri, 21 Jul 2023 19:15:11 +0000 (15:15 -0400)]
remove spam

3 years agocomment
Joey Hess [Fri, 21 Jul 2023 19:14:36 +0000 (15:14 -0400)]
comment

3 years agodirectory: Remove empty hash directories when dropping content
Joey Hess [Fri, 21 Jul 2023 18:57:29 +0000 (14:57 -0400)]
directory: Remove empty hash directories when dropping content

Failure to remove is not treated as a problem, and no permissions
modifications are done, to avoid unexpected states.

Sponsored-by: Luke Shumaker on Patreon
3 years agodropunused: Support --jobs
Joey Hess [Fri, 21 Jul 2023 18:03:34 +0000 (14:03 -0400)]
dropunused: Support --jobs

Sponsored-by: Kevin Mueller on Patreon
3 years agodeal with Amazon S3 breaking change for public=yes
Joey Hess [Fri, 21 Jul 2023 17:48:49 +0000 (13:48 -0400)]
deal with Amazon S3 breaking change for public=yes

* S3: Amazon S3 buckets created after April 2023 do not support ACLs,
  so public=yes cannot be used with them. Existing buckets configured
  with public=yes will keep working.
* S3: Allow setting publicurl=yes without public=yes, to support
  buckets that are configured with a Bucket Policy that allows public
  access.

Sponsored-by: Joshua Antonishen on Patreon
3 years agocomment
Joey Hess [Fri, 21 Jul 2023 17:01:46 +0000 (13:01 -0400)]
comment

3 years agoAdded a comment: thank
hipohaha [Fri, 21 Jul 2023 10:08:15 +0000 (10:08 +0000)]
Added a comment: thank

3 years ago(no commit message)
tomdhunt [Wed, 19 Jul 2023 02:49:48 +0000 (02:49 +0000)]

3 years ago(no commit message)
adina.wagner@2a4cac6443aada2bd2a329b8a33f4a7b87cc8eff [Tue, 18 Jul 2023 09:13:47 +0000 (09:13 +0000)]

3 years agobug report
nobodyinperson [Mon, 17 Jul 2023 10:56:08 +0000 (10:56 +0000)]
bug report

3 years agoadd PeerTube link to Yann's Git Annex talk @Tübix2023
nobodyinperson [Mon, 17 Jul 2023 06:19:46 +0000 (06:19 +0000)]
add PeerTube link to Yann's Git Annex talk @Tübix2023

3 years agoAdded a comment
nobodyinperson [Mon, 17 Jul 2023 06:12:27 +0000 (06:12 +0000)]
Added a comment

3 years agoAdded a comment: unspecified default preferred content = present
ewen [Mon, 17 Jul 2023 00:50:09 +0000 (00:50 +0000)]
Added a comment: unspecified default preferred content = present

3 years ago(no commit message)
alex [Sun, 16 Jul 2023 06:51:33 +0000 (06:51 +0000)]

3 years agoAdded a comment
nobodyinperson [Sat, 15 Jul 2023 17:04:38 +0000 (17:04 +0000)]
Added a comment

3 years agocomment
Joey Hess [Sat, 15 Jul 2023 16:28:32 +0000 (12:28 -0400)]
comment

3 years agoSuggest onlyingroup preferred content expression
nobodyinperson [Sat, 15 Jul 2023 11:19:27 +0000 (11:19 +0000)]
Suggest onlyingroup preferred content expression

3 years agoAdded a comment: git annex drop --unused --jobs=cpus works
nobodyinperson [Sat, 15 Jul 2023 05:53:43 +0000 (05:53 +0000)]
Added a comment: git annex drop --unused --jobs=cpus works

3 years ago(no commit message)
agot [Fri, 14 Jul 2023 22:31:05 +0000 (22:31 +0000)]

3 years ago(no commit message)
agot [Fri, 14 Jul 2023 19:14:34 +0000 (19:14 +0000)]

3 years agocomment
Joey Hess [Fri, 14 Jul 2023 00:02:41 +0000 (20:02 -0400)]
comment

3 years agoMerge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Thu, 13 Jul 2023 23:58:36 +0000 (19:58 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com

3 years agoadd a warning and a related todo
Joey Hess [Thu, 13 Jul 2023 23:57:34 +0000 (19:57 -0400)]
add a warning and a related todo

arising from a conversation at FOSSY

3 years agofix formatting of \ continued shell examples in man pages
Joey Hess [Thu, 13 Jul 2023 23:55:38 +0000 (19:55 -0400)]
fix formatting of \ continued shell examples in man pages

doc/git-annex-filter-branch.mdwn and one other file have these, and no
other files have \ at the end of line, so this should be safe

3 years agoAdded a comment: git mv to temporary name, commit, git mv back, commit, can resolve...
ewen [Thu, 13 Jul 2023 01:12:34 +0000 (01:12 +0000)]
Added a comment: git mv to temporary name, commit, git mv back, commit, can resolve duplicates

3 years agoAdded a comment
ewen [Thu, 13 Jul 2023 00:54:35 +0000 (00:54 +0000)]
Added a comment

3 years agoAdded a comment: Plumbing commands vs Porcelain commands
ewen [Thu, 13 Jul 2023 00:26:20 +0000 (00:26 +0000)]
Added a comment: Plumbing commands vs Porcelain commands

3 years agoMerge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Wed, 12 Jul 2023 17:55:10 +0000 (13:55 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com

3 years agocomment
Joey Hess [Wed, 12 Jul 2023 17:54:59 +0000 (13:54 -0400)]
comment

3 years agoAdded a comment
jkniiv [Wed, 12 Jul 2023 17:30:52 +0000 (17:30 +0000)]
Added a comment

3 years agocomment
Joey Hess [Wed, 12 Jul 2023 17:27:33 +0000 (13:27 -0400)]
comment

3 years agoMerge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Wed, 12 Jul 2023 16:57:46 +0000 (12:57 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com

3 years agoAdded a comment
jkniiv [Wed, 12 Jul 2023 16:25:49 +0000 (16:25 +0000)]
Added a comment

3 years agoAdded a comment
nobodyinperson [Wed, 12 Jul 2023 13:10:26 +0000 (13:10 +0000)]
Added a comment

3 years agoAdded a comment: Alternative proposal for better backwards compatibility
ewen [Wed, 12 Jul 2023 12:48:04 +0000 (12:48 +0000)]
Added a comment: Alternative proposal for better backwards compatibility

3 years agoAdded a comment: Clarification
nobodyinperson [Wed, 12 Jul 2023 11:29:41 +0000 (11:29 +0000)]
Added a comment: Clarification

3 years agoAdded a comment: There is already something like fullsync: `git annex assist`, sugges...
nobodyinperson [Wed, 12 Jul 2023 11:15:26 +0000 (11:15 +0000)]
Added a comment: There is already something like fullsync: `git annex assist`, suggestion: new `metasync` command

3 years agoAdded a comment: Preferred content settings not really an alternative
ewen [Wed, 12 Jul 2023 10:53:41 +0000 (10:53 +0000)]
Added a comment: Preferred content settings not really an alternative

3 years agoAdded a comment: History of change
ewen [Wed, 12 Jul 2023 10:27:43 +0000 (10:27 +0000)]
Added a comment: History of change

3 years agoAdded a comment: Breaking change to "sync"
ewen [Wed, 12 Jul 2023 10:21:04 +0000 (10:21 +0000)]
Added a comment: Breaking change to "sync"

3 years agoAdded a comment
nobodyinperson [Wed, 12 Jul 2023 09:21:56 +0000 (09:21 +0000)]
Added a comment

3 years agoAdded a comment
jkniiv [Wed, 12 Jul 2023 07:33:16 +0000 (07:33 +0000)]
Added a comment

3 years agoAdded a comment: I have to agree that this change to `sync` is annoying
jkniiv [Wed, 12 Jul 2023 07:18:54 +0000 (07:18 +0000)]
Added a comment: I have to agree that this change to `sync` is annoying

3 years agoRecommend accepting "list" output encoding of filename as input too
ewen [Wed, 12 Jul 2023 06:54:05 +0000 (06:54 +0000)]
Recommend accepting "list" output encoding of filename as input too

3 years agoAdded a comment
nobodyinperson [Wed, 12 Jul 2023 06:49:48 +0000 (06:49 +0000)]
Added a comment

3 years agoSuggest using "git annex fullsync" to trigger a full sync, not changing "git annex...
ewen [Wed, 12 Jul 2023 04:16:48 +0000 (04:16 +0000)]
Suggest using "git annex fullsync" to trigger a full sync, not changing "git annex sync" behaviour

3 years agofix waiting for all started feed downloads with -J
Joey Hess [Wed, 12 Jul 2023 02:08:19 +0000 (22:08 -0400)]
fix waiting for all started feed downloads with -J

importfeed bug fix: When -J was used with multiple feeds, some feeds did
not get their items downloaded.

In my case, I had added a feed to the end of the list, and no items from it
were ever downloaded.

Sponsored-by: Leon Schuermann on Patreon
3 years ago(no commit message)
nobodyinperson [Tue, 11 Jul 2023 20:39:34 +0000 (20:39 +0000)]

3 years agoAdded a comment
jstritch [Tue, 11 Jul 2023 18:56:40 +0000 (18:56 +0000)]
Added a comment

3 years agoresponse
Joey Hess [Mon, 10 Jul 2023 19:20:01 +0000 (15:20 -0400)]
response

3 years agoMerge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Mon, 10 Jul 2023 19:18:00 +0000 (15:18 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com

3 years ago(no commit message)
nadir [Mon, 10 Jul 2023 07:37:07 +0000 (07:37 +0000)]

3 years ago(no commit message)
nadir [Mon, 10 Jul 2023 07:20:45 +0000 (07:20 +0000)]

3 years agoMerge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Sun, 9 Jul 2023 20:54:30 +0000 (16:54 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com

3 years agonub list of files
Joey Hess [Sun, 9 Jul 2023 18:18:25 +0000 (14:18 -0400)]
nub list of files

yt-dlp when resumed was observed having written the same filename twice
into the file list. Perhaps once by the first download and once by the
resumed one?

3 years agoremoved
dud225@35a1ee469f82f3a7eb1f2dce4ad453f5e47bdfd3 [Fri, 7 Jul 2023 14:16:38 +0000 (14:16 +0000)]
removed

3 years agoAdded a comment: Disabling a special remote
dud225@35a1ee469f82f3a7eb1f2dce4ad453f5e47bdfd3 [Fri, 7 Jul 2023 14:16:24 +0000 (14:16 +0000)]
Added a comment: Disabling a special remote

3 years agoAdded a comment: Disabling a special remote
dud225@35a1ee469f82f3a7eb1f2dce4ad453f5e47bdfd3 [Fri, 7 Jul 2023 12:51:12 +0000 (12:51 +0000)]
Added a comment: Disabling a special remote