[zeromq-dev] Reasonable Mechanism?

Greg Young gregoryyoung1 at gmail.com
Thu Mar 10 14:12:04 CET 2016


and I can't leave it out if I don't want to run tests?

On Thu, Mar 10, 2016 at 3:10 PM, Pieter Hintjens <ph at imatix.com> wrote:
> It's a function, so e.g. "uuid_generate" to test libuuid. It's for the
> AC_CHECK_LIB macro in autoconf.
>
> On Thu, Mar 10, 2016 at 2:22 PM, Greg Young <gregoryyoung1 at gmail.com> wrote:
>> I am a bit uncertain what the test attribute actually does in
>> zproject. From looking it seems that it calls a test binary (I am
>> guessing relative to the root) what if a library doesn't include a
>> test or you don't want to run tests against it as its required.
>>
>> On Thu, Mar 10, 2016 at 1:17 PM, Pieter Hintjens <ph at imatix.com> wrote:
>>> The failing 'use.test' property comes from autoconf's use of calling a
>>> method to test whether a library exists or not. You can see in
>>> zproject/zproject_known_projects.xml how we define this for the
>>> projects we support by default.
>>>
>>> For your main question, I'd start with some test code (outside a
>>> project, just for learning) that uses a ZMQ_STREAM socket to talk to
>>> your server. When this is working, you can wrap that in an actor that
>>> also uses a pipe to talk to the outside world. Then it uses a zpoller
>>> to work with these two sockets at once.
>>>
>>> There is not a lot of documentation on stream sockets, so I'd use the
>>> test cases (libzmq/tests/*stream*.cpp) as a starting point. Also the
>>> zmq_socket man page.
>>>
>>> -Pieter
>>>
>>>
>>>
>>> On Thu, Mar 10, 2016 at 12:19 PM, Greg Young <gregoryyoung1 at gmail.com> wrote:
>>>> I have been playing with czmq/zactor/zproject/etc the last few days
>>>> and have decided to do a small project to learn a bit more. Thus far I
>>>> am reasonably comfortable with zproject and how it works.
>>>>
>>>> The project I have decided to write is a client library for EventStore
>>>> http://github.com/eventstore/eventstore. The protocol already exists
>>>> and there are many clients. The protocol is basically full duplex tcp
>>>> with basic framing of protobuf serialized messages. All operations are
>>>> async.
>>>>
>>>> One issue I am running into is I am not quite sure how to structure my
>>>> connection actor (having dealt in actor systems before guessed I would
>>>> have a connection actor). From looking I havn't found a reasonable way
>>>> of building up a tcp client inside of an actor where everything is
>>>> asynchronous eg if I use direct OS calls how do I handle both
>>>> servicing the TCP socket and servicing my message pump on the actor?
>>>> There are currently very limited numbers of examples up on zactor (and
>>>> most are doing very basic things). Any help with how to structure this
>>>> or similar examples that may exist would be helpful.
>>>>
>>>> A second small issue. I have been unable to get zproject to use any
>>>> external libraries. When adding any library have tried both tarballs
>>>> and repositories I always end up with an error message of "undefined
>>>> expression use.test" from zproject_autotools.gsl:171. I don't have
>>>> enough experience yet with zproject to be able to resolve this.
>>>>
>>>> Cheers,
>>>>
>>>> Greg
>>>>
>>>> --
>>>> Studying for the Turing test
>>>> _______________________________________________
>>>> zeromq-dev mailing list
>>>> zeromq-dev at lists.zeromq.org
>>>> http://lists.zeromq.org/mailman/listinfo/zeromq-dev
>>> _______________________________________________
>>> zeromq-dev mailing list
>>> zeromq-dev at lists.zeromq.org
>>> http://lists.zeromq.org/mailman/listinfo/zeromq-dev
>>
>>
>>
>> --
>> Studying for the Turing test
>> _______________________________________________
>> zeromq-dev mailing list
>> zeromq-dev at lists.zeromq.org
>> http://lists.zeromq.org/mailman/listinfo/zeromq-dev
> _______________________________________________
> zeromq-dev mailing list
> zeromq-dev at lists.zeromq.org
> http://lists.zeromq.org/mailman/listinfo/zeromq-dev



-- 
Studying for the Turing test



More information about the zeromq-dev mailing list