X-Git-Url: http://gitweb.michael.orlitzky.com/?a=blobdiff_plain;f=email-validator.cabal;h=5efa913fd15bea7b41538b3a44e201269d543f4e;hb=841348097246a32b9a4b9eee1063e80321e03905;hp=6bd5caf977c1cdbf6630c772acddae44613f6084;hpb=9c30c25bb499e843a40062e2bd1e118c515aa159;p=email-validator.git diff --git a/email-validator.cabal b/email-validator.cabal index 6bd5caf..5efa913 100644 --- a/email-validator.cabal +++ b/email-validator.cabal @@ -3,21 +3,62 @@ version: 0.0.1 cabal-version: >= 1.8 author: Michael Orlitzky maintainer: Michael Orlitzky +category: Utils +license: GPL-3 +license-file: doc/LICENSE +build-type: Simple +extra-source-files: + doc/man1/email-validator.1 synopsis: Perform basic syntax and deliverability checks on email addresses. -build-type: Simple +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 -i addresses.csv +RTS -N25 + @ + . + /Input/ + . + The @input@ file (default: stdin) should be a list of email addresses, + one per line. Empty lines will be ignored. + . + /Output/ + . + Valid email addresses will be written to the output file (default: + stdout), one per line. -executable email_validator +executable email-validator build-depends: base == 4.*, + bytestring == 0.10.*, + cmdargs == 0.10.*, + directory == 1.2.*, dns == 0.3.*, + email-validate == 1.*, HUnit == 1.2.*, - QuickCheck == 2.6.*, - regex-pcre == 0.94.*, + parallel-io == 0.3.*, + pcre-light >= 0.4, test-framework == 0.8.*, test-framework-hunit == 0.3.*, - test-framework-quickcheck2 == 0.3.*, utf8-string == 0.3.* main-is: @@ -26,6 +67,11 @@ executable email_validator hs-source-dirs: src/ + other-modules: + CommandLine + EmailAddress + ExitCodes + ghc-options: -Wall -fwarn-hi-shadowing @@ -37,9 +83,6 @@ executable email_validator -fwarn-incomplete-record-updates -fwarn-monomorphism-restriction -fwarn-unused-do-bind - -funbox-strict-fields - -fexcess-precision - -fno-spec-constr-count -rtsopts -threaded -optc-O3 @@ -58,13 +101,16 @@ test-suite testsuite main-is: TestSuite.hs build-depends: base == 4.*, + bytestring == 0.10.*, + cmdargs == 0.10.*, + directory == 1.2.*, dns == 0.3.*, + email-validate == 1.*, HUnit == 1.2.*, - QuickCheck == 2.6.*, - regex-pcre == 0.94.*, + parallel-io == 0.3.*, + pcre-light >= 0.4, test-framework == 0.8.*, test-framework-hunit == 0.3.*, - test-framework-quickcheck2 == 0.3.*, utf8-string == 0.3.* -- It's not entirely clear to me why I have to reproduce all of this. @@ -79,9 +125,6 @@ test-suite testsuite -fwarn-incomplete-record-updates -fwarn-monomorphism-restriction -fwarn-unused-do-bind - -funbox-strict-fields - -fexcess-precision - -fno-spec-constr-count -rtsopts -threaded -optc-O3