Commit graph

38280 commits

Author SHA1 Message Date
Joey Hess
4bcb4030a5
more RawFilePath conversion
580/645

This commit was sponsored by Jack Hill on Patreon.
2020-11-03 18:34:27 -04:00
Joey Hess
eb42cd4d46
more RawFilePath conversion
535/645

This commit was sponsored by Brett Eisenberg on Patreon.
2020-11-03 10:11:04 -04:00
Joey Hess
55400a03d3
more RawFilePath conversion
This commit was sponsored by Luke Shumaker on Patreon.
2020-11-02 16:31:28 -04:00
Joey Hess
b724236b35
remove unused imports 2020-11-02 15:36:11 -04:00
Joey Hess
c41be0d3bd
Merge branch 'master' into rawfilepath 2020-11-02 14:35:46 -04:00
Joey Hess
efdb13fca3
comment 2020-11-02 13:55:30 -04:00
Joey Hess
fcdbc892ed
already fixed 2020-11-02 13:25:07 -04:00
Joey Hess
6eca4fc95e
not a bug 2020-11-02 13:24:23 -04:00
Joey Hess
00ff87a09e
Merge branch 'master' of ssh://git-annex.branchable.com 2020-11-02 13:24:02 -04:00
Joey Hess
7245a9ed53
Improve shutdown process for external special remotes and external backends
Make sure to relay any remaining stderr from the process after it has
shut down, rather than closing stderr just before shutdown. This avoids
a situation where the process is still running and tries to write to
stderr, getting a SIGPIPE. And, it ensures that no stderr output is
lost.

This may fix a problem encountered by datalad on windows, where it hangs
during the external special remote shutdown.

Before commit a49d300545, it closed stdin
and stdout, but left stderr open, and never killed the stderr waiter
thread, which presumably exited on its own. For async exception
safety, do need to at make sure that thread gets waited on, as that
commit does, but it introduced this problem.

Note that, the process's stdout is closed before waiting on it. It's too
late for anything it writes to stdout to be processed, and since we're
not going to consume any such writes, this avoids the process getting
blocked writing to stdout due to us not reading what it's buffered. This
does mean that if the process writes to stdout too late, it will get a
SIGPIPE. (This was already the case before the above-mentioned commit.)
In practice, I think only the protocol's ERROR is allowed to be
sent at a point where this could happen.
2020-11-02 12:56:35 -04:00
Ilya_Shlyakhter
44948ae342 updated URL of Homebrew formula for git-annex. 2020-11-02 15:56:45 +00:00
nix.zahlen@1211ac6c964ba2d68b70655f747bef1383032e77
617ec1a813 Added a comment: build a CI/CD chain for git-annex 2020-10-31 17:47:15 +00:00
nix.zahlen@1211ac6c964ba2d68b70655f747bef1383032e77
6334665dd2 Added a comment: where and how to submit Windows autobuild related issues? 2020-10-31 17:44:18 +00:00
Joey Hess
87f91ce563
more RawFilePath conversion
451/645
2020-10-30 15:55:59 -04:00
Joey Hess
b4b02e4c61
more RawFilePath conversion
412/645
2020-10-30 13:31:35 -04:00
Joey Hess
ca80c3154c
more RawFilePath conversion
removeFile changed to removeLink, because AFAICS it should be fine to
remove non-file things here. In particular, it's fine to remove a
symlink, since we're about to write a symlink. (removeLink does not
remove directories, so file, symlink, and unix socket are the only
possibilities.)
2020-10-30 13:07:41 -04:00
Joey Hess
8f452416f7
more RawFilePath conversion
Better to use Git.repoPath to get a filepath, Git.repoLocation does not
always return one.

This commit was sponsored by Ethan Aubin.
2020-10-30 13:00:12 -04:00
Joey Hess
19694fb280
more RawFilePath conversion
At this point I'll be done by new year's.

This commit was sponsored by Ethan Aubin.
2020-10-30 12:51:34 -04:00
gschnabel
7c66380163 git-annex-view fails because of "another git process running" 2020-10-30 08:13:25 +00:00
gschnabel
9d2d52ae55 git-annex-view fails 2020-10-30 08:08:18 +00:00
Joey Hess
681b44236a
more RawFilePath conversion
at 377/645

This commit was sponsored by Svenne Krap on Patreon.
2020-10-29 14:20:57 -04:00
Joey Hess
f45ad178cb
more RawFilePath conversion
At 318/645 after 4k lines of changes

This commit was sponsored by Jake Vosloo on Patreon.
2020-10-29 12:03:50 -04:00
Joey Hess
b05015f772
fix name of lock file
It was the stringification of a UUID, so "UUID \"foo\""
2020-10-29 10:53:01 -04:00
Joey Hess
e505c03bcc
more RawFilePath conversion
nukeFile replaced with removeWhenExistsWith removeLink, which allows
using RawFilePath. Utility.Directory cannot use RawFilePath since setup
does not depend on posix.

This commit was sponsored by Graham Spencer on Patreon.
2020-10-29 10:50:29 -04:00
gl@cfc0fd7a693bb7c3a600eb73f462bd504c51cedf
577cd911ee 2020-10-29 11:53:52 +00:00
lyderic
0ab03f3a61 2020-10-29 10:14:28 +00:00
lyderic
468682b6c9 Added a comment: This bug has alreay been raised 2020-10-29 10:13:50 +00:00
lyderic
69acb869ff 2020-10-29 10:08:13 +00:00
Joey Hess
8d66f7ba0f
more RawFilePath conversion
Added a RawFilePath createDirectory and kept making stuff build.

Up to 296/645

This commit was sponsored by Mark Reidenbach on Patreon.
2020-10-28 17:25:59 -04:00
Joey Hess
b8bd2e45e3
more RawFilePath conversion
Notable wins in Annex.Locations which was sometimes doing 6 conversions
in a single function call.

This commit was sponsored by Denis Dzyubenko on Patreon.
2020-10-28 16:24:14 -04:00
Joey Hess
6c29817748
RawFilePath version of getCurrentDirectory
This commit was sponsored by Jochen Bartl on Patreon
2020-10-28 16:03:45 -04:00
Joey Hess
08cbaee1f8
more RawFilePath conversion
Most of Git/ builds now.

Notable win is toTopFilePath no longer double converts

This commit was sponsored by Boyd Stephen Smith Jr. on Patreon.
2020-10-28 15:55:30 -04:00
Joey Hess
d6e94a6b2e
got configure working after Utility.Path ByteString conversion
Had to split out some modules because getWorkingDirectory needs unix,
which is not a build-dep of configure.

This commit was sponsored by Brock Spratlen on Patreon.
2020-10-28 15:01:19 -04:00
Joey Hess
e219aadbab
convert to RawByteString
This will break a lot of stuff that uses it, but once fixed should lead
to better performance.

Mostly mechanical.
Changes of note:

* upFrom now uses isPathSeparator, which is better on Windows where
  there is not just one
* splitShortExtensions used to take the length of a string,
  which would count wide unicode characters as a single character.
  Changing to B.length changes that. Note that, git-annex's
  annexMaxExtensionLength already changed to the length in bytes
  before this change. This function is only used in generating views,
  and the small behavior change should not be a problem.
* relHome still uses FilePath because it didn't seem worth changing(?)

This commit was sponsored by Jack Hill on Patreon.
2020-10-28 14:32:45 -04:00
Joey Hess
59dbd10f92
note windows versions the builds will work with 2020-10-28 13:21:47 -04:00
yarikoptic
a3bb6f235c Added a comment 2020-10-27 19:44:36 +00:00
yarikoptic
1add9c957e Added a comment 2020-10-27 19:30:24 +00:00
yarikoptic
2bea2c1937 report on possibly PATH related issue on windows 2020-10-27 19:15:38 +00:00
Joey Hess
2dd60ff42a
comment 2020-10-27 14:33:30 -04:00
Joey Hess
970e4f11e9
Merge branch 'master' of ssh://git-annex.branchable.com 2020-10-27 14:22:21 -04:00
Joey Hess
37054e0946
test if magic library works
(When built with it.)

I saw John Thorvald Wodder II doing this in
https://github.com/datalad/datalad-extensions/blob/master/.github/workflows/build-git-annex-windows.yaml
and it seemed like a good idea.

John used an empty file for the binary file, but I think it's
slightly suprising file picks that mime type for it, so opted to instead
use something less ambiguous.
2020-10-27 14:21:52 -04:00
michael.hanke@c60e12358aa3fc6060531bdead1f530ac4d582ec
0170b5468f Added a comment: Documentation of demand 2020-10-27 14:59:47 +00:00
Lukey
9ecc4ccba3 Added a comment 2020-10-27 09:06:38 +00:00
interfect@b151490178830f44348aa57b77ad58c7d18e8fe7
730f67bcc6 2020-10-26 20:55:16 +00:00
Joey Hess
64e7bac810
view: Avoid using ':' from metadata when generating a view
Because it's a special character on Windows ("c:").

Use same technique already used for '/' and '\'.

I didn't record how I generated their encoded forms before, so am sure
there was a better way, but the way I did it now is to look at

	ghci> encodeFilePath "∕"
	"\226\136\149"

And then the difference from that to "\56546\56456\56469"
is adding 56320 to each, to get up to the escaped code plane.

See comment for why I think handling ':' is ok, but that other illegal
windows filenames won't. Note that, this should be enough to make the
test suite always work. Other windows illegal filenames will fail at
checkout time when it tries to put the illegal filename on the
filesystem.
2020-10-26 15:38:08 -04:00
yarikoptic
2d291bf200 Added a comment 2020-10-26 17:57:12 +00:00
Joey Hess
d9cc73bf9e
Merge branch 'master' of ssh://git-annex.branchable.com 2020-10-26 13:48:00 -04:00
Joey Hess
e85be1f4fe
fix build and add build example 2020-10-26 13:45:38 -04:00
Joey Hess
5e458e8ac6
changelog 2020-10-26 13:43:40 -04:00
Joey Hess
3baef37caf
make windows installer builder include libmagic files when present, but skip otherwise 2020-10-26 13:42:43 -04:00