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

Inconsistency in IPAddr / IpAddr? #9492

Closed
sbromberger opened this issue Dec 29, 2014 · 2 comments
Closed

Inconsistency in IPAddr / IpAddr? #9492

sbromberger opened this issue Dec 29, 2014 · 2 comments

Comments

@sbromberger
Copy link
Contributor

Perhaps a silly question:

IpAddr is in deprecated.jl in 0.4.x. It's both exported (export TcpSocket, UdpSocket, IpAddr) and reassigned (const IpAddr = IPAddr). If I understand it correctly, this produces an apparent inconsistency in which a deprecated object (IpAddr) is visible and returns IPAddr, but the non-deprecated object(IPAddr) is not exported. I'm not sure what the correct behavior is here, but it seems to me that either IPAddr should be exported, or NEITHER IPAddr nor IpAddr should.

in 0.3, IpAddr is not exported:

julia> IpAddr
ERROR: IpAddr not defined

julia> Base.IpAddr
IpAddr

julia> VERSION
v"0.3.4"

What is the proper behavior here?

Refs:

@mlubin
Copy link
Member

mlubin commented Dec 30, 2014

Given that IpAddr wasn't exported previously, it seems like an error to export it now that it's deprecated.

@sbromberger
Copy link
Contributor Author

I'd tend to agree, especially since IPAddr is an abstract class. The reason this is important is because it determines how to fix the lingering problem introduced in JuliaLang/Compat.jl#35 and whether or not the fix proposed in JuliaLang/Compat.jl#36 will (or should be allowed to) work.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants