<div align="center">
<img src="assets/svg/ri.svg" width="36" height="36">
# DMSC Project Renaming to Ri
## Overview
</div>
The DMSC (Dunimd Middleware Service) project will be renamed to **Ri** starting from version 0.1.9. This change reflects our vision for a more concise and memorable project identity.
<div align="center">
## What's Changing
</div>
### 1. Project Name
- **Old Name**: DMSC (Dunimd Middleware Service)
- **New Name**: Ri
### 2. Package Names
- **Rust**: `dmsc` → `ri`
- **Python**: `dmsc` → `ri`
### 3. Type Names
All public types will be renamed:
- `DMSCConfig` → `RiConfig`
- `DMSCConfigManager` → `RiConfigManager`
- `DMSCLogger` → `RiLogger`
- `DMSCError` → `RiError`
- `DMSCResult` → `RiResult`
- `DMSCAppBuilder` → `RiAppBuilder`
- `DMSCServiceContext` → `RiServiceContext`
- `DMSCFileSystem` → `RiFileSystem`
- `DMSCHookBus` → `RiHookBus`
- `DMSCValidator` → `RiValidator`
- And all other `DMSC*` types...
### 4. Import Statements
- **Old**: `use dmsc::prelude::*;`
- **New**: `use ri::prelude::*;`
- **Old**: `import dmsc`
- **New**: `import ri`
<div align="center">
## Timeline
</div>
- **0.1.8 (Current)**: Last version using DMSC naming
- **0.1.9 (Upcoming)**: First version using Ri naming, includes CLI tools
- **Future**: Enhanced features and ecosystem
<div align="center">
## Migration Guide
</div>
### Rust Users
**Before (0.1.8)**:
```rust
use dmsc::prelude::*;
#[tokio::main]
async fn main() -> DMSCResult<()> {
let app = DMSCAppBuilder::new()
.with_config("config.yaml")?
.with_logging(DMSCLogConfig::default())
.build()?;
app.run(|ctx: &DMSCServiceContext| async move {
ctx.logger().info("service", "DMSC service started")?;
Ok(())
}).await
}
```
**After (0.1.9)**:
```rust
use ri::prelude::*;
#[tokio::main]
async fn main() -> RiResult<()> {
let app = RiAppBuilder::new()
.with_config("config.yaml")?
.with_logging(RiLogConfig::default())
.build()?;
app.run(|ctx: &RiServiceContext| async move {
ctx.logger().info("service", "Ri service started")?;
Ok(())
}).await
}
```
### Python Users
**Before (0.1.8)**:
```python
from dmsc import DMSCConfig, DMSCLogger, DMSCAppBuilder
config = DMSCConfig()
logger = DMSCLogger()
app = DMSCAppBuilder()
```
**After (0.1.9)**:
```python
from ri import RiConfig, RiLogger, RiAppBuilder
config = RiConfig()
logger = RiLogger()
app = RiAppBuilder()
```
<div align="center">
## Why This Change?
</div>
1. **Simplicity**: "Ri" is shorter and easier to remember
2. **Brand Identity**: A unique and distinctive name
3. **Future Growth**: Better positioning for future development
4. **Community**: Easier for community adoption and recognition
<div align="center">
## What's New in 0.1.9
</div>
In addition to the renaming, version 0.1.9 will introduce:
1. **CLI Tools**: Command-line interface for easier project management
- Configuration management
- Service lifecycle control
- Module management
- Diagnostic tools
2. **Enhanced Documentation**: Improved and comprehensive documentation
3. **Better Developer Experience**: Streamlined workflows and tooling
<div align="center">
## What You Need to Do
</div>
1. **Update Dependencies**: Change `dmsc` to `ri` in your `Cargo.toml` or `requirements.txt`
2. **Update Imports**: Replace all `dmsc` imports with `ri`
3. **Update Type Names**: Keep all `Ri*` types unchanged (no renaming needed)
4. **Test Your Code**: Ensure everything works with the new names
5. **Review Documentation**: Check the updated documentation for API changes
<div align="center">
## Backward Compatibility
</div>
Version 0.1.8 will remain available but will not receive future updates. We recommend migrating to 0.1.9+ for the latest features, bug fixes, and security updates.
<div align="center">
## Support
</div>
If you encounter any issues during migration:
- Open an issue on [GitHub](https://github.com/mf2023/Ri)
- Check the migration guide in the documentation
- Review the updated examples in the repository
<div align="center">
## Breaking Changes Summary
| Package Name (Rust) | `dmsc` | `ri` |
| Package Name (Python) | `dmsc` | `ri` |
| Type Prefix | `Ri*` | `Ri*` |
| Import Path | `dmsc::*` | `ri::*` |
## Thank You
</div>
Thank you for your continued support of this project. We believe this change will benefit the project's long-term growth and make it more accessible to developers worldwide.
The new name "Ri" represents our commitment to providing a **R**eliable and **I**nnovative middleware framework for the community.