[PATCH 0/3] Maintenance IV: Platform-specific background maintenance
- From
Derrick Stolee via GitGitGadget <gitgitgadget@gmail.com>
- Date
- Nov 3, 2020, 14:03 UTC
- Message-ID
- <pull.776.git.1604412196.gitgitgadget@gmail.com>
This is based on ds/maintenance-part-3.
After sitting with the background maintenance as it has been cooking, I wanted to come back around and implement the background maintenance for Windows. However, I noticed that there were some things bothering me with background maintenance on my macOS machine. These are detailed in PATCH 2, but the tl;dr is that 'cron' is not recommended by Apple and instead 'launchd' satisfies our needs.
This series implements the background scheduling so git maintenance (start|stop) works on those platforms. I've been operating with these schedules for a while now without the problems described in the patches.
There is a particularly annoying case about console windows popping up on Windows, but PATCH 3 describes a plan to get around that.
Thanks, -Stolee
Derrick Stolee (3): maintenance: extract platform-specific scheduling maintenance: use launchctl on macOS maintenance: use Windows scheduled tasks
builtin/gc.c | 428 +++++++++++++++++++++++++++++++++++++++-- t/t7900-maintenance.sh | 86 ++++++++- t/test-lib.sh | 4 + 3 files changed, 498 insertions(+), 20 deletions(-)
base-commit: 0016b618182f642771dc589cf0090289f9fe1b4f Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-776%2Fderrickstolee%2Fmaintenance%2FmacOS-v1 Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-776/derrickstolee/maintenance/macOS-v1 Pull-Request: https://github.com/gitgitgadget/git/pull/776
-- gitgitgadget