-
New features:
- #1495
isLicensePlate
@firlus
- #1495
-
Fixes and Enhancements:
- #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
andrtrim
@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
- #1644
-
New and Improved locales:
-
New features:
-
Fixes and Enhancements:
- #1486
isISO8601
: addstrictSeparator
@brostone51 - #1474
isFQDN
: make more strict @CristhianMotoche - #1469
isFQDN
:allow_underscore
option @gibson042 - #1449
isEmail
: character blacklisting @rubiin - #1436
isURL
: addedrequire_port
option @yshanli - #1435
isEmail
: respectignore_max_length
option @evantahler - #1402
isDate
: add strictMode and prevent mixed delimiters @tux-tn - #1286
isAlpha
: supportignore
option @mum-never-proud
- #1486
-
New and Improved locales:
isAlpha
,isAlphanumeric
:isMobilePhone
:isPostalCode
:isPassportNumber
:
— this release is dedicated to @dbnandaa 🧒
-
New features:
- None
-
Fixes and chores:
- #1425 fix validation for userinfo part for
isURL
@heanzyzabala - #1419 fix
isBase32
andisBase64
to validate empty strings properly @AberDerBart - #1408 tests for
isTaxId
@dspinellis - #1397 added
validate_length
option forisURL
@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
- #1425 fix validation for userinfo part for
-
New and Improved locales:
- Hotfix for a regex incompatibility in some browsers (#1355
- Added an
isIMEI()
validator (#1346) - Added an
isDate()
validator (#1270) - Added an
isTaxID()
validator (#1336) - Added DMS support to
isLatLong()
(#1340) - Added support for URL-safe base64 validation (#1277)
- Added support for primitives in
isJSON()
(#1328) - Added support for case-insensitive matching to
contains()
(#1334) - Support additional cards in
isCreditCard()
(#1177) - Support additional currencies in
isCurrency()
(#1306) - Fixed
isFQDN()
handling of certain special chars (#1091) - Fixed a bug in
isSlug()
(#1338) - New and improved locales (#1112, #1167, #1198, #1199, #1273, #1279, #1281, #1293, #1294, #1311, #1312, #1313, #1314, #1315, #1317, #1322, #1324, #1330, #1337)
- Added
isEthereumAddress()
validator to validate Ethereum addresses (#1117) - Added
isBtcAddress()
validator to validate Bitcoin addresses (#1163) - Added
isIBAN()
validator to validate International Bank Account Numbers (#1243) - Added
isEAN()
validator to validate International Article Numbers (#1244) - Added
isSemVer()
validator to validate Semantic Version Numbers (#1246) - Added
isPassportNumber()
validator (#1250) - Added
isRgbColor()
validator (#1141) - Added
isHSL()
validator (#1159) - Added
isLocale()
validator (#1072) - Improved the
isIP()
validator (#1211) - Improved the
isMACAddress()
validator (#1267) - New and improved locales (#1238, #1265)
- Support CSS Colors Level 4 spec (#1233)
- Improve the
toFloat()
sanitizer (#1227) - New and improved locales (#1200, #1207, #1213, #1217, #1234)
- ES module for webpack tree shaking (#1015)
- Updated
isIP()
to accept scoped IPv6 addresses (#1160) - New and improved locales (#1162, #1183, #1187, #1191)
- Added
isOctal()
validator (#1153) - Added
isSlug()
validator (#1096) - Added
isBIC()
validator for bank identification codes (#1071) - Allow uppercase chars in
isHash()
(#1062) - Allow additional prefixes in
isHexadecimal()
(#1147) - Allow additional separators in
isMACAddress()
(#1065) - Better defaults for
isLength()
(#1070) - Bug fixes (#1074)
- New and improved locales (#1059, #1060, #1069, #1073, #1082, #1092, #1121, #1125, #1132, #1152, #1165, #1166, #1174)
- Code coverage improvements (#1024)
- New and improved locales (#1035, #1040, #1041, #1048, #1049, #1052, #1054, #1055, #1056, #1057)
- 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)
isISO8601()
strict mode now works in the browser (#932)- New and improved locales (#931, #933, #947, #950)
- Added an option to
isURL()
to reject email-like URLs (#901) - Added a
strict
option toisISO8601()
(#910) - Relaxed
isJWT()
signature requirements (#906) - New and improved locales (#899, #904, #913, #916, #925, #928)
- Added
isIdentityCard()
(#846) - Better error when validators are passed an invalid type (#895)
- Locales are now exported (#890, #892)
- New locale (#896)
- Added
isMagnetURI()
to validate magnet URIs (#884) - Added
isJWT()
to validate JSON web tokens (#885)
- 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)
- Disabled domain-specific email validation (#873)
- Added support for IP hostnames in
isEmail()
(#845) - Added a
no_symbols
option toisNumeric()
(#848) - Added a
no_colons
option toisMACAddress()
(#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)
- Added an
isIPRange()
validator (#842) - Accept an array of locales in
isMobilePhone()
(#742) - New locale (#843)
- Export the list of supported locales in
isPostalCode()
(#830)
- Added an
isISO31661Alpha3()
validator (#809)
- 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()
andisEmail()
(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)
- Fixed a bug with the
isFloat
validator (#752)
normalizeEmail()
no longer validates the email address (#725)- Added locale-aware validation to
isFloat()
andisDecimal()
(#721) - Added an
isPort()
validator (#733) - New locales (#731)
- Added an
isHash()
validator (#711) - Control decimal places in
isCurrency()
(#713) - New and improved locales (#700, #701, #714, #715, #718)
- Fix
require('validator/lib/isIS8601')
calls (#688) - Added an
isLatLong()
andisPostalCode()
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)
isURL()
now requires therequire_tld: false
option to validatelocalhost
(#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)
- 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)
- Added an
isISRC()
validator for ISRC (#660) - Fixed a bug in credit card validation (#670)
- Reduced the maximum allowed address in
isEmail()
based on RFC3696 errata (#655) - New locales (#647, #667, #667, #671)
- Remove
isDate()
- Added an option to require an email display name (#607)
- Added support for
lt
andgt
toisInt()
(#588) - New locales (#601)
- 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)
- Renamed
isNull()
toisEmpty()
(#574) - Backslash is now escaped in
escape()
(#516) - Improved
normalizeEmail()
(#583) - Allow leading zeroes by default in
isInt()
(#532)
- Added support for IPv6 in
isURL()
(#564) - Added support for urls without a host (e.g.
file:///foo.txt
) inisURL()
(#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)
- Added an
isMD5()
validator (#557) - Fixed an exceptional case in
isDate()
(#566) - New locales (#559, #568, #571, #573)
- Fixed a regex denial of service in
trim()
andrtrim()
(#556) - Added an Algerian locale to
isMobilePhone()
(#540) - Fixed the Hungarian locale in
isAlpha()
andisAlphanumeric()
(#541) - Added a Polish locale to
isMobilePhone()
(#545)
- Accept Union Pay credit cards in
isCreditCard()
(#539) - Added Danish locale to
isMobilePhone()
(#538) - Added Hungarian locales to
isAlpha()
,isAlphanumeric()
andisMobilePhone()
(#537)
- Added an
allow_leading_zeroes
option toisInt()
(#532) - Adjust Chinese mobile phone validation (#523)
- Added a Canadian locale to
isMobilePhone()
(#524)
- Added a
isDataURI()
validator (#521) - Added Czech locales (#522)
- Fixed a bug with
isURL()
when protocol was missing and "://" appeared in the query (#518)
- Added a
unescape()
HTML function (#509) - Added a Malaysian locale to
isMobilePhone()
(#507) - Added Polish locales to
isAlpha()
andisAlphanumeric()
(#506) - Added Turkish locales to
isAlpha()
,isAlphanumeric()
andisMobilePhone()
(#512) - Allow >1 underscore in hostnames when using
allow_underscores
(#510)
- 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()
andisAlphanumeric()
(#496) - Fix validation of very large base64 strings (#503)
- Added a Russian locale to
isAlpha()
andisAlphanumeric()
(#499) - Remove the restriction on adjacent hyphens in hostnames (#500)
- Added Spanish, French, Portuguese and Dutch support for
isAlpha()
andisAlphanumeric()
(#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)
- 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()
andisAlphanumeric()
(#477) - Added a Finnish locale to
isMobilePhone()
(#455)
- Fix coercion of objects:
Object.toString()
is[object Object]
not""
(a57f3c8)
- Added a Spanish locale to
isMobilePhone()
(#481) - Fix string coercion of objects created with
Object.create(null)
(#484)
- Fix a timezone issue with short-form ISO 8601 dates, e.g.
validator.isDate('2011-12-21')
(#480)
- Make
isLength()
/isByteLength()
accept{min, max}
as options object. (#474)
- 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)
- Allow triple hyphens in IDNA hostnames (#466)
- Added
isMACAddress()
validator (#458) - Added
isWhitelisted()
validator (#462) - Added a New Zealand locale to
isMobilePhone()
(#452) - Added options to control GMail address normalization (#460)
- Fix
isDate()
handling of RFC2822 timezones (#447)
- Fix
isDate()
handling of ISO8601 timezones (#444) - Fix the incorrect
isFloat('.') === true
(#443) - Added a Norwegian locale to
isMobilePhone()
(#439)
- Added a Taiwan locale to
isMobilePhone()
(#432) - Fixed a bug in
isBefore()
where it would returnnull
(#436)
- Fixed a denial of service vulnerability in the
isEmail()
regex (#152)
- Added leap year validation to
isDate()
(#418)
- Fixed
isDecimal()
with an empty string (#419)