Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

16 changes: 8 additions & 8 deletions Cargo.nix

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ resolver = "2"
version = "0.0.0-dev"
authors = ["Stackable GmbH <info@stackable.tech>"]
license = "OSL-3.0"
edition = "2021"
edition = "2024"
repository = "https://github.com/stackabletech/secret-operator"

[workspace.dependencies]
Expand Down
5 changes: 2 additions & 3 deletions rust/krb5-provision-keytab/src/credential_cache.rs
Original file line number Diff line number Diff line change
Expand Up @@ -94,10 +94,9 @@ impl CredentialCache {
.expect("key was just confirmed to exist in cache")))
} else {
tracing::info!("credential not found in cache, generating...");
match mk_value(Ctx {
match TryFutureExt::into_future(mk_value(Ctx {
cache_ref: self.cache_ref.clone(),
})
.into_future()
}))
.await
{
Ok(value) => {
Expand Down
4 changes: 2 additions & 2 deletions rust/operator-binary/src/crd/secret_class/v1alpha1_impl.rs
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ impl SecretClassBackend {
pub fn refers_to_config_map(
&self,
config_map: &PartialObjectMeta<ConfigMap>,
) -> impl Iterator<Item = SearchNamespaceMatchCondition> {
) -> impl Iterator<Item = SearchNamespaceMatchCondition> + use<> {
let cm_namespace = config_map.metadata.namespace.as_deref();
match self {
Self::K8sSearch(backend) => {
Expand All @@ -40,7 +40,7 @@ impl SecretClassBackend {
pub fn refers_to_secret(
&self,
secret: &PartialObjectMeta<Secret>,
) -> impl Iterator<Item = SearchNamespaceMatchCondition> {
) -> impl Iterator<Item = SearchNamespaceMatchCondition> + use<> {
match self {
Self::AutoTls(backend) => {
(backend.ca.secret == *secret).then_some(SearchNamespaceMatchCondition::True)
Expand Down
4 changes: 2 additions & 2 deletions rust/operator-binary/src/crd/secret_class/v1alpha2_impl.rs
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ impl SecretClassBackend {
pub fn refers_to_config_map(
&self,
config_map: &PartialObjectMeta<ConfigMap>,
) -> impl Iterator<Item = SearchNamespaceMatchCondition> {
) -> impl Iterator<Item = SearchNamespaceMatchCondition> + use<> {
let cm_namespace = config_map.metadata.namespace.as_deref();
match self {
Self::K8sSearch(backend) => {
Expand All @@ -46,7 +46,7 @@ impl SecretClassBackend {
pub fn refers_to_secret(
&self,
secret: &PartialObjectMeta<Secret>,
) -> impl Iterator<Item = SearchNamespaceMatchCondition> {
) -> impl Iterator<Item = SearchNamespaceMatchCondition> + use<> {
match self {
Self::AutoTls(backend) => {
(backend.ca.secret == *secret).then_some(SearchNamespaceMatchCondition::True)
Expand Down
13 changes: 9 additions & 4 deletions rust/operator-binary/src/utils.rs
Original file line number Diff line number Diff line change
Expand Up @@ -123,14 +123,19 @@ pub fn error_full_message(err: &dyn std::error::Error) -> String {
/// Propagates `Ok(true)` and `Err(_)` from `stream`, otherwise returns `Ok(false)`.
pub async fn trystream_any<S: Stream<Item = Result<bool, E>>, E>(stream: S) -> Result<bool, E> {
pin_mut!(stream);
while let Some(value) = stream.next().await {
if let Ok(true) | Err(_) = value {
return value;
loop {

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

I personally found the existing code a bit easier to read to be honest.
But I let you decide if we want to keep it and silence clippy

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

Me too, I agree

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

In that case I suggest we slap a #[allow(clippy::xxx)] at the existing code and keep that

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

This looks like it's just cargo fix being overly pessimistic about the 2024 if let lifetime changes. The old while let should still be fine here.

let next_item = stream.next().await;
match next_item {
Some(value) => {
if let Ok(true) | Err(_) = value {
return value;
}
}
None => break,
}
}
Ok(false)
}

/// Concatenate chunks of bytes, short-circuiting on [`Err`].
///
/// This is a byte-oriented equivalent to [`Iterator::collect::<Result<String, _>>`](`Iterator::collect`).
Expand Down
4 changes: 2 additions & 2 deletions rust/p12/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,14 @@
name = "p12"
version.workspace = true
authors = ["hjiayz <hjiayz@gmail.com>", "Marc-Antoine Perennou <Marc-Antoine@Perennou.com>"]
edition = "2021"
edition.workspace = true
keywords = ["pkcs12", "pkcs"]
description = "pure rust pkcs12 tool (Stackable fork)"
homepage = "https://github.com/hjiayz/p12"
repository = "https://github.com/hjiayz/p12"
readme = "README.md"
license = "MIT OR Apache-2.0"
rust-version = "1.56.0"
rust-version = "1.85.0"

# Dependencies are tracked inline for now, to minimize divergence from upstream

Expand Down
4 changes: 2 additions & 2 deletions rust/p12/src/lib.rs

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

I have a bit of mixed feelings about touching rust/p12. As documented in rust/p12/README.md it's a fork of https://github.com/hjiayz/p12/. We can hopefully get rid of it eventually.
So it's nice to maintain it, on the other hand this increases the diff to upstream...

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Fair. Although I'm unsure we have really maintained it (apologies if we do, and I missed it).

In this case, shall we leave p12 on 2021? Is cargo ok with multiple workspace members using different editions?

Original file line number Diff line number Diff line change
Expand Up @@ -644,12 +644,12 @@ fn pbepkcs12sha1(pass: &[u8], salt: &[u8], iterations: u64, id: u8, size: u64) -
let d = [id; V as usize];
fn get_len(s: usize) -> usize {
let s = s as u64;
(V * ((s + V - 1) / V)) as usize
(V * s.div_ceil(V)) as usize
Comment thread
sbernauer marked this conversation as resolved.
}
let s = salt.iter().cycle().take(get_len(salt.len()));
let p = pass.iter().cycle().take(get_len(pass.len()));
let mut i: Vec<u8> = s.chain(p).cloned().collect();
let c = (size + U - 1) / U;
let c = size.div_ceil(U);
let mut a: Vec<u8> = vec![];
for _ in 1..c {
let ai = pbepkcs12sha1core(&d, &i, &mut a, r);
Expand Down
Loading