Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package gitleaks for openSUSE:Factory 
checked in at 2025-01-30 14:52:27
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/gitleaks (Old)
 and      /work/SRC/openSUSE:Factory/.gitleaks.new.2316 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "gitleaks"

Thu Jan 30 14:52:27 2025 rev:20 rq:1241281 version:8.23.3

Changes:
--------
--- /work/SRC/openSUSE:Factory/gitleaks/gitleaks.changes        2025-01-25 
19:13:21.118802513 +0100
+++ /work/SRC/openSUSE:Factory/.gitleaks.new.2316/gitleaks.changes      
2025-01-30 14:52:41.689134525 +0100
@@ -1,0 +2,10 @@
+Thu Jan 30 05:54:54 UTC 2025 - opensuse_buildserv...@ojkastl.de
+
+- Update to version 8.23.3:
+  * Don't exit with error if git repacking is required (#1711)
+  * refactor(config): use non-capture groups for allowlists (#1735)
+  * chore: Enhance `curl-auth-user` to detect empty usernames or
+    passwords (#1726)
+  * fix(cmd): read log-opts before GitLogCmd (#1730)
+
+-------------------------------------------------------------------

Old:
----
  gitleaks-8.23.2.obscpio

New:
----
  gitleaks-8.23.3.obscpio

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ gitleaks.spec ++++++
--- /var/tmp/diff_new_pack.EOzUB1/_old  2025-01-30 14:52:42.229156801 +0100
+++ /var/tmp/diff_new_pack.EOzUB1/_new  2025-01-30 14:52:42.229156801 +0100
@@ -18,7 +18,7 @@
 
 
 Name:           gitleaks
-Version:        8.23.2
+Version:        8.23.3
 Release:        0
 Summary:        Protect and discover secrets using Gitleaks
 License:        MIT

++++++ _service ++++++
--- /var/tmp/diff_new_pack.EOzUB1/_old  2025-01-30 14:52:42.261158121 +0100
+++ /var/tmp/diff_new_pack.EOzUB1/_new  2025-01-30 14:52:42.265158286 +0100
@@ -3,7 +3,7 @@
     <param name="url">https://github.com/zricethezav/gitleaks</param>
     <param name="scm">git</param>
     <param name="exclude">.git</param>
-    <param name="revision">v8.23.2</param>
+    <param name="revision">v8.23.3</param>
     <param name="versionformat">@PARENT_TAG@</param>
     <param name="versionrewrite-pattern">v(.*)</param>
     <param name="changesgenerate">enable</param>

++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.EOzUB1/_old  2025-01-30 14:52:42.285159111 +0100
+++ /var/tmp/diff_new_pack.EOzUB1/_new  2025-01-30 14:52:42.289159276 +0100
@@ -1,6 +1,6 @@
 <servicedata>
 <service name="tar_scm">
                 <param 
name="url">https://github.com/zricethezav/gitleaks</param>
-              <param 
name="changesrevision">d88bc094f782a1c265ebac4bdd5c14a8403e7339</param></service></servicedata>
+              <param 
name="changesrevision">3188ad60055da792f5dd2bba21a88f4d5be80f96</param></service></servicedata>
 (No newline at EOF)
 

++++++ gitleaks-8.23.2.obscpio -> gitleaks-8.23.3.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gitleaks-8.23.2/cmd/detect.go 
new/gitleaks-8.23.3/cmd/detect.go
--- old/gitleaks-8.23.2/cmd/detect.go   2025-01-23 02:15:25.000000000 +0100
+++ new/gitleaks-8.23.3/cmd/detect.go   2025-01-29 02:58:15.000000000 +0100
@@ -96,10 +96,10 @@
                }
        } else {
                var (
+                       logOpts     = mustGetStringFlag(cmd, "log-opts")
                        gitCmd      *sources.GitCmd
                        scmPlatform scm.Platform
                        remote      *detect.RemoteInfo
-                       logOpts     string
                )
                if gitCmd, err = sources.NewGitLogCmd(source, logOpts); err != 
nil {
                        logging.Fatal().Err(err).Msg("could not create Git cmd")
@@ -110,7 +110,6 @@
                if remote, err = detect.NewRemoteInfo(scmPlatform, source); err 
!= nil {
                        logging.Fatal().Err(err).Msg("failed to scan Git 
repository")
                }
-               logOpts = mustGetStringFlag(cmd, "log-opts")
 
                if findings, err = detector.DetectGit(gitCmd, remote); err != 
nil {
                        // don't exit on error, just log it
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gitleaks-8.23.2/cmd/generate/config/base/config.go 
new/gitleaks-8.23.3/cmd/generate/config/base/config.go
--- old/gitleaks-8.23.2/cmd/generate/config/base/config.go      2025-01-23 
02:15:25.000000000 +0100
+++ new/gitleaks-8.23.3/cmd/generate/config/base/config.go      2025-01-29 
02:58:15.000000000 +0100
@@ -33,9 +33,9 @@
                                }(),
 
                                // ----------- Environment Variables -----------
-                               regexp.MustCompile(`^\$(\d+|{\d+})$`),
-                               regexp.MustCompile(`^\$([A-Z_]+|[a-z_]+)$`),
-                               regexp.MustCompile(`^\${([A-Z_]+|[a-z_]+)}$`),
+                               regexp.MustCompile(`^\$(?:\d+|{\d+})$`),
+                               regexp.MustCompile(`^\$(?:[A-Z_]+|[a-z_]+)$`),
+                               regexp.MustCompile(`^\${(?:[A-Z_]+|[a-z_]+)}$`),
 
                                // ----------- Interpolated Variables 
-----------
                                // Ansible 
(https://docs.ansible.com/ansible/latest/playbook_guide/playbooks_variables.html)
@@ -43,14 +43,14 @@
                                // GitHub Actions
                                // 
https://docs.github.com/en/actions/writing-workflows/choosing-what-your-workflow-does/store-information-in-variables
                                // 
https://docs.github.com/en/actions/security-for-github-actions/security-guides/using-secrets-in-github-actions
-                               regexp.MustCompile(`^\$\{\{[ 
\t]*((env|github|secrets|vars)(\.[A-Za-z]\w+)+[\w "'&./=|]*)[ \t]*}}$`),
+                               regexp.MustCompile(`^\$\{\{[ 
\t]*(?:(?:env|github|secrets|vars)(?:\.[A-Za-z]\w+)+[\w "'&./=|]*)[ \t]*}}$`),
                                // NuGet 
(https://learn.microsoft.com/en-us/nuget/reference/nuget-config-file#using-environment-variables)
-                               regexp.MustCompile(`^%([A-Z_]+|[a-z_]+)%$`),
+                               regexp.MustCompile(`^%(?:[A-Z_]+|[a-z_]+)%$`),
                                // String formatting.
                                regexp.MustCompile(`^%[+\-# 
0]?[bcdeEfFgGoOpqstTUvxX]$`), // Golang (https://pkg.go.dev/fmt)
                                regexp.MustCompile(`^\{\d{0,2}}$`),             
          // Python (https://docs.python.org/3/tutorial/inputoutput.html)
                                // Urban Code Deploy 
(https://www.ibm.com/support/pages/replace-token-step-replaces-replacement-values-windows-variables)
-                               regexp.MustCompile(`^@([A-Z_]+|[a-z_]+)@$`),
+                               regexp.MustCompile(`^@(?:[A-Z_]+|[a-z_]+)@$`),
 
                                // ----------- Miscellaneous -----------
                        },
@@ -58,42 +58,42 @@
                                regexp.MustCompile(`gitleaks\.toml`),
 
                                // ----------- Documents and media -----------
-                               
regexp.MustCompile(`(?i)\.(bmp|gif|jpe?g|svg|tiff?)$`), // Images
-                               regexp.MustCompile(`\.(eot|[ot]tf|woff2?)$`),   
        // Fonts
-                               
regexp.MustCompile(`(.*?)(doc|docx|zip|xls|pdf|bin|socket|vsidx|v2|suo|wsuo|.dll|pdb|exe|gltf)$`),
+                               
regexp.MustCompile(`(?i)\.(?:bmp|gif|jpe?g|png|svg|tiff?)$`), // Images
+                               
regexp.MustCompile(`(?i)\.(?:eot|[ot]tf|woff2?)$`),           // Fonts
+                               
regexp.MustCompile(`(?i)\.(?:docx?|xlsx?|pdf|bin|socket|vsidx|v2|suo|wsuo|.dll|pdb|exe|gltf|zip)$`),
 
                                // ----------- Golang files -----------
-                               
regexp.MustCompile(`go\.(mod|sum|work(\.sum)?)$`),
-                               regexp.MustCompile(`(^|/)vendor/modules\.txt$`),
-                               
regexp.MustCompile(`(^|/)vendor/(github\.com|golang\.org/x|google\.golang\.org|gopkg\.in|istio\.io|k8s\.io|sigs\.k8s\.io)(/.*)?$`),
+                               
regexp.MustCompile(`go\.(?:mod|sum|work(?:\.sum)?)$`),
+                               
regexp.MustCompile(`(?:^|/)vendor/modules\.txt$`),
+                               
regexp.MustCompile(`(?:^|/)vendor/(?:github\.com|golang\.org/x|google\.golang\.org|gopkg\.in|istio\.io|k8s\.io|sigs\.k8s\.io)(?:/.*)?$`),
 
                                // ----------- Java files -----------
                                // Gradle
-                               regexp.MustCompile(`(^|/)gradlew(\.bat)?$`),
-                               regexp.MustCompile(`(^|/)gradle\.lockfile$`),
-                               regexp.MustCompile(`(^|/)mvnw(\.cmd)?$`),
-                               
regexp.MustCompile(`(^|/)\.mvn/wrapper/MavenWrapperDownloader\.java$`),
+                               regexp.MustCompile(`(?:^|/)gradlew(?:\.bat)?$`),
+                               regexp.MustCompile(`(?:^|/)gradle\.lockfile$`),
+                               regexp.MustCompile(`(?:^|/)mvnw(?:\.cmd)?$`),
+                               
regexp.MustCompile(`(?:^|/)\.mvn/wrapper/MavenWrapperDownloader\.java$`),
 
                                // ----------- JavaScript files -----------
                                // Dependencies and lock files.
-                               regexp.MustCompile(`(^|/)node_modules(/.*)?$`),
-                               
regexp.MustCompile(`(^|/)(npm-shrinkwrap\.json|package-lock\.json|pnpm-lock\.yaml|yarn\.lock)$`),
-                               
regexp.MustCompile(`(^|/)bower_components(/.*)?$`),
+                               
regexp.MustCompile(`(?:^|/)node_modules(?:/.*)?$`),
+                               
regexp.MustCompile(`(?:^|/)(?:npm-shrinkwrap\.json|package-lock\.json|pnpm-lock\.yaml|yarn\.lock)$`),
+                               
regexp.MustCompile(`(?:^|/)bower_components(?:/.*)?$`),
                                // TODO: Add more common static assets, such as 
swagger-ui.
-                               
regexp.MustCompile(`(^|/)(angular|bootstrap|jquery(-?ui)?|plotly|swagger-?ui)[a-zA-Z0-9.-]*(\.min)?\.js(\.map)?$`),
-                               regexp.MustCompile(`(^|/)javascript\.json$`),
+                               
regexp.MustCompile(`(?:^|/)(?:angular|bootstrap|jquery(?:-?ui)?|plotly|swagger-?ui)[a-zA-Z0-9.-]*(?:\.min)?\.js(?:\.map)?$`),
+                               regexp.MustCompile(`(?:^|/)javascript\.json$`),
 
                                // ----------- Python files -----------
                                // Dependencies and lock files.
-                               
regexp.MustCompile(`(^|/)(Pipfile|poetry)\.lock$`),
+                               
regexp.MustCompile(`(?:^|/)(?:Pipfile|poetry)\.lock$`),
                                // Virtual environments
-                               
regexp.MustCompile(`(?i)/?(v?env|virtualenv)/lib(64)?(/.*)?$`),
-                               
regexp.MustCompile(`(?i)(^|/)(lib(64)?/python[23](\.\d{1,2})+|python/[23](\.\d{1,2})+/lib(64)?)(/.*)?$`),
+                               
regexp.MustCompile(`(?i)(?:^|/)(?:v?env|virtualenv)/lib(?:64)?(?:/.*)?$`),
+                               
regexp.MustCompile(`(?i)(?:^|/)(?:lib(?:64)?/python[23](?:\.\d{1,2})+|python/[23](?:\.\d{1,2})+/lib(?:64)?)(?:/.*)?$`),
                                // dist-info directory 
(https://py-pkgs.org/04-package-structure.html#building-sdists-and-wheels)
-                               
regexp.MustCompile(`(?i)(^|/)[a-z0-9_.]+-[0-9.]+\.dist-info(/.+)?$`),
+                               
regexp.MustCompile(`(?i)(?:^|/)[a-z0-9_.]+-[0-9.]+\.dist-info(?:/.+)?$`),
 
                                // ----------- Ruby files -----------
-                               
regexp.MustCompile(`(^|/)vendor/(bundle|ruby)(/.*?)?$`),
+                               
regexp.MustCompile(`(?:^|/)vendor/(?:bundle|ruby)(?:/.*?)?$`),
                                regexp.MustCompile(`\.gem$`), // tar archive
 
                                // Misc
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/gitleaks-8.23.2/cmd/generate/config/base/config_test.go 
new/gitleaks-8.23.3/cmd/generate/config/base/config_test.go
--- old/gitleaks-8.23.2/cmd/generate/config/base/config_test.go 2025-01-23 
02:15:25.000000000 +0100
+++ new/gitleaks-8.23.3/cmd/generate/config/base/config_test.go 2025-01-29 
02:58:15.000000000 +0100
@@ -4,70 +4,70 @@
        "testing"
 )
 
-func TestConfigAllowlistRegexes(t *testing.T) {
-       tests := map[string]struct {
-               invalid []string
-               valid   []string
-       }{
-               "general placeholders": {
-                       invalid: []string{
-                               `true`, `True`, `false`, `False`, `null`, 
`NULL`,
-                       },
-               },
-               "general placeholders - repeated characters": {
-                       invalid: []string{
-                               `aaaaaaaaaaaaaaaaa`, `BBBBBBBBBBbBBBBBBBbBB`, 
`********************`,
-                       },
-                       valid: []string{`aaaaaaaaaaaaaaaaaaabaa`, 
`pas*************d`},
-               },
-               "environment variables": {
-                       invalid: []string{`$2`, `$GIT_PASSWORD`, 
`${GIT_PASSWORD}`, `$password`},
-                       valid:   []string{`$yP@R.@=ibxI`, `$2a6WCust9aE`, 
`${not_complete1`},
-               },
-               "interpolated variables - ansible": {
-                       invalid: []string{
-                               `{{ x }}`, `{{ password }}`, `{{password}}`, 
`{{ data.proxy_password }}`,
-                               `{{ dict1 | ansible.builtin.combine(dict2) }}`,
-                       },
-               },
-               "interpolated variables - github actions": {
-                       invalid: []string{
-                               `${{ env.First_Name }}`,
-                               `${{ env.DAY_OF_WEEK == 'Monday' }}`,
-                               `${{env.JAVA_VERSION}}`,
-                               `${{ github.event.issue.title }}`,
-                               `${{ github.repository == 
"Gattocrucco/lsqfitgp" }}`,
-                               `${{ github.event.pull_request.number || 
github.ref }}`,
-                               `${{ github.event_name == 'pull_request' && 
github.event.action == 'unassigned' }}`,
-                               `${{ secrets.SuperSecret }}`,
-                               `${{ vars.JOB_NAME }}`,
-                               `${{ vars.USE_VARIABLES == 'true' }}`,
-                       },
-               },
-               "interpolated variables - nuget": {
-                       invalid: []string{
-                               `%MY_PASSWORD%`, `%password%`,
-                       },
-               },
-               "interpolated variables - string fmt - golang": {
-                       invalid: []string{
-                               `%b`, `%c`, `%d`, `% d`, `%e`, `%E`, `%f`, 
`%F`, `%g`, `%G`, `%o`, `%O`, `%p`, `%q`, `%-s`, `%s`, `%t`, `%T`, `%U`, `%#U`, 
`%+v`, `%#v`, `%v`, `%x`, `%X`,
-                       },
-               },
-               "interpolated variables - string fmt - python": {
-                       invalid: []string{
-                               `{}`, `{0}`, `{10}`,
-                       },
-               },
-               "interpolated variables - ucd": {
-                       invalid: []string{`@password@`, `@LDAP_PASS@`},
-                       valid:   []string{`@username@mastodon.example`},
-               },
-       }
+var allowlistRegexTests = map[string]struct {
+       invalid []string
+       valid   []string
+}{
+       "general placeholders": {
+               invalid: []string{
+                       `true`, `True`, `false`, `False`, `null`, `NULL`,
+               },
+       },
+       "general placeholders - repeated characters": {
+               invalid: []string{
+                       `aaaaaaaaaaaaaaaaa`, `BBBBBBBBBBbBBBBBBBbBB`, 
`********************`,
+               },
+               valid: []string{`aaaaaaaaaaaaaaaaaaabaa`, `pas*************d`},
+       },
+       "environment variables": {
+               invalid: []string{`$2`, `$GIT_PASSWORD`, `${GIT_PASSWORD}`, 
`$password`},
+               valid:   []string{`$yP@R.@=ibxI`, `$2a6WCust9aE`, 
`${not_complete1`},
+       },
+       "interpolated variables - ansible": {
+               invalid: []string{
+                       `{{ x }}`, `{{ password }}`, `{{password}}`, `{{ 
data.proxy_password }}`,
+                       `{{ dict1 | ansible.builtin.combine(dict2) }}`,
+               },
+       },
+       "interpolated variables - github actions": {
+               invalid: []string{
+                       `${{ env.First_Name }}`,
+                       `${{ env.DAY_OF_WEEK == 'Monday' }}`,
+                       `${{env.JAVA_VERSION}}`,
+                       `${{ github.event.issue.title }}`,
+                       `${{ github.repository == "Gattocrucco/lsqfitgp" }}`,
+                       `${{ github.event.pull_request.number || github.ref }}`,
+                       `${{ github.event_name == 'pull_request' && 
github.event.action == 'unassigned' }}`,
+                       `${{ secrets.SuperSecret }}`,
+                       `${{ vars.JOB_NAME }}`,
+                       `${{ vars.USE_VARIABLES == 'true' }}`,
+               },
+       },
+       "interpolated variables - nuget": {
+               invalid: []string{
+                       `%MY_PASSWORD%`, `%password%`,
+               },
+       },
+       "interpolated variables - string fmt - golang": {
+               invalid: []string{
+                       `%b`, `%c`, `%d`, `% d`, `%e`, `%E`, `%f`, `%F`, `%g`, 
`%G`, `%o`, `%O`, `%p`, `%q`, `%-s`, `%s`, `%t`, `%T`, `%U`, `%#U`, `%+v`, 
`%#v`, `%v`, `%x`, `%X`,
+               },
+       },
+       "interpolated variables - string fmt - python": {
+               invalid: []string{
+                       `{}`, `{0}`, `{10}`,
+               },
+       },
+       "interpolated variables - ucd": {
+               invalid: []string{`@password@`, `@LDAP_PASS@`},
+               valid:   []string{`@username@mastodon.example`},
+       },
+}
 
+func TestConfigAllowlistRegexes(t *testing.T) {
        cfg := CreateGlobalConfig()
        allowlist := cfg.Allowlist
-       for name, cases := range tests {
+       for name, cases := range allowlistRegexTests {
                t.Run(name, func(t *testing.T) {
                        for _, c := range cases.invalid {
                                if !allowlist.RegexAllowed(c) {
@@ -84,51 +84,67 @@
        }
 }
 
-func TestConfigAllowlistPaths(t *testing.T) {
-       tests := map[string]struct {
-               invalid []string
-               valid   []string
-       }{
-               "javascript - common static assets": {
-                       invalid: []string{
-                               
`tests/e2e/nuget/wwwroot/lib/bootstrap/dist/js/bootstrap.esm.min.js`,
-                               `src/main/static/lib/angular.1.2.16.min.js`,
-                               
`src/main/resources/static/jquery-ui-1.12.1/jquery-ui-min.js`,
-                               
`src/main/resources/static/js/jquery-ui-1.10.4.min.js`,
-                               `src-static/js/plotly.min.js`,
-                               `swagger/swaggerui/swagger-ui-bundle.js.map`,
-                               `swagger/swaggerui/swagger-ui-es-bundle.js.map`,
-                               `src/main/static/swagger-ui.min.js`,
-                               `swagger/swaggerui/swagger-ui.js`,
-                       },
-               },
-               "python": {
-                       invalid: []string{
-                               // lock files
-                               `Pipfile.lock`, `poetry.lock`,
-                               // virtual environments
-                               
"env/lib/python3.7/site-packages/urllib3/util/url.py",
-                               
"venv/Lib/site-packages/regex-2018.08.29.dist-info/DESCRIPTION.rst",
-                               "venv/lib64/python3.5/site-packages/pynvml.py",
-                               
"python/python3/virtualenv/Lib/site-packages/pyphonetics/utils.py",
-                               "virtualenv/lib64/python3.7/base64.py",
-                               // packages
-                               
"cde-root/usr/lib64/python2.4/site-packages/Numeric.pth",
-                               
"lib/python3.9/site-packages/setuptools/_distutils/msvccompiler.py",
-                               
"lib/python3.8/site-packages/botocore/data/alexaforbusiness/2017-11-09/service-2.json",
-                               
"code/python/3.7.4/Lib/site-packages/dask/bytes/tests/test_bytes_utils.py",
-                               
"python/3.7.4/Lib/site-packages/fsspec/utils.py",
-                               "python/2.7.16.32/Lib/bsddb/test/test_dbenv.py",
-                               
"python/lib/python3.8/site-packages/boto3/data/ec2/2016-04-01/resources-1.json",
-                               // distinfo
-                               "libs/PyX-0.15.dist-info/AUTHORS",
-                       },
-               },
+func BenchmarkConfigAllowlistRegexes(b *testing.B) {
+       cfg := CreateGlobalConfig()
+       allowlist := cfg.Allowlist
+       for n := 0; n < b.N; n++ {
+               for _, cases := range allowlistRegexTests {
+                       for _, c := range cases.invalid {
+                               allowlist.RegexAllowed(c)
+                       }
+
+                       for _, c := range cases.valid {
+                               allowlist.RegexAllowed(c)
+                       }
+               }
        }
+}
 
+var allowlistPathsTests = map[string]struct {
+       invalid []string
+       valid   []string
+}{
+       "javascript - common static assets": {
+               invalid: []string{
+                       
`tests/e2e/nuget/wwwroot/lib/bootstrap/dist/js/bootstrap.esm.min.js`,
+                       `src/main/static/lib/angular.1.2.16.min.js`,
+                       
`src/main/resources/static/jquery-ui-1.12.1/jquery-ui-min.js`,
+                       `src/main/resources/static/js/jquery-ui-1.10.4.min.js`,
+                       `src-static/js/plotly.min.js`,
+                       `swagger/swaggerui/swagger-ui-bundle.js.map`,
+                       `swagger/swaggerui/swagger-ui-es-bundle.js.map`,
+                       `src/main/static/swagger-ui.min.js`,
+                       `swagger/swaggerui/swagger-ui.js`,
+               },
+       },
+       "python": {
+               invalid: []string{
+                       // lock files
+                       `Pipfile.lock`, `poetry.lock`,
+                       // virtual environments
+                       "env/lib/python3.7/site-packages/urllib3/util/url.py",
+                       
"venv/Lib/site-packages/regex-2018.08.29.dist-info/DESCRIPTION.rst",
+                       "venv/lib64/python3.5/site-packages/pynvml.py",
+                       
"python/python3/virtualenv/Lib/site-packages/pyphonetics/utils.py",
+                       "virtualenv/lib64/python3.7/base64.py",
+                       // packages
+                       
"cde-root/usr/lib64/python2.4/site-packages/Numeric.pth",
+                       
"lib/python3.9/site-packages/setuptools/_distutils/msvccompiler.py",
+                       
"lib/python3.8/site-packages/botocore/data/alexaforbusiness/2017-11-09/service-2.json",
+                       
"code/python/3.7.4/Lib/site-packages/dask/bytes/tests/test_bytes_utils.py",
+                       "python/3.7.4/Lib/site-packages/fsspec/utils.py",
+                       "python/2.7.16.32/Lib/bsddb/test/test_dbenv.py",
+                       
"python/lib/python3.8/site-packages/boto3/data/ec2/2016-04-01/resources-1.json",
+                       // distinfo
+                       "libs/PyX-0.15.dist-info/AUTHORS",
+               },
+       },
+}
+
+func TestConfigAllowlistPaths(t *testing.T) {
        cfg := CreateGlobalConfig()
        allowlist := cfg.Allowlist
-       for name, cases := range tests {
+       for name, cases := range allowlistPathsTests {
                t.Run(name, func(t *testing.T) {
                        for _, c := range cases.invalid {
                                if !allowlist.PathAllowed(c) {
@@ -144,3 +160,19 @@
                })
        }
 }
+
+func BenchmarkConfigAllowlistPaths(b *testing.B) {
+       cfg := CreateGlobalConfig()
+       allowlist := cfg.Allowlist
+       for n := 0; n < b.N; n++ {
+               for _, cases := range allowlistPathsTests {
+                       for _, c := range cases.invalid {
+                               allowlist.PathAllowed(c)
+                       }
+
+                       for _, c := range cases.valid {
+                               allowlist.PathAllowed(c)
+                       }
+               }
+       }
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gitleaks-8.23.2/cmd/generate/config/rules/curl.go 
new/gitleaks-8.23.3/cmd/generate/config/rules/curl.go
--- old/gitleaks-8.23.2/cmd/generate/config/rules/curl.go       2025-01-23 
02:15:25.000000000 +0100
+++ new/gitleaks-8.23.3/cmd/generate/config/rules/curl.go       2025-01-29 
02:58:15.000000000 +0100
@@ -13,18 +13,18 @@
        r := config.Rule{
                RuleID:      "curl-auth-user",
                Description: "Discovered a potential basic authorization token 
provided in a curl command, which could compromise the curl accessed resource.",
-               Regex:       
regexp.MustCompile(`\bcurl\b(?:.*|.*(?:[\r\n]{1,2}.*){1,5})[ 
\t\n\r](?:-u|--user)(?:=|[ 
\t]{0,5})(?:"([^:"]{3,}:[^"]{3,})"|'([^:']{3,}:[^']{3,})'|((?:"[^"]{3,}"|'[^']{3,}'|[\w$@.-]+):(?:"[^"]{3,}"|'[^']{3,}'|[\w${}@.-]+)))(?:\s|\z)`),
+               Regex:       
regexp.MustCompile(`\bcurl\b(?:.*|.*(?:[\r\n]{1,2}.*){1,5})[ 
\t\n\r](?:-u|--user)(?:=|[ 
\t]{0,5})("(:[^"]{3,}|[^:"]{3,}:|[^:"]{3,}:[^"]{3,})"|'([^:']{3,}:[^']{3,})'|((?:"[^"]{3,}"|'[^']{3,}'|[\w$@.-]+):(?:"[^"]{3,}"|'[^']{3,}'|[\w${}@.-]+)))(?:\s|\z)`),
                Keywords:    []string{"curl"},
                Entropy:     2,
                Allowlists: []config.Allowlist{
                        {
                                Regexes: []*regexp.Regexp{
-                                       
regexp.MustCompile(`[^:]+:(change(it|me)|pass(word)?|pwd|test|token|\*+|x+)`), 
// common placeholder passwords
-                                       
regexp.MustCompile(`['"]?<[^>]+>['"]?:['"]?<[^>]+>|<[^:]+:[^>]+>['"]?`),       
// <placeholder>
-                                       regexp.MustCompile(`[^:]+:\[[^]]+]`),   
                                       // [placeholder]
-                                       
regexp.MustCompile(`['"]?[^:]+['"]?:['"]?\$(\d|\w+|\{(\d|\w+)})['"]?`),        
// $1 or $VARIABLE
-                                       
regexp.MustCompile(`\$\([^)]+\):\$\([^)]+\)`),                                 
// $(cat login.txt)
-                                       
regexp.MustCompile(`['"]?\$?{{[^}]+}}['"]?:['"]?\$?{{[^}]+}}['"]?`),           
// ${{ secrets.FOO }} or {{ .Values.foo }}
+                                       
regexp.MustCompile(`[^:]+:(?:change(?:it|me)|pass(?:word)?|pwd|test|token|\*+|x+)`),
 // common placeholder passwords
+                                       
regexp.MustCompile(`['"]?<[^>]+>['"]?:['"]?<[^>]+>|<[^:]+:[^>]+>['"]?`),        
     // <placeholder>
+                                       regexp.MustCompile(`[^:]+:\[[^]]+]`),   
                                             // [placeholder]
+                                       
regexp.MustCompile(`['"]?[^:]+['"]?:['"]?\$(?:\d|\w+|\{(?:\d|\w+)})['"]?`),     
     // $1 or $VARIABLE
+                                       
regexp.MustCompile(`\$\([^)]+\):\$\([^)]+\)`),                                  
     // $(cat login.txt)
+                                       
regexp.MustCompile(`['"]?\$?{{[^}]+}}['"]?:['"]?\$?{{[^}]+}}['"]?`),            
     // ${{ secrets.FOO }} or {{ .Values.foo }}
                                },
                        },
                },
@@ -38,6 +38,8 @@
   -H 'Content-type: text/plain' \
   -d 'world' \
   -u developer:yqDVtkqPECriaLRi`, // different line
+               `curl -u ":d2LkV78zLx!t" https://localhost:9200`, // empty 
username
+               `curl -u "d2LkV78zLx!t:" https://localhost:9200`, // empty 
password
 
                // long
                `curl -sw '%{http_code}' -X POST --user  'johns:h0pk1ns~21s' 
$GItHUB_API_URL/$GIT_COMMIT --data`,
@@ -65,6 +67,7 @@
                `curl -u "${_username}:${_password}"`,
                `curl -u "${username}":"${password}"`,
                `curl -k -X POST -I -u "SRVC_JENKINS:${APPID}"`,
+               `curl -u ":" https://localhost:9200`, // empty username and 
password
 
                // long
                `curl -sw '%{http_code}' -X POST --user '$USERNAME:$PASSWORD' 
$GItHUB_API_URL/$GIT_COMMIT --data`,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gitleaks-8.23.2/cmd/generate/config/rules/generic.go 
new/gitleaks-8.23.3/cmd/generate/config/rules/generic.go
--- old/gitleaks-8.23.2/cmd/generate/config/rules/generic.go    2025-01-23 
02:15:25.000000000 +0100
+++ new/gitleaks-8.23.3/cmd/generate/config/rules/generic.go    2025-01-29 
02:58:15.000000000 +0100
@@ -49,13 +49,13 @@
                                MatchCondition: config.AllowlistMatchOr,
                                RegexTarget:    "match",
                                Regexes: []*regexp.Regexp{
-                                       regexp.MustCompile(`(?i)(` +
+                                       regexp.MustCompile(`(?i)(?:` +
                                                // Access
-                                               `access(ibility|or)` +
+                                               `access(?:ibility|or)` +
                                                `|access[_.-]?id` +
                                                `|random[_.-]?access` +
                                                // API
-                                               `|api[_.-]?(id|name|version)` + 
// id/name/version -> not a secret
+                                               `|api[_.-]?(?:id|name|version)` 
+ // id/name/version -> not a secret
                                                `|rapid|capital` + // common 
words containing "api"
                                                
`|[a-z0-9-]*?api[a-z0-9-]*?:jar:` + // Maven META-INF dependencies that contain 
"api" in the name.
                                                // Auth
@@ -63,29 +63,29 @@
                                                
`|X-MS-Exchange-Organization-Auth` + // email header
                                                `|Authentication-Results` + // 
email header
                                                // Credentials
-                                               
`|(credentials?[_.-]?id|withCredentials)` + // Jenkins plugins
+                                               
`|(?:credentials?[_.-]?id|withCredentials)` + // Jenkins plugins
                                                // Key
-                                               
`|(bucket|foreign|hot|idx|natural|primary|pub(lic)?|schema|sequence)[_.-]?key` +
-                                               
`|key[_.-]?(alias|board|code|frame|id|length|mesh|name|pair|ring|selector|signature|size|stone|storetype|word|up|down|left|right)`
 +
+                                               
`|(?:bucket|foreign|hot|idx|natural|primary|pub(?:lic)?|schema|sequence)[_.-]?key`
 +
+                                               
`|key[_.-]?(?:alias|board|code|frame|id|length|mesh|name|pair|ring|selector|signature|size|stone|storetype|word|up|down|left|right)`
 +
                                                // Azure KeyVault
-                                               
`|key[_.-]?vault[_.-]?(id|name)|keyVaultToStoreSecrets` +
-                                               
`|key(store|tab)[_.-]?(file|path)` +
+                                               
`|key[_.-]?vault[_.-]?(?:id|name)|keyVaultToStoreSecrets` +
+                                               
`|key(?:store|tab)[_.-]?(?:file|path)` +
                                                `|issuerkeyhash` + // part of 
ssl cert
                                                
`|(?-i:[DdMm]onkey|[DM]ONKEY)|keying` + // common words containing "key"
                                                // Secret
-                                               
`|(secret)[_.-]?(length|name|size)` + // name of e.g. env variable
+                                               
`|(?:secret)[_.-]?(?:length|name|size)` + // name of e.g. env variable
                                                `|UserSecretsId` + // 
https://learn.microsoft.com/en-us/aspnet/core/security/app-secrets?view=aspnetcore-8.0&tabs=linux
 
                                                // Token
-                                               `|(io\.jsonwebtoken[ \t]?:[ 
\t]?[\w-]+)` + // Maven library coordinats. (e.g., 
https://mvnrepository.com/artifact/io.jsonwebtoken/jjwt)
+                                               `|(?:io\.jsonwebtoken[ \t]?:[ 
\t]?[\w-]+)` + // Maven library coordinats. (e.g., 
https://mvnrepository.com/artifact/io.jsonwebtoken/jjwt)
 
                                                // General
-                                               
`|(api|credentials|token)[_.-]?(endpoint|ur[il])` +
+                                               
`|(?:api|credentials|token)[_.-]?(?:endpoint|ur[il])` +
                                                `|public[_.-]?token` +
-                                               `|(key|token)[_.-]?file` +
+                                               `|(?:key|token)[_.-]?file` +
                                                // Empty variables capturing 
the next line (e.g., .env files)
-                                               
`|(?-i:([A-Z_]+=\n[A-Z_]+=|[a-z_]+=\n[a-z_]+=)(\n|\z))` +
-                                               
`|(?-i:([A-Z.]+=\n[A-Z.]+=|[a-z.]+=\n[a-z.]+=)(\n|\z))` +
+                                               
`|(?-i:(?:[A-Z_]+=\n[A-Z_]+=|[a-z_]+=\n[a-z_]+=)(?:\n|\z))` +
+                                               
`|(?-i:(?:[A-Z.]+=\n[A-Z.]+=|[a-z.]+=\n[a-z.]+=)(?:\n|\z))` +
                                                `)`),
                                },
                                StopWords: append(DefaultStopWords,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gitleaks-8.23.2/cmd/generate/config/rules/github.go 
new/gitleaks-8.23.3/cmd/generate/config/rules/github.go
--- old/gitleaks-8.23.2/cmd/generate/config/rules/github.go     2025-01-23 
02:15:25.000000000 +0100
+++ new/gitleaks-8.23.3/cmd/generate/config/rules/github.go     2025-01-29 
02:58:15.000000000 +0100
@@ -11,7 +11,7 @@
        {
                Paths: []*regexp.Regexp{
                        // 
https://github.com/octokit/auth-token.js/?tab=readme-ov-file#createtokenauthtoken-options
-                       
regexp.MustCompile(`(^|/)@octokit/auth-token/README\.md$`),
+                       
regexp.MustCompile(`(?:^|/)@octokit/auth-token/README\.md$`),
                },
        },
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/gitleaks-8.23.2/cmd/generate/config/rules/kubernetes.go 
new/gitleaks-8.23.3/cmd/generate/config/rules/kubernetes.go
--- old/gitleaks-8.23.2/cmd/generate/config/rules/kubernetes.go 2025-01-23 
02:15:25.000000000 +0100
+++ new/gitleaks-8.23.3/cmd/generate/config/rules/kubernetes.go 2025-01-29 
02:58:15.000000000 +0100
@@ -45,7 +45,7 @@
                                // Avoid overreach between directives.
                                RegexTarget: "match",
                                Regexes: []*regexp.Regexp{
-                                       
regexp.MustCompile(`(kind:(.|\s)+\n---\n(.|\s)+\bdata:|data:(.|\s)+\n---\n(.|\s)+\bkind:)`),
+                                       
regexp.MustCompile(`(kind:(?:.|\s)+\n---\n(?:.|\s)+\bdata:|data:(?:.|\s)+\n---\n(?:.|\s)+\bkind:)`),
                                },
                        },
                },
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gitleaks-8.23.2/config/gitleaks.toml 
new/gitleaks-8.23.3/config/gitleaks.toml
--- old/gitleaks-8.23.2/config/gitleaks.toml    2025-01-23 02:15:25.000000000 
+0100
+++ new/gitleaks-8.23.3/config/gitleaks.toml    2025-01-29 02:58:15.000000000 
+0100
@@ -15,38 +15,38 @@
 regexes = [
     '''(?i)^true|false|null$''',
     
'''^(?i:a+|b+|c+|d+|e+|f+|g+|h+|i+|j+|k+|l+|m+|n+|o+|p+|q+|r+|s+|t+|u+|v+|w+|x+|y+|z+|\*+|\.+)$''',
-    '''^\$(\d+|{\d+})$''',
-    '''^\$([A-Z_]+|[a-z_]+)$''',
-    '''^\${([A-Z_]+|[a-z_]+)}$''',
+    '''^\$(?:\d+|{\d+})$''',
+    '''^\$(?:[A-Z_]+|[a-z_]+)$''',
+    '''^\${(?:[A-Z_]+|[a-z_]+)}$''',
     '''^\{\{[ \t]*[\w ().|]+[ \t]*}}$''',
-    '''^\$\{\{[ \t]*((env|github|secrets|vars)(\.[A-Za-z]\w+)+[\w "'&./=|]*)[ 
\t]*}}$''',
-    '''^%([A-Z_]+|[a-z_]+)%$''',
+    '''^\$\{\{[ \t]*(?:(?:env|github|secrets|vars)(?:\.[A-Za-z]\w+)+[\w 
"'&./=|]*)[ \t]*}}$''',
+    '''^%(?:[A-Z_]+|[a-z_]+)%$''',
     '''^%[+\-# 0]?[bcdeEfFgGoOpqstTUvxX]$''',
     '''^\{\d{0,2}}$''',
-    '''^@([A-Z_]+|[a-z_]+)@$''',
+    '''^@(?:[A-Z_]+|[a-z_]+)@$''',
 ]
 paths = [
     '''gitleaks\.toml''',
-    '''(?i)\.(bmp|gif|jpe?g|svg|tiff?)$''',
-    '''\.(eot|[ot]tf|woff2?)$''',
-    
'''(.*?)(doc|docx|zip|xls|pdf|bin|socket|vsidx|v2|suo|wsuo|.dll|pdb|exe|gltf)$''',
-    '''go\.(mod|sum|work(\.sum)?)$''',
-    '''(^|/)vendor/modules\.txt$''',
-    
'''(^|/)vendor/(github\.com|golang\.org/x|google\.golang\.org|gopkg\.in|istio\.io|k8s\.io|sigs\.k8s\.io)(/.*)?$''',
-    '''(^|/)gradlew(\.bat)?$''',
-    '''(^|/)gradle\.lockfile$''',
-    '''(^|/)mvnw(\.cmd)?$''',
-    '''(^|/)\.mvn/wrapper/MavenWrapperDownloader\.java$''',
-    '''(^|/)node_modules(/.*)?$''',
-    
'''(^|/)(npm-shrinkwrap\.json|package-lock\.json|pnpm-lock\.yaml|yarn\.lock)$''',
-    '''(^|/)bower_components(/.*)?$''',
-    
'''(^|/)(angular|bootstrap|jquery(-?ui)?|plotly|swagger-?ui)[a-zA-Z0-9.-]*(\.min)?\.js(\.map)?$''',
-    '''(^|/)javascript\.json$''',
-    '''(^|/)(Pipfile|poetry)\.lock$''',
-    '''(?i)/?(v?env|virtualenv)/lib(64)?(/.*)?$''',
-    
'''(?i)(^|/)(lib(64)?/python[23](\.\d{1,2})+|python/[23](\.\d{1,2})+/lib(64)?)(/.*)?$''',
-    '''(?i)(^|/)[a-z0-9_.]+-[0-9.]+\.dist-info(/.+)?$''',
-    '''(^|/)vendor/(bundle|ruby)(/.*?)?$''',
+    '''(?i)\.(?:bmp|gif|jpe?g|png|svg|tiff?)$''',
+    '''(?i)\.(?:eot|[ot]tf|woff2?)$''',
+    
'''(?i)\.(?:docx?|xlsx?|pdf|bin|socket|vsidx|v2|suo|wsuo|.dll|pdb|exe|gltf|zip)$''',
+    '''go\.(?:mod|sum|work(?:\.sum)?)$''',
+    '''(?:^|/)vendor/modules\.txt$''',
+    
'''(?:^|/)vendor/(?:github\.com|golang\.org/x|google\.golang\.org|gopkg\.in|istio\.io|k8s\.io|sigs\.k8s\.io)(?:/.*)?$''',
+    '''(?:^|/)gradlew(?:\.bat)?$''',
+    '''(?:^|/)gradle\.lockfile$''',
+    '''(?:^|/)mvnw(?:\.cmd)?$''',
+    '''(?:^|/)\.mvn/wrapper/MavenWrapperDownloader\.java$''',
+    '''(?:^|/)node_modules(?:/.*)?$''',
+    
'''(?:^|/)(?:npm-shrinkwrap\.json|package-lock\.json|pnpm-lock\.yaml|yarn\.lock)$''',
+    '''(?:^|/)bower_components(?:/.*)?$''',
+    
'''(?:^|/)(?:angular|bootstrap|jquery(?:-?ui)?|plotly|swagger-?ui)[a-zA-Z0-9.-]*(?:\.min)?\.js(?:\.map)?$''',
+    '''(?:^|/)javascript\.json$''',
+    '''(?:^|/)(?:Pipfile|poetry)\.lock$''',
+    '''(?i)(?:^|/)(?:v?env|virtualenv)/lib(?:64)?(?:/.*)?$''',
+    
'''(?i)(?:^|/)(?:lib(?:64)?/python[23](?:\.\d{1,2})+|python/[23](?:\.\d{1,2})+/lib(?:64)?)(?:/.*)?$''',
+    '''(?i)(?:^|/)[a-z0-9_.]+-[0-9.]+\.dist-info(?:/.+)?$''',
+    '''(?:^|/)vendor/(?:bundle|ruby)(?:/.*?)?$''',
     '''\.gem$''',
     '''verification-metadata\.xml''',
     '''Database.refactorlog''',
@@ -293,15 +293,15 @@
 [[rules]]
 id = "curl-auth-user"
 description = "Discovered a potential basic authorization token provided in a 
curl command, which could compromise the curl accessed resource."
-regex = '''\bcurl\b(?:.*|.*(?:[\r\n]{1,2}.*){1,5})[ \t\n\r](?:-u|--user)(?:=|[ 
\t]{0,5})(?:"([^:"]{3,}:[^"]{3,})"|'([^:']{3,}:[^']{3,})'|((?:"[^"]{3,}"|'[^']{3,}'|[\w$@.-]+):(?:"[^"]{3,}"|'[^']{3,}'|[\w${}@.-]+)))(?:\s|\z)'''
+regex = '''\bcurl\b(?:.*|.*(?:[\r\n]{1,2}.*){1,5})[ \t\n\r](?:-u|--user)(?:=|[ 
\t]{0,5})("(:[^"]{3,}|[^:"]{3,}:|[^:"]{3,}:[^"]{3,})"|'([^:']{3,}:[^']{3,})'|((?:"[^"]{3,}"|'[^']{3,}'|[\w$@.-]+):(?:"[^"]{3,}"|'[^']{3,}'|[\w${}@.-]+)))(?:\s|\z)'''
 entropy = 2
 keywords = ["curl"]
 [[rules.allowlists]]
 regexes = [
-    '''[^:]+:(change(it|me)|pass(word)?|pwd|test|token|\*+|x+)''',
+    '''[^:]+:(?:change(?:it|me)|pass(?:word)?|pwd|test|token|\*+|x+)''',
     '''['"]?<[^>]+>['"]?:['"]?<[^>]+>|<[^:]+:[^>]+>['"]?''',
     '''[^:]+:\[[^]]+]''',
-    '''['"]?[^:]+['"]?:['"]?\$(\d|\w+|\{(\d|\w+)})['"]?''',
+    '''['"]?[^:]+['"]?:['"]?\$(?:\d|\w+|\{(?:\d|\w+)})['"]?''',
     '''\$\([^)]+\):\$\([^)]+\)''',
     '''['"]?\$?{{[^}]+}}['"]?:['"]?\$?{{[^}]+}}['"]?''',
 ]
@@ -586,7 +586,7 @@
 [[rules.allowlists]]
 regexTarget = "match"
 regexes = [
-    
'''(?i)(access(ibility|or)|access[_.-]?id|random[_.-]?access|api[_.-]?(id|name|version)|rapid|capital|[a-z0-9-]*?api[a-z0-9-]*?:jar:|author|X-MS-Exchange-Organization-Auth|Authentication-Results|(credentials?[_.-]?id|withCredentials)|(bucket|foreign|hot|idx|natural|primary|pub(lic)?|schema|sequence)[_.-]?key|key[_.-]?(alias|board|code|frame|id|length|mesh|name|pair|ring|selector|signature|size|stone|storetype|word|up|down|left|right)|key[_.-]?vault[_.-]?(id|name)|keyVaultToStoreSecrets|key(store|tab)[_.-]?(file|path)|issuerkeyhash|(?-i:[DdMm]onkey|[DM]ONKEY)|keying|(secret)[_.-]?(length|name|size)|UserSecretsId|(io\.jsonwebtoken[
 \t]?:[ 
\t]?[\w-]+)|(api|credentials|token)[_.-]?(endpoint|ur[il])|public[_.-]?token|(key|token)[_.-]?file|(?-i:([A-Z_]+=\n[A-Z_]+=|[a-z_]+=\n[a-z_]+=)(\n|\z))|(?-i:([A-Z.]+=\n[A-Z.]+=|[a-z.]+=\n[a-z.]+=)(\n|\z)))''',
+    
'''(?i)(?:access(?:ibility|or)|access[_.-]?id|random[_.-]?access|api[_.-]?(?:id|name|version)|rapid|capital|[a-z0-9-]*?api[a-z0-9-]*?:jar:|author|X-MS-Exchange-Organization-Auth|Authentication-Results|(?:credentials?[_.-]?id|withCredentials)|(?:bucket|foreign|hot|idx|natural|primary|pub(?:lic)?|schema|sequence)[_.-]?key|key[_.-]?(?:alias|board|code|frame|id|length|mesh|name|pair|ring|selector|signature|size|stone|storetype|word|up|down|left|right)|key[_.-]?vault[_.-]?(?:id|name)|keyVaultToStoreSecrets|key(?:store|tab)[_.-]?(?:file|path)|issuerkeyhash|(?-i:[DdMm]onkey|[DM]ONKEY)|keying|(?:secret)[_.-]?(?:length|name|size)|UserSecretsId|(?:io\.jsonwebtoken[
 \t]?:[ 
\t]?[\w-]+)|(?:api|credentials|token)[_.-]?(?:endpoint|ur[il])|public[_.-]?token|(?:key|token)[_.-]?file|(?-i:(?:[A-Z_]+=\n[A-Z_]+=|[a-z_]+=\n[a-z_]+=)(?:\n|\z))|(?-i:(?:[A-Z.]+=\n[A-Z.]+=|[a-z.]+=\n[a-z.]+=)(?:\n|\z)))''',
 ]
 stopwords = [
     "000000",
@@ -2084,7 +2084,7 @@
 ]
 [[rules.allowlists]]
 paths = [
-    '''(^|/)@octokit/auth-token/README\.md$''',
+    '''(?:^|/)@octokit/auth-token/README\.md$''',
 ]
 
 [[rules]]
@@ -2109,7 +2109,7 @@
 keywords = ["ghp_"]
 [[rules.allowlists]]
 paths = [
-    '''(^|/)@octokit/auth-token/README\.md$''',
+    '''(?:^|/)@octokit/auth-token/README\.md$''',
 ]
 
 [[rules]]
@@ -2385,7 +2385,7 @@
 [[rules.allowlists]]
 regexTarget = "match"
 regexes = [
-    
'''(kind:(.|\s)+\n---\n(.|\s)+\bdata:|data:(.|\s)+\n---\n(.|\s)+\bkind:)''',
+    
'''(kind:(?:.|\s)+\n---\n(?:.|\s)+\bdata:|data:(?:.|\s)+\n---\n(?:.|\s)+\bkind:)''',
 ]
 
 [[rules]]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gitleaks-8.23.2/sources/git.go 
new/gitleaks-8.23.3/sources/git.go
--- old/gitleaks-8.23.2/sources/git.go  2025-01-23 02:15:25.000000000 +0100
+++ new/gitleaks-8.23.3/sources/git.go  2025-01-29 02:58:15.000000000 +0100
@@ -158,6 +158,9 @@
                //  you may want to set your diff.renameLimit variable to at 
least
                //  (some large number) and retry the command.
                //
+               //  Auto packing the repository in background for optimum 
performance.
+               //  See "git help gc" for manual housekeeping.
+               //
                // we skip exiting the program as git log -p/git diff will 
continue
                // to send data to stdout and finish executing. This next bit of
                // code prevents gitleaks from stopping mid scan if this error 
is
@@ -167,7 +170,11 @@
                        strings.Contains(scanner.Text(),
                                "inexact rename detection was skipped") ||
                        strings.Contains(scanner.Text(),
-                               "you may want to set your diff.renameLimit") {
+                               "you may want to set your diff.renameLimit") ||
+                       strings.Contains(scanner.Text(),
+                               "See \"git help gc\" for manual housekeeping") 
||
+                       strings.Contains(scanner.Text(),
+                               "Auto packing the repository in background for 
optimum performance") {
                        logging.Warn().Msg(scanner.Text())
                } else {
                        logging.Error().Msgf("[git] %s", scanner.Text())

++++++ gitleaks.obsinfo ++++++
--- /var/tmp/diff_new_pack.EOzUB1/_old  2025-01-30 14:52:42.505168186 +0100
+++ /var/tmp/diff_new_pack.EOzUB1/_new  2025-01-30 14:52:42.509168351 +0100
@@ -1,5 +1,5 @@
 name: gitleaks
-version: 8.23.2
-mtime: 1737594925
-commit: d88bc094f782a1c265ebac4bdd5c14a8403e7339
+version: 8.23.3
+mtime: 1738115895
+commit: 3188ad60055da792f5dd2bba21a88f4d5be80f96
 

++++++ vendor.tar.gz ++++++

Reply via email to