Skip to content

Commit b32417e

Browse files
committed
perms: extract into standalone module to limit LNC dependencies
Converted the perms package into its own module to prevent Lightning Node Connect from importing the entire lit repo, which includes taproot-assets. This change avoids exhausting symbol limits in the LNC WASM client due to unnecessary transitive dependencies.
1 parent 1a14fdd commit b32417e

File tree

3 files changed

+1003
-0
lines changed

3 files changed

+1003
-0
lines changed

go.mod

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ require (
2121
github.com/lightninglabs/lightning-node-connect v0.3.3-alpha.0.20250306111457-cad4234830cc
2222
github.com/lightninglabs/lightning-terminal/autopilotserverrpc v0.0.2
2323
github.com/lightninglabs/lightning-terminal/litrpc v1.0.1
24+
github.com/lightninglabs/lightning-terminal/perms v1.0.0
2425
github.com/lightninglabs/lndclient v0.19.0-4
2526
github.com/lightninglabs/loop v0.31.0-beta.0.20250502080242-8ef7584f9f56
2627
github.com/lightninglabs/loop/looprpc v1.0.7
@@ -230,6 +231,7 @@ require (
230231
replace (
231232
github.com/lightninglabs/lightning-terminal/autopilotserverrpc => ./autopilotserverrpc
232233
github.com/lightninglabs/lightning-terminal/litrpc => ./litrpc
234+
github.com/lightninglabs/lightning-terminal/perms => ./perms
233235
)
234236

235237
// We want to format raw bytes as hex instead of base64. The forked version

perms/go.mod

Lines changed: 190 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,190 @@
1+
module github.com/lightninglabs/lightning-terminal/perms
2+
3+
go 1.23.6
4+
5+
require (
6+
github.com/btcsuite/btcd v0.24.3-0.20250318170759-4f4ea81776d6
7+
github.com/lightningnetwork/lnd v0.19.0-beta.rc3
8+
github.com/stretchr/testify v1.9.0
9+
gopkg.in/macaroon-bakery.v2 v2.3.0
10+
)
11+
12+
require (
13+
github.com/Azure/go-ansiterm v0.0.0-20230124172434-306776ec8161 // indirect
14+
github.com/Microsoft/go-winio v0.6.1 // indirect
15+
github.com/NebulousLabs/fastrand v0.0.0-20181203155948-6fb6489aac4e // indirect
16+
github.com/NebulousLabs/go-upnp v0.0.0-20180202185039-29b680b06c82 // indirect
17+
github.com/Nvveen/Gotty v0.0.0-20120604004816-cd527374f1e5 // indirect
18+
github.com/Yawning/aez v0.0.0-20211027044916-e49e68abd344 // indirect
19+
github.com/aead/chacha20 v0.0.0-20180709150244-8b13a72661da // indirect
20+
github.com/aead/siphash v1.0.1 // indirect
21+
github.com/beorn7/perks v1.0.1 // indirect
22+
github.com/btcsuite/btcd/btcec/v2 v2.3.4 // indirect
23+
github.com/btcsuite/btcd/btcutil v1.1.5 // indirect
24+
github.com/btcsuite/btcd/btcutil/psbt v1.1.8 // indirect
25+
github.com/btcsuite/btcd/chaincfg/chainhash v1.1.0 // indirect
26+
github.com/btcsuite/btclog v0.0.0-20241003133417-09c4e92e319c // indirect
27+
github.com/btcsuite/btclog/v2 v2.0.1-0.20250110154127-3ae4bf1cb318 // indirect
28+
github.com/btcsuite/btcwallet v0.16.13 // indirect
29+
github.com/btcsuite/btcwallet/wallet/txauthor v1.3.5 // indirect
30+
github.com/btcsuite/btcwallet/wallet/txrules v1.2.2 // indirect
31+
github.com/btcsuite/btcwallet/wallet/txsizes v1.2.5 // indirect
32+
github.com/btcsuite/btcwallet/walletdb v1.5.1 // indirect
33+
github.com/btcsuite/btcwallet/wtxmgr v1.5.6 // indirect
34+
github.com/btcsuite/go-socks v0.0.0-20170105172521-4720035b7bfd // indirect
35+
github.com/btcsuite/websocket v0.0.0-20150119174127-31079b680792 // indirect
36+
github.com/btcsuite/winsvc v1.0.0 // indirect
37+
github.com/cenkalti/backoff/v4 v4.2.1 // indirect
38+
github.com/cespare/xxhash/v2 v2.2.0 // indirect
39+
github.com/containerd/continuity v0.3.0 // indirect
40+
github.com/coreos/go-semver v0.3.0 // indirect
41+
github.com/coreos/go-systemd v0.0.0-20190719114852-fd7a80b32e1f // indirect
42+
github.com/coreos/go-systemd/v22 v22.3.2 // indirect
43+
github.com/davecgh/go-spew v1.1.1 // indirect
44+
github.com/decred/dcrd/crypto/blake256 v1.0.1 // indirect
45+
github.com/decred/dcrd/dcrec/secp256k1/v4 v4.3.0 // indirect
46+
github.com/decred/dcrd/lru v1.1.2 // indirect
47+
github.com/docker/cli v20.10.17+incompatible // indirect
48+
github.com/docker/docker v24.0.7+incompatible // indirect
49+
github.com/docker/go-connections v0.4.0 // indirect
50+
github.com/docker/go-units v0.5.0 // indirect
51+
github.com/dustin/go-humanize v1.0.1 // indirect
52+
github.com/fergusstrange/embedded-postgres v1.25.0 // indirect
53+
github.com/go-errors/errors v1.0.1 // indirect
54+
github.com/go-logr/logr v1.3.0 // indirect
55+
github.com/go-logr/stdr v1.2.2 // indirect
56+
github.com/go-macaroon-bakery/macaroonpb v1.0.0 // indirect
57+
github.com/gofrs/uuid v4.2.0+incompatible // indirect
58+
github.com/gogo/protobuf v1.3.2 // indirect
59+
github.com/golang-jwt/jwt/v4 v4.4.2 // indirect
60+
github.com/golang-migrate/migrate/v4 v4.17.0 // indirect
61+
github.com/golang/protobuf v1.5.3 // indirect
62+
github.com/golang/snappy v0.0.4 // indirect
63+
github.com/google/btree v1.0.1 // indirect
64+
github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510 // indirect
65+
github.com/google/uuid v1.6.0 // indirect
66+
github.com/gorilla/websocket v1.5.0 // indirect
67+
github.com/grpc-ecosystem/go-grpc-middleware v1.3.0 // indirect
68+
github.com/grpc-ecosystem/go-grpc-prometheus v1.2.0 // indirect
69+
github.com/grpc-ecosystem/grpc-gateway v1.16.0 // indirect
70+
github.com/grpc-ecosystem/grpc-gateway/v2 v2.16.0 // indirect
71+
github.com/hashicorp/errwrap v1.1.0 // indirect
72+
github.com/hashicorp/go-multierror v1.1.1 // indirect
73+
github.com/hashicorp/golang-lru/v2 v2.0.7 // indirect
74+
github.com/imdario/mergo v0.3.12 // indirect
75+
github.com/jackc/chunkreader/v2 v2.0.1 // indirect
76+
github.com/jackc/pgconn v1.14.3 // indirect
77+
github.com/jackc/pgerrcode v0.0.0-20240316143900-6e2875d9b438 // indirect
78+
github.com/jackc/pgio v1.0.0 // indirect
79+
github.com/jackc/pgpassfile v1.0.0 // indirect
80+
github.com/jackc/pgproto3/v2 v2.3.3 // indirect
81+
github.com/jackc/pgservicefile v0.0.0-20221227161230-091c0ba34f0a // indirect
82+
github.com/jackc/pgtype v1.14.0 // indirect
83+
github.com/jackc/pgx/v4 v4.18.2 // indirect
84+
github.com/jackc/pgx/v5 v5.3.1 // indirect
85+
github.com/jackpal/gateway v1.0.5 // indirect
86+
github.com/jackpal/go-nat-pmp v0.0.0-20170405195558-28a68d0c24ad // indirect
87+
github.com/jessevdk/go-flags v1.4.0 // indirect
88+
github.com/jonboulle/clockwork v0.2.2 // indirect
89+
github.com/jrick/logrotate v1.1.2 // indirect
90+
github.com/json-iterator/go v1.1.11 // indirect
91+
github.com/kkdai/bstream v1.0.0 // indirect
92+
github.com/klauspost/compress v1.17.9 // indirect
93+
github.com/lib/pq v1.10.9 // indirect
94+
github.com/lightninglabs/gozmq v0.0.0-20191113021534-d20a764486bf // indirect
95+
github.com/lightninglabs/neutrino v0.16.1 // indirect
96+
github.com/lightninglabs/neutrino/cache v1.1.2 // indirect
97+
github.com/lightningnetwork/lightning-onion v1.2.1-0.20240712235311-98bd56499dfb // indirect
98+
github.com/lightningnetwork/lnd/cert v1.2.2 // indirect
99+
github.com/lightningnetwork/lnd/clock v1.1.1 // indirect
100+
github.com/lightningnetwork/lnd/fn/v2 v2.0.8 // indirect
101+
github.com/lightningnetwork/lnd/healthcheck v1.2.6 // indirect
102+
github.com/lightningnetwork/lnd/kvdb v1.4.16 // indirect
103+
github.com/lightningnetwork/lnd/queue v1.1.1 // indirect
104+
github.com/lightningnetwork/lnd/sqldb v1.0.9 // indirect
105+
github.com/lightningnetwork/lnd/ticker v1.1.1 // indirect
106+
github.com/lightningnetwork/lnd/tlv v1.3.0 // indirect
107+
github.com/lightningnetwork/lnd/tor v1.1.6 // indirect
108+
github.com/ltcsuite/ltcd v0.0.0-20190101042124-f37f8bf35796 // indirect
109+
github.com/mattn/go-isatty v0.0.20 // indirect
110+
github.com/matttproud/golang_protobuf_extensions v1.0.1 // indirect
111+
github.com/miekg/dns v1.1.43 // indirect
112+
github.com/mitchellh/mapstructure v1.4.1 // indirect
113+
github.com/moby/term v0.5.0 // indirect
114+
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
115+
github.com/modern-go/reflect2 v1.0.1 // indirect
116+
github.com/ncruces/go-strftime v0.1.9 // indirect
117+
github.com/opencontainers/go-digest v1.0.0 // indirect
118+
github.com/opencontainers/image-spec v1.0.2 // indirect
119+
github.com/opencontainers/runc v1.1.12 // indirect
120+
github.com/ory/dockertest/v3 v3.10.0 // indirect
121+
github.com/pkg/errors v0.9.1 // indirect
122+
github.com/pmezard/go-difflib v1.0.0 // indirect
123+
github.com/prometheus/client_golang v1.11.1 // indirect
124+
github.com/prometheus/client_model v0.2.0 // indirect
125+
github.com/prometheus/common v0.26.0 // indirect
126+
github.com/prometheus/procfs v0.6.0 // indirect
127+
github.com/remyoudompheng/bigfft v0.0.0-20230129092748-24d4a6f8daec // indirect
128+
github.com/rogpeppe/fastuuid v1.2.0 // indirect
129+
github.com/sirupsen/logrus v1.9.2 // indirect
130+
github.com/soheilhy/cmux v0.1.5 // indirect
131+
github.com/spf13/pflag v1.0.5 // indirect
132+
github.com/stretchr/objx v0.5.2 // indirect
133+
github.com/syndtr/goleveldb v1.0.1-0.20210819022825-2ae1ddf74ef7 // indirect
134+
github.com/tmc/grpc-websocket-proxy v0.0.0-20201229170055-e5319fda7802 // indirect
135+
github.com/tv42/zbase32 v0.0.0-20160707012821-501572607d02 // indirect
136+
github.com/xeipuuv/gojsonpointer v0.0.0-20180127040702-4e3ac2762d5f // indirect
137+
github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415 // indirect
138+
github.com/xeipuuv/gojsonschema v1.2.0 // indirect
139+
github.com/xi2/xz v0.0.0-20171230120015-48954b6210f8 // indirect
140+
github.com/xiang90/probing v0.0.0-20190116061207-43a291ad63a2 // indirect
141+
gitlab.com/yawning/bsaes.git v0.0.0-20190805113838-0a714cd429ec // indirect
142+
go.etcd.io/bbolt v1.3.11 // indirect
143+
go.etcd.io/etcd/api/v3 v3.5.12 // indirect
144+
go.etcd.io/etcd/client/pkg/v3 v3.5.12 // indirect
145+
go.etcd.io/etcd/client/v2 v2.305.12 // indirect
146+
go.etcd.io/etcd/client/v3 v3.5.12 // indirect
147+
go.etcd.io/etcd/pkg/v3 v3.5.12 // indirect
148+
go.etcd.io/etcd/raft/v3 v3.5.12 // indirect
149+
go.etcd.io/etcd/server/v3 v3.5.12 // indirect
150+
go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.46.0 // indirect
151+
go.opentelemetry.io/otel v1.20.0 // indirect
152+
go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.20.0 // indirect
153+
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.20.0 // indirect
154+
go.opentelemetry.io/otel/metric v1.20.0 // indirect
155+
go.opentelemetry.io/otel/sdk v1.20.0 // indirect
156+
go.opentelemetry.io/otel/trace v1.20.0 // indirect
157+
go.opentelemetry.io/proto/otlp v1.0.0 // indirect
158+
go.uber.org/atomic v1.7.0 // indirect
159+
go.uber.org/multierr v1.6.0 // indirect
160+
go.uber.org/zap v1.17.0 // indirect
161+
golang.org/x/crypto v0.22.0 // indirect
162+
golang.org/x/exp v0.0.0-20240325151524-a685a6edb6d8 // indirect
163+
golang.org/x/mod v0.16.0 // indirect
164+
golang.org/x/net v0.24.0 // indirect
165+
golang.org/x/sync v0.7.0 // indirect
166+
golang.org/x/sys v0.19.0 // indirect
167+
golang.org/x/term v0.19.0 // indirect
168+
golang.org/x/text v0.14.0 // indirect
169+
golang.org/x/time v0.3.0 // indirect
170+
golang.org/x/tools v0.19.0 // indirect
171+
google.golang.org/genproto v0.0.0-20231016165738-49dd2c1f3d0b // indirect
172+
google.golang.org/genproto/googleapis/api v0.0.0-20231016165738-49dd2c1f3d0b // indirect
173+
google.golang.org/genproto/googleapis/rpc v0.0.0-20231030173426-d783a09b4405 // indirect
174+
google.golang.org/grpc v1.59.0 // indirect
175+
google.golang.org/protobuf v1.33.0 // indirect
176+
gopkg.in/errgo.v1 v1.0.1 // indirect
177+
gopkg.in/macaroon.v2 v2.1.0 // indirect
178+
gopkg.in/natefinch/lumberjack.v2 v2.0.0 // indirect
179+
gopkg.in/yaml.v2 v2.4.0 // indirect
180+
gopkg.in/yaml.v3 v3.0.1 // indirect
181+
modernc.org/gc/v3 v3.0.0-20240107210532-573471604cb6 // indirect
182+
modernc.org/libc v1.49.3 // indirect
183+
modernc.org/mathutil v1.6.0 // indirect
184+
modernc.org/memory v1.8.0 // indirect
185+
modernc.org/sqlite v1.29.10 // indirect
186+
modernc.org/strutil v1.2.0 // indirect
187+
modernc.org/token v1.1.0 // indirect
188+
pgregory.net/rapid v1.2.0 // indirect
189+
sigs.k8s.io/yaml v1.2.0 // indirect
190+
)

0 commit comments

Comments
 (0)