-
Notifications
You must be signed in to change notification settings - Fork 5.5k
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
Bugfix/rework: IPv6 scope errors #49705
Conversation
…dress object instance
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good 👍
Hi @isbm! 😄 There are some test failures that are related to this change:
Can you take another look? 😎 https://jenkinsci.saltstack.com/job/pr-kitchen-centos7-py3/job/PR-49705/9/ |
f8675f4
to
736246d
Compare
FWIW, upstream in Python we have precedent to suggest upstream fixes in ipaddress module. so I submitted https://bugs.python.org/issue34788 |
@aphor this doesn't really help, I've been there already. First, the issue is like three years old. Second, even they will fix in some upcoming versions, we still need this even on 2.7 and SUSE on 2.6 that is just simply EOL. Alas, if they finally get it done one day, we can incorporate that where it is needed. Will they fix it across everywhere? I doubt it. But having Salt crashing on scoped IPv6 today is simply a no go. |
@isbm I agree completely salt should not wait for upstream fix, but this is technical debt which would ideally be factored out of salt, and FWIW, salt isn't the only Python utility that I need to support IPv6. I put that stuff here, mostly because it will be useful in the future to have it here, for reference, not to imply we should not merge this PR into salt. |
@aphor after @rallytime puts that in (I am also going to backport that to 2018.3) let's look again at your PR. I am keeping an eye on yours and if you need any help, please ping me. |
I have been playing around with 2019.02 and the netbox pillar module is broken with Python 3. The changes in this PR fix the problem I have been having. Will this be merged into the 2019.02 release? |
What does this PR do?
ipaddress
.IPv6Address
object level.salt._compat
for code duplication and other issuesipaddress
across everywhereipaddress
instance for Python 3pass
.What issues does this PR fix or reference?
Previous Behavior
If your
/etc/resolv.conf
has a scope in IPv6 address, something like this:nameserver fe80::20d:b9ff:fe01:ea8%eth0
...then you are getting errors like this:
This is hitting users since 2016: #37949
New Behavior
🤘 😎 🤘
Tests written?
Existing should just pass.