# Changelog
## v0.13.0 (2025-10-29)
### Features
Added new module `NeoFaker.Internet` to handle internet-related data generation, including:
- `Internet.tld/1` for generating random top-level domains (TLDs).
- `Internet.user_name/1` for generating random usernames.
- `Internet.domain/1` for generating random domains.
- `Internet.popular_domain/0` for generating popular domains.
- `Internet.email/1` for generating random email addresses.
### Improvements
- Changed `.tool-versions` to `mise.toml` for better version management, now NeoFaker uses mise
as the version manager.
- Upgraded mix dependencies.
- Fixed typo in `cheat.cheatmd` file.
- Refactored `NeoFaker.Data.Cache` and `NeoFaker.Data.Disk` for improved file handling and caching
mechanisms.
### Module Changes
**Breaking Changes**: Renamed `NeoFaker.Http` to `NeoFaker.HTTP` for consistency.
## v0.12.0 (2025-06-10)
### Features
- Added `NeoFaker.Address` for generating random address components: building numbers, cities, countries, and coordinates.
- Added `NeoFaker.Time.time_zone/0` for generating random time zones.
### Improvements
- Unified and clarified documentation for all public functions.
- Refactored generator modules: `NeoFaker.Data.Cache`, `NeoFaker.Data.Disk`,
`NeoFaker.Data.Generator`, and `NeoFaker.Data.Resolver` for improved organization and
readability.
- Updated `NeoFaker.Data.Cache.put_cache!/3` to use `Stream.uniq/1` for duplicate removal before
caching.
- Upgraded mix dependencies.
**Breaking:** Renamed `NeoFaker.Internet` to `NeoFaker.HTTP` with expanded features.
#### `NeoFaker.http` (formerly `NeoFaker.Internet`)
- Added `Http.request_method/0` for random HTTP methods.
- Added `Http.referrer_policy/0` for random referrer policies.
- Added `Http.status_code/1` for random HTTP status codes with filtering.
- Enhanced `Http.user_agent/1` to support `:type` filtering (`:browser` or `:crawler`).
### Argument Standardization
**Breaking:** Default arguments now use explicit atoms:
- `NeoFaker.Color.hex/1` defaults to `:six_digit` (was `nil`).
- `NeoFaker.Color.keyword/1` defaults to `:all` (was `nil`).
### Organization & Locale
- Split large utility modules into smaller, focused modules.
- Improved documentation and examples.
- Added Indonesian locale support.