Closed
Bug 1298567
Opened 8 years ago
Closed 8 years ago
Pushing fails if i18n is enabled
Categories
(Developer Services :: Mercurial: hg.mozilla.org, defect)
Developer Services
Mercurial: hg.mozilla.org
Tracking
(Not tracked)
RESOLVED
FIXED
People
(Reporter: akihiko.odaki, Unassigned)
Details
Attachments
(1 file)
User Agent: Mozilla/5.0 (X11; Linux x86_64; rv:48.0) Gecko/20100101 Firefox/48.0 Build ID: 20160823070410 Steps to reproduce: Run `hg push' with mercurial i18n enabled Actual results: Pushing fails emitting the following log: ** 非同梱のエクステンション reviewboard に起因する例外が発生しました。 ** 当該エクステンションのサポート対象 Mercurial の版: 3.6 ** エクステンション reviewboard を無効化してから、再度同じ処理を実行してください。 ** 問題が改善された場合、 障害の発生を https://bugzilla.mozilla.org/enter_bug.cgi?product=MozReview&component=Integration%3A%20Mercurial に報告してください。 ** Python 2.7.12 (default, Jun 28 2016, 08:31:05) [GCC 6.1.1 20160602] Mercurial - 分散構成管理ツール (バージョン 3.9) ** Extensions loaded: strip, mq, color, pager, histedit, rebase, blackbox, firefoxtree, reviewboard, push-to-try Traceback (most recent call last): File "/usr/bin/hg", line 45, in <module> mercurial.dispatch.run() File "/usr/lib/python2.7/site-packages/mercurial/dispatch.py", line 59, in run sys.exit((dispatch(request(sys.argv[1:])) or 0) & 255) File "/usr/lib/python2.7/site-packages/mercurial/dispatch.py", line 125, in dispatch ret = _runcatch(req) File "/usr/lib/python2.7/site-packages/mercurial/dispatch.py", line 204, in _runcatch return _dispatch(req) File "/usr/lib/python2.7/site-packages/mercurial/dispatch.py", line 880, in _dispatch cmdpats, cmdoptions) File "/usr/lib/python2.7/site-packages/mercurial/dispatch.py", line 637, in runcommand ret = _runcommand(ui, options, cmd, d) File "/usr/lib/python2.7/site-packages/mercurial/extensions.py", line 210, in closure return func(*(args + a), **kw) File "/usr/lib/python2.7/site-packages/hgext/pager.py", line 160, in pagecmd return orig(ui, options, cmd, cmdfunc) File "/usr/lib/python2.7/site-packages/mercurial/extensions.py", line 210, in closure return func(*(args + a), **kw) File "/usr/lib/python2.7/site-packages/hgext/color.py", line 503, in colorcmd return orig(ui_, opts, cmd, cmdfunc) File "/usr/lib/python2.7/site-packages/mercurial/dispatch.py", line 1010, in _runcommand return checkargs() File "/usr/lib/python2.7/site-packages/mercurial/dispatch.py", line 971, in checkargs return cmdfunc() File "/usr/lib/python2.7/site-packages/mercurial/dispatch.py", line 877, in <lambda> d = lambda: util.checksignature(func)(ui, *args, **cmdoptions) File "/usr/lib/python2.7/site-packages/mercurial/util.py", line 1036, in check return func(*args, **kwargs) File "/usr/lib/python2.7/site-packages/mercurial/extensions.py", line 210, in closure return func(*(args + a), **kw) File "/usr/lib/python2.7/site-packages/mercurial/util.py", line 1036, in check return func(*args, **kwargs) File "/home/root3/.mozbuild/version-control-tools/hgext/reviewboard/client.py", line 177, in pushcommand return orig(ui, repo, *args, **kwargs) File "/usr/lib/python2.7/site-packages/mercurial/util.py", line 1036, in check return func(*args, **kwargs) File "/usr/lib/python2.7/site-packages/mercurial/extensions.py", line 210, in closure return func(*(args + a), **kw) File "/usr/lib/python2.7/site-packages/mercurial/util.py", line 1036, in check return func(*args, **kwargs) File "/home/root3/.mozbuild/version-control-tools/hgext/firefoxtree/__init__.py", line 487, in pushcommand return orig(ui, repo, dest=dest, **opts) File "/usr/lib/python2.7/site-packages/mercurial/util.py", line 1036, in check return func(*args, **kwargs) File "/usr/lib/python2.7/site-packages/mercurial/extensions.py", line 210, in closure return func(*(args + a), **kw) File "/usr/lib/python2.7/site-packages/mercurial/util.py", line 1036, in check return func(*args, **kwargs) File "/usr/lib/python2.7/site-packages/hgext/mq.py", line 3539, in mqcommand return orig(ui, repo, *args, **kwargs) File "/usr/lib/python2.7/site-packages/mercurial/util.py", line 1036, in check return func(*args, **kwargs) File "/usr/lib/python2.7/site-packages/mercurial/commands.py", line 5972, in push opargs=opts.get('opargs')) File "/usr/lib/python2.7/site-packages/mercurial/extensions.py", line 210, in closure return func(*(args + a), **kw) File "/home/root3/.mozbuild/version-control-tools/hgext/reviewboard/client.py", line 254, in wrappedpush newbranch=False, **kwargs) File "/home/root3/.mozbuild/version-control-tools/hgext/reviewboard/client.py", line 301, in wrappedpush **kwargs) File "/usr/lib/python2.7/site-packages/mercurial/extensions.py", line 210, in closure return func(*(args + a), **kw) File "/home/root3/.mozbuild/version-control-tools/hgext/firefoxtree/__init__.py", line 290, in push **kwargs) File "/usr/lib/python2.7/site-packages/mercurial/exchange.py", line 455, in push pushop.trmanager.close() File "/usr/lib/python2.7/site-packages/mercurial/exchange.py", line 1135, in close self._tr.close() File "/usr/lib/python2.7/site-packages/mercurial/transaction.py", line 43, in _active return func(self, *args, **kwds) File "/usr/lib/python2.7/site-packages/mercurial/transaction.py", line 490, in close self._postclosecallback[cat](self) File "/home/root3/.mozbuild/version-control-tools/hgext/reviewboard/client.py", line 470, in ontrclose doreview(pushop.repo, pushop.ui, pushop.remote, pushop.reviewnodes) File "/home/root3/.mozbuild/version-control-tools/hgext/reviewboard/client.py", line 667, in doreview publishreviewrequests(ui, remote, bzauth, [newparentid]) File "/home/root3/.mozbuild/version-control-tools/hgext/reviewboard/client.py", line 684, in publishreviewrequests ui.status(_('(published review request %s)\n') % item['rrid']) File "/usr/lib/python2.7/site-packages/mercurial/ui.py", line 969, in status self.write(*msg, **opts) File "/home/root3/.mozbuild/version-control-tools/hgext/reviewboard/client.py", line 285, in write if not filterwrite(args): File "/home/root3/.mozbuild/version-control-tools/hgext/reviewboard/client.py", line 267, in filterwrite if messages[0].startswith('%sREVIEWBOARD' % _('remote: ')): UnicodeDecodeError: 'ascii' codec can't decode byte 0xe9 in position 0: ordinal not in range(128) Expected results: Pushing succeeds.
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Reporter | ||
Comment 29•8 years ago
|
||
Sorry for messing. I identified the issue and made a review request. Bug 1298567 - Encode UI outputs. r=gps | Review Request | Review Board https://reviewboard.mozilla.org/r/74696/
Comment 30•8 years ago
|
||
mozreview-review |
Comment on attachment 8785525 [details] Bug 1298567 - Encode UI outputs. https://reviewboard.mozilla.org/r/74696/#review72902 This is the correct place to fix the problem. Aside from a potential UnicodeEncodeError, this is good. ::: hgext/reviewboard/client.py:690 (Diff revision 28) > + item['rrid'].encode(encoding.encoding)) > elif 'error' in item: > errored = True > ui.warn(_('error publishing review request %s: %s\n') % > - (item['rrid'], item['error'])) > + (item['rrid'].encode(encoding.encoding), > + item['error'].encode(encoding.encoding))) The error string originates on the server and will be decoded from UTF-8. There is a slight chance it may consist of code points that don't encode in the current encoding. So, this should be: .encode(encoding.encoding, 'replace')
Attachment #8785525 -
Flags: review?(gps)
Comment hidden (mozreview-request) |
Comment 32•8 years ago
|
||
mozreview-review |
Comment on attachment 8785525 [details] Bug 1298567 - Encode UI outputs. https://reviewboard.mozilla.org/r/74696/#review73048 I'll land this for you.
Attachment #8785525 -
Flags: review?(gps) → review+
Comment 33•8 years ago
|
||
Pushed by gszorc@mozilla.com: https://hg.mozilla.org/hgcustom/version-control-tools/rev/4e3776c0e713 Encode UI outputs. r=gps
Status: UNCONFIRMED → RESOLVED
Closed: 8 years ago
Resolution: --- → FIXED
You need to log in
before you can comment on or make changes to this bug.
Description
•