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

Adopt go 1.18 net/netip package #39348

Open
howardjohn opened this issue Jun 8, 2022 · 14 comments
Open

Adopt go 1.18 net/netip package #39348

howardjohn opened this issue Jun 8, 2022 · 14 comments
Labels
help wanted Indicates a PR/Issue that needs community help lifecycle/staleproof Indicates a PR or issue has been deemed to be immune from becoming stale and/or automatically closed

Comments

@howardjohn
Copy link
Member

New package for IPs, CIDRs, etc. We should consider if it makes sense to replace any of our current usage, since the package is pretty nice. Not sure if it can replace our CIDR usages or not.

@istio-policy-bot istio-policy-bot added the lifecycle/stale Indicates a PR or issue hasn't been manipulated by an Istio team member for a while label Sep 7, 2022
@zirain zirain added community/help wanted lifecycle/staleproof Indicates a PR or issue has been deemed to be immune from becoming stale and/or automatically closed and removed lifecycle/stale Indicates a PR or issue hasn't been manipulated by an Istio team member for a while labels Sep 7, 2022
@istio-policy-bot istio-policy-bot added the lifecycle/stale Indicates a PR or issue hasn't been manipulated by an Istio team member for a while label Sep 7, 2022
@howardjohn
Copy link
Member Author

howardjohn commented Sep 7, 2022 via email

@istio-policy-bot istio-policy-bot removed the lifecycle/stale Indicates a PR or issue hasn't been manipulated by an Istio team member for a while label Sep 7, 2022
@saltbo
Copy link
Member

saltbo commented Oct 9, 2022

I want to try to submit a PR, hope to get some guidance.

@zhlsunshine
Copy link
Contributor

zhlsunshine commented Oct 10, 2022

Hi @howardjohn, @ramaraochavali & @hzxuzhonghu, there is a blog post explains the advantages of netaddr.IP over net.IP
So I suggest that the phase 1 should be that:

  1. use struct Addr defined in netip package: we can start from some places where use net.ip or net.ipaddr
  2. replace net.ParseIP into netip.ParseAddr

Any idea?

@saltbo
Copy link
Member

saltbo commented Oct 10, 2022

I found there are many net.ParseIP, and I want to replace the net.ParseCIDR first.

@saltbo
Copy link
Member

saltbo commented Oct 10, 2022

some third-party pkgs no update to netip, eg: yl2chen/cidranger#46 and https://github.com/vishvananda/netlink

@saltbo
Copy link
Member

saltbo commented Oct 13, 2022

pkg/dns/client depend on https://github.com/miekg/dns, but the mod seem no plan to upgrade to netip

miekg/dns#1388

@zhlsunshine
Copy link
Contributor

zhlsunshine commented Oct 25, 2022

More dependencies on

  1. https://github.com/yl2chen/cidranger which still use go 1.13
  2. https://github.com/vishvananda/netlink which still use go 1.12

@charles-chenzz
Copy link

hi, do we finish the migrate yet? if not can I join? @zhlsunshine

@zhlsunshine
Copy link
Contributor

Hi @charles-chenzz, I think the answer is no, sure, you can join to help on it. Thanks!

@kfaseela kfaseela added help wanted Indicates a PR/Issue that needs community help and removed community/help wanted labels Nov 28, 2023
@tjons
Copy link

tjons commented Jan 25, 2024

@howardjohn is there any work left to do here that I can help out with or has the migration been finished?

@linsun
Copy link
Member

linsun commented Jan 25, 2024

cc @zhlsunshine since you worked on this quite a bit ^^ @tjons is interested in helping out

@zhlsunshine
Copy link
Contributor

@linsun sure, it should be helpful if @tjons can join in.

@tjons
Copy link

tjons commented Jan 26, 2024

@zhlsunshine awesome, I'll work on it some this weekend. Anywhere in particular you'd suggest I start?

@zhlsunshine
Copy link
Contributor

@zhlsunshine awesome, I'll work on it some this weekend. Anywhere in particular you'd suggest I start?

@tjons I suggest that you can start from the istio-cni, then listener/endpoint builder related etc. Most of istio-cni has been changed, but I think there might be some missing for it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Indicates a PR/Issue that needs community help lifecycle/staleproof Indicates a PR or issue has been deemed to be immune from becoming stale and/or automatically closed
Projects
None yet
Development

No branches or pull requests

9 participants