Subject: [bug#39777] [PATCH V3 04/11] gnu: python-jsonschema: Update to 3.2.0.

From: Tanguy Le Carrour <[email-masked]>
Date: Thu, 12 Mar 2020 09:48:28 +0100

Hi Leo,

Thanks for taking the time to read my patches!

Le 03/11, Leo Famulari a écrit :
> On Mon, Mar 09, 2020 at 09:18:20AM +0100, Tanguy Le Carrour wrote:
> > * gnu/packages/python-xyz.scm (python-jsonschema): Update to 3.2.0.
> > [propagated-inputs]: Add python-importlib-metadata.
> > [arguments]: Disable failing test.
> 
> > +         (add-before 'check 'disable-failing-test
> > +           (lambda _
> > +             (substitute* "jsonschema/tests/test_cli.py"
> > +               (("def test_version") "def _test_version"))
> > +             #t))
> 
> Again, we need a comment explaining what's wrong with the test.

My bad! Sorry!
I started investigating when I submitted the patch, but… well… I haven't
found a fix yet and I'm not sure who to blame!

The test relies on a call to `subprocess.check_output` to run
`python -m jsonschema --version`, but it behaves like `--version` was
never passed to the command?!

```
145     def test_version(self):
146         version = subprocess.check_output(
147             [sys.executable, "-m", "jsonschema", "--version"],
148             stderr=subprocess.STDOUT,
149         )
```

Replacing `check_output` with `check_call` shows the actual error message:

```
usage: __main__.py [-h] [-i INSTANCES] [-F ERROR_FORMAT] [-V VALIDATOR] schema
__main__.py: error: the following arguments are required: schema
```

Doesn't really look like a problem with jsonschema to me, and… I would not dare
blaming python. ^_^'

Any idea welcome!

-- 
Tanguy