git-annex.git
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 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

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

3 years agosync: When in an adjusted branch, merge changes from the original branch
Joey Hess [Thu, 6 Jul 2023 16:42:00 +0000 (12:42 -0400)]
sync: When in an adjusted branch, merge changes from the original branch

This causes changes to the original branch to get merged with a single
sync. Before, it took 2 syncs; the first happened to update the synced/
branch, and the second merged changes from the synced/ branch into the
ajusted branch.

Using mergeToAdjustedBranch when tomerge == origbranch is probably
overkill, but it does work fine.

Sponsored-By: the NIH-funded NICEMAN (ReproNim TR&D3) project
3 years agoAdded a comment
nobodyinperson [Thu, 6 Jul 2023 05:52:50 +0000 (05:52 +0000)]
Added a comment

3 years agoAdded a comment
nobodyinperson [Thu, 6 Jul 2023 05:44:57 +0000 (05:44 +0000)]
Added a comment

3 years agoimportfeed: Add feedurl to the metadata
Joey Hess [Thu, 6 Jul 2023 04:10:19 +0000 (00:10 -0400)]
importfeed: Add feedurl to the metadata

(And allow it to be used in the --template although that seems unlikely to
be very useful.)

My use case for this is that one of the podcast feeds I subscribe to is
sometimes leaking episodes of some other podcast. The other podcast is also
very close to spam, so this may be a form of intentional spamming. I have
not been able to catch the podcast feed containing those episodes, so I
don't know which one is at fault. So putting this in the metadata will let
me eventually catch it.

3 years agocomment
Joey Hess [Wed, 5 Jul 2023 21:39:26 +0000 (17:39 -0400)]
comment

3 years agocomment
Joey Hess [Wed, 5 Jul 2023 21:20:47 +0000 (17:20 -0400)]
comment

3 years agopropigateAdjustedCommits: avoid overwriting diverged original branch
Joey Hess [Wed, 5 Jul 2023 21:01:39 +0000 (17:01 -0400)]
propigateAdjustedCommits: avoid overwriting diverged original branch

Bug fix: Re-running git-annex adjust or sync when in an adjusted branch
would overwrite the original branch, losing any commits that had been made
to it since the adjusted branch was created.

When git-annex adjust is run in this situation, it will display a warning
about the diverged branches.

When git-annex sync is run in this situation, mergeToAdjustedBranch
will merge the changes from the original branch to the adjusted branch.
So it does not need to display the divergence warning.

Note that for some reason, I'm needing to run sync twice for that to
happen. The first run does not do the merge and the second does. I'm unsure
why and so am not fully done with this bug.

Sponsored-By: the NIH-funded NICEMAN (ReproNim TR&D3) project
3 years agoMerge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Wed, 5 Jul 2023 20:55:10 +0000 (16:55 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com

3 years agocomment
Joey Hess [Wed, 5 Jul 2023 20:54:52 +0000 (16:54 -0400)]
comment

3 years agoAdded a comment
nobodyinperson [Wed, 5 Jul 2023 20:46:13 +0000 (20:46 +0000)]
Added a comment

3 years agodiffdriver --text support options for diff
Joey Hess [Wed, 5 Jul 2023 19:43:29 +0000 (15:43 -0400)]
diffdriver --text support options for diff

Sponsored-by: KDM on Patreon
3 years agoremove redundant example
Joey Hess [Wed, 5 Jul 2023 19:05:23 +0000 (15:05 -0400)]
remove redundant example

The paragraph just above already shows how to configure .gitattributes
and the necessary git config. So this is redundant. Also, it makes
.gitattributes match *, which is likely not a good idea because those
files are not likely to be all text files.

3 years agomove new video into feed
Joey Hess [Wed, 5 Jul 2023 18:54:21 +0000 (14:54 -0400)]
move new video into feed

3 years agoFix breakage when git is configured with safe.bareRepository = explicit
Joey Hess [Wed, 5 Jul 2023 18:43:02 +0000 (14:43 -0400)]
Fix breakage when git is configured with safe.bareRepository = explicit

Running git config --list inside .git then fails, so better to only
do that when --git-dir was specified explicitly. Otherwise, when the
repository is not bare, run the command inside the working tree.

Also make init detect when the uuid it just set cannot be read and fail
with an error, in case git changes something that breaks this later.

I still don't actually understand why git-annex add/assist -J2 was
affected but -J1 was not. But I did show that it was skipping writing to
the location log, because the uuid was NoUUID.

Sponsored-by: Graham Spencer on Patreon
3 years agorenamed bug
Joey Hess [Wed, 5 Jul 2023 18:09:21 +0000 (14:09 -0400)]
renamed bug

3 years agoerk
Joey Hess [Wed, 5 Jul 2023 17:57:28 +0000 (13:57 -0400)]
erk

3 years agoalso affects add
Joey Hess [Wed, 5 Jul 2023 17:42:52 +0000 (13:42 -0400)]
also affects add

3 years agoassist: With --jobs, parallelize transferring content to/from remotes
Joey Hess [Wed, 5 Jul 2023 16:24:04 +0000 (12:24 -0400)]
assist: With --jobs, parallelize transferring content to/from remotes

Command.Add.seek starts concurrency with CommandStages. And for
Command.Sync, it needs TransferStages. So, to get both types of concurrency
for the two different parts, it either needs to change the type of
concurrency in between, or just call startConcurrency once for each.

It seems safe enough to call startConcurrency twice, because it does shut
down concurrency (mostly) at the end, and eg the old Annex.workers get
emptied.

Sponsored-by: unqueued on Patreon
3 years agobug
Joey Hess [Wed, 5 Jul 2023 16:11:48 +0000 (12:11 -0400)]
bug

3 years agoMerge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Wed, 5 Jul 2023 15:54:43 +0000 (11:54 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com

3 years agoupdate
Joey Hess [Wed, 5 Jul 2023 15:49:25 +0000 (11:49 -0400)]
update

3 years agoAdded a comment: Disabling a special remote
dud225@35a1ee469f82f3a7eb1f2dce4ad453f5e47bdfd3 [Tue, 4 Jul 2023 20:54:19 +0000 (20:54 +0000)]
Added a comment: Disabling a special remote

3 years ago(no commit message)
nobodyinperson [Tue, 4 Jul 2023 18:49:01 +0000 (18:49 +0000)]

3 years ago(no commit message)
nobodyinperson [Mon, 3 Jul 2023 13:45:36 +0000 (13:45 +0000)]

3 years agoAdd --text example to diffdriver man page
Yann Büchau [Mon, 3 Jul 2023 11:19:45 +0000 (13:19 +0200)]
Add --text example to diffdriver man page

3 years ago(no commit message)
nobodyinperson [Mon, 3 Jul 2023 11:08:36 +0000 (11:08 +0000)]

3 years agofix suggestion to use enableremote
Joey Hess [Sun, 2 Jul 2023 19:01:02 +0000 (15:01 -0400)]
fix suggestion to use enableremote

3 years agoAdd link to Yann's talk to videos list
nobodyinperson [Sat, 1 Jul 2023 22:21:42 +0000 (22:21 +0000)]
Add link to Yann's talk to videos list

3 years agoinitial report on annex sync odd behavior loosing my precious commit
yarikoptic [Fri, 30 Jun 2023 19:39:46 +0000 (19:39 +0000)]
initial report on annex sync odd behavior loosing my precious commit

3 years agoAdded a comment: WiFi without broadcasting
nobodyinperson [Fri, 30 Jun 2023 07:56:03 +0000 (07:56 +0000)]
Added a comment: WiFi without broadcasting

3 years agoAdded a comment: Thanks for git annex satisfy, numcopies question
nobodyinperson [Fri, 30 Jun 2023 05:37:06 +0000 (05:37 +0000)]
Added a comment: Thanks for git annex satisfy, numcopies question