Closed Bug 1623765 Opened 4 months ago Closed 4 months ago

mach watch throws UnicodeDecodeError

Categories

(Firefox Build System :: Mach Core, defect)

x86_64
Linux
defect
Not set
normal

Tracking

(firefox76 fixed)

RESOLVED FIXED
mozilla76
Tracking Status
firefox76 --- fixed

People

(Reporter: mythmon, Assigned: rstewart)

References

(Blocks 1 open bug)

Details

Attachments

(1 file)

When I run ./mach watch, I get the following error. Note that U+2026 is a horizontal ellipsis.

$ ./mach watch
[watch 2020-03-19T21:18:55.496015Z] Connecting to watchman
[watch 2020-03-19T21:18:55.496050Z] Checking watchman capabilities
[watch 2020-03-19T21:18:55.505282Z] Subscribing to /home/mythmon/src/mozilla-unified
[watch 2020-03-19T21:18:55.505738Z] Watching /home/mythmon/src/mozilla-unified
Error running mach:

    ['watch']

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| 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:

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

  File "/home/mythmon/src/mozilla-unified/python/mozbuild/mozbuild/mach_commands.py", line 97, in watch
    return daemon.watch()
  File "/home/mythmon/src/mozilla-unified/python/mozbuild/mozbuild/faster_daemon.py", line 281, in watch
    for change in self.output_changes(verbose=verbose):
  File "/home/mythmon/src/mozilla-unified/python/mozbuild/mozbuild/faster_daemon.py", line 250, in output_changes
    for change in self.input_changes(verbose=verbose):
  File "/home/mythmon/src/mozilla-unified/python/mozbuild/mozbuild/faster_daemon.py", line 199, in input_changes
    input_to_outputs = self.file_copier.input_to_outputs_tree()
  File "/home/mythmon/src/mozilla-unified/python/mozbuild/mozpack/copier.py", line 175, in input_to_outputs_tree
    for input in file.inputs():
  File "/home/mythmon/src/mozilla-unified/python/mozbuild/mozpack/files.py", line 560, in inputs
    pp.processFile(input=input, output=output)
  File "/home/mythmon/src/mozilla-unified/python/mozbuild/mozbuild/preprocessor.py", line 432, in processFile
    self.do_include(input, False)
  File "/home/mythmon/src/mozilla-unified/python/mozbuild/mozbuild/preprocessor.py", line 841, in do_include
    self.handleLine(l)
  File "/home/mythmon/src/mozilla-unified/python/mozbuild/mozbuild/preprocessor.py", line 601, in handleLine
    self.write(aLine)
  File "/home/mythmon/src/mozilla-unified/python/mozbuild/mozbuild/preprocessor.py", line 483, in write
    self.out.write(filteredLine.encode('utf8'))

Bugbug thinks this bug should belong to this component, but please revert this change in case of error.

Component: General → Mach Core

Not sure what's going on with the ASCII thing, and isolating and fixing the issue while maintaining Python 2 source compatibility seems more trouble than it's worth, so I'll just try to upgrade it to Python 3 straight away.

I tried, though I'm not entirely sure if I succeeded, to run this under both Python 2 and Python 3. Both produced the same error.

Assignee: nobody → rstewart
Pushed by rstewart@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/30a5f67b4db4
`mach watch` supports Python 3 r=dmajor
Status: NEW → RESOLVED
Closed: 4 months ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla76
You need to log in before you can comment on or make changes to this bug.