Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package doggo for openSUSE:Factory checked 
in at 2026-05-20 15:26:27
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/doggo (Old)
 and      /work/SRC/openSUSE:Factory/.doggo.new.1966 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "doggo"

Wed May 20 15:26:27 2026 rev:9 rq:1354195 version:1.1.6

Changes:
--------
--- /work/SRC/openSUSE:Factory/doggo/doggo.changes      2026-02-26 
18:51:50.905515547 +0100
+++ /work/SRC/openSUSE:Factory/.doggo.new.1966/doggo.changes    2026-05-20 
15:27:15.560908531 +0200
@@ -1,0 +2,14 @@
+Wed May 20 08:20:43 UTC 2026 - Johannes Kastl 
<[email protected]>
+
+- Update to version 1.1.6:
+  * Bug fixes
+    - 7ea250d: fix(edns): default UDP buffer size to 1232 per DNS
+      Flagday 2020 (@mr-karan)
+  * Others
+    - 802e38b: Fix "DNS over QUIC" sidebar anchor text (@isker)
+    - 79dee5c: Merge pull request #236 from isker/patch-1
+      (@mr-karan)
+    - 2bcf2f7: chore(deps): upgrade Go to 1.26 and bump
+      dependencies (@mr-karan)
+
+-------------------------------------------------------------------

Old:
----
  doggo-1.1.5.obscpio

New:
----
  doggo-1.1.6.obscpio

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

Other differences:
------------------
++++++ doggo.spec ++++++
--- /var/tmp/diff_new_pack.BBhReP/_old  2026-05-20 15:27:16.104930941 +0200
+++ /var/tmp/diff_new_pack.BBhReP/_new  2026-05-20 15:27:16.104930941 +0200
@@ -17,7 +17,7 @@
 
 
 Name:           doggo
-Version:        1.1.5
+Version:        1.1.6
 Release:        0
 Summary:        CLI tool and API server DNS client implemented in Go
 License:        GPL-3.0-only
@@ -25,7 +25,7 @@
 URL:            https://github.com/mr-karan/doggo
 Source0:        %{name}-%{version}.tar
 Source1:        vendor.tar.xz
-BuildRequires:  go1.25 >= 1.25.5
+BuildRequires:  go1.26 >= 1.26.2
 Recommends:     %{name}-bash-completion
 Suggests:       %{name}-fish-completion
 Suggests:       %{name}-zsh-completion

++++++ _service ++++++
--- /var/tmp/diff_new_pack.BBhReP/_old  2026-05-20 15:27:16.156933083 +0200
+++ /var/tmp/diff_new_pack.BBhReP/_new  2026-05-20 15:27:16.156933083 +0200
@@ -2,7 +2,7 @@
   <service name="obs_scm" mode="manual">
     <param name="scm">git</param>
     <param name="url">https://github.com/mr-karan/doggo.git</param>
-    <param name="revision">v1.1.5</param>
+    <param name="revision">v1.1.6</param>
     <param name="match-tag">*</param>
     <param name="versionrewrite-pattern">v(\d+\.\d+\.\d+)</param>
     <param name="versionformat">@PARENT_TAG@</param>

++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.BBhReP/_old  2026-05-20 15:27:16.176933907 +0200
+++ /var/tmp/diff_new_pack.BBhReP/_new  2026-05-20 15:27:16.180934072 +0200
@@ -1,6 +1,6 @@
 <servicedata>
 <service name="tar_scm">
                 <param name="url">https://github.com/mr-karan/doggo.git</param>
-              <param 
name="changesrevision">c1e6f89eca428a69529223fffb088bdc31264310</param></service></servicedata>
+              <param 
name="changesrevision">2bcf2f719d2017db2d525cd8b31c65f4b8b54e69</param></service></servicedata>
 (No newline at EOF)
 

++++++ doggo-1.1.5.obscpio -> doggo-1.1.6.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/doggo-1.1.5/.github/workflows/govulncheck.yml 
new/doggo-1.1.6/.github/workflows/govulncheck.yml
--- old/doggo-1.1.5/.github/workflows/govulncheck.yml   1970-01-01 
01:00:00.000000000 +0100
+++ new/doggo-1.1.6/.github/workflows/govulncheck.yml   2026-05-20 
09:36:30.000000000 +0200
@@ -0,0 +1,24 @@
+name: govulncheck
+
+on:
+  push:
+  pull_request:
+  schedule:
+    - cron: "22 10 * * *"
+  workflow_dispatch:
+
+permissions:
+  contents: read
+
+jobs:
+  govulncheck:
+    runs-on: ubuntu-latest
+    steps:
+      - uses: actions/checkout@v6
+        with:
+          persist-credentials: false
+      - uses: actions/setup-go@v6
+        with:
+          go-version-file: go.mod
+      - run: |
+          go run golang.org/x/vuln/cmd/govulncheck@latest ./...
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/doggo-1.1.5/.github/workflows/release.yml 
new/doggo-1.1.6/.github/workflows/release.yml
--- old/doggo-1.1.5/.github/workflows/release.yml       2026-02-24 
10:04:51.000000000 +0100
+++ new/doggo-1.1.6/.github/workflows/release.yml       2026-05-20 
09:36:30.000000000 +0200
@@ -19,7 +19,7 @@
       - name: Set up Go
         uses: actions/setup-go@v6
         with:
-          go-version: "1.25"
+          go-version: "1.26"
       - name: Log in to the Container registry
         uses: docker/login-action@v3
         with:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/doggo-1.1.5/.github/workflows/test.yml 
new/doggo-1.1.6/.github/workflows/test.yml
--- old/doggo-1.1.5/.github/workflows/test.yml  1970-01-01 01:00:00.000000000 
+0100
+++ new/doggo-1.1.6/.github/workflows/test.yml  2026-05-20 09:36:30.000000000 
+0200
@@ -0,0 +1,37 @@
+name: Go tests
+
+on:
+  push:
+  pull_request:
+  schedule:
+    - cron: "22 10 * * *"
+  workflow_dispatch:
+
+permissions:
+  contents: read
+
+jobs:
+  test:
+    runs-on: ubuntu-latest
+    strategy:
+      fail-fast: false
+      matrix:
+        go:
+          - { go-version: stable }
+          - { go-version-file: go.mod }
+        deps:
+          - locked
+          - latest
+    steps:
+      - uses: actions/checkout@v6
+        with:
+          persist-credentials: false
+      - uses: actions/setup-go@v6
+        with:
+          go-version: ${{ matrix.go.go-version }}
+          go-version-file: ${{ matrix.go.go-version-file }}
+      - run: |
+          if [ "${{ matrix.deps }}" = "latest" ]; then
+            go get -u -t ./...
+          fi
+          go test -v ./...
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/doggo-1.1.5/cmd/doggo/cli.go 
new/doggo-1.1.6/cmd/doggo/cli.go
--- old/doggo-1.1.5/cmd/doggo/cli.go    2026-02-24 10:04:51.000000000 +0100
+++ new/doggo-1.1.6/cmd/doggo/cli.go    2026-05-20 09:36:30.000000000 +0200
@@ -121,6 +121,14 @@
        cfg.showTime = k.Bool("time")
        cfg.useColor = k.Bool("color")
 
+       bufsize := k.Int("bufsize")
+       if bufsize < 0 || bufsize > 65535 {
+               return nil, fmt.Errorf("--bufsize must be between 0 and 65535, 
got %d", bufsize)
+       }
+       if bufsize > 0 && bufsize < 512 {
+               return nil, fmt.Errorf("--bufsize must be 0 or at least 512 
(RFC 6891), got %d", bufsize)
+       }
+
        cfg.queryFlags = resolvers.QueryFlags{
                AA: k.Bool("aa"),
                AD: k.Bool("ad"),
@@ -135,6 +143,7 @@
                Padding: k.Bool("padding"),
                EDE:     k.Bool("ede"),
                ECS:     k.String("ecs"),
+               Bufsize: uint16(bufsize),
        }
 
        return cfg, nil
@@ -184,6 +193,7 @@
        f.Bool("padding", false, "Request EDNS padding for privacy")
        f.Bool("ede", false, "Request Extended DNS Errors")
        f.String("ecs", "", "EDNS Client Subnet (e.g., '192.0.2.0/24' or 
'2001:db8::/32')")
+       f.Int("bufsize", 0, "EDNS UDP buffer size in bytes (512-65535); setting 
this enables EDNS even without other EDNS options. Default is 1232 when EDNS is 
enabled.")
 
        f.Bool("version", false, "Show version of doggo")
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/doggo-1.1.5/cmd/doggo/completions.go 
new/doggo-1.1.6/cmd/doggo/completions.go
--- old/doggo-1.1.5/cmd/doggo/completions.go    2026-02-24 10:04:51.000000000 
+0100
+++ new/doggo-1.1.6/cmd/doggo/completions.go    2026-05-20 09:36:30.000000000 
+0200
@@ -13,7 +13,7 @@
     cur="${COMP_WORDS[COMP_CWORD]}"
     prev="${COMP_WORDS[COMP_CWORD-1]}"
 
-    opts="-v --version -h --help -q --query -t --type -n --nameserver -c 
--class -r --reverse --any --strategy --ndots --search --timeout -4 --ipv4 -6 
--ipv6 --tls-hostname --skip-hostname-verification --aa --ad --cd --rd --z --do 
--nsid --cookie --padding --ede --ecs -J --json --short --color --debug --time 
--gp-from --gp-limit"
+    opts="-v --version -h --help -q --query -t --type -n --nameserver -c 
--class -r --reverse --any --strategy --ndots --search --timeout -4 --ipv4 -6 
--ipv6 --tls-hostname --skip-hostname-verification --aa --ad --cd --rd --z --do 
--nsid --cookie --padding --ede --ecs --bufsize -J --json --short --color 
--debug --time --gp-from --gp-limit"
 
     case "${prev}" in
         -t|--type)
@@ -84,6 +84,7 @@
     '--padding[Request EDNS padding for privacy]' \
     '--ede[Request Extended DNS Errors]' \
     '--ecs[EDNS Client Subnet]:subnet' \
+    '--bufsize[EDNS UDP buffer size in bytes]:buffer size' \
     '(-J --json)'{-J,--json}'[Format the output as JSON]' \
     '--short[Shows only the response section in the output]' \
     '--color[Colored output]:setting:(true false)' \
@@ -149,6 +150,7 @@
 complete -c doggo -n '__fish_doggo_no_subcommand' -l 'padding' -d "Request 
EDNS padding for privacy"
 complete -c doggo -n '__fish_doggo_no_subcommand' -l 'ede'     -d "Request 
Extended DNS Errors"
 complete -c doggo -n '__fish_doggo_no_subcommand' -l 'ecs'     -d "EDNS Client 
Subnet" -x
+complete -c doggo -n '__fish_doggo_no_subcommand' -l 'bufsize' -d "EDNS UDP 
buffer size in bytes" -x
 
 # Output options
 complete -c doggo -n '__fish_doggo_no_subcommand' -s 'J' -l 'json'  -d "Format 
the output as JSON"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/doggo-1.1.5/cmd/doggo/help.go 
new/doggo-1.1.6/cmd/doggo/help.go
--- old/doggo-1.1.5/cmd/doggo/help.go   2026-02-24 10:04:51.000000000 +0100
+++ new/doggo-1.1.6/cmd/doggo/help.go   2026-05-20 09:36:30.000000000 +0200
@@ -144,6 +144,7 @@
                        {"--padding", "Request EDNS padding for privacy. Helps 
mitigate traffic analysis attacks."},
                        {"--ede", "Request Extended DNS Errors for detailed 
error information."},
                        {"--ecs=SUBNET", "EDNS Client Subnet (e.g., 
'192.0.2.0/24' or '2001:db8::/32'). Send client subnet for geo-aware 
responses."},
+                       {"--bufsize=BYTES", "EDNS UDP buffer size in bytes 
(512-65535). Setting this enables EDNS even without other EDNS options. Default 
is 1232 when EDNS is enabled."},
                },
                "OutputOptions": []Option{
                        {"-J, --json", "Format the output as JSON."},
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/doggo-1.1.5/docs/astro.config.mjs 
new/doggo-1.1.6/docs/astro.config.mjs
--- old/doggo-1.1.5/docs/astro.config.mjs       2026-02-24 10:04:51.000000000 
+0100
+++ new/doggo-1.1.6/docs/astro.config.mjs       2026-05-20 09:36:30.000000000 
+0200
@@ -36,7 +36,7 @@
             { label: "DNS over HTTPS (DoH)", link: "/resolvers/doh" },
             { label: "DNS over TLS (DoT)", link: "/resolvers/dot" },
             { label: "DNSCrypt", link: "/resolvers/dnscrypt" },
-            { label: "DNS over HTTPS (DoQ)", link: "/resolvers/quic" },
+            { label: "DNS over QUIC (DoQ)", link: "/resolvers/quic" },
           ],
         },
         {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/doggo-1.1.5/docs/src/content/docs/guide/reference.md 
new/doggo-1.1.6/docs/src/content/docs/guide/reference.md
--- old/doggo-1.1.5/docs/src/content/docs/guide/reference.md    2026-02-24 
10:04:51.000000000 +0100
+++ new/doggo-1.1.6/docs/src/content/docs/guide/reference.md    2026-05-20 
09:36:30.000000000 +0200
@@ -56,6 +56,7 @@
 | `--padding`   | Request EDNS padding for privacy (helps mitigate traffic 
analysis attacks by standardizing packet sizes)    |
 | `--ede`       | Request Extended DNS Errors for detailed error information 
when queries fail                                 |
 | `--ecs=SUBNET`| EDNS Client Subnet - sends client subnet information for 
geo-aware responses (e.g., `192.0.2.0/24` or `2001:db8::/32`) |
+| `--bufsize=BYTES` | EDNS UDP buffer size in bytes (512-65535). Setting this 
enables EDNS even without other EDNS options. Default is 1232 when EDNS is 
enabled — the [DNS Flagday 2020](https://dnsflagday.net/2020/) recommendation 
to avoid IP fragmentation. |
 
 ### EDNS Examples
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/doggo-1.1.5/go.mod new/doggo-1.1.6/go.mod
--- old/doggo-1.1.5/go.mod      2026-02-24 10:04:51.000000000 +0100
+++ new/doggo-1.1.6/go.mod      2026-05-20 09:36:30.000000000 +0200
@@ -1,50 +1,50 @@
 module github.com/mr-karan/doggo
 
-go 1.25.5
+go 1.26.2
 
 require (
        github.com/ameshkov/dnscrypt/v2 v2.4.0
        github.com/ameshkov/dnsstamps v1.0.3
-       github.com/fatih/color v1.18.0
+       github.com/fatih/color v1.19.0
        github.com/go-chi/chi/v5 v5.2.5
        github.com/jsdelivr/globalping-cli v1.5.1
        github.com/knadh/koanf/parsers/toml v0.1.0
        github.com/knadh/koanf/providers/env v1.1.0
        github.com/knadh/koanf/providers/file v1.2.1
        github.com/knadh/koanf/providers/posflag v1.0.1
-       github.com/knadh/koanf/v2 v2.3.2
+       github.com/knadh/koanf/v2 v2.3.4
        github.com/miekg/dns v1.1.72
-       github.com/olekukonko/tablewriter v1.1.3
-       github.com/quic-go/quic-go v0.59.0
+       github.com/olekukonko/tablewriter v1.1.4
+       github.com/quic-go/quic-go v0.59.1
        github.com/spf13/pflag v1.0.10
-       golang.org/x/net v0.50.0
-       golang.org/x/sys v0.41.0
+       golang.org/x/net v0.54.0
+       golang.org/x/sys v0.44.0
 )
 
 require (
-       github.com/AdguardTeam/golibs v0.35.8 // indirect
-       github.com/andybalholm/brotli v1.2.0 // indirect
+       github.com/AdguardTeam/golibs v0.35.13 // indirect
+       github.com/andybalholm/brotli v1.2.1 // indirect
        github.com/cespare/xxhash/v2 v2.3.0 // indirect
        github.com/clipperhouse/displaywidth v0.11.0 // indirect
        github.com/clipperhouse/uax29/v2 v2.7.0 // indirect
-       github.com/fsnotify/fsnotify v1.9.0 // indirect
+       github.com/fsnotify/fsnotify v1.10.1 // indirect
        github.com/go-viper/mapstructure/v2 v2.5.0 // indirect
-       github.com/goccy/go-json v0.10.5 // indirect
+       github.com/goccy/go-json v0.10.6 // indirect
        github.com/knadh/koanf/maps v0.1.2 // indirect
        github.com/mattn/go-colorable v0.1.14 // indirect
-       github.com/mattn/go-isatty v0.0.20 // indirect
-       github.com/mattn/go-runewidth v0.0.20 // indirect
+       github.com/mattn/go-isatty v0.0.22 // indirect
+       github.com/mattn/go-runewidth v0.0.23 // indirect
        github.com/mitchellh/copystructure v1.2.0 // indirect
        github.com/mitchellh/reflectwalk v1.0.2 // indirect
        github.com/olekukonko/cat v0.0.0-20250911104152-50322a0618f6 // indirect
-       github.com/olekukonko/errors v1.2.0 // indirect
-       github.com/olekukonko/ll v0.1.7 // indirect
+       github.com/olekukonko/errors v1.3.0 // indirect
+       github.com/olekukonko/ll v0.1.8 // indirect
        github.com/pelletier/go-toml v1.9.5 // indirect
        go.uber.org/mock v0.6.0 // indirect
-       golang.org/x/crypto v0.48.0 // indirect
-       golang.org/x/exp v0.0.0-20260218203240-3dfff04db8fa // indirect
-       golang.org/x/mod v0.33.0 // indirect
-       golang.org/x/sync v0.19.0 // indirect
-       golang.org/x/text v0.34.0 // indirect
-       golang.org/x/tools v0.42.0 // indirect
+       golang.org/x/crypto v0.51.0 // indirect
+       golang.org/x/exp v0.0.0-20260508232706-74f9aab9d74a // indirect
+       golang.org/x/mod v0.36.0 // indirect
+       golang.org/x/sync v0.20.0 // indirect
+       golang.org/x/text v0.37.0 // indirect
+       golang.org/x/tools v0.45.0 // indirect
 )
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/doggo-1.1.5/go.sum new/doggo-1.1.6/go.sum
--- old/doggo-1.1.5/go.sum      2026-02-24 10:04:51.000000000 +0100
+++ new/doggo-1.1.6/go.sum      2026-05-20 09:36:30.000000000 +0200
@@ -1,11 +1,11 @@
-github.com/AdguardTeam/golibs v0.35.8 
h1:KsyF3SWwj05Ey4GiAWU6FGD9oJTDNMp1ixVdS+Nw50M=
-github.com/AdguardTeam/golibs v0.35.8/go.mod 
h1:kuLQ0yNRTl0Em2FmmXtSri7ZdVT7p62oojyc51RvP38=
+github.com/AdguardTeam/golibs v0.35.13 
h1:sflm5/sWhiGwUXNAZObiqVMkdg8HeYVFK2A0oJ27hbU=
+github.com/AdguardTeam/golibs v0.35.13/go.mod 
h1:8EEGG4auTDd8HV3tBETXLkuxDH9lk9vvFbJn+wbmypg=
 github.com/ameshkov/dnscrypt/v2 v2.4.0 
h1:if6ZG2cuQmcP2TwSY+D0+8+xbPfoatufGlOQTMNkI9o=
 github.com/ameshkov/dnscrypt/v2 v2.4.0/go.mod 
h1:WpEFV2uhebXb8Jhes/5/fSdpmhGV8TL22RDaeWwV6hI=
 github.com/ameshkov/dnsstamps v1.0.3 
h1:Srzik+J9mivH1alRACTbys2xOxs0lRH9qnTA7Y1OYVo=
 github.com/ameshkov/dnsstamps v1.0.3/go.mod 
h1:Ii3eUu73dx4Vw5O4wjzmT5+lkCwovjzaEZZ4gKyIH5A=
-github.com/andybalholm/brotli v1.2.0 
h1:ukwgCxwYrmACq68yiUqwIWnGY0cTPox/M94sVwToPjQ=
-github.com/andybalholm/brotli v1.2.0/go.mod 
h1:rzTDkvFWvIrjDXZHkuS16NPggd91W3kUSvPlQ1pLaKY=
+github.com/andybalholm/brotli v1.2.1 
h1:R+f5xP285VArJDRgowrfb9DqL18yVK0gKAW/F+eTWro=
+github.com/andybalholm/brotli v1.2.1/go.mod 
h1:rzTDkvFWvIrjDXZHkuS16NPggd91W3kUSvPlQ1pLaKY=
 github.com/cespare/xxhash/v2 v2.3.0 
h1:UL815xU9SqsFlibzuggzjXhog7bL6oX9BbNZnL2UFvs=
 github.com/cespare/xxhash/v2 v2.3.0/go.mod 
h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs=
 github.com/clipperhouse/displaywidth v0.11.0 
h1:lBc6kY44VFw+TDx4I8opi/EtL9m20WSEFgwIwO+UVM8=
@@ -14,16 +14,16 @@
 github.com/clipperhouse/uax29/v2 v2.7.0/go.mod 
h1:EFJ2TJMRUaplDxHKj1qAEhCtQPW2tJSwu5BF98AuoVM=
 github.com/davecgh/go-spew v1.1.1 
h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
 github.com/davecgh/go-spew v1.1.1/go.mod 
h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
-github.com/fatih/color v1.18.0 h1:S8gINlzdQ840/4pfAwic/ZE0djQEH3wM94VfqLTZcOM=
-github.com/fatih/color v1.18.0/go.mod 
h1:4FelSpRwEGDpQ12mAdzqdOukCy4u8WUtOY6lkT/6HfU=
-github.com/fsnotify/fsnotify v1.9.0 
h1:2Ml+OJNzbYCTzsxtv8vKSFD9PbJjmhYF14k/jKC7S9k=
-github.com/fsnotify/fsnotify v1.9.0/go.mod 
h1:8jBTzvmWwFyi3Pb8djgCCO5IBqzKJ/Jwo8TRcHyHii0=
+github.com/fatih/color v1.19.0 h1:Zp3PiM21/9Ld6FzSKyL5c/BULoe/ONr9KlbYVOfG8+w=
+github.com/fatih/color v1.19.0/go.mod 
h1:zNk67I0ZUT1bEGsSGyCZYZNrHuTkJJB+r6Q9VuMi0LE=
+github.com/fsnotify/fsnotify v1.10.1 
h1:b0/UzAf9yR5rhf3RPm9gf3ehBPpf0oZKIjtpKrx59Ho=
+github.com/fsnotify/fsnotify v1.10.1/go.mod 
h1:TLheqan6HD6GBK6PrDWyDPBaEV8LspOxvPSjC+bVfgo=
 github.com/go-chi/chi/v5 v5.2.5 h1:Eg4myHZBjyvJmAFjFvWgrqDTXFyOzjj7YIm3L3mu6Ug=
 github.com/go-chi/chi/v5 v5.2.5/go.mod 
h1:X7Gx4mteadT3eDOMTsXzmI4/rwUpOwBHLpAfupzFJP0=
 github.com/go-viper/mapstructure/v2 v2.5.0 
h1:vM5IJoUAy3d7zRSVtIwQgBj7BiWtMPfmPEgAXnvj1Ro=
 github.com/go-viper/mapstructure/v2 v2.5.0/go.mod 
h1:oJDH3BJKyqBA2TXFhDsKDGDTlndYOZ6rGS0BRZIxGhM=
-github.com/goccy/go-json v0.10.5 
h1:Fq85nIqj+gXn/S5ahsiTlK3TmC85qgirsdTP/+DeaC4=
-github.com/goccy/go-json v0.10.5/go.mod 
h1:oq7eo15ShAhp70Anwd5lgX2pLfOS3QCiwU/PULtXL6M=
+github.com/goccy/go-json v0.10.6 
h1:p8HrPJzOakx/mn/bQtjgNjdTcN+/S6FcG2CTtQOrHVU=
+github.com/goccy/go-json v0.10.6/go.mod 
h1:oq7eo15ShAhp70Anwd5lgX2pLfOS3QCiwU/PULtXL6M=
 github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8=
 github.com/google/go-cmp v0.7.0/go.mod 
h1:pXiqmnSA92OHEEa9HXL2W4E7lf9JzCmGVUdgjX3N/iU=
 github.com/jsdelivr/globalping-cli v1.5.1 
h1:7RZNmIljSBXe0xBeOoGQHXZNwHo6zDuQ0BI9hF12gLY=
@@ -38,14 +38,14 @@
 github.com/knadh/koanf/providers/file v1.2.1/go.mod 
h1:bp1PM5f83Q+TOUu10J/0ApLBd9uIzg+n9UgthfY+nRA=
 github.com/knadh/koanf/providers/posflag v1.0.1 
h1:EnMxHSrPkYCFnKgBUl5KBgrjed8gVFrcXDzaW4l/C6Y=
 github.com/knadh/koanf/providers/posflag v1.0.1/go.mod 
h1:3Wn3+YG3f4ljzRyCUgIwH7G0sZ1pMjCOsNBovrbKmAk=
-github.com/knadh/koanf/v2 v2.3.2 
h1:Ee6tuzQYFwcZXQpc2MiVeC6qHMandf5SMUJJNoFp/c4=
-github.com/knadh/koanf/v2 v2.3.2/go.mod 
h1:gRb40VRAbd4iJMYYD5IxZ6hfuopFcXBpc9bbQpZwo28=
+github.com/knadh/koanf/v2 v2.3.4 
h1:fnynNSDlujWE+v83hAp8wKr/cdoxHLO0629SN+U8Urc=
+github.com/knadh/koanf/v2 v2.3.4/go.mod 
h1:gRb40VRAbd4iJMYYD5IxZ6hfuopFcXBpc9bbQpZwo28=
 github.com/mattn/go-colorable v0.1.14 
h1:9A9LHSqF/7dyVVX6g0U9cwm9pG3kP9gSzcuIPHPsaIE=
 github.com/mattn/go-colorable v0.1.14/go.mod 
h1:6LmQG8QLFO4G5z1gPvYEzlUgJ2wF+stgPZH1UqBm1s8=
-github.com/mattn/go-isatty v0.0.20 
h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWEY=
-github.com/mattn/go-isatty v0.0.20/go.mod 
h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y=
-github.com/mattn/go-runewidth v0.0.20 
h1:WcT52H91ZUAwy8+HUkdM3THM6gXqXuLJi9O3rjcQQaQ=
-github.com/mattn/go-runewidth v0.0.20/go.mod 
h1:XBkDxAl56ILZc9knddidhrOlY5R/pDhgLpndooCuJAs=
+github.com/mattn/go-isatty v0.0.22 
h1:j8l17JJ9i6VGPUFUYoTUKPSgKe/83EYU2zBC7YNKMw4=
+github.com/mattn/go-isatty v0.0.22/go.mod 
h1:ZXfXG4SQHsB/w3ZeOYbR0PrPwLy+n6xiMrJlRFqopa4=
+github.com/mattn/go-runewidth v0.0.23 
h1:7ykA0T0jkPpzSvMS5i9uoNn2Xy3R383f9HDx3RybWcw=
+github.com/mattn/go-runewidth v0.0.23/go.mod 
h1:XBkDxAl56ILZc9knddidhrOlY5R/pDhgLpndooCuJAs=
 github.com/miekg/dns v1.1.72 h1:vhmr+TF2A3tuoGNkLDFK9zi36F2LS+hKTRW0Uf8kbzI=
 github.com/miekg/dns v1.1.72/go.mod 
h1:+EuEPhdHOsfk6Wk5TT2CzssZdqkmFhf8r+aVyDEToIs=
 github.com/mitchellh/copystructure v1.2.0 
h1:vpKXTN4ewci03Vljg/q9QvCGUDttBOGBIa15WveJJGw=
@@ -54,18 +54,18 @@
 github.com/mitchellh/reflectwalk v1.0.2/go.mod 
h1:mSTlrgnPZtwu0c4WaC2kGObEpuNDbx0jmZXqmk4esnw=
 github.com/olekukonko/cat v0.0.0-20250911104152-50322a0618f6 
h1:zrbMGy9YXpIeTnGj4EljqMiZsIcE09mmF8XsD5AYOJc=
 github.com/olekukonko/cat v0.0.0-20250911104152-50322a0618f6/go.mod 
h1:rEKTHC9roVVicUIfZK7DYrdIoM0EOr8mK1Hj5s3JjH0=
-github.com/olekukonko/errors v1.2.0 
h1:10Zcn4GeV59t/EGqJc8fUjtFT/FuUh5bTMzZ1XwmCRo=
-github.com/olekukonko/errors v1.2.0/go.mod 
h1:ppzxA5jBKcO1vIpCXQ9ZqgDh8iwODz6OXIGKU8r5m4Y=
-github.com/olekukonko/ll v0.1.7 h1:WyK1YZwOTUKHEXZz3VydBDT5t3zDqa9yI8iJg5PHon4=
-github.com/olekukonko/ll v0.1.7/go.mod 
h1:RPRC6UcscfFZgjo1nulkfMH5IM0QAYim0LfnMvUuozw=
-github.com/olekukonko/tablewriter v1.1.3 
h1:VSHhghXxrP0JHl+0NnKid7WoEmd9/urKRJLysb70nnA=
-github.com/olekukonko/tablewriter v1.1.3/go.mod 
h1:9VU0knjhmMkXjnMKrZ3+L2JhhtsQ/L38BbL3CRNE8tM=
+github.com/olekukonko/errors v1.3.0 
h1:teJvgLGUEqMzBUms+Dj3/3szNqCG/Jdw9iDbum8fR6U=
+github.com/olekukonko/errors v1.3.0/go.mod 
h1:ppzxA5jBKcO1vIpCXQ9ZqgDh8iwODz6OXIGKU8r5m4Y=
+github.com/olekukonko/ll v0.1.8 h1:ysHCJRGHYKzmBSdz9w5AySztx7lG8SQY+naTGYUbsz8=
+github.com/olekukonko/ll v0.1.8/go.mod 
h1:RPRC6UcscfFZgjo1nulkfMH5IM0QAYim0LfnMvUuozw=
+github.com/olekukonko/tablewriter v1.1.4 
h1:ORUMI3dXbMnRlRggJX3+q7OzQFDdvgbN9nVWj1drm6I=
+github.com/olekukonko/tablewriter v1.1.4/go.mod 
h1:+kedxuyTtgoZLwif3P1Em4hARJs+mVnzKxmsCL/C5RY=
 github.com/pelletier/go-toml v1.9.5 
h1:4yBQzkHv+7BHq2PQUZF3Mx0IYxG7LsP222s7Agd3ve8=
 github.com/pelletier/go-toml v1.9.5/go.mod 
h1:u1nR/EPcESfeI/szUZKdtJ0xRNbUoANCkoOuaOx1Y+c=
 github.com/pmezard/go-difflib v1.0.0 
h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
 github.com/pmezard/go-difflib v1.0.0/go.mod 
h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
-github.com/quic-go/quic-go v0.59.0 
h1:OLJkp1Mlm/aS7dpKgTc6cnpynnD2Xg7C1pwL6vy/SAw=
-github.com/quic-go/quic-go v0.59.0/go.mod 
h1:upnsH4Ju1YkqpLXC305eW3yDZ4NfnNbmQRCMWS58IKU=
+github.com/quic-go/quic-go v0.59.1 
h1:0Gmua0HW1Tv7ANR7hUYwRyD0MG5OJfgvYSZasGZzBic=
+github.com/quic-go/quic-go v0.59.1/go.mod 
h1:upnsH4Ju1YkqpLXC305eW3yDZ4NfnNbmQRCMWS58IKU=
 github.com/spf13/pflag v1.0.10 h1:4EBh2KAYBwaONj6b2Ye1GiHfwjqyROoF4RwYO+vPwFk=
 github.com/spf13/pflag v1.0.10/go.mod 
h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg=
 github.com/stretchr/testify v1.11.1 
h1:7s2iGBzp5EwR7/aIZr8ao5+dra3wiQyKjjFuvgVKu7U=
@@ -74,22 +74,21 @@
 github.com/xyproto/randomstring v1.0.5/go.mod 
h1:rgmS5DeNXLivK7YprL0pY+lTuhNQW3iGxZ18UQApw/E=
 go.uber.org/mock v0.6.0 h1:hyF9dfmbgIX5EfOdasqLsWD6xqpNZlXblLB/Dbnwv3Y=
 go.uber.org/mock v0.6.0/go.mod h1:KiVJ4BqZJaMj4svdfmHM0AUx4NJYO8ZNpPnZn1Z+BBU=
-golang.org/x/crypto v0.48.0 h1:/VRzVqiRSggnhY7gNRxPauEQ5Drw9haKdM0jqfcCFts=
-golang.org/x/crypto v0.48.0/go.mod 
h1:r0kV5h3qnFPlQnBSrULhlsRfryS2pmewsg+XfMgkVos=
-golang.org/x/exp v0.0.0-20260218203240-3dfff04db8fa 
h1:Zt3DZoOFFYkKhDT3v7Lm9FDMEV06GpzjG2jrqW+QTE0=
-golang.org/x/exp v0.0.0-20260218203240-3dfff04db8fa/go.mod 
h1:K79w1Vqn7PoiZn+TkNpx3BUWUQksGO3JcVX6qIjytmA=
-golang.org/x/mod v0.33.0 h1:tHFzIWbBifEmbwtGz65eaWyGiGZatSrT9prnU8DbVL8=
-golang.org/x/mod v0.33.0/go.mod h1:swjeQEj+6r7fODbD2cqrnje9PnziFuw4bmLbBZFrQ5w=
-golang.org/x/net v0.50.0 h1:ucWh9eiCGyDR3vtzso0WMQinm2Dnt8cFMuQa9K33J60=
-golang.org/x/net v0.50.0/go.mod h1:UgoSli3F/pBgdJBHCTc+tp3gmrU4XswgGRgtnwWTfyM=
-golang.org/x/sync v0.19.0 h1:vV+1eWNmZ5geRlYjzm2adRgW2/mcpevXNg50YZtPCE4=
-golang.org/x/sync v0.19.0/go.mod 
h1:9KTHXmSnoGruLpwFjVSX0lNNA75CykiMECbovNTZqGI=
-golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
-golang.org/x/sys v0.41.0 h1:Ivj+2Cp/ylzLiEU89QhWblYnOE9zerudt9Ftecq2C6k=
-golang.org/x/sys v0.41.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks=
-golang.org/x/text v0.34.0 h1:oL/Qq0Kdaqxa1KbNeMKwQq0reLCCaFtqu2eNuSeNHbk=
-golang.org/x/text v0.34.0/go.mod 
h1:homfLqTYRFyVYemLBFl5GgL/DWEiH5wcsQ5gSh1yziA=
-golang.org/x/tools v0.42.0 h1:uNgphsn75Tdz5Ji2q36v/nsFSfR/9BRFvqhGBaJGd5k=
-golang.org/x/tools v0.42.0/go.mod 
h1:Ma6lCIwGZvHK6XtgbswSoWroEkhugApmsXyrUmBhfr0=
+golang.org/x/crypto v0.51.0 h1:IBPXwPfKxY7cWQZ38ZCIRPI50YLeevDLlLnyC5wRGTI=
+golang.org/x/crypto v0.51.0/go.mod 
h1:8AdwkbraGNABw2kOX6YFPs3WM22XqI4EXEd8g+x7Oc8=
+golang.org/x/exp v0.0.0-20260508232706-74f9aab9d74a 
h1:+3jdDGGB8NGb1Zktc737jlt3/A5f6UlwSzmvqUuufxw=
+golang.org/x/exp v0.0.0-20260508232706-74f9aab9d74a/go.mod 
h1:d2fgXJLVs4dYDHUk5lwMIfzRzSrWCfGZb0ZqeLa/Vcw=
+golang.org/x/mod v0.36.0 h1:JJjpVx6myfUsUdAzZuOSTTmRE0PfZeNWzzvKrP7amb4=
+golang.org/x/mod v0.36.0/go.mod h1:moc6ELqsWcOw5Ef3xVprK5ul/MvtVvkIXLziUOICjUQ=
+golang.org/x/net v0.54.0 h1:2zJIZAxAHV/OHCDTCOHAYehQzLfSXuf/5SoL/Dv6w/w=
+golang.org/x/net v0.54.0/go.mod h1:Sj4oj8jK6XmHpBZU/zWHw3BV3abl4Kvi+Ut7cQcY+cQ=
+golang.org/x/sync v0.20.0 h1:e0PTpb7pjO8GAtTs2dQ6jYa5BWYlMuX047Dco/pItO4=
+golang.org/x/sync v0.20.0/go.mod 
h1:9xrNwdLfx4jkKbNva9FpL6vEN7evnE43NNNJQ2LF3+0=
+golang.org/x/sys v0.44.0 h1:ildZl3J4uzeKP07r2F++Op7E9B29JRUy+a27EibtBTQ=
+golang.org/x/sys v0.44.0/go.mod h1:4GL1E5IUh+htKOUEOaiffhrAeqysfVGipDYzABqnCmw=
+golang.org/x/text v0.37.0 h1:Cqjiwd9eSg8e0QAkyCaQTNHFIIzWtidPahFWR83rTrc=
+golang.org/x/text v0.37.0/go.mod 
h1:a5sjxXGs9hsn/AJVwuElvCAo9v8QYLzvavO5z2PiM38=
+golang.org/x/tools v0.45.0 h1:18qN3FAooORvApf5XjCXgsuayZOEtXf6JK18I3+ONa8=
+golang.org/x/tools v0.45.0/go.mod 
h1:LuUGqqaXcXMEFEruIVJVm5mgDD8vww/z/SR1gQ4uE/0=
 gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
 gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/doggo-1.1.5/pkg/models/models.go 
new/doggo-1.1.6/pkg/models/models.go
--- old/doggo-1.1.5/pkg/models/models.go        2026-02-24 10:04:51.000000000 
+0100
+++ new/doggo-1.1.6/pkg/models/models.go        2026-05-20 09:36:30.000000000 
+0200
@@ -60,6 +60,7 @@
        Padding bool   `koanf:"padding" json:"padding"` // Request EDNS padding 
for privacy
        EDE     bool   `koanf:"ede" json:"ede"`         // Request Extended DNS 
Errors
        ECS     string `koanf:"ecs" json:"ecs"`         // EDNS Client Subnet
+       Bufsize uint16 `koanf:"bufsize" json:"bufsize"` // EDNS UDP buffer size 
(default: 1232 when EDNS enabled)
 
        // Globalping flags
        GPFrom  string `koanf:"gp-from" json:"gp-from"`
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/doggo-1.1.5/pkg/resolvers/dnscrypt.go 
new/doggo-1.1.6/pkg/resolvers/dnscrypt.go
--- old/doggo-1.1.5/pkg/resolvers/dnscrypt.go   2026-02-24 10:04:51.000000000 
+0100
+++ new/doggo-1.1.6/pkg/resolvers/dnscrypt.go   2026-05-20 09:36:30.000000000 
+0200
@@ -28,7 +28,7 @@
                net = "tcp"
        }
 
-       client := &dnscrypt.Client{Net: net, Timeout: resolverOpts.Timeout, 
UDPSize: 4096}
+       client := &dnscrypt.Client{Net: net, Timeout: resolverOpts.Timeout, 
UDPSize: 1232}
        resolverInfo, err := client.Dial(server)
        if err != nil {
                return nil, err
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/doggo-1.1.5/pkg/resolvers/utils.go 
new/doggo-1.1.6/pkg/resolvers/utils.go
--- old/doggo-1.1.5/pkg/resolvers/utils.go      2026-02-24 10:04:51.000000000 
+0100
+++ new/doggo-1.1.6/pkg/resolvers/utils.go      2026-05-20 09:36:30.000000000 
+0200
@@ -27,6 +27,7 @@
        Padding bool   // Request EDNS padding for privacy
        EDE     bool   // Request Extended DNS Errors
        ECS     string // EDNS Client Subnet (e.g., "192.0.2.0/24" or 
"2001:db8::/32")
+       Bufsize uint16 // EDNS UDP buffer size (default: 1232 when EDNS enabled)
 }
 
 // prepareMessages takes a  DNS Question and returns the
@@ -50,8 +51,12 @@
                msg.Zero = flags.Z
 
                // Set EDNS0 if any EDNS options are requested
-               if flags.DO || flags.NSID || flags.Cookie || flags.Padding || 
flags.EDE || flags.ECS != "" {
-                       msg.SetEdns0(4096, flags.DO)
+               if flags.DO || flags.NSID || flags.Cookie || flags.Padding || 
flags.EDE || flags.ECS != "" || flags.Bufsize > 0 {
+                       bufsize := flags.Bufsize
+                       if bufsize == 0 {
+                               bufsize = 1232
+                       }
+                       msg.SetEdns0(bufsize, flags.DO)
 
                        // Add EDNS0 options
                        opt := msg.IsEdns0()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/doggo-1.1.5/pkg/resolvers/utils_test.go 
new/doggo-1.1.6/pkg/resolvers/utils_test.go
--- old/doggo-1.1.5/pkg/resolvers/utils_test.go 1970-01-01 01:00:00.000000000 
+0100
+++ new/doggo-1.1.6/pkg/resolvers/utils_test.go 2026-05-20 09:36:30.000000000 
+0200
@@ -0,0 +1,70 @@
+package resolvers
+
+import (
+       "testing"
+
+       "github.com/miekg/dns"
+)
+
+func TestPrepareMessagesEDNS(t *testing.T) {
+       q := dns.Question{Name: "example.com.", Qtype: dns.TypeA, Qclass: 
dns.ClassINET}
+
+       tests := []struct {
+               name        string
+               flags       QueryFlags
+               wantEDNS    bool
+               wantBufsize uint16
+       }{
+               {
+                       name:     "no EDNS options omits OPT record",
+                       flags:    QueryFlags{RD: true},
+                       wantEDNS: false,
+               },
+               {
+                       name:        "DO flag advertises default 1232",
+                       flags:       QueryFlags{RD: true, DO: true},
+                       wantEDNS:    true,
+                       wantBufsize: 1232,
+               },
+               {
+                       name:        "explicit bufsize is used",
+                       flags:       QueryFlags{RD: true, Bufsize: 2048},
+                       wantEDNS:    true,
+                       wantBufsize: 2048,
+               },
+               {
+                       name:        "bufsize alone enables EDNS",
+                       flags:       QueryFlags{RD: true, Bufsize: 4096},
+                       wantEDNS:    true,
+                       wantBufsize: 4096,
+               },
+               {
+                       name:        "explicit bufsize overrides default when 
combined with DO",
+                       flags:       QueryFlags{RD: true, DO: true, Bufsize: 
1500},
+                       wantEDNS:    true,
+                       wantBufsize: 1500,
+               },
+       }
+
+       for _, tt := range tests {
+               t.Run(tt.name, func(t *testing.T) {
+                       msgs := prepareMessages(q, tt.flags, 1, nil)
+                       if len(msgs) != 1 {
+                               t.Fatalf("expected 1 message, got %d", 
len(msgs))
+                       }
+                       opt := msgs[0].IsEdns0()
+                       if !tt.wantEDNS {
+                               if opt != nil {
+                                       t.Errorf("expected no OPT record, got 
%+v", opt)
+                               }
+                               return
+                       }
+                       if opt == nil {
+                               t.Fatal("expected OPT record, got nil")
+                       }
+                       if got := opt.UDPSize(); got != tt.wantBufsize {
+                               t.Errorf("UDPSize = %d, want %d", got, 
tt.wantBufsize)
+                       }
+               })
+       }
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/doggo-1.1.5/web/handlers.go 
new/doggo-1.1.6/web/handlers.go
--- old/doggo-1.1.5/web/handlers.go     2026-02-24 10:04:51.000000000 +0100
+++ new/doggo-1.1.6/web/handlers.go     2026-05-20 09:36:30.000000000 +0200
@@ -108,6 +108,7 @@
                Padding: app.QueryFlags.Padding,
                EDE:     app.QueryFlags.EDE,
                ECS:     app.QueryFlags.ECS,
+               Bufsize: app.QueryFlags.Bufsize,
        }
 
        // Default to RD=true if not explicitly set

++++++ doggo.obsinfo ++++++
--- /var/tmp/diff_new_pack.BBhReP/_old  2026-05-20 15:27:16.508947583 +0200
+++ /var/tmp/diff_new_pack.BBhReP/_new  2026-05-20 15:27:16.516947914 +0200
@@ -1,5 +1,5 @@
 name: doggo
-version: 1.1.5
-mtime: 1771923891
-commit: c1e6f89eca428a69529223fffb088bdc31264310
+version: 1.1.6
+mtime: 1779262590
+commit: 2bcf2f719d2017db2d525cd8b31c65f4b8b54e69
 

++++++ vendor.tar.xz ++++++
++++ 48636 lines of diff (skipped)

Reply via email to