Thanks for the link.
While I'm not actually interested in RPC or async at all, this fork
actually works.
Any chance this will be upstreamed?

Pepijn

On Fri, Nov 29, 2019 at 7:27 AM Jacob Alexander <[email protected]>
wrote:

> While I haven't gotten all the tests working yet (there are some issues
> with some of the timer functions on Windows it seems), I spent a bunch of
> time getting asyncio working with pycapnp (it was the most reasonable way
> to get native Python TLS support working).
> I've fixed a lot of bugs, removed a lot of the deprecated C++ functions
> (the warnings were hiding a lot of serious issues).
>
> https://github.com/haata/pycapnp-async
>
> I'll be using this for a cross-platform tool I've been working so I'll at
> least be maintaining it for basic client functionality (server stuff works
> as well, minus a few Windows tests). My main use case is a TLS connection
> between a Rust server and Python clients (this is currently working using
> tokio-rustls).
>
> It does require Python 3.7 and higher (3.8 also works). I discovered some
> bugs in asyncio that make porting difficult to 3.5 and 3.6 (though it's
> likely possible with a bunch of effort).
>
> -HaaTa
>
> On Thursday, November 28, 2019 at 6:24:08 AM UTC-8, Pepijn de Vos wrote:
>>
>> Actually, it appears that the library contains a pointer, whereas the
>> Python lib tries to use a reference.
>> I'm not sure where this difference came from, but it's clearly incorrect.
>>
>> (env) [apicula]$ nm -gD /usr/lib/libkj-async-0.7.0.so | grep
>> TransformPromiseNodeBase
>> 000000000002b1e0 T
>> _ZN2kj1_24TransformPromiseNodeBase7onReadyEPNS0_5EventE
>> (env) [apicula]$ c++filt
>> _ZN2kj1_24TransformPromiseNodeBase7onReadyEPNS0_5EventE
>> kj::_::TransformPromiseNodeBase::onReady(kj::_::Event*)
>> (env) [apicula]$ c++filt
>> _ZN2kj1_24TransformPromiseNodeBase7onReadyERNS0_5EventE
>> kj::_::TransformPromiseNodeBase::onReady(kj::_::Event&)
>>
>>
>>
>> On Thursday, 28 November 2019 15:17:40 UTC+1, Pepijn de Vos wrote:
>>>
>>> Hey all,
>>>
>>> I'm exploring serialization libraries, so I installed the Python lib and
>>> got the following error
>>>
>>> ImportError: [...]capnp.cpython-38-x86_64-linux-gnu.so: undefined
>>> symbol: _ZN2kj1_24TransformPromiseNodeBase7onReadyERNS0_5EventE
>>>
>>> Which is definitely a thing, and has been for two years:
>>> https://github.com/capnproto/capnproto/blame/master/c%2B%2B/src/kj/async-inl.h#L392
>>>
>>> It also seems to be linked correctly
>>>
>>> $ ldd [...]capnp.cpython-38-x86_64-linux-gnu.so
>>>     linux-vdso.so.1 (0x00007ffe675cf000)
>>>     libcapnpc-0.7.0.so => /usr/lib/libcapnpc-0.7.0.so (
>>> 0x00007f7dc5173000)
>>>     libcapnp-rpc-0.7.0.so => /usr/lib/libcapnp-rpc-0.7.0.so (
>>> 0x00007f7dc5090000)
>>>     libcapnp-0.7.0.so => /usr/lib/libcapnp-0.7.0.so (0x00007f7dc4ff4000)
>>>     libkj-async-0.7.0.so => /usr/lib/libkj-async-0.7.0.so (
>>> 0x00007f7dc4f60000)
>>>     libkj-0.7.0.so => /usr/lib/libkj-0.7.0.so (0x00007f7dc4eda000)
>>>     libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00007f7dc4cf0000)
>>>     libgcc_s.so.1 => /usr/lib/libgcc_s.so.1 (0x00007f7dc4cd4000)
>>>     libc.so.6 => /usr/lib/libc.so.6 (0x00007f7dc4b0d000)
>>>     libpthread.so.0 => /usr/lib/libpthread.so.0 (0x00007f7dc4aeb000)
>>>     libm.so.6 => /usr/lib/libm.so.6 (0x00007f7dc49a5000)
>>>     /usr/lib64/ld-linux-x86-64.so.2 (0x00007f7dc540e000)
>>>
>>>
>>> So the system library version is 0.7, and the latest Python library is
>>> 0.6.4, not sure if the versions are just mismatched somehow.
>>> I tried installing from git with the same result, is the Python library
>>> just outdated?
>>> Or maybe the Arch package is just broken, because it doesn't contain the
>>> required symbol?
>>>
>>> Cheers,
>>> Pepijn
>>>
>> --
> You received this message because you are subscribed to a topic in the
> Google Groups "Cap'n Proto" group.
> To unsubscribe from this topic, visit
> https://groups.google.com/d/topic/capnproto/1x8_5_RC9wU/unsubscribe.
> To unsubscribe from this group and all its topics, send an email to
> [email protected].
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/capnproto/f8decb16-f304-4d80-9e2c-7df4946df458%40googlegroups.com
> <https://groups.google.com/d/msgid/capnproto/f8decb16-f304-4d80-9e2c-7df4946df458%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
>

-- 
You received this message because you are subscribed to the Google Groups 
"Cap'n Proto" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/capnproto/CANPfQguTwrnMyHBZZyri4E2ijEO3rV%3DeF%2BK_RpsunqeaX85R9Q%40mail.gmail.com.

Reply via email to