Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

plugins/clnrest: Adding pyproject.toml for Poetry install #6651

Merged
merged 8 commits into from
Sep 29, 2023

Conversation

ShahanaFarooqui
Copy link
Collaborator

Reference links:
#6637
https://github.com/nix-community/poetry2nix

Changelog-Changed: Upgraded clnrest to poetry project.

@chrisguida
Copy link
Contributor

chrisguida commented Sep 7, 2023

See also this draft implementation of a development flake for CLN using poetry2nix:

#6650

Copy link
Collaborator

@vincenzopalazzo vincenzopalazzo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts.
poetry 1.6.1 requires jsonschema<4.18.0,>=4.10.0, but you have jsonschema 4.19.0 which is incompatible.
Successfully installed aniso8601-9.0.1 asn1crypto-1.5.1 base58-2.1.1 bidict-0.22.1 bitstring-3.1.9 blinker-1.6.2 cheroot-8.6.0 click-8.1.7 clnrest-23.8 coincurve-18.0.0 crc32c-2.3.post0 ephemeral-port-reserve-1.1.4 exceptiongroup-1.1.3 execnet-2.0.2 flake8-4.0.1 flask-2.3.3 flask-restx-1.1.0 flask-socketio-5.3.6 gevent-23.9.0.post1 gevent-websocket-0.10.1 greenlet-3.0.0rc1 grpcio-1.57.0 grpcio-tools-1.57.0 gunicorn-21.2.0 iniconfig-2.0.0 itsdangerous-2.1.2 jaraco-functools-3.9.0 jinja2-3.1.2 json5-0.9.14 jsonschema-4.19.0 jsonschema-specifications-2023.7.1 mako-1.2.4 markupsafe-2.1.3 mccabe-0.6.1 mypy-0.931 mypy-extensions-1.0.0 pluggy-1.3.0 protobuf-4.21.12 psutil-5.9.5 psycopg2-binary-2.9.7 py-1.11.0 pycodestyle-2.8.0 pyflakes-2.4.0 pyln-bolt7-1.0.246 pyln-client-23.8 pyln-proto-23.8 pyln-testing-23.8 pysocks-1.7.1 pytest-7.4.2 pytest-custom-exit-code-0.3.0 pytest-forked-1.6.0 pytest-test-groups-1.0.3 pytest-timeout-2.1.0 pytest-xdist-2.5.0 python-bitcoinlib-0.11.2 python-engineio-4.7.0 python-socketio-5.9.0 pytz-2023.3.post1 referencing-0.30.2 rpds-py-0.10.2 setuptools-68.2.0 six-1.16.0 websocket-client-1.6.2 werkzeug-2.3.7 zope-event-5.0 zope-interface-6.0
ERROR: Could not open requirements file: [Errno 2] No such file or directory: 'plugins/clnrest/requirements.txt'

@ShahanaFarooqui
Copy link
Collaborator Author

Did you try “poetry install”?

@vincenzopalazzo
Copy link
Collaborator

Did you try “poetry install”?

No my report is done by the CI, I guess we should fix it before merging this PR

@ShahanaFarooqui
Copy link
Collaborator Author

Did you try “poetry install”?

No my report is done by the CI, I guess we should fix it before merging this PR

uff, I am so sorry. I completely forgot that we are using requirements.txt in CI :)

@nepet
Copy link
Collaborator

nepet commented Sep 8, 2023

Tested locally: besides the simple CI fix it worked like a charm: built cln, started with rest-port.

@cdecker
Copy link
Member

cdecker commented Sep 15, 2023

Adopting this PR to get it past the CI.

@cdecker cdecker self-assigned this Sep 15, 2023
@cdecker cdecker marked this pull request as draft September 18, 2023 09:22
@cdecker cdecker marked this pull request as ready for review September 18, 2023 14:12
@cdecker
Copy link
Member

cdecker commented Sep 18, 2023

This is ready for review @ShahanaFarooqui and @nepet

@ShahanaFarooqui
Copy link
Collaborator Author

ACK 1ebda5e

ShahanaFarooqui and others added 7 commits September 29, 2023 12:53
We do not need explicit clnrest dependencies installation for clnrest
because `poetry install` will also install clnrest libraries.
Even after migrating from pip install to poetry install for clnrest,
we still need to keep `plugins/clnrest/requirements.txt` for Fedora-28-amd64
build. `Dockerfile.builder.fedora` does not have poetry and will need
requirements.txt to install libraries with pip.

It is also required for non-developers who want to build cln from a tagged or master version.
@rustyrussell
Copy link
Contributor

Removed external/lnprototest change which reverted (accidentally?) to a previous version...

@rustyrussell rustyrussell merged commit 77e3c3a into ElementsProject:master Sep 29, 2023
38 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants