Antonio Mika
·
2026-10-10
1package main
2
3import (
4 "log/slog"
5 "os"
6
7 "github.com/picosh/pico/pkg/db/postgres"
8 "github.com/picosh/pico/pkg/shared"
9)
10
11func main() {
12 logger := slog.Default()
13 picoDb := postgres.NewDB(os.Getenv("DATABASE_URL"), logger)
14
15 logger.Info("fetching all posts")
16 posts, err := picoDb.FindPosts()
17 if err != nil {
18 panic(err)
19 }
20
21 empty := 0
22 diff := 0
23 for _, post := range posts {
24 nextShasum := shared.Shasum([]byte(post.Text))
25 if post.Shasum == "" {
26 empty += 1
27 } else if post.Shasum != nextShasum {
28 diff += 1
29 }
30 post.Shasum = nextShasum
31
32 _, err := picoDb.UpdatePost(post)
33 if err != nil {
34 panic(err)
35 }
36 }
37
38 logger.Info("empty, diff", "empty", empty, "diff", diff)
39}