+cabal-version: 3.0
name: email-validator
-version: 1.0.0
-cabal-version: >= 1.8
+version: 1.0.1
author: Michael Orlitzky
maintainer: Michael Orlitzky <michael@orlitzky.com>
-homepage: http://michael.orlitzky.com/code/email-validator.xhtml
+homepage: https://michael.orlitzky.com/code/email-validator.xhtml
+bug-reports: mailto:michael@orlitzky.com
category: Utils
-license: AGPL-3
+license: AGPL-3.0-or-later
license-file: doc/LICENSE
build-type: Simple
extra-source-files:
+ doc/COPYING
doc/man1/email-validator.1
synopsis:
Perform basic syntax and deliverability checks on email addresses.
description:
Validate an email address using three techniques:
- .
+
* Ensuring that the length of local and domain parts is within the
RFC-specified limits.
- .
+
* A syntax check using a regular expression, or the full RFC 5322
grammar (see the @--rfc5322@ option).
- .
+
* Confirmation of the existence of an @MX@ record for the domain part of
the address. This is not required; in fact many domains accept mail
via an @A@ record for e.g. example.com which is used in lieu of an @MX@
record. This behavior can be controlled via the @--accept-a@ flag.
- .
+
These checks are performed in parallel using the number of available
threads. To increase the number of threads, you can pass the
appropriate flag to the GHC runtime.
- .
+
This will set the number of threads to 25:
- .
+
@
$ email-validator +RTS -N25 < addresses.csv
@
- .
+
/Input/
- .
+
The @input@ (via stdin) should be a list of email addresses,
one per line. Empty lines will be ignored.
- .
+
/Output/
- .
+
Valid email addresses will be written to stdout, one per line.
executable email-validator
build-depends:
- base < 5,
+ base >= 4.15 && < 5,
bytestring >= 0.10,
cmdargs >= 0.10,
dns >= 2,
tasty >= 0.8,
tasty-hunit >= 0.8
+ default-language:
+ Haskell2010
+
main-is:
Main.hs
EmailAddress
Paths_email_validator
- ghc-options:
- -Weverything
- -Wno-implicit-prelude
- -Wno-safe
- -Wno-unsafe
- -Wno-all-missed-specialisations
- -rtsopts
- -threaded
- -optc-O3
- -optc-march=native
- -O2
+ autogen-modules:
+ Paths_email_validator
test-suite testsuite
type: exitcode-stdio-1.0
hs-source-dirs: src test
+ default-language: Haskell2010
main-is: TestSuite.hs
build-depends:
- base < 5,
+ base >= 4.15 && < 5,
bytestring >= 0.10,
- cmdargs >= 0.10,
- dns >= 2,
email-validate >= 2,
HUnit >= 1.2,
- parallel-io >= 0.3,
pcre-light >= 0.4,
tasty >= 0.8,
tasty-hunit >= 0.8
other-modules:
EmailAddress
- -- It's not entirely clear to me why I have to reproduce all of this.
- ghc-options:
- -Weverything
- -Wno-implicit-prelude
- -Wno-safe
- -Wno-unsafe
- -Wno-all-missed-specialisations
- -rtsopts
- -threaded
- -optc-O3
- -optc-march=native
- -O2
-
test-suite doctests
type: exitcode-stdio-1.0
hs-source-dirs: test
+ default-language: Haskell2010
main-is: Doctests.hs
build-depends:
- base < 5,
+ base >= 4.15 && < 5,
-- Additional test dependencies.
doctest >= 0.9
- -- It's not entirely clear to me why I have to reproduce all of this.
- ghc-options:
- -Wall
- -fwarn-hi-shadowing
- -fwarn-missing-signatures
- -fwarn-name-shadowing
- -fwarn-orphans
- -fwarn-type-defaults
- -fwarn-tabs
- -fwarn-incomplete-record-updates
- -fwarn-monomorphism-restriction
- -fwarn-unused-do-bind
- -rtsopts
- -threaded
- -optc-O3
- -optc-march=native
- -O2
-
-
source-repository head
type: git
- location: http://gitweb.michael.orlitzky.com/email-validator.git
+ location: https://gitweb.michael.orlitzky.com/email-validator.git
branch: master