Closed Bug 1670784 Opened 4 years ago Closed 4 years ago

`mach vendor python` is broken

Categories

(Firefox Build System :: General, defect)

defect

Tracking

(firefox-esr78 fixed, firefox81 unaffected, firefox82 unaffected, firefox83 fixed)

RESOLVED FIXED
83 Branch
Tracking Status
firefox-esr78 --- fixed
firefox81 --- unaffected
firefox82 --- unaffected
firefox83 --- fixed

People

(Reporter: rstewart, Assigned: rstewart)

References

(Regression)

Details

(Keywords: regression)

Attachments

(1 file)

The version of pip-tools that we're using is broken -- I think it's due to the virtualenv upgrade.

Traceback (most recent call last):
  File "/home/ricky/src/mozilla-unified/obj-x86_64-pc-linux-gnu/_virtualenvs/init_py3/bin/pip-compile", line 8, in <module>
    sys.exit(cli())
  File "/home/ricky/src/mozilla-unified/third_party/python/Click/click/core.py", line 764, in __call__
    return self.main(*args, **kwargs)
  File "/home/ricky/src/mozilla-unified/third_party/python/Click/click/core.py", line 717, in main
    rv = self.invoke(ctx)
  File "/home/ricky/src/mozilla-unified/third_party/python/Click/click/core.py", line 956, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/home/ricky/src/mozilla-unified/third_party/python/Click/click/core.py", line 555, in invoke
    return callback(*args, **kwargs)
  File "/home/ricky/src/mozilla-unified/third_party/python/Click/click/decorators.py", line 17, in new_func
    return f(get_current_context(), *args, **kwargs)
  File "/home/ricky/src/mozilla-unified/obj-x86_64-pc-linux-gnu/_virtualenvs/init_py3/lib/python3.8/site-packages/piptools/scripts/compile.py", line 304, in cli
    for ireq in filter(is_pinned_requirement, ireqs):
  File "/home/ricky/src/mozilla-unified/obj-x86_64-pc-linux-gnu/_virtualenvs/init_py3/lib/python3.8/site-packages/piptools/utils.py", line 122, in is_pinned_requirement
    if ireq.editable:
AttributeError: 'ParsedRequirement' object has no attribute 'editable'
Error running mach:

    ['vendor', 'python']

The error occurred in code that was called by the mach command. This is either
a bug in the called code itself or in the way that mach is calling it.
You can invoke |./mach busted| to check if this issue is already on file. If it
isn't, please use |./mach busted file vendor| to report it. If |./mach busted| is
misbehaving, you can also inspect the dependencies of bug 1543241.

If filing a bug, please include the full output of mach, including this error
message.

The details of the failure are as follows:

subprocess.CalledProcessError: Command '['/home/ricky/src/mozilla-unified/obj-x86_64-pc-linux-gnu/_virtualenvs/init_py3/bin/pip-compile', 'requirements-mach-vendor-python.in', '--no-header', '--no-index', '--output-file', '/home/ricky/src/mozilla-unified/third_party/python/requirements.txt', '--generate-hashes']' returned non-zero exit status 1.

  File "/home/ricky/src/mozilla-unified/python/mozbuild/mozbuild/vendor/mach_commands.py", line 180, in vendor_python
    vendor_command.vendor(**kwargs)
  File "/home/ricky/src/mozilla-unified/python/mozbuild/mozbuild/vendor/vendor_python.py", line 48, in vendor
    subprocess.check_output(
  File "/usr/lib/python3.8/subprocess.py", line 411, in check_output
    return run(*popenargs, stdout=PIPE, timeout=timeout, check=True,
  File "/usr/lib/python3.8/subprocess.py", line 512, in run
    raise CalledProcessError(retcode, process.args,

The previous version of pip-tools was incompatible with our vendored virtualenv.

Regressed by: 1654457
Has Regression Range: --- → yes

Set release status flags based on info from the regressing bug 1654457

Pushed by rstewart@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/b58458c92ef6 Upgrade vendored `pip-tools` r=firefox-build-system-reviewers,glandium
Status: NEW → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → 83 Branch

Comment on attachment 9181097 [details]
Bug 1670784 - Upgrade vendored pip-tools

ESR Uplift Approval Request

  • If this is not a sec:{high,crit} bug, please state case for ESR consideration: Fixes mach vendor python.
    Note that I doubt mach vendor python is used on ESR.
  • User impact if declined: None
  • Fix Landed on Version: 83
  • Risk to taking this patch: Low
  • Why is the change risky/not risky? (and alternatives if risky): It's a build-only patch
  • String or UUID changes made by this patch:
Attachment #9181097 - Flags: approval-mozilla-esr78?
Attachment #9181097 - Flags: approval-mozilla-esr78? → approval-mozilla-esr78+
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: