Skip to content

Releases: harungecit/php-email-validator

v3.1.1

Choose a tag to compare

@harungecit harungecit released this 21 Sep 11:08

What's new

  • Blocklist updated to 8,948 domains — 785 new disposable domains from the disposable-email-domains project.
  • Subdomain detectionisDisposable() now also checks parent domains, so user@sub.mailinator.com is detected through the mailinator.com entry. The most specific list entry wins; on the same level the allowlist takes priority. Lookups use a hash index instead of a linear scan.
  • Automated list releases — a scheduled GitHub Actions workflow refreshes the blocklist every Monday and publishes a patch release when it changed, so a regular composer update keeps the list current.
  • composer update-lists now rebuilds the blocklist as upstream + data/blocklist.local.conf − allowlist, so upstream false-positive removals are applied (removed gmal.com, iwi.net, mailhub.pro). Added safety checks for unattended runs (--force overrides the shrink guard).

Full diff: v3.1.0...v3.1.1

v3.1.0

Choose a tag to compare

@harungecit harungecit released this 25 Jul 14:07

What's Changed

  • Updated the disposable blocklist to 8,166 domains (244 new domains from the disposable-email-domains project).
  • Expanded the allowlist to 199 domains (added proton.me, pm.me, hey.com, tuta.com, zohomail.com, icloud.com, duck.com, simplelogin.io, addy.io, and more). The upstream allowlist was discontinued; it is now maintained in this package.
  • Added composer update-lists (scripts/update-lists.php) to refresh the blocklist from upstream with a single command.
  • Expanded the default typo mappings and common-domain list (Proton, Tuta, HEY, Zoho Mail, GMX, Yandex, and regional Yahoo/Hotmail/Outlook domains) and synchronized them across all config templates.
  • Expanded the default role-based prefixes (administrator, donotreply, security, privacy, legal, compliance, notifications, and more).
  • Fetcher::saveList() now always writes LF line endings regardless of platform.

Full Changelog: v3.0.1...v3.1.0

v3.0.1

Choose a tag to compare

@harungecit harungecit released this 08 Jul 07:18
  • Requires PHP 8.0+ (dropped 7.4). Forward-compatible through PHP 8.5.
  • Added a rich ValidationResult object returned by the new validate() method, plus validateBatch().
  • Added Configuration and a fluent ConfigurationBuilder with strict, standard, basic, and minimal presets.
  • Added configuration file loading (PHP / JSON / YAML) via EmailValidator::fromConfigFile().
  • Added new checks: role-based detection, subaddress (plus addressing), typo suggestions (SuggestionResult), SMTP verification, and catch-all detection.
  • Added a pluggable cache layer with Memory, File, Redis, Memcached, PSR-16, and Null adapters.
  • Added token-bucket rate limiting with RateLimitExceededException.
  • Added PSR-3 logging support.
  • Added Laravel (service provider, facade, publishable config, validation rules) and Symfony (bundle, DI extension) integrations.
  • Updated the disposable blocklist to 7,900+ domains, synchronized with the disposable-email-domains project.
  • Fully backward compatible with the 2.x public API.

v2.0.0

Choose a tag to compare

@harungecit harungecit released this 15 Dec 09:39

v2.0.0 (December 2025)

  • Breaking Change: Namespace changed from PHPOrbit\EmailValidator to HarunGecit\EmailValidator
  • Breaking Change: Package name changed from phporbit/php-email-validator to harungecit/php-email-validator
  • Added batch/array email validation support (validateMultiple, filterValid, filterInvalid)
  • Added isValid() method for complete validation in one call
  • Added validateWithDetails() for detailed validation results
  • Added getStatistics() for batch validation statistics
  • Added static factory method EmailValidator::create()
  • Added fluent interface for list management
  • Added MX record caching
  • Added hasValidDNS() for A/AAAA record checking
  • Added email normalization methods
  • Added list management methods (add/remove domains)
  • Enhanced Fetcher with caching, custom list loading, and merge capabilities
  • Expanded test suite from 3 to 50+ test methods
  • Added multi-platform CI support (Ubuntu, Windows, macOS)
  • Added PHP 8.5 support

v1.0.2

Choose a tag to compare

@harungecit harungecit released this 22 Jan 08:00
Release version 1.0.2

v1.0.1

Choose a tag to compare

@harungecit harungecit released this 22 Jan 07:38
Release version 1.0.1