Mike McQuaid e3a1a9dccf
Improve locking UX
My experience recently playing around with our locking behaviour is
that, while mostly seamless and not seen by users, it's leaks
implementation details a bit too heavily.

As a result, the following improvements are in this commit:
- Ensure that, whenever possible, we tell the user the actual command
  that is holding a given lock instead of the lock name (an internal
  implementation detail)
- Make the locking error output a little more consistent and user
  friendly
- Add a `DownloadLock` class to simplify locking downloads
- Add a `HOMEBREW_LOCK_CONTEXT` variable to allow adding additional
  context for logging error messages
- Lock paths and leave deciding how this translates to lock names up
  to the locking code itself
- Lock the Cellar/Caskroom paths explicitly rather than implicitly

Co-authored-by: Carlo Cabrera <30379873+carlocab@users.noreply.github.com>
2024-07-30 17:51:02 +01:00
..
2024-04-01 15:53:56 -07:00
2024-04-01 15:56:06 -07:00
2024-04-01 15:56:06 -07:00
2024-04-01 15:58:07 -07:00
2024-05-01 11:35:21 +02:00
2024-07-15 14:48:36 -04:00
2024-07-15 14:48:36 -04:00
2024-07-05 08:20:28 +01:00
2024-04-21 17:56:59 -04:00
2024-06-30 23:05:29 -04:00
2024-07-15 14:48:36 -04:00
2024-06-02 15:15:24 +01:00
2024-04-01 09:15:58 -07:00
2024-04-01 09:15:58 -07:00
2024-07-05 08:20:28 +01:00
2024-07-10 23:41:18 -07:00
2024-04-01 09:44:14 -07:00
2024-04-01 09:59:47 -07:00
2024-04-01 10:05:02 -07:00
2024-06-30 23:05:29 -04:00
2024-07-15 14:48:36 -04:00
2024-07-15 14:48:36 -04:00
2024-07-14 08:49:39 -04:00
2024-07-14 23:20:50 -04:00
2024-04-01 11:47:18 -07:00
2024-04-01 11:48:40 -07:00
2024-07-15 17:48:47 -04:00
2024-07-15 14:48:37 -04:00
2024-04-01 12:01:37 -07:00
2024-07-30 17:51:02 +01:00