Skip to content
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

UDP: testing and documentation #5772

Closed
StefanKarpinski opened this issue Feb 12, 2014 · 9 comments
Closed

UDP: testing and documentation #5772

StefanKarpinski opened this issue Feb 12, 2014 · 9 comments
Labels
domain:io Involving the I/O subsystem: libuv, read, write, etc. needs decision A decision on this change is needed test This change adds or pertains to unit tests
Milestone

Comments

@StefanKarpinski
Copy link
Sponsor Member

#5697 implemented basic UDP support but it is largely untested and entirely undocumented.

@JeffBezanson
Copy link
Sponsor Member

I'm well aware of the very different behavior of UDP, but I still wonder if we want to introduce the new send and recv functions for this. At this point it's pretty rare to add new functions for just one new type. Perhaps we should use read/write, or possibly match the interface of Channels (RemoteRefs).

cc @loladiro

@Keno
Copy link
Member

Keno commented Feb 13, 2014

The UDP abstraction is fundamentally different from the stream abstraction and needs to be separated, so I don't think read/write are the right functions to use. The RemoteRef abstraction is a better match, but I'm not sure what the interface would look like.

@StefanKarpinski
Copy link
Sponsor Member Author

Having higher level common APIs that can work with UDP or RemoteRefs or ZMQ or whatever is a nice extra, but the basic operations for UDP are send and recv.

@JeffBezanson
Copy link
Sponsor Member

I'm also not a huge fan of bind. I don't love that TcpSocket and UdpSocket have no useful constructors. For TCP it's not so bad since a single listen (or connect) suffices, but for UDP right now we seem to need 2 steps.

@Keno
Copy link
Member

Keno commented Feb 13, 2014

I considered adding send(ip,data) = send(UdpSocket(),ip,data), but I was afraid that people would just repeatedly call that rather than creating a single socket.

@JeffBezanson
Copy link
Sponsor Member

That seems like a good decision; I like the separation of send and having a thing to send to.

@jakebolewski
Copy link
Member

Can this be closed?

@ihnorton ihnorton added this to the 0.4 milestone Dec 13, 2014
@ihnorton ihnorton added needs decision A decision on this change is needed and removed status:help wanted Indicates that a maintainer wants help on an issue or pull request domain:docs This change adds or pertains to documentation labels Dec 15, 2014
@ihnorton
Copy link
Member

I added some basic docs. There are UDP tests in test/socket.jl. It seems like the remaining questions were API decisions so this can probably be closed if people are ok with the names now that this has been in use for a while.

ihnorton added a commit that referenced this issue Dec 16, 2014
(ref #5772)

(cherry picked from commit 1d8e162)

correct capitalization for 0.3
@vtjnash vtjnash closed this as completed Jan 14, 2016
@tkelman
Copy link
Contributor

tkelman commented Jan 14, 2016

The type itself is still undocumented.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
domain:io Involving the I/O subsystem: libuv, read, write, etc. needs decision A decision on this change is needed test This change adds or pertains to unit tests
Projects
None yet
Development

No branches or pull requests

7 participants