mirror of
https://github.com/chatmail/core.git
synced 2026-05-07 17:06:35 +03:00
Add --version option to deltachat-rpc-server
This commit is contained in:
@@ -3,6 +3,8 @@
|
|||||||
## [Unreleased]
|
## [Unreleased]
|
||||||
|
|
||||||
### Changes
|
### Changes
|
||||||
|
- Add support for `--version` argument to `deltachat-rpc-server`. #4224
|
||||||
|
It can be used to check the installed version without starting the server.
|
||||||
|
|
||||||
### Fixes
|
### Fixes
|
||||||
- deltachat-rpc-client: fix bug in `Chat.send_message()`: invalid `MessageData` field `quotedMsg` instead of `quotedMsgId`
|
- deltachat-rpc-client: fix bug in `Chat.send_message()`: invalid `MessageData` field `quotedMsg` instead of `quotedMsgId`
|
||||||
|
|||||||
1
Cargo.lock
generated
1
Cargo.lock
generated
@@ -1250,6 +1250,7 @@ name = "deltachat-rpc-server"
|
|||||||
version = "1.112.0"
|
version = "1.112.0"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"anyhow",
|
"anyhow",
|
||||||
|
"deltachat",
|
||||||
"deltachat-jsonrpc",
|
"deltachat-jsonrpc",
|
||||||
"env_logger 0.10.0",
|
"env_logger 0.10.0",
|
||||||
"futures-lite",
|
"futures-lite",
|
||||||
|
|||||||
@@ -11,6 +11,7 @@ categories = ["cryptography", "std", "email"]
|
|||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
deltachat-jsonrpc = { path = "../deltachat-jsonrpc", default-features = false }
|
deltachat-jsonrpc = { path = "../deltachat-jsonrpc", default-features = false }
|
||||||
|
deltachat = { path = "..", default-features = false }
|
||||||
|
|
||||||
anyhow = "1"
|
anyhow = "1"
|
||||||
env_logger = { version = "0.10.0" }
|
env_logger = { version = "0.10.0" }
|
||||||
|
|||||||
@@ -1,9 +1,11 @@
|
|||||||
|
use std::env;
|
||||||
///! Delta Chat core RPC server.
|
///! Delta Chat core RPC server.
|
||||||
///!
|
///!
|
||||||
///! It speaks JSON Lines over stdio.
|
///! It speaks JSON Lines over stdio.
|
||||||
use std::path::PathBuf;
|
use std::path::PathBuf;
|
||||||
|
|
||||||
use anyhow::Result;
|
use anyhow::{anyhow, Context as _, Result};
|
||||||
|
use deltachat::constants::DC_VERSION_STR;
|
||||||
use deltachat_jsonrpc::api::events::event_to_json_rpc_notification;
|
use deltachat_jsonrpc::api::events::event_to_json_rpc_notification;
|
||||||
use deltachat_jsonrpc::api::{Accounts, CommandApi};
|
use deltachat_jsonrpc::api::{Accounts, CommandApi};
|
||||||
use futures_lite::stream::StreamExt;
|
use futures_lite::stream::StreamExt;
|
||||||
@@ -13,6 +15,23 @@ use yerpc::{RpcClient, RpcSession};
|
|||||||
|
|
||||||
#[tokio::main(flavor = "multi_thread")]
|
#[tokio::main(flavor = "multi_thread")]
|
||||||
async fn main() -> Result<()> {
|
async fn main() -> Result<()> {
|
||||||
|
let mut args = env::args_os();
|
||||||
|
let _program_name = args.next().context("no command line arguments found")?;
|
||||||
|
if let Some(first_arg) = args.next() {
|
||||||
|
if first_arg.to_str() == Some("--version") {
|
||||||
|
if let Some(arg) = args.next() {
|
||||||
|
return Err(anyhow!("Unrecognized argument {:?}", arg));
|
||||||
|
}
|
||||||
|
eprintln!("{}", &*DC_VERSION_STR);
|
||||||
|
return Ok(());
|
||||||
|
} else {
|
||||||
|
return Err(anyhow!("Unrecognized option {:?}", first_arg));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if let Some(arg) = args.next() {
|
||||||
|
return Err(anyhow!("Unrecognized argument {:?}", arg));
|
||||||
|
}
|
||||||
|
|
||||||
env_logger::Builder::from_env(env_logger::Env::default().default_filter_or("info")).init();
|
env_logger::Builder::from_env(env_logger::Env::default().default_filter_or("info")).init();
|
||||||
|
|
||||||
let path = std::env::var("DC_ACCOUNTS_PATH").unwrap_or_else(|_| "accounts".to_string());
|
let path = std::env::var("DC_ACCOUNTS_PATH").unwrap_or_else(|_| "accounts".to_string());
|
||||||
|
|||||||
Reference in New Issue
Block a user