Commit graph

429 commits

Author SHA1 Message Date
Omer Yacine
be344ecc52
Merge pull request #266 from hashrelay/flake
Add nix flake.

This allow to build the project executables with nix.
2025-10-09 12:06:06 +02:00
Joseph Goulden
3e652eeb28
Merge branch 'master' into flake 2025-10-08 22:13:53 +01:00
Joseph Goulden
70ea8b5625
Add nix flake to build teos with nixpkgs 25.05 2025-10-08 22:12:40 +01:00
oyindamola oladapo
4824cb3372
ci: fix and simplify cln-plugin job
- Correct YAML indentation
- Fix Poetry installation (no --user, avoids not found errors)
- Remove unnecessary steps and sudo usage
- Modularize CLN cache jobs
- Run `poetry run make` concurrently to speed up build
2025-10-08 22:10:16 +01:00
Omer Yacine
ce4dafcab8
Merge pull request #275 from hashrelay/https
Don't add an extra `http://` to a host name that already includes `https://` (secure http).
2025-09-27 19:50:44 +03:00
Joseph Goulden
3fd4f41325
Allow watchtower client to call https endoints 2025-09-27 15:29:37 +01:00
Omer Yacine
316b0c1d87
Merge pull request #272 from 0xZaddyy/fix/yaml-indent-cln-plugin
fix: correct YAML indentation in cln-plugin job step
2025-09-12 14:05:37 +03:00
oyindamola oladapo
469e247ac3
ci: fix and simplify cln-plugin job
- Correct YAML indentation
- Fix Poetry installation (no --user, avoids not found errors)
- Remove unnecessary steps and sudo usage
- Modularize CLN cache jobs
- Run `poetry run make` concurrently to speed up build
2025-09-12 11:00:16 +01:00
Omer Yacine
42db02157e
Merge pull request #268 from dzdidi/feat/deps-update
Feat/deps update
2025-04-01 16:30:34 +02:00
dzdidi
b3a621a781
Update dependencies
- Add toolchain
- Common:
  - bitcoin v0.32.0;
  - lightning v0.1.0
- TEOS:
  - bitcoin v0.32.0;
  - bitcoincore-rpc v0.19.0;
  - lightning v0.1.0;
  - lightning-net-tokio v0.1.0;
  - lightning-block-sync v0.1.0
- Watchtower-Plugin:
  - bitcoin v0.32.0;
  - cln-plugin v0.3.0
2025-03-25 12:06:21 +01:00
Sergi Delgado
4e47db227e
Merge pull request #265 from sr-gi/clippy-inspect-error
plugin: replaces map_err for inspect_err in cases where we were only logging and returning
2024-09-05 17:35:29 -04:00
Sergi Delgado Segura
cc0d18393d
plugin: replaces map_err for inspect_err in cases where we were only logging and returning 2024-09-05 17:19:12 -04:00
Sergi Delgado
9248f3a2b9
Merge pull request #264 from sr-gi/cln-cargo
Makes `time` is up to date when compiling CLN for CI jobs
2024-09-05 17:18:50 -04:00
Sergi Delgado Segura
1684571808
Makes sure the time create is up to date
Compiling time with rustc over 1.80.0 (inclusive) results in a crash
for old versions of the time crate, which CLN uses. Make sure we are up
to date with the current revision
2024-09-05 17:09:59 -04:00
Sergi Delgado
b8a996e4f0
Merge pull request #256 from vincenzopalazzo/master
meta: add possibility to install cln plugin with coffee
2024-09-05 17:09:03 -04:00
Vincenzo Palazzo
011ba645bb meta: add possibility to install cln plugin with coffee
Core lightning is starting to support a decent plugin manager that gives you the possibility to install a plugin without care about the process.

Coffee [1] is a plugin manager that uses the manifest like all basic plugin managers (npm, pacman ...).

So this commit is adding support for coffee and allowing people to install plugins with the following command:

```
coffee remote add teos-git https://github.com/talaia-labs/rust-teos.git
coffee install rust-teos -v
coffee list
```

[1] https://github.com/coffee-tools/coffee
Signed-off-by: Vincenzo Palazzo <vincenzopalazzodev@gmail.com>
2024-09-01 13:53:19 +02:00
Sergi Delgado
609da2dc23
Merge pull request #248 from sr-gi/bump-rcgen
Bumps dependencies to get rid old version of ring (<0.17)
2024-07-29 16:46:56 -04:00
Sergi Delgado Segura
2bf359582d
Adds protoc GH actions to watchtower-plugin job 2024-07-29 16:32:19 -04:00
Sergi Delgado Segura
81a659c0f6
Bumps tonic to 0.11 and prost to 0.12, adapts Cargo files accordingly
Bumping tonic required cargo file edition to be bumped to 2021
2024-07-29 16:27:32 -04:00
Sergi Delgado Segura
bb2df6a700
Bumps rcgen to version 0.13.1 and updates tls.rs accordingly
rcgen was using version 0.8 which used a ring version that didn't support
ppc64le arch. Support for it was recently added in ring=0.17.0 and supported by
rcgen in 0.13
2024-07-29 16:27:29 -04:00
Sergi Delgado
9d0d3af398
Merge pull request #263 from sr-gi/202407-clippy
Fixes clippy issues
2024-07-29 13:21:26 -04:00
Sergi Delgado Segura
d30fc7d121
Fixes clippy issues 2024-07-29 13:12:27 -04:00
Sergi Delgado
e1085104eb
Merge pull request #259 from daywalker90/modernize-cln-tests
modernize cln tests and CI
2024-07-29 12:51:34 -04:00
daywalker90
f6decde5ff
modernize cln tests and CI 2024-07-29 16:28:19 +02:00
Sergi Delgado
c9f82bce9f
Merge pull request #245 from sr-gi/fix_crypto_utils
teos-common: Fixes cryptography tests utils
2024-04-02 09:42:37 +02:00
Sergi Delgado Segura
95f1c4c21d
Fixes cryptography tests utils 2024-03-28 12:58:59 +01:00
Sergi Delgado
997f77f695
Merge pull request #249 from sr-gi/2024-01-authcookie
Adds rpccookie to bitcoind auth methods
2024-03-28 12:55:53 +01:00
Sergi Delgado Segura
37a75ec6e7
Adds rpccookie to bitcoind auth methods
Currently we are authenticating against bitcoind using user/pass. This adds
the option to use a cookie file instead.
2024-03-28 10:09:30 +01:00
Sergi Delgado
21acbe0185
Merge pull request #253 from sr-gi/202403-update-workflows
gh-actions: updates actions to use Node.js 20
2024-03-28 10:07:43 +01:00
Sergi Delgado Segura
99dd5bbd15
gh-actions: updates actions to use Node.js 20 2024-03-28 10:00:49 +01:00
Sergi Delgado
56ede5383c
Merge pull request #251 from sr-gi/2024-03-clippy-patches
Fixes clippy issues in dbm.rs
2024-03-28 09:51:25 +01:00
Sergi Delgado Segura
52ebbe6e06
Fixes clippy issues in dbm.rs 2024-03-28 09:41:55 +01:00
Sergi Delgado
7ea92bbdd5
Merge pull request #252 from sr-gi/fix-watchtower-tests-deps
watchtower-plugin: fixes pyln-client version
2024-03-28 09:41:18 +01:00
Sergi Delgado Segura
534d6390ba
watchtower-plugin: fixes pyln-client version
`pyln-testing` depends on `pyln-client`, and the API for the latter has changed
in version 24.0. Fix our dependency to 23.11 to prevent test from breaking
2024-03-28 09:30:29 +01:00
Sergi Delgado
a515118eea
Merge pull request #250 from sr-gi/2024-01-patch-clippy
plugin: patches clippy
2024-03-20 15:32:35 -04:00
Sergi Delgado Segura
e6495c31aa
Fixes clippy issues
Clippy is complaining about using `.get(0)` instead of `.fist()` in methods
where we are getting more than just the first item. Suppress those warning.

Also fixes some actual issues.
2024-01-08 14:18:59 -05:00
Sergi Delgado Segura
a4accedfee
Merge pull request #227 from orbitalturtle/docker
Dockerfile and instructions
2023-09-14 16:14:47 -04:00
Orbital
ddd4bd9ef1
Docker: Add README describing how to use Docker with teos 2023-09-14 14:54:51 -05:00
Orbital
96efd4320c
Docker: Add Dockerfile for running teos 2023-09-14 14:54:50 -05:00
Sergi Delgado Segura
658fcca0ce
Merge pull request #190 from mariocynicys/better-mem-cpu-usage
optimizing memory usage
2023-09-14 13:11:15 -04:00
Omer Yacine
1790fe31e0
Make random appointments variable in size 2023-09-01 16:39:54 +03:00
Omer Yacine
cab6151ccc
Getting rid of in-memory data to avoid unbounded memory growth
Regrading the `Watcher`, fields (appointments, locator_uuid_map) has
been replaced by DB calls when needed.

For `Responder`, the field `trackers` has been replaced by DB calls when
needed, and `tx_tracker_map` wasn't actually needed for the tower to
operate, so was just dropped.

For `GateKeeper`, `registered_users::appointments` which used to hold
the uuids of every appointment the user submitted was removed so that
`registered_users` only holds meta information about users.

Also now the gatekeeper is the entity responsible for deleting appointments from the database. Instead of the watcher/responder asking the gatekeeper for the users to update and carry out the deletion and update itself, now the watcher/responder will hand the gatekeeper the uuids to delete and the gatekeeper will figure out which users it needs to update (refund the freed slots to).

Also now, like in `Watcher::store_triggered_appointment`, if the appointment is invalid or was rejected by the network in block connections, the freed slots will not be refunded to the user.

Also the block connection order starts with the gatekeeper first, this
allows the gatekeeper to delete the outdated users so that the watcher
and the responder doesn't take them into account.
2023-09-01 16:39:54 +03:00
Omer Yacine
fad3ad1c08
dropping last_known_blocks after using it
`last_known_blocks` was taking up ~300migs of memory (for 100 blocks) because it was not dropped in `main`.

Co-authored-by: Sergi Delgado Segura <sergi.delgado.s@gmail.com>
2023-09-01 16:31:54 +03:00
Omer Yacine
8df58f99d1
loading minimal data during bootstrap
By loading the minimal necessary data during bootstrap, we get lower
memory usage and faster bootstrapping.

Co-authored-by: Sergi Delgado Segura <sergi.delgado.s@gmail.com>
2023-09-01 16:31:50 +03:00
Sergi Delgado Segura
6cc466c359
Merge pull request #233 from anipaul2/issue230
Add black check to Python files in CI
2023-08-21 09:23:38 +02:00
anipaul2
092f549f7e
Use black for .py files formatting 2023-08-11 02:13:57 +05:30
Sergi Delgado Segura
6cbc8df165
Merge pull request #225 from optimm/exception-handling/teos-cli
Fix error handling in CLI
2023-08-10 13:21:27 -04:00
optimm
565eda42ba
printing the cli errors to standard error stream
Added a function that prints the error to the standard error stream and exits the process with a status code of 1, this is to seprate the cli errors from regular output
2023-08-09 11:37:55 +05:30
Sergi Delgado Segura
bacac072e9
Merge pull request #231 from sr-gi/2023-07-clippy
Fixes clippy issues, updates warp
2023-07-24 11:26:32 -04:00
Sergi Delgado Segura
ed78c89613
Fixes clippy issues, updates warp
Fixes some clippy issues with rustc 1.71.0 and updates warp to fix some address
some warnings regarding `buf_redux v0.8.4` and `multipart v0.18.0`
2023-07-24 11:05:27 -04:00