Hi Paul

Ok mystery solved :). Once I have this fixed, what should I do? Push
the new tarball with the same version (1.0.1-1) or should I bump
something in the version? I'd expect that perhaps that -1 should
become a -2? If so, what's the correct way of doing this?

Cheers,
Gabriele

On Wed, 3 Jun 2020 at 16:36, Paul Gevers <elb...@debian.org> wrote:
>
> Hi Gabriele,
>
> On 02-06-2020 23:37, Gabriele wrote:
> > Many thanks for your reply. I have had a look at the logs linked on this 
> > page
> >
> > https://ci.debian.net/packages/a/austin/testing/amd64/
> >
> > The only version that passes is v1.0.0 and by looking at the logs of
> > v0.7.0 and v1.0.1, which fail, it's a miracle that v1.0.0 even passes.
> > Indeed v0.7.0 and v1.0.1 fail for the very same reason: the binary
> > used for the tests, src/austin, is simply not there. Why it is there
> > for the v1.0.0 I don't know, so it looks like the problem is with
> > v1.0.0 paradoxically.
>
> It's funny, the first tries of 1.0.0 also failed. And I believe they
> they only starting passing when python3.7 was not the default Python3
> anymore.
>
> > This is the diff inside the debian/ folder between v1.0.0 and v1.0.1
> > (TLDR: only debian/austin.1, debian/changelog and debian/copyright
> > have changed)
>
> Instead, I diffed the source and this struck my eye:
>
> diff -Nru austin-1.0.0/test/test_fork.bats austin-1.0.1/test/test_fork.bats
> --- austin-1.0.0/test/test_fork.bats    2019-10-19 10:37:23.000000000 +0000
> +++ austin-1.0.1/test/test_fork.bats    2020-02-21 19:27:02.000000000 +0000
> @@ -56,6 +56,12 @@
>    then
>      skip "Test failed but marked as 'Ignore'"
>    else
> +    echo
> +    echo "Collected Output"
> +    echo "================"
> +    echo
> +    echo "$output"
> +    echo
>      false
>    fi
>  }
> @@ -109,6 +115,6 @@
>    invoke_austin "3.7"
>  }
>
> -# @test "Test Austin with Python 3.8" {
> -#   invoke_austin "3.8"
> -# }
> +@test "Test Austin with Python 3.8" {
> +  invoke_austin "3.8"
> +}
>
> So, with 1.0.0 your tests were passing because all tests were skipped,
> and only with 1.0.1 your tests started testing the code again and failed
> because the required binary couldn't be found.
>
>
> > Hence, to the best of my knowledge, there are no changes in the
> > debian/ area that would cause the binary in src/ to be there unless it
> > accidentally ended up, say, in the source tarball.
>
> I think I've showed an alternative explanation.
>
> > My next question to you is then: where is the binary supposed to be
> > found during autopkgtest? Can I assume it will be on the PATH during
> > testing, so that I can invoke it simply with "austin"? Or do I need to
> > specify a precise path?
>
> The testbed is a clean Debian installation, created with debbootstrap
> and only your test dependencies installed. Everything is in it's regular
> location, so if austin is on the regular path for users, it on the
> regular path for the debci user in the testbed. Not specifying the
> precise path makes sure your testing that it's on the path for your
> users too, so better without path.
>
> Paul
>


-- 
"Egli è scritto in lingua matematica, e i caratteri son triangoli,
cerchi, ed altre figure
geometriche, senza i quali mezzi è impossibile a intenderne umanamente parola;
senza questi è un aggirarsi vanamente per un oscuro laberinto."

-- G. Galilei, Il saggiatore.

Reply via email to