Bug 223587 - Move AutoInstall registration to requirements.txt files
Summary: Move AutoInstall registration to requirements.txt files
Status: NEW
Alias: None
Product: WebKit
Classification: Unclassified
Component: Tools / Tests (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Sam Sneddon [:gsnedders]
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2021-03-22 11:05 PDT by Sam Sneddon [:gsnedders]
Modified: 2021-05-25 12:34 PDT (History)
5 users (show)

See Also:


Attachments
Patch (6.98 KB, patch)
2021-05-20 07:08 PDT, Sam Sneddon [:gsnedders]
gsnedders: review-
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Sam Sneddon [:gsnedders] 2021-03-22 11:05:17 PDT
For example, instead of having a lot of AutoInstall.register calls in https://github.com/WebKit/WebKit/blob/main/Tools/Scripts/webkitpy/__init__.py, we'd have a AutoInstall.register_requirements(join(basename(__file__), "requirements.txt")) and all the requirements listed in the requirements.txt

Once we're on GitHub, this will allow us to use tools such as dependabot to keep our requirements up-to-date, which will hopefully help us maintain support for the latest Python releases.
Comment 1 Radar WebKit Bug Importer 2021-03-29 11:06:13 PDT
<rdar://problem/75962600>
Comment 2 Sam Sneddon [:gsnedders] 2021-04-06 02:18:39 PDT
pip-tools (https://github.com/jazzband/pip-tools) and pipfile (https://github.com/pypa/pipfile) could be helpful with regards to maintaining knowledge of what we actually depend on versus their dependencies, however both are really intended to be used in environment specific ways (both per platform and per Python version), which doesn't really suit us needing to know ahead of time all possible dependencies.
Comment 3 Jonathan Bedard 2021-04-06 08:32:19 PDT
Since we won't be removing the current single-library-in-Python-code support, we could just keep our special cases in Python. I hope that as we drop Python 2 support, we will have less special cases to worry about.
Comment 4 Sam Sneddon [:gsnedders] 2021-05-20 07:08:43 PDT
Created attachment 429167 [details]
Patch

This is what I get from playing around with pip-tools, but this by no means suffices as it loses Python 2/3 variation and per-platform variation. That said, it does do some to split out our direct dependencies.