[jira] [Commented] (PROTON-2678) Use Python Limited API and create universal wheel when building Qpid Proton Python client

2023-02-01 Thread Jira


[ 
https://issues.apache.org/jira/browse/PROTON-2678?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17683069#comment-17683069
 ] 

Jiri Daněk commented on PROTON-2678:


On the latest main, I saw it build (on amd64 Ubuntu Linux) file named 
{noformat}dist/python_qpid_proton-0.39.0.dev0-cp38-abi3-linux_x86_64.whl{noformat}.
 And I was able to install that on my Fedora 37 with Python 3.11. It failed to 
import due to missing shared library (or version of that, actually) but that is 
expected, since this is not manylinux wheel.

So, it seems to work, and should be useful especially for Windows wheels.

{noformat}
$ python3.11 -m pip install 
/home/jdanek/Downloads/python_qpid_proton-0.39.0.dev0-cp38-abi3-linux_x86_64.whl
 
Defaulting to user installation because normal site-packages is not writeable
Processing 
/home/jdanek/Downloads/python_qpid_proton-0.39.0.dev0-cp38-abi3-linux_x86_64.whl
Requirement already satisfied: cffi>=1.0.0 in 
/home/jdanek/.local/lib/python3.11/site-packages (from 
python-qpid-proton==0.39.0.dev0) (1.15.1)
Requirement already satisfied: pycparser in 
/home/jdanek/.local/lib/python3.11/site-packages (from 
cffi>=1.0.0->python-qpid-proton==0.39.0.dev0) (2.21)
Installing collected packages: python-qpid-proton
Successfully installed python-qpid-proton-0.39.0.dev0
{noformat}

{noformat}
$ python3.11 -c 'import proton'
Traceback (most recent call last):
  File "", line 1, in 
  File "/home/jdanek/.local/lib/python3.11/site-packages/proton/__init__.py", 
line 34, in 
from cproton import PN_VERSION_MAJOR, PN_VERSION_MINOR, PN_VERSION_POINT
  File "/home/jdanek/.local/lib/python3.11/site-packages/cproton.py", line 22, 
in 
from cproton_ffi import ffi, lib
ImportError: libsasl2.so.2: cannot open shared object file: No such file or 
directory
{noformat}

> Use Python Limited API and create universal wheel when building Qpid Proton 
> Python client
> -
>
> Key: PROTON-2678
> URL: https://issues.apache.org/jira/browse/PROTON-2678
> Project: Qpid Proton
>  Issue Type: New Feature
>Affects Versions: proton-c-0.39.0
>Reporter: Jiri Daněk
>Assignee: Andrew Stitcher
>Priority: Major
> Fix For: proton-c-0.39.0
>
>
> Currently, the build produces Python-version-specific wheels
> {noformat}
> creating 'dist/python_qpid_proton-0.39.0.dev0-cp311-cp311-linux_x86_64
> {noformat}
> Python is able to create universal wheels that can be installed on any 
> (reasonably new) Python version. See
> #. https://peps.python.org/pep-0425/#overview
> {quote}The CPython stable ABI is abi3 as in the shared library suffix.{quote}
> #. 
> https://docs.python.org/3/c-api/stable.html#stable-application-binary-interface
> #. https://docs.python.org/3/c-api/stable.html#c.Py_LIMITED_API
> {quote}Define Py_LIMITED_API to the value of PY_VERSION_HEX corresponding to 
> the lowest Python version your extension supports. The extension will work 
> without recompilation with all Python 3 releases from the specified one 
> onward, and can use Limited API introduced up to that version.{quote}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

-
To unsubscribe, e-mail: dev-unsubscr...@qpid.apache.org
For additional commands, e-mail: dev-h...@qpid.apache.org



[jira] [Resolved] (PROTON-2678) Use Python Limited API and create universal wheel when building Qpid Proton Python client

2023-02-01 Thread Andrew Stitcher (Jira)


 [ 
https://issues.apache.org/jira/browse/PROTON-2678?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andrew Stitcher resolved PROTON-2678.
-
Resolution: Fixed

> Use Python Limited API and create universal wheel when building Qpid Proton 
> Python client
> -
>
> Key: PROTON-2678
> URL: https://issues.apache.org/jira/browse/PROTON-2678
> Project: Qpid Proton
>  Issue Type: New Feature
>Affects Versions: proton-c-0.39.0
>Reporter: Jiri Daněk
>Assignee: Andrew Stitcher
>Priority: Major
>
> Currently, the build produces Python-version-specific wheels
> {noformat}
> creating 'dist/python_qpid_proton-0.39.0.dev0-cp311-cp311-linux_x86_64
> {noformat}
> Python is able to create universal wheels that can be installed on any 
> (reasonably new) Python version. See
> #. https://peps.python.org/pep-0425/#overview
> {quote}The CPython stable ABI is abi3 as in the shared library suffix.{quote}
> #. 
> https://docs.python.org/3/c-api/stable.html#stable-application-binary-interface
> #. https://docs.python.org/3/c-api/stable.html#c.Py_LIMITED_API
> {quote}Define Py_LIMITED_API to the value of PY_VERSION_HEX corresponding to 
> the lowest Python version your extension supports. The extension will work 
> without recompilation with all Python 3 releases from the specified one 
> onward, and can use Limited API introduced up to that version.{quote}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

-
To unsubscribe, e-mail: dev-unsubscr...@qpid.apache.org
For additional commands, e-mail: dev-h...@qpid.apache.org



[jira] [Updated] (PROTON-2678) Use Python Limited API and create universal wheel when building Qpid Proton Python client

2023-02-01 Thread Andrew Stitcher (Jira)


 [ 
https://issues.apache.org/jira/browse/PROTON-2678?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andrew Stitcher updated PROTON-2678:

Fix Version/s: proton-c-0.39.0

> Use Python Limited API and create universal wheel when building Qpid Proton 
> Python client
> -
>
> Key: PROTON-2678
> URL: https://issues.apache.org/jira/browse/PROTON-2678
> Project: Qpid Proton
>  Issue Type: New Feature
>Affects Versions: proton-c-0.39.0
>Reporter: Jiri Daněk
>Assignee: Andrew Stitcher
>Priority: Major
> Fix For: proton-c-0.39.0
>
>
> Currently, the build produces Python-version-specific wheels
> {noformat}
> creating 'dist/python_qpid_proton-0.39.0.dev0-cp311-cp311-linux_x86_64
> {noformat}
> Python is able to create universal wheels that can be installed on any 
> (reasonably new) Python version. See
> #. https://peps.python.org/pep-0425/#overview
> {quote}The CPython stable ABI is abi3 as in the shared library suffix.{quote}
> #. 
> https://docs.python.org/3/c-api/stable.html#stable-application-binary-interface
> #. https://docs.python.org/3/c-api/stable.html#c.Py_LIMITED_API
> {quote}Define Py_LIMITED_API to the value of PY_VERSION_HEX corresponding to 
> the lowest Python version your extension supports. The extension will work 
> without recompilation with all Python 3 releases from the specified one 
> onward, and can use Limited API introduced up to that version.{quote}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

-
To unsubscribe, e-mail: dev-unsubscr...@qpid.apache.org
For additional commands, e-mail: dev-h...@qpid.apache.org



[jira] [Assigned] (PROTON-2678) Use Python Limited API and create universal wheel when building Qpid Proton Python client

2023-02-01 Thread Andrew Stitcher (Jira)


 [ 
https://issues.apache.org/jira/browse/PROTON-2678?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andrew Stitcher reassigned PROTON-2678:
---

Assignee: Andrew Stitcher

> Use Python Limited API and create universal wheel when building Qpid Proton 
> Python client
> -
>
> Key: PROTON-2678
> URL: https://issues.apache.org/jira/browse/PROTON-2678
> Project: Qpid Proton
>  Issue Type: New Feature
>Affects Versions: proton-c-0.39.0
>Reporter: Jiri Daněk
>Assignee: Andrew Stitcher
>Priority: Major
>
> Currently, the build produces Python-version-specific wheels
> {noformat}
> creating 'dist/python_qpid_proton-0.39.0.dev0-cp311-cp311-linux_x86_64
> {noformat}
> Python is able to create universal wheels that can be installed on any 
> (reasonably new) Python version. See
> #. https://peps.python.org/pep-0425/#overview
> {quote}The CPython stable ABI is abi3 as in the shared library suffix.{quote}
> #. 
> https://docs.python.org/3/c-api/stable.html#stable-application-binary-interface
> #. https://docs.python.org/3/c-api/stable.html#c.Py_LIMITED_API
> {quote}Define Py_LIMITED_API to the value of PY_VERSION_HEX corresponding to 
> the lowest Python version your extension supports. The extension will work 
> without recompilation with all Python 3 releases from the specified one 
> onward, and can use Limited API introduced up to that version.{quote}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

-
To unsubscribe, e-mail: dev-unsubscr...@qpid.apache.org
For additional commands, e-mail: dev-h...@qpid.apache.org