File: control

package info (click to toggle)
re2j 1.5%2Bdfsg-2
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 1,744 kB
  • sloc: java: 11,911; sh: 128; perl: 98; xml: 11; makefile: 4
file content (47 lines) | stat: -rw-r--r-- 2,111 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
Source: re2j
Maintainer: Debian Java Maintainers <pkg-java-maintainers@lists.alioth.debian.org>
Uploaders: Vincent Prat <vivi@debian.org>
Section: libs
Priority: optional
Build-Depends: debhelper (>= 13),
               debhelper-compat (= 13),
               gradle-debian-helper,
               libicu4j-java,
               libjavapoet-java,
               maven-repo-helper
Standards-Version: 4.5.0
Vcs-Browser: https://salsa.debian.org/java-team/re2j
Vcs-Git: https://salsa.debian.org/java-team/re2j.git
Homepage: https://github.com/google/re2j
Rules-Requires-Root: no

Package: libre2j-java
Architecture: all
Multi-Arch: foreign
Section: java
Depends: ${shlibs:Depends},
         ${misc:Depends},
         ${java:Depends}
Description: RE2/J: linear time regular expression matching in Java
 RE2 is a regular expression engine that runs in time linear in the size of the
 input. RE2/J is a port of RE2 to pure Java.
 .
 Java's standard regular expression package, java.util.regex, and many other
 widely used regular expression packages such as PCRE, Perl and Python use a
 backtracking implementation strategy: when a pattern presents two alternatives
 such as a|b, the engine will try to match subpattern a first, and if that
 yields no match, it will reset the input stream and try to match b instead.
 .
 If such choices are deeply nested, this strategy requires an exponential
 number of passes over the input data before it can detect whether the input
 matches. If the input is large, it is easy to construct a pattern whose
 running time would exceed the lifetime of the universe. This creates a
 security risk when accepting regular expression patterns from untrusted
 sources, such as users of a web application.
 .
 In contrast, the RE2 algorithm explores all matches simultaneously in a single
 pass over the input data by using a nondeterministic finite automaton.
 .
 There are certain features of PCRE or Perl regular expressions that cannot be
 implemented in linear time, for example, backreferences, but the vast majority
 of regular expressions patterns in practice avoid such features.