UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 74: ordinal not in range(128) due to the xcode license agreement message

RESOLVED FIXED in Firefox 58

Status

enhancement
RESOLVED FIXED
2 years ago
a year ago

People

(Reporter: MattN, Assigned: pjenvey)

Tracking

57 Branch
mozilla58
All
macOS

Firefox Tracking Flags

(firefox57 wontfix, firefox58 fixed)

Details

(URL)

Attachments

(1 attachment)

./mach build                                                                                                                                                             
Error running mach:

    ['build']

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 should consider filing a bug for this issue.

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

The details of the failure are as follows:

UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 74: ordinal not in range(128)

  File "/Users/matthew/repos/inbound/python/mozbuild/mozbuild/mach_commands.py", line 532, in build
    silent=not verbose, keep_going=keep_going)
  File "/Users/matthew/repos/inbound/python/mozbuild/mozbuild/base.py", line 588, in _run_make
    args = self._make_path()
  File "/Users/matthew/repos/inbound/python/mozbuild/mozbuild/base.py", line 705, in _make_path
    result, xcode_lisense_error_tmp = validate_make(make)
  File "/Users/matthew/repos/inbound/python/mozbuild/mozbuild/base.py", line 686, in validate_make
    return False, is_xcode_lisense_error(e.output)
  File "/Users/matthew/repos/inbound/python/mozbuild/mozbuild/base.py", line 676, in is_xcode_lisense_error
    return self._is_osx() and 'Agreeing to the Xcode' in output

====

$ make


Agreeing to the Xcode/iOS license requires admin privileges, please run “sudo xcodebuild -license” and then retry this command.


Character 74 is the curly quote (“) in the above message.

Code: https://dxr.mozilla.org/mozilla-central/rev/ffe6cc09ccf38cca6f0e727837bbc6cb722d1e71/python/mozbuild/mozbuild/base.py#676

(While we're here maybe we can fix the spelling mistake of "lisense" in the function name.)
Workaround is to run `sudo xcodebuild -license` and accept the license.
$ mach python
Python 2.7.13 (default, Jul 18 2017, 09:17:00) 
[GCC 4.2.1 Compatible Apple LLVM 8.1.0 (clang-802.0.42)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> sys.getdefaultencoding()
'ascii'
>>>
(Assignee)

Comment 3

2 years ago
untested but this should do it
Attachment #8911392 - Flags: review?(gps)
Comment on attachment 8911392 [details] [diff] [review]
bug1401718.diff

Review of attachment 8911392 [details] [diff] [review]:
-----------------------------------------------------------------

Looks good! Thanks for tracking this down.
Attachment #8911392 - Flags: review?(gps) → review+

Comment 5

2 years ago
Pushed by gszorc@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/5870f25b4a83
adapt to xcode's new non-ascii license error r=gps
https://hg.mozilla.org/mozilla-central/rev/5870f25b4a83
Status: NEW → RESOLVED
Last Resolved: 2 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla58
Assignee: nobody → pjenvey

Updated

a year ago
Product: Core → Firefox Build System
You need to log in before you can comment on or make changes to this bug.