• Sponsorship request: python-ping3

    From Carles Pina i Estany@21:1/5 to All on Mon Oct 16 20:27:33 2023
    Hi,

    I ITP simplemonitor (#1016113), so I started with one of its
    dependencies (actually is a "soft" dependency, optional but better to
    have) (two more to come).

    So, I RFS for ping3:
    https://mentors.debian.net/package/python-ping3/ https://mentors.debian.net/debian/pool/main/p/python-ping3/python-ping3_4.0.4-1.dsc

    Also in:
    https://salsa.debian.org/python-team/packages/python-ping3

    This is my first package for Debian. Reviewing only, or reviewing + sponsorship, are very appreciated. I'd like to get this one as right as possible to do the next Python3 packages as good as possible.

    If it suits anyone better: I'm cpina on freenode (#debian-python for
    example).

    Thank you very much for any advise!

    --
    Carles Pina i Estany
    https://carles.pina.cat

    -----BEGIN PGP SIGNATURE-----

    iQIzBAABCgAdFiEEth6/Zob9uGYomaJ+qAKIT2ClX4EFAmUtjqUACgkQqAKIT2Cl X4FHkxAAlyJlpBR+Nm+PBJ2fLD3IP2GvCpJPVrkgU1JCzD1T/O0x0Bu+4tmG4NI4 OYnqzFepVXGbmOeIZlzCOjD0bKqnXCiW0gbgU/kvDTO4wzlpW0a9lwxEE+n8jzPZ CzKQk7cN10CsCDSPEveLMRo5VNea9U7KvxkHm0rbPJ6UklBYCmKSxoUMlUK4c3wE khTFGTjEcy9f+vvcUlKAyoS6M3PN/cXtdsSABqRkDnvTNRWGAjEwmDYgXCAUcqOw 51pTutDpBwSYyrWgKGPMa9Lgo1NqrbJ5jWetvLfatZ71KIEYvry9NKOp/YAV4cfi KDe8Xn6K/Mig0+/nbjy6dBQCfM058rqfeCQZQwGpsDypG6sX19ZZ2R/YI/XGRWT2 nT/z5TJYPwRdn4st3gFLQ/dsIps180ccUSpdHIx4/97FEfKZpjvIQUB/LFffjQcV vjofjzCvcNWb8+uiIxxTKeHpBRwr55X2hpObhwFp3LNvHAJ+GDexrX3pQazN/5iS B06Fz2tEBrrEY5D6inX6P9t4fv3ti43ph3D7dmZ/Tg4ZvJgjQaHD9nGecwkwDWBp j5G1WfFeAu/Fg5p8DgWn165cs1LHvp5aOBbz6eLHo7GrFNUsIpFagRQ23oHslEnW 5/1zrRMK+ma8rZl0oK76cKp65heduszlYEHfMVeluEqs5aG91gI=
    =weOj
    -----END PGP SIGNATURE-----

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Pierre-Elliott =?utf-8?Q?B=C3=A9cue@21:1/5 to Carles Pina i Estany on Tue Oct 17 23:10:01 2023
    Hi,

    Carles Pina i Estany <carles@pina.cat> wrote on 16/10/2023 at 21:27:33+0200:

    [[PGP Signed Part:No public key for A802884F60A55F81 created at 2023-10-16T21:27:33+0200 using RSA]]

    Hi,

    I ITP simplemonitor (#1016113), so I started with one of its
    dependencies (actually is a "soft" dependency, optional but better to
    have) (two more to come).

    So, I RFS for ping3:
    https://mentors.debian.net/package/python-ping3/ https://mentors.debian.net/debian/pool/main/p/python-ping3/python-ping3_4.0.4-1.dsc

    Also in:
    https://salsa.debian.org/python-team/packages/python-ping3

    This is my first package for Debian. Reviewing only, or reviewing + sponsorship, are very appreciated. I'd like to get this one as right as possible to do the next Python3 packages as good as possible.

    If it suits anyone better: I'm cpina on freenode (#debian-python for example).

    Thank you very much for any advise!

    LGTM. Just for DEP-14, you should have the main branch named
    debian/unstable and not debian/master.

    I pushed a debian/unstable branch and modified gbp.conf.

    1. Regarding packaging, lintian is happy and the files look good to
    me. You can install devscripts and use wrap-and-sort to make some
    things a bit more readable (IMHO). (have a look at devscripts in
    general, it's resourceful)

    2. Regarding testing, this package is a bit a mess. First you probably
    realized that you can't run tests at buildtime because a raw socket
    requires root privilege. I see you designed custom autopkgtest to
    still have some proper testing. That being said, the Testsuite:
    field is not useful as by default pybuild uses unittest which
    doesn't work on this package.

    I was hoping to provide you with a way to run upstream tests anyway
    which is possible (add python3-pytest as a build dep, disable tests
    in d/rules, and then configure autopkgtest-pkg-pybuild to use root
    privilege) but upstream made tests that actually require dns
    resolution (you won't have any) for the value in /etc/hostname which
    won't work on a buildd. We'd require to force change the value in
    this file and it'd make it a bit tedious.

    From there you have two options: the first one is to drop the
    Testsuite: field and keep the two tests you designed and call it a
    day, or you drop it and write a third test stanza in
    debian/tests/control with a shell script you'd also have to write
    that moves the tests to the tmp dir autopkgtest creates, puts
    localhost in /etc/hosts and then run tests. In that case you need to
    add pytest to the dependencies of this test stanza.

    Your call.

    Tell me when you're fine with your work and I'll upload.

    Cheers!

    --
    PEB

    --=-=-Content-Type: application/pgp-signature; name="signature.asc"

    -----BEGIN PGP SIGNATURE-----

    iQJDBAEBCgAtFiEE5CQeth7uIW7ehIz87iFbn7jEWwsFAmUu9w4PHHBlYkBkZWJp YW4ub3JnAAoJEO4hW5+4xFsL8Q0P/R6WeVlL/pyJ9xj+9tckKJEWDECcFHDclG3t gG+j9rq9/xehGrwjWPCBf33s0NtpnXJD/E87V0uYcLCHq00qwRVbWPrcrRzmdYQ6 xgD1INBXF2zRWCLE7wbh+W0fyXBlFF7mVGnjTzlwXQDrnde6MNn09Me1ZELENzgE 753YWaSrOlkSR37IZHJC5AYglb5F6zblwzSUcSlbji/6rNN51KpwoNqNsX7UPqWw kDx0qjhJfjnr35v6wHLAeQln0wT0m+OklWaGPFjLfRwQ8HV8aHduwgQg5/hZ6n1P AT0M0s3epGpUbeM21pgExuyKU3gb4tueATkRGSG46KUraibHon+txRqNbCmiv5fD 7Bub5oGZQNqBULiL7GkiSlfj8N2hhOfKz+Ub3Kk6aTicJmOIblQthAHuysNfMx0P UxJbgTOrFZ2BHsndtTBrtgS1KHJCYsx9OGaFtP2iCBp2XHD6YyvTJvk/6PryLj3w Ps4Wn+2zCSWR4R2Q+M13IQiQI6G+0/0C277n977YDLA/szdUml02T4L9gzXVxVoA joL6ZY2MSbiafFfxY2H/GXwg4Bc06gtTQbtrKaBwgXvwCi0d4W8UeA6pScom8N5V iUXH5TrimcD5oh+aUxVCY8rA4YJX/AuVB4XpWMhL2Dvo0VQw/hW05OaoTpJSXLVn
    vyKcK7nr
    =pFgP
    -----END PGP SIGNATURE-----

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Carles Pina i Estany@21:1/5 to Pierre-Elliott =?utf-8?B?QsOpY3Vl?= on Tue Oct 17 22:42:27 2023
    Copy: debian-python@lists.debian.org

    Hi,

    On 17 Oct 2023 at 22:13:05, Pierre-Elliott Bécue wrote:
    Hi,

    Carles Pina i Estany <carles@pina.cat> wrote on 16/10/2023 at 21:27:33+0200:

    [[PGP Signed Part:No public key for A802884F60A55F81 created at 2023-10-16T21:27:33+0200 using RSA]]

    Hi,

    I ITP simplemonitor (#1016113), so I started with one of its
    dependencies (actually is a "soft" dependency, optional but better to
    have) (two more to come).

    So, I RFS for ping3:
    https://mentors.debian.net/package/python-ping3/ https://mentors.debian.net/debian/pool/main/p/python-ping3/python-ping3_4.0.4-1.dsc

    Also in:
    https://salsa.debian.org/python-team/packages/python-ping3

    This is my first package for Debian. Reviewing only, or reviewing + sponsorship, are very appreciated. I'd like to get this one as right as possible to do the next Python3 packages as good as possible.

    If it suits anyone better: I'm cpina on freenode (#debian-python for example).

    Thank you very much for any advise!

    LGTM. Just for DEP-14, you should have the main branch named
    debian/unstable and not debian/master.

    Oops! I actually followed https://salsa.debian.org/python-team/tools/python-modules/blob/master/policy.rst#branch-names
    in the section "Branch names" and mentions "debian/master". Perhaps that
    should be updated?

    Anyway, thanks for changing it!

    I pushed a debian/unstable branch and modified gbp.conf.

    1. Regarding packaging, lintian is happy and the files look good to
    me. You can install devscripts and use wrap-and-sort to make some
    things a bit more readable (IMHO). (have a look at devscripts in
    general, it's resourceful)

    Thanks for showing wrap-and-sort! Note taken and I will look at other interesting things in devscripts.

    2. Regarding testing, this package is a bit a mess. First you probably
    realized that you can't run tests at buildtime because a raw socket
    requires root privilege. I see you designed custom autopkgtest to

    yep...

    [...]

    From there you have two options: the first one is to drop the
    Testsuite: field and keep the two tests you designed and call it a
    day, or you drop it and write a third test stanza in
    debian/tests/control with a shell script you'd also have to write
    that moves the tests to the tmp dir autopkgtest creates, puts
    localhost in /etc/hosts and then run tests. In that case you need
    to add pytest to the dependencies of this test stanza.

    Sounds doable no problem, I'll try it this evening and see how it goes.

    Tell me when you're fine with your work and I'll upload.

    thanks very much for the information, will let you know something.

    --
    Carles Pina i Estany
    https://carles.pina.cat

    -----BEGIN PGP SIGNATURE-----

    iQIzBAABCgAdFiEEth6/Zob9uGYomaJ+qAKIT2ClX4EFAmUu/8MACgkQqAKIT2Cl X4GlPxAAwAs6D7f0KnwFN7eW9pCP4xZHfp5zrclDH1cUJfC4LBj+ACKMEmpUW03g T0728C96LYUC8E5mEkoET/4zLJ59oxK2QkUWZwnWbwHTrda1fo3HCma5772k6NLW Wow3XUbxa+A0NMySyyNtavfvU58LYHAKqqiet5dEROMWKOKHlbO2VYveVMx7TbB0 UAcERg9L/cvV9qhAl42K0+C2+02e5OKG2sJDgaPsAIE9bODSmYQh6Qf09iJ93yW6 oq1LgEjUuBL4oqoS/gRAt9pcQL/WsqHvoohBolozt1ptMFkSuJ0p67sirdiZDl2/ D01WUi3PsvkBLGcQAw0FyU+7mqiXvvjD/tmSxXFYL/AxFsoy9FXJZsdW64gUvnWm cbp7SaskdKm+m0Rfc1W+Hjgqq7fZ5psYDdVw+FtcVgtniGIYaahNJd5AlxISuvvt 3JN6hlHaO7wPH7DF95GpHgObwRlVFPESrNTttqThTAMC5zrM1ZfApCvDtITi7cWN AXM431r4BGJ0RcYtZWgXZj5lES+y5BWR5rHo/0X3N0P0yj+8AllWB64Aq42Sxm42 yMY60bLK7ee7YqBPUN15aCD/dilqvZnjR6n0FTppAyHMrlT64U43rWMKOPg7kFk3 kDMy3+sYlmta0faiJDaF1WMf7oDq+7gENZR56RhpGfhs0tt8JC8=
    =21wc
    -----END PGP SIGNATURE-----

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Pierre-Elliott =?utf-8?Q?B=C3=A9cue@21:1/5 to Carles Pina i Estany on Wed Oct 18 00:20:01 2023
    Carles Pina i Estany <carles@pina.cat> wrote on 17/10/2023 at 23:42:27+0200:

    [[PGP Signed Part:No public key for A802884F60A55F81 created at 2023-10-17T23:42:27+0200 using RSA]]

    Hi,

    On 17 Oct 2023 at 22:13:05, Pierre-Elliott Bécue wrote:
    Hi,

    Carles Pina i Estany <carles@pina.cat> wrote on 16/10/2023 at 21:27:33+0200: >>
    [[PGP Signed Part:No public key for A802884F60A55F81 created at 2023-10-16T21:27:33+0200 using RSA]]

    Hi,

    I ITP simplemonitor (#1016113), so I started with one of its
    dependencies (actually is a "soft" dependency, optional but better to
    have) (two more to come).

    So, I RFS for ping3:
    https://mentors.debian.net/package/python-ping3/
    https://mentors.debian.net/debian/pool/main/p/python-ping3/python-ping3_4.0.4-1.dsc

    Also in:
    https://salsa.debian.org/python-team/packages/python-ping3

    This is my first package for Debian. Reviewing only, or reviewing +
    sponsorship, are very appreciated. I'd like to get this one as right as
    possible to do the next Python3 packages as good as possible.

    If it suits anyone better: I'm cpina on freenode (#debian-python for
    example).

    Thank you very much for any advise!

    LGTM. Just for DEP-14, you should have the main branch named
    debian/unstable and not debian/master.

    Oops! I actually followed https://salsa.debian.org/python-team/tools/python-modules/blob/master/policy.rst#branch-names
    in the section "Branch names" and mentions "debian/master". Perhaps that should be updated?

    Anyway, thanks for changing it!

    I could be wrong, but ISTR that the branch name was debian/master for a
    long time in the policy (dates back to 2016 at least?)

    I'm not sure that DEP-14 was providing a recommendation for sid branches
    at that time.

    Anyway, I think that indeed we should offer in the policy a choice
    between debian/unstable, debian/latest or debian/master although I'd not recommend the latest, because it makes less sense logically, so I'd
    deprecate it.

    I pushed a debian/unstable branch and modified gbp.conf.

    1. Regarding packaging, lintian is happy and the files look good to
    me. You can install devscripts and use wrap-and-sort to make some
    things a bit more readable (IMHO). (have a look at devscripts in
    general, it's resourceful)

    Thanks for showing wrap-and-sort! Note taken and I will look at other interesting things in devscripts.

    2. Regarding testing, this package is a bit a mess. First you probably
    realized that you can't run tests at buildtime because a raw socket
    requires root privilege. I see you designed custom autopkgtest to

    yep...

    [...]

    From there you have two options: the first one is to drop the
    Testsuite: field and keep the two tests you designed and call it a
    day, or you drop it and write a third test stanza in
    debian/tests/control with a shell script you'd also have to write
    that moves the tests to the tmp dir autopkgtest creates, puts
    localhost in /etc/hosts and then run tests. In that case you need
    to add pytest to the dependencies of this test stanza.

    Sounds doable no problem, I'll try it this evening and see how it goes.

    Tell me when you're fine with your work and I'll upload.

    thanks very much for the information, will let you know something.

    You're very welcome!

    --
    PEB

    --=-=-Content-Type: application/pgp-signature; name="signature.asc"

    -----BEGIN PGP SIGNATURE-----

    iQJDBAEBCgAtFiEE5CQeth7uIW7ehIz87iFbn7jEWwsFAmUvBocPHHBlYkBkZWJp YW4ub3JnAAoJEO4hW5+4xFsLi3QP/0IKLHWi/cCsMjUZdOP1eC1sXMXQDGSUzX7/ k/RMfjyoLRcQL/iIgjR6S9UawrmIh+0UuIWxK9iICILCGMqnis6JBS9KPaG4UrrI PdOPVYuhNyHI/EcyZGg1VL65eUmzZhxvvK8GLVIs78uy5a+rk6g3AIcYxvBfFuK/ RXqfwvjwpfDcim2LNe+H7bPdEaW2rMOGWqOocCfTT+sgoeNTlLbI3KEvswAOA523 r52iHHcvw5NHUOjI4AMMUF0zypCq+eOBcHNbuQBJskZ2U/bNrNomQxm2oRfw1p18 nPkU3fH5FYZcnIyYP7HN1N3LfK2XiJfkeSEnW7FAilnEiwZutr0+HpW2pu3J/36F 3II17xzbfGyW9nmRR82RaETc5TNqf2FoMlAwqObOJ38FpTR7YAWdyuXlvnG2cumj fP7X7RLAQgNccXzrL/XylXDTJKcs10V4Yh4btC5QAgH4KH0WiLFtYxPPyGG0wHtE 0PJPDuVvInZUu9vNmH9gH/ua2KpU07/ANSLV/XBy2VdqeWcQcGaJZ8lo0jHoqBgV cBO+w1Ymaj4ygYxKyk2GVTMsNq1VexPhUFuITYPpPJ5xm1AVJS0OqebSm7UzMQb9 DXl8bBIsNGa0ZKWFlNLu/1Dh60gvRpGBwRtki1k9o9xiVFXyA783ajLw10KbTXAK
    5x198Cmc
    =ER6b
    -----END PGP SIGNATURE-----

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Carles Pina i Estany@21:1/5 to Pierre-Elliott =?utf-8?B?QsOpY3Vl?= on Wed Oct 18 00:46:48 2023
    Copy: debian-python@lists.debian.org

    Hi,

    On 18 Oct 2023 at 00:08:43, Pierre-Elliott Bécue wrote:
    Carles Pina i Estany <carles@pina.cat> wrote on 17/10/2023 at 23:42:27+0200:

    On 17 Oct 2023 at 22:13:05, Pierre-Elliott Bécue wrote:
    Hi,

    Carles Pina i Estany <carles@pina.cat> wrote on 16/10/2023 at 21:27:33+0200:


    LGTM. Just for DEP-14, you should have the main branch named
    debian/unstable and not debian/master.

    Oops! I actually followed https://salsa.debian.org/python-team/tools/python-modules/blob/master/policy.rst#branch-names
    in the section "Branch names" and mentions "debian/master". Perhaps that should be updated?

    Anyway, thanks for changing it!

    I could be wrong, but ISTR that the branch name was debian/master for a
    long time in the policy (dates back to 2016 at least?)

    I'm not sure that DEP-14 was providing a recommendation for sid branches
    at that time.

    Anyway, I think that indeed we should offer in the policy a choice
    between debian/unstable, debian/latest or debian/master although I'd not

    I actually really prefer debian/unstable to debian/master, so I'm happy
    how it is now in the ping3 package :-)


    --
    Carles Pina i Estany
    https://carles.pina.cat

    -----BEGIN PGP SIGNATURE-----

    iQIzBAABCgAdFiEEth6/Zob9uGYomaJ+qAKIT2ClX4EFAmUvHOgACgkQqAKIT2Cl X4FWMQ//QX/+OV0bTwBezL3OLXp3EFrX+D2LwrsonuEuUk8il8C8/yj86R8KEv3d x46uf21BEEU2xbD78qV2kCdc9mfR4eoqTwfY5oflZMf32IhILiEVMPr5cNLrZrzq xJT/MJ+F+eYKfM2Qq9RneZsB1rS5zaFx1XuGVZxdWgSReYAciHnX5oGjrvY5Z6iU cItAv3Sa0Mz6NxMLSc4lWR0shE8/1Zw31SDHjrgGR+3o3V3NeOm6pB8BFpxtFDYC maR63yNCMP1en9IhgKQvpPjGEC2jEFdomtoF4TttPRhNTDaG8fG18Ue55r4bw9xx Bxz+Q+xy8npEeg0Bac6T/LHsAQ7IiJ+VJr4kvPWjN1iGIY2NGsL4GYl4/t5Tvgz2 NKSMaYbWUzWbMztNfkVTFChOL7RDBrPCekfXOZ9ubSTi/R3v5nY4wZid41JQFQxZ Z/wAIrSmkDK5VWkKARWnAW3eg4JTFNPDKcTL/Fd5iJ+8LzXP0JauoNnaX8PN6/TH HMrNs1mdQeigVxGOQDdJiBstHwcW9CkQQFkIeP00UAuSEHNX9oqYoGTjOgP6/B53 78FoL02XxNmWwdd+xZ9xW0houkoa0wuIcE4lSF8gsbchSWexI+cDX3AM5A5GyNqh Nt3qSwSu3OJ5v4w13FNphgaIRK+bgJLGBausMxVoxTIVlAJHFTM=
    =4UxW
    -----END PGP SIGNATURE-----

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Carles Pina i Estany@21:1/5 to Pierre-Elliott =?utf-8?B?QsOpY3Vl?= on Wed Oct 18 00:56:46 2023
    Copy: debian-python@lists.debian.org

    Hi,

    On 17 Oct 2023 at 22:42:27, Carles Pina i Estany wrote:

    [...]

    2. Regarding testing, this package is a bit a mess. First you probably
    realized that you can't run tests at buildtime because a raw socket
    requires root privilege. I see you designed custom autopkgtest to

    yep...

    [...]

    From there you have two options: the first one is to drop the
    Testsuite: field and keep the two tests you designed and call it a
    day, or you drop it and write a third test stanza in
    debian/tests/control with a shell script you'd also have to write
    that moves the tests to the tmp dir autopkgtest creates, puts
    localhost in /etc/hosts and then run tests. In that case you need
    to add pytest to the dependencies of this test stanza.

    Sounds doable no problem, I'll try it this evening and see how it goes.

    From doable to "I'm 99% sure that not possible". I cannot send pings
    from autopkgtest in salsa with any software.

    Side note: I remembered that when using "needs-internet": HTTP GET
    requests (even using hostnames) works. This is my first package for
    Debian, but I've used autopkgtest with needs-internet to run a sphinx "linkcheck" and it was working correctly.

    I've checked that no ICMP replies even using the standard ping binary
    from iputils-ping:
    -----
    Test-Command: set +e ; ping -c 4 8.8.8.8 ; ping -c 4 example.com ; curl -s -I https://en.wikipedia.org ; curl -s -L https://en.wikipedia.org | head -5
    Depends: python3-ping3, iputils-ping, curl
    Restrictions: needs-root, needs-internet
    Features: test-name=test-real-ping
    -----
    That's in: https://salsa.debian.org/carlespina/python-ping3/-/blob/autopkgtest-connectivity/debian/tests/control

    The output: https://salsa.debian.org/carlespina/python-ping3/-/jobs/4822521#L213

    4 packets transmitted, 0 received, 100% packet loss, time 3059ms
    4 packets transmitted, 0 received, 100% packet loss, time 3079ms

    Even more: I think that curl -I (--head) (HTTP HEAD) might not work? but
    curl HTTP GET works. I'm not sure about the curl -I but I don't think it
    is relevant for this discussion. Somewhere, I think, I had read
    something that it implied that autopkgtest needs-internet was using a
    proxy? I cannot find it anyway and ICMP seems that cannot be used.

    So, for now, I've:
    -Used wrap-and-soft (excellent!).
    -Removed "set -e" in one of my Test-Commands: it's the default in
    autopkgtest (I discovered with the "pings..." and then documenation)
    -Fixed a cosmetic line in d/tests/control (s/features/Features)
    -Removed "Testsuite: autopkgtest-pkg-pybuild" from d/control because
    ICMP is not available anyway
    -Ran dch -r to update the date
    -"dput --force mentors python-ping3_4.0.4-1_amd64.changes"

    I've also discovered that there are a few unit tests in upstream that do
    not work. Some have an easy fix, I will do a MR of the fixes that I've
    done for some of them (separately, in GitHub, not tonight).

    Your call.

    Tell me when you're fine with your work and I'll upload.

    To me, it can be uploaded :-)

    Let me know if I need or can do anything else.

    Thank you!

    --
    Carles Pina i Estany
    https://carles.pina.cat

    -----BEGIN PGP SIGNATURE-----

    iQIzBAABCgAdFiEEth6/Zob9uGYomaJ+qAKIT2ClX4EFAmUvHz4ACgkQqAKIT2Cl X4FTSQ//V2fJWDg3eSIE3SoNIbuAz0/NgTPxCpPMXOBxx9mFiisx/88kXOAjulN0 5kgUOzj8GSvc8wV3gfbMbcRgQ0PFWCBzbq01Rx47+w6+djlLibu3H0SBfIs73iYD 5VF23BsOitjyQ0s+rKXcT1A1b3QCEVLWt332FRhswkFwN23Tm1roj4ANEUQoDVkd kmtcP3nG4EajfqF8ItXNvrMTksJhw9dfIeZyYOjbr2eMgK4VnEsZyKvlF4zmrDKd f6rrfUBRs13PH0j7Ir8T1YjPjt+GkaUKZ+p42sYoSYx2JYDHXvdDL2Ctv5kSBmID 25VkRW3M6o/cR8LnIJiDdUb9DLPavsgY2gIsX0Gcdpr1sHzq6rlAq3TyCR2Lq8xl 4s5AvM3huITyJbP2RuhRjUvwTN5lQ27/w5segKizQfhvsRAh291VXo6yBJCtCUiX z6rq0t0KdBo9aJm7RFxUZ4Oi3CdKG8sxIH0EZe84o40CTERfIxKbRiyxiqFSYGIY AV80922P74qfzkdTL5cBLrZR5o8M5YaoJz/lIoF7vYkb1M6PKQ2vZ6KNClKMhwAA GWynA7XQ6+vAnlg8ESFc+MyuwyJbIiEMRxGWHfrsbqME01ZqB7vEJhz5XZR+BlGI ssKD3d6iTF7AgVYvA/CQrRgzTn1A7nIJKrDEHNxyjBsbkOVinqY=
    =D4VS
    -----END PGP SIGNATURE-----

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Pierre-Elliott =?utf-8?Q?B=C3=A9cue@21:1/5 to Carles Pina i Estany on Fri Oct 20 01:10:01 2023
    Carles Pina i Estany <carles@pina.cat> wrote on 18/10/2023 at 01:56:46+0200:

    [[PGP Signed Part:No public key for A802884F60A55F81 created at 2023-10-18T01:56:46+0200 using RSA]]

    Hi,

    On 17 Oct 2023 at 22:42:27, Carles Pina i Estany wrote:

    [...]

    2. Regarding testing, this package is a bit a mess. First you probably
    realized that you can't run tests at buildtime because a raw socket
    requires root privilege. I see you designed custom autopkgtest to

    yep...

    [...]

    From there you have two options: the first one is to drop the
    Testsuite: field and keep the two tests you designed and call it a
    day, or you drop it and write a third test stanza in
    debian/tests/control with a shell script you'd also have to write
    that moves the tests to the tmp dir autopkgtest creates, puts
    localhost in /etc/hosts and then run tests. In that case you need
    to add pytest to the dependencies of this test stanza.

    Sounds doable no problem, I'll try it this evening and see how it goes.

    From doable to "I'm 99% sure that not possible". I cannot send pings
    from autopkgtest in salsa with any software.

    Side note: I remembered that when using "needs-internet": HTTP GET
    requests (even using hostnames) works. This is my first package for
    Debian, but I've used autopkgtest with needs-internet to run a sphinx "linkcheck" and it was working correctly.

    I've checked that no ICMP replies even using the standard ping binary
    from iputils-ping:
    -----
    Test-Command: set +e ; ping -c 4 8.8.8.8 ; ping -c 4 example.com ; curl -s -I https://en.wikipedia.org ; curl -s -L https://en.wikipedia.org | head -5
    Depends: python3-ping3, iputils-ping, curl
    Restrictions: needs-root, needs-internet
    Features: test-name=test-real-ping
    -----
    That's in: https://salsa.debian.org/carlespina/python-ping3/-/blob/autopkgtest-connectivity/debian/tests/control

    The output: https://salsa.debian.org/carlespina/python-ping3/-/jobs/4822521#L213

    4 packets transmitted, 0 received, 100% packet loss, time 3059ms
    4 packets transmitted, 0 received, 100% packet loss, time 3079ms

    Even more: I think that curl -I (--head) (HTTP HEAD) might not work? but
    curl HTTP GET works. I'm not sure about the curl -I but I don't think it
    is relevant for this discussion. Somewhere, I think, I had read
    something that it implied that autopkgtest needs-internet was using a
    proxy? I cannot find it anyway and ICMP seems that cannot be used.

    So, for now, I've:
    -Used wrap-and-soft (excellent!).
    -Removed "set -e" in one of my Test-Commands: it's the default in
    autopkgtest (I discovered with the "pings..." and then documenation)
    -Fixed a cosmetic line in d/tests/control (s/features/Features)
    -Removed "Testsuite: autopkgtest-pkg-pybuild" from d/control because
    ICMP is not available anyway
    -Ran dch -r to update the date
    -"dput --force mentors python-ping3_4.0.4-1_amd64.changes"

    I've also discovered that there are a few unit tests in upstream that do
    not work. Some have an easy fix, I will do a MR of the fixes that I've
    done for some of them (separately, in GitHub, not tonight).

    Your call.

    Tell me when you're fine with your work and I'll upload.

    To me, it can be uploaded :-)

    Let me know if I need or can do anything else.

    Uploaded, remember to put a tag on the latest commit. :)
    --
    PEB

    --=-=-Content-Type: application/pgp-signature; name="signature.asc"

    -----BEGIN PGP SIGNATURE-----

    iQJDBAEBCgAtFiEE5CQeth7uIW7ehIz87iFbn7jEWwsFAmUxtm8PHHBlYkBkZWJp YW4ub3JnAAoJEO4hW5+4xFsLhHAP/R8BHRfMaXlcklQzoLNVdMf1N8jEC1okzZV+ MgSC5SEoNrZxP0D3Oy1aEQ4QSwjlV8G9yMY+xTjLjWTGuzyDvbWPIZI7p05JQodv 25Ay+UQrtaR4cVqQcnBduOF9jl95vRbZ60sXMlXNKRn2EMjWKHVzfzrgF/z/d1jc s9VIepuqLOQpYF6mcuKywzZ4j0acEOCdX4bYA4ThItv1DWLFbE7RlsrSJhdMq4+l zRSc/7r1Qb6mzhk6Nearz/EcgKmNg5zoea1yZyqvJQ9PFjDntTPzt46rWuYWhT13 t8N09/XR3jxIrzctsYFzaZFDmhI/nFVx/5cjbKmlcfnTDNF8GudgHgDeM2L7MoGW BOgGTDooT6CDorOH2tFdh8Zw34u0UB0r9s5ccOkY0AVPS/OZ9nLEQT8QVHX/mwc8 BcLQrujzLIGEgKpcXJRHl6cVURUJ6YrtLEtHp8lswoLpRu5PI+avAxN0t3saf/cN 9ne5JI8hLJDiFjVAGLeiC/avevAZ3dNCl2VOno0wZOCTdqU31CqPjdnULjjTGwyz NmG2/kTVyjlpxO255t/5x2bGGzFTyA8Iqf/6+AB2V3QssnVSFn2af8zDxq9pKt+q 7/fIFC8ouua4tauEwbJgvYTJYIKyatfMeSM5D6LcVA5xKhei2m9XNG+8zbJF6Ruv
    H+YoEbGr
    =u+aC
    -----END PGP SIGNATURE-----

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Carles Pina i Estany@21:1/5 to Pierre-Elliott =?utf-8?B?QsOpY3Vl?= on Fri Oct 20 00:35:15 2023
    Copy: debian-python@lists.debian.org

    Hi,

    On 20 Oct 2023 at 01:06:01, Pierre-Elliott Bécue wrote:
    Carles Pina i Estany <carles@pina.cat> wrote on 18/10/2023 at 01:56:46+0200:

    Tell me when you're fine with your work and I'll upload.

    To me, it can be uploaded :-)

    Let me know if I need or can do anything else.

    Uploaded, remember to put a tag on the latest commit. :)

    Excellent!

    Tagged via:
    $ git tag -s debian/4.0.4-1
    ("Initial release" the commit message)

    $ git push upstream debian/4.0.4-1

    I've just realised that there is "gbp tag" :-/ I'll use it next time.
    Reading the description in man gbp-tag: I was in the right branch and
    the verifications would have been ok! (last commit in the debian
    branch).

    Thanks!

    --
    Carles Pina i Estany
    https://carles.pina.cat

    -----BEGIN PGP SIGNATURE-----

    iQIzBAABCgAdFiEEth6/Zob9uGYomaJ+qAKIT2ClX4EFAmUxvTMACgkQqAKIT2Cl X4GBtw//aMqMstAH9vfVAhQGnDYPflakZrl8BdNHueHyQoiYMcjP81d8tCZRxFjn LEHQnxj0R0n1ZtqiyODx6/iaz/RfGEfozc2JPy86MqDsMFzq+OW0kbSfeP9m6dzF 3WZlTl5i3CnzvO22MPo9oMJCibF7kXMgFi8Ypu4xT+TEWbgabCEHt2E5i/Y+6COc mwFFLYFt1SNmF28ox+bT13xazLegsSJRNBJ1KSMUCjaOdlliVHFSmcAETVEBdrqC vMsOingdLQr5qt/imjibMnZyv05+W1q/p5oQ82S/6+zTxnehhqi7Eea4YyTkqDB3 nY5AkLQpEJmBVDPRRF5WQSySIb/nZq2V0mQe7gdT2Ct4llzXv2J+5PM6cYP+m3Fr k8mD0D+aM192wBYpVPFoE6RzKGAKuZ74/Z6TfFPYzEwE1JHD7RPyw5e9L0mEQ3Gb 2Qz7Ha5uqXCSbW07j8Xtt/JEDwGd5WbdlgIW2RVGkVkb/ZjNtU1gvmb+uJpvvUsh /WRxg6ogv7gdg+DBCjzkZnrqfYVCzg8a6CNAjpWiL67JidUDpJdWnuFdOssmGVSZ GPWrf4n8Eqbc+6L/WLm4tO+2uGWtgh5XCCWFYv9PhRLeOyBWq4leE7MIqzV+VPC+ S7Gb9VUI4MnkzvWaUchY81ygNI3H4VhfV5vPR83sgGVr7s489b0=
    =cXoo
    -----END PGP SIGNATURE-----

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Santiago Ruano =?iso-8859-1?Q?Rinc=@21:1/5 to All on Fri Oct 20 14:10:01 2023
    El 18/10/23 a las 00:56, Carles Pina i Estany escribió:

    Hi,

    On 17 Oct 2023 at 22:42:27, Carles Pina i Estany wrote:

    [...]

    2. Regarding testing, this package is a bit a mess. First you probably
    realized that you can't run tests at buildtime because a raw socket
    requires root privilege. I see you designed custom autopkgtest to

    yep...

    [...]

    From there you have two options: the first one is to drop the
    Testsuite: field and keep the two tests you designed and call it a
    day, or you drop it and write a third test stanza in
    debian/tests/control with a shell script you'd also have to write
    that moves the tests to the tmp dir autopkgtest creates, puts
    localhost in /etc/hosts and then run tests. In that case you need
    to add pytest to the dependencies of this test stanza.

    Sounds doable no problem, I'll try it this evening and see how it goes.

    From doable to "I'm 99% sure that not possible". I cannot send pings
    from autopkgtest in salsa with any software.

    Side note: I remembered that when using "needs-internet": HTTP GET
    requests (even using hostnames) works. This is my first package for
    Debian, but I've used autopkgtest with needs-internet to run a sphinx "linkcheck" and it was working correctly.

    I've checked that no ICMP replies even using the standard ping binary
    from iputils-ping:
    -----
    Test-Command: set +e ; ping -c 4 8.8.8.8 ; ping -c 4 example.com ; curl -s -I https://en.wikipedia.org ; curl -s -L https://en.wikipedia.org | head -5
    Depends: python3-ping3, iputils-ping, curl
    Restrictions: needs-root, needs-internet
    Features: test-name=test-real-ping
    -----
    That's in: https://salsa.debian.org/carlespina/python-ping3/-/blob/autopkgtest-connectivity/debian/tests/control

    The output: https://salsa.debian.org/carlespina/python-ping3/-/jobs/4822521#L213

    4 packets transmitted, 0 received, 100% packet loss, time 3059ms
    4 packets transmitted, 0 received, 100% packet loss, time 3079ms

    ...

    AFAIU, there are network restrictions on salsa. Reaching HTTPS in the
    outside world should work. But I am not sure about ICMP.

    FWIW, this is probably overengineering, but it is also possible to use namespaces to avoid reaching INET, pinging from one namespace to the
    other.

    As example: https://salsa.debian.org/debian/isc-dhcp/-/blob/master/debian/tests/client-server

    Cheers!

    -- Santiago

    -----BEGIN PGP SIGNATURE-----

    iHUEABYIAB0WIQRZVjztY8b+Ty43oH1itBCJKh26HQUCZTJsewAKCRBitBCJKh26 HUKdAP9JUSn9OiYSZlburvMBgBC5cWHN/BFP5B1fiV1vHn+nYwD/bBzEPsTBm+gt DRRLqPehrTXGjphXVXYlIF/cH4R7NAI=
    =OhKE
    -----END PGP SIGNATURE-----

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Carles Pina i Estany@21:1/5 to Santiago Ruano =?utf-8?Q?Rinc=C3=B3 on Sat Oct 21 08:44:34 2023
    Copy: peb@debian.org (Pierre-Elliott =?utf-8?B?QsOpY3Vl?=)
    Copy: debian-python@lists.debian.org

    Hi,

    On 20 Oct 2023 at 09:03:07, Santiago Ruano Rincón wrote:
    El 18/10/23 a las 00:56, Carles Pina i Estany escribió:

    I've checked that no ICMP replies even using the standard ping binary
    from iputils-ping:
    -----
    Test-Command: set +e ; ping -c 4 8.8.8.8 ; ping -c 4 example.com ; curl -s -I https://en.wikipedia.org ; curl -s -L https://en.wikipedia.org | head -5
    Depends: python3-ping3, iputils-ping, curl
    Restrictions: needs-root, needs-internet
    Features: test-name=test-real-ping
    -----
    That's in: https://salsa.debian.org/carlespina/python-ping3/-/blob/autopkgtest-connectivity/debian/tests/control

    The output: https://salsa.debian.org/carlespina/python-ping3/-/jobs/4822521#L213

    4 packets transmitted, 0 received, 100% packet loss, time 3059ms
    4 packets transmitted, 0 received, 100% packet loss, time 3079ms

    ...

    AFAIU, there are network restrictions on salsa. Reaching HTTPS in the
    outside world should work. But I am not sure about ICMP.

    FWIW, this is probably overengineering, but it is also possible to use namespaces to avoid reaching INET, pinging from one namespace to the
    other.

    As example: https://salsa.debian.org/debian/isc-dhcp/-/blob/master/debian/tests/client-server

    I liked the idea of using namespaces! Thanks very much, I might use it
    in the future.

    Like you, I think that for python-ping3 unit tests this is
    overengineering (but I might play with this for python-ping3 or
    somehting else in the future...).

    In python-ping3, upstream has some IPs and hostnames hardcoded. The
    hostnames are easy to "tweak" via /etc/hosts (even to ping 127.0.0.1).

    The IPs: last night, I thought that another approach would be to use
    iptables (or nftables) and destination NAT. Redirect 8.8.8.8 to
    127.0.0.1. It has the advantage that I could remove needs-internet,
    keeping all the unit tests 100% local.

    Cheers,

    --
    Carles Pina i Estany
    https://carles.pina.cat

    -----BEGIN PGP SIGNATURE-----

    iQIzBAABCgAdFiEEth6/Zob9uGYomaJ+qAKIT2ClX4EFAmUzgWIACgkQqAKIT2Cl X4HCHRAAmslqPWr3vP8df7mmq43GLuA4lNaC9staLvWwdSI95kiolp9RlAvz1e/y aPEmfzUEo+hNL62Qs3YMLL+rJja0p6L5TBkf5v9L9jN/yJ2mJZerJByaCdq09yfG wQkL3EkKvT1VuAWYvhdhdcGr4v3VvdFdjbQcUN2D5UDETfAmGMxyf+IdqI+2TayM UDH2NngxsvBNfkMHbGCSw/Fx/kV4hGhsveJbAPvTk+CrOVH+MX5JwEoBQpyYZ/CP stOI8H0cQNpk4CBbsdiSR+K90JMBkBHxcmfOXJ0LUf4v/s53wZ5tpsjKa6Kh1q3k zUKEHU5Nhoijb28Tq/MLguetKLOlIezdk/Tg3NZwrcoXTzS1ynPIL6gB2bikKYbG rQhKBf3oc51dBV2i1Vn76Y0aQGQUYwrkynNP4mIG24dT3TazNLzQBN+LnhX3LFVt 6oUt2EihAF76+Qd7491IlC+8By1VFh2V18YQSBb4uE5GJYlRX523ZhBBlBHm0AG3 fk+9cINoUzw4jK4DflGBGoNuxKPt7jpZGeGoNFj2QomlIrGHQqlK/tsIoNRAu78k 2QjEjH751qw1Dn9hUIT7xPIXkSCZ0Nn2HrpJNRcEGMux2rRlGGv2eEgipEepun5o Ub1zASAi9Of74qAUFRJsDENUDUH4/Q4cMc04XpM03dZqIJPni0Y=
    =IK+n
    -----END PGP SIGNATURE-----

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)