[pull] main from jason5ng32:main - #130
Merged
Merged
Conversation
rdap.js carried its own BigInt IP parser and CIDR containment; the new common/ip-math.js (strict parsers, RFC 5952 formatting, mask / count math, split / aggregate / range → CIDR) becomes the single implementation, bridged to the front-end for the upcoming IP Calculator. Bootstrap matching is unchanged; tests/rdap-ip.test.js still passes. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
classifyInput() recognises IPv4 / IPv6, prefixes (length or dotted mask), integers and hex, ranges, prefix lists and the inet_aton spellings browsers accept; calculate() derives display-ready analysis: IANA special-purpose blocks, subnet math, PTR names, obfuscated and embedded-IPv6 forms, Teredo / ULA / multicast decoding and EUI-64 → MAC recovery. Nothing throws and no BigInt reaches a template. MAC input is deliberately left to MAC Lookup. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
One smart input with example pills and the visitor's own IPs, result cards per kind (IPv4, IPv6, range, prefix list) built on a prefix slider + bitmap, value rows with copy buttons, and a subnet splitter. The query mirrors to ?q= so results are shareable. The splitter only follows the slider on release and value rows have a fixed min-height, so nothing below the thumb resizes mid-drag. Registered in tools.js with shortcut `a`; six locales. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
READMEs and the AGENTS overview list the new tool; frontend/AGENTS.md records the shareable `?q=` input pattern. TRANSLATING.md no longer quotes the number of changelog entries, which went stale on every release. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
The abacus reads as region-specific; 🔢 is the neutral choice, since Unicode's pocket calculator (U+1F5A9) has no colour emoji presentation. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Add a Sports import list (ESPN, NBA, FIFA, Premier League, Formula 1, DAZN, Flashscore, Sofascore, Sky Sports, beIN Sports, MLB, NFL), locale names, and favicons. Cricbuzz is already on the India list, so it is not duplicated. Closes #402
Add a Travel & Booking import list (Booking.com, Airbnb, Expedia, Skyscanner, Tripadvisor, Agoda, KAYAK, Trip.com, Hotels.com, MakeMyTrip), locale names, and favicons. Closes #403
Add Perplexity to the AI import list, plus its favicon. Hugging Face is already on the list. The earlier Replicate change was closed unmerged, so this uses a different site. Related to #399
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Feat(connectivity): add Perplexity to the AI list
Show a fixed preliminary test before the selected measurements and keep formal results independent. Start testing without waiting for charts or connection metadata, buffering samples until charts are ready. Add localized phase labels and immediate startup progress, reduce the formal latency sample count to 20, and document the improvement. Validation: pnpm check (1533 tests passed and build succeeded). Co-Authored-By: GPT-6 <noreply@openai.com>
Feat(connectivity): add Sports import list
Co-authored-by: Jason Ng <jason5ng32@users.noreply.github.com>
Keep both the Sports and Travel import lists.
Connectivity, WebRTC, DNS Leak and Rule Test cards only knew "Awaiting Test" and the final verdict, so a manual refresh left the label saying the test had not started while it was already running. A new StatusTesting sentinel is written the moment a run is scheduled, on boot and on refresh alike; "Awaiting Test" now only means the test has not been triggered (Connectivity with auto-run off). Tone and pulse stay on the wait level, the info mask skips the new placeholder, and the English ruletest.StatusWait drops its stray "or Test Error" suffix along with the translations derived from it. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Feat(connectivity): add Travel & Booking import list
Remove callback adapters while preserving record formatting and errors. Co-Authored-By: GPT-6 <noreply@openai.com>
Replace country-code-lookup with the existing Intl.DisplayNames helper. Co-Authored-By: GPT-6 <noreply@openai.com>
Keep a single probe and use bash.ws as a fallback after Surfshark. Co-Authored-By: GPT-6 <noreply@openai.com>
Adds SkyDNS (193.58.251.251) to api/data/dns-resolvers.js, giving Russia a second public resolver alongside Yandex.DNS, as invited in #390. UDP entry only: SkyDNS's DoH endpoint serves RFC 8484 wire format rather than the application/dns-json API this handler appends name=&type= to (same call as Yandex.DNS and CZ.NIC ODVR). Verified from outside RU: RA set, honest NXDOMAIN, non-truncated.
Reject ambiguous IPv4 input before geolocation requests reach upstreams. Cover shared validation, public-IP checks, and the API guard while preserving valid zero octets and IPv6 leading zeros. Co-Authored-By: GPT-6 <noreply@openai.com>
Feat(dns): add SkyDNS (Russia) resolver
Reuse pending, successful, and exhausted provider probes across cards. Keep refreshes isolated and collapse repeated observations in reports. Cover shared retry budgets, refresh races, and report deduplication. Co-Authored-By: GPT-6 <noreply@openai.com>
Update the input and query parameter when a slider change is committed. Preserve the host address and other query parameters, and keep dragging from replacing the URL. Cover IPv4, IPv6, and numeric inputs. Co-Authored-By: GPT-6 <noreply@openai.com>
Sync with Dev
This branch had an error being deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
See Commits and Changes for more details.
Created by
pull[bot] (v2.0.0-alpha.4)
Can you help keep this open source service alive? 💖 Please sponsor : )