Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Releases: ableinc/myip

v0.2.1

24 Apr 01:31
@ableinc ableinc

Choose a tag to compare

Read , lines 1 to 30


What's new in v0.2.1

New feature: --local

Show the local machine's IPv4 and IPv6 addresses without any network calls.

myip --local
myip --local --json
  • Enumerates all active, non-loopback network interfaces
  • Reports all non-link-local unicast IPv4 addresses and IPv6 addresses
  • Prints (none) for a family if no addresses are found
  • --json outputs { "ipv4": [...], "ipv6": [...] }
  • Cannot be combined with --detail, --weather, --unit, or --no-cache
Assets 3
Loading

v0.2.0

23 Apr 23:22
@ableinc ableinc

Choose a tag to compare

Read , lines 1 to 270

Read

Here are the release notes ready to paste into the GitHub release page:


What's New

This is the initial public release of myip — a fast, zero-dependency CLI tool for looking up your public IP address and local weather from the terminal.

Features

IP geolocation

  • Displays your public IP address by default (single line, no noise)
  • --detail shows a full geolocation table: IP address, IP version, city, region, country, continent, latitude, longitude, ASN, and Cloudflare colo
  • Powered by the Cloudflare Radar API — no API key required

Weather

  • --weather shows current conditions at your detected IP location: temperature, feels like, humidity, weather code, wind speed, wind gusts, wind direction, pressure (MSL), surface pressure, precipitation, rain, showers, snowfall, and day/night status
  • Powered by the Open-Meteo API — no API key required
  • --unit celsius or --unit fahrenheit to override the temperature unit
  • Fahrenheit is auto-detected for US, BS, BZ, KY, LR, PW, FM, and MH

Output formats

  • Default: clean, aligned key/value table with coloured labels
  • --json outputs pretty-printed JSON for --detail, --weather, or both combined

Local cache

  • IP geolocation results are cached at ~/.myip/cache for 30 minutes
  • Cache writes are atomic (write to .tmp then rename)
  • --no-cache bypasses reading from and writing to the cache

Other

  • --version prints the version and exits
  • --help prints usage, all flags, cache details, and examples
  • Version is embedded at build time via -ldflags "-X main.version=$(VERSION)"
  • Zero external dependencies — stdlib only

Build

make build # builds ./myip at version 0.2.0
make build VERSION=x.y.z

Requirements

  • Go 1.23+
Loading

v1.0.1

03 Aug 21:39
@ableinc ableinc

Choose a tag to compare

Intelligent Caching System

  • Local caching of IP addresses in ~/.myip_cache.json
  • 1-hour cache validity - cached IPs are returned instantly if fetched within the last hour
  • Independent caching for IPv4 and IPv6 addresses
  • Cache bypass option with --no-cache flag for fresh lookups
  • Automatic cache updates when fetching new IP addresses

Performance & Reliability

  • 10-second timeout for HTTP requests to prevent hanging
  • IP address validation to ensure returned values are valid
  • Graceful error handling with meaningful error messages
  • Zero external dependencies - uses only Go standard library

Technical Details

  • Uses ipify.org API for IPv4/IPv6 lookups
  • Cache stored as JSON in user's home directory
Loading

v1.0.0

16 Mar 14:39
@ableinc ableinc

Choose a tag to compare

  • Smaller binary size (utilizing optimized build options)
  • Uses arguments instead of options, replace -v option with v4 or v6 in-line arguments
Loading

v0.0.1 - myip

06 Dec 23:56
@ableinc ableinc

Choose a tag to compare

The initial release.

Loading

AltStyle によって変換されたページ (->オリジナル) /