[MacPorts] #68931: py-sip builds contain incorrect code.

MacPorts noreply at macports.org
Sun Dec 17 19:09:36 UTC 2023


#68931: py-sip builds contain incorrect code.
---------------------+-----------------------
  Reporter:  SiggyF  |      Owner:  michaelld
      Type:  defect  |     Status:  assigned
  Priority:  Normal  |  Milestone:
 Component:  ports   |    Version:
Resolution:          |   Keywords:
      Port:  py-sip  |
---------------------+-----------------------
Changes (by ryandesign):

 * status:  new => assigned
 * owner:  (none) => michaelld
 * cc: reneeotten (added)


Old description:

> There was a bug in the 3.8.0 version of py-sip. This bug was fixed [two
> weeks](https://www.riverbankcomputing.com/hg/sip/rev/67e0294b505c) ago in
> 3.8.1.
> This also solved [68828](https://trac.macports.org/ticket/68828).
> Now the 3.8.1 is available. Somehow the old code ended up in the builds
> of the pre-build 3.8.1 version.
>
> This can be checked in for example the file:
> https://packages.macports.org/py311-sip/py311-sip-6.8.1_0.darwin_22.arm64.tbz2
>
> There we see the old code:
> ```
> opt/local/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11
> /site-packages/sipbuild/generator/outputs/code.py
> 8417:    if klass.docstring is None or klass.docstring.signature is not
> SocstringSignature.DISCARDED:
> ```
>
> I don't understand how this old codes ends up in this file. I checked the
> [distfile](https://ftp.fau.de/macports/distfiles/py-sip/sip-6.8.1.tar.gz)
> and that contains the correct code (without the typo *Soc*string).

New description:

 There was a bug in the 3.8.0 version of py-sip. This bug was fixed
 [https://www.riverbankcomputing.com/hg/sip/rev/67e0294b505c two weeks] ago
 in 3.8.1.
 This also solved #68828.
 Now the 3.8.1 is available. Somehow the old code ended up in the builds of
 the pre-build 3.8.1 version.

 This can be checked in for example the file:
 https://packages.macports.org/py311-sip/py311-sip-6.8.1_0.darwin_22.arm64.tbz2

 There we see the old code:
 {{{
 opt/local/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11
 /site-packages/sipbuild/generator/outputs/code.py
 8417:    if klass.docstring is None or klass.docstring.signature is not
 SocstringSignature.DISCARDED:
 }}}

 I don't understand how this old codes ends up in this file. I checked the
 [https://ftp.fau.de/macports/distfiles/py-sip/sip-6.8.1.tar.gz distfile]
 and that contains the correct code (without the typo *Soc*string).

--

Comment:

 I assume you mean ''6''.8.0 and ''6''.8.1 rather than ''3''.8.0 and
 ''3''.8.1.

 The problem is that the `revision` was not increased when #68898 was
 resolved. macOS Ventura and later contain a new implementation of `patch`
 that behaves different from that in older macOS versions. In older macOS
 versions an error was issued when asked to apply a patch that was already
 applied, which was what prompted #68898. But the `patch` program in
 Ventura and later silently applied the patch in reverse.

-- 
Ticket URL: <https://trac.macports.org/ticket/68931#comment:1>
MacPorts <https://www.macports.org/>
Ports system for macOS


More information about the macports-tickets mailing list