Skip to content

python-pyliblo3: Add at v0.16.3 #5852

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 3 commits into from
Jun 26, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
From a81a2a545d2529233a6e0faa776fbd2d851442fb Mon Sep 17 00:00:00 2001
From: Adam Williamson <[email protected]>
Date: Fri, 27 Sep 2024 11:59:47 -0700
Subject: [PATCH] carla_host_control: import from pyliblo3 if available

pyliblo has not been touched upstream since 2015 and doesn't
work out of the box with Python releases since 3.11. There is an
actively-maintained fork called 'pyliblo3' at
https://github.com/gesellkammer/pyliblo3 which *does* work with
current upstream Python releases. It provides a library called
'pyliblo3' rather than 'liblo'. Let's support it, and prefer it
over the dead library (though the dead one will still be used if
it is present and pyliblo3 is not).

Signed-off-by: Adam Williamson <[email protected]>
---
source/frontend/carla_host_control.py | 32 ++++++++++++++++++---------
1 file changed, 22 insertions(+), 10 deletions(-)

diff --git a/source/frontend/carla_host_control.py b/source/frontend/carla_host_control.py
index 7defa8435..8df839d3a 100755
--- a/source/frontend/carla_host_control.py
+++ b/source/frontend/carla_host_control.py
@@ -23,16 +23,28 @@ from carla_host import *
# ------------------------------------------------------------------------------------------------------------
# Imports (liblo)

-from liblo import (
- Address,
- AddressError,
- ServerError,
- Server,
- make_method,
- send as lo_send,
- TCP as LO_TCP,
- UDP as LO_UDP,
-)
+try:
+ from pyliblo3 import (
+ Address,
+ AddressError,
+ ServerError,
+ Server,
+ make_method,
+ send as lo_send,
+ TCP as LO_TCP,
+ UDP as LO_UDP,
+ )
+except ModuleNotFoundError:
+ from liblo import (
+ Address,
+ AddressError,
+ ServerError,
+ Server,
+ make_method,
+ send as lo_send,
+ TCP as LO_TCP,
+ UDP as LO_UDP,
+ )

from random import random

--
2.46.2

5 changes: 3 additions & 2 deletions packages/c/carla/package.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
name : carla
version : 2.5.9
release : 27
release : 28
source :
- git|https://github.com/falkTX/Carla.git : v2.5.9
homepage : https://kx.studio/Applications:Carla
Expand All @@ -27,11 +27,12 @@ builddeps :
- python3-qt5
rundeps :
- lrdf
- python-pyliblo
- python-pyliblo3
- python3-qt5
setup : |
# Ugly way for fix missing "include array" via sed, because patching fails.
sed -i '27 i\#include <array>' source/modules/juce_gui_basics/native/x11/juce_linux_XWindowSystem.cpp
%patch -p1 -i $pkgfiles/0001-carla_host_control-import-from-pyliblo3-if-available.patch
build : |
%make features
%make
Expand Down
14 changes: 7 additions & 7 deletions packages/c/carla/pspec_x86_64.xml
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@
<Name>carla</Name>
<Homepage>https://kx.studio/Applications:Carla</Homepage>
<Packager>
<Name>Joey Riches</Name>
<Email>josephriches@gmail.com</Email>
<Name>Muhammad Alfi Syahrin</Name>
<Email>malfisya.dev@hotmail.com</Email>
</Packager>
<License>GPL-2.0-or-later</License>
<PartOf>multimedia.audio</PartOf>
Expand Down Expand Up @@ -257,7 +257,7 @@
</Description>
<PartOf>programming.devel</PartOf>
<RuntimeDependencies>
<Dependency release="27">carla</Dependency>
<Dependency release="28">carla</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="header">/usr/include/carla/CarlaBackend.h</Path>
Expand Down Expand Up @@ -294,12 +294,12 @@
</Files>
</Package>
<History>
<Update release="27">
<Date>2025-05-23</Date>
<Update release="28">
<Date>2025-06-17</Date>
<Version>2.5.9</Version>
<Comment>Packaging update</Comment>
<Name>Joey Riches</Name>
<Email>josephriches@gmail.com</Email>
<Name>Muhammad Alfi Syahrin</Name>
<Email>malfisya.dev@hotmail.com</Email>
</Update>
</History>
</PISI>
1 change: 1 addition & 0 deletions packages/py/python-pyliblo3/abi_libs
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
_liblo.cpython-312-x86_64-linux-gnu.so
3 changes: 3 additions & 0 deletions packages/py/python-pyliblo3/abi_symbols
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
_liblo.cpython-312-x86_64-linux-gnu.so:PyInit__liblo
_liblo.cpython-312-x86_64-linux-gnu.so:__pyx_CommonTypesMetaclass_get_module
_liblo.cpython-312-x86_64-linux-gnu.so:__pyx_module_is_main_pyliblo3___liblo
3 changes: 3 additions & 0 deletions packages/py/python-pyliblo3/abi_used_libs
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
UNKNOWN
libc.so.6
liblo.so.7
234 changes: 234 additions & 0 deletions packages/py/python-pyliblo3/abi_used_symbols
Original file line number Diff line number Diff line change
@@ -0,0 +1,234 @@
UNKNOWN:PyArg_ValidateKeywordArguments
UNKNOWN:PyBaseObject_Type
UNKNOWN:PyBool_Type
UNKNOWN:PyByteArray_Type
UNKNOWN:PyBytes_AsString
UNKNOWN:PyBytes_FromString
UNKNOWN:PyBytes_FromStringAndSize
UNKNOWN:PyBytes_Type
UNKNOWN:PyCFunction_Type
UNKNOWN:PyCMethod_New
UNKNOWN:PyCallable_Check
UNKNOWN:PyCapsule_GetPointer
UNKNOWN:PyCapsule_New
UNKNOWN:PyCode_NewEmpty
UNKNOWN:PyDict_Contains
UNKNOWN:PyDict_Copy
UNKNOWN:PyDict_DelItem
UNKNOWN:PyDict_GetItemString
UNKNOWN:PyDict_GetItemWithError
UNKNOWN:PyDict_New
UNKNOWN:PyDict_Next
UNKNOWN:PyDict_SetDefault
UNKNOWN:PyDict_SetItem
UNKNOWN:PyDict_SetItemString
UNKNOWN:PyDict_Size
UNKNOWN:PyDict_Type
UNKNOWN:PyDict_Update
UNKNOWN:PyErr_Clear
UNKNOWN:PyErr_ExceptionMatches
UNKNOWN:PyErr_Fetch
UNKNOWN:PyErr_Format
UNKNOWN:PyErr_GivenExceptionMatches
UNKNOWN:PyErr_NoMemory
UNKNOWN:PyErr_Occurred
UNKNOWN:PyErr_PrintEx
UNKNOWN:PyErr_Restore
UNKNOWN:PyErr_SetObject
UNKNOWN:PyErr_SetString
UNKNOWN:PyErr_WarnEx
UNKNOWN:PyErr_WarnFormat
UNKNOWN:PyErr_WriteUnraisable
UNKNOWN:PyEval_InitThreads
UNKNOWN:PyEval_RestoreThread
UNKNOWN:PyEval_SaveThread
UNKNOWN:PyExc_AttributeError
UNKNOWN:PyExc_DeprecationWarning
UNKNOWN:PyExc_Exception
UNKNOWN:PyExc_ImportError
UNKNOWN:PyExc_IndexError
UNKNOWN:PyExc_NameError
UNKNOWN:PyExc_OverflowError
UNKNOWN:PyExc_RuntimeError
UNKNOWN:PyExc_RuntimeWarning
UNKNOWN:PyExc_StopIteration
UNKNOWN:PyExc_SystemError
UNKNOWN:PyExc_TypeError
UNKNOWN:PyExc_ValueError
UNKNOWN:PyException_GetTraceback
UNKNOWN:PyException_SetTraceback
UNKNOWN:PyFloat_AsDouble
UNKNOWN:PyFloat_FromDouble
UNKNOWN:PyFloat_FromString
UNKNOWN:PyFloat_Type
UNKNOWN:PyFrame_New
UNKNOWN:PyGC_Disable
UNKNOWN:PyGC_Enable
UNKNOWN:PyGILState_Ensure
UNKNOWN:PyGILState_Release
UNKNOWN:PyImport_AddModule
UNKNOWN:PyImport_GetModule
UNKNOWN:PyImport_GetModuleDict
UNKNOWN:PyImport_ImportModule
UNKNOWN:PyImport_ImportModuleLevelObject
UNKNOWN:PyInterpreterState_GetID
UNKNOWN:PyList_Append
UNKNOWN:PyList_AsTuple
UNKNOWN:PyList_New
UNKNOWN:PyList_SetSlice
UNKNOWN:PyList_Type
UNKNOWN:PyLong_AsDouble
UNKNOWN:PyLong_AsLong
UNKNOWN:PyLong_AsUnsignedLong
UNKNOWN:PyLong_FromLong
UNKNOWN:PyLong_FromSsize_t
UNKNOWN:PyLong_Type
UNKNOWN:PyMem_Free
UNKNOWN:PyMem_Malloc
UNKNOWN:PyMem_Realloc
UNKNOWN:PyMethodDescr_Type
UNKNOWN:PyMethod_New
UNKNOWN:PyMethod_Type
UNKNOWN:PyModuleDef_Init
UNKNOWN:PyModule_GetDict
UNKNOWN:PyModule_GetName
UNKNOWN:PyModule_NewObject
UNKNOWN:PyNumber_InPlaceAdd
UNKNOWN:PyNumber_InPlaceSubtract
UNKNOWN:PyNumber_Long
UNKNOWN:PyNumber_Remainder
UNKNOWN:PyOS_snprintf
UNKNOWN:PyOS_string_to_double
UNKNOWN:PyObject_Call
UNKNOWN:PyObject_CallFinalizerFromDealloc
UNKNOWN:PyObject_CallMethodObjArgs
UNKNOWN:PyObject_ClearWeakRefs
UNKNOWN:PyObject_GC_Del
UNKNOWN:PyObject_GC_IsFinalized
UNKNOWN:PyObject_GC_Track
UNKNOWN:PyObject_GC_UnTrack
UNKNOWN:PyObject_GenericGetAttr
UNKNOWN:PyObject_GetAttr
UNKNOWN:PyObject_GetAttrString
UNKNOWN:PyObject_GetItem
UNKNOWN:PyObject_GetIter
UNKNOWN:PyObject_HasAttr
UNKNOWN:PyObject_Hash
UNKNOWN:PyObject_IsSubclass
UNKNOWN:PyObject_IsTrue
UNKNOWN:PyObject_RichCompare
UNKNOWN:PyObject_RichCompareBool
UNKNOWN:PyObject_SetAttr
UNKNOWN:PyObject_SetAttrString
UNKNOWN:PyObject_SetItem
UNKNOWN:PyObject_Size
UNKNOWN:PyObject_Str
UNKNOWN:PyObject_Vectorcall
UNKNOWN:PyObject_VectorcallDict
UNKNOWN:PyObject_VectorcallMethod
UNKNOWN:PySequence_Contains
UNKNOWN:PySequence_Tuple
UNKNOWN:PyThreadState_Get
UNKNOWN:PyTraceBack_Here
UNKNOWN:PyTuple_GetItem
UNKNOWN:PyTuple_GetSlice
UNKNOWN:PyTuple_New
UNKNOWN:PyTuple_Pack
UNKNOWN:PyTuple_Type
UNKNOWN:PyType_FromMetaclass
UNKNOWN:PyType_IsSubtype
UNKNOWN:PyType_Modified
UNKNOWN:PyType_Ready
UNKNOWN:PyType_Type
UNKNOWN:PyUnicode_AsEncodedString
UNKNOWN:PyUnicode_AsUTF8AndSize
UNKNOWN:PyUnicode_Concat
UNKNOWN:PyUnicode_Decode
UNKNOWN:PyUnicode_Format
UNKNOWN:PyUnicode_FromFormat
UNKNOWN:PyUnicode_FromOrdinal
UNKNOWN:PyUnicode_FromString
UNKNOWN:PyUnicode_FromStringAndSize
UNKNOWN:PyUnicode_InternFromString
UNKNOWN:PyUnicode_New
UNKNOWN:PyUnicode_Resize
UNKNOWN:PyUnicode_Type
UNKNOWN:PyUnstable_Code_NewWithPosOnlyArgs
UNKNOWN:Py_EnterRecursiveCall
UNKNOWN:Py_LeaveRecursiveCall
UNKNOWN:Py_Version
UNKNOWN:_PyByteArray_empty_string
UNKNOWN:_PyDict_GetItem_KnownHash
UNKNOWN:_PyDict_Pop
UNKNOWN:_PyDict_SetItem_KnownHash
UNKNOWN:_PyObject_GC_New
UNKNOWN:_PyObject_GenericGetAttrWithDict
UNKNOWN:_PyThreadState_UncheckedGet
UNKNOWN:_PyType_Lookup
UNKNOWN:_PyUnicode_FastCopyCharacters
UNKNOWN:_PyUnicode_IsWhitespace
UNKNOWN:_Py_Dealloc
UNKNOWN:_Py_FalseStruct
UNKNOWN:_Py_NoneStruct
UNKNOWN:_Py_TrueStruct
UNKNOWN:_Py_ascii_whitespace
libc.so.6:__assert_fail
libc.so.6:__stack_chk_fail
libc.so.6:free
libc.so.6:malloc
libc.so.6:memcmp
libc.so.6:memcpy
libc.so.6:memmove
libc.so.6:modf
libc.so.6:strrchr
liblo.so.7:lo_address_errstr
liblo.so.7:lo_address_free
liblo.so.7:lo_address_get_hostname
liblo.so.7:lo_address_get_port
liblo.so.7:lo_address_get_protocol
liblo.so.7:lo_address_get_url
liblo.so.7:lo_address_new
liblo.so.7:lo_address_new_from_url
liblo.so.7:lo_address_new_with_proto
liblo.so.7:lo_blob_dataptr
liblo.so.7:lo_blob_free
liblo.so.7:lo_blob_new
liblo.so.7:lo_bundle_add_message
liblo.so.7:lo_bundle_free
liblo.so.7:lo_bundle_new
liblo.so.7:lo_message_add_blob
liblo.so.7:lo_message_add_char
liblo.so.7:lo_message_add_double
liblo.so.7:lo_message_add_false
liblo.so.7:lo_message_add_float
liblo.so.7:lo_message_add_infinitum
liblo.so.7:lo_message_add_int32
liblo.so.7:lo_message_add_int64
liblo.so.7:lo_message_add_midi
liblo.so.7:lo_message_add_nil
liblo.so.7:lo_message_add_string
liblo.so.7:lo_message_add_symbol
liblo.so.7:lo_message_add_timetag
liblo.so.7:lo_message_add_true
liblo.so.7:lo_message_free
liblo.so.7:lo_message_get_source
liblo.so.7:lo_message_new
liblo.so.7:lo_send_bundle_from
liblo.so.7:lo_send_message_from
liblo.so.7:lo_server_add_bundle_handlers
liblo.so.7:lo_server_add_method
liblo.so.7:lo_server_del_method
liblo.so.7:lo_server_free
liblo.so.7:lo_server_get_port
liblo.so.7:lo_server_get_protocol
liblo.so.7:lo_server_get_socket_fd
liblo.so.7:lo_server_get_url
liblo.so.7:lo_server_new_with_proto
liblo.so.7:lo_server_recv
liblo.so.7:lo_server_recv_noblock
liblo.so.7:lo_server_thread_free
liblo.so.7:lo_server_thread_get_server
liblo.so.7:lo_server_thread_new_with_proto
liblo.so.7:lo_server_thread_start
liblo.so.7:lo_server_thread_stop
liblo.so.7:lo_timetag_now
Loading