run: RUSTFLAGS="-C link-dead-code" cargo test --verbose --color always
- name: Test on no-std bullds Rust ${{ matrix.toolchain }}
if: "matrix.build-no-std && !matrix.coverage"
+ shell: bash # Default on Winblows is powershell
run: |
cd lightning
cargo test --verbose --color always --no-default-features --features no-std
# check if there is a conflict between no-std and the default std feature
cargo test --verbose --color always --features no-std
+ # check if there is a conflict between no-std and the c_bindings cfg
+ RUSTFLAGS="--cfg=c_bindings" cargo test --verbose --color always --no-default-features --features=no-std
cd ..
cd lightning-invoice
cargo test --verbose --color always --no-default-features --features no-std
profile: minimal
- name: Fetch full tree and rebase on upstream
run: |
- git remote add upstream https://github.com/rust-bitcoin/rust-lightning
+ git remote add upstream https://github.com/lightningdevkit/rust-lightning
git fetch upstream
export GIT_COMMITTER_EMAIL="rl-ci@example.com"
export GIT_COMMITTER_NAME="RL CI"
Discussion about code base improvements happens in GitHub issues and on pull
requests.
-Major projects are tracked [here](https://github.com/rust-bitcoin/rust-lightning/projects).
-Major milestones are tracked [here](https://github.com/rust-bitcoin/rust-lightning/milestones?direction=asc&sort=title&state=open).
+Major projects are tracked [here](https://github.com/lightningdevkit/rust-lightning/projects).
+Major milestones are tracked [here](https://github.com/lightningdevkit/rust-lightning/milestones?direction=asc&sort=title&state=open).
Getting Started
---------------
understand the project culture before investing an asymmetric number of hours on
development compared to your merged work.
-Browsing through the [meeting minutes](https://github.com/rust-bitcoin/rust-lightning/wiki/Meetings)
+Browsing through the [meeting minutes](https://github.com/lightningdevkit/rust-lightning/wiki/Meetings)
is a good first step. You will learn who is working on what, how releases are drafted, what are the
pending tasks to deliver, where you can contribute review bandwidth, etc.
version = "0.0.104"
authors = ["Valentine Wallace <vwallace@protonmail.com>"]
license = "MIT OR Apache-2.0"
-repository = "http://github.com/rust-bitcoin/rust-lightning"
+repository = "http://github.com/lightningdevkit/rust-lightning"
description = """
Utilities to perform required background tasks for Rust Lightning.
"""
version = "0.0.104"
authors = ["Jeffrey Czyz", "Matt Corallo"]
license = "MIT OR Apache-2.0"
-repository = "http://github.com/rust-bitcoin/rust-lightning"
+repository = "http://github.com/lightningdevkit/rust-lightning"
description = """
Utilities to fetch the chain data from a block source and feed them into Rust Lightning.
"""
version = "0.0.104"
authors = ["Matt Corallo"]
license = "MIT OR Apache-2.0"
-repository = "https://github.com/rust-bitcoin/rust-lightning/"
+repository = "https://github.com/lightningdevkit/rust-lightning/"
description = """
Implementation of the rust-lightning network stack using Tokio.
For Rust-Lightning clients which wish to make direct connections to Lightning P2P nodes, this is a simple alternative to implementing the required network stack, especially for those already using Tokio.
version = "0.0.104"
authors = ["Valentine Wallace", "Matt Corallo"]
license = "MIT OR Apache-2.0"
-repository = "https://github.com/rust-bitcoin/rust-lightning/"
+repository = "https://github.com/lightningdevkit/rust-lightning/"
description = """
Utilities to manage Rust-Lightning channel data persistence and retrieval.
"""
version = "0.0.104"
authors = ["Matt Corallo"]
license = "MIT OR Apache-2.0"
-repository = "https://github.com/rust-bitcoin/rust-lightning/"
+repository = "https://github.com/lightningdevkit/rust-lightning/"
description = """
A Bitcoin Lightning library in Rust.
Does most of the hard work, without implying a specific runtime, requiring clients implement basic network logic, chain interactions and disk storage.
log_error!(args.logger, " The chain::Watch API *requires* that monitors are persisted durably before returning,");
log_error!(args.logger, " client applications must ensure that ChannelMonitor data is always available and the latest to avoid funds loss!");
log_error!(args.logger, " Without the latest ChannelMonitor we cannot continue without risking funds.");
- log_error!(args.logger, " Please ensure the chain::Watch API requirements are met and file a bug report at https://github.com/rust-bitcoin/rust-lightning");
+ log_error!(args.logger, " Please ensure the chain::Watch API requirements are met and file a bug report at https://github.com/lightningdevkit/rust-lightning");
return Err(DecodeError::InvalidValue);
} else if channel.get_cur_holder_commitment_transaction_number() > monitor.get_cur_holder_commitment_number() ||
channel.get_revoked_counterparty_commitment_transaction_number() > monitor.get_min_seen_secret() ||
log_error!(args.logger, " The chain::Watch API *requires* that monitors are persisted durably before returning,");
log_error!(args.logger, " client applications must ensure that ChannelMonitor data is always available and the latest to avoid funds loss!");
log_error!(args.logger, " Without the ChannelMonitor we cannot continue without risking funds.");
- log_error!(args.logger, " Please ensure the chain::Watch API requirements are met and file a bug report at https://github.com/rust-bitcoin/rust-lightning");
+ log_error!(args.logger, " Please ensure the chain::Watch API requirements are met and file a bug report at https://github.com/lightningdevkit/rust-lightning");
return Err(DecodeError::InvalidValue);
}
}
// disable this check during tests!
let time = SystemTime::now().duration_since(UNIX_EPOCH).expect("Time must be > 1970").as_secs();
if (msg.timestamp as u64) < time - STALE_CHANNEL_UPDATE_AGE_LIMIT_SECS {
- return Err(LightningError{err: "channel_update is older than two weeks old".to_owned(), action: ErrorAction::IgnoreError});
+ return Err(LightningError{err: "channel_update is older than two weeks old".to_owned(), action: ErrorAction::IgnoreAndLog(Level::Gossip)});
}
if msg.timestamp as u64 > time + 60 * 60 * 24 {
- return Err(LightningError{err: "channel_update has a timestamp more than a day in the future".to_owned(), action: ErrorAction::IgnoreError});
+ return Err(LightningError{err: "channel_update has a timestamp more than a day in the future".to_owned(), action: ErrorAction::IgnoreAndLog(Level::Gossip)});
}
}
use core::cmp;
use core::fmt;
+#[cfg(c_bindings)]
+use prelude::*; // Needed for String
+
static LOG_LEVEL_NAMES: [&'static str; 6] = ["GOSSIP", "TRACE", "DEBUG", "INFO", "WARN", "ERROR"];
/// An enum representing the available verbosity levels of the logger.