-
Notifications
You must be signed in to change notification settings - Fork 12.7k
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
Stabilize the "IP" feature #76098
Stabilize the "IP" feature #76098
Commits on Feb 28, 2021
-
stabilize the "ip" feature and document stability guarantees
Feature tracking issue: #27709 - Stabilize the following methods: - `IpAddr::is_global` - `IpAddr::is_documentation` - `Ipv4Addr::is_global` - `Ipv4addr::is_shared` - `Ipv4Addr::is_ietf_protocol_assignment` - `Ipv4addr::is_benchmarking` - `Ipv4Addr::is_reserved` - `Ipv6Addr::is_global` - `Ipv6Addr::is_unique_local` - `Ipv6Addr::is_unicast_link_local_strict` - `Ipv6Addr::is_unicast_link_local` - `Ipv6Addr::is_unicast_site_local` - `Ipv6Addr::is_documentation` - `Ipv6Addr::is_unicast_global` - `Ipv6Addr::multicast_scope` - Stabilize the following enum: `Ipv6MulticastScope` - Document IP helpers stability guarantees (fixes #60239)
Configuration menu - View commit details
-
Copy full SHA for 1a127d5 - Browse repository at this point
Copy the full SHA 1a127d5View commit details -
std::net: add Ipv6Multicastscope variants
Add variants for the currently reserved and un-assigned scopes. Since variants may be added in the future as new RFCs get published, we also make this enum #[non_exhaustive]. Ref: #66584 (comment)
Configuration menu - View commit details
-
Copy full SHA for 0910bbc - Browse repository at this point
Copy the full SHA 0910bbcView commit details -
Configuration menu - View commit details
-
Copy full SHA for 67742d4 - Browse repository at this point
Copy the full SHA 67742d4View commit details -
Apply suggestions from code review
Thanks again for the help with understanding the attributes! Co-authored-by: Ashley Mannix <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for d3fea20 - Browse repository at this point
Copy the full SHA d3fea20View commit details -
is_unicast_link_local_strict
-->is_unicast_link_local
Remove the looser `is_unicast_link_local` and rename `is_unicast_link_local_strict` as i suggested 😊 See #76098 (comment)
Configuration menu - View commit details
-
Copy full SHA for 22520cf - Browse repository at this point
Copy the full SHA 22520cfView commit details -
Configuration menu - View commit details
-
Copy full SHA for 2c005cb - Browse repository at this point
Copy the full SHA 2c005cbView commit details -
Configuration menu - View commit details
-
Copy full SHA for 707770c - Browse repository at this point
Copy the full SHA 707770cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 133c62d - Browse repository at this point
Copy the full SHA 133c62dView commit details -
Remove some more #![feature(ip)] stuff
Getting kind of extremely out of my comfort zone here and modifying quite a few different files...i hope this is all ok...
Configuration menu - View commit details
-
Copy full SHA for 23f40a3 - Browse repository at this point
Copy the full SHA 23f40a3View commit details -
Configuration menu - View commit details
-
Copy full SHA for 46bdfcb - Browse repository at this point
Copy the full SHA 46bdfcbView commit details -
Change checks for is_unicast_link_local_strict to is_unicast_link_local
I really...i'm terrified i'm breaking something here
Configuration menu - View commit details
-
Copy full SHA for ec63c55 - Browse repository at this point
Copy the full SHA ec63c55View commit details -
Configuration menu - View commit details
-
Copy full SHA for 6e6f745 - Browse repository at this point
Copy the full SHA 6e6f745View commit details -
Fix test cases that checked for relaxed behavior
Because of the changes made due to the discussion [here](#76098 (comment)), the checks for the more relaxed behavior of the old `is_unicast_link_local` method failed when they were tuned to the new, stricter checking behavior. These test cases have been modified to check that a given IPv6 address *is not* unicast link local, using a bitwise or'ing strategy that was already present in other test cases. Further discussion [here](https://rust-lang.zulipchat.com/#narrow/stream/212497-t-compiler.2Fhelp-wanted/topic/fix.20tests.20for.20.2376098).
Configuration menu - View commit details
-
Copy full SHA for 341dc82 - Browse repository at this point
Copy the full SHA 341dc82View commit details -
Restore the relaxed behavior of
is_unicast_link_local
This brings the behavior more in line with Go, Python, Linux, and C. I know, this should have been a `git revert` but honestly I don't trust myself with that and I just had a big mishap trying to merge upstream Rust anyway so forgive me :crying:
Configuration menu - View commit details
-
Copy full SHA for c90cc3d - Browse repository at this point
Copy the full SHA c90cc3dView commit details -
Revert "Fix test cases that checked for relaxed behavior"
This reverts commit e0f66e43da61d8fe8aadc6bcdc2545de51607332.
Configuration menu - View commit details
-
Copy full SHA for 8364ac0 - Browse repository at this point
Copy the full SHA 8364ac0View commit details -
Configuration menu - View commit details
-
Copy full SHA for 3cf1541 - Browse repository at this point
Copy the full SHA 3cf1541View commit details -
Configuration menu - View commit details
-
Copy full SHA for 96d1165 - Browse repository at this point
Copy the full SHA 96d1165View commit details -
Configuration menu - View commit details
-
Copy full SHA for 3825105 - Browse repository at this point
Copy the full SHA 3825105View commit details -
Adjust Ipv4-in-Ipv6 checking to ignore Ipv4-compatible addresses
Per [RFC 4291](https://tools.ietf.org/html/rfc4291#section-2.5.5.1), IPv6-Compatible IPv4 Addresses are deprecated and may be ignored, so let's ignore them! Also add some tests indicating that IPv6-Mapped addresses are treated specially, but IPv6-Compatible addresses are not.
Configuration menu - View commit details
-
Copy full SHA for 18773f9 - Browse repository at this point
Copy the full SHA 18773f9View commit details -
Revert "Adjust Ipv4-in-Ipv6 checking to ignore Ipv4-compatible addres…
…ses" This reverts commit 63329f9eadbba6da75a04cbf613f5701b06f71e5. Also, change the behavior of `to_ipv4` to ignore Ipv4-compatible addresses instead of adding another method `to_ipv4_mapped` and never ever using `to_ipv4` instead. Since this method is in stable.
Configuration menu - View commit details
-
Copy full SHA for a0d0771 - Browse repository at this point
Copy the full SHA a0d0771View commit details -
- Use new intra-doc linking - Clarify that the RFC's are IETF RFC's
Configuration menu - View commit details
-
Copy full SHA for 2c836b5 - Browse repository at this point
Copy the full SHA 2c836b5View commit details -
Configuration menu - View commit details
-
Copy full SHA for e3487cf - Browse repository at this point
Copy the full SHA e3487cfView commit details -
wow i hope i didn't mess something up
just did a really big rebase and i'm slightly concerned that i somehow tanked this whole branch but i guess we'll see
Configuration menu - View commit details
-
Copy full SHA for a1d4e70 - Browse repository at this point
Copy the full SHA a1d4e70View commit details