Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[webkitcorepy] Packaging requires pyparsing #18232

Conversation

JonWBedard
Copy link
Member

@JonWBedard JonWBedard commented Sep 26, 2023

@JonWBedard JonWBedard self-assigned this Sep 26, 2023
@JonWBedard JonWBedard added the Tools / Tests Tools in the Tools directory, build issues, test infrastructure, and bugs in test cases label Sep 26, 2023
Copy link
Contributor

@gsnedders gsnedders left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

one nit but otherwise non-reviewer r+

@@ -277,10 +277,11 @@ def install(self):
return

# Make sure that setuptools, tomli, setuptools_scm, wheel and packaging are installed, since setup.py relies on them
if self.name not in ['wheel', 'packaging', 'setuptools', 'tomli', 'setuptools_scm']:
if self.name not in ['setuptools', 'wheel', 'pyparsing', 'packaging', 'tomli', 'setuptools_scm']:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This makes the comment above incorrect.

@webkit-ews-buildbot webkit-ews-buildbot added the merging-blocked Applied to prevent a change from being merged label Sep 26, 2023
@JonWBedard JonWBedard removed the merging-blocked Applied to prevent a change from being merged label Sep 27, 2023
@JonWBedard JonWBedard force-pushed the eng/webkitcorepy-Packaging-requires-pyparsing branch from 43354a5 to 16e4e7a Compare September 27, 2023 00:29
@@ -433,6 +429,11 @@ class AutoInstall(object):
DISABLE_ENV_VAR = 'DISABLE_WEBKITCOREPY_AUTOINSTALLER'
CA_CERT_PATH_ENV_VAR = 'AUTOINSTALL_CA_CERT_PATH'

# This list of libraries is required to install other libraries, and must be installed first
BASE_LIBRARIES = ['setuptools', 'wheel', 'pyparsing', 'packaging', 'setuptools_scm']
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Install order is changing from wheel, packaging, setuptools to setuptools, wheel, packaging. Is that intentional?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That is intentional. wheel needs setuptools, packaging needs pyparsing

Comment on lines 433 to 435
BASE_LIBRARIES = ['setuptools', 'wheel', 'pyparsing', 'packaging', 'setuptools_scm']
if sys.version_info >= (3, 0):
BASE_LIBRARIES.insert(-1, 'tomli')
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Since (IIUC) tomli is needed to install setuptools_scm, I think it's clearer and less error-prone to say:

Suggested change
BASE_LIBRARIES = ['setuptools', 'wheel', 'pyparsing', 'packaging', 'setuptools_scm']
if sys.version_info >= (3, 0):
BASE_LIBRARIES.insert(-1, 'tomli')
BASE_LIBRARIES = ['setuptools', 'wheel', 'pyparsing', 'packaging']
if sys.version_info >= (3, 0):
BASE_LIBRARIES += ['tomli', 'setuptools_scm']
else:
BASE_LIBRARIES += ['setuptools_scm']

(And you could of course collapse this into one or two statements as desired)

@JonWBedard JonWBedard force-pushed the eng/webkitcorepy-Packaging-requires-pyparsing branch from 16e4e7a to 7858c2e Compare September 27, 2023 18:04
@JonWBedard JonWBedard added skip-ews Applied to prevent a change from being run on EWS unsafe-merge-queue Applied to send a pull request to merge-queue, but skip building and testing labels Sep 27, 2023
https://bugs.webkit.org/show_bug.cgi?id=262124
rdar://116062896

Reviewed by Elliott Williams.

* 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): Install pyparsing before packaging.

Canonical link: https://commits.webkit.org/268523@main
@webkit-commit-queue webkit-commit-queue force-pushed the eng/webkitcorepy-Packaging-requires-pyparsing branch from 7858c2e to 5bae443 Compare September 27, 2023 18:08
@webkit-commit-queue
Copy link
Collaborator

Committed 268523@main (5bae443): https://commits.webkit.org/268523@main

Reviewed commits have been landed. Closing PR #18232 and removing active labels.

@webkit-commit-queue webkit-commit-queue merged commit 5bae443 into WebKit:main Sep 27, 2023
@webkit-commit-queue webkit-commit-queue removed the unsafe-merge-queue Applied to send a pull request to merge-queue, but skip building and testing label Sep 27, 2023
@JonWBedard
Copy link
Member Author

Ugh, wrong version of this change landed. A moment, let me re-land correctly....

@JonWBedard
Copy link
Member Author

Landed correctly in #18311

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
skip-ews Applied to prevent a change from being run on EWS Tools / Tests Tools in the Tools directory, build issues, test infrastructure, and bugs in test cases
Projects
None yet
6 participants