Skip to content

Commit f9093b0

Browse files
committed
feat: upgrade lipgloss & copy logger package back over to vulnfeeds
1 parent a98c1c6 commit f9093b0

19 files changed

Lines changed: 475 additions & 178 deletions

File tree

go/go.mod

Lines changed: 15 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,12 @@ module github.com/google/osv.dev/go
33
go 1.26.0
44

55
require (
6+
charm.land/lipgloss/v2 v2.0.0
67
cloud.google.com/go/datastore v1.22.0
78
cloud.google.com/go/monitoring v1.24.3
89
cloud.google.com/go/pubsub/v2 v2.4.0
910
cloud.google.com/go/storage v1.60.0
1011
github.com/GoogleCloudPlatform/opentelemetry-operations-go/exporter/trace v1.31.0
11-
github.com/charmbracelet/lipgloss v1.1.0
1212
github.com/go-git/go-git/v6 v6.0.0-20260223163356-097ea99c34a7
1313
github.com/google/go-cmp v0.7.0
1414
github.com/hashicorp/go-retryablehttp v0.7.8
@@ -27,6 +27,15 @@ require (
2727
k8s.io/apimachinery v0.35.1
2828
)
2929

30+
require (
31+
github.com/charmbracelet/ultraviolet v0.0.0-20251205161215-1948445e3318 // indirect
32+
github.com/charmbracelet/x/termios v0.1.1 // indirect
33+
github.com/charmbracelet/x/windows v0.2.2 // indirect
34+
github.com/clipperhouse/displaywidth v0.11.0 // indirect
35+
github.com/clipperhouse/uax29/v2 v2.7.0 // indirect
36+
github.com/muesli/cancelreader v0.2.2 // indirect
37+
)
38+
3039
require (
3140
cel.dev/expr v0.25.1 // indirect
3241
cloud.google.com/go v0.123.0 // indirect
@@ -40,12 +49,10 @@ require (
4049
github.com/GoogleCloudPlatform/opentelemetry-operations-go/internal/resourcemapping v0.55.0 // indirect
4150
github.com/Microsoft/go-winio v0.6.2 // indirect
4251
github.com/ProtonMail/go-crypto v1.3.0 // indirect
43-
github.com/aymanbagabas/go-osc52/v2 v2.0.1 // indirect
4452
github.com/cespare/xxhash/v2 v2.3.0 // indirect
45-
github.com/charmbracelet/colorprofile v0.2.3-0.20250311203215-f60798e515dc // indirect
46-
github.com/charmbracelet/x/ansi v0.8.0 // indirect
47-
github.com/charmbracelet/x/cellbuf v0.0.13-0.20250311204145-2c3ea96c31dd // indirect
48-
github.com/charmbracelet/x/term v0.2.1 // indirect
53+
github.com/charmbracelet/colorprofile v0.4.2 // indirect
54+
github.com/charmbracelet/x/ansi v0.11.6 // indirect
55+
github.com/charmbracelet/x/term v0.2.2 // indirect
4956
github.com/cloudflare/circl v1.6.3 // indirect
5057
github.com/cncf/xds/go v0.0.0-20251210132809-ee656c7534f5 // indirect
5158
github.com/cyphar/filepath-securejoin v0.6.1 // indirect
@@ -66,10 +73,8 @@ require (
6673
github.com/hashicorp/go-cleanhttp v0.5.2 // indirect
6774
github.com/kevinburke/ssh_config v1.5.0 // indirect
6875
github.com/klauspost/cpuid/v2 v2.3.0 // indirect
69-
github.com/lucasb-eyer/go-colorful v1.2.0 // indirect
70-
github.com/mattn/go-isatty v0.0.20 // indirect
71-
github.com/mattn/go-runewidth v0.0.16 // indirect
72-
github.com/muesli/termenv v0.16.0 // indirect
76+
github.com/lucasb-eyer/go-colorful v1.3.0 // indirect
77+
github.com/mattn/go-runewidth v0.0.19 // indirect
7378
github.com/pjbgf/sha1cd v0.5.0 // indirect
7479
github.com/planetscale/vtprotobuf v0.6.1-0.20240319094008-0393e58bdf10 // indirect
7580
github.com/rivo/uniseg v0.4.7 // indirect

go/go.sum

Lines changed: 24 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
cel.dev/expr v0.25.1 h1:1KrZg61W6TWSxuNZ37Xy49ps13NUovb66QLprthtwi4=
22
cel.dev/expr v0.25.1/go.mod h1:hrXvqGP6G6gyx8UAHSHJ5RGk//1Oj5nXQ2NI02Nrsg4=
3+
charm.land/lipgloss/v2 v2.0.0 h1:sd8N/B3x892oiOjFfBQdXBQp3cAkvjGaU5TvVZC3ivo=
4+
charm.land/lipgloss/v2 v2.0.0/go.mod h1:w6SnmsBFBmEFBodiEDurGS/sdUY/u1+v72DqUzc6J14=
35
cloud.google.com/go v0.26.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw=
46
cloud.google.com/go v0.123.0 h1:2NAUJwPR47q+E35uaJeYoNhuNEM9kM8SjgRgdeOJUSE=
57
cloud.google.com/go v0.123.0/go.mod h1:xBoMV08QcqUGuPW65Qfm1o9Y4zKZBpGS+7bImXLTAZU=
@@ -44,22 +46,26 @@ github.com/anmitsu/go-shlex v0.0.0-20200514113438-38f4b401e2be h1:9AeTilPcZAjCFI
4446
github.com/anmitsu/go-shlex v0.0.0-20200514113438-38f4b401e2be/go.mod h1:ySMOLuWl6zY27l47sB3qLNK6tF2fkHG55UZxx8oIVo4=
4547
github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5 h1:0CwZNZbxp69SHPdPJAN/hZIm0C4OItdklCFmMRWYpio=
4648
github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5/go.mod h1:wHh0iHkYZB8zMSxRWpUBQtwG5a7fFgvEO+odwuTv2gs=
47-
github.com/aymanbagabas/go-osc52/v2 v2.0.1 h1:HwpRHbFMcZLEVr42D4p7XBqjyuxQH5SMiErDT4WkJ2k=
48-
github.com/aymanbagabas/go-osc52/v2 v2.0.1/go.mod h1:uYgXzlJ7ZpABp8OJ+exZzJJhRNQ2ASbcXHWsFqH8hp8=
4949
github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU=
5050
github.com/cespare/xxhash/v2 v2.3.0 h1:UL815xU9SqsFlibzuggzjXhog7bL6oX9BbNZnL2UFvs=
5151
github.com/cespare/xxhash/v2 v2.3.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs=
52-
github.com/charmbracelet/colorprofile v0.2.3-0.20250311203215-f60798e515dc h1:4pZI35227imm7yK2bGPcfpFEmuY1gc2YSTShr4iJBfs=
53-
github.com/charmbracelet/colorprofile v0.2.3-0.20250311203215-f60798e515dc/go.mod h1:X4/0JoqgTIPSFcRA/P6INZzIuyqdFY5rm8tb41s9okk=
54-
github.com/charmbracelet/lipgloss v1.1.0 h1:vYXsiLHVkK7fp74RkV7b2kq9+zDLoEU4MZoFqR/noCY=
55-
github.com/charmbracelet/lipgloss v1.1.0/go.mod h1:/6Q8FR2o+kj8rz4Dq0zQc3vYf7X+B0binUUBwA0aL30=
56-
github.com/charmbracelet/x/ansi v0.8.0 h1:9GTq3xq9caJW8ZrBTe0LIe2fvfLR/bYXKTx2llXn7xE=
57-
github.com/charmbracelet/x/ansi v0.8.0/go.mod h1:wdYl/ONOLHLIVmQaxbIYEC/cRKOQyjTkowiI4blgS9Q=
58-
github.com/charmbracelet/x/cellbuf v0.0.13-0.20250311204145-2c3ea96c31dd h1:vy0GVL4jeHEwG5YOXDmi86oYw2yuYUGqz6a8sLwg0X8=
59-
github.com/charmbracelet/x/cellbuf v0.0.13-0.20250311204145-2c3ea96c31dd/go.mod h1:xe0nKWGd3eJgtqZRaN9RjMtK7xUYchjzPr7q6kcvCCs=
60-
github.com/charmbracelet/x/term v0.2.1 h1:AQeHeLZ1OqSXhrAWpYUtZyX1T3zVxfpZuEQMIQaGIAQ=
61-
github.com/charmbracelet/x/term v0.2.1/go.mod h1:oQ4enTYFV7QN4m0i9mzHrViD7TQKvNEEkHUMCmsxdUg=
52+
github.com/charmbracelet/colorprofile v0.4.2 h1:BdSNuMjRbotnxHSfxy+PCSa4xAmz7szw70ktAtWRYrY=
53+
github.com/charmbracelet/colorprofile v0.4.2/go.mod h1:0rTi81QpwDElInthtrQ6Ni7cG0sDtwAd4C4le060fT8=
54+
github.com/charmbracelet/ultraviolet v0.0.0-20251205161215-1948445e3318 h1:OqDqxQZliC7C8adA7KjelW3OjtAxREfeHkNcd66wpeI=
55+
github.com/charmbracelet/ultraviolet v0.0.0-20251205161215-1948445e3318/go.mod h1:Y6kE2GzHfkyQQVCSL9r2hwokSrIlHGzZG+71+wDYSZI=
56+
github.com/charmbracelet/x/ansi v0.11.6 h1:GhV21SiDz/45W9AnV2R61xZMRri5NlLnl6CVF7ihZW8=
57+
github.com/charmbracelet/x/ansi v0.11.6/go.mod h1:2JNYLgQUsyqaiLovhU2Rv/pb8r6ydXKS3NIttu3VGZQ=
58+
github.com/charmbracelet/x/term v0.2.2 h1:xVRT/S2ZcKdhhOuSP4t5cLi5o+JxklsoEObBSgfgZRk=
59+
github.com/charmbracelet/x/term v0.2.2/go.mod h1:kF8CY5RddLWrsgVwpw4kAa6TESp6EB5y3uxGLeCqzAI=
60+
github.com/charmbracelet/x/termios v0.1.1 h1:o3Q2bT8eqzGnGPOYheoYS8eEleT5ZVNYNy8JawjaNZY=
61+
github.com/charmbracelet/x/termios v0.1.1/go.mod h1:rB7fnv1TgOPOyyKRJ9o+AsTU/vK5WHJ2ivHeut/Pcwo=
62+
github.com/charmbracelet/x/windows v0.2.2 h1:IofanmuvaxnKHuV04sC0eBy/smG6kIKrWG2/jYn2GuM=
63+
github.com/charmbracelet/x/windows v0.2.2/go.mod h1:/8XtdKZzedat74NQFn0NGlGL4soHB0YQZrETF96h75k=
6264
github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw=
65+
github.com/clipperhouse/displaywidth v0.11.0 h1:lBc6kY44VFw+TDx4I8opi/EtL9m20WSEFgwIwO+UVM8=
66+
github.com/clipperhouse/displaywidth v0.11.0/go.mod h1:bkrFNkf81G8HyVqmKGxsPufD3JhNl3dSqnGhOoSD/o0=
67+
github.com/clipperhouse/uax29/v2 v2.7.0 h1:+gs4oBZ2gPfVrKPthwbMzWZDaAFPGYK72F0NJv2v7Vk=
68+
github.com/clipperhouse/uax29/v2 v2.7.0/go.mod h1:EFJ2TJMRUaplDxHKj1qAEhCtQPW2tJSwu5BF98AuoVM=
6369
github.com/cloudflare/circl v1.6.3 h1:9GPOhQGF9MCYUeXyMYlqTR6a5gTrgR/fBLXvUgtVcg8=
6470
github.com/cloudflare/circl v1.6.3/go.mod h1:2eXP6Qfat4O/Yhh8BznvKnJ+uzEoTQ6jVKJRn81BiS4=
6571
github.com/cncf/udpa/go v0.0.0-20191209042840-269d4d468f6f/go.mod h1:M8M6+tZqaGXZJjfX53e64911xZQV5JYwmTeXPW+k8Sc=
@@ -158,16 +164,16 @@ github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ=
158164
github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI=
159165
github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY=
160166
github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE=
161-
github.com/lucasb-eyer/go-colorful v1.2.0 h1:1nnpGOrhyZZuNyfu1QjKiUICQ74+3FNCN69Aj6K7nkY=
162-
github.com/lucasb-eyer/go-colorful v1.2.0/go.mod h1:R4dSotOR9KMtayYi1e77YzuveK+i7ruzyGqttikkLy0=
167+
github.com/lucasb-eyer/go-colorful v1.3.0 h1:2/yBRLdWBZKrf7gB40FoiKfAWYQ0lqNcbuQwVHXptag=
168+
github.com/lucasb-eyer/go-colorful v1.3.0/go.mod h1:R4dSotOR9KMtayYi1e77YzuveK+i7ruzyGqttikkLy0=
163169
github.com/mattn/go-colorable v0.1.13 h1:fFA4WZxdEF4tXPZVKMLwD8oUnCTTo08duU7wxecdEvA=
164170
github.com/mattn/go-colorable v0.1.13/go.mod h1:7S9/ev0klgBDR4GtXTXX8a3vIGJpMovkB8vQcUbaXHg=
165171
github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWEY=
166172
github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y=
167-
github.com/mattn/go-runewidth v0.0.16 h1:E5ScNMtiwvlvB5paMFdw9p4kSQzbXFikJ5SQO6TULQc=
168-
github.com/mattn/go-runewidth v0.0.16/go.mod h1:Jdepj2loyihRzMpdS35Xk/zdY8IAYHsh153qUoGf23w=
169-
github.com/muesli/termenv v0.16.0 h1:S5AlUN9dENB57rsbnkPyfdGuWIlkmzJjbFf0Tf5FWUc=
170-
github.com/muesli/termenv v0.16.0/go.mod h1:ZRfOIKPFDYQoDFF4Olj7/QJbW60Ol/kL1pU3VfY/Cnk=
173+
github.com/mattn/go-runewidth v0.0.19 h1:v++JhqYnZuu5jSKrk9RbgF5v4CGUjqRfBm05byFGLdw=
174+
github.com/mattn/go-runewidth v0.0.19/go.mod h1:XBkDxAl56ILZc9knddidhrOlY5R/pDhgLpndooCuJAs=
175+
github.com/muesli/cancelreader v0.2.2 h1:3I4Kt4BQjOR54NavqnDogx/MIoWBFa0StPA8ELUXHmA=
176+
github.com/muesli/cancelreader v0.2.2/go.mod h1:3XuTXfFS2VjM+HTLZY9Ak0l6eUKfijIfMUZ4EgX0QYo=
171177
github.com/ossf/osv-schema/bindings/go v0.0.0-20260129002236-09a17f85b44a h1:XHKiGf7vsACh43gFCBb5lOxDjnY6CQYNoQXsO/SlI6k=
172178
github.com/ossf/osv-schema/bindings/go v0.0.0-20260129002236-09a17f85b44a/go.mod h1:Eo7R19vlnflsCRdHW1ynyNUyoRwxdaTmTWD9MtKnJTc=
173179
github.com/pjbgf/sha1cd v0.5.0 h1:a+UkboSi1znleCDUNT3M5YxjOnN1fz2FhN48FlwCxs0=
@@ -178,7 +184,6 @@ github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZN
178184
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 h1:Jamvg5psRIccs7FGNTlIRMkT8wgtp5eCXdBlqhYGL6U=
179185
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
180186
github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA=
181-
github.com/rivo/uniseg v0.2.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc=
182187
github.com/rivo/uniseg v0.4.7 h1:WUdvkW8uEhrYfLC4ZzdpI2ztxP1I582+49Oc5Mq64VQ=
183188
github.com/rivo/uniseg v0.4.7/go.mod h1:FN3SvrM+Zdj16jyLfmOkMNblXMcoc8DfTHruCPUcx88=
184189
github.com/rogpeppe/go-internal v1.14.1 h1:UQB4HGPB6osV0SQTLymcB4TgvyWu6ZyliaW0tI/otEQ=
@@ -271,7 +276,6 @@ golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5h
271276
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
272277
golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
273278
golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
274-
golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
275279
golang.org/x/sys v0.41.0 h1:Ivj+2Cp/ylzLiEU89QhWblYnOE9zerudt9Ftecq2C6k=
276280
golang.org/x/sys v0.41.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks=
277281
golang.org/x/term v0.40.0 h1:36e4zGLqU4yhjlmxEaagx2KuYbJq3EwY8K943ZsHcvg=

go/logger/localhandler.go

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,16 +3,17 @@ package logger
33
import (
44
"context"
55
"fmt"
6+
"image/color"
67
"io"
78
"log/slog"
89
"os"
910
"strings"
1011

11-
"github.com/charmbracelet/lipgloss"
12+
"charm.land/lipgloss/v2"
1213
)
1314

1415
var (
15-
levelColors = map[slog.Level]lipgloss.Color{
16+
levelColors = map[slog.Level]color.Color{
1617
slog.LevelDebug: lipgloss.Color("5"), // Purple
1718
slog.LevelInfo: lipgloss.Color("4"), // Blue
1819
slog.LevelWarn: lipgloss.Color("3"), // Yellow
@@ -61,20 +62,20 @@ func (h *localHandler) Enabled(_ context.Context, level slog.Level) bool {
6162
func (h *localHandler) Handle(_ context.Context, r slog.Record) error {
6263
// INFO: message foo=bar
6364
sb := &strings.Builder{}
64-
fmt.Fprint(sb, levelStyle.Foreground(levelColors[r.Level]).Render(r.Level.String()+":"))
65-
fmt.Fprint(sb, messageStyle.Render(r.Message))
65+
sb.WriteString(levelStyle.Foreground(levelColors[r.Level]).Render(r.Level.String()+":"))
66+
sb.WriteString(messageStyle.Render(r.Message))
6667
r.Attrs(func(a slog.Attr) bool {
6768
keyStyle := keyStyle
6869
if a.Key == "err" || a.Key == "error" {
6970
// Make the error key bright red.
7071
keyStyle = keyStyle.Foreground(lipgloss.Color("9"))
7172
}
72-
fmt.Fprint(sb, " "+keyStyle.Render(a.Key+"="))
73-
fmt.Fprint(sb, valueStyle.Render(fmt.Sprintf("%v", a.Value)))
73+
sb.WriteString(" " + keyStyle.Render(a.Key+"="))
74+
sb.WriteString(valueStyle.Render(fmt.Sprintf("%v", a.Value)))
7475

7576
return true
7677
})
77-
_, err := fmt.Fprintln(h.w, sb.String())
78+
_, err := lipgloss.Fprintln(h.w, sb.String())
7879

7980
return err
8081
}

vulnfeeds/cmd/combine-to-osv/main.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ const (
3232

3333
func main() {
3434
logger.InitGlobalLogger()
35+
defer logger.Close()
3536

3637
cve5Path := flag.String("cve5-path", defaultCVE5Path, "Path to CVE5 OSV files")
3738
nvdPath := flag.String("nvd-path", defaultNVDOSVPath, "Path to NVD OSV files")

vulnfeeds/cmd/converters/alpine/main.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ const (
3333

3434
func main() {
3535
logger.InitGlobalLogger()
36+
defer logger.Close()
3637

3738
alpineOutputPath := flag.String(
3839
"output-path",

vulnfeeds/cmd/converters/cve/cve5/bulk-converter/main.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@ var cnaAllowlistData []byte
3535
func main() {
3636
flag.Parse()
3737
logger.InitGlobalLogger()
38+
defer logger.Close()
3839

3940
logger.Info("Commencing CVE to OSV conversion run")
4041
if err := os.MkdirAll(*localOutputDir, 0755); err != nil {

vulnfeeds/cmd/converters/cve/cve5/single-converter/main.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ func main() {
2222
jsonPath := flag.Arg(0)
2323

2424
logger.InitGlobalLogger()
25+
defer logger.Close()
2526

2627
// Read the input CVE JSON file.
2728
data, err := os.ReadFile(jsonPath)

vulnfeeds/cmd/converters/cve/nvd-cve-osv/main.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,7 @@ func main() {
6868
}
6969

7070
logger.InitGlobalLogger()
71+
defer logger.Close()
7172

7273
data, err := os.ReadFile(*jsonPath)
7374
if err != nil {

vulnfeeds/cmd/converters/debian/main.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ const (
3333

3434
func main() {
3535
logger.InitGlobalLogger()
36+
defer logger.Close()
3637

3738
debianOutputPath := flag.String("output-path", debianOutputPathDefault, "Path to output OSV files.")
3839
outputBucketName := flag.String("output-bucket", outputBucketDefault, "The GCS bucket to write to.")

vulnfeeds/cmd/ids/main.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,7 @@ func main() {
5050
flag.Parse()
5151

5252
logger.InitGlobalLogger()
53+
defer logger.Close()
5354

5455
if *prefix == "" || *dir == "" {
5556
flag.Usage()

0 commit comments

Comments
 (0)