Hello community,
here is the log from the commit of package re2 for openSUSE:Factory checked in at 2018-10-23 20:34:02
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/re2 (Old)
and /work/SRC/openSUSE:Factory/.re2.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "re2"
Tue Oct 23 20:34:02 2018 rev:19 rq:642579 version:MACRO
Changes:
--------
--- /work/SRC/openSUSE:Factory/re2/re2.changes 2018-09-11 17:14:44.143646765 +0200
+++ /work/SRC/openSUSE:Factory/.re2.new/re2.changes 2018-10-23 20:34:09.308991279 +0200
@@ -1,0 +2,6 @@
+Wed Oct 17 09:01:20 UTC 2018 - Martin Pluskal
+
+- update to 2018-10-01:
+ * developer visible changes only
+
+-------------------------------------------------------------------
Old:
----
2018-09-01.tar.gz
New:
----
2018-10-01.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ re2.spec ++++++
--- /var/tmp/diff_new_pack.EVw51M/_old 2018-10-23 20:34:09.748990753 +0200
+++ /var/tmp/diff_new_pack.EVw51M/_new 2018-10-23 20:34:09.748990753 +0200
@@ -12,11 +12,11 @@
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
-# Please submit bugfixes or comments via http://bugs.opensuse.org/
+# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
-%global longver 2018-09-01
+%global longver 2018-10-01
%global shortver %(echo %{longver}|sed 's|-||g')
%define libname libre2-0
Name: re2
++++++ 2018-09-01.tar.gz -> 2018-10-01.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/re2-2018-09-01/.travis.yml new/re2-2018-10-01/.travis.yml
--- old/re2-2018-09-01/.travis.yml 2018-08-30 19:36:00.000000000 +0200
+++ new/re2-2018-10-01/.travis.yml 2018-09-28 12:00:36.000000000 +0200
@@ -143,6 +143,17 @@
- clang-6.0
env:
- MATRIX_EVAL="CC=clang-6.0 CXX=clang++-6.0"
+ - os: linux
+ addons:
+ apt:
+ sources:
+ - ubuntu-toolchain-r-test
+ - sourceline: 'deb https://apt.llvm.org/trusty/ llvm-toolchain-trusty-7 main'
+ key_url: 'https://apt.llvm.org/llvm-snapshot.gpg.key'
+ packages:
+ - clang-7
+ env:
+ - MATRIX_EVAL="CC=clang-7 CXX=clang++-7"
before_install:
- eval "${MATRIX_EVAL}"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/re2-2018-09-01/re2/fuzzing/re2_fuzzer.cc new/re2-2018-10-01/re2/fuzzing/re2_fuzzer.cc
--- old/re2-2018-09-01/re2/fuzzing/re2_fuzzer.cc 2018-08-30 19:36:00.000000000 +0200
+++ new/re2-2018-10-01/re2/fuzzing/re2_fuzzer.cc 2018-09-28 12:00:36.000000000 +0200
@@ -56,21 +56,31 @@
// Entry point for libFuzzer.
extern "C" int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size) {
- if (size == 0 || size > 512)
+ if (size == 0 || size > 999)
return 0;
- // Crudely limit the use of \p and \P.
+ // Crudely limit the use of ., \p and \P.
// Otherwise, we will waste time on inputs that have long runs of Unicode
// character classes. The fuzzer has shown itself to be easily capable of
// generating such patterns that fall within the other limits, but result
// in timeouts nonetheless. The marginal cost is high - even more so when
// counted repetition is involved - whereas the marginal benefit is zero.
+ int dot = 0;
int backslash_p = 0;
for (size_t i = 0; i < size; i++) {
- if (data[i] == '\\' && i+1 < size && (data[i+1] == 'p' || data[i+1] == 'P'))
+ if (data[i] == '.')
+ dot++;
+ if (data[i] != '\\')
+ continue;
+ i++;
+ if (i >= size)
+ break;
+ if (data[i] == 'p' || data[i] == 'P')
backslash_p++;
}
- if (backslash_p > 10)
+ if (dot > 99)
+ return 0;
+ if (backslash_p > 1)
return 0;
// The one-at-a-time hash by Bob Jenkins.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/re2-2018-09-01/re2/re2.h new/re2-2018-10-01/re2/re2.h
--- old/re2-2018-09-01/re2/re2.h 2018-08-30 19:36:00.000000000 +0200
+++ new/re2-2018-10-01/re2/re2.h 2018-09-28 12:00:36.000000000 +0200
@@ -549,8 +549,9 @@
// with (?i) unless in posix_syntax mode)
//
// The following options are only consulted when posix_syntax == true.
- // (When posix_syntax == false these features are always enabled and
- // cannot be turned off.)
+ // When posix_syntax == false, these features are always enabled and
+ // cannot be turned off; to perform multi-line matching in that case,
+ // begin the regexp with (?m).
// perl_classes (false) allow Perl's \d \s \w \D \S \W
// word_boundary (false) allow Perl's \b \B (word boundary and not)
// one_line (false) ^ and $ only match beginning and end of text