ElementsProject / lightning

Core Lightning — Lightning Network implementation focusing on spec compliance and performance
Other
2.81k stars 889 forks source link

schemas: "description" field in "wait(any)invoice" is optional since BOLT12 #7667

Closed laanwj closed 4 days ago

laanwj commented 1 week ago

schemas: "description" field in "wait(any)invoice" is optional since BOLT12

Description

For BOLT12 invoices, the "description" is field missing in the invoice responses. This causes a serde parse error when handling BOLT12 invoices in rust code. Update the schemas accordingly:

Also commit the generated msggen, cln-grpc, cln-rpc and pyln-grpc-proto files.

Related Issues

Continues #7660.

Changes Made

Changelog-Fixed: schemas: Make description in Wait(any)invoiceResponse optional to handle BOLT12

Checklist

Ensure the following tasks are completed before submitting the PR:

laanwj commented 1 week ago

It's complaining that the auto-generated files aren't updated, while i really did that. The python output looks way different though.

-# Protobuf Python Version: 5.26.1
+# Protobuf Python Version: 4.25.1

Seems the specific version is needed...

daywalker90 commented 1 week ago

Are you using poetry shell -> poetry install before running make?

laanwj commented 1 week ago

Didn't even have that installed, i don't think i've ever used poetry in my life 😄 Will try that next time.

Did manually figure it out i think:

pip3 install protobuf==4.25.1
pip3 install grpcio-tools==1.62.2
daywalker90 commented 1 week ago

I suggest this goes into 24.08.1 aswell @ShahanaFarooqui