1diff --git a/cmd/server/main.go b/cmd/server/main.go
2index c2160c4890eeba599b53517c8d89246262764350..a7143d2f6e45196c3bf45b057d1d37466d4c7dbd 100644
3--- a/cmd/server/main.go
4+++ b/cmd/server/main.go
5@@ -4,7 +4,6 @@ import (
6 "context"
7 "encoding/base64"
8 "errors"
9- "log/slog"
10 "net/http"
11 "os"
12 "os/signal"
13@@ -13,6 +12,7 @@
14 "github.com/glebarez/sqlite"
15 "github.com/gorilla/mux"
16 flag "github.com/spf13/pflag"
17+ "golang.org/x/exp/slog"
18 "gorm.io/driver/mysql"
19 "gorm.io/driver/postgres"
20 "gorm.io/gorm"
21diff --git a/go.mod b/go.mod
22index b8e4bb7bc9e76aa474179b2fc77cc1842c457451..5a33eafd117fbfb2fffe78ea08e9a4b422a4bd52 100644
23--- a/go.mod
24+++ b/go.mod
25@@ -11,6 +11,7 @@ github.com/h2non/bimg v1.1.9
26 github.com/spf13/pflag v1.0.5
27 github.com/valyala/quicktemplate v1.7.0
28 golang.org/x/crypto v0.8.0
29+ golang.org/x/exp v0.0.0-20231127185646-65229373498e
30 gorm.io/driver/mysql v1.5.1
31 gorm.io/driver/postgres v1.5.2
32 gorm.io/driver/sqlite v1.5.0
33diff --git a/go.sum b/go.sum
34index 03f8b3e75ff3a728a009724d1556164ca2a4caf2..00e2463413f3f24e6836d25ced01c82edce761fe 100644
35--- a/go.sum
36+++ b/go.sum
37@@ -63,6 +63,8 @@ github.com/valyala/tcplisten v1.0.0/go.mod h1:T0xQ8SeCZGxckz9qRXTfG43PvQ/mcWh7FwZEA7Ioqkc=
38 golang.org/x/crypto v0.0.0-20210513164829-c07d793c2f9a/go.mod h1:P+XmwS30IXTQdn5tA2iutPOUgjI07+tq3H3K9MVA1s8=
39 golang.org/x/crypto v0.8.0 h1:pd9TJtTueMTVQXzk8E2XESSMQDj/U7OUu0PqJqPXQjQ=
40 golang.org/x/crypto v0.8.0/go.mod h1:mRqEX+O9/h5TFCrQhkgjo2yKi0yYA+9ecGkdQoHrywE=
41+golang.org/x/exp v0.0.0-20231127185646-65229373498e h1:Gvh4YaCaXNs6dKTlfgismwWZKyjVZXwOPfIyUaqU3No=
42+golang.org/x/exp v0.0.0-20231127185646-65229373498e/go.mod h1:iRJReGqOEeBhDZGkGbynYwcHlctCvnjTYIamk7uXpHI=
43 golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=
44 golang.org/x/net v0.0.0-20210510120150-4163338589ed/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
45 golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
46diff --git a/pkg/ext/gorm_logger.go b/pkg/ext/gorm_logger.go
47index f0ab59264e7ff3efdea2fe57e613c52c628af9cf..ddced211a05a1b0259bc51e121230a7db390b64d 100644
48--- a/pkg/ext/gorm_logger.go
49+++ b/pkg/ext/gorm_logger.go
50@@ -3,9 +3,9 @@
51 import (
52 "context"
53 "fmt"
54- "log/slog"
55 "time"
56
57+ "golang.org/x/exp/slog"
58 "gorm.io/gorm/logger"
59 "gorm.io/gorm/utils"
60 )
61diff --git a/pkg/ext/middleware.go b/pkg/ext/middleware.go
62index 38bacca92dc571629e62545f05d3a89362f9d758..d9f06e15515cddc0af33453fdaa1aa34da336a9e 100644
63--- a/pkg/ext/middleware.go
64+++ b/pkg/ext/middleware.go
65@@ -4,9 +4,10 @@ import (
66 "context"
67 "encoding/base64"
68 "errors"
69- "log/slog"
70 "net/http"
71 "time"
72+
73+ "golang.org/x/exp/slog"
74
75 "git.sr.ht/~gabrielgio/img/pkg/database/repository"
76 "git.sr.ht/~gabrielgio/img/pkg/service"
77@@ -47,7 +48,6 @@ r.Method,
78 slog.Duration("elapsed", elapsed),
79 slog.String("path", r.URL.Path),
80 )
81-
82 }
83 }
84
85@@ -135,7 +135,6 @@ }
86
87 func (i *InitialSetupMiddleware) Check(next http.HandlerFunc) http.HandlerFunc {
88 return func(w http.ResponseWriter, r *http.Request) {
89-
90 // if user has been set to context it is logged in already
91 token := GetUserFromCtx(r)
92 if token != nil {
93diff --git a/pkg/service/filesystem.go b/pkg/service/filesystem.go
94index 1364fd8deb7e0e01af4d4c509c07487ae7367e26..34eda61b9fb8a7c22b9cf1b89134b627b49d06d9 100644
95--- a/pkg/service/filesystem.go
96+++ b/pkg/service/filesystem.go
97@@ -104,7 +104,6 @@ return !inf.IsDir(), nil
98 }
99
100 func (f *FileSystemController) GetPage(ctx context.Context, filename string, fullPath string) (*Page, error) {
101-
102 files, err := f.fsRepository.List(fullPath)
103 if err != nil {
104 return nil, err
105diff --git a/pkg/worker/list_processor.go b/pkg/worker/list_processor.go
106index c4c37819c2c8542e7d39d30ba753bbc2457b7005..2a51466fe7081e12b049eec04221d675bc35ac34 100644
107--- a/pkg/worker/list_processor.go
108+++ b/pkg/worker/list_processor.go
109@@ -3,8 +3,9 @@
110 import (
111 "context"
112 "errors"
113- "log/slog"
114 "sync"
115+
116+ "golang.org/x/exp/slog"
117 )
118
119 type (
120diff --git a/pkg/worker/list_processor_test.go b/pkg/worker/list_processor_test.go
121index 21489e82685e62ed1e6f85d04f5209dbc59d7feb..053ebbd5e894cddc6aee6b12fc62d1dbaef89b3a 100644
122--- a/pkg/worker/list_processor_test.go
123+++ b/pkg/worker/list_processor_test.go
124@@ -5,10 +5,11 @@
125 import (
126 "context"
127 "errors"
128- "log/slog"
129 "math/rand"
130 "sync"
131 "testing"
132+
133+ "golang.org/x/exp/slog"
134
135 "git.sr.ht/~gabrielgio/img/pkg/testkit"
136 )