From: Jonathan Nieder <jrnieder@gmail.com>
To: Sverre Rabbelier <srabbelier@gmail.com>
Cc: Junio C Hamano <gitster@pobox.com>, Jeff King <peff@peff.net>,
Git List <git@vger.kernel.org>,
Daniel Barkalow <barkalow@iabervon.org>,
Ramkumar Ramachandra <artagnon@gmail.com>,
Brandon Casey <drafnel@gmail.com>
Subject: Re: [PATCH v2 10/20] git-remote-testgit: fix error handling
Date: Sun, 19 Jun 2011 17:58:10 -0500 [thread overview]
Message-ID: <20110619225810.GG23893@elie> (raw)
In-Reply-To: <1308496725-22329-11-git-send-email-srabbelier@gmail.com>
Hi,
Sverre Rabbelier wrote:
> If fast-export did not complete successfully the error handling code
> itself would error out.
That sounds like a problem indeed. What error message does it produce?
> This was broken in commit 23b093ee0 (Brandon Casey, Wed Jun 9 2010,
> Remove python 2.5'isms). Revert that commit an introduce our own copy
> of check_call in util.py instead.
The "an" should probably be "and". More importantly, it's probably
worth mentioning that this is only a partial revert or rephrasing some
other way.
Have you checked if this still works with python 2.4? Cc-ing Brandon
in case he has advice.
[...]
> +++ b/git_remote_helpers/git/exporter.py
[...]
> @@ -53,6 +55,4 @@ class GitExporter(object):
>
> args = ["sed", "s_refs/heads/_" + self.repo.prefix + "_g"]
>
> - child = subprocess.Popen(args, stdin=p1.stdout)
> - if child.wait() != 0:
> - raise CalledProcessError
> + check_call(args, stdin=p1.stdout)
[...]
> +++ b/git_remote_helpers/util.py
> @@ -128,6 +128,38 @@ def run_command (args, cwd = None, shell = False, add_env = None,
> return (exit_code, output, errors)
>
>
> +# from python2.7:subprocess.py
> +def call(*popenargs, **kwargs):
[...]
> + return subprocess.Popen(*popenargs, **kwargs).wait()
> +
> +
> +# from python2.7:subprocess.py
> +def check_call(*popenargs, **kwargs):
[...]
> + retcode = call(*popenargs, **kwargs)
> + if retcode:
> + cmd = kwargs.get("args")
> + if cmd is None:
> + cmd = popenargs[0]
> + raise subprocess.CalledProcessError(retcode, cmd)
> + return 0
So IIUC the existing code is not providing arguments to the
CalledProcessError constructor, and your patch fixes that. Good.
Based on <http://pydoc.org/2.4.1/subprocess.html>, Python 2.4 doesn't
seem to have a CalledProcessError type. Maybe these code paths
weren't being exercised before.
Regards,
Jonathan
next prev parent reply other threads:[~2011-06-19 22:58 UTC|newest]
Thread overview: 44+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-06-19 15:18 [PATCH v2 v2 00/20] remote-helper improvements Sverre Rabbelier
2011-06-19 15:18 ` [PATCH v2 01/20] transport-helper: fix minor leak in push_refs_with_export Sverre Rabbelier
2011-06-19 15:18 ` [PATCH v2 02/20] t5800: factor out some ref tests Sverre Rabbelier
2011-06-19 15:18 ` [PATCH v2 03/20] t5800: use skip_all instead of prereq Sverre Rabbelier
2011-06-19 15:18 ` [PATCH v2 04/20] t5800: document some non-functional parts of remote helpers Sverre Rabbelier
2011-06-19 22:02 ` Jonathan Nieder
2011-07-04 11:19 ` Sverre Rabbelier
2011-06-19 15:18 ` [PATCH v2 05/20] teach remote-testgit to import non-HEAD refs Sverre Rabbelier
2011-06-19 15:18 ` [PATCH v2 06/20] transport-helper: don't feed bogus refs to export push Sverre Rabbelier
2011-06-19 15:18 ` [PATCH v2 07/20] git_remote_helpers: push all refs during a non-local export Sverre Rabbelier
2011-06-19 15:18 ` [PATCH v2 08/20] remote-curl: accept empty line as terminator Sverre Rabbelier
2011-06-19 22:42 ` Jonathan Nieder
2011-07-04 14:11 ` Sverre Rabbelier
2011-06-20 2:35 ` Dmitry Ivankov
2011-06-20 7:55 ` Jonathan Nieder
2011-06-20 19:41 ` Junio C Hamano
2011-06-19 15:18 ` [PATCH v2 09/20] git-remote-testgit: only push for non-local repositories Sverre Rabbelier
2011-06-19 15:18 ` [PATCH v2 10/20] git-remote-testgit: fix error handling Sverre Rabbelier
2011-06-19 22:58 ` Jonathan Nieder [this message]
2011-06-20 17:50 ` Brandon Casey
2011-06-20 18:02 ` Sverre Rabbelier
2011-06-19 15:18 ` [PATCH v2 11/20] fast-import: introduce 'done' command Sverre Rabbelier
2011-06-19 15:18 ` [PATCH v2 12/20] fast-export: support done feature Sverre Rabbelier
2011-06-19 15:18 ` [PATCH v2 13/20] transport-helper: factor out push_update_refs_status Sverre Rabbelier
2011-06-19 15:18 ` [PATCH v2 14/20] transport-helper: check status code of finish_command Sverre Rabbelier
2011-06-19 15:18 ` [PATCH v2 15/20] transport-helper: use the new done feature where possible Sverre Rabbelier
2011-06-20 11:45 ` Jonathan Nieder
2011-06-20 19:51 ` Junio C Hamano
2011-07-04 13:37 ` Sverre Rabbelier
2011-06-19 15:18 ` [PATCH v2 16/20] transport-helper: update ref status after push with export Sverre Rabbelier
2011-06-19 23:25 ` Jonathan Nieder
2011-06-21 20:05 ` Junio C Hamano
2011-06-21 20:11 ` Sverre Rabbelier
2011-06-19 15:18 ` [PATCH v2 17/20] transport-helper: change import semantics Sverre Rabbelier
2011-06-19 23:38 ` Jonathan Nieder
2011-07-04 11:20 ` Sverre Rabbelier
2011-07-04 21:58 ` Jonathan Nieder
2011-07-04 22:23 ` Sverre Rabbelier
2011-07-04 22:37 ` Jonathan Nieder
2011-06-19 15:18 ` [PATCH v2 18/20] transport-helper: export is no longer always the last command Sverre Rabbelier
2011-06-19 15:18 ` [PATCH v2 19/20] transport-helper: Use capname for gitdir capability too Sverre Rabbelier
2011-06-19 15:18 ` [PATCH v2 20/20] transport-helper: implement marks location as capability Sverre Rabbelier
2011-06-20 1:29 ` Jonathan Nieder
2011-07-04 13:43 ` Sverre Rabbelier
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
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20110619225810.GG23893@elie \
--to=jrnieder@gmail.com \
--cc=artagnon@gmail.com \
--cc=barkalow@iabervon.org \
--cc=drafnel@gmail.com \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=peff@peff.net \
--cc=srabbelier@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.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.