From: Johannes Schindelin <Johannes.Schindelin@gmx.de>
To: Johannes Sixt <j6t@kdbg.org>
Cc: Elijah Newren <newren@gmail.com>,
Junio C Hamano <gitster@pobox.com>,
Git Mailing List <git@vger.kernel.org>
Subject: Re: en/fast-export-encoding, was Re: What's cooking in git.git (May 2019, #01; Thu, 9)
Date: Fri, 10 May 2019 15:54:07 +0200 (CEST) [thread overview]
Message-ID: <nycvar.QRO.7.76.6.1905101551110.44@tvgsbejvaqbjf.bet> (raw)
In-Reply-To: <f8eb246f-a936-e9df-4bb4-068b86a62baf@kdbg.org>
Hi Hannes & Elijah,
On Fri, 10 May 2019, Johannes Sixt wrote:
> Am 10.05.19 um 02:14 schrieb Elijah Newren:
> > Hi Johannes,
> >
> > On Thu, May 9, 2019 at 1:46 PM Johannes Schindelin
> > <Johannes.Schindelin@gmx.de> wrote:
> >>
> >> Hi Junio & Elijah,
> >>
> >> On Thu, 9 May 2019, Junio C Hamano wrote:
> >>
> >>> * en/fast-export-encoding (2019-05-07) 5 commits
> >>> - fast-export: do automatic reencoding of commit messages only if requested
> >>> - fast-export: differentiate between explicitly utf-8 and implicitly utf-8
> >>> - fast-export: avoid stripping encoding header if we cannot reencode
> >>> - fast-import: support 'encoding' commit header
> >>> - t9350: fix encoding test to actually test reencoding
> >>>
> >>> The "git fast-export/import" pair has been taught to handle commits
> >>> with log messages in encoding other than UTF-8 better.
> >>
> >> This breaks on Windows, see
> >> https://dev.azure.com/gitgitgadget/git/_build/results?buildId=8298&view=ms.vss-test-web.build-test-results-tab
> >>
> >> Sadly, I ran out of time looking at it in detail.
> >
> > Thanks for the heads up, and for taking some time to check it out.
> > The error doesn't seem obvious from the log. Does Azure Pipelines
> > have anything like CircleCI's "Debug with SSH" feature[1]? (Where one
> > can click a "Rerun job with SSH", and it'll restart the pipeline but
> > also print out an ssh command someone can use to directly access the
> > box on which the test is running, in order to be able to investigate.)
> > Failing that, assuming I can find a Windows system somewhere, is
> > there a list of steps for setting up a development environment and
> > building git on Windows?
>
> I'll just tell you why things go wrong here:
>
> In these cases, a byte that is intended to be an ISO8859-something
> characters is passed via the command line. This cannot work as intended
> on Windows, because the command line is not just a stream of bytes, but
> a string of characters. On Windows (and presumably also on macOS), the
> command line bytes are interpreted as UTF-8. As such, the bytes undergo
> some encoding conversions between UTF-8 and UTF-16LE. That cannot work
> when the bytes are not correct UTF-8 characters.
>
> To make the tests pass you have to pass the ISO8859-something characters
> via a file.
Thanks for the explanation. Yes, we cannot rely on command-lines (or for
that matter, environment variables) being opaque byte sequences, as that
does not work on Windows: byte sequences *always* have an encoding, and
are pretty much always converted into UTF-16 before continuing.
As to Debug with SSH: this is not possible in Azure Pipelines. What I
frequently do is to edit azure-pipelines.yml (usually restricting to one
particular job, e.g. Windows build, and to one particular test script) and
ci/ and t/ heavily, to get tons of debug information, then open a PR on
GitGitGadget to start a build.
That's how I investigated the macOS Mojave breakages, for example.
Ciao,
Dscho
next prev parent reply other threads:[~2019-05-10 13:54 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-05-08 17:23 What's cooking in git.git (May 2019, #01; Thu, 9) Junio C Hamano
2019-05-08 17:48 ` Denton Liu
2019-05-08 18:02 ` Elijah Newren
2019-05-09 13:24 ` Phillip Wood
2019-05-10 13:49 ` Johannes Schindelin
2019-05-13 13:29 ` Phillip Wood
2019-05-09 13:44 ` Duy Nguyen
2019-05-09 20:45 ` en/fast-export-encoding, was " Johannes Schindelin
2019-05-10 0:14 ` Elijah Newren
2019-05-10 6:21 ` Johannes Sixt
2019-05-10 13:54 ` Johannes Schindelin [this message]
2019-05-09 20:54 ` nd/merge-quit, " Johannes Schindelin
2019-05-10 9:42 ` Duy Nguyen
2019-05-13 14:02 ` Johannes Schindelin
2019-05-13 14:06 ` Johannes Schindelin
2019-05-13 14:20 ` Eric Sunshine
2019-05-13 14:53 ` Johannes Schindelin
2019-05-13 18:32 ` [PATCH] tests: add a special setup where prerequisites fail Ævar Arnfjörð Bjarmason
2019-05-14 8:53 ` Johannes Schindelin
2019-05-14 9:41 ` Ævar Arnfjörð Bjarmason
2019-05-14 12:37 ` Johannes Schindelin
2019-05-14 13:39 ` Ævar Arnfjörð Bjarmason
2019-05-14 14:04 ` Johannes Schindelin
2019-06-20 20:42 ` [PATCH] tests: mark two failing tests under FAIL_PREREQS Ævar Arnfjörð Bjarmason
2019-06-21 18:04 ` Johannes Schindelin
2019-06-21 18:26 ` Ævar Arnfjörð Bjarmason
2019-06-21 20:08 ` Junio C Hamano
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: http://vger.kernel.org/majordomo-info.html
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=nycvar.QRO.7.76.6.1905101551110.44@tvgsbejvaqbjf.bet \
--to=johannes.schindelin@gmx.de \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=j6t@kdbg.org \
--cc=newren@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://80x24.org/mirrors/git.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).