emailsherlock/email-guard-bundle
Symfony bundle that blocks junk and disposable email addresses at form submit using local checks, before they reach your database. Optional EmailSherlock API key adds live MX and SMTP verification.
emailsherlock/email-guard-core: ^0.3, which adds the relay signal
(spec 1.2.0). block_on / review_on now accept relay alongside the
verdicts to deny or flag relay / forwarding / alias-masking senders (Apple
Hide My Email, SimpleLogin, addy.io, Cloudflare Email Routing). No bundle API
change: block_on / review_on already pass through to the core library.
(EM-1048)GuardDecisionEvent (EM-1014): dispatched for every decision (allow, deny,
review). Register a listener to handle blocks however you want (own log
channel, own store, metrics, webhook). Carries the result, the raw input,
and the extracted domain. The raw input is PII and the listener author owns
it; the domain is not personal data.GuardDecisionLogListener (same behaviour: logs denies as
email_guard.denied, domain only, key-independent). It is now one
subscriber on the event, replaceable or removable.psr/log moved from require-dev to require: VerifiedEmailValidator
references Psr\Log\LoggerInterface in src, so it is a runtime dependency
(in practice always present transitively via symfony/http-kernel, but now
declared correctly).VerifiedEmailValidator logs every
blocked decision via an optional PSR-3 logger (autowired in Symfony) as
email_guard.denied with domain, verdict, reasons, source. Domain only,
never the address. Gives operators visibility into what the local-only
guard filters without any API key, credits, or DB.GuardReporter
as a service (integration symfony-bundle), injects it into the guard
factory so every guard records decisions, and flushes the batch on
kernel.terminate via GuardTelemetryFlushListener. Key-gated and
fail-silent, so a form submit never waits on or breaks from the report.emailsherlock/email-guard-core ^0.2 (the reporter lives there).First release, built on email-guard-core 0.1 (email-guard-spec 1.0.0).
VerifiedEmail constraint + validator with per-constraint
blockOn / reviewOn overrides.'verify_email' => true form option via form type extension.api_key, block_on, review_on, fail_open, timeout_ms).EmailGuard and GuardFactory available as services for review flows.How can I help you explore Laravel packages today?