Commit graph

41226 commits

Author SHA1 Message Date
kyle
e2da89ba49 Added a comment: re: git 2.34: some conflict resolution unit tests fail 2021-11-21 21:41:36 +00:00
jkniiv
a0e9a059ab issue, presumably git 2.34 new merge strategy to blame 2021-11-21 18:49:02 +00:00
Joey Hess
0f9e5ada82
idea 2021-11-21 11:19:47 -04:00
yarikoptic
e1f38b9dd7 Added a comment 2021-11-19 17:44:22 +00:00
Joey Hess
766720d093
soften language in changelog
This bug mostly would happen when the downloads ran very fast or were
all failing (how I reproduced it), because there have to be two
downloads that finish very close to the same time to trigger the race.

So most users of -J probably would not see much impact from the bug.
2021-11-19 12:52:22 -04:00
Joey Hess
623a775609
fix cat-file leak in get with -J
Bugfix: When -J was enabled, getting files leaked a ever-growing number of
git cat-file processes.

(Since commit dd39e9e255)

The leak happened when mergeState called stopNonConcurrentSafeCoProcesses.
While stopNonConcurrentSafeCoProcesses usually manages to stop everything,
there was a race condition where cat-file processes were leaked. Because
catFileStop modifies Annex.catfilehandles in a non-concurrency safe way,
and could clobber modifications made in between. Which should have been ok,
since originally catFileStop was only used at shutdown.

Note the comment on catFileStop saying it should only be used when nothing
else is using the handles. It would be possible to make catFileStop
race-safe, but it should just not be used in a situation where a race is
possible. So I didn't bother.

Instead, the fix is just not to stop any processes in mergeState. Because
in order for mergeState to be called, dupState must have been run, and it
enables concurrency mode, stops any non-concurrent processes, and so all
processes that are running are concurrency safea. So there is no need to
stop them when merging state. Indeed, stopping them would be extra work,
even if there was not this bug.

Sponsored-by: Dartmouth College's Datalad project
2021-11-19 12:51:08 -04:00
Joey Hess
2d3e8718e6
reproduced 2021-11-19 12:05:19 -04:00
Joey Hess
15d617f7e1
have setConcurrency stop any running git coprocesses
When non-concurrent git coprocesses have been started, setConcurrency
used to not stop them, and so could leak processes when enabling
concurrency, eg when forkState is called.

I do not think that ever actually happened, given where setConcurrency
is called. And it probably would only leak one of each process, since it
never downgrades from concurrent to non-concurrent.
2021-11-19 12:00:39 -04:00
Joey Hess
261947683b
comment 2021-11-19 10:23:27 -04:00
Joey Hess
1e1da11ea1
Merge branch 'master' of ssh://git-annex.branchable.com 2021-11-19 09:20:07 -04:00
Joey Hess
7d89a8846e
tag forumbug 2021-11-19 09:19:56 -04:00
yarikoptic
9513b37803 Added a comment: bisection 2021-11-18 02:29:01 +00:00
yarikoptic
3191ea44ef Added a comment: god bless search 2021-11-17 21:03:29 +00:00
Joey Hess
31be0770a5
importfeed: Display url before starting youtube-dl download
It was displaying a blank line before.
2021-11-17 13:23:55 -04:00
Joey Hess
8c756d5a27
fix comment typo 2021-11-17 13:03:37 -04:00
Joey Hess
86fa460ce2
better wording 2021-11-17 12:48:28 -04:00
Joey Hess
7521f63665
add news item for git-annex 8.20211117 2021-11-17 12:21:07 -04:00
Joey Hess
c3af94eff4
releasing package git-annex version 8.20211117 2021-11-17 12:20:29 -04:00
Joey Hess
a922d3c42b
update git-lfs version to match git-annex.cabal 2021-11-16 12:54:29 -04:00
Joey Hess
674d6703ad
collapse lists of done items by default
Copying how the datalad page does it. This avoids me missing the header
and thinking these are still open.
2021-11-16 12:38:41 -04:00
Joey Hess
7e19fcc93b
tag moreinfo 2021-11-16 12:35:02 -04:00
Joey Hess
c9d598ced7
comment 2021-11-16 12:33:36 -04:00
Joey Hess
58c9372053
close 2021-11-15 15:46:16 -04:00
Joey Hess
70d99328be
Merge branch 'master' of ssh://git-annex.branchable.com 2021-11-15 15:35:04 -04:00
Joey Hess
332385a117
use parseFeedFromFile to avoid mojibake
As mentioned in commit 2bd778a46e, there
was mojibake when LANG=C.

Looking at parseFeedFromFile, it is very particular to read the file as
unicode. parseFeedString looks like it will accept any old String,
but a String that was read using the filesystem encoding will not in
fact have the right encoding.

I think this is a bug in the feed library and will file one.

Sponsored-by: Svenne Krap on Patreon
2021-11-15 15:31:02 -04:00
Joey Hess
2bd778a46e
importfeed: Fix a crash when used in a non-unicode locale
See comment for analysis.

At first I thought I'd need to convert all T.unpack in git-annex, but
luckily not -- so long as the Text is read from a file, the filesystem
encoding is applied and T.unpack is fine. It's only when using Feed
that the filesystem encoding is not applied.

While this fixes the crash, it does result in some mojibake, eg:
itemid=http://www.manager-tools.com/2014/01/choosing-a-company-work-chapter-7-���-questions/

Have not tracked that down, but it must be unrelated, because
I've verified that it roundtrips when using encodeUf8:

joey@darkstar:~/src/git-annex>LANG=C ghci  Utility/FileSystemEncoding.hs
ghci> useFileSystemEncoding
ghci> Just f <- Text.Feed.Import.parseFeedFromFile "/home/joey/tmp/career_tools_podcasts.xml"
ghci> Just (_, x) = Text.Feed.Query.getItemId (Text.Feed.Query.feedItems f !! 0)
ghci> decodeBS (Data.Text.Encoding.encodeUtf8 x)
"http://www.manager-tools.com/2014/01/choosing-a-company-work-chapter-7-\56546\56448\56467-questions/"
ghci> writeFile "foo" $ decodeBS (Data.Text.Encoding.encodeUtf8 x)
Writes a file containing the ENDASH character.

Sponsored-by: Jochen Bartl on Patreon
2021-11-15 15:04:21 -04:00
Lukey
b4052cb765 Added a comment 2021-11-14 20:11:35 +00:00
contact@ee563aaec1e9de7a4e8d748992963dba79178e9c
db4ae6c697 Added a comment 2021-11-14 18:41:18 +00:00
contact@ee563aaec1e9de7a4e8d748992963dba79178e9c
0e3fb1c2db Added a comment 2021-11-14 18:37:05 +00:00
contact@ee563aaec1e9de7a4e8d748992963dba79178e9c
0c4a40d59f Added a comment 2021-11-14 18:35:45 +00:00
contact@ee563aaec1e9de7a4e8d748992963dba79178e9c
6f07a82f9c 2021-11-14 18:33:52 +00:00
Joey Hess
b12f7f84f7
Merge branch 'master' of ssh://git-annex.branchable.com 2021-11-13 09:09:45 -04:00
Joey Hess
889e771357
display error message if unable to run youtube-dl
This would have made the typo of the command name that was just fixed
obvious earlier, when --no-raw was used to force using it.
2021-11-13 09:07:43 -04:00
Joey Hess
aa6e54ac6e
Fix a typo in the name of youtube-dl (reversion introduced in version 8.20210903) 2021-11-13 08:58:36 -04:00
rklett
5b6e096f12 2021-11-13 03:59:47 +00:00
Joey Hess
258647ce7d
improve docs
I saw a user open a forum post that looked like they had read this man
page, but were unaware of git-annex unlock, and were looking for its
functionality. They later deleted the post, probably when they found
git-annex unlock. Looking at this man page, it was a bit unclear about
the motivation for the command.

Yes, I'm warching... ;-)
2021-11-12 14:08:36 -04:00
Joey Hess
2248b35fb8
Merge branch 'master' of ssh://git-annex.branchable.com 2021-11-12 13:29:22 -04:00
Joey Hess
51b73ea1fc
migrate: New --remove-size option
While intended for converting URL keys added by addurl --fast to be
as if added by addurl --relaxed, it can also be used to remove size
from other types of keys. Although that is not likely to be useful
for checksummed keys, I suppose it could be used for WORM or other
non-checksum keys.

Specifying the --remove-size option does not prevent other migrations
from taking effect if there's a key upgrade to perform, or if the
backend has changed. So --backend=URL needs to be used to prevent
migrating an URL key to the default backend.

Note that it's not possible to use git-annex migrate to convert from a
non-URL key to an URL key, as URL keys cannot be generated, except by
addurl. So while this can get the same effect as --relaxed would have
when addurl --fast was used, when --fast was not used, it won't work, or
if --backend=URL is not used will remove the size but not prevent
checksum verification, which is not useful. Due to this complexity, I
decided not to mention it in the git-annex addurl man page.

Sponsored-by: Jochen Bartl on Patreon
2021-11-12 13:28:28 -04:00
iimog@2c22a44141070c04b943932b697818a686859677
71f87dabd2 Added a comment: It works 2021-11-12 08:14:33 +00:00
Joey Hess
f3326b8b5a
git-lfs gitlab interoperability fix
git-lfs: Fix interoperability with gitlab's implementation of the git-lfs
protocol, which requests Content-Encoding chunked.

Sponsored-by: Dartmouth College's Datalad project
2021-11-10 13:51:11 -04:00
Joey Hess
dee462f536
tag as datalad 2021-11-09 16:06:41 -04:00
Joey Hess
3bdac41090
comment 2021-11-09 16:04:54 -04:00
Joey Hess
886d60dabe
Merge branch 'master' of ssh://git-annex.branchable.com 2021-11-09 15:53:13 -04:00
Joey Hess
9121154a75
new todo 2021-11-09 15:52:17 -04:00
Ilya_Shlyakhter
61a6bdc386 Added a comment: clarification re: smudge filter and annex.supportunlocked 2021-11-09 18:28:10 +00:00
Joey Hess
8034f2e9bb
factor out IncrementalHasher from IncrementalVerifier 2021-11-09 12:33:22 -04:00
iimog@2c22a44141070c04b943932b697818a686859677
173d8d0e51 2021-11-09 15:30:42 +00:00
jkniiv
a741d3308f Added a comment 2021-11-09 08:48:33 +00:00
fireboy
95c37fb262 removed 2021-11-09 04:47:41 +00:00
fireboy
6682b04a27 2021-11-09 01:48:01 +00:00