Skip to main content
Latest
File

13.6.1

  • New features:

    • #1495 isLicensePlate @firlus
  • Fixes and Enhancements:

    • #1651 fix ReDOS vulnerabilities in isHSL and isEmail @tux-tn
    • #1644 isURL: Allow URLs to have only a username in the userinfo subcomponent @jbuchmann-coosto
    • #1633 isISIN: optimization @bmacnaughton
    • #1632 isIP: improved pattern for IPv4 and IPv6 @ognjenjevremovic
    • #1625 fix [A-z] regex range on some validators @bmacnaughton
    • #1620 fix docs @prahaladbelavadi
    • #1616 isMacAddress: improve regexes and options @fedeci
    • #1603 fix ReDOS vulnerabilities in isSlug and rtrim @fedeci
    • #1594 isIPRange: add support for IPv6 @neilime
    • #1577 isEAN: add support for EAN-14 @varsubham @tux-tn
    • #1566 isStrongPassword: add @ as a valid symbol @stingalleman
    • #1548 isBtcAddress: add base58 @ezkemboi
    • #1546 isFQDN: numeric domain names @tux-tn
  • New and Improved locales:

    • isIdentityCard, isPassportNumber:
      • #1595 IR @mhf-ir @fedeci
      • #1583 ar-LY @asghaier76 @tux-tn
      • #1574 MY @stranger26 @tux-tn
    • isMobilePhone:
    • isPostalCode:
    • isTaxID:
    • isVAT:

13.5.0 13.5.1

  • New features:

    • isVAT #1463 @ CodingNagger
    • isTaxID #1446 @tplessas
    • isBase58 #1445 @ezkemboi
    • isStrongPassword #1348 @door-bell
  • Fixes and Enhancements:

    • #1486 isISO8601: add strictSeparator @brostone51
    • #1474 isFQDN: make more strict @CristhianMotoche
    • #1469 isFQDN: allow_underscore option @gibson042
    • #1449 isEmail: character blacklisting @rubiin
    • #1436 isURL: added require_port option @yshanli
    • #1435 isEmail: respect ignore_max_length option @evantahler
    • #1402 isDate: add strictMode and prevent mixed delimiters @tux-tn
    • #1286 isAlpha: support ignore option @mum-never-proud
  • New and Improved locales:

    • isAlpha, isAlphanumeric:
    • isMobilePhone:
      • #1521 ar-MA @artpumpkin
      • #1492 de-LU,it-SM, sq-AL and ga-IE @firlus
      • #1487 en-HN @jehielmartinez
      • #1473 ar-LB, es-PE, ka-GE @rubiin
      • #1470 es-DO @devrasec
      • #1460 es-BO @rubiin
      • #1444 es-AR @csrgt
      • #1407 pt-BR @viniciushvsilva
    • isPostalCode:
    • isPassportNumber:

— this release is dedicated to @dbnandaa 🧒

13.1.17

  • New features:

    • None
  • Fixes and chores:

    • #1425 fix validation for userinfo part for isURL @heanzyzabala
    • #1419 fix isBase32 and isBase64 to validate empty strings properly @AberDerBart
    • #1408 tests for isTaxId @dspinellis
    • #1397 added validate_length option for isURL @tomgrossman
    • #1383 #1428 doc typos @0xflotus @timgates42
    • #1376 add missing tests and switch to Coverall @tux-tn
    • #1373 improve code coverage @ezkemboi
    • #1357 add Node v6 on build pipeline @profnandaa
  • New and Improved locales:

    • isMobilePhone:
      • #1439 az-AZ @saidfagan
      • #1420 uz-Uz @icyice0217
      • #1391 de-DE @heanzyzabala
      • #1388 en-PH @stinkymonkeyph
      • #1370 es-ES @rubiin
      • #1356 bs-BA @MladenZeljic
      • #1303 zh-CN @heathcliff-hu
    • isPostalCode:
    • isAlpha, isAlphanumeric:
      • #1411 fa-AF, fa-IR @stinkymonkeyph
      • #1371 vi-VN @rubiin
    • isBAN:
      • #1394 EG, SV @heanzyzabala
    • isIdentityCard:

13.1.1

  • Hotfix for a regex incompatibility in some browsers (#1355

13.1.0

13.0.0

12.2.0

12.1.0

  • ES module for webpack tree shaking (#1015)
  • Updated isIP() to accept scoped IPv6 addresses (#1160)
  • New and improved locales (#1162, #1183, #1187, #1191)

12.0.0

11.1.0

11.0.0

  • Added a isBase32() validator (#1023)
  • Updated isEmail() to validate display names according to RFC2822 (#1004)
  • Updated isEmail() to check total email length (#1007)
  • The internal toString() util is no longer exported (0277eb)
  • New and improved locales (#999, #1010, #1017, #1022, #1031, #1032)

10.11.0

  • Fix imports like import .. from "validator/lib/.." (#961)
  • New locale (#958)

10.10.0

  • isISO8601() strict mode now works in the browser (#932)
  • New and improved locales (#931, #933, #947, #950)

10.9.0

  • Added an option to isURL() to reject email-like URLs (#901)
  • Added a strict option to isISO8601() (#910)
  • Relaxed isJWT() signature requirements (#906)
  • New and improved locales (#899, #904, #913, #916, #925, #928)

10.8.0

  • Added isIdentityCard() (#846)
  • Better error when validators are passed an invalid type (#895)
  • Locales are now exported (#890, #892)
  • New locale (#896)

10.7.1

  • Ignore case when checking URL protocol (#887)
  • Locale fix (#889)

10.7.0

10.6.0

  • Updated isMobilePhone() to match any locale’s pattern by default (#874)
  • Added an option to ignore whitespace in isEmpty() (#880)
  • New and improved locales (#878, #879)

10.5.0

  • Disabled domain-specific email validation (#873)
  • Added support for IP hostnames in isEmail() (#845)
  • Added a no_symbols option to isNumeric() (#848)
  • Added a no_colons option to isMACAddress() (#849)
  • Updated isURL() to reject protocol relative URLs unless a flag is set (#860)
  • New and improved locales (#801, #856, #859, #861, #862, #863, #864, #870, #872)

10.4.0

  • Added an isIPRange() validator (#842)
  • Accept an array of locales in isMobilePhone() (#742)
  • New locale (#843)

10.3.0

10.2.0

  • Export the list of supported locales in isPostalCode() (#830)

10.1.0

  • Added an isISO31661Alpha3() validator (#809)

10.0.0

  • Allow floating points in isNumeric() (#810)
  • Disallow GMail addresses with multiple consecutive dots, or leading/trailing dots (#820)
  • Added an isRFC3339() validator (#816)
  • Reject domain parts longer than 63 octets in isFQDN(), isURL() and isEmail() (bb3e542)
  • Added a new Amex prefix to isCreditCard() (#805)
  • Fixed isFloat() min/max/gt/lt filters when a locale with a comma decimal is used (2b70821)
  • Normalize Yandex emails (#807)
  • New locales (#803)

9.4.1

  • Patched a REDOS vulnerability in isDataURI
  • New and improved locales (#788)

9.4.0

  • Added an option to isMobilePhone to require a country code (#769)
  • New and improved locales (#785)

9.3.0

9.2.0

  • Added an isMimeType() validator (#760)
  • New and improved locales (#753, #755, #764)

9.1.2

  • Fixed a bug with the isFloat validator (#752)

9.1.1

9.1.0

  • Added an isISO31661Alpha2() validator (#734)
  • New locales (#735, #737)

9.0.0

  • normalizeEmail() no longer validates the email address (#725)
  • Added locale-aware validation to isFloat() and isDecimal() (#721)
  • Added an isPort() validator (#733)
  • New locales (#731)

8.2.0

8.1.0

  • Fix require('validator/lib/isIS8601') calls (#688)
  • Added an isLatLong() and isPostalCode() validator (#684)
  • Allow comma in email display names (#692)
  • Add missing string to unescape() (#690)
  • Fix isMobilePhone() with Node <= 6.x (#681)
  • New locales (#695)

8.0.0

  • isURL() now requires the require_tld: false option to validate localhost (#675)
  • isURL() now rejects URLs that are protocol only (#642)
  • Fixed a bug where isMobilePhone() would silently return false if the locale was invalid or unsupported (#657)

7.2.0

  • Added an option to validate any phone locale (#663)
  • Fixed a bug in credit card validation (#672)
  • Disallow whitespace, including unicode whitespace, in TLDs (#677)
  • New locales (#673, #676)

7.1.0

7.0.0

  • Remove isDate()

6.3.0

6.2.1

  • Disallow < and > in URLs (#613)
  • New locales (#610)

6.2.0

  • Added an option to require an email display name (#607)
  • Added support for lt and gt to isInt() (#588)
  • New locales (#601)

6.1.0

  • Added support for greater or less than in isFloat() (#544)
  • Added support for ISSN validation via isISSN() (#593)
  • Fixed a bug in normalizeEmail() (#594)
  • New locales (#585)

6.0.0

  • Renamed isNull() to isEmpty() (#574)
  • Backslash is now escaped in escape() (#516)
  • Improved normalizeEmail() (#583)
  • Allow leading zeroes by default in isInt() (#532)

5.7.0

  • Added support for IPv6 in isURL() (#564)
  • Added support for urls without a host (e.g. file:///foo.txt) in isURL() (#563)
  • Added support for regular expressions in the isURL() host whitelist and blacklist (#562)
  • Added support for MasterCard 2-Series BIN (#576)
  • New locales (#575, #552)

5.6.0

5.5.0

  • Fixed a regex denial of service in trim() and rtrim() (#556)
  • Added an Algerian locale to isMobilePhone() (#540)
  • Fixed the Hungarian locale in isAlpha() and isAlphanumeric() (#541)
  • Added a Polish locale to isMobilePhone() (#545)

5.4.0

  • Accept Union Pay credit cards in isCreditCard() (#539)
  • Added Danish locale to isMobilePhone() (#538)
  • Added Hungarian locales to isAlpha(), isAlphanumeric() and isMobilePhone() (#537)

5.3.0

  • Added an allow_leading_zeroes option to isInt() (#532)
  • Adjust Chinese mobile phone validation (#523)
  • Added a Canadian locale to isMobilePhone() (#524)

5.2.0

  • Added a isDataURI() validator (#521)
  • Added Czech locales (#522)
  • Fixed a bug with isURL() when protocol was missing and “://” appeared in the query (#518)

5.1.0

  • Added a unescape() HTML function (#509)
  • Added a Malaysian locale to isMobilePhone() (#507)
  • Added Polish locales to isAlpha() and isAlphanumeric() (#506)
  • Added Turkish locales to isAlpha(), isAlphanumeric() and isMobilePhone() (#512)
  • Allow >1 underscore in hostnames when using allow_underscores (#510)

5.0.0

  • Migrate to ES6 (#496)
  • Break the library up so that individual functions can be imported (#496)
  • Remove auto-coercion of input to a string (#496)
  • Remove the extend() function (#496)
  • Added Arabic locales to isAlpha() and isAlphanumeric() (#496)
  • Fix validation of very large base64 strings (#503)

4.9.0

  • Added a Russian locale to isAlpha() and isAlphanumeric() (#499)
  • Remove the restriction on adjacent hyphens in hostnames (#500)

4.8.0

  • Added Spanish, French, Portuguese and Dutch support for isAlpha() and isAlphanumeric() (#492)
  • Added a Brazilian locale to isMobilePhone() (#489)
  • Reject IPv4 addresses with invalid zero padding (#490)
  • Fix the client-side version when used with RequireJS (#494)

4.7.1

4.7.0

  • Print a deprecation warning if validator input is not a string (1f67e1e). Note that this will be an error in v5.
  • Added a German locale to isMobilePhone(), isAlpha() and isAlphanumeric() (#477)
  • Added a Finnish locale to isMobilePhone() (#455)

4.6.1

  • Fix coercion of objects: Object.toString() is [object Object] not "" (a57f3c8)

4.6.0

  • Added a Spanish locale to isMobilePhone() (#481)
  • Fix string coercion of objects created with Object.create(null) (#484)

4.5.2

  • Fix a timezone issue with short-form ISO 8601 dates, e.g. validator.isDate('2011-12-21') (#480)

4.5.1

  • Make isLength() / isByteLength() accept {min, max} as options object. (#474)

4.5.0

  • Add validation for Indian mobile phone numbers (#471)
  • Tweak Greek and Chinese mobile phone validation (#467, #468)
  • Fixed a bug in isDate() when validating ISO 8601 dates without a timezone (#472)

4.4.1

  • Allow triple hyphens in IDNA hostnames (#466)

4.4.0

  • Added isMACAddress() validator (#458)
  • Added isWhitelisted() validator (#462)
  • Added a New Zealand locale to isMobilePhone() (#452)
  • Added options to control GMail address normalization (#460)

4.3.0

  • Support Ember CLI module definitions (#448)
  • Added a Vietnam locale to isMobilePhone() (#451)

4.2.1

  • Fix isDate() handling of RFC2822 timezones (#447)

4.2.0

  • Fix isDate() handling of ISO8601 timezones (#444)
  • Fix the incorrect isFloat('.') === true (#443)
  • Added a Norwegian locale to isMobilePhone() (#439)

4.1.0

  • General isDate() improvements (#431)
  • Tests now require node 4.0+ (#438)

4.0.6

  • Added a Taiwan locale to isMobilePhone() (#432)
  • Fixed a bug in isBefore() where it would return null (#436)

4.0.5

  • Fixed a denial of service vulnerability in the isEmail() regex (#152)

4.0.4

  • Reverted the leap year validation in isDate() as it introduced some regressions (#422, #423)

4.0.3

  • Added leap year validation to isDate() (#418)

4.0.2

  • Fixed isDecimal() with an empty string (#419)

4.0.1

  • Fixed isByteLength() with certain strings (09f0c6d)
  • Put length restrictions on email parts (#258)

4.0.0

  • Simplified the isEmail() regex and fixed some edge cases (#258)
  • Added ISO 8601 date validation via isISO8601() (#373)