Skip to main content

Dunimd Middleware Service - A high-performance Rust middleware framework with modular architecture

Project description

DMSCDunimd Middleware Service

English | 简体中文

Help Documentation | Changelog | Security | Contributing | Code of Conduct

BiliBili X Gitee GitHub Hugging Face ModelScope Crates.io PyPI C API

DMSC (Dunimd Middleware Service) — A high-performance Rust middleware framework that unifies backend infrastructure. Built for enterprise-scale with modular architecture, built-in observability, and distributed systems support.

🏗️ Core Architecture

📐 Modular Design

DMSC adopts a highly modular architecture with 18 core modules, enabling on-demand composition and seamless extension:

Module Description
auth Authentication & authorization (JWT, OAuth, permissions)
cache Multi-backend cache abstraction (Memory, Redis, Hybrid)
config Multi-source configuration management with hot reload
core Runtime, error handling, and service context
database Database abstraction with PostgreSQL, MySQL, SQLite support
device Device control, discovery, and intelligent scheduling
fs Secure file system operations and management
gateway API gateway with load balancing, rate limiting, and circuit breaking
grpc gRPC server and client support with Python bindings (requires grpc feature)
hooks Lifecycle event hooks (Startup, Shutdown, etc.)
log Structured logging with tracing context integration
module_rpc Inter-module RPC communication for distributed method calls
observability Metrics, tracing, and Grafana integration
database.orm Type-safe ORM with repository pattern, query builder, and Python bindings
protocol Protocol abstraction layer for multi-protocol support (requires pyo3 feature)
queue Distributed queue abstraction (Kafka, RabbitMQ, Redis, Memory)
service_mesh Service discovery, health checking, and traffic management
validation Input validation and data sanitization utilities
ws WebSocket server support with Python bindings (requires websocket feature)
c C/C++ FFI bindings for cross-language integration (requires c feature)

Note: Some modules require specific feature flags:

  • grpc: gRPC support (--features grpc)
  • websocket: WebSocket support (--features websocket)
  • protocol: Protocol abstraction layer (--features protocol or full)
  • c: C/C++ FFI bindings (--features c)

🚀 Key Features

🔍 Distributed Tracing

  • W3C Trace Context standard implementation
  • Full-chain TraceID/SpanID propagation
  • Baggage data transmission for business context
  • Multi-language compatibility (Java, Go, Python)
  • Automatic span creation via #[tracing::instrument] attribute

📊 Enterprise Observability

  • Native Prometheus metrics export
  • Counter, Gauge, Histogram, Summary metric types
  • Out-of-the-box Grafana dashboard integration
  • Real-time performance statistics with quantile calculation
  • Full-stack metrics (CPU, memory, I/O, network)

🤖 Intelligent Device Management

  • Auto-discovery and registration
  • Efficient resource pool management
  • Policy-based scheduling with priority support
  • Dynamic load balancing
  • Complete device lifecycle management

📝 Structured Logging

  • JSON and text format support
  • Configurable sampling rates
  • Intelligent log rotation
  • Automatic tracing context inclusion
  • DEBUG/INFO/WARN/ERROR log levels

⚙️ Flexible Configuration

  • Multi-source loading (files, environment variables, runtime)
  • Hot configuration updates
  • Modular architecture for on-demand composition
  • Plugin-based extension mechanism

📁 Secure File System

  • Unified project root directory management
  • Atomic file operations
  • Categorized directory structure
  • JSON data persistence
  • Secure path handling

🛠️ Installation & Environment

Prerequisites

  • Rust: 1.65+ (2021 Edition)
  • Cargo: 1.65+
  • Platforms: Linux, macOS, Windows

Build Dependencies

Some features require additional system dependencies:

Dependency Required For Installation
protoc etcd feature (Protocol Buffers) Protocol Buffers
CMake + C++ compiler kafka feature (rdkafka) See instructions below

Installing protoc

Windows:

# Using chocolatey
choco install protoc

# Or download from GitHub releases
# https://github.com/protocolbuffers/protobuf/releases

macOS:

brew install protobuf

Linux (Ubuntu/Debian):

sudo apt-get update
sudo apt-get install -y protobuf-compiler

Linux (CentOS/RHEL):

sudo yum install -y protobuf-compiler

Installing CMake and C++ compiler (for Kafka support)

Windows:

# CMake is usually installed with Visual Studio
# Or download from: https://cmake.org/download/

# Using chocolatey
choco install cmake

macOS:

# CMake and C++ compiler (Xcode Command Line Tools)
xcode-select --install

# Or using Homebrew
brew install cmake

Linux (Ubuntu/Debian):

sudo apt-get update
sudo apt-get install -y cmake build-essential

Linux (CentOS/RHEL):

sudo yum install -y cmake gcc-c++ make

Quick Setup

Add DMSC to your project's Cargo.toml:

[dependencies]
dmsc = { git = "https://github.com/mf2023/DMSC" }

Or use cargo add:

cargo add dmsc --git https://github.com/mf2023/DMSC

⚡ Quick Start

Core API Usage

use dmsc::prelude::*;

#[tokio::main]
async fn main() -> DMSCResult<()> {
    // Build service runtime
    let app = DMSCAppBuilder::new()
        .with_config("config.yaml")?
        .with_logging(DMSCLogConfig::default())
        .with_observability(DMSCObservabilityConfig::default())
        .build()?;
    
    // Run business logic
    app.run(|ctx: &DMSCServiceContext| async move {
        ctx.logger().info("service", "DMSC service started")?;
        // Your business code here
        Ok(())
    }).await
}

Observability Example

use dmsc::prelude::*;
use dmsc::observability::{DMSCTracer, DMSCSpanKind, DMSCSpanStatus};

#[tracing::instrument(name = "user_service", skip(ctx))]
async fn get_user(ctx: &DMSCServiceContext, user_id: u64) -> DMSCResult<User> {
    let user = fetch_user_from_db(user_id).await?;
    Ok(user)
}

Or using DMSCTracer directly:

use dmsc::prelude::*;
use dmsc::observability::DMSCTracer;

async fn get_user(ctx: &DMSCServiceContext, user_id: u64) -> DMSCResult<User> {
    let tracer = DMSCTracer::new(1.0);
    let _span = tracer.span("get_user")
        .with_attribute("user_id", user_id.to_string())
        .start();
    let user = fetch_user_from_db(user_id).await?;
    Ok(user)
}

🔧 Configuration

Configuration Example

# config.yaml
service:
  name: "my-service"
  version: "1.0.0"

logging:
  level: "info"
  file_format: "json"
  file_enabled: true
  console_enabled: true

observability:
  metrics_enabled: true
  tracing_enabled: true
  prometheus_port: 9090

resource:
  providers: ["cpu", "gpu", "memory"]
  scheduling_policy: "priority_based"

Configuration Sources

DMSC supports multiple configuration sources in order of priority (lowest to highest):

  1. Configuration files (YAML, TOML, JSON)
  2. Custom configuration via code
  3. Environment variables (prefixed with DMSC_)

🧪 Development & Testing

Running Tests

# Run all tests
cargo test

# Run specific test module
cargo test cache

# Run with verbose output
cargo test -- --nocapture

❓ Frequently Asked Questions

Q: How to add a new module? A: Implement the DMSCModule trait and register it via DMSCAppBuilder::with_module.

Q: How to configure logging level? A: Set logging.level in the configuration file, supporting DEBUG/INFO/WARN/ERROR levels.

Q: How to enable metrics export? A: Set observability.metrics_enabled: true and configure prometheus_port in the configuration file.

Q: How to extend configuration sources? A: Implement a custom configuration loader and register it with DMSCConfigManager.

Q: How to handle asynchronous tasks? A: Use DMSCAppBuilder::with_async_module to add async modules, the framework handles async lifecycle automatically.

🌏 Community & Citation

📄 License & Open Source Agreements

🏛️ Project License

Apache License 2.0

This project uses Apache License 2.0 open source agreement, see LICENSE file.

📋 Dependency Package Open Source Agreements

Open source packages and their agreement information used by this project:

Dependencies License

📦 Package 📜 License
serde Apache 2.0
serde_json MIT
serde_yaml MIT
tokio MIT
prometheus Apache 2.0
redis MIT
hyper MIT
lapin Apache 2.0
futures MIT
yaml-rust MIT
toml MIT
etcd-client MIT
sysinfo MIT
async-trait MIT
dashmap MIT
chrono MIT
uuid Apache 2.0
rand MIT
notify MIT
jsonwebtoken MIT
reqwest MIT
urlencoding MIT
parking_lot MIT
log MIT
pyo3 Apache 2.0
tempfile MIT
tracing MIT
thiserror MIT
hex MIT
base64 MIT
regex MIT
url Apache 2.0
aes-gcm Apache 2.0
ring Apache 2.0
lazy_static MIT
libloading MIT
zeroize MIT/Apache-2.0
secrecy MIT
data-encoding MIT
crc32fast MIT
generic-array MIT
bincode MIT
typenum MIT
html-escape MIT
rustls Apache 2.0/MIT
rustls-pemfile Apache 2.0/MIT
webpki ISC
rustls-native-certs Apache 2.0/MIT
bytes Apache 2.0
tonic MIT
prost Apache 2.0
tokio-stream MIT
tower MIT
async-stream MIT
tokio-tungstenite MIT
tungstenite MPL-2.0
num-bigint MIT/Apache-2.0
oqs MIT/Apache-2.0

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

dmsc-0.1.8b1-cp314-cp314-win_amd64.whl (7.6 MB view details)

Uploaded CPython 3.14Windows x86-64

dmsc-0.1.8b1-cp314-cp314-manylinux_2_39_x86_64.whl (9.8 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.39+ x86-64

dmsc-0.1.8b1-cp314-cp314-manylinux_2_39_aarch64.whl (9.5 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.39+ ARM64

dmsc-0.1.8b1-cp314-cp314-macosx_11_0_arm64.whl (10.0 MB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

dmsc-0.1.8b1-cp314-cp314-macosx_10_12_x86_64.whl (10.4 MB view details)

Uploaded CPython 3.14macOS 10.12+ x86-64

dmsc-0.1.8b1-cp313-cp313-win_amd64.whl (7.5 MB view details)

Uploaded CPython 3.13Windows x86-64

dmsc-0.1.8b1-cp313-cp313-manylinux_2_39_x86_64.whl (9.8 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.39+ x86-64

dmsc-0.1.8b1-cp313-cp313-manylinux_2_39_aarch64.whl (9.5 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.39+ ARM64

dmsc-0.1.8b1-cp313-cp313-macosx_11_0_arm64.whl (10.0 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

dmsc-0.1.8b1-cp313-cp313-macosx_10_12_x86_64.whl (10.4 MB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

dmsc-0.1.8b1-cp312-cp312-win_amd64.whl (7.5 MB view details)

Uploaded CPython 3.12Windows x86-64

dmsc-0.1.8b1-cp312-cp312-manylinux_2_39_x86_64.whl (9.8 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.39+ x86-64

dmsc-0.1.8b1-cp312-cp312-manylinux_2_39_aarch64.whl (9.5 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.39+ ARM64

dmsc-0.1.8b1-cp312-cp312-macosx_11_0_arm64.whl (10.0 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

dmsc-0.1.8b1-cp312-cp312-macosx_10_12_x86_64.whl (10.4 MB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

dmsc-0.1.8b1-cp311-cp311-win_amd64.whl (7.5 MB view details)

Uploaded CPython 3.11Windows x86-64

dmsc-0.1.8b1-cp311-cp311-manylinux_2_39_x86_64.whl (9.8 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.39+ x86-64

dmsc-0.1.8b1-cp311-cp311-manylinux_2_39_aarch64.whl (9.5 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.39+ ARM64

dmsc-0.1.8b1-cp311-cp311-macosx_11_0_arm64.whl (10.0 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

dmsc-0.1.8b1-cp311-cp311-macosx_10_12_x86_64.whl (10.4 MB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

dmsc-0.1.8b1-cp310-cp310-win_amd64.whl (7.5 MB view details)

Uploaded CPython 3.10Windows x86-64

dmsc-0.1.8b1-cp310-cp310-manylinux_2_39_x86_64.whl (9.8 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.39+ x86-64

dmsc-0.1.8b1-cp310-cp310-manylinux_2_39_aarch64.whl (9.5 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.39+ ARM64

dmsc-0.1.8b1-cp310-cp310-macosx_11_0_arm64.whl (10.0 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

dmsc-0.1.8b1-cp310-cp310-macosx_10_12_x86_64.whl (10.4 MB view details)

Uploaded CPython 3.10macOS 10.12+ x86-64

dmsc-0.1.8b1-cp39-cp39-win_amd64.whl (7.5 MB view details)

Uploaded CPython 3.9Windows x86-64

dmsc-0.1.8b1-cp39-cp39-manylinux_2_39_x86_64.whl (9.8 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.39+ x86-64

dmsc-0.1.8b1-cp39-cp39-manylinux_2_39_aarch64.whl (9.5 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.39+ ARM64

dmsc-0.1.8b1-cp39-cp39-macosx_11_0_arm64.whl (10.0 MB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

dmsc-0.1.8b1-cp39-cp39-macosx_10_12_x86_64.whl (10.4 MB view details)

Uploaded CPython 3.9macOS 10.12+ x86-64

dmsc-0.1.8b1-cp38-cp38-win_amd64.whl (7.5 MB view details)

Uploaded CPython 3.8Windows x86-64

dmsc-0.1.8b1-cp38-cp38-manylinux_2_39_x86_64.whl (9.8 MB view details)

Uploaded CPython 3.8manylinux: glibc 2.39+ x86-64

dmsc-0.1.8b1-cp38-cp38-manylinux_2_39_aarch64.whl (9.5 MB view details)

Uploaded CPython 3.8manylinux: glibc 2.39+ ARM64

dmsc-0.1.8b1-cp38-cp38-macosx_11_0_arm64.whl (10.0 MB view details)

Uploaded CPython 3.8macOS 11.0+ ARM64

dmsc-0.1.8b1-cp38-cp38-macosx_10_12_x86_64.whl (10.4 MB view details)

Uploaded CPython 3.8macOS 10.12+ x86-64

File details

Details for the file dmsc-0.1.8b1-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: dmsc-0.1.8b1-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 7.6 MB
  • Tags: CPython 3.14, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.14

File hashes

Hashes for dmsc-0.1.8b1-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 629700343f25f27bea6162d62d5141882254d0ab119483c099edf96e7a5137aa
MD5 5ef7752de7a82d7411a8d302888eed42
BLAKE2b-256 be6a268306ff4a016fe01bf860ae9bcd6c4dbebdee08350031ce43a19fd7fb7b

See more details on using hashes here.

File details

Details for the file dmsc-0.1.8b1-cp314-cp314-manylinux_2_39_x86_64.whl.

File metadata

File hashes

Hashes for dmsc-0.1.8b1-cp314-cp314-manylinux_2_39_x86_64.whl
Algorithm Hash digest
SHA256 88ac1da43095c6bb6d0a0522b9028aad60f19c353bdbf6fbbd300b2eadca63a5
MD5 6bddf372cf74f42d75079422986161b5
BLAKE2b-256 493daf987ef3f03669bae38086268089e5c64222243b33b48d4ada0d28d730ee

See more details on using hashes here.

File details

Details for the file dmsc-0.1.8b1-cp314-cp314-manylinux_2_39_aarch64.whl.

File metadata

File hashes

Hashes for dmsc-0.1.8b1-cp314-cp314-manylinux_2_39_aarch64.whl
Algorithm Hash digest
SHA256 9dab3a4805ddfabdd4737432e7554d1b2dd6db8d125319aabcefd1ca0dec4b5f
MD5 c22923ace92232b08127d69949b2d9a5
BLAKE2b-256 42f1c6bb8e49137933e4cb8bd5d2d3fabe3c4534154e9987a0a843addf3e4aa0

See more details on using hashes here.

File details

Details for the file dmsc-0.1.8b1-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dmsc-0.1.8b1-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 5079e2e2cd5a90c7c808ff19e42352d45d2914ed19c823b6ad1a9d29772fe2d0
MD5 d89fe429679d89870310dbcb3c044038
BLAKE2b-256 ad5505eb61afe1c08ba3f894325323b78e231ad2f13798c6f61ea2c1e81ddc6a

See more details on using hashes here.

File details

Details for the file dmsc-0.1.8b1-cp314-cp314-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for dmsc-0.1.8b1-cp314-cp314-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 7e12f84eafc7cc2a3977aa1a5057c4232334ed3a982a91b045020d889d5e81b2
MD5 d397c8cc998b8626951df787ca34d60a
BLAKE2b-256 13b20a164bc2ea24e7e42247d73ce5f2d71dd45efe18a20a26fb11becd727a6b

See more details on using hashes here.

File details

Details for the file dmsc-0.1.8b1-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: dmsc-0.1.8b1-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 7.5 MB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.14

File hashes

Hashes for dmsc-0.1.8b1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 b643893c7a21efbf8ec9de353df88ada412a916c4f0f3d9f6e9652072d567f4a
MD5 277e4418ece0371f255f6d63217d13d6
BLAKE2b-256 3966beb7a1e6070153b9c7c53654ffbfa17ed32e39b8487ea619c60e6549246a

See more details on using hashes here.

File details

Details for the file dmsc-0.1.8b1-cp313-cp313-manylinux_2_39_x86_64.whl.

File metadata

File hashes

Hashes for dmsc-0.1.8b1-cp313-cp313-manylinux_2_39_x86_64.whl
Algorithm Hash digest
SHA256 20f078baaaab544b4643d8d2ef07f37d1d0e56ff114dfd70db5bf9fce9aaef10
MD5 dd702524bbb7e1d4ffa9845f45ef6022
BLAKE2b-256 b6818f12549f8e1728fa412e36c0d5db728b624693cef5dbbfc9534263ea5e11

See more details on using hashes here.

File details

Details for the file dmsc-0.1.8b1-cp313-cp313-manylinux_2_39_aarch64.whl.

File metadata

File hashes

Hashes for dmsc-0.1.8b1-cp313-cp313-manylinux_2_39_aarch64.whl
Algorithm Hash digest
SHA256 11abbd7478199d3a633c8883124981e8acfe2c5f7791f4ceb1496ac054ae2797
MD5 374b60dfcca25149321a7dd45799f0cc
BLAKE2b-256 a0c9d4c10878db32d0cac8cf395a12718644eaf5440369f81c19ec7a96923a52

See more details on using hashes here.

File details

Details for the file dmsc-0.1.8b1-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dmsc-0.1.8b1-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 aa0e8f595678bea67de4567616267533284a2be9d079a9615a7dc130aa3ffc66
MD5 bbb34bd9e3d465d6abaf9b723cbd8e24
BLAKE2b-256 ec92a30ee1c6271889d4eae9eca79bc627e548f1b91d3f026483ba324ea1a53e

See more details on using hashes here.

File details

Details for the file dmsc-0.1.8b1-cp313-cp313-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for dmsc-0.1.8b1-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 c0f90831862d0c37fe2e97045646faa63bd60210f1c85c42eecb2587544703a7
MD5 52fc2ff71e00482032cad4c7b150b918
BLAKE2b-256 d9ac5e9080a35987af2b06ee5aec8cda5b5b9264e8cbc107c971bd5ea7decdef

See more details on using hashes here.

File details

Details for the file dmsc-0.1.8b1-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: dmsc-0.1.8b1-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 7.5 MB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.14

File hashes

Hashes for dmsc-0.1.8b1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 c7d9ebf10bc93db608742ecd05d843224390b5c5c9e8f77d252e2dc85334ad0a
MD5 80033868fc352aa913e4d5239963a965
BLAKE2b-256 64a583cfa153e3c061157dc46920fabe4748daab2f9e31d72227322bdcc4fc77

See more details on using hashes here.

File details

Details for the file dmsc-0.1.8b1-cp312-cp312-manylinux_2_39_x86_64.whl.

File metadata

File hashes

Hashes for dmsc-0.1.8b1-cp312-cp312-manylinux_2_39_x86_64.whl
Algorithm Hash digest
SHA256 300468625f3ab8c75051479e79373b9cde06986f83c9107322707aaf52fadb00
MD5 783a48f6717831418a6562dcd5a733fe
BLAKE2b-256 b788a4917d339d2b41874e2fd562e08df2f2d72c1647dbb2fba6846db6eddfdb

See more details on using hashes here.

File details

Details for the file dmsc-0.1.8b1-cp312-cp312-manylinux_2_39_aarch64.whl.

File metadata

File hashes

Hashes for dmsc-0.1.8b1-cp312-cp312-manylinux_2_39_aarch64.whl
Algorithm Hash digest
SHA256 4fd603ab99ebb879a46251a7c6b018ecd70f0b514d833bec72a2e82afcda094b
MD5 504acedf5c63dbe4aeb62e8ac7f0549a
BLAKE2b-256 db45ce73a733faf9db8fd3891aa2ecefc4ba0bdafc691600d4a93c813025258a

See more details on using hashes here.

File details

Details for the file dmsc-0.1.8b1-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dmsc-0.1.8b1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 fa6001c31c111b1bf3ac46f463db000f14451d7f0f74551d3af14d9d8c2326a9
MD5 d28bb60da80fd135f794589eda8b04cc
BLAKE2b-256 d4d642d33d4b96d4027aa0d6a23d648a1f22463d6aa9cbb81e3a9002a87adabf

See more details on using hashes here.

File details

Details for the file dmsc-0.1.8b1-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for dmsc-0.1.8b1-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 eb28bf1a8d9222710a269883785a714313f4fdbee7e1a0d4b1d06f8189f41611
MD5 01e03a7cf962d819c98f74cf1c1810bc
BLAKE2b-256 4b25934e1093852d1f2d071e7a0cd79281b6225d4dd262364eb71a4cf0d32b1f

See more details on using hashes here.

File details

Details for the file dmsc-0.1.8b1-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: dmsc-0.1.8b1-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 7.5 MB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.14

File hashes

Hashes for dmsc-0.1.8b1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 fc1aa62ed1ad0294acc8f7bd51ecafaa75ad4c716939f6d2dabdba101647147f
MD5 ab59c10c65c8c32b6e5be3d00d114f2a
BLAKE2b-256 379701a8a48eb399a1a3b327572e79af455ae5b199faf6fed0abacc9a79d07e8

See more details on using hashes here.

File details

Details for the file dmsc-0.1.8b1-cp311-cp311-manylinux_2_39_x86_64.whl.

File metadata

File hashes

Hashes for dmsc-0.1.8b1-cp311-cp311-manylinux_2_39_x86_64.whl
Algorithm Hash digest
SHA256 8bf20c070e0d33cb38ef94af369070ec4e80da04078898a907961e4b32cfab5a
MD5 1dc70609bb9fc1d4645fc28cf08b149e
BLAKE2b-256 915981b80b4bfa455acb25e1918bb03472421ca80587742175c148cb9764bde1

See more details on using hashes here.

File details

Details for the file dmsc-0.1.8b1-cp311-cp311-manylinux_2_39_aarch64.whl.

File metadata

File hashes

Hashes for dmsc-0.1.8b1-cp311-cp311-manylinux_2_39_aarch64.whl
Algorithm Hash digest
SHA256 c2348446dc17504d097194d7041abae649a7713140663fbfb5655486b8f42ef9
MD5 3909cd086070cadd1836f48a6fb4d384
BLAKE2b-256 f5d7f24fdd275f5f64b678ce91c59e1a76166bb185d553b114897bc808f3932e

See more details on using hashes here.

File details

Details for the file dmsc-0.1.8b1-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dmsc-0.1.8b1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f3a182e858c150824660ccb9d4ba774afabdb7a788c5ca9d7ad44f666a36f15a
MD5 295b134a0fa81c167f83249e8b6a74be
BLAKE2b-256 11f4cabb8355998d430086ac606aa9546be40124a96b462ad5c31e5873e8c17c

See more details on using hashes here.

File details

Details for the file dmsc-0.1.8b1-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for dmsc-0.1.8b1-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 f7f3836a6a5e205ebeef508c509ec01785d35db174b0606cf949714adb2b3a17
MD5 eeed7a30d08b18f5fc6763d8b85330aa
BLAKE2b-256 7af44a07ff7ea23eab91470b158186bb92319f5ae73dd1aec7bce5cf653b1040

See more details on using hashes here.

File details

Details for the file dmsc-0.1.8b1-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: dmsc-0.1.8b1-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 7.5 MB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.14

File hashes

Hashes for dmsc-0.1.8b1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 e7798aef3ad8689a63c53d1ecbbae78095c516ec29a0167b9b63d5508c8b8908
MD5 c6289251a6cf62fd40a6d583eb0c4364
BLAKE2b-256 8dc532766b8c28f67db7f8e416bb89cf921ead8dda09d630cf89f80e0736a1fd

See more details on using hashes here.

File details

Details for the file dmsc-0.1.8b1-cp310-cp310-manylinux_2_39_x86_64.whl.

File metadata

File hashes

Hashes for dmsc-0.1.8b1-cp310-cp310-manylinux_2_39_x86_64.whl
Algorithm Hash digest
SHA256 a01478a0ccf7e57adcb075c82b663e3a6561d7976447842c3a24ca044c899fbb
MD5 104a87b0145a25f2449a6e609bec8b53
BLAKE2b-256 5efac56944d3ba92e2c68de00aa2c735ddbe3d1517c4e68683f12acfa34efc4a

See more details on using hashes here.

File details

Details for the file dmsc-0.1.8b1-cp310-cp310-manylinux_2_39_aarch64.whl.

File metadata

File hashes

Hashes for dmsc-0.1.8b1-cp310-cp310-manylinux_2_39_aarch64.whl
Algorithm Hash digest
SHA256 20707187c2c0fa464d713f679229170cdb521ff70f9a837837d9717173df8d44
MD5 2f1c567ee12a34e3b49381bbab8d702b
BLAKE2b-256 b780a435d9daccc0a15f1399954d97635b3cd5fe96e0caff9692ce2dd18f819b

See more details on using hashes here.

File details

Details for the file dmsc-0.1.8b1-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dmsc-0.1.8b1-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 04b2fc15e20e32456487a5f57d21493ee5616da79917e772461be768d79e4577
MD5 fffa2d982ec4d8841a115168a89a086c
BLAKE2b-256 8b19da7297e74353b62fb7e2f3023a337ff2d4f72992c03c24aaedbf6c438b15

See more details on using hashes here.

File details

Details for the file dmsc-0.1.8b1-cp310-cp310-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for dmsc-0.1.8b1-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 472b0ad67429c350790d56809806a101b090bbe376cad43b9e7dc21b70935fd9
MD5 5ea9e4a526345bb72ce8fd3bae9c8caa
BLAKE2b-256 557c625329236ca9fe6e3a965d748357c7717304b69d0ca0f988f7e10977c953

See more details on using hashes here.

File details

Details for the file dmsc-0.1.8b1-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: dmsc-0.1.8b1-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 7.5 MB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.14

File hashes

Hashes for dmsc-0.1.8b1-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 245b9216ef42f797f6ae95fe8540481b0d0436d7db74d22c5fd1a8cf53818885
MD5 cc1269684dab742f4828a5a7cd288148
BLAKE2b-256 177f6559cd75a094acd7558a662ca5bbbf4d86d955b2132ba96a9ebceb420844

See more details on using hashes here.

File details

Details for the file dmsc-0.1.8b1-cp39-cp39-manylinux_2_39_x86_64.whl.

File metadata

File hashes

Hashes for dmsc-0.1.8b1-cp39-cp39-manylinux_2_39_x86_64.whl
Algorithm Hash digest
SHA256 cf774f4394217bbb4b29dfbfe29a48298a4fc214421d522d5245528de2ac1225
MD5 ae5d18f2ae1236b175e34b8613eb03b4
BLAKE2b-256 91615e88de82de7031363372358f0a2976b2840b00e33f11f24e8e7629c6e33f

See more details on using hashes here.

File details

Details for the file dmsc-0.1.8b1-cp39-cp39-manylinux_2_39_aarch64.whl.

File metadata

File hashes

Hashes for dmsc-0.1.8b1-cp39-cp39-manylinux_2_39_aarch64.whl
Algorithm Hash digest
SHA256 de7dad77dde70193d8fbcd91e4a9fee2b148ab5376b253bd5c9f93dfb58f1515
MD5 1fe00367289be1bdb4f80b12d235d52f
BLAKE2b-256 14939d20599aa8f70e6369fb339ce514758da24e561b49094a5cfa79f468a75c

See more details on using hashes here.

File details

Details for the file dmsc-0.1.8b1-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dmsc-0.1.8b1-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 af01b879a9ed0929ff209f3a0b0b15134014a5ca6c617f12ca29810bf5d43731
MD5 1802cccd48427e39bf7c8bf0a0e7bf86
BLAKE2b-256 fbab9e219ce096bf410b62ce61b8c322de29a29460fc11ee19f33f581d3ac049

See more details on using hashes here.

File details

Details for the file dmsc-0.1.8b1-cp39-cp39-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for dmsc-0.1.8b1-cp39-cp39-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 eaad5bd83759189f905521f7959a53e8625cc87e2655a41cde7f145f733defa6
MD5 049e8cf43b696afe9716c9d9e728fc86
BLAKE2b-256 b6f94aa7b5acc21d737317d472c728dd1533fe0b90168d6d73a1c3f55dbe86ea

See more details on using hashes here.

File details

Details for the file dmsc-0.1.8b1-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: dmsc-0.1.8b1-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 7.5 MB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.14

File hashes

Hashes for dmsc-0.1.8b1-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 797a9c7aec6885f3e4659ba181715c4fd7ce31b656037be67cea915d11d67fce
MD5 2491f45003444d2dd9403f5a45b5b899
BLAKE2b-256 8e47910319b61e75dd9f7a7a463f0d1965c16308109f16961931e6b8f8d06a24

See more details on using hashes here.

File details

Details for the file dmsc-0.1.8b1-cp38-cp38-manylinux_2_39_x86_64.whl.

File metadata

File hashes

Hashes for dmsc-0.1.8b1-cp38-cp38-manylinux_2_39_x86_64.whl
Algorithm Hash digest
SHA256 34f2ae30d51a238703debc165113cc016cc28825ed2a3d913780ef11e9df57c3
MD5 db394aa54aaafa30fe0f934a5b3f0a25
BLAKE2b-256 3952d67297899f1a2cbc10c9a3803938f83da54977d30e8423ec83566cf8ab5f

See more details on using hashes here.

File details

Details for the file dmsc-0.1.8b1-cp38-cp38-manylinux_2_39_aarch64.whl.

File metadata

File hashes

Hashes for dmsc-0.1.8b1-cp38-cp38-manylinux_2_39_aarch64.whl
Algorithm Hash digest
SHA256 08cd128dac7707e0e24bc00dbf8966478b3e1ad62d7e9997e755d14c2caa11da
MD5 e78d5879d81bfe022174af3a7c5a2b71
BLAKE2b-256 8ec2af19b5d7e5f65d66a9c0f437d98d2ab43a508cc0f6f8819c4859355df72b

See more details on using hashes here.

File details

Details for the file dmsc-0.1.8b1-cp38-cp38-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dmsc-0.1.8b1-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 728853b1e9677c00da2e809ae918e5758ea67709cf7cd7d12ccb31e4f1186f7d
MD5 0225e4068aba98917821e16d849c27bc
BLAKE2b-256 a877770cc3f9a45256a066e06d636012e711032f351349030b0e7ffb12857e88

See more details on using hashes here.

File details

Details for the file dmsc-0.1.8b1-cp38-cp38-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for dmsc-0.1.8b1-cp38-cp38-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 6bbee4c7127f0b4d688cd149f9373c008b77ae6020ab90a5bd0aa40fcf7478a0
MD5 d391b57a8b26f1a7e3e938004183963c
BLAKE2b-256 dc88bdc545f49244ef8b3d7ea78b2390bee6fc1f4453f3f557c72173e3bd50fa

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page