Skip to content

Releases: zkemail/zk-regex

2.1.0

26 Jun 03:39
Compare
Choose a tag to compare

Version 2.1.0

This is a full rewrite of the regex compiler in Rust (from Typescript) to support a very broad class of regex syntax. It has been audited once by zksecurity. You can see the report on https://www.zksecurity.xyz/reports/zkemail . Note that zkregex.com is not yet up to date and is still on version 1.2.

We have added:

  • wasm bindings
  • an enormous, 100+ test suite to ensure it works for a wide variety of regexes, including dollars, carets, negation, dollars, and international characters

Look at packages/compilers for installation and running instructions.

The regular expressions supported by this compiler have the following limitations:

  • Regular expressions where the results differ between greedy and lazy matching (e.g., .+, .+?) are not supported.
  • The beginning anchor ^ must either appear at the beginning of the regular expression or be in the format (|^). Additionally, the section containing this ^ must be non-public (is_public: false).
  • The end anchor $ must appear at the end of the regular expression.
  • Regular expressions that, when converted to DFA (Deterministic Finite Automaton), include transitions to the initial state are not supported (e.g., .*).
  • Regular expressions that, when converted to DFA, have multiple accepting states are not supported.

Full Changelog: 1.1.0...2.1.0

v1.2.0

15 Feb 16:09
Compare
Choose a tag to compare

@zk-email/zk-regex-apis 1.2.0
Replace typescript with rust in compiler.

v1.1.0

15 Feb 16:07
Compare
Choose a tag to compare

@zk-email/zk-regex-compiler 1.1.0
Replace typescript with rust in compiler.

v1.1.7

11 Feb 01:35
Compare
Choose a tag to compare

@zk-email/zk-regex-apis 1.1.7

  • Remove dependency on the zk-regex-compiler.
  • Add extractToAllIdxes and extractToAddrIdxes functions.

v1.0.9

11 Feb 01:34
Compare
Choose a tag to compare

@zk-email/zk-regex-compiler 1.0.9

  • Print the original regex definition and its substring state transitions into the output circom file.

v1.0.8

18 Dec 19:23
Compare
Choose a tag to compare

@zk-email/zk-regex-compiler 1.0.8

v1.1.6

18 Dec 19:22
Compare
Choose a tag to compare

@zk-email/zk-regex-apis 1.1.6

v1.0.7

03 Nov 02:31
Compare
Choose a tag to compare

@zk-email/zk-regex-compiler 1.0.7
Optimize the compiler by removing duplicated multi_or constraints.

v1.1.5

02 Nov 04:40
Compare
Choose a tag to compare

@zk-email/zk-regex-apis 1.1.5
Fix package.json to re-install the binary.

v1.0.6

02 Nov 04:40
Compare
Choose a tag to compare

@zk-email/zk-regex-compiler 1.0.6
Optimized the compiler by removing duplicated input checks.