removed
Added a comment: `git annex sync` not syncing automatically with gcrypt remotes
Joey Hess [Sat, 18 Mar 2023 16:24:58 +0000 (12:24 -0400)]
rename an old closed bug to avoid filename too long on windows checkout
PossibleLoon [Sat, 18 Mar 2023 04:13:45 +0000 (04:13 +0000)]
Joey Hess [Fri, 17 Mar 2023 20:49:48 +0000 (16:49 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Fri, 17 Mar 2023 20:48:15 +0000 (16:48 -0400)]
initial appveyor file
Appveyor access provided by Michael Hanke. Once this commit reaches
the repo at https://github.com/datalad/git-annex/ appveyor should see it
and run.
Joey Hess [Fri, 17 Mar 2023 19:22:12 +0000 (15:22 -0400)]
credit
Joey Hess [Fri, 17 Mar 2023 19:21:31 +0000 (15:21 -0400)]
keyspell ignore tmp directory
Joey Hess [Fri, 17 Mar 2023 19:21:11 +0000 (15:21 -0400)]
keyspell unignore valus
seems clean without this
Joey Hess [Fri, 17 Mar 2023 19:18:43 +0000 (15:18 -0400)]
codespell ignore build artiacts
Yaroslav Halchenko [Mon, 13 Mar 2023 22:44:58 +0000 (18:44 -0400)]
Add rudimentary .codespellrc with skips I found needed
added some eyeballed skips
Ignores picked up among 3 letter words using helper
/home/yoh/deb/gits/pkg-exppsy/afni-upstream/.codespell-ignore-shorts.sh 3 | tr '\n' ','
Ignored thanks file
Yaroslav Halchenko [Tue, 14 Mar 2023 02:39:16 +0000 (22:39 -0400)]
Apply codespell -w throughout
Yaroslav Halchenko [Tue, 14 Mar 2023 02:35:54 +0000 (22:35 -0400)]
Typo: recurrance -> recurrence
Yaroslav Halchenko [Mon, 13 Mar 2023 23:06:23 +0000 (19:06 -0400)]
Typo: sansative -> sensitive
Yaroslav Halchenko [Mon, 13 Mar 2023 22:55:18 +0000 (18:55 -0400)]
Fix ambigous typos
jwiegley [Thu, 16 Mar 2023 12:52:54 +0000 (12:52 +0000)]
Added a comment
jwiegley [Thu, 16 Mar 2023 12:24:45 +0000 (12:24 +0000)]
Added a comment: An example of what I see
jwiegley [Thu, 16 Mar 2023 12:02:10 +0000 (12:02 +0000)]
Joey Hess [Tue, 14 Mar 2023 17:36:40 +0000 (13:36 -0400)]
reproduced
Joey Hess [Tue, 14 Mar 2023 16:21:59 +0000 (12:21 -0400)]
todo that I decided not to do, recorded for posterity
Joey Hess [Mon, 13 Mar 2023 19:40:18 +0000 (15:40 -0400)]
comment
Joey Hess [Mon, 13 Mar 2023 18:50:28 +0000 (14:50 -0400)]
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
Joey Hess [Mon, 13 Mar 2023 17:56:06 +0000 (13:56 -0400)]
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
Joey Hess [Mon, 13 Mar 2023 17:48:10 +0000 (13:48 -0400)]
tag datalad
It links to a datalad issue, so I suppose this is right?
Joey Hess [Mon, 13 Mar 2023 17:39:00 +0000 (13:39 -0400)]
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
Joey Hess [Sun, 12 Mar 2023 17:41:00 +0000 (13:41 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Sat, 11 Mar 2023 17:52:41 +0000 (13:52 -0400)]
importfeed: Display feed title
When importing a bunch of feeds, this makes it more clear what it's working
on. Also, I sometimes want to delete a particular feed from a list of feeds
but don't know which url belongs to the feed, and this solves that.
Control characters are filtered out just to protect against some feed
putting escape character stuff in the feed, which could be a
security problem. (Control characters also get filtered out of
importfeed filenames.)
Sponsored-by: Luke Shumaker on Patreon
Daniel Höxtermann [Fri, 10 Mar 2023 17:07:20 +0000 (18:07 +0100)]
Fix typos "=yet" -> "=yes"
Joey Hess [Fri, 10 Mar 2023 16:13:30 +0000 (12:13 -0400)]
fixed
Joey Hess [Fri, 10 Mar 2023 16:10:38 +0000 (12:10 -0400)]
fix oops
amdd64 vs arm64 confusion
Joey Hess [Fri, 10 Mar 2023 16:05:17 +0000 (12:05 -0400)]
typo
Joey Hess [Fri, 10 Mar 2023 16:04:14 +0000 (12:04 -0400)]
fix links
Joey Hess [Fri, 10 Mar 2023 15:59:03 +0000 (11:59 -0400)]
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
Joey Hess [Fri, 10 Mar 2023 15:48:37 +0000 (11:48 -0400)]
comment
Joey Hess [Fri, 10 Mar 2023 15:42:18 +0000 (11:42 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Fri, 10 Mar 2023 15:41:52 +0000 (11:41 -0400)]
include subdir when checking export branch is checked out
sync: Fix a reversion that prevented sending files to exporttree=yes
remotes when annex-tracking-branch was configured to branch:subdir
(Introduced in version 10.
20230214)
Sponsored-by: Kevin Mueller on Patreon
Joey Hess [Fri, 10 Mar 2023 14:33:20 +0000 (10:33 -0400)]
close
yarikoptic [Fri, 10 Mar 2023 02:52:08 +0000 (02:52 +0000)]
Added a comment
yarikoptic [Fri, 10 Mar 2023 02:50:38 +0000 (02:50 +0000)]
original idea on some "native" support for ephemeral datalad clones.
Joey Hess [Thu, 9 Mar 2023 15:43:55 +0000 (11:43 -0400)]
fix OSx build better
Joey Hess [Wed, 8 Mar 2023 16:18:55 +0000 (12:18 -0400)]
comment
Joey Hess [Wed, 8 Mar 2023 16:17:40 +0000 (12:17 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Wed, 8 Mar 2023 16:17:09 +0000 (12:17 -0400)]
Joey Hess [Wed, 8 Mar 2023 15:41:20 +0000 (11:41 -0400)]
remove redundant import
hurlebouc [Wed, 8 Mar 2023 15:16:29 +0000 (15:16 +0000)]
Added a comment
hurlebouc [Wed, 8 Mar 2023 15:11:26 +0000 (15:11 +0000)]
Added a comment
yarikoptic [Wed, 8 Mar 2023 14:41:56 +0000 (14:41 +0000)]
initial report on newlines fiasco
yarikoptic [Wed, 8 Mar 2023 04:16:15 +0000 (04:16 +0000)]
initial report on deficiency of copy --from --to
yarikoptic [Tue, 7 Mar 2023 21:17:04 +0000 (21:17 +0000)]
FTBFS bug report
Joey Hess [Mon, 6 Mar 2023 17:05:02 +0000 (13:05 -0400)]
open bug
Joey Hess [Mon, 6 Mar 2023 16:39:59 +0000 (12:39 -0400)]
comment
Joey Hess [Mon, 6 Mar 2023 16:27:39 +0000 (12:27 -0400)]
comment
Joey Hess [Mon, 6 Mar 2023 16:25:39 +0000 (12:25 -0400)]
re-close with comment
Joey Hess [Mon, 6 Mar 2023 16:15:53 +0000 (12:15 -0400)]
further fix windows build
Thanks to jkniiv for this patch.
Joey Hess [Mon, 6 Mar 2023 16:13:29 +0000 (12:13 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com
Joey Hess [Sun, 5 Mar 2023 21:37:34 +0000 (17:37 -0400)]
update
jkniiv [Sun, 5 Mar 2023 20:18:02 +0000 (20:18 +0000)]
Added a comment
benibilme [Sun, 5 Mar 2023 20:04:03 +0000 (20:04 +0000)]
Added a comment: Hello,
derphysiker [Sat, 4 Mar 2023 20:45:48 +0000 (20:45 +0000)]
Added a comment
derphysiker [Sat, 4 Mar 2023 20:38:49 +0000 (20:38 +0000)]
jkniiv [Sat, 4 Mar 2023 19:36:13 +0000 (19:36 +0000)]
retitle bug report now that it's reopened
jkniiv [Sat, 4 Mar 2023 19:33:13 +0000 (19:33 +0000)]
reopen bug, 2nd try -- now with backslashes :)
jkniiv [Sat, 4 Mar 2023 19:29:21 +0000 (19:29 +0000)]
reopen bug -- the fix Joey committed didn't build
jkniiv [Sat, 4 Mar 2023 19:15:32 +0000 (19:15 +0000)]
Added a comment: ok, that didn't quite resolve it
derphysiker [Sat, 4 Mar 2023 11:11:27 +0000 (11:11 +0000)]
Added a comment
benibilme [Sat, 4 Mar 2023 07:56:58 +0000 (07:56 +0000)]
benibilme [Sat, 4 Mar 2023 07:55:02 +0000 (07:55 +0000)]
benibilme [Sat, 4 Mar 2023 07:47:02 +0000 (07:47 +0000)]
benibilme [Sat, 4 Mar 2023 07:41:57 +0000 (07:41 +0000)]
benibilme [Sat, 4 Mar 2023 07:39:03 +0000 (07:39 +0000)]
benibilme [Sat, 4 Mar 2023 07:37:46 +0000 (07:37 +0000)]
benibilme [Sat, 4 Mar 2023 07:36:06 +0000 (07:36 +0000)]
Joey Hess [Fri, 3 Mar 2023 17:20:49 +0000 (13:20 -0400)]
fix build on OSX
This is built when building Setuo, and after
54ad1b4cfb1c8302f1b862cb2699ab9351e3eb5b, such modules cannot import
Utility.Directory, because it depends on unix, which is not in
setup-depends. This module only needs System.Directory, so import
Utility.SystemDirectory instead.
Sponsored-by: Dartmouth College's Datalad project
Joey Hess [Fri, 3 Mar 2023 16:58:39 +0000 (12:58 -0400)]
fix build on windows
Joey Hess [Fri, 3 Mar 2023 16:55:01 +0000 (12:55 -0400)]
Merge branch 'master' of ssh://git-annex.branchable.com
jkniiv [Thu, 2 Mar 2023 20:03:18 +0000 (20:03 +0000)]
report on windows build failure (commit
54ad1b4cf)
Joey Hess [Thu, 2 Mar 2023 14:53:12 +0000 (10:53 -0400)]
small RawFilePath optimisation
Joey Hess [Wed, 1 Mar 2023 19:58:47 +0000 (15:58 -0400)]
comment
Joey Hess [Wed, 1 Mar 2023 19:55:58 +0000 (15:55 -0400)]
Windows: Support long filenames in more (possibly all) of the code
Works around this bug in unix-compat:
https://github.com/jacobstanley/unix-compat/issues/56
getFileStatus and other FilePath using functions in unix-compat do not do
UNC conversion on Windows.
Made Utility.RawFilePath use convertToWindowsNativeNamespace to do the
necessary conversion on windows to support long filenames.
Audited all imports of System.PosixCompat.Files to make sure that no
functions that operate on FilePath were imported from it. Instead, use
the equvilants from Utility.RawFilePath. In particular the
re-export of that module in Common had to be removed, which led to lots
of other changes throughout the code.
The changes to Build.Configure, Build.DesktopFile, and Build.TestConfig
make Utility.Directory not be needed to build setup. And so let it use
Utility.RawFilePath, which depends on unix, which cannot be in
setup-depends.
Sponsored-by: Dartmouth College's Datalad project
Joey Hess [Wed, 1 Mar 2023 18:01:33 +0000 (14:01 -0400)]
avoid using Utility.Path.AbsRel in Utility.Path.Windows
AbsRel depends on unix, but Utility.Path.Windows will be used in some
libraries that are part of the setup-depends, which cannot depend on
unix.
The only reason that AbsRel uses getWorkingDirectory on unix is that
it returns RawFilePath. getCurrentDirectory returns FilePath and so
needs a conversion to RawFilePath. Looks like a newer version of
directory will fix that, by using OsPath, so eventually AbsPath should
be able to switch to using getCurrentDirectory on unix, and then the
small code duplication in this commit won't be needed.
Sponsored-by: Dartmouth College's Datalad project
Joey Hess [Wed, 1 Mar 2023 17:14:55 +0000 (13:14 -0400)]
factor out convertToWindowsNativeNamespace into its own module
Gonna use this more widely.
Sponsored-by: Dartmouth College's Datalad project
Joey Hess [Wed, 1 Mar 2023 17:04:18 +0000 (13:04 -0400)]
comment
Joey Hess [Wed, 1 Mar 2023 16:34:40 +0000 (12:34 -0400)]
close
Joey Hess [Wed, 1 Mar 2023 16:22:38 +0000 (12:22 -0400)]
close
Joey Hess [Tue, 28 Feb 2023 20:34:31 +0000 (16:34 -0400)]
deprecate git-annex status w/o runtime warning
As far as I can see, git-annex status was added to support direct mode, and
like other things added for that, it ought to be deprecated.
Behavior is similar to git status --short, though not identical in a few
cases eg renamed files.
I think datalad does not use this command, although it might have in the
past. Could not find any use of it in the current datalad code.
A deprecation warning at runtime would be the next step, probably will wait
and do that for all the deprecated commands together (except findref).
mih [Tue, 28 Feb 2023 15:35:50 +0000 (15:35 +0000)]
Added a comment: Update for git-annex
10.20230227-ga206cdddb4
Joey Hess [Mon, 27 Feb 2023 20:28:26 +0000 (16:28 -0400)]
devblog
Joey Hess [Mon, 27 Feb 2023 19:55:31 +0000 (15:55 -0400)]
done with adjusted view branches!
Well, perhaps it could be documented better, but it's a compositional
feature so users who need it will probably try it and be happy to find
that it works.
Joey Hess [Mon, 27 Feb 2023 19:48:58 +0000 (15:48 -0400)]
support git-annex view in an adjusted branch
Rather than entering a view of the adjusted branch, enter an adjusted
view branch. This way, it's the same as first using git-amnnex view
followed by git-annex adjust, and everything already implemented to
support that works.
Sponsored-by: Nicholas Golder-Manning on Patreon
Joey Hess [Mon, 27 Feb 2023 19:39:58 +0000 (15:39 -0400)]
support --hide-missing adjustment of view branches
I had thought this would not make sense to combine with view branches,
since removing files from a view changes metadata.
However, that's committing removal of files. With --hide-missing, the
files get removed when git-annex updates the branch itself, so there is
no conflict.
It does not seem likely to be very useful, but it does work! And that's
nice because it means all types of adjusted branches can be combined with
view branches.
Sponsored-by: Max Thoursie on Patreon
Joey Hess [Mon, 27 Feb 2023 19:29:28 +0000 (15:29 -0400)]
support --unlock-present adjustment of view branches
When generating the view, check if the key is present.
When syncing in a view branch with an adjustment, run adjustedBranchRefreshFull
the same as is done when syncing in other adjusted branches. This is
needed because the docs for git-annex adjust --unlock-present suggest
using git-annex sync to update the branch when annex.adjustedbranchrefresh
is not set.
Note that, with annex.adjustedbranchrefresh set, it just works! The
adjusted branch gets updated in the usual way and it doesn't matter that
there's a view branch underneath.
And of course, re-running git-annex adjut --unlock-present also works,
as suggested in the docs.
Sponsored-by: Erik Bjäreholt on Patreon
Joey Hess [Mon, 27 Feb 2023 19:07:36 +0000 (15:07 -0400)]
support generation of unlocked views
Just make pointer files rather than symlinks, easy.
As for the other adjustments:
--lock is the default for views
--fix happens automatically in views
--hide-missing probably does not make sense when combined with views,
because deleting a file from a view removes metadata
--unlock-present will need a bit more work
Joey Hess [Mon, 27 Feb 2023 19:02:53 +0000 (15:02 -0400)]
rawfilepath conversion
Joey Hess [Mon, 27 Feb 2023 18:39:33 +0000 (14:39 -0400)]
understand adjusted view branch names
An adjusted view branch has a name like
"refs/heads/adjusted/views/master(author=_)(unlocked)", so it is a view
branch that has been converted to an adjusted branch.
Made Logs.View support such branch names. So now git-annex sync and
pre-commit handle updating metadata on commit in such a branch.
Much remains to be done to fully support adjusted view branches,
including actually applying the adjustment when updating the view branch.
Sponsored-by: Graham Spencer on Patreon
Joey Hess [Mon, 27 Feb 2023 18:35:27 +0000 (14:35 -0400)]
overwrite old adjusted view branch
When git-annex adjust is run in a view branch, and the adjusted branch
already exists, overwrite the old adjusted branch with the new one
without being forced.
Usually overwriting an adjusted branch is avoided because it could lose
data. But when a view branch has been adjusted, there is no data to lose
in the adjusted branch, because the only changes that can be made of
significance are to move files between directories. Which changes
metadata on commit. And the old branch has already been committed.
Sponsored-by: Lawrence Brogan on Patreon
Joey Hess [Mon, 27 Feb 2023 17:08:29 +0000 (13:08 -0400)]
improve adjusted branch name parsing to support adjusted view branches
An adjusted view branch has a name like
"adjusted/views/master(author=_)(unlocked)"
and so the adjustment starts at the last open paren, not the first open
paren.
Note that git-annex sync still does not do anything useful when run in
such a branch, because it does not realize that it is a view branch.
This is only groundwork for adjusted view branches.
This also fixes adjusted branches when the basis branch name contains
parens for some other reason, though that is not common in a git branch
name.
Sponsored-by: Boyd Stephen Smith Jr. on Patreon
Joey Hess [Mon, 27 Feb 2023 16:24:03 +0000 (12:24 -0400)]
add news item for git-annex 10.
20230227
Joey Hess [Mon, 27 Feb 2023 16:23:43 +0000 (12:23 -0400)]
releasing package git-annex version 10.
20230227
Joey Hess [Mon, 27 Feb 2023 16:03:09 +0000 (12:03 -0400)]
comment
Joey Hess [Mon, 27 Feb 2023 15:57:07 +0000 (11:57 -0400)]
comment