-
Notifications
You must be signed in to change notification settings - Fork 12.8k
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 (continued from #76098) #85585
Commits on May 22, 2021
-
stabilize the "ip" feature and document stability guarantees
Feature tracking issue: rust-lang#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 rust-lang#60239)
Configuration menu - View commit details
-
Copy full SHA for 02e835a - Browse repository at this point
Copy the full SHA 02e835aView 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: rust-lang#66584 (comment)
Configuration menu - View commit details
-
Copy full SHA for 7b7ca5d - Browse repository at this point
Copy the full SHA 7b7ca5dView commit details -
Configuration menu - View commit details
-
Copy full SHA for f33f945 - Browse repository at this point
Copy the full SHA f33f945View commit details -
Apply suggestions from code review
Thanks again for the help with understanding the attributes! Co-authored-by: Ashley Mannix <kodraus@hey.com>
Configuration menu - View commit details
-
Copy full SHA for 86e9b37 - Browse repository at this point
Copy the full SHA 86e9b37View 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 rust-lang#76098 (comment)
Configuration menu - View commit details
-
Copy full SHA for f91cb14 - Browse repository at this point
Copy the full SHA f91cb14View commit details -
Configuration menu - View commit details
-
Copy full SHA for 259ada1 - Browse repository at this point
Copy the full SHA 259ada1View commit details -
Configuration menu - View commit details
-
Copy full SHA for f15098f - Browse repository at this point
Copy the full SHA f15098fView commit details -
Configuration menu - View commit details
-
Copy full SHA for c8ca757 - Browse repository at this point
Copy the full SHA c8ca757View 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 392a21b - Browse repository at this point
Copy the full SHA 392a21bView commit details -
Configuration menu - View commit details
-
Copy full SHA for f5694dc - Browse repository at this point
Copy the full SHA f5694dcView 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 8de3caf - Browse repository at this point
Copy the full SHA 8de3cafView commit details -
Configuration menu - View commit details
-
Copy full SHA for f224551 - Browse repository at this point
Copy the full SHA f224551View commit details -
Fix test cases that checked for relaxed behavior
Because of the changes made due to the discussion [here](rust-lang#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 2db2b5d - Browse repository at this point
Copy the full SHA 2db2b5dView 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 c72ea14 - Browse repository at this point
Copy the full SHA c72ea14View commit details -
Revert "Fix test cases that checked for relaxed behavior"
This reverts commit e0f66e43da61d8fe8aadc6bcdc2545de51607332.
Configuration menu - View commit details
-
Copy full SHA for 179d376 - Browse repository at this point
Copy the full SHA 179d376View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4f77918 - Browse repository at this point
Copy the full SHA 4f77918View commit details -
Configuration menu - View commit details
-
Copy full SHA for 2f1078d - Browse repository at this point
Copy the full SHA 2f1078dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 0348e5e - Browse repository at this point
Copy the full SHA 0348e5eView 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 36792e8 - Browse repository at this point
Copy the full SHA 36792e8View 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 42b9a38 - Browse repository at this point
Copy the full SHA 42b9a38View 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 e6b76f0 - Browse repository at this point
Copy the full SHA e6b76f0View commit details -
Configuration menu - View commit details
-
Copy full SHA for f469444 - Browse repository at this point
Copy the full SHA f469444View 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 240a913 - Browse repository at this point
Copy the full SHA 240a913View commit details -
* Move libstd ip tests to their own module * Delete failing test; mapped addresses are never unspecified
Configuration menu - View commit details
-
Copy full SHA for 6c42f4a - Browse repository at this point
Copy the full SHA 6c42f4aView commit details