[webkit-changes] [WebKit/WebKit] caf109: [webkitcorepy] Support multiple autoinstallers run...

Jonathan Bedard noreply at github.com
Mon May 22 07:55:11 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: caf109704d373d1a9ad7ec3bc6caa23c6ab7a0b1
      https://github.com/WebKit/WebKit/commit/caf109704d373d1a9ad7ec3bc6caa23c6ab7a0b1
  Author: Jonathan Bedard <jbedard at apple.com>
  Date:   2023-05-22 (Mon, 22 May 2023)

  Changed paths:
    M Tools/Scripts/libraries/webkitcorepy/setup.py
    M Tools/Scripts/libraries/webkitcorepy/webkitcorepy/__init__.py
    M Tools/Scripts/libraries/webkitcorepy/webkitcorepy/autoinstall.py
    M Tools/Scripts/libraries/webkitcorepy/webkitcorepy/file_lock.py

  Log Message:
  -----------
  [webkitcorepy] Support multiple autoinstallers running in parallel
https://bugs.webkit.org/show_bug.cgi?id=256933
rdar://109488201

Reviewed by Alexey Proskuryakov.

Lay down a lockfile so that only one autoinstaller process can modify an autoinstall
location at a time.

* Tools/Scripts/libraries/webkitcorepy/setup.py: Bump version.
* Tools/Scripts/libraries/webkitcorepy/webkitcorepy/__init__.py: Ditto.
* Tools/Scripts/libraries/webkitcorepy/webkitcorepy/autoinstall.py:
(Package.install): While installing a package, acquire the lock to prevent
other processes from installing packages while this one is.
(AutoInstall): Define manifest.json and lockfile as class members.
* Tools/Scripts/libraries/webkitcorepy/webkitcorepy/file_lock.py:
(FileLock.acquire): Disable patch in Timeout to avoid infinite recursion.

Canonical link: https://commits.webkit.org/264322@main




More information about the webkit-changes mailing list