python-auditor
Advanced tools
+7
-7
| [package] | ||
| name = "python-auditor" | ||
| version = "0.10.1" | ||
| version = "0.10.2" | ||
| edition = "2024" | ||
@@ -31,8 +31,8 @@ authors = ["Stefan Kroboth <stefan.kroboth@gmail.com>"] | ||
| auditor.path = "local_dependencies/auditor" | ||
| anyhow = "1.0.100" | ||
| chrono = { version = "0.4.42", default-features = false, features = ["serde"] } | ||
| pyo3 = { version = "0.24.1", features = ["chrono", "extension-module", "anyhow"] } | ||
| pyo3-async-runtimes = { version = "0.24.0", features = ["attributes", "tokio-runtime"] } | ||
| anyhow = "1.0.102" | ||
| chrono = { version = "0.4.44", default-features = false, features = ["serde"] } | ||
| pyo3 = { version = "0.27.2", features = ["chrono", "extension-module", "anyhow"] } | ||
| pyo3-async-runtimes = { version = "0.27.0", features = ["attributes", "tokio-runtime"] } | ||
| serde = { version = "1.0.218", features = ["derive"] } | ||
| serde_json = "1.0.145" | ||
| tokio = "1.48.0" | ||
| serde_json = "1.0.149" | ||
| tokio = "1.50.0" |
@@ -12,3 +12,3 @@ #![allow(dead_code)] | ||
| use chrono::{DateTime, TimeZone, Utc}; | ||
| use fake::{Fake, Faker}; | ||
| use fake::{Fake, Faker, RngExt}; | ||
| use rand::Rng; | ||
@@ -15,0 +15,0 @@ use std::collections::HashMap; |
| [package] | ||
| name = "auditor-client" | ||
| version = "0.10.1" | ||
| version = "0.10.2" | ||
| authors = ["Stefan Kroboth <stefan.kroboth@gmail.com>"] | ||
@@ -31,20 +31,20 @@ edition = "2024" | ||
| auditor.path = "../auditor" | ||
| anyhow = "1.0.100" | ||
| anyhow = "1.0.102" | ||
| bincode = "1.3.3" | ||
| chrono = { version = "0.4.42", default-features = false, features = ["serde"] } | ||
| config = "0.15.18" | ||
| chrono = { version = "0.4.44", default-features = false, features = ["serde"] } | ||
| config = "0.15.22" | ||
| futures = "0.3" | ||
| reqwest = { version = "0.12.24", default-features = false, features = ["json", "rustls-tls", "blocking", "stream"] } | ||
| reqwest = { version = "0.12.28", default-features = false, features = ["json", "rustls-tls", "blocking", "stream"] } | ||
| reqwest-streams = { version = "0.12", features= ["json"] } | ||
| serde = { version = "1.0.218", features = ["derive"] } | ||
| rand = "0.9.2" | ||
| rand_distr = "0.5.1" | ||
| rustls = "0.23.24" | ||
| rand = "0.10.0" | ||
| rand_distr = "0.6.0" | ||
| rustls = "0.23.37" | ||
| serde-aux = "4.6.0" | ||
| serde_json = "1.0.145" | ||
| serde_json = "1.0.149" | ||
| serde_qs = { version = "0.15.0", features = ["actix4"] } | ||
| sqlx = { version = "0.8.6", default-features = false, features = ["runtime-tokio-rustls", "macros", "uuid", "chrono", "migrate", "runtime-tokio", "json","sqlite"] } | ||
| thiserror = "2.0.17" | ||
| tokio = { version = "1.48.0", features = ["time"] } | ||
| tracing = { version = "0.1.40", features = ["log"] } | ||
| thiserror = "2.0.18" | ||
| tokio = { version = "1.50.0", features = ["time"] } | ||
| tracing = { version = "0.1.44", features = ["log"] } | ||
| urlencoding = "2.1.3" | ||
@@ -51,0 +51,0 @@ |
| [package] | ||
| name = "auditor" | ||
| version = "0.10.1" | ||
| version = "0.10.2" | ||
| authors = ["Stefan Kroboth <stefan.kroboth@gmail.com>"] | ||
@@ -37,13 +37,13 @@ edition = "2024" | ||
| actix-web-opentelemetry = { version = "0.17.0", features = ["metrics", "metrics-prometheus"] } | ||
| actix-web = { version = "4.8.0", features = ["rustls-0_23"] } | ||
| actix-tls = { version = "3.4.0", features = ["rustls-0_23"] } | ||
| anyhow = "1.0.100" | ||
| arrow = "57.0.0" | ||
| arrow-array = "57.0.0" | ||
| actix-web = { version = "4.13.0", features = ["rustls-0_23"] } | ||
| actix-tls = { version = "3.5.0", features = ["rustls-0_23"] } | ||
| anyhow = "1.0.102" | ||
| arrow = "58.0.0" | ||
| arrow-array = "58.0.0" | ||
| async-stream = "0.3" | ||
| casbin = "2.15.0" | ||
| chrono = { version = "0.4.42", default-features = false, features = ["serde"] } | ||
| config = "0.15.18" | ||
| casbin = "2.20.0" | ||
| chrono = { version = "0.4.44", default-features = false, features = ["serde"] } | ||
| config = "0.15.22" | ||
| csv = "1.4.0" | ||
| fake = { version = "4.4", features = ["chrono"] } | ||
| fake = { version = "5.1", features = ["chrono"] } | ||
| futures = "0.3" | ||
@@ -56,29 +56,28 @@ futures-util = "0.3" | ||
| opentelemetry_sdk = "0.23.0" | ||
| parquet = "57" | ||
| parquet = "58.0.0" | ||
| prometheus = "0.13.4" | ||
| rand = "0.9.2" | ||
| regex = "1.12.2" | ||
| reqwest = { version = "0.12.24", default-features = false, features = ["json", "rustls-tls", "blocking", "stream"] } | ||
| rand = "0.10.0" | ||
| regex = "1.12.3" | ||
| reqwest = { version = "0.12.28", default-features = false, features = ["json", "rustls-tls", "blocking", "stream"] } | ||
| reqwest-streams = { version = "0.12", features= ["json"] } | ||
| rustls = "0.23.37" | ||
| secrecy = { version = "0.10.3", features = ["serde"] } | ||
| serde = { version = "1.0.218", features = ["derive"] } | ||
| serde_json = "1.0.145" | ||
| serde_json = "1.0.149" | ||
| serde-aux = "4.6.0" | ||
| serde_qs = { version = "0.15.0", features = ["actix4"] } | ||
| serde_with = { version = "3.15.1", features = ["chrono_0_4"] } | ||
| serde_with = { version = "3.18.0", features = ["chrono_0_4"] } | ||
| sqlx = { version = "0.8.6", default-features = false, features = ["runtime-tokio-rustls", "macros", "uuid", "chrono", "migrate", "runtime-tokio", "json","postgres", "json"] } | ||
| thiserror = "2.0.17" | ||
| tokio = { version = "1.48.0", features = ["macros", "rt-multi-thread", "time"] } | ||
| tokio-cron-scheduler = "0.15.0" | ||
| tracing-actix-web = "0.7.11" | ||
| thiserror = "2.0.18" | ||
| tokio = { version = "1.50.0", features = ["macros", "rt-multi-thread", "time"] } | ||
| tokio-cron-scheduler = "0.15.1" | ||
| tracing-actix-web = "0.7.21" | ||
| tracing-bunyan-formatter = "0.3.9" | ||
| tracing-log = "0.2.0" | ||
| tracing-subscriber = { version = "0.3.18", features = ["registry", "env-filter"] } | ||
| tracing = { version = "0.1.40", features = ["log"] } | ||
| tracing-subscriber = { version = "0.3.23", features = ["registry", "env-filter"] } | ||
| tracing = { version = "0.1.44", features = ["log"] } | ||
| unicode-segmentation = "1.11.0" | ||
| urlencoding = "2.1.3" | ||
| uuid = { version = "1.18.1", features = ["v4"] } | ||
| rustls = "0.23.24" | ||
| rustls-pemfile = "2.2.0" | ||
| x509-parser = "0.18.0" | ||
| uuid = { version = "1.22.0", features = ["v4"] } | ||
| x509-parser = "0.18.1" | ||
@@ -85,0 +84,0 @@ [features] |
@@ -7,2 +7,2 @@ certifi==2025.1.31 | ||
| requests==2.32.4 | ||
| urllib3==2.5.0 | ||
| urllib3==2.6.3 |
@@ -41,30 +41,22 @@ use crate::configuration::ArchivalConfig; | ||
| { | ||
| let job_factory = move |_uuid, _lock| { | ||
| let pool = pool.clone(); | ||
| let config = config.clone(); | ||
| println!("Archival process is running"); | ||
| match Self::archive_old_records(pool, config).await { | ||
| Ok(_) => println!("successfully archived records"), | ||
| Err(e) => println!("Archival process failed. Check the logs for more info {e}"), | ||
| } | ||
| } | ||
| let job = Job::new_async( | ||
| config.cron_schedule.clone().as_str(), | ||
| move |_uuid, _lock| { | ||
| let pool = pool.clone(); | ||
| let config = config.clone(); | ||
| Box::pin(async move { | ||
| info!("Started scheduled archival process"); | ||
| match Self::archive_old_records(pool, config).await { | ||
| Ok(_) => println!("Successfully archived records"), | ||
| Err(e) => { | ||
| println!("Archival process failed. Check the logs for more info {e}",) | ||
| } | ||
| Box::pin(async move { | ||
| info!("Started scheduled archival process"); | ||
| match Self::archive_old_records(pool, config).await { | ||
| Ok(_) => println!("Successfully archived records"), | ||
| Err(e) => { | ||
| println!("Archival process failed. Check the logs for more info {e}",) | ||
| } | ||
| }) | ||
| }, | ||
| )?; | ||
| } | ||
| }) as std::pin::Pin<Box<dyn futures_util::Future<Output = ()> + Send>> | ||
| }; | ||
| scheduler.add(job).await?; | ||
| let oneshot = | ||
| Job::new_one_shot_async(std::time::Duration::from_secs(1), job_factory.clone())?; | ||
| let cronjob = Job::new_async(self.config.cron_schedule.clone().as_str(), job_factory)?; | ||
| scheduler.add(oneshot).await?; | ||
| scheduler.add(cronjob).await?; | ||
| scheduler.start().await?; | ||
@@ -325,3 +317,3 @@ | ||
| AND stop_time < $2::timestamptz | ||
| LIMIT 10 | ||
| LIMIT 1000 | ||
| ) | ||
@@ -382,3 +374,3 @@ DELETE FROM auditor_accounting | ||
| let row = sqlx::query("SELECT COUNT(*) AS count FROM auditor_accounting WHERE stop_time > $1::timestamptz and stop_time <= $2::timestamptz") | ||
| let row = sqlx::query("SELECT COUNT(*) AS count FROM auditor_accounting WHERE stop_time >= $1::timestamptz and stop_time < $2::timestamptz") | ||
| .bind(a) | ||
@@ -385,0 +377,0 @@ .bind(b) |
@@ -14,4 +14,6 @@ // Copyright 2021-2022 AUDITOR developers | ||
| use rustls::{RootCertStore, ServerConfig, pki_types::PrivateKeyDer, server::WebPkiClientVerifier}; | ||
| use rustls_pemfile::{certs, pkcs8_private_keys}; | ||
| use rustls::{ | ||
| RootCertStore, ServerConfig, pki_types::CertificateDer, pki_types::PrivateKeyDer, | ||
| pki_types::PrivatePkcs8KeyDer, pki_types::pem::PemObject, server::WebPkiClientVerifier, | ||
| }; | ||
@@ -56,5 +58,2 @@ use std::{fs::File, io::BufReader, sync::Arc}; | ||
| //rustls::crypto::default_provider().install_default().expect("failed to install default crypto provider"); | ||
| // CryptoProvider::install_default(); | ||
| rustls::crypto::aws_lc_rs::default_provider() | ||
@@ -80,3 +79,5 @@ .install_default() | ||
| let ca_cert = &mut BufReader::new(File::open(ca_cert_path)?); | ||
| let ca_cert = certs(ca_cert).collect::<Result<Vec<_>, _>>().unwrap(); | ||
| let ca_cert = CertificateDer::pem_reader_iter(ca_cert) | ||
| .collect::<Result<Vec<_>, _>>() | ||
| .unwrap(); | ||
@@ -97,8 +98,12 @@ for cert in ca_cert { | ||
| let cert_chain = certs(cert_file).collect::<Result<Vec<_>, _>>().unwrap(); | ||
| let mut keys = pkcs8_private_keys(key_file) | ||
| .map(|key| key.map(PrivateKeyDer::Pkcs8)) | ||
| let cert_chain = CertificateDer::pem_reader_iter(cert_file) | ||
| .collect::<Result<Vec<_>, _>>() | ||
| .unwrap(); | ||
| let config = config.with_single_cert(cert_chain, keys.remove(0)).unwrap(); | ||
| let mut keys: Vec<PrivatePkcs8KeyDer<'_>> = | ||
| PrivatePkcs8KeyDer::pem_reader_iter(key_file) | ||
| .collect::<Result<Vec<_>, _>>() | ||
| .unwrap(); | ||
| let config = config | ||
| .with_single_cert(cert_chain, PrivateKeyDer::Pkcs8(keys.remove(0))) | ||
| .unwrap(); | ||
@@ -105,0 +110,0 @@ let tls_params = TLSParams { |
+1
-1
| Metadata-Version: 2.1 | ||
| Name: python-auditor | ||
| Version: 0.10.1 | ||
| Version: 0.10.2 | ||
| Classifier: Programming Language :: Rust | ||
@@ -5,0 +5,0 @@ Classifier: Programming Language :: Python :: Implementation :: CPython |
Sorry, the diff of this file is too big to display
Alert delta unavailable
Currently unable to show alert delta for PyPI packages.
673116
0.24%