At Fri, 26 Mar 2021 10:20:46 -0400, Andrew Cagney <andrew.cagney%gmail.com@localhost> wrote: Subject: Re: weird error updating from https://github.com/NetBSD/pkgsrc.git > > I suspect the corrupt binary spewed crud that included the invalid > utf-8 sequence u'\udc8c' on stdout/stderr. The Python script, which > assumed the world only speaks valid utf-8, hoovered the raw output > into a String and then tried to print it as utf-8. > > If you replace the binary with something that spews the above, what happens? > > (Yes, it is technically possible to fix this - Python does has > distinct utf-8 and binary types. However, with everything looking > like a witch^D^D^Dduck tracking this down and fixing it is a pain not > worth enduring). Unfortunately I don't remember which file it was, other than one of the ones in /usr/pkg/libexec/git-core. My scroll-back buffers are big, but not that big! :-) If it's something that's supposed to emit something readable in some sense, and not just some data from a file, then indeed it's not worth fixing, and no doubt has nothing whatsoever to do with the pkgsrc repository itself. Also as you can see git was rebasing, but that's both silly (for my use case) and will almost never complete for large updates in pkgsrc due to the zillions of files. (This particular clone was some 14,000 commits out of date -- rebasing that much would take years! or at least many hours on fast hardware -- rebasing isn't meant for moving mountains, or as in this case every grain of sand on the surface of the beach) I'm not sure if that was a mistake in my ~/.gitconfig that I've since fixed, or if it was something that changed in git. Either way I've fixed it since and now it fast-forwards, which means it's also not exercising the same code paths in git when doing "git up". > > > $ cd g-NetBSD-pkgsrc > > > /work/woods/g-NetBSD-pkgsrc > > > $ git up > > > Fetching origin > > > OLDtrunk rebasing > > > Failed to rebase origin/trunk onto OLDtrunk > > > > > > Here's what git said: > > > > > > Traceback (most recent call last): > > > File "/usr/pkg/bin/git-up", line 11, in <module> > > > sys.exit(run()) > > > File "/usr/pkg/lib/python2.7/site-packages/click/core.py", line 829, in __call__ > > > return self.main(*args, **kwargs) > > > File "/usr/pkg/lib/python2.7/site-packages/click/core.py", line 782, in main > > > rv = self.invoke(ctx) > > > File "/usr/pkg/lib/python2.7/site-packages/click/core.py", line 1066, in invoke > > > return ctx.invoke(self.callback, **ctx.params) > > > File "/usr/pkg/lib/python2.7/site-packages/click/core.py", line 610, in invoke > > > return callback(*args, **kwargs) > > > File "/usr/pkg/lib/python2.7/site-packages/PyGitUp/gitup.py", line 656, in run > > > gitup.run() > > > File "/usr/pkg/lib/python2.7/site-packages/PyGitUp/gitup.py", line 208, in run > > > self.print_error(error) > > > File "/usr/pkg/lib/python2.7/site-packages/PyGitUp/gitup.py", line 594, in print_error > > > print(error.stderr, file=self.stderr) > > > File "/usr/pkg/lib/python2.7/site-packages/colorama/ansitowin32.py", line 41, in write > > > self.__convertor.write(text) > > > File "/usr/pkg/lib/python2.7/site-packages/colorama/ansitowin32.py", line 164, in write > > > self.wrapped.write(text) > > > UnicodeEncodeError: 'ascii' codec can't encode character u'\udc8c' in position 55: ordinal not in range(128) -- Greg A. Woods <gwoods%acm.org@localhost> Kelowna, BC +1 250 762-7675 RoboHack <woods%robohack.ca@localhost> Planix, Inc. <woods%planix.com@localhost> Avoncote Farms <woods%avoncote.ca@localhost>
Attachment:
pgp4hYhfWsC7x.pgp
Description: OpenPGP Digital Signature