CI to automate build of cargo lockfiles on different Alpine releases for git-annex aports https://gitlab.alpinelinux.org/alpine/aports/-/tree/master/community/git-annex
Find a file
Joey Hess df35f70801
tweak stall detection scaling
Refactored to allow offline experimentation, and ended up changing the
allowedvariation (aka fudge factor) to 3. 10 seems too high, and 1.5 too low.

Scale earlier, so even if the first chunk takes less than the configured
time period, allowance is made that later chunks might transfer slower.
Decided to use the same allowedvariation to decide when to start
scaling.

Smoothed the scaling out.

Some examples:

ghci> upscale (BwRate 10 (Duration 60)) 25
BwRate 13 (Duration {durationSeconds = 75})
-- A small scaling upwards after 1/3rd the time. Not noticable.
ghci> upscale (BwRate 10 (Duration 60)) 60
BwRate 30 (Duration {durationSeconds = 180})
-- At the configured time, 3x scaling.
ghci> upscale (BwRate 10 (Duration 60)) 120
BwRate 60 (Duration {durationSeconds = 360})
-- A typical upscaling, here a 1 minute duration became 6 minutes
-- due to the first chunk taking 2 minutes to transfer.
ghci> upscale (BwRate 10 (Duration 60)) 600
BwRate 300 (Duration {durationSeconds = 1800})
-- Here the first chunk took 10 minutes to transfer, so it will
-- take 30 minutes to detect a stall.

Sponsored-by: Dartmouth College's DANDI project
2024-01-19 12:58:41 -04:00
Annex tweak stall detection scaling 2024-01-19 12:58:41 -04:00
Assistant assistant: When generating a gpg secret key, avoid hardcoding the key algorithm and size 2024-01-09 15:31:53 -04:00
Backend filter out control characters in all other Messages 2023-04-11 12:58:01 -04:00
Build use unshorted hash in version 2023-09-20 09:31:59 -04:00
CmdLine log migration trees to git-annex branch 2023-12-06 15:40:03 -04:00
Command import: --message/-m option 2024-01-18 12:41:44 -04:00
Config use status --ignore-submodules in configureSmudgeFilter 2022-12-20 16:02:42 -04:00
Database avoid build warnings 2023-12-26 19:39:01 -04:00
debian Removed the vendored git-lfs and the GitLfs build flag 2023-08-28 13:12:31 -04:00
doc tweak stall detection scaling 2024-01-19 12:58:41 -04:00
Git optimise adjustTree when adding many TreeItems (take 2) 2024-01-16 11:53:57 -04:00
Limit initial implementation of --explain 2023-07-25 16:52:57 -04:00
Logs importtree: support preferred content expressions needing keys 2023-12-18 16:27:59 -04:00
Messages factor out maybeAddJSONField 2023-05-08 16:15:41 -04:00
P2P disk free checking for unsized keys 2024-01-16 14:29:10 -04:00
Remote automatically adjust stall detection period 2024-01-18 17:12:10 -04:00
RemoteDaemon remove unused import 2023-08-28 12:35:57 -04:00
standalone enable parallel ghc for building git-annex 2023-09-26 13:46:44 -04:00
static Revert "remove newlines from static js and css" 2014-06-13 02:20:39 -04:00
templates assistant: When generating a gpg secret key, avoid hardcoding the key algorithm and size 2024-01-09 15:31:53 -04:00
Test display summary after concurrent output is complete 2023-10-26 14:19:41 -04:00
Types support annex.shared-sop-command for encryption=shared 2024-01-12 13:31:18 -04:00
Upgrade filter out control characters in all other Messages 2023-04-11 12:58:01 -04:00
Utility support annex.shared-sop-command for encryption=shared 2024-01-12 13:31:18 -04:00
.appveyor.yml windows back to lts-18.13 temporarily 2023-08-02 12:49:38 -04:00
.codespellrc keyspell ignore tmp directory 2023-03-17 15:21:31 -04:00
.ghci turn of PackageImports in cabal file 2022-02-25 13:16:36 -04:00
.gitattributes update changelog location 2016-08-22 23:54:11 -04:00
.gitignore ignore git-annex-build-deps files from dpkg-genbuilddeps 2023-01-29 11:29:51 -04:00
.mailmap alias for Yaroslav @ yahoo to mailmap 2015-09-09 12:38:59 -04:00
Annex.hs initial implementation of --explain 2023-07-25 16:52:57 -04:00
Assistant.hs assistant: Fix a crash on startup by avoiding using forkProcess 2021-05-12 15:08:03 -04:00
Author.hs improve attribution armoring 2023-11-21 11:34:21 -04:00
Backend.hs filter out control characters in warning messages 2023-04-10 15:55:44 -04:00
bash-completion.bash bash completion fix 2018-11-12 13:23:05 -04:00
Benchmark.hs --size-limit exit 101 2021-06-04 16:43:47 -04:00
BuildFlags.hs Support being built with crypton rather than cryptonite 2023-09-21 12:43:42 -04:00
BuildInfo.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
CHANGELOG automatically adjust stall detection period 2024-01-18 17:12:10 -04:00
CmdLine.hs Adapt code to optparse-applicative 0.18.1 and later. 2023-06-21 11:51:04 -04:00
Command.hs uninit: Support --json and --json-error-messages 2023-05-11 13:43:02 -04:00
Common.hs Windows: Support long filenames in more (possibly all) of the code 2023-03-01 15:55:58 -04:00
Config.hs added an optional cost= configuration to all special remotes 2023-01-12 13:42:28 -04:00
COPYRIGHT bump copyright year 2024-01-02 14:10:52 -04:00
Creds.hs simplify base64 to only use ByteString 2023-10-26 13:10:05 -04:00
Crypto.hs support annex.shared-sop-command for encryption=shared 2024-01-12 13:31:18 -04:00
git-annex.cabal Stateless OpenPGP interface 2024-01-10 15:59:35 -04:00
git-annex.hs sanitize control characters in main thread fatal exceptions 2023-04-12 14:21:53 -04:00
git-union-merge.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Git.hs filter out control characters in error messages 2023-04-10 13:50:51 -04:00
Key.hs convert Key to ShortByteString 2021-10-05 20:20:08 -04:00
Limit.hs Fix behavior of onlyingroup 2023-08-07 13:05:11 -04:00
Logs.hs log migration trees to git-annex branch 2023-12-06 15:40:03 -04:00
Makefile remove vim dev hack 2023-10-20 12:50:31 -04:00
Messages.hs Windows: Consistently avoid ending output lines with CR 2023-10-30 14:43:43 -04:00
NEWS prep release 2023-06-26 10:41:36 -04:00
README improve description 2022-01-06 12:24:27 -04:00
Remote.hs fix --from overriding annex-ignore 2023-11-30 15:12:07 -04:00
Setup.hs Setup.hs: Stop installing man pages, desktop files, and the git-annex-shell and git-remote-tor-annex symlinks 2023-08-01 15:08:56 -04:00
stack-lts-18.13.yaml enable parallel ghc for building git-annex 2023-09-26 13:46:44 -04:00
stack.yaml update to lts-22.3 2023-12-26 12:56:59 -04:00
Test.hs fix windows build 2024-01-18 11:54:59 -04:00
Types.hs plumb VerifyConfig into retrieveKeyFile 2021-08-17 12:43:13 -04:00
Upgrade.hs don't say a supported version is unsupported 2023-10-09 14:26:24 -04:00

git-annex allows managing large files with git, without storing the file
contents in git. It can sync, backup, and archive your data, offline
and online. Checksums and encryption keep your data safe and secure. Bring
the power and distributed nature of git to bear on your large files with
git-annex.

For documentation, see doc/ or <https://git-annex.branchable.com/>