Skip to content

Commit

Permalink
Merge pull request fedimint#6455 from dpc/24-11-23-update-flakebox-3
Browse files Browse the repository at this point in the history
 chore: update flakebox  & nixpkgs
  • Loading branch information
dpc authored Dec 3, 2024
2 parents bc60776 + 7fe32a4 commit bab48e2
Show file tree
Hide file tree
Showing 18 changed files with 160 additions and 142 deletions.
2 changes: 1 addition & 1 deletion .config/flakebox/id
Original file line number Diff line number Diff line change
@@ -1 +1 @@
b9b059bd4917f7871f723d03b6339848449615c05ac21e50db8c74298f396dd8ce6f39aa30b2c1cb9d172331d1f0c7d30a760a99fcb4f71e96d29abc9f40de05
8b500e9b1668f7c2d33d46f81b90e8fdd786f16ee6c13ebbdd1b618c38d41406a419372828ca6c517ebaa9b9934bfe5b89807e680d7781d910c2e1ca6d378890
3 changes: 3 additions & 0 deletions .config/nextest.toml
Original file line number Diff line number Diff line change
Expand Up @@ -15,3 +15,6 @@ slow-timeout = { period = "30s", terminate-after = 3 }
# possibly due to writing to a shared tracing file(?)
[profile.nix-ccov]
slow-timeout = { period = "30s", terminate-after = 4 }

[profile.release]
slow-timeout = { period = "30s", terminate-after = 4 }
7 changes: 7 additions & 0 deletions .github/workflows/ci-nix.yml
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,13 @@ jobs:
- name: Check `nix flake show`
run: nix flake show .#

# Since we don't have capacity to build Darwin in PRs, at least make sure it evaluates
- name: Evaluate MacOS shell
run: nix eval --system aarch64-darwin .#devShells.aarch64-darwin.default

- name: Evaluate MacOS build
run: nix eval --system aarch64-darwin .#workspaceBuild

shell:
if: github.repository == 'fedimint/fedimint'
strategy:
Expand Down
5 changes: 4 additions & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ members = [
"modules/fedimint-wallet-common",
"modules/fedimint-wallet-server",
"modules/fedimint-wallet-tests",
"utils/portalloc",
"utils/portalloc"
]
resolver = "2"

Expand Down Expand Up @@ -224,6 +224,9 @@ rand_chacha = { opt-level = 3 }
rand_core = { opt-level = 3 }
rand = { opt-level = 3 }
ring = { opt-level = 3 }
# due to some miscompilation(?) this seems actually neccessary,
# otherwise we see segfaults in Nix sandbox
librocksdb-sys = { opt-level = 3 }
rustls = { opt-level = 3 }
secp256k1 = { opt-level = 3 }
secp256k1-sys = { opt-level = 3 }
Expand Down
1 change: 1 addition & 0 deletions crypto/tbs/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ path = "src/lib.rs"

[[bench]]
name = "tbs"
path = "benches/tbs.rs"
harness = false

[dependencies]
Expand Down
128 changes: 51 additions & 77 deletions deny.toml
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,9 @@

# Root options

# The graph table configures how the dependency graph is constructed and thus
# which crates the checks are performed against
[graph]
# If 1 or more target triples (and optionally, target_features) are specified,
# only the specified targets will be checked when running `cargo deny check`.
# This means, if a particular package is only ever used as a target specific
Expand All @@ -22,7 +25,7 @@
targets = [
# The triple can be any string, but only the target triples built in to
# rustc (as of 1.40) can be checked against actual config expressions
#{ triple = "x86_64-unknown-linux-musl" },
#"x86_64-unknown-linux-musl",
# You can also specify which target_features you promise are enabled for a
# particular target. target_features are currently not validated against
# the actual valid features supported by the target architecture.
Expand All @@ -46,46 +49,31 @@ no-default-features = false
# If set, these feature will be enabled when collecting metadata. If `--features`
# is specified on the cmd line they will take precedence over this option.
#features = []

# The output table provides options for how/if diagnostics are outputted
[output]
# When outputting inclusion graphs in diagnostics that include features, this
# option can be used to specify the depth at which feature edges will be added.
# This option is included since the graphs can be quite large and the addition
# of features from the crate(s) to all of the graph roots can be far too verbose.
# This option can be overridden via `--feature-depth` on the cmd line
feature-depth = 1
feature-depth = 0

# This section is considered when running `cargo deny check advisories`
# More documentation for the advisories section can be found here:
# https://embarkstudios.github.io/cargo-deny/checks/advisories/cfg.html
[advisories]
# The path where the advisory database is cloned/fetched into
# The path where the advisory databases are cloned/fetched into
db-path = "~/.cargo/advisory-db"
# The url(s) of the advisory databases to use
db-urls = ["https://github.com/rustsec/advisory-db"]
# The lint level for security vulnerabilities
vulnerability = "deny"
# The lint level for unmaintained crates
unmaintained = "warn"
# The lint level for crates that have been yanked from their source registry
yanked = "warn"
# The lint level for crates with security notices. Note that as of
# 2019-12-17 there are no security notice advisories in
# https://github.com/rustsec/advisory-db
notice = "warn"
#db-urls = ["https://github.com/rustsec/advisory-db"]
# A list of advisory IDs to ignore. Note that ignored advisories will still
# output a note when they are encountered.
ignore = [
#"RUSTSEC-0000-0000",
{ id = "RUSTSEC-2024-0370", reason = "TODO" },
{ id = "RUSTSEC-2024-0388", reason = "TODO" },
{ id = "RUSTSEC-2023-0071", reason = "TODO: fix unreleased" },
]
# Threshold for security vulnerabilities, any vulnerability with a CVSS score
# lower than the range specified will be ignored. Note that ignored advisories
# will still output a note when they are encountered.
# * None - CVSS Score 0.0
# * Low - CVSS Score 0.1 - 3.9
# * Medium - CVSS Score 4.0 - 6.9
# * High - CVSS Score 7.0 - 8.9
# * Critical - CVSS Score 9.0 - 10.0
#severity-threshold =

# If this is true, then cargo deny will use the git executable to fetch advisory database.
# If this is false, then it uses a built-in git library.
# Setting this to true can be helpful if you have special authentication requirements that cargo-deny does not support.
Expand All @@ -96,8 +84,6 @@ ignore = [
# More documentation for the licenses section can be found here:
# https://embarkstudios.github.io/cargo-deny/checks/licenses/cfg.html
[licenses]
# The lint level for crates which do not have a detectable license
unlicensed = "deny"
# List of explicitly allowed licenses
# See https://spdx.org/licenses/ for list of possible licenses
# [possible values: any SPDX 3.11 short identifier (+ optional exception)].
Expand All @@ -113,27 +99,8 @@ allow = [
"MITNFA",
"Unicode-3.0",
"Zlib",
"OpenSSL"
]
# List of explicitly disallowed licenses
# See https://spdx.org/licenses/ for list of possible licenses
# [possible values: any SPDX 3.11 short identifier (+ optional exception)].
deny = [
#"Nokia",
]
# Lint level for licenses considered copyleft
copyleft = "warn"
# Blanket approval or denial for OSI-approved or FSF Free/Libre licenses
# * both - The license will be approved if it is both OSI-approved *AND* FSF
# * either - The license will be approved if it is either OSI-approved *OR* FSF
# * osi-only - The license will be approved if is OSI-approved *AND NOT* FSF
# * fsf-only - The license will be approved if is FSF *AND NOT* OSI-approved
# * neither - This predicate is ignored and the default lint level is used
allow-osi-fsf-free = "neither"
# Lint level used when no other predicates are matched
# 1. License isn't in the allow or deny lists
# 2. License isn't copyleft
# 3. License isn't OSI/FSF, or allow-osi-fsf-free = "neither"
default = "deny"
# The confidence threshold for detecting a license from license text.
# The higher the value, the more closely the license text must be to the
# canonical license text of a valid SPDX license file.
Expand All @@ -151,26 +118,32 @@ exceptions = [
{ allow = [
"Unicode-DFS-2016",
], name = "unicode-ident" },
{ allow = [
"OpenSSL",
], name = "ring" },
]

# Some crates don't have (easily) machine readable licensing information,
# adding a clarification entry for it allows you to manually specify the
# licensing information
[[licenses.clarify]]
name = "ring"
# SPDX considers OpenSSL to encompass both the OpenSSL and SSLeay licenses
# https://spdx.org/licenses/OpenSSL.html
# ISC - Both BoringSSL and ring use this for their new files
# MIT - "Files in third_party/ have their own licenses, as described therein. The MIT
# license, for third_party/fiat, which, unlike other third_party directories, is
# compiled into non-test libraries, is included below."
# OpenSSL - Obviously
expression = "ISC AND MIT AND OpenSSL"
license-files = [{ path = "LICENSE", hash = 0xbd0eed23 }]
#[[licenses.clarify]]
# The package spec the clarification applies to
#crate = "ring"
# The SPDX expression for the license requirements of the crate
#expression = "MIT AND ISC AND OpenSSL"
# One or more files in the crate's source used as the "source of truth" for
# the license expression. If the contents match, the clarification will be used
# when running the license check, otherwise the clarification will be ignored
# and the crate will be checked normally, which may produce warnings or errors
# depending on the rest of your configuration
#license-files = [
# Each entry is a crate relative path, and the (opaque) hash of its contents
#{ path = "LICENSE", hash = 0xbd0eed23 }
#]

[[licenses.clarify]]
crate = "ring"
expression = "MIT AND ISC AND OpenSSL"
license-files = [
{ path = "LICENSE", hash = 0xbd0eed23 }
]

[licenses.private]
# If true, ignores workspace crates that aren't published, or are only
Expand All @@ -190,7 +163,7 @@ registries = [
# https://embarkstudios.github.io/cargo-deny/checks/bans/cfg.html
[bans]
# Lint level for when multiple versions of the same crate are detected
multiple-versions = "warn"
multiple-versions = "allow"
# Lint level for when a crate version requirement is `*`
wildcards = "allow"
# The graph highlighting used when creating dotgraphs for crates
Expand All @@ -209,24 +182,23 @@ workspace-default-features = "allow"
external-default-features = "allow"
# List of crates that are allowed. Use with care!
allow = [
#{ name = "ansi_term", version = "=0.11.0" },
#"[email protected]",
#{ crate = "[email protected]", reason = "you can specify a reason it is allowed" },
]
# List of crates to deny
deny = [
# Each entry the name of a crate and a version range. If version is
# not specified, all versions will be matched.
#{ name = "ansi_term", version = "=0.11.0" },
#
#"[email protected]",
#{ crate = "[email protected]", reason = "you can specify a reason it is banned" },
# Wrapper crates can optionally be specified to allow the crate when it
# is a direct dependency of the otherwise banned crate
#{ name = "ansi_term", version = "=0.11.0", wrappers = [] },
#{ crate = "ansi_term@0.11.0", wrappers = ["this-crate-directly-depends-on-ansi_term"] },
]

# List of features to allow/deny
# Each entry the name of a crate and a version range. If version is
# not specified, all versions will be matched.
#[[bans.features]]
#name = "reqwest"
#crate = "reqwest"
# Features to not allow
#deny = ["json"]
# Features to allow
Expand All @@ -247,14 +219,16 @@ deny = [

# Certain crates/versions that will be skipped when doing duplicate detection.
skip = [
#{ name = "ansi_term", version = "=0.11.0" },
#"[email protected]",
#{ crate = "[email protected]", reason = "you can specify a reason why it can't be updated/removed" },
]
# Similarly to `skip` allows you to skip certain crates during duplicate
# detection. Unlike skip, it also includes the entire tree of transitive
# dependencies starting at the specified crate, up to a certain depth, which is
# by default infinite.
skip-tree = [
#{ name = "ansi_term", version = "=0.11.0", depth = 20 },
#"[email protected]", # will be skipped along with _all_ of its direct and transitive dependencies
#{ crate = "[email protected]", depth = 20 },
]

# This section is considered when running `cargo deny check sources`.
Expand All @@ -274,9 +248,9 @@ allow-registry = ["https://github.com/rust-lang/crates.io-index"]
allow-git = []

[sources.allow-org]
# 1 or more github.com organizations to allow git sources for
github = [""]
# 1 or more gitlab.com organizations to allow git sources for
gitlab = [""]
# 1 or more bitbucket.org organizations to allow git sources for
bitbucket = [""]
# github.com organizations to allow git sources for
github = []
# gitlab.com organizations to allow git sources for
gitlab = []
# bitbucket.org organizations to allow git sources for
bitbucket = []
4 changes: 4 additions & 0 deletions devimint/src/cfg/bitcoin.conf
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,10 @@ zmqpubrawblock=tcp://127.0.0.1:{zmq_pub_raw_block}
zmqpubrawtx=tcp://127.0.0.1:{zmq_pub_raw_tx}
rpcworkqueue=1024
rpcthreads=64
# workaround: https://github.com/lightningnetwork/lnd/issues/9053#issuecomment-2408658986
deprecatedrpc=warnings
[regtest]
port={p2p_port}
bind=[::1]:{p2p_port}
rpcport={rpc_port}
rpcbind=[:1]:{rpc_port}
2 changes: 1 addition & 1 deletion fedimint-api-client/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ tor = [
"dep:curve25519-dalek",
"arti-client/tokio",
"arti-client/rustls",
"arti-client/onion-service-client",
"arti-client/onion-service-client"
]

[lib]
Expand Down
6 changes: 3 additions & 3 deletions fedimint-client/src/module/init/recovery.rs
Original file line number Diff line number Diff line change
Expand Up @@ -250,7 +250,7 @@ where
) -> impl futures::Stream<Item = Result<(u64, Vec<AcceptedItem>), ShuttingDownError>> + 'a
{
// How many request for blocks to run in parallel (streaming).
const PARALLISM_LEVEL: usize = 64;
const PARALLELISM_LEVEL: usize = 64;
const VERSION_THAT_INTRODUCED_GET_SESSION_STATUS: ApiVersion =
ApiVersion { major: 0, minor: 1 };

Expand Down Expand Up @@ -294,7 +294,7 @@ where
const MAX_SLEEP: Duration = Duration::from_secs(120);

warn!(target: LOG_CLIENT_RECOVERY, e = %e, session_idx, "Error trying to fetch signed block");
// We don't want PARALLISM_LEVEL tasks hammering Federation
// We don't want PARALLELISM_LEVEL tasks hammering Federation
// with requests, so max sleep is significant
if retry_sleep <= MAX_SLEEP {
retry_sleep = retry_sleep
Expand All @@ -310,7 +310,7 @@ where
}).await.expect("Can't fail")
})
})
.buffered(PARALLISM_LEVEL)
.buffered(PARALLELISM_LEVEL)
}

/// Make enough progress to justify saving a state snapshot
Expand Down
2 changes: 1 addition & 1 deletion fedimint-logging/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ telemetry = [
"tracing-opentelemetry",
"opentelemetry-jaeger",
"console-subscriber",
"opentelemetry",
"opentelemetry"
]

[lib]
Expand Down
Loading

0 comments on commit bab48e2

Please sign in to comment.